const _Http = getApp().globalData.http; Page({ data: { agency: { sys_enterpriseid: 0 }, skeletonShow: false, loading: false, sa_brandid: null, tradefield: null, sa_accountclassid: 0, brandList: [], domainList: [], type: "标准订单", }, /* 切换订单类型 */ onSelectType(e) { this.setData({ type: e.currentTarget.dataset.name }) this.getAccList(); }, onLoad(options) { this.getOrderList() this.setData({ type: options.type || '标准订单', sa_projectid: options.sa_projectid || 0, sa_contractid: options.sa_contractid || 0, userrole: wx.getStorageSync('userrole') }) if (this.data.userrole == '经销商') { this.getBrand(); this.getDomain(); }; let domainrelatedaccounts = wx.getStorageSync('domainrelatedaccounts'); if (domainrelatedaccounts.length) { this.setData({ domainrelatedaccounts }) } else { _Http.basic({ "classname": "sysmanage.develop.optiontype.optiontype", "method": "optiontypeselect", "content": { "pageNumber": 1, "pageSize": 9999, "typename": "domainrelatedaccounts" } }).then(res => { console.log("查询领域对应列表", res) if (res.msg == '成功' && res.data.length) { domainrelatedaccounts = res.data; wx.setStorageSync('domainrelatedaccounts', domainrelatedaccounts) this.setData({ domainrelatedaccounts }) } }) } console.log(domainrelatedaccounts) }, /* 获取品牌 */ getBrand(id) { let content = { nocache: true, "pageSize": 999, } if (id) content.sys_enterpriseid = id; _Http.basic({ "id": 20220924163702, content }).then(res => { console.log("查询品牌", res) if (res.data.length) this.setData({ brandList: res.data, sa_brandid: res.data[0].sa_brandid }); }) }, /* 获取orderList */ getOrderList() { _Http.basic({ "classname": "sysmanage.develop.optiontype.optiontype", "method": "optiontypeselect", "content": { "typename": "ordertype" } }).then(res => { console.log("订单类型", res) let orderList = []; try { orderList = res.data.map(v => v.value); } catch (error) { } if (orderList.length == 0) orderList.push("标准订单") this.setData({ orderList, type: orderList[0] }) }) }, /* 选择品牌 */ onSelectBrand(e) { let { item } = e.currentTarget.dataset; if (this.data.sa_brandid == item.sa_brandid) return; this.setData({ sa_brandid: item.sa_brandid }) }, /* 获取领域 */ getDomain(id) { let content = { nocache: true, "pageNumber": 1, "pageSize": 99999, "where": { "condition": "" } }; if (id) content.sys_enterpriseid = id; _Http.basic({ "id": 20221223141802, content }).then(res => { console.log("获取领域", res) if (res.data.length) this.setData({ domainList: res.data, tradefield: res.data[0].tradefield, skeletonShow: false }); this.getAccList(); }) }, /* 选择领域 */ onSelect(e) { let { item } = e.currentTarget.dataset; if (this.data.tradefield == item.tradefield) return; this.setData({ tradefield: item.tradefield }) this.getAccList(); }, onSelectAcc(e) { let { item } = e.currentTarget.dataset; console.log(item) this.setData({ sa_accountclassid: item.sa_accountclassid }) }, getAccList() { this.setData({ optionalAccount: [], sa_accountclassid: 0 }) if (['标准订单', '特殊订单'].includes(this.data.type || '标准订单')) { let tradefield = this.data.domainrelatedaccounts.find(v => v.value == this.data.tradefield); if (tradefield) _Http.basic({ "id": 20221008134803, "version": 1, "content": { "pageNumber": 1, "pageTotal": 1, "pageSize": 9999, "where": { "condition": "", "isused": 1, "isnotspecialfund": this.data.type == '标准订单' ? 0 : 1, //是否专用 }, } }).then(res => { console.log("账户列表", res) let list = res.data.filter(v => tradefield.subvalues.some(s => s == v.sa_accountclassid)) if (res.msg == '成功') this.setData({ optionalAccount: list, sa_accountclassid: list.length ? list[0].sa_accountclassid : 0 }) }) } }, submit() { if (this.data.userrole == '业务员' && !this.data.agency.sys_enterpriseid) { let that = this; wx.showModal({ title: '提示', content: '您还未选择经销商!是否立即前往', complete: (res) => { if (res.confirm) that.selectAgency() } }) return; }; if (this.data.loading) return; this.setData({ loading: true }) // sa_accountclassid: 0, _Http.basic({ "id": 20221108111402, content: { sa_orderid: 0, rec_contactsid: 0, pay_enterpriseid: 0, sa_contractid: this.data.sa_contractid, sa_projectid: this.data.sa_projectid, "sa_brandid": this.data.sa_brandid, //品牌ID "type": this.data.type, //订单类型 "tradefield": this.data.tradefield, //必选 sys_enterpriseid: this.data.agency.sys_enterpriseid, sa_accountclassid: this.data.sa_accountclassid } }).then(res => { this.setData({ loading: false }) console.log("创建" + this.data.type, res); wx.showToast({ title: res.msg != '成功' ? res.msg || '创建失败' : '创建成功', icon: "none", mask: true }); if (res.msg == '成功') setTimeout(() => { wx.redirectTo({ url: '/packageA/orderForm/detail?id=' + res.data.sa_orderid, }); }, 500) }) }, /* 业务员逻辑 ↓ */ selectAgency() { wx.navigateTo({ url: `/select/agent/index?params=${JSON.stringify({ "id": 20230219195002, "content": { nocache:true, "ismanage": "0", "where": { "condition": "" } } })}&radio=true`, }) getApp().globalData.handleSelect = this.setAgency.bind(this); }, /* 设置经销商 */ setAgency({ item }) { let that = this; wx.showModal({ title: '提示', content: `是否确定选择"${item.enterprisename}"作为指定经销商?`, complete: (res) => { if (res.confirm) { that.setData({ agency: item }) that.getBrand(item.sys_enterpriseid) that.getDomain(item.sys_enterpriseid) wx.navigateBack() } } }) } })