You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

386 lines
12 KiB

// pages/waitForApproval/approvalDetail/approvalDetail.js
var app = getApp();
var network = require("../../../utils/net.js");
var timechage = require("../../../utils/dateTimeUtil.js");
// 销售 - 销售订单
var saleOrderMethod = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/OrderRpc/Load';
// 销售 - 销售预报
var saleForecastMethod = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/SaleForecastRpc/Load';
// 销售 - 业务担保
var businessGuaranteeMethod = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/BusinessGuaranteeRpc/Load';
// 屠宰分割-生产通知单
var productNoticeMethod = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/ProductNoticeRpc/Load';
/**
* 确定按钮点击进行审核的方法
*/
// 销售 - 销售订单
var saleOrderForward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/OrderRpc/Forward';
var saleOrderBackward = "/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/OrderRpc/Backward"
// 销售 - 销售预报
var saleForecastForward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/SaleForecastRpc/Forward';
var saleForecastBackward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/SaleForecastRpc/Backward';
// 销售 - 业务担保
var businessGuaranteeForward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/BusinessGuaranteeRpc/Forward';
var businessGuaranteeBackward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/BusinessGuaranteeRpc/Backward';
// 屠宰分割-生产通知单
var productNoticeForward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/ProductNoticeRpc/Forward';
var productNoticeBackward = '/MainSystem/B3MiniProgramRpc/Rpcs/ManagerRpc/ProductNoticeRpc/Backward';
//将要获取的表头模版名称
var formTitleTemplate = "";
//将要获取的详情模版名称
var detailInfoTemplate = "";
var detailItemType = "";
Page({
/**
* 页面的初始数据
*/
data: {
dataArr: [],
titleObj: {},
templateName: "",
titleTemplateName: "",
showBottomView: true,
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function(options) {
//正常登录流程进入值为0,分享页面直接进入值为1
if (app.globalData.shareInState == 1) {
return;
}
var that = this;
if (app.globalData.shareInParameter.id) {
var detailItemID = parseInt(app.globalData.shareInParameter.id);
detailItemType = app.globalData.shareInParameter.detailItemType;
} else {
var detailItemID = parseInt(options.id);
detailItemType = options.detailItemType;
var detailItemState = options.detailItemState;
if (detailItemState == "true") {
that.setData({
showBottomView: true,
});
} else {
that.setData({
showBottomView: false,
});
}
}
if (!detailItemID || !detailItemType) {
wx.showModal({
title: '提示',
content: '单据信息不明确,无法获取详情数据',
success:function(res){
app.globalData.shareInParameter = {};
app.globalData.shareInPath = '';
if (res.confirm) {
wx.navigateBack({
delta:1,
})
}
},
});
return;
}
console.log("获取到的详情ID = " + detailItemID);
console.log("获取到的详情类型 = " + detailItemType);
let method = '';
switch (detailItemType) {
case "销售-销售订单":
method = saleOrderMethod;
break;
case "销售-销售预报":
method = saleForecastMethod;
break;
case "销售-业务担保":
method = businessGuaranteeMethod;
break;
case "屠宰分割-生产通知单":
method = productNoticeMethod;
break;
}
let params = [detailItemID];
network.transfer_request(method, params, function(res) {
// let DepartmentWorkFlow_Detail_Name = res.result.DepartmentWorkFlow_Detail_Name
// if (DepartmentWorkFlow_Detail_Name == "初始") {
// that.setData({
// showBottomView: true,
// });
// } else {
// that.setData({
// showBottomView: true,
// });
// }
// 置空公众号跳转信息json 防止下次进入
app.globalData.shareInParameter = {};
app.globalData.shareInPath = '';
var array = res.result;
if (array.length <= 0) {
wx.showToast({
title: '无数据更新',
})
return;
}
switch (detailItemType) {
case "销售-销售订单":
formTitleTemplate = "commonFormTitleTemplate";
detailInfoTemplate = "saleOrderTemplate";
that.saleOrder(array, detailInfoTemplate, formTitleTemplate);
break;
case "销售-销售预报":
formTitleTemplate = "commonFormTitleTemplate";
detailInfoTemplate = "saleOrderTemplate";
// that.saleForecast(array, detailInfoTemplate, formTitleTemplate)
that.saleOrder(array, detailInfoTemplate, formTitleTemplate);
break;
case "销售-业务担保":
formTitleTemplate = "guaranteeFormTitleTemplate";
detailInfoTemplate = "businessGuaranteeTemplate";
that.businessGuarantee(array, detailInfoTemplate, formTitleTemplate);
break;
case "屠宰分割-生产通知单":
formTitleTemplate = "commonFormTitleTemplate";
detailInfoTemplate = "productNoticeTemplate";
that.productNotice(array, detailInfoTemplate, formTitleTemplate);
break;
}
})
},
// 销售订单 销售预报 数据解析
saleOrder: function(result, infoTemplate, titleTemplate) {
var formTitle = {
//返回的订单ID
orderID: result.ID,
// 购货客户
Customer_Name: result.Customer_Name,
// 会计单位
AccountingUnit_Name: result.AccountingUnit_Name,
// 部门
Department_Name: result.Department_Name,
// 日期
CreateTime: timechage.formatTimeTwo(result.CreateTime.substring(6, 19), 'Y/M/D h:m')
}
let arrayLast = [];
var detailArr = result.Details;
for (var i = 0; i < detailArr.length; i++) {
var policyPrice = detailArr[i].PolicyPrice;
if (!policyPrice) {
policyPrice = 0;
}
var dmo = {
listNumber: i + 1,
// 存活名称
Goods_Name: detailArr[i].Goods_Name,
// 主数量
Number: detailArr[i].Number,
// 单价
Price: detailArr[i].Price,
// 辅数量
SecondNumber: detailArr[i].SecondNumber,
// 政策单价
PolicyPrice: policyPrice,
}
arrayLast.push(dmo);
}
this.setData({
// 表头模版
titleTemplateName: titleTemplate,
// 详情模版名称
templateName: infoTemplate,
// 详情数组
dataArr: arrayLast,
// 表头明细
titleObj: formTitle,
})
},
// 业务担保数据解析
businessGuarantee: function(result, infoTemplate, titleTemplate) {
var formTitle = {
//返回的订单ID
orderID: result.ID,
// 购货客户
Customer_Name: result.Customer_Name,
// 会计单位
AccountingUnit_Name: result.AccountingUnit_Name,
// 部门
Department_Name: result.Department_Name,
// 担保日期
GuaranteeDate: timechage.formatTimeTwo(result.GuaranteeDate.substring(6, 19), 'Y/M/D h:m'),
// 承诺回款日期
CashBackDate: timechage.formatTimeTwo(result.CashBackDate.substring(6, 19), 'Y/M/D h:m'),
// 担保金额
GuaranteeMoney: result.GuaranteeMoney,
}
let arrayLast = [];
var detailArr = result.Details;
for (var i = 0; i < detailArr.length; i++) {
var money = detailArr[i].Value;
if (!money) {
money = 0;
}
var dmo = {
listNumber: i + 1,
// 客户名称
Customer_Name: detailArr[i].Customer_Name,
// 单据类型
DmoTypeIDName: detailArr[i].DmoTypeIDName,
// 单号
ID: detailArr[i].ID,
// 单据日期
Date: timechage.formatTimeTwo(detailArr[i].Date.substring(6, 19), 'Y/M/D h:m'),
// 单据金额
Value: money,
}
arrayLast.push(dmo);
}
this.setData({
// 表头模版
titleTemplateName: titleTemplate,
// 详情模版名称
templateName: infoTemplate,
// 详情数组
dataArr: arrayLast,
// 表头明细
titleObj: formTitle,
})
},
// 生产通知单数据解析
productNotice: function(result, infoTemplate, titleTemplate) {
var formTitle = {
//返回的订单ID
// 生产通知订单ID在表头内取不到,包含在详情数组内
// orderID: result.ID,
orderID: result.Details[0].ProductNotice_ID,
// 购货客户
Customer_Name: result.Customer_Name,
// 会计单位
AccountingUnit_Name: result.AccountingUnit_Name,
// 部门
Department_Name: result.Department_Name,
// 日期
CreateTime: timechage.formatTimeTwo(result.Date.substring(6, 19), 'Y/M/D'),
}
let arrayLast = [];
var detailArr = result.Details;
for (var i = 0; i < detailArr.length; i++) {
var dmo = {
listNumber: i + 1,
// 存活名称
Goods_Name: detailArr[i].Goods_Name,
// 主数量
Number: detailArr[i].Number,
// 辅数量
SecondNumber: detailArr[i].SecondNumber,
// 生产日期
ProduceDate: timechage.formatTimeTwo(detailArr[i].ProduceDate.substring(6, 19), 'Y/M/D'),
// 交货日期
DeliveryDate: timechage.formatTimeTwo(detailArr[i].DeliveryDate.substring(6, 19), 'Y/M/D'),
// 加工要求
ProduceRequest: detailArr[i].ProduceRequest,
}
arrayLast.push(dmo);
}
this.setData({
// 表头模版
titleTemplateName: titleTemplate,
// 详情模版名称
templateName: infoTemplate,
// 详情数组
dataArr: arrayLast,
// 表头明细
titleObj: formTitle,
})
},
/**
* 确定按钮点击事件
*/
sureBtnClicked: function(event) {
var id = event.currentTarget.dataset.orderid;
console.log("点击的按钮ID == " + id);
let method = '';
switch (detailItemType) {
case "销售-销售订单":
method = saleOrderForward;
break;
case "销售-销售预报":
method = saleForecastForward;
break;
case "销售-业务担保":
method = businessGuaranteeForward;
break;
case "屠宰分割-生产通知单":
method = productNoticeForward;
break;
}
let params = [id];
network.transfer_request(method, params, function(res) {
wx.showToast({
title: '审批成功',
success: function() {
wx.navigateBack({
delta: 1,
})
}
})
})
},
/**
* 退回按钮点击事件
*/
cancleBtnClicked: function(event) {
var id = event.currentTarget.dataset.orderid;
console.log("点击的按钮ID == " + id);
let method = '';
switch (detailItemType) {
case "销售-销售订单":
method = saleOrderBackward;
break;
case "销售-销售预报":
method = saleForecastBackward;
break;
case "销售-业务担保":
method = businessGuaranteeBackward;
break;
case "屠宰分割-生产通知单":
method = productNoticeBackward;
break;
}
let params = [id];
network.transfer_request(method, params, function(res) {
wx.showToast({
title: '退回成功',
success: function() {
wx.navigateBack({
delta: 1,
})
}
})
})
},
})