Files
Wx_AUTS_Prod/Web/pages/OUtBoxBarCode/OUtBoxBarCode.js
2025-11-26 17:42:45 +08:00

1313 lines
43 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// logs.js
const app = getApp()
import {
CheckOut,
GetdingdanbyIDs,
AddAdd,
EditEdit,
QrderInformation
} from '../../lib/RequestingCenter.js'
var scodes = 0
let SCREEN_WIDTH = 750
let RATE = wx.getSystemInfoSync().screenHeight / wx.getSystemInfoSync().screenWidth
var garrUi = []; // 全局变量,进出页面时使用。
var gDicListRecs = {};
var sqlids = 0;
Page({
data: {
//timerID
autoCallApiID: 0,
//扫码记录
arrScannedCodes: [],
isCopyingTextDomID: "",
//UI页面渲染使用的数据列表。渲染时copy到OutBoxCodeList上让页面去渲染。
arrUIItems: [],
ScreenTotalW: SCREEN_WIDTH,
ScreenTotalH: SCREEN_WIDTH * RATE,
listers: [],
chemaList: [],
//结单是否可以使用
isok: true,
//彩箱信息是否显示
show: 0,
//结单后所以有按钮是否显示
shows: false,
//人工录入弹框是否显示
showrgluru: false,
//人工录入的外箱码
rglurOutBoxCode: "",
wxma: "",
dingdanbianh: "",
ColorBox_BarCodeList: [],
selectedoutboxlist: [],
ProjectList: [],
OutBoxCodeList: [],
//绑定数量
gdu: "",
ShippingCode: "",
scrollTop: 0
},
onLoad: function (option) {
wx.hideLoading();
wx.showLoading({
title: '请稍后....',
});
var that = this;
console.log(garrUi)
sqlids = option.sqlid
if (sqlids == 1) {
that.setData({
DBname: "uts_zongqing"
})
} else {
that.setData({
DBname: "uts_johao"
})
}
//2秒开启一次定时器
this.data.autoCallApiID = setInterval(this.autoCallApiFunc, 2000, this);
scodes = option.ShippingCode
that.setData({
ShippingCode: option.ShippingCode,
})
QrderInformation({
ShippingCode: scodes,
sqlid: sqlids
}).then(res => {
if (res) {
if (res.Data.shippingByProject.QTY == res.Data.shippingByProject.bandingnum) {
that.setData({
isok: false,
listers: res.Data.shippingByProject
})
} else {
that.setData({
isok: true,
listers: res.Data.shippingByProject
})
}
GetdingdanbyIDs({
ShippingCode: scodes,
sqlid: sqlids
}).then(res => {
console.log(res)
if (res) {
var tmpObj = null;
var currentOperateRec = null;
//copy UI 历史记录从全局变量
if (typeof (gDicListRecs[option.ShippingCode]) == 'undefined')
gDicListRecs[option.ShippingCode] = [];
garrUi = gDicListRecs[option.ShippingCode];
that.data.arrUIItems = garrUi;
var arrUIItems = this.data.arrUIItems;
//状态是-1的数组
var isstatusnegativeone = []
//状态是0的数组
var isstatuszero = []
//状态是1的数组
var isstatusone = []
for (var i = 0; i < res.length; i++) {
currentOperateRec = res[i];
var findPos = -1;
for (var j = 0; j < arrUIItems.length; j++) {
//找到跟当前ui 记录匹配的数据表里面的记录的下标。
if (arrUIItems[j].id == res[i].OutBoxCode) {
tmpObj = arrUIItems[j];
findPos = i;
break;
}
}
if (findPos >= 0) //当前ui记录在数据表里面有。那么以数据表的信息为准更新ui记录
{
tmpObj.id = currentOperateRec.OutBoxCode;
tmpObj.status = 1; //要判断老的状态,老决定新的怎么更新。因为返回数据肯定是正确的,所以始终直接更新
tmpObj.errmsg = "";
tmpObj.ProjectName = currentOperateRec.ProjectName;
tmpObj.operator = currentOperateRec.Operator;
tmpObj.operatetime = currentOperateRec.ShippingDateTime;
tmpObj.bclist = currentOperateRec.CCodeBCodeList;
tmpObj.ismergedformdatabase = true;
} else // 当前ui记录没有在数据表里面找到
{
tmpObj = {
id: currentOperateRec.OutBoxCode,
status: 1, //要判断老的状态,老决定新的怎么更新。因为返回数据肯定是正确的,所以始终直接更新
errmsg: "",
ProjectName: currentOperateRec.ProjectName,
operator: currentOperateRec.Operator,
operatetime: currentOperateRec.ShippingDateTime,
bclist: currentOperateRec.CCodeBCodeList,
ismergedformdatabase: true
}
arrUIItems.push(tmpObj);
}
}
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].status == 1 && arrUIItems[i].ismergedformdatabase == false) {
arrUIItems.splice(i, 1);
}
}
for (var i = 0; i < arrUIItems.length; i++) {
arrUIItems[i].ismergedformdatabase = false;
}
//处理顺序问题开始
if (arrUIItems.length > 0) {
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].status == -1) {
tmpObj = {
id: arrUIItems[i].id,
status: -1,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusnegativeone.push(tmpObj);
} else if (arrUIItems[i].status == 0) {
tmpObj = {
id: arrUIItems[i].id,
status: 0,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatuszero.push(tmpObj)
} else {
tmpObj = {
id: arrUIItems[i].id,
status: 1,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusone.push(tmpObj)
}
}
}
if (arrUIItems.length > 0) {
arrUIItems = [];
}
if (isstatuszero.length > 0) {
for (var i = 0; i < isstatuszero.length; i++) {
arrUIItems.push(isstatuszero[i])
}
}
if (isstatusnegativeone.length > 0) {
for (var i = 0; i < isstatusnegativeone.length; i++) {
arrUIItems.push(isstatusnegativeone[i])
}
}
if (isstatusone.length > 0) {
for (var i = 0; i < isstatusone.length; i++) {
arrUIItems.push(isstatusone[i])
}
}
that.data.arrUIItems = arrUIItems
//处理顺序问题结束
that.setData({
OutBoxCodeList: that.data.arrUIItems,
// isok: false,
arrScannedCodes: []
});
} else {
var tmpArrRef = arrUIItems;
for (var i = 0; i < tmpArrRef.length; i++) {
if (tmpArrRef[i].id === res.OutBoxCode) {
tmpArrRef[i].status = -1;
tmpArrRef[i].errmsg = res.Message;
}
}
that.setData({
OutBoxCodeList: that.data.arrUIItems,
isok: true,
arrScannedCodes: []
});
}
wx.hideLoading();
}, err => {
wx.showModal({
title: '提示',
content: "网络繁忙" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
} else {
wx.showModal({
title: '提示',
content: "返回的数据空的",
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
}, err => {
app.toast(2, "网络繁忙")
wx.showModal({
title: '提示',
content: "网络繁忙" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
console.log(err)
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
},
//页面关闭
onUnload: function () {
//clrea timer
var that = this
garrUi = that.data.arrUIItems;
gDicListRecs[scodes] = garrUi;
clearInterval(this.data.autoCallApiID);
},
//绑定处理
autoCallApiFunc: function (thatRef) {
var that = thatRef;
if (that.data.arrScannedCodes.length < 0)
return;
//发送
that.data.arrScannedCodes.forEach(function (x) {
AddAdd({
ShippingCode: scodes,
outid: x,
sqlid: sqlids
}).then(res => {
if (res.Status) {
var arrUIItems = that.data.arrUIItems;
var tmpObj = null;
//状态是-1的数组
var isstatusnegativeone = []
//状态是0的数组
var isstatuszero = []
//状态是1的数组
var isstatusone = []
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].id === res.OutBoxCode) {
arrUIItems[i].status = 1;
arrUIItems[i].ProjectName = res.ProjectName;
arrUIItems[i].operator = res.Operator;
arrUIItems[i].operatetime = res.ShippingDateTime;
arrUIItems[i].ismergedformdatabase = false;
var bcListRef = res.CCodeBCodeList;
for (var j = 0; j < bcListRef.length; j++) {
arrUIItems[i].bclist.push(bcListRef[j]);
}
}
}
//处理顺序问题开始
if (arrUIItems.length > 0) {
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].status == -1) {
tmpObj = {
id: arrUIItems[i].id,
status: -1,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusnegativeone.push(tmpObj);
} else if (arrUIItems[i].status == 0) {
tmpObj = {
id: arrUIItems[i].id,
status: 0,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatuszero.push(tmpObj)
} else {
tmpObj = {
id: arrUIItems[i].id,
status: 1,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusone.push(tmpObj)
}
}
}
if (arrUIItems.length > 0) {
arrUIItems = [];
}
if (isstatuszero.length > 0) {
for (var i = 0; i < isstatuszero.length; i++) {
arrUIItems.push(isstatuszero[i])
}
}
if (isstatusnegativeone.length > 0) {
for (var i = 0; i < isstatusnegativeone.length; i++) {
arrUIItems.push(isstatusnegativeone[i])
}
}
if (isstatusone.length > 0) {
for (var i = 0; i < isstatusone.length; i++) {
arrUIItems.push(isstatusone[i])
}
}
that.data.arrUIItems = arrUIItems
//处理顺序问题结束
that.setData({
OutBoxCodeList: that.data.arrUIItems,
arrScannedCodes: []
});
QrderInformation({
ShippingCode: scodes,
sqlid: sqlids
}).then(res => {
console.log(res)
if (res) {
if (res.Data.shippingByProject.QTY == res.Data.shippingByProject.bandingnum) {
that.setData({
isok: false,
listers: res.Data.shippingByProject
})
} else {
that.setData({
isok: true,
listers: res.Data.shippingByProject
})
}
} else {
wx.showModal({
title: '提示',
content: "返回数据为空值",
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
}, err => {
wx.showModal({
title: '提示',
content: "网络繁忙" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
} else {
var tmpArrRef = that.data.arrUIItems;
for (var i = 0; i < tmpArrRef.length; i++) {
if (tmpArrRef[i].id === res.OutBoxCode) {
tmpArrRef[i].status = -1;
tmpArrRef[i].errmsg = res.Message;
}
}
that.setData({
OutBoxCodeList: that.data.arrUIItems,
arrScannedCodes: []
});
}
}, err => {
app.toast(2, "网络繁忙")
}).catch(
err => {
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
});
//清空
this.data.arrScannedCodes = [];
},
//人工录入方法
rgluru: function () {
var that = this
that.setData({
showrgluru: true,
rglurOutBoxCode: ""
})
},
//关闭人工录入方法
qux: function () {
var that = this
that.setData({
showrgluru: false,
rglurOutBoxCode: ""
})
},
//人工录入确认按钮
qr: function () {
var that = this
let rglurOutBoxCode = that.data.rglurOutBoxCode;
console.log(that.data.rglurOutBoxCode)
if (rglurOutBoxCode != null && rglurOutBoxCode != "") {
wx.showModal({
title: '绑定',
content: '您确认绑定您选择的' + that.data.rglurOutBoxCode,
success(res) {
var outids = that.data.rglurOutBoxCode
console.log(res)
console.log(outids)
if (res.confirm) {
var arrUIItems = that.data.arrUIItems
var tmpObj = null;
//状态是-1的数组
var isstatusnegativeone = []
//状态是0的数组
var isstatuszero = []
//状态是1的数组
var isstatusone = []
that.data.arrScannedCodes.push(outids);
arrUIItems.push({
id: outids,
status: 0,
errmsg: "",
bclist: [],
projectid: 0,
operator: "",
operatetime: "",
ismergedformdatabase: false
});
console.log(that.data.arrScannedCodes)
//处理顺序问题开始
if (arrUIItems.length > 0) {
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].status == -1) {
tmpObj = {
id: arrUIItems[i].id,
status: -1,
errmsg: arrUIItems[i].errmsg,
projectid: arrUIItems[i].projectid,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusnegativeone.push(tmpObj);
} else if (arrUIItems[i].status == 0) {
tmpObj = {
id: arrUIItems[i].id,
status: 0,
errmsg: arrUIItems[i].errmsg,
projectid: arrUIItems[i].projectid,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatuszero.push(tmpObj)
} else {
tmpObj = {
id: arrUIItems[i].id,
status: 1,
errmsg: arrUIItems[i].errmsg,
projectid: arrUIItems[i].projectid,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusone.push(tmpObj)
}
}
}
if (arrUIItems.length > 0) {
arrUIItems = [];
}
if (isstatuszero.length > 0) {
for (var i = 0; i < isstatuszero.length; i++) {
arrUIItems.push(isstatuszero[i])
}
}
if (isstatusnegativeone.length > 0) {
for (var i = 0; i < isstatusnegativeone.length; i++) {
arrUIItems.push(isstatusnegativeone[i])
}
}
if (isstatusone.length > 0) {
for (var i = 0; i < isstatusone.length; i++) {
arrUIItems.push(isstatusone[i])
}
}
that.data.arrUIItems = arrUIItems
//处理顺序问题结束
that.setData({
OutBoxCodeList: that.data.arrUIItems,
rglurOutBoxCode: ""
})
console.log('用户点击确认')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
} else {
app.toast(2, "请输入外箱码")
}
},
//扫码的方法
scanCodeEvent: function () {
var that = this;
console.log(scodes)
wx.scanCode({
onlyFromCamera: true, // 只允许从相机扫码
success(res) {
console.log("扫码成功:" + JSON.stringify(res))
var outid = res.result
var out = that.data.arrUIItems
var isexist = false
for (var i = 0; i < out.length; i++) {
if (out[i].id == outid) {
isexist = true
break;
}
}
if (isexist) {
wx.showModal({
title: '提示信息',
content: '您选择的' + outid + '已经扫过了',
success(res) {
var outids = outid
console.log(res)
if (res.confirm) {
console.log('用户点击确认')
return;
} else if (res.cancel) {
console.log('用户点击取消')
return;
}
}
})
return;
}
wx.showModal({
title: '绑定',
content: '您确认绑定您选择的' + res.result,
success(res) {
var outids = outid
console.log(res)
if (res.confirm) {
if (typeof (gDicListRecs[scodes]) == 'undefined')
gDicListRecs[scodes] = [];
var arrUIItems = that.data.arrUIItems
var tmpObj = null;
//状态是-1的数组
var isstatusnegativeone = []
//状态是0的数组
var isstatuszero = []
//状态是1的数组
var isstatusone = []
that.data.arrScannedCodes.push(outids);
that.data.arrUIItems.push({
id: outids,
status: 0,
errmsg: "",
bclist: [],
projectid: 0,
operator: "",
operatetime: "",
ismergedformdatabase: false
});
console.log(that.data.arrScannedCodes)
//处理顺序问题开始
if (arrUIItems.length > 0) {
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].status == -1) {
tmpObj = {
id: arrUIItems[i].id,
status: -1,
errmsg: arrUIItems[i].errmsg,
projectid: arrUIItems[i].projectid,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusnegativeone.push(tmpObj);
} else if (arrUIItems[i].status == 0) {
tmpObj = {
id: arrUIItems[i].id,
status: 0,
errmsg: arrUIItems[i].errmsg,
projectid: arrUIItems[i].projectid,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatuszero.push(tmpObj)
} else {
tmpObj = {
id: arrUIItems[i].id,
status: 1,
errmsg: arrUIItems[i].errmsg,
projectid: arrUIItems[i].projectid,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusone.push(tmpObj)
}
}
}
if (arrUIItems.length > 0) {
arrUIItems = [];
}
//没有处理的外箱信息
if (isstatuszero.length > 0) {
for (var i = 0; i < isstatuszero.length; i++) {
arrUIItems.push(isstatuszero[i])
}
}
//处理后错误的外箱信息
if (isstatusnegativeone.length > 0) {
for (var i = 0; i < isstatusnegativeone.length; i++) {
arrUIItems.push(isstatusnegativeone[i])
}
}
//处理的成功的外箱信息
if (isstatusone.length > 0) {
for (var i = 0; i < isstatusone.length; i++) {
arrUIItems.push(isstatusone[i])
}
}
that.data.arrUIItems = arrUIItems
//处理顺序问题结束
that.setData({
OutBoxCodeList: that.data.arrUIItems
})
console.log('用户点击确认')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
})
},
// 外箱码信息查询
ColorBox_BarCode: function (e) {
var that = this;
var xx = this.data.OutBoxCodeList.find(ee => {
return ee.id == e.currentTarget.id
})
console.log(xx)
if (that.data.show == e.currentTarget.id) {
that.setData({
show: 0,
ColorBox_BarCodeList: xx.bclist
})
console.log(that.data.show)
} else {
that.setData({
show: e.currentTarget.id,
ColorBox_BarCodeList: xx.bclist
})
console.log(that.data.ColorBox_BarCodeList)
}
},
//更新数据
CheckGxing: function () {
var that = this;
GetdingdanbyIDs({
ShippingCode: scodes,
sqlid: sqlids
}).then(res => {
if (res) {
if (typeof (gDicListRecs[scodes]) == 'undefined')
gDicListRecs[scodes] = [];
garrUi = gDicListRecs[scodes];
var currentOperateRec = null;
var arrUIItems = that.data.arrUIItems;
var tmpObj = null;
//状态是-1的数组
var isstatusnegativeone = []
//状态是0的数组
var isstatuszero = []
//状态是1的数组
var isstatusone = []
for (var i = 0; i < res.length; i++) {
currentOperateRec = res[i];
var findPos = -1;
for (var j = 0; j < arrUIItems.length; j++) {
//找到跟当前ui 记录匹配的数据表里面的记录的下标。
if (arrUIItems[j].id == res[i].OutBoxCode) {
tmpObj = arrUIItems[j];
findPos = i;
break;
}
}
if (findPos >= 0) //当前ui记录在数据表里面有。那么以数据表的信息为准更新ui记录
{
tmpObj.id = currentOperateRec.OutBoxCode;
tmpObj.status = 1; //要判断老的状态,老决定新的怎么更新。因为返回数据肯定是正确的,所以始终直接更新
tmpObj.errmsg = "";
tmpObj.ProjectName = currentOperateRec.ProjectName;
tmpObj.operator = currentOperateRec.Operator;
tmpObj.operatetime = currentOperateRec.ShippingDateTime;
tmpObj.bclist = currentOperateRec.CCodeBCodeList;
tmpObj.ismergedformdatabase = true;
} else // 当前ui记录没有在数据表里面找到
{
tmpObj = {
id: currentOperateRec.OutBoxCode,
status: 1, //要判断老的状态,老决定新的怎么更新。因为返回数据肯定是正确的,所以始终直接更新
errmsg: "",
ProjectName: currentOperateRec.ProjectName,
operator: currentOperateRec.Operator,
operatetime: currentOperateRec.ShippingDateTime,
bclist: currentOperateRec.CCodeBCodeList,
ismergedformdatabase: true
}
that.data.arrUIItems.push(tmpObj);
}
}
var tmpLen = arrUIItems.length;
for (var i = tmpLen - 1; i >= 0; i--) {
if (arrUIItems[i].status == 1 && arrUIItems[i].ismergedformdatabase == false) {
that.data.arrUIItems.splice(i, 1);
}
}
for (var i = 0; i < arrUIItems.length; i++) {
arrUIItems[i].ismergedformdatabase = false;
}
//处理顺序问题开始
if (arrUIItems.length > 0) {
for (var i = 0; i < arrUIItems.length; i++) {
if (arrUIItems[i].status == -1) {
tmpObj = {
id: arrUIItems[i].id,
status: -1,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusnegativeone.push(tmpObj);
} else if (arrUIItems[i].status == 0) {
tmpObj = {
id: arrUIItems[i].id,
status: 0,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatuszero.push(tmpObj)
} else {
tmpObj = {
id: arrUIItems[i].id,
status: 1,
errmsg: arrUIItems[i].errmsg,
ProjectName: arrUIItems[i].ProjectName,
operator: arrUIItems[i].operator,
operatetime: arrUIItems[i].operatetime,
bclist: arrUIItems[i].bclist,
ismergedformdatabase: false
}
isstatusone.push(tmpObj)
}
}
}
if (arrUIItems.length > 0) {
arrUIItems = [];
}
//没有处理的外箱信息
if (isstatuszero.length > 0) {
for (var i = 0; i < isstatuszero.length; i++) {
arrUIItems.push(isstatuszero[i])
}
}
//处理的成功的外箱信息
if (isstatusone.length > 0) {
for (var i = 0; i < isstatusone.length; i++) {
arrUIItems.push(isstatusone[i])
}
}
that.data.arrUIItems = arrUIItems
//处理顺序问题结束
that.setData({
OutBoxCodeList: that.data.arrUIItems,
arrScannedCodes: []
});
garrUi = [];
gDicListRecs = {}
QrderInformation({
ShippingCode: scodes,
sqlid: sqlids
}).then(res => {
console.log(res)
if (res) {
if (res.Data.shippingByProject.QTY == res.Data.shippingByProject.bandingnum) {
that.setData({
isok: false,
shows: false,
listers: res.Data.shippingByProject
})
} else {
that.setData({
isok: true,
shows: false,
listers: res.Data.shippingByProject
})
}
if (res.Data.shippingByProject.Status == 3) {
that.setData({
shows: true,
listers: res.Data.shippingByProject
})
}
}
}, err => {
wx.showModal({
title: '提示',
content: '网络繁忙' + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
wx.showModal({
title: '提示',
content: '错误信息' + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
console.log(res)
} else {
var tmpArrRef = that.data.arrUIItems;
for (var i = 0; i < tmpArrRef.length; i++) {
if (tmpArrRef[i].id === res.OutBoxCode) {
tmpArrRef[i].status = -1;
tmpArrRef[i].errmsg = res.Message;
}
}
that.setData({
OutBoxCodeList: that.data.arrUIItems,
arrScannedCodes: []
});
}
}, err => {
wx.showModal({
title: '提示',
content: '网络繁忙' + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
wx.showModal({
title: '提示',
content: '异常' + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
},
//修改
Edit: function (e) {
var that = this
console.log(scodes)
console.log(e)
that.setData({
show: e.currentTarget.id
});
var index = -1;
var list = that.data.arrUIItems
for (var i = 0; i < list.length; i++) {
if (list[i].id == e.currentTarget.id) {
index = i;
break;
}
}
var inMsg = "您确认解绑您选择的";
if (list[index].status != 1) {
inMsg = "您确认删除您选择的";
}
wx.showModal({
title: '解绑',
content: inMsg + e.currentTarget.id,
success(res) {
if (res.confirm) {
console.log(e)
if (list[index].status == -1) {
that.data.arrUIItems.splice(index, 1);
that.setData({
OutBoxCodeList: that.data.arrUIItems
})
return;
}
if (list[index].status == 0) {
return;
}
if (list[index].status == 1) {
EditEdit({
ShippingCode: scodes,
OutBoxCodeList: list[index].id,
sqlid: sqlids
}).then(res => {
if (res) {
var tmpArrRef = that.data.arrUIItems;
var index = 0;
for (var i = 0; i < tmpArrRef.length; i++) {
if (tmpArrRef[i].id == res.OutBoxCode) {
index = i;
break;
}
}
that.data.arrUIItems.splice(index, 1);
that.setData({
OutBoxCodeList: that.data.arrUIItems,
arrScannedCodes: []
});
QrderInformation({
ShippingCode: scodes,
sqlid: sqlids
}).then(res => {
console.log(res)
if (res) {
if (res.Data.shippingByProject.QTY == res.Data.shippingByProject.bandingnum) {
that.setData({
isok: false,
listers: res.Data.shippingByProject
})
} else {
that.setData({
isok: true,
listers: res.Data.shippingByProject
})
}
} else {
wx.showModal({
title: '提示',
content: "返回数据为空值",
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
}, err => {
wx.showModal({
title: '提示',
content: "网络繁忙" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
console.log(err)
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
console.log(res)
} else {
that.data.arrScannedCodes = [];
}
}, err => {
wx.showModal({
title: '提示',
content: "网络繁忙" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
}
} else if (res.cancel) {
that.setData({
show: 0
});
}
}
})
},
//结单
CheckOut: function () {
var that = this
wx.showModal({
title: '结单',
content: '您确认结单您选择的' + scodes,
success(res) {
if (res.confirm) {
var ischulizhuang = true;
var yiemianglist = that.data.arrUIItems;
for (var i = 0; i < yiemianglist.length; i++) {
if (yiemianglist[i].status != 1) {
ischulizhuang = false;
break;
}
}
if (ischulizhuang) {
CheckOut({
ShippingCode: scodes, //
sqlid: sqlids
}).then(res => {
if (res.Status == 200) {
wx.showModal({
title: '提示',
content: '结单成功',
success(res) {
if (res.confirm) {
that.setData({
shows:true
})
console.log('用户点击确定')
} else if (res.cancel) {
that.setData({
shows:true
})
console.log('用户点击取消')
}
}
})
} else {
wx.showModal({
title: '提示',
content: "结单失败" + res.Message,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
}, err => {
wx.showModal({
title: '提示',
content: "结单失败" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}).catch(
err => {
wx.showModal({
title: '提示',
content: "异常" + err,
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
);
} else {
wx.showModal({
title: '提示',
content: '页面数据有错误,请点击更新按钮后结单',
success(res) {
if (res.confirm) {
console.log('用户点击确定')
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
}
} else if (res.cancel) {
console.log('用户点击取消')
}
}
})
},
onHide: function () {},
//长按复制
copyText: function (e) {
console.log(e)
var that = this
//const text = e.currentTarget.id;
var strID = e.currentTarget.id;
var arrSplit = strID.split("_");
const text = arrSplit[1];
//开始蓝底白字
that.setData({
isCopyingTextDomID: strID
});
wx.setClipboardData({
data: text,
success: function () {
wx.showToast({
title: '复制成功',
});
//已经copy成功但是依然显示蓝底白字状态1秒钟然后提示用户拷贝成功取消蓝底白字状态。
setTimeout(function () {
that.setData({
isCopyingTextDomID: ''
});
}, 3000);
},
fail: function () {
wx.showToast({
title: '复制失败',
icon: 'none',
});
},
});
},
})