import { FunCode } from "../../../constants/enum/funcode" import { EOrderSrc } from "../../../constants/enum/index" import services from "../../../services/index" import { sendMsgToMQ } from "../../../services/api/common/index" import { getGoods, queryPermancePlanTmp } from "../../../services/api/orders/index" import { accountid, clientType, getErrorMsg, isEncrypted, loginid, protoHeader, timetample, userid, loginQuery, isMyFavorite, marketID, removeMyFavorite, addMyFavotite } from "../../../services/utils" import { hideLoading, showLoading, showModel, showToast } from "../../../utils/message/index" import { encryptBody } from "../../../utils/websocket/crypto" import { formatDateString, getDecimalNum, isnullstr } from "../../../utils/util" Page({ /** * 页面的初始数据 */ data: { /// 底部安全区域 safeBottom: getApp().globalData.safeBottom, /// 商品信息 goods: ({}), /// 商品编号 goodsno: '', /// 选中履约模板 tmp: ({}), /// 卖单信息 order: ({}), /// 颜色 colors: ['rebeccapurple', 'green', 'hotpink', 'orange', 'darkgoldenrod', 'firebrick', 'forestgreen', 'darksalmon', 'goldenrod', 'khaki', 'rosybrown', 'sandybrown', 'hotpink', 'orange', 'darkgoldenrod'], /// 操作 operator: 1, /// 委托时间 ordertime: '', /// 汇率 exchangerate: loginQuery().exchangeRateConfigs[0].exchangerate, /// 显示价格 price: '0.0', /// 克拉单价 priceper: '0.0', /// 显示单位 unit: '', /// 资金账号信息 accountid: accountid(), /// 是否显示交易 showTrade: Number(1), /// 是否显示弹出层 show: false, /// 询价价格 orderPrice: '', /// 备注信息 remark: '' }, /** * 返回上层视图 */ backToParent() { /// 返回上层视图 wx.navigateBack() }, onClose() { if (!this.data.show) { return } /// 关闭弹出层 this.setData({ show: false }) }, /// 显示弹出层 showPopup() { if (this.data.show) { return } /// 关闭弹出层 this.setData({ show: true }) }, // input输入中 getInputNum (e: any) { /// 截取2位小数位 let num = getDecimalNum(e.detail) this.setData({ orderPrice: num}) }, /** * 获取商品数据信息 */ getGoods() { showLoading(() => { /// 发送请求 getGoods({ data: { goodsno: this.data.goodsno }, success: (res) => { hideLoading( ()=> { /// 数据处理 var obj = res.data obj.imagepath = (services.config.openApiUrl+obj.imagepath).replace('./uploadFile', '/uploadFile') obj.mobile = isnullstr(res.data.mobile) obj.zscuttype1display = isnullstr(res.data.zscuttype1display) this.setData({ goods: obj, /// 显示单位 unit: obj.zscurrencytypedisplayunit, /// 克拉单价 priceper: Number(obj.priceper).toFixed(2), /// 显示价格 price: (obj.zscurrencytype === 1 ? obj.price : obj.price*this.data.exchangerate).toFixed(2), operator: isMyFavorite(obj.wrtradeorderid) ? 1 : 2 }) /// 查询履约模板信息 this.queryPermancePlanTmp(obj.performancetemplateid) }) }, fail: (emsg) => { hideLoading( ()=> {}, emsg) } }) }) }, /// 获取履约模板信息 queryPermancePlanTmp(performancetemplateid: number) { /// showLoading showLoading(() => { queryPermancePlanTmp({ success: (res) => { /// 获取数据 this.setData({ tmps: res.data, tmp: res.data.filter(obj => { return obj.autoid === performancetemplateid })[0] }) }, complete: () => { /// hideLoading hideLoading() } }) }) }, /// 钻石买摘牌接口 doZSBuyOrderDesting() { /// showModel showModel(() => { /// showLoding.... showLoading(() => { /// 构建参数信息 const info = JSON.stringify({ Header: protoHeader(FunCode.ZSBuyOrderDestingReq, marketID(67)), UserID: userid(), AccountID: accountid(), RelatedWRTradeOrderID: this.data.order.wrtradeorderid ? this.data.order.wrtradeorderid : this.data.goods.wrtradeorderid, OrderQty: this.data.order.remainqty ? this.data.order.remainqty: this.data.goods.remainqty, OrderSrc: EOrderSrc.ORDERSRC_CLIENT, ClientSerialNo: timetample().toString(), ClientType: clientType(), OperatorID: loginid(), MarketID: marketID(67), ClientOrderTime: formatDateString(new Date().toString()) }) /// 发送请求 sendMsgToMQ({ data: { data: encryptBody(info), funCodeReq: FunCode.ZSBuyOrderDestingReq, funCodeRsp: FunCode.ZSBuyOrderDestingRsp, isEncrypted: isEncrypted(), }, success: (res) => { /// 请求失败 if (res.code ! = 0) { hideLoading(() => {}, res.msg) return } /// 解析对象 const data = JSON.parse(res.data.data) if (data.RetCode != 0) { hideLoading(() => {}, getErrorMsg(data.RetCode)) return } /// 请求成功 hideLoading(() => { wx.navigateBack() }, '购买请求成功') }, fail: (emsg) => { hideLoading(() => { showToast('购买操作请求失败,原因:'+emsg) }) } }) }, '请求中......') }, '提示', '确定要购买吗?', true ) }, /// 询价申请 doBargainApply() { /// showLoding.... showLoading(() => { /// 构建参数信息 const info = JSON.stringify({ Header: protoHeader(FunCode.ZSBuyOrderDestingNegPriceReq, marketID(67)), UserID: userid(), AccountID: accountid(), RelatedOrderID: this.data.order.wrtradeorderid ? this.data.order.wrtradeorderid : this.data.goods.wrtradeorderid, OrderQty: this.data.order.remainqty ? this.data.order.remainqty: this.data.goods.remainqty, ApplyPrice: Number(this.data.orderPrice), ApplyRemark: this.data.remark, OrderSrc: EOrderSrc.ORDERSRC_CLIENT, ClientSerialNo: timetample().toString(), ClientType: clientType(), OperatorID: loginid(), MarketID: marketID(67), ClientOrderTime: formatDateString(new Date().toString()) }) /// 发送请求 sendMsgToMQ({ data: { data: encryptBody(info), funCodeReq: FunCode.ZSBuyOrderDestingNegPriceReq, funCodeRsp: FunCode.ZSBuyOrderDestingNegPriceRsp, isEncrypted: isEncrypted(), }, success: (res) => { /// 请求失败 if (res.code ! = 0) { hideLoading(() => {}, res.msg) return } /// 解析对象 const data = JSON.parse(res.data.data) if (data.RetCode != 0) { hideLoading(() => {}, getErrorMsg(data.RetCode)) return } /// 请求成功 hideLoading(() => { wx.navigateBack() }, '购买请求成功') }, fail: (emsg) => { hideLoading(() => { showToast('购买操作请求失败,原因:'+emsg) }) } }) }, '请求中......') }, /** * 添加收藏 */ onFavoriteOperator() { /// loding..... showLoading(()=>{ /// 委托单号 const wrtradeorderid = this.data.goods.wrtradeorderid /// 参数信息 const info = JSON.stringify({ UserID: userid(), OperateType: this.data.operator === 1 ? 2 : 1, ClientType: clientType(), MarketID: marketID(67), ClientSerialNo: timetample().toString(), WRTradeOrderID: wrtradeorderid, Header: protoHeader(FunCode.GoodsFavoriteOperateReq, marketID(67)) }) /// 发送请求 sendMsgToMQ({ data: { data: encryptBody(info), funCodeReq: FunCode.GoodsFavoriteOperateReq, funCodeRsp: FunCode.GoodsFavoriteOperateRsp, isEncrypted: isEncrypted() }, success: (res) => { /// 解析对象 const data = JSON.parse(res.data.data) if (data.RetCode != 0) { hideLoading(() => {}, getErrorMsg(data.RetCode)) return } hideLoading(()=>{ /// 是否收藏 this.setData({ operator: this.data.operator === 1 ? 2 : 1 }) this.data.operator === 1 ? addMyFavotite(wrtradeorderid) : removeMyFavorite(wrtradeorderid) }) /// 操作成功 showToast('操作请求成功', 'success', 1000) }, fail: (emsg) => { /// 操作失败 hideLoading(()=>{}, emsg) } }) }) }, /** * 生命周期函数--监听页面加载 */ onLoad(options: any) { /// 商品编号 this.setData({ goodsno: options.goodsno, ordertime: options.ordertime }) /// 是否显示交易 if (options.showTrade) { this.setData({ showTrade: Number(options.showTrade)}) } /// 获取商品数据 this.getGoods() /// 单据信息 if (options.item) { const item = JSON.parse(options.item) if (item) { this.setData({ order: item }) } } }, /// 查看大图 previewImage() { /// 查看大图 wx.previewImage({ urls: [this.data.goods.imagepath], current: '' }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() {}, /** * 生命周期函数--监听页面显示 */ onShow() {}, /** * 生命周期函数--监听页面隐藏 */ onHide() {}, /** * 生命周期函数--监听页面卸载 */ onUnload() {}, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })