const _Http = getApp().globalData.http, { formatTime } = require("../../utils/getTime"); let pageNumber = 1, pageTotal = 1, sys_payorderid = null, currency = require("../../utils/currency"), CNY = value => currency(value, { symbol: "¥", precision: 2 }).format(); Page({ data: { users: [], remarks: "", showAmount: "¥0.00", isDelete: true }, onLoad(options) { this.setData({ sys_payinstructions: wx.getStorageSync('siteP').sys_payinstructions, sys_payincidence: 1, opUsers: options.users ? JSON.parse(options.users) : [] }) sys_payorderid = options.sys_payorderid; console.log(options) this.getVersions(options.vid || ""); }, /* 保存订单进度 */ changeOrder() { _Http.basic({ "classname": "system.payorder.payorder", "method": "insertUsers", "content": { "sys_site_systempartitionid": this.data.sys_site_systempartitionid, sys_payorderid, "remarks": this.data.remarks, "users": this.data.users.map(v => { let item = this.data.userList.find(s => { let id = this.data.sys_payincidence == 1 ? s.userid : s.sa_agentsid; return id == v }) return { "isleader": item.isleader, "userid": item.userid, "sa_agentsid": item.sa_agentsid, "enddate": item.enddate[this.data.sys_site_systempartitionid] || '' } }) } }).then(res => { console.log("修改订单信息", res) if (res.msg != '成功') return wx.showToast({ title: res.msg, icon: "none", mask: true }); this.setData({ showAmount: CNY(res.data.amount), orderno: res.data.orderno }) }) }, /* 更改备注 */ onblur(e) { console.log(e) if (e.detail.value == this.data.remarks) return; this.setData({ remarks: e.detail.value }); this.changeOrder(); }, /* 获取版本 */ getVersions(vid) { _Http.basic({ "classname": "system.payorder.payorder", "method": "chooseSystemPartition", "content": { "pageNumber": 1, "pageSize": 9999, "where": { "condition": "" } } }).then(res => { console.log("版本列表", res) if (res.msg != '成功') { wx.showToast({ title: res.msg, icon: "none", mask: true }) setTimeout(() => { wx.navigateBack(); }, 1000) return; }; let sys_site_systempartitionid = res.data[0].sys_site_systempartitionid || ''; if (vid && res.data.some(v => v.sys_site_systempartitionid == vid)) sys_site_systempartitionid = vid - 0; this.setData({ versionsList: res.data, sys_site_systempartitionid }) this.getUsers(true); }) }, /* 切换版本 */ changeVer(e) { const { sys_site_systempartitionid } = e.currentTarget.dataset.item; if (this.data.sys_site_systempartitionid == sys_site_systempartitionid) return; this.setData({ sys_site_systempartitionid }); this.setUsers(); }, checkVer(e) { const { item } = e.currentTarget.dataset; this.selectComponent("#inventory").show(item.systemapp) }, /* 获取可添加账号/主体 */ getUsers(init = false) { if (init) { pageNumber = 1; pageTotal = 1; }; if (pageNumber > pageTotal) return; _Http.basic({ "classname": "system.payorder.payorder", "method": "chooseUsers", "content": { pageNumber, "pageSize": 99999, "where": { "condition": "" } } }).then(res => { console.log("用户列表", res) if (res.msg != '成功') { wx.showToast({ title: res.msg, icon: "none", mask: true }) setTimeout(() => { wx.navigateBack(); }, 1000) return; }; pageTotal = res.pageTotal; this.setData({ userList: res.pageNumber == 1 ? res.data : this.data.userList.concat(res.data) }) pageNumber = res.pageNumber + 1; this.setUsers(this.data.opUsers.filter(id => this.data.userList.some(v => id == v.userid))); // this.changeOrder(); }) }, setUsers(users = []) { let list = this.data.userList, idname = this.data.sys_payincidence == 1 ? 'userid' : 'sa_agentsid' list.forEach(v => { let date = v.enddate[this.data.sys_site_systempartitionid]; if (v.userid == wx.getStorageSync('userMsg').userid || v.isleader == 1) { if (date) { // if (formatTime(new Date(), '-').split(" ")[0] >= date) users.push(v[idname] + ''); } else { if (!users.some(v => v == v[idname])) users.push(v[idname] + ''); } } }); this.setData({ users }); this.changeOrder(); }, onReachBottom() { // this.getUsers(); }, onChange(e) { const { id } = e.currentTarget.dataset; let users = this.data.users; if (users.some(v => v == id)) { users = users.filter(s => s != id) } else { users.push(id + "") } this.setData({ users }); this.changeOrder(); }, /* 支付 */ payment() { let that = this; that.data.isDelete = false; wx.login({ success: (s) => { _Http.basic({ "classname": "system.payment.wechatpay", "method": "createWechatOrder", "content": { "orderno": that.data.orderno, "wechat_code": s.code, "trade_type": "JSAPI" } }).then(res => { console.log(res) wx.requestPayment({ timeStamp: res.data.timeStamp, nonceStr: res.data.nonceStr, package: res.data.package, signType: res.data.signType, paySign: res.data.paySign, success() { wx.showToast({ title: '支付成功', mask: true }) }, fail(err) { wx.showToast({ title: '支付失败', icon: "error", mask: true }) console.error(err) }, complete(e) { console.log(e) setTimeout(() => { wx.redirectTo({ url: '/pages/teams/order?id=' + sys_payorderid, }) }, 1000) } }) }) }, }) }, onUnload() { if (this.data.isDelete) _Http.basic({ "classname": "system.payorder.payorder", "method": "delete", "content": { sys_payorderid } }).then(res => { console.log("删除订单", res) }) } })