|
@@ -0,0 +1,373 @@
|
|
|
+const _Http = getApp().globalData.http;
|
|
|
+
|
|
|
+Page({
|
|
|
+ data: {
|
|
|
+ loading: true,
|
|
|
+ sa_orderid: null,
|
|
|
+ tabsActive: 0,
|
|
|
+ tabsList: [{
|
|
|
+ label: "借用工具明细",
|
|
|
+ icon: "icon-tabchanpin",
|
|
|
+ model: "#Product"
|
|
|
+ }, {
|
|
|
+ label: "附件",
|
|
|
+ icon: "icon-tabfujian1",
|
|
|
+ model: "#Yl_Attachment"
|
|
|
+ }, {
|
|
|
+ label: "订单进度",
|
|
|
+ icon: "icon-tabcaozuojilu1",
|
|
|
+ model: "#Progress"
|
|
|
+ }],
|
|
|
+
|
|
|
+ },
|
|
|
+ onLoad(options) {
|
|
|
+ this.setData({
|
|
|
+ sa_orderid: options.id
|
|
|
+ });
|
|
|
+ this.getDetail(true);
|
|
|
+ },
|
|
|
+ /* 获取详情 */
|
|
|
+ getDetail(init = false, show = true) {
|
|
|
+ _Http.basic({
|
|
|
+ "id": 20230114140402,
|
|
|
+ "content": {
|
|
|
+ nocache: true,
|
|
|
+ "sa_orderid": this.data.sa_orderid
|
|
|
+ }
|
|
|
+ }, show).then(res => {
|
|
|
+ console.log("订单详情", res)
|
|
|
+ if (res.msg != '成功') return wx.showToast({
|
|
|
+ title: res.msg,
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ this.setData({
|
|
|
+ detail: res.data,
|
|
|
+ loading: false
|
|
|
+ });
|
|
|
+ if (init) this.partialRenewal(true)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 选择收货人 */
|
|
|
+ selectConsignee() {
|
|
|
+ if (this.isEdit()) return;
|
|
|
+ wx.navigateTo({
|
|
|
+ url: `/select/address/index?params=${JSON.stringify({
|
|
|
+ "id":20221009155803,
|
|
|
+ "content": {
|
|
|
+ nocache:true,
|
|
|
+ sys_enterpriseid:this.data.detail.sys_enterpriseid,
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageTotal": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "where": {
|
|
|
+ "condition": "",
|
|
|
+ workaddress:1
|
|
|
+ },
|
|
|
+ }
|
|
|
+ })}&radio=true`,
|
|
|
+ });
|
|
|
+ getApp().globalData.handleSelect = this.setConsignee.bind(this);
|
|
|
+ },
|
|
|
+ /* 设置收货人 */
|
|
|
+ setConsignee({
|
|
|
+ item
|
|
|
+ }) {
|
|
|
+ let that = this;
|
|
|
+ console.log("设置收货人", item)
|
|
|
+ wx.showModal({
|
|
|
+ title: '提示',
|
|
|
+ content: `是否确认设置"${item.name}"为收货人?`,
|
|
|
+ complete: (res) => {
|
|
|
+ if (res.confirm) {
|
|
|
+ let rec_contactsid = that.data.detail.rec_contactsid;
|
|
|
+ that.setData({
|
|
|
+ "detail.rec_contactsid": item.contactsid
|
|
|
+ });
|
|
|
+ that.changeDetail().then(s => {
|
|
|
+ if (s.msg == '成功') {
|
|
|
+ wx.showToast({
|
|
|
+ title: '设置成功',
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ setTimeout(() => {
|
|
|
+ wx.navigateBack();
|
|
|
+ that.getDetail();
|
|
|
+ }, 500)
|
|
|
+ } else {
|
|
|
+ that.setData({
|
|
|
+ "detail.rec_contactsid": rec_contactsid
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 选择财务信息 */
|
|
|
+ selectFinance() {
|
|
|
+ if (this.isEdit()) return;
|
|
|
+ wx.navigateTo({
|
|
|
+ url: `/select/finance/index?params=${JSON.stringify({
|
|
|
+ "id":20221013160602,
|
|
|
+ "content": {
|
|
|
+ nocache:true,
|
|
|
+ sys_enterpriseid:this.data.detail.sys_enterpriseid,
|
|
|
+ "pageNumber": 1,
|
|
|
+ "pageTotal": 1,
|
|
|
+ "pageSize": 20,
|
|
|
+ "where": {
|
|
|
+ "condition": "",
|
|
|
+ },
|
|
|
+ }
|
|
|
+ })}&radio=true`,
|
|
|
+ });
|
|
|
+ getApp().globalData.handleSelect = this.setFinance.bind(this);
|
|
|
+ },
|
|
|
+ /* 设置财务信息 */
|
|
|
+ setFinance({
|
|
|
+ item
|
|
|
+ }) {
|
|
|
+ let that = this;
|
|
|
+ console.log("设置财务信息", item)
|
|
|
+ wx.showModal({
|
|
|
+ title: '提示',
|
|
|
+ content: `是否确认设置"${item.enterprisename}"为开票单位?`,
|
|
|
+ complete: (res) => {
|
|
|
+ if (res.confirm) {
|
|
|
+ let sys_enterprise_financeid = that.data.detail.sys_enterprise_financeid;
|
|
|
+ that.setData({
|
|
|
+ "detail.sys_enterprise_financeid": item.sys_enterprise_financeid
|
|
|
+ });
|
|
|
+ that.changeDetail().then(s => {
|
|
|
+ if (s.msg == '成功') {
|
|
|
+ wx.showToast({
|
|
|
+ title: '设置成功',
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ setTimeout(() => {
|
|
|
+ wx.navigateBack();
|
|
|
+ that.getDetail();
|
|
|
+ }, 500)
|
|
|
+ } else {
|
|
|
+ that.setData({
|
|
|
+ "detail.sys_enterprise_financeid": sys_enterprise_financeid
|
|
|
+ });
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ //tabs 切换
|
|
|
+ tabsChange({
|
|
|
+ detail
|
|
|
+ }) {
|
|
|
+ this.setData({
|
|
|
+ tabsActive: detail
|
|
|
+ });
|
|
|
+ this.partialRenewal();
|
|
|
+ },
|
|
|
+ //局部数据更新 tabs
|
|
|
+ partialRenewal(init = false) {
|
|
|
+ let model = this.data.tabsList[this.data.tabsActive].model;
|
|
|
+ if (model) {
|
|
|
+ let Component = this.selectComponent(model),
|
|
|
+ {
|
|
|
+ total,
|
|
|
+ pageNumber,
|
|
|
+ pageTotal
|
|
|
+ } = Component.data.content,
|
|
|
+ id = this.data.detail.sa_orderid;
|
|
|
+ if (model == '#Product') id = {
|
|
|
+ id: this.data.detail.sa_orderid,
|
|
|
+ toolcount: this.data.detail.toolcount || ""
|
|
|
+ };
|
|
|
+ if (total == null || init) {
|
|
|
+ Component.getList(id, init);
|
|
|
+ } else if (pageNumber < pageTotal) {
|
|
|
+ Component.getList(id, false);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ },
|
|
|
+ onReachBottom() {
|
|
|
+ this.partialRenewal();
|
|
|
+ },
|
|
|
+ /* 更新数据 */
|
|
|
+ changeDetail() {
|
|
|
+ let data = this.data.detail,
|
|
|
+ content = {
|
|
|
+ "sa_orderid": data.sa_orderid,
|
|
|
+ "sys_enterpriseid": data.sys_enterpriseid, //订货企业id
|
|
|
+ "sa_accountclassid": data.accountclass.sa_accountclassid || 0, //营销账户类型ID
|
|
|
+ "sa_brandid": data.sa_brandid, //品牌ID
|
|
|
+ "sys_enterprise_financeid": data.sys_enterprise_financeid || 0, //合作企业财务信息ID(开票信息)
|
|
|
+ "sa_logiscompid": data.logiscomp.sa_logiscompid, //物流公司档案ID
|
|
|
+ "rec_contactsid": data.rec_contactsid || 0, //合作企业联系人表ID(收货信息)
|
|
|
+ "type": data.type, //订单类型
|
|
|
+ "typemx": data.typemx, // 明细分类,可选
|
|
|
+ "remarks": data.remarks,
|
|
|
+ "saler_hrid": data.saler_hrid, //销售人员hrid,业务员hrid
|
|
|
+ "tradefield": data.tradefield, //必选
|
|
|
+ "pay_enterpriseid": data.pay_enterpriseid, //结算单位
|
|
|
+ "rebate_userate": data.accountclass.rebate_userate, //返利金使用比例
|
|
|
+ "rebate_used": data.rebate_used, //默认0,是否使用返利金
|
|
|
+ "billdate": data.billdate, //单据日期,默认创建日期
|
|
|
+ };
|
|
|
+ return new Promise((resolve, reject) => {
|
|
|
+ _Http.basic({
|
|
|
+ "id": 20230116092702,
|
|
|
+ content
|
|
|
+ }).then(res => {
|
|
|
+ console.log("修改订单数据", res);
|
|
|
+ if (res.msg != '成功') wx.showToast({
|
|
|
+ title: res.msg,
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ resolve(res)
|
|
|
+ })
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 修改订单备注 */
|
|
|
+ changeRemarks(e) {
|
|
|
+ let value = e.detail.value,
|
|
|
+ remarks = this.data.detail.remarks,
|
|
|
+ that = this;
|
|
|
+ if (value == this.data.detail.remarks) return;
|
|
|
+ wx.showModal({
|
|
|
+ title: '提示',
|
|
|
+ content: '是否确定修改订单备注?',
|
|
|
+ complete: async (res) => {
|
|
|
+ if (res.cancel) that.setData({
|
|
|
+ "detail.remarks": remarks
|
|
|
+ })
|
|
|
+ if (res.confirm) {
|
|
|
+ this.data.detail.remarks = value;
|
|
|
+ let res = await that.changeDetail();
|
|
|
+ that.setData({
|
|
|
+ "detail.remarks": res.msg == '成功' ? value : remarks
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 删除订单 */
|
|
|
+ deleteItem() {
|
|
|
+ let that = this;
|
|
|
+ wx.showModal({
|
|
|
+ title: '提示',
|
|
|
+ content: '是否确认删除订单?',
|
|
|
+ complete: (res) => {
|
|
|
+ if (res.confirm) _Http.basic({
|
|
|
+ "id": 20230116100002,
|
|
|
+ "content": {
|
|
|
+ "sa_orderids": [
|
|
|
+ that.data.sa_orderid
|
|
|
+ ]
|
|
|
+ }
|
|
|
+ }).then(s => {
|
|
|
+ console.log("删除订单", s)
|
|
|
+ if (s.msg != '成功') return wx.showToast({
|
|
|
+ title: s.msg,
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ wx.showToast({
|
|
|
+ title: `成功删除${that.data.detail.sonum}订单`,
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ setTimeout(() => {
|
|
|
+ /* let page = getCurrentPages().find(v => v.__route__ == 'packageA/orderForm/index');
|
|
|
+ if (page) page.setData({
|
|
|
+ list: page.data.list.filter(v => v.sa_orderid != that.data.sa_orderid),
|
|
|
+ "content.total": page.data.content.total - 1,
|
|
|
+ amount: (page.data.amount - that.data.detail.amount).toFixed(2)
|
|
|
+ }); */
|
|
|
+ wx.navigateBack()
|
|
|
+ }, 500)
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 提交订单 */
|
|
|
+ submit() {
|
|
|
+ let that = this;
|
|
|
+ wx.showModal({
|
|
|
+ title: '提示',
|
|
|
+ content: '是否确认提交订单?',
|
|
|
+ complete: (res) => {
|
|
|
+ if (res.confirm) _Http.basic({
|
|
|
+ "id": 20230114160002,
|
|
|
+ "content": {
|
|
|
+ sa_orderid: that.data.sa_orderid
|
|
|
+ },
|
|
|
+ }).then(s => {
|
|
|
+ console.log("提交订单", s)
|
|
|
+ wx.showToast({
|
|
|
+ title: s.msg != '成功' ? s.msg : '提交成功',
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ if (s.msg == '成功') that.setData({
|
|
|
+ "detail.status": "提交"
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 确认订单交期 */
|
|
|
+ notarize() {
|
|
|
+ let that = this;
|
|
|
+ wx.showModal({
|
|
|
+ title: '提示',
|
|
|
+ content: '是否确认交期?',
|
|
|
+ complete: (res) => {
|
|
|
+ if (res.confirm) _Http.basic({
|
|
|
+ "id": 20230129154102,
|
|
|
+ "content": {
|
|
|
+ sa_orderid: that.data.sa_orderid
|
|
|
+ },
|
|
|
+ }).then(s => {
|
|
|
+ console.log("确认交期", s)
|
|
|
+ wx.showToast({
|
|
|
+ title: s.msg != '成功' ? s.msg : '确认成功',
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ if (s.msg == '成功') {
|
|
|
+ that.setData({
|
|
|
+ "detail.status": "交期确认"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ /* 判断是否可以编辑 */
|
|
|
+ isEdit() {
|
|
|
+ if (this.data.detail.status != '新建') wx.showToast({
|
|
|
+ title: '当前订单状态不可设置!',
|
|
|
+ icon: "none"
|
|
|
+ });
|
|
|
+ return this.data.detail.status != '新建';
|
|
|
+ },
|
|
|
+ /* 设置项目订单品牌领域 */
|
|
|
+ setBraned() {
|
|
|
+ wx.navigateTo({
|
|
|
+ url: './modules/setBrand/index?id=' + this.data.sa_orderid,
|
|
|
+ })
|
|
|
+ },
|
|
|
+ onUnload() {
|
|
|
+ let page = getCurrentPages().find(v => v.__route__ == 'packageA/borrow/index');
|
|
|
+ let content = JSON.parse(JSON.stringify(page.data.content));
|
|
|
+ content.pageNumber = 1;
|
|
|
+ content.pageSize = page.data.list.length <= 20 ? page.data.list.length + 3 : page.data.list.length;
|
|
|
+ _Http.basic({
|
|
|
+ "id": 20230114105002,
|
|
|
+ content
|
|
|
+ }).then(res => {
|
|
|
+ console.log("更新借用单", res)
|
|
|
+ page.setData({
|
|
|
+ list: res.data,
|
|
|
+ "content.total": res.total,
|
|
|
+ })
|
|
|
+ /* amount: res.tips.amount || 0 */
|
|
|
+ })
|
|
|
+ },
|
|
|
+})
|