| | |
| | | <form id="form0" class="layui-form" action=""> |
| | | <div class="layui-card-header"> |
| | | <div class="layui-btn-group"> |
| | | <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button> |
| | | <!--<button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Aduit">审核</button>--> |
| | | <button type="button" id="add-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button> |
| | | <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Aduit">审核</button> |
| | | <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Print">打印</button> |
| | | <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button> |
| | | </div> |
| | |
| | | <input class="layui-input" name="HInnerBillNo" id="HInnerBillNo" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-col-xs3"> |
| | | <label class="layui-form-label"> 物流单号:</label> |
| | | <div class="layui-input-inline"> |
| | | <input class="layui-input" name="HDeliveryNo" id="HDeliveryNo" autocomplete="off"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | |
| | | </div> |
| | | |
| | | </div> |
| | | <div class="layui-tab-item"> |
| | | <div class="layui-form-item"> |
| | |
| | | , { field: 'HUnitNumber', title: '计量单位代码', width: 100, hide: true } |
| | | , { field: 'HUnitID', title: '计量单位ID', width: 100, hide: true } |
| | | , { field: 'FPrintCount', title: '打印条码数量', width: 120 } |
| | | , { field: 'HQty', title: '送货数量', width: 100, edit: 'text' , event: "inputHQty"} |
| | | , { field: 'HRQty', title: '未入库数量', width: 100 } |
| | | , { field: 'HQty', title: '送货数量', width: 100, edit: 'text', event: "inputHQty" } |
| | | , { field: 'HRQty', title: '可发货数量', width: 100 } |
| | | , { field: 'HSQty', title: '源单数量', width: 100 } |
| | | , { field: 'HBatchNo', title: '批次', width: 120} |
| | | , { field: 'HBatchNo', title: '批次', width: 120, edit: 'text', } |
| | | , { field: 'HKFDate', title: '生产日期', align: 'center', width: 150, data_field: 'HKFDate', event: "chooseHKFDate" } |
| | | , { field: 'HKFPeriod', title: '保质期', width: 100 } |
| | | , { field: 'HDate', title: '预计到货日期', align: 'center', width: 150, data_field: 'HDate', event: "chooseHDate", hide: true } |
| | | , { field: 'HPrice', title: '单价', width: 100, hide: true } |
| | | , { field: 'HMoney', title: '金额', width: 100, hide: true } |
| | | , { field: 'HRemark', title: '备注', width: 200, edit: true } |
| | | //, { field: 'HRemark', title: '备注', width: 100 } |
| | | , { field: 'HPOOrderInterID', title: '采购订单主内码', width: 150, hide: true } |
| | | , { field: 'HPOOrderEntryID', title: '采购订单子内码', width: 150, hide: true } |
| | |
| | | , { field: 'HBillType', title: '单据类型', width: 100, hide: true } |
| | | , { field: 'HSourceBillType', title: '源单类型', width: 100, hide: true } |
| | | , { field: 'HSourceBillNo', title: '源单单号', width: 200 } |
| | | , { field: 'HExpressNumberSub', title: '物流单号', width: 200, edit: true }//瑞琪 |
| | | , { field: 'HExpressSupplierSub', title: '物流公司', width: 200, edit: true }//瑞琪 |
| | | , { field: 'HPlanArrivalDate', title: '到货日期', width: 200, data_field: 'HPlanArrivalDate', event: "PlanArrivalDate" }//瑞琪 |
| | | , { field: 'HBoxNumber', title: '箱号', width: 200, edit: true }//瑞琪 |
| | | , { field: 'HSourceInterID', title: '源单主内码', width: 150, hide: true } |
| | | , { field: 'HSourceEntryID', title: '源单子内码', width: 150, hide: true } |
| | | ]] |
| | |
| | | //dataindex = dataindex + x; |
| | | data1 = { |
| | | "sorderid": oldData.length + 1 |
| | | , "HMTONO": data[i].HMTONO |
| | | , "HMaterID": data[i].HMaterID |
| | | , "HMaterNumber": data[i].HMaterNumber |
| | | , "HOldMaterNumber": data[i].HOldMaterNumber |
| | | , "HMaterShortNumber": data[i].HMaterShortNumber |
| | | , "HMaterName": data[i].HMaterName |
| | | , "HMaterModel": data[i].HMaterModel |
| | | , "HUnitName": data[i].HUnitName |
| | | , "HUnitNumber": data[i].HUnitNumber |
| | | , "HUnitID": data[i].HUnitID |
| | | , "FPrintCount": data[i].FPrintCount |
| | | , "HQty": data[i].HQty |
| | | , "HRQty": data[i].HRQty |
| | | , "HSQty": data[i].HSQty |
| | | , "HBatchNo": data[i].HBatchNo |
| | | , "HKFDate": data[i].HKFDate |
| | | , "HKFPeriod": data[i].HKFPeriod |
| | | , "HDate": data[i].HDate |
| | | , "HPrice": data[i].HPrice |
| | | , "HMoney": data[i].HMoney |
| | | , "HRemark": data[i].HRemark |
| | | , "HPOOrderInterID": data[i].HPOOrderInterID |
| | | , "HPOOrderEntryID": data[i].HPOOrderEntryID |
| | | , "HPOOrderBillNo": data[i].HPOOrderBillNo |
| | | , "HWWOrderInterID": data[i].HWWOrderInterID |
| | | , "HWWOrderEntryID": data[i].HWWOrderEntryID |
| | | , "HWWOrderBillNo": data[i].HWWOrderBillNo |
| | | , "HWWOrderDetaiLID": data[i].HWWOrderDetaiLID |
| | | , "HBillType": data[i].HBillType |
| | | , "HSourceBillType": data[i].HSourceBillType |
| | | , "HSourceBillNo": data[i].HSourceBillNo |
| | | //, "HExpressNumberSub": data[i].HExpressNumberSub |
| | | //, "HExpressSupplierSub": data[i].HExpressSupplierSub |
| | | , "HSourceInterID": data[i].HSourceInterID |
| | | , "HSourceEntryID": data[i].HSourceEntryID |
| | | , "HMTONO": data[i].HMTONO |
| | | , "HDate": data[i].HDate |
| | | , "FSHDD": data[i].FSHDD |
| | | , "F_xbkf_Combo": data[i].F_xbkf_Combo |
| | | , "HPlanArrivalDate": data[i].HPlanArrivalDate |
| | | } |
| | | //oldData.push(data1); |
| | | oldData.splice(dataindex, 0, data1); |
| | |
| | | }); |
| | | |
| | | } |
| | | else if (obj.event === 'PlanArrivalDate') { |
| | | var field = $(this).data('field'); |
| | | laydate.render({ |
| | | elem: this.firstChild |
| | | , show: true //直接显示 |
| | | , closeStop: this |
| | | , done: function (value, date) { |
| | | data[field] = value; |
| | | obj.update(data); |
| | | |
| | | } |
| | | }); |
| | | |
| | | } |
| | | else if (obj.event == 'inputHQty') { |
| | | $(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | var $input = $(this), val = $input.val(); |
| | | if (!val) val = "0"; |
| | | $input.val(val.replace(/[^\d]/g, '')); |
| | | $input.val(val.replace(/[^\d*\.?\d*]/g, '')); |
| | | }); |
| | | } |
| | | |
| | |
| | | HQty = parseFloat(obj.data.HQty); |
| | | } |
| | | if (parseFloat(obj.value) > obj.data.HRQty) { |
| | | layer.msg("错误:" + "下推送货单,送货数量不能超过未入库数量!", { icon: 5 }); |
| | | layer.msg("错误:" + "下推送货单,送货数量不能超过可发货数量!", { icon: 5 }); |
| | | } |
| | | else { |
| | | var bresult = true; |
| | |
| | | }); |
| | | } |
| | | else { |
| | | layer.msg("错误:" + "下推送货单,合计送货数量不能超过未入库数量!", { icon: 5 }); |
| | | layer.msg("错误:" + "下推送货单,合计送货数量不能超过可发货数量!", { icon: 5 }); |
| | | } |
| | | } |
| | | } |
| | |
| | | async: true, |
| | | data: { sMsg: linterid, sMsg2: lentryid, sMsg3: lSourceBillType }, |
| | | success: function (result) { |
| | | ajaxReturnData = JSON.parse(JSON.stringify(result)).data; |
| | | table.reload('mainTable', { |
| | | data: ajaxReturnData |
| | | , height: 'full-10' |
| | | , loading: false |
| | | , done: function (index, res) { |
| | | layer.closeAll("loading"); |
| | | } |
| | | }); |
| | | if (result.count == 10000) { |
| | | ajaxReturnData = JSON.parse(JSON.stringify(result)).data; |
| | | table.reload('mainTable', { |
| | | data: ajaxReturnData |
| | | , height: 'full-10' |
| | | , loading: false |
| | | , done: function (index, res) { |
| | | layer.closeAll("loading"); |
| | | } |
| | | }); |
| | | } else { |
| | | layer.closeAll("loading"); |
| | | layer.msg(result.Message, { icon: 2, time: 4000 }); |
| | | } |
| | | |
| | | }, |
| | | error: function (result) { |
| | | console.log(result); |
| | | layer.closeAll("loading"); |
| | | //layer.msg('获取委外订单出现异常', { icon: 2, time: 2000 }); |
| | | } |
| | | }); |
| | |
| | | //debugger; |
| | | var sMainStr = JSON.stringify(data.field); |
| | | var sSubStr = JSON.stringify(table.cache['mainTable']); |
| | | var sMainSub = sMainStr + ';' + sSubStr; |
| | | var sMainSub = sMainStr + ';' + sSubStr; |
| | | |
| | | if (!AllowLoadData(sSubStr))//数据验证 |
| | | { |
| | | return false; |
| | |
| | | success: function (data) { |
| | | if (data.count == 1) { // 说明验证成功了, |
| | | layer.msg(data.Message, { icon: 1 }); |
| | | $('#add-btn').addClass("layui-btn-disabled").attr("disabled", true); |
| | | } |
| | | else { |
| | | f_alert(data.Message); |
| | |
| | | layer.msg("明细记录第" + (i + 1) + "行,送货数量为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | return Result = false; |
| | | } |
| | | if (sSubStr[i].FPrintCount == 0) { |
| | | layer.msg("明细记录第" + (i + 1) + "行,没有进行条码打印,不能生成送货单!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | ////瑞琪没有这项控制 |
| | | //if (sSubStr[i].FPrintCount == 0) { |
| | | // layer.msg("明细记录第" + (i + 1) + "行,没有进行条码打印,不能生成送货单!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | // return Result = false; |
| | | //} |
| | | ////送货数量 + (源单数量-可发货数量 = 已生成送货单数量) > 打印条码数量 时限制 |
| | | //if (parseFloat(sSubStr[i].HQty) > parseFloat(sSubStr[i].FPrintCount)) { |
| | | // layer.msg("明细记录第" + (i + 1) + "行,送货单数量不能超过已生成条码数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | // return Result = false; |
| | | //} |
| | | //送货数量 |
| | | if (parseFloat(sSubStr[i].HQty) > parseFloat(sSubStr[i].HRQty)) { |
| | | layer.msg("明细记录第" + (i + 1) + "行,送货单数量不能超过可发货数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | return Result = false; |
| | | } |
| | | //送货数量 + (源单数量-未入库数量 = 已生成送货单数量) > 打印条码数量 时限制 |
| | | if (parseFloat(sSubStr[i].HQty) + parseFloat(sSubStr[i].HSQty) - parseFloat(sSubStr[i].HRQty) > parseFloat(sSubStr[i].FPrintCount)) { |
| | | layer.msg("明细记录第" + (i + 1) + "行,送货单数量不能超过已生成条码数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | return Result = false; |
| | | } |
| | | //////送货数量 |
| | | //if (parseFloat(sSubStr[i].HQty) > parseFloat(sSubStr[i].FPrintCount)) { |
| | | // layer.msg("明细记录第" + (i + 1) + "行,送货单数量不能超过打印条码数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | // return Result = false; |
| | | //} |
| | | ////送货数量 + (源单数量-可发货数量 = 已生成送货单数量) > 打印条码数量 时限制 |
| | | //if (parseFloat(sSubStr[i].HQty) + parseFloat(sSubStr[i].HSQty) - parseFloat(sSubStr[i].HRQty) > parseFloat(sSubStr[i].FPrintCount)) { |
| | | // layer.msg("明细记录第" + (i + 1) + "行,送货单数量不能超过已生成条码数量!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | // return Result = false; |
| | | //} |
| | | //if (sSubStr[i].HBatchNo == "") { |
| | | // layer.msg("明细记录第" + (i + 1) + "行,批次为空!", { icon: 5, btn: ['确认'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "温馨提示" }); |
| | | // return Result = false; |
| | | //} |
| | | } |
| | | } |
| | | else { |