import { priceCalc } from "../../../services/api/orders/index" import { getEnumList } from "../../../services/utils" import { hideLoading, showLoading } from "../../../utils/message/index" Page({ /** * 页面的初始数据 */ data: { /// 底部安全区域 safeBottom: getApp().globalData.safeBottom, /// 窗口高度 windowHeight: getApp().globalData.windowHeight, /// 形状 zsshapes: [{ id: 1, name: '圆形', isCheck: true }, { id: 2, name: '异性', isCheck: false }], /// 选中形状 zsshape: 1, /// 颜色 zscolors: [ { id: 1, name: 'D', isCheck: true } ], /// 选中形状 zscolor: 'D', /// 净度 zsclaritys: [ { id: 1, name: 'IF', isCheck: true } ], /// 选中净度 zsclarity: 'IF', /// 重量 weight: 1.0, /// 汇率 dayrate: 1.0, /// 折扣 discount: 0.0, /// 国际报价 doller: '0.0', /// 国际人民币报价 rmb: '0.0', /// 美元 disdoller: '0.0', /// 人民币 disrmb: '0.0', /// 选项 options: [ { text: '-', value: 0 }, { text: '+', value: 1 } ], /// 选项值 value: 0 }, /// 钻石价格计算器 priceCalc() { /// showLoding.... showLoading(()=>{ /// 折扣 const discount = Number((this.data.value === 0 ? '-' : '+')+this.data.discount.toString())/100 const rate = Number(this.data.dayrate) const weight = Number(this.data.weight) /// 进行查询 priceCalc({ data: { zsshape: this.data.zsshape, zscolor: this.data.zscolor, zsclarity: this.data.zsclarity, weight: weight, rate: 1.0 }, /// 查询成功 success: (res) => { if (res.code != 200) { hideLoading(()=>{}, '查询失败') return } hideLoading(()=>{ const dollar = Number(res.data[0].dollar) this.setData({ doller: dollar.toFixed(2), rmb: (dollar*rate).toFixed(2), disdoller: (dollar*(1+discount)*weight).toFixed(2), disrmb: (dollar*(1+discount)*weight*rate).toFixed(2) }) }) }, /// 查询失败 fail: (emsg) => { hideLoading(()=>{}, '计算失败,原因:' + emsg) } }) }, '计算中....') }, /** * 返回上层视图 */ backToParent() { /// 返回上层视图 wx.navigateBack() }, /** * 按钮点击响应事件 */ /// 形状按钮点击事件 onButtonPressed(e: any) { /// 获取对应的id const ids = ( e.target.id).split(' ') let id = ( e.target.id).split(' ')[0] const index = ids[1] switch (id) { case 'zsshape': /// 形状 this.setData({ zsshapes: this.data.zsshapes.map(item => { if (item.id == index) { item.isCheck = true /// 设置形状 this.setData({ zsshape: item.id }) } else { item.isCheck = false } return item }) }) break; case 'zscolor': /// 颜色 this.setData({ zscolors: this.data.zscolors.map(item => { if (item.id == index) { item.isCheck = true /// 设置形状 this.setData({ zscolor: item.name }) } else { item.isCheck = false } return item }) }) break; case 'zsclarity': /// 净度 this.setData({ zsclaritys: this.data.zsclaritys.map(item => { if (item.id == index) { item.isCheck = true /// 设置形状 this.setData({ zsclarity: item.name }) } else { item.isCheck = false } return item }) }) break; default: /// 计算 this.priceCalc() break; } }, /** * 生命周期函数--监听页面加载 */ onLoad() { /// 显示默认数据 this.setData({ /// 颜色 zscolors: getEnumList('ZSColorType').map(obj => { return { id: obj.enumitemname, name: obj.enumdicname, isCheck: obj.enumdicname === this.data.zscolor } }), /// 净度 zsclaritys: getEnumList('ZSClarityType').map(obj => { return { id: obj.enumitemname, name: obj.enumdicname, isCheck: obj.enumdicname === this.data.zsclarity } }), }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() {}, /** * 生命周期函数--监听页面显示 */ onShow() {}, /** * 生命周期函数--监听页面隐藏 */ onHide() {}, /** * 生命周期函数--监听页面卸载 */ onUnload() {}, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() {}, /** * 页面上拉触底事件的处理函数 */ onReachBottom() {}, /** * 用户点击右上角分享 */ onShareAppMessage() {} })