打印模板点击行选择;条码编辑模块添加列合计,保存时特殊字符转换;添康合并生成条码;送货单列表跳转查看条码明细;送货单添加审核、反审核功能;
| | |
| | | //public const string SqlConnStr = "Data Source=192.168.80.91;Initial Catalog=HX_LMESsys;Persist Security Info=True;User ID=HX_USER;Password=lc@841022;"; |
| | | // |
| | | //夏宝 |
| | | //public const string SqlConnStr = "Data Source=192.168.1.239;Initial Catalog=HX_LMESsys;Persist Security Info=True;User ID=HX_USER;Password=lc@841022;"; |
| | | public const string SqlConnStr = "Data Source=192.168.1.223;Initial Catalog=HX_LMESsys;Persist Security Info=True;User ID=HX_USER;Password=lc@841022;"; |
| | | //安瑞 |
| | | //public const string SqlConnStr = "Data Source=.;Initial Catalog=HX_LimsSys;Persist Security Info=True;User ID=HX_USER;Password=lc@841022;"; |
| | | //添康科技 |
| | | public const string SqlConnStr = "Data Source=192.168.1.8;Initial Catalog=HX_LMESsys;Persist Security Info=True;User ID=HX_USER;Password=lc@841022;"; |
| | | //public const string SqlConnStr = "Data Source=192.168.1.8;Initial Catalog=HX_LMESsys;Persist Security Info=True;User ID=HX_USER;Password=lc@841022;"; |
| | | |
| | | //public string sServer; |
| | | //public string sDataBase; |
| | |
| | | <div class="layui-tab-content"> |
| | | <div class="layui-tab-item layui-show"> |
| | | |
| | | <table class="layui-hide" id="mainTable"></table> |
| | | <table class="layui-hide" id="mainTable" lay-filter="mainTable"></table> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | , cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增 |
| | | , cols: [[ |
| | | { type: 'radio' } |
| | | , { field: 'HItemID', width: 150, title: 'ID', hide: true } |
| | | , { field: 'HNumber', width: 150, title: '模块代码' } |
| | | , { field: 'HName', width: 150, title: '模块名称', hide: true } |
| | | , { field: '模板名称', width: 150, title: '模板名称' } |
| | | , { field: 'HItemID', title: 'ID', hide: true } |
| | | , { field: 'HNumber', title: '模块代码' } |
| | | , { field: 'HName', title: '模块名称', hide: true } |
| | | , { field: '模板名称', title: '模板名称' } |
| | | ]] |
| | | }); |
| | | |
| | | |
| | | table.on('row(mainTable)', function (obj) {////注:test是table原始容器的属性 lay-filter="对应的值" |
| | | obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click');//选中行样式 |
| | | obj.tr.find('input[lay-type="layTableRadio"]').prop("checked", true); |
| | | form.render('radio'); |
| | | //选中行改变颜色 |
| | | $(".layui-table-body tr ").attr({ "style": "background:" }); //其他tr恢复原样 |
| | | obj.tr.addClass('layui-table-click').siblings().removeClass('layui-table-click'); //选中行样式 |
| | | obj.tr.find('i[class="layui-anim layui-icon"]').trigger("click"); //选中radio样式 |
| | | $(obj.tr.selector).attr({ "style": "background:#ceedfa;color:black" }); //改变当前tr背景颜色和字体颜色 |
| | | }); |
| | | |
| | | |
| | |
| | | , toolbar: '#toolbarDemo' |
| | | , limit: 500 |
| | | , height: 500 |
| | | , totalRow: true |
| | | , loading: false |
| | | , cols: [[ |
| | | { type: 'checkbox', fixed: 'left' } |
| | | { type: 'checkbox', fixed: 'left', totalRowText: '合计' } |
| | | , { field: 'HMaterID', title: '物料ID', width: 100, hide: true } |
| | | , { field: 'HMaterNumber', title: '物料编码', width: 120 } |
| | | , { field: 'HOldMaterNumber', title: '旧物料编码', width: 120, hide: true } |
| | |
| | | , { field: 'HDDQty', title: '订单数量', width: 100 } |
| | | , { field: 'HMrbQty', title: '退料数量', width: 100, hide: true } |
| | | , { field: 'HBarcodeCount', title: '已生成条码数量', width: 135 } |
| | | , { field: 'HNotBarcodeCount', title: '可生成条码数量', width: 135 } |
| | | , { field: 'HQty', title: '本次生成条码数量', width: 135, edit: 'text', event: "inputHQty" } |
| | | , { field: 'HMinQty', title: '内箱包装数', width: 100, edit: 'text', event: "inputHMinQty" } |
| | | , { field: 'HBQty', title: '内箱数', width: 100 } |
| | | , { field: 'HWXQty', title: '外箱包装数', width: 100, edit: 'text', event: "inputHWXQty" } |
| | | , { field: 'HWBQty', title: '外箱数', width: 100 } |
| | | , { field: 'HNotBarcodeCount', title: '可生成条码数量', width: 135, totalRow: true} |
| | | , { field: 'HQty', title: '本次生成条码数量', width: 135, edit: 'text', event: "inputHQty", totalRow: true} |
| | | , { field: 'HMinQty', title: '内箱包装数', width: 100, edit: 'text', event: "inputHMinQty", totalRow: true} |
| | | , { field: 'HBQty', title: '内箱数', width: 100, totalRow: true} |
| | | , { field: 'HWXQty', title: '外箱包装数', width: 100, edit: 'text', event: "inputHWXQty", totalRow: true} |
| | | , { field: 'HWBQty', title: '外箱数', width: 100, totalRow: true} |
| | | , { field: 'HPrice', title: '单价', width: 100, hide: true } |
| | | , { field: 'HMoney', title: '金额', width: 100, hide: true } |
| | | , { field: 'HMTONO', title: '计划跟踪单号', width: 100, hide: true } |
| | |
| | | var newArray = []; |
| | | var index = -1; |
| | | //debugger; |
| | | |
| | | for (var i = 0; i < table.cache["mainTable"].length; i++) { |
| | | if (table.cache["mainTable"][i].HMaterName.indexOf("\"") != -1 || table.cache["mainTable"][i].HMaterName.indexOf(";") != -1) { |
| | | table.cache["mainTable"][i].HMaterName = table.cache["mainTable"][i].HMaterName.replace("\"", "”").replace(";", ";") |
| | | } |
| | | if (table.cache["mainTable"][i].HMaterModel.indexOf("\"") != -1 || table.cache["mainTable"][i].HMaterModel.indexOf(";") != -1) { |
| | | table.cache["mainTable"][i].HMaterModel = table.cache["mainTable"][i].HMaterModel.replace("\"", "”").replace(";", ";") |
| | | } |
| | | } |
| | | |
| | | var sMainStr = JSON.stringify(data.field); |
| | | var sSubStr = JSON.stringify(table.cache['mainTable']); |
| | | var sMainSub = sMainStr + ';' + sSubStr; |
| | |
| | | sessionStorage["linterid"] = rows.toString(); |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['80%', '80%'] |
| | | , area: ['40%', '80%'] |
| | | , title: '打印模版选择' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | |
| | | } |
| | | else |
| | | { |
| | | //合并数量生成条码 |
| | | layer.load(3) |
| | | $.ajax({ |
| | | type: "GET", |
| | |
| | | , "HMaterShortNumber": "", "HSubjoin": "", "HMaterName": data[i].HMaterName |
| | | , "HMaterModel": data[i].HMaterModel, "HUnitName": data[i].HUnitName, "HUnitNumber": data[i].HUnitNumber |
| | | , "HUnitID": data[i].HUnitID, "HDDQty": data[i].HDDQty, "HMrbQty": 0, "HBarcodeCount": data[i].HBarcodeCount |
| | | , "HNotBarcodeCount": data[i].HNotBarcodeCount, "HQty": data[i].HQty, "HMinQty": data[i].HMinQty, "HBQty": data[i].HBQty |
| | | , "HWXQty": data[i].HWXQty, "HWBQty": data[i].HWBQty, "HPrice": data[i].HPrice, "HMoney": data[i].HMoney, "HMTONO": "" |
| | | , "HNotBarcodeCount": data[i].HNotBarcodeCount, "HQty": data[i].HQty, "HMinQty": data[i].HQty, "HBQty": data[i].HBQty |
| | | , "HWXQty": data[i].HQty, "HWBQty": data[i].HWBQty, "HPrice": data[i].HPrice, "HMoney": data[i].HMoney, "HMTONO": "" |
| | | , "HBatchNo": data[i].HBatchNo, "HBatchManager": data[i].HBatchManager, "HISKFPERIOD": data[i].HISKFPERIOD |
| | | , "HEXPUNIT": data[i].HEXPUNIT, "HKFDate": data[i].HKFDate, "HKFPeriod": data[i].HKFPeriod, "HKFDQDate": data[i].HKFDQDate |
| | | , "HSupMaterNumber": data[i].HSupMaterNumber, "HSupBatchNo": data[i].HSupBatchNo, "HPOOrderInterID": data[i].HPOOrderInterID |
| | |
| | | }); |
| | | } |
| | | 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(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | //}); |
| | | |
| | | $(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | var $input = $(this), val = $input.val(); |
| | | if (!val) val = "0"; |
| | | $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | $input.val(val.replace(/[^\d*\.?\d*]/g, '')); |
| | | }); |
| | | } |
| | | else if (obj.event == 'inputHMinQty') { |
| | | //$(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | // var $input = $(this), val = $input.val(); |
| | | // if (!val) val = "0"; |
| | | // $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | //}); |
| | | |
| | | $(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | var $input = $(this), val = $input.val(); |
| | | if (!val) val = "0"; |
| | | $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | $input.val(val.replace(/[^\d*\.?\d*]/g, '')); |
| | | }); |
| | | } |
| | | else if (obj.event == 'inputHWXQty') { |
| | | //$(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | // var $input = $(this), val = $input.val(); |
| | | // if (!val) val = "0"; |
| | | // $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | //}); |
| | | |
| | | $(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | var $input = $(this), val = $input.val(); |
| | | if (!val) val = "0"; |
| | | $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | $input.val(val.replace(/[^\d*\.?\d*]/g, '')); |
| | | }); |
| | | } |
| | | }); |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">状态</label> |
| | | <div class="layui-input-block"> |
| | | <select name="HStatus" id="HStatus" lay-filter=""> |
| | | <option value="" selected="">全部</option> |
| | | <option value="未打印">未打印</option> |
| | | <option value="已打印">已打印</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">条码编号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HBarCode" id="HBarCode"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">源单单号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HSourceBillNo" id="HSourceBillNo"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">物料代码</label> |
| | | <label class="layui-form-label">物料名称</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HNumber" id="HNumber"> |
| | | <input type="text" class="layui-input" name="HName" id="HName"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">规格型号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HModel" id="HModel"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">供应商</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HSupName" id="HSupName"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="f_Query"> |
| | | <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i> |
| | |
| | | </div> |
| | | <div class="layui-colla-content" style="padding-left:82px"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">物料名称</label> |
| | | <label class="layui-form-label">状态</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HName" id="HName"> |
| | | <select name="HStatus" id="HStatus" lay-filter=""> |
| | | <option value="" selected="">全部</option> |
| | | <option value="未打印">未打印</option> |
| | | <option value="已打印">已打印</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">规格型号</label> |
| | | <label class="layui-form-label">条码编号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HModel" id="HModel"> |
| | | <input type="text" class="layui-input" name="HBarCode" id="HBarCode"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">供应商</label> |
| | | <label class="layui-form-label">物料代码</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HSupName" id="HSupName"> |
| | | <input type="text" class="layui-input" name="HNumber" id="HNumber"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | |
| | | |
| | | var params = getUrlVars(); |
| | | var type = params[params[0]]; |
| | | switch (type) { |
| | | case "UnPrint": |
| | | options[1].selected = true; |
| | | sql += " and 状态 like ^^%未打印%^^"; |
| | | break; |
| | | case "RePrint": |
| | | options[2].selected = true; |
| | | sql += " and 状态 like ^^%已打印%^^"; |
| | | break; |
| | | } |
| | | var HSourceBillNo = params[params[1]]; |
| | | |
| | | layui.config({ |
| | | base: '../../layuiadmin/' //静态资源所在路径 |
| | |
| | | , form = layui.form |
| | | , element = layui.element; |
| | | |
| | | switch (type) { |
| | | case "UnPrint": |
| | | options[1].selected = true; |
| | | sql += " and 状态 like ^^%未打印%^^"; |
| | | break; |
| | | case "RePrint": |
| | | options[2].selected = true; |
| | | sql += " and 状态 like ^^%已打印%^^"; |
| | | break; |
| | | case "check": |
| | | if (HSourceBillNo != undefined) { |
| | | $("#HSourceBillNo").val(HSourceBillNo); |
| | | |
| | | sql += " and 源单单号 like ^^%" + HSourceBillNo + "%^^"; |
| | | } |
| | | break; |
| | | } |
| | | |
| | | //不需要显示的字段 可扩展 |
| | | var titleData = ["HItemID", "HParentID", "单据号", "日期", "数量", "状态", "单位", "金额"]; |
| | | var titleData = ["HItemID", "HParentID", "单据号", "日期", "状态", "单位", "金额"]; |
| | | var HModName = "SRM_BarCodeBillList"; |
| | | var option = []; |
| | | //常规用法 |
| | |
| | | sessionStorage["linterid"] = rows.toString(); |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['80%', '80%'] |
| | | , area: ['40%', '80%'] |
| | | , title: '打印模版选择' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | |
| | | }; |
| | | }); |
| | | |
| | | table.on('sort(mainTable)', function (obj) { //注:sort 是工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值" |
| | | table.reload('mainTable', { |
| | | initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。 layui 2.1.1 新增参数 |
| | | , where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式) |
| | | field: obj.field //排序字段 在接口作为参数字段 field order |
| | | , order: obj.type //排序方式 在接口作为参数字段 field order |
| | | } |
| | | }); |
| | | option.data = layui.table.cache["mainTable"]; |
| | | table.render(option); |
| | | }); |
| | | |
| | | //行监听事件 |
| | | table.on('row(mainTable)', function (obj) { |
| | | var flag = !obj.tr.find(':checkbox:first').prop('checked'); |
| | |
| | | <div class="layui-input-block" style="width:150px;"> |
| | | <input type="text" class="layui-input" name="HBillNoFrom" id="HBillNoFrom"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">开始日期</label> |
| | | <div class="layui-input-block" style="width:120px;"> |
| | | <input type="text" class="layui-input" name="HDate1" id="HDate1"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">结束日期</label> |
| | | <div class="layui-input-block" style="width:120px;"> |
| | | <input type="text" class="layui-input" name="HDate2" id="HDate2"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">单据状态</label> |
| | | <div class="layui-input-block"> |
| | | <select id="HClStatus" name="HClStatus" lay-filter=""> |
| | | <option value="" selected="">全部</option> |
| | | <option value="未审核">未审核</option> |
| | | <option value="已审核">已审核</option> |
| | | <option value="未关闭">未关闭</option> |
| | | <option value="已关闭">已关闭</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">物料编码</label> |
| | | <div class="layui-input-block"> |
| | |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HName" id="HName"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">供应商</label> |
| | | <label class="layui-form-label">规格型号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HSupName" id="HSupName"> |
| | | <input type="text" class="layui-input" name="HModel" id="HModel"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | |
| | | <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i> |
| | | </button> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">供应商</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HSupName" id="HSupName"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-colla-content" style="padding-left:82px"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">单据状态</label> |
| | | <div class="layui-input-block"> |
| | | <select id="HClStatus" name="HClStatus" lay-filter=""> |
| | | <option value="" selected="">全部</option> |
| | | <option value="未审核">未审核</option> |
| | | <option value="已审核">已审核</option> |
| | | <option value="未关闭">未关闭</option> |
| | | <option value="已关闭">已关闭</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">开始日期</label> |
| | | <div class="layui-input-block" style="width:120px;"> |
| | | <input type="text" class="layui-input" name="HDate1" id="HDate1"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">结束日期</label> |
| | | <div class="layui-input-block" style="width:120px;"> |
| | | <input type="text" class="layui-input" name="HDate2" id="HDate2"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">旧物料编码</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HOldMaterNumber" id="HOldMaterNumber"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">规格型号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HModel" id="HModel"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline" style="display:none"> |
| | |
| | | <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-getCheckData"><i class="layui-icon layui-icon-tips"></i>预览</button>--> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-reload"><i class="layui-icon layui-icon-refresh"></i>刷新</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Audit"><i class="layui-icon layui-icon-radio"></i>审核</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-DeAudit"><i class="layui-icon layui-icon-radio"></i>反审核</button> |
| | | <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-confirm"><i class="layui-icon layui-icon-ok-circle"></i>确认</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-back"><i class="layui-icon layui-icon-close-fill"></i>驳回</button>--> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-details"><i class="layui-icon layui-icon-form"></i>详情</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-changebg"><i class="layui-icon layui-icon-form"></i>变更</button> |
| | | <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-details"><i class="layui-icon layui-icon-form"></i>详情</button>--> |
| | | <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-changebg"><i class="layui-icon layui-icon-form"></i>变更</button>--> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-edit"><i class="layui-icon layui-icon-form"></i>编辑</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-print"><i class="layui-icon layui-icon-print"></i>打印送货单</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-print-Convenient"><i class="layui-icon layui-icon-print"></i>一键打印</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-Delete"><i class="layui-icon layui-icon-delete"></i>删除</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-generate"><i class="layui-icon layui-icon-file"></i>生成条码</button> |
| | | <!--<button type="button" class="layui-btn layui-btn-sm" lay-event="btn-generate"><i class="layui-icon layui-icon-file"></i>生成条码</button>--> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-MergeBuildBarcode"><i class="layui-icon layui-icon-file"></i>合并生成条码</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-GetBar"><i class="layui-icon layui-icon-file"></i>条码明细</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-exit"><i class="layui-icon layui-icon-return"></i>退出</button> |
| | | <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-HideColumn"><i class="layui-icon layui-icon-return"></i>隐藏列设置</button> |
| | | </div> |
| | |
| | | , cellMinWidth: 90 |
| | | , limit: 500 |
| | | , limits: [50, 500, 5000, 20000] |
| | | , done: function (res, curr, count) { |
| | | var that = this.elem.next(); |
| | | res.data.forEach(function (item, index) { |
| | | if (item.到货状态 == '已收货') { |
| | | var tr = that.find(".layui-table-box tbody tr[data-index='" + index + "']").css("background-color", "#7EFCB2") |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | table.render(option); |
| | | //刷新表格数据 |
| | |
| | | else { |
| | | layer.msg('请选择数据!'); |
| | | } |
| | | break; |
| | | case 'btn-DeAudit': |
| | | var checkStatus = table.checkStatus('mainTable') |
| | | , data = checkStatus.data; |
| | | if (checkStatus.data.length == 1) { |
| | | var InterID = data[0].hmainid.toString(); |
| | | var HBillNo = data[0].单据号; |
| | | //逻辑审核方法 |
| | | $.ajax({ |
| | | type: "GET", |
| | | url: GetWEBURL() + "/DeAuditPOInStockBill", |
| | | data: { "HInterID": InterID, "HBillNo": HBillNo, "CurUserName": sessionStorage["HUserName"] }, |
| | | success: function (result) { |
| | | if (result.count == 1) { |
| | | layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () { |
| | | // 得到frame索引 |
| | | var index = layer.getFrameIndex(window.name); |
| | | //关闭当前frame |
| | | layer.close(index); |
| | | //修改为功后刷新界面 |
| | | get_Display(sql); |
| | | }); |
| | | |
| | | } else { |
| | | layer.alert(result.Message, { icon: 5 }); |
| | | } |
| | | }, error: function () { |
| | | layer.alert("接口请求失败!", { icon: 5 }); |
| | | } |
| | | }); |
| | | } |
| | | else { |
| | | layer.msg('请选择一行数据!'); |
| | | } |
| | | break; |
| | | //自定义头工具栏右侧图标 - 提示 |
| | | case 'btn-reload': |
| | | _cur_page = $(".layui-laypage-em").next().html(); |
| | |
| | | } |
| | | }) |
| | | break; |
| | | case 'btn-edit': |
| | | var checkStatus = table.checkStatus('mainTable') |
| | | , data = checkStatus.data; |
| | | |
| | | if (data[0].单据状态 == '审核' || data[0].单据状态 == '已审核') { |
| | | layer.msg("送货单已审核,禁止修改!", { icon: 5 }); |
| | | return; |
| | | } |
| | | |
| | | var linterid = data[0].hmainid.toString(); |
| | | //if (AllowLoadData(sSubStr) != false) {//非空验证 |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['100%', '100%'] |
| | | , title: '送货单' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: true //允许全屏最小化 |
| | | , anim: 0 //0-6的动画形式,-1不开启 |
| | | , content: '../../../src/views/SRM/SRM_POInStockBill_Edit.html?linterid=' + linterid + '&lentryid=0' + '&lSourceBillType=1102' + '&type =edit' |
| | | , resize: false |
| | | , cancel: function () { |
| | | //$(".layui-btn").removeClass("layui-btn-disabled"); |
| | | } |
| | | }) |
| | | break; |
| | | case 'btn-Delete': |
| | | var checkStatus = table.checkStatus('mainTable') |
| | | , data = checkStatus.data; |
| | |
| | | layer.msg("请选择一条数据", { icon: 5 }); |
| | | return; |
| | | } |
| | | if (data[0].单据状态 != '已审核') { |
| | | if (data[0].单据状态 != '已审核' && data[0].单据状态 != '审核') { |
| | | layer.msg("请审核送货单后在进行打印( ´◔︎ ‸◔︎`)", { icon: 5 }); |
| | | return; |
| | | } |
| | |
| | | //} |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['80%', '80%'] |
| | | , area: ['40%', '80%'] |
| | | , title: '打印模版选择' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | |
| | | }) |
| | | } |
| | | break; |
| | | case 'btn-MergeBuildBarcode': |
| | | var checkStatus = table.checkStatus('mainTable') |
| | | , data = checkStatus.data; |
| | | |
| | | if (data[0].单据状态 != '已审核') { |
| | | layer.msg("请审核送货单后在进行打印( ´◔︎ ‸◔︎`)", { icon: 5 }); |
| | | return; |
| | | } |
| | | |
| | | if (data[0].未生成条码数量 <= 0) { |
| | | layer.msg("选中行已生成条码!", { icon: 5 }); |
| | | } |
| | | else { |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['100%', '100%'] |
| | | , title: '条码生成' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | | , anim: 0 //0-6的动画形式,-1不开启 |
| | | , content: ['../../views/SRM/SRM_BarCodeBill.html?linterid=' + data[0].hmainid + '&lentryid=' + data[0].hsubid + '&type=0' + '&mergeTags=1', 'yes'] |
| | | , resize: false |
| | | , cancel: function () { |
| | | $(".layui-btn").removeClass("layui-btn-disabled"); |
| | | } |
| | | }) |
| | | } |
| | | break; |
| | | case 'btn-GetBar': |
| | | var checkStatus = table.checkStatus('mainTable') |
| | | , data = checkStatus.data; |
| | | |
| | | if (data.length == 1) { |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['95%', '95%'] |
| | | , title: '条码信息' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | | , anim: 0 //0-6的动画形式,-1不开启 |
| | | , content: ['../../views/SRM/SRM_BarCodeBillList.html?type=check&HBillNo=' + data[0].单据号, 'yes'] |
| | | , resize: false |
| | | , cancel: function () { |
| | | $(".layui-btn").removeClass("layui-btn-disabled"); |
| | | } |
| | | }) |
| | | } else { |
| | | layer.msg("请选择一行送货单查询条码信息!", { icon: 5 }); |
| | | } |
| | | break; |
| | | case 'btn-exit': |
| | | //var index = parent.layer.getFrameIndex(window.name); |
| | | //element.tabDelete('layadmin-layout-tabs', this); |
| | |
| | | }); |
| | | }); |
| | | |
| | | table.on('sort(mainTable)', function (obj) { //注:sort 是工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值" |
| | | table.reload('mainTable', { |
| | | initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。 layui 2.1.1 新增参数 |
| | | , where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式) |
| | | field: obj.field //排序字段 在接口作为参数字段 field order |
| | | , order: obj.type //排序方式 在接口作为参数字段 field order |
| | | } |
| | | }); |
| | | option.data = layui.table.cache["mainTable"]; |
| | | table.render(option); |
| | | }); |
| | | |
| | | //一键打印 |
| | | function convenientPrint() { |
| | | var checkStatus = table.checkStatus('mainTable') |
| | |
| | | <div class="layui-row layui-col-space15"> |
| | | <div class="layui-col-md12"> |
| | | <div class="layui-card"> |
| | | <form id="form0" class="layui-form" action=""> |
| | | <form id="form0" class="layui-form" action="" lay-filter="formData"> |
| | | <div class="layui-card-header"> |
| | | <div class="layui-btn-group"> |
| | | <button type="button" id="add-btn" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button> |
| | |
| | | var linterid = params[params[0]]; |
| | | var lentryid = params[params[1]]; |
| | | var lSourceBillType = params[params[2]]; |
| | | var HType = params[params[3]]; |
| | | // debugger; |
| | | $.ajax({ |
| | | url: GetWEBURL() + "GetNewPOInStockBillNo", |
| | | type: "GET", |
| | | data: { "sMsg": linterid, "sMsg3": lSourceBillType }, |
| | | async: false, |
| | | success: function (d) { |
| | | //console.log(d.data); |
| | | $("#HInterID").val(d.data[0].HInterID); |
| | | $("#HBillNo").val(d.data[0].HBillNo); |
| | | $("#HInnerBillNo").val(d.data[0].HInnerBillNo); |
| | | $("#HDate").val(d.data[0].HDate); |
| | | } |
| | | }); |
| | | $.ajax({ |
| | | url: GetWEBURL() + "GetNewPOInStockShowBillMain", |
| | | type: "GET", |
| | | data: { "sMsg": linterid, "sMsg3": lSourceBillType }, |
| | | success: function (d) { |
| | | //console.log(d.data); |
| | | //$("#HDate").val(d.) |
| | | //$("#HInterID").val(d.data[0].HInterID); |
| | | //$("#HBillNo").val(d.data[0].HBillNo); |
| | | $("#HRemark").val(d.data[0].HRemark); |
| | | //$("#HDate").val(d.data[0].HDateForWeb); |
| | | $("#HMaker").val(sessionStorage["HUserName"]); |
| | | //$("#HMakerDate").val(d.data[0].HMakerDate) |
| | | //$("#HChecker").val(d.data[0].HChecker); |
| | | //$("#HCheckDate").val(d.data[0].HCheckDate); |
| | | $("#HSupID").val(d.data[0].HSupID); |
| | | $("#HSupName").val(d.data[0].HSupName); |
| | | $("#HDeptID").val(d.data[0].HDeptID); |
| | | $("#HDeptName").val(d.data[0].HDepName); |
| | | $("#HEmpID").val(d.data[0].HEmpID); |
| | | $("#HEmpName").val(d.data[0].HEmpName); |
| | | $("#HManagerID").val(d.data[0].HManagerID); |
| | | $("#HManagerName").val(d.data[0].HManagerName); |
| | | $("#HPURCHASEORGID").val(d.data[0].FPURCHASEORGID); |
| | | $("#HPURCHASEORGName").val(d.data[0].HOrgName); |
| | | $("#HReceiveGoodsMan").val(d.data[0].HReceiveGoodsMan); |
| | | $("#HAddress").val(d.data[0].HAddress); |
| | | //$("#HSendGoodsAddr").val(d.data[0].HPROVIDERADDRESS); |
| | | } |
| | | }); |
| | | |
| | | if (HType == "edit") { |
| | | //编辑 |
| | | |
| | | } else { |
| | | //新增 |
| | | $.ajax({ |
| | | url: GetWEBURL() + "GetNewPOInStockBillNo", |
| | | type: "GET", |
| | | data: { "sMsg": linterid, "sMsg3": lSourceBillType }, |
| | | async: false, |
| | | success: function (d) { |
| | | //console.log(d.data); |
| | | $("#HInterID").val(d.data[0].HInterID); |
| | | $("#HBillNo").val(d.data[0].HBillNo); |
| | | $("#HInnerBillNo").val(d.data[0].HInnerBillNo); |
| | | $("#HDate").val(d.data[0].HDate); |
| | | } |
| | | }); |
| | | $.ajax({ |
| | | url: GetWEBURL() + "GetNewPOInStockShowBillMain", |
| | | type: "GET", |
| | | data: { "sMsg": linterid, "sMsg3": lSourceBillType }, |
| | | success: function (d) { |
| | | //console.log(d.data); |
| | | //$("#HDate").val(d.) |
| | | //$("#HInterID").val(d.data[0].HInterID); |
| | | //$("#HBillNo").val(d.data[0].HBillNo); |
| | | $("#HRemark").val(d.data[0].HRemark); |
| | | //$("#HDate").val(d.data[0].HDateForWeb); |
| | | $("#HMaker").val(sessionStorage["HUserName"]); |
| | | //$("#HMakerDate").val(d.data[0].HMakerDate) |
| | | //$("#HChecker").val(d.data[0].HChecker); |
| | | //$("#HCheckDate").val(d.data[0].HCheckDate); |
| | | $("#HSupID").val(d.data[0].HSupID); |
| | | $("#HSupName").val(d.data[0].HSupName); |
| | | $("#HDeptID").val(d.data[0].HDeptID); |
| | | $("#HDeptName").val(d.data[0].HDepName); |
| | | $("#HEmpID").val(d.data[0].HEmpID); |
| | | $("#HEmpName").val(d.data[0].HEmpName); |
| | | $("#HManagerID").val(d.data[0].HManagerID); |
| | | $("#HManagerName").val(d.data[0].HManagerName); |
| | | $("#HPURCHASEORGID").val(d.data[0].FPURCHASEORGID); |
| | | $("#HPURCHASEORGName").val(d.data[0].HOrgName); |
| | | $("#HReceiveGoodsMan").val(d.data[0].HReceiveGoodsMan); |
| | | $("#HAddress").val(d.data[0].HAddress); |
| | | //$("#HSendGoodsAddr").val(d.data[0].HPROVIDERADDRESS); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | |
| | | layui.config({ |
| | | base: '../../layuiadmin/' //静态资源所在路径 |
| | |
| | | laydate.render({ |
| | | elem: '#HDHDate' |
| | | }); |
| | | RoadHBillSub(); |
| | | |
| | | if (HType == "edit") { |
| | | //编辑 |
| | | RoadBillMain_Edit(linterid); |
| | | } else { |
| | | //新增 |
| | | RoadHBillSub(); |
| | | } |
| | | |
| | | layer.load(3) |
| | | |
| | | var HIsAduit = false; |
| | | |
| | | var HModName = "SRM_POInStockBill_Edit"; |
| | | var option = "" |
| | | window.HSubData = "";//全局变量 |
| | | var option = { |
| | | elem: '#mainTable' |
| | | , toolbar: '#toolbarDemo' |
| | | , cols: [[ |
| | | { type: 'checkbox', fixed: 'left' } |
| | | { type: 'checkbox', fixed: 'left', totalRowText: '合计' } |
| | | , { field: 'sorderid', title: '序号', width: 80, hide: true, fixed: true } |
| | | , { field: 'HMTONO', title: '计划跟踪单号', width: 100, fixed: true, edit: 'text', hide: true } |
| | | , { field: 'HMaterID', title: '物料ID', width: 100, hide: true } |
| | |
| | | , { field: 'HUnitNumber', title: '计量单位代码', width: 100, hide: true } |
| | | , { field: 'HUnitID', title: '计量单位ID', width: 100, hide: true } |
| | | , { field: 'FPrintCount', title: '打印条码数量', width: 120, hide: true } |
| | | , { field: 'HQty', title: '送货数量*', width: 100, edit: 'text', event: "inputHQty" } |
| | | , { field: 'HRQty', title: '剩余可发货数量', width: 100 } |
| | | , { field: 'HSQty', title: '源单数量', width: 100 } |
| | | , { field: 'HQty', title: '送货数量*', width: 100, edit: 'text', event: "inputHQty", totalRow: true} |
| | | , { field: 'HRQty', title: '剩余可发货数量', width: 100, totalRow: true } |
| | | , { field: 'HSQty', title: '源单数量', width: 100, totalRow: true } |
| | | , { field: 'HBatchNo', title: '批号', width: 120, edit: 'text' } |
| | | , { field: 'HBatchManager', title: '启用批次管理', width: 120, hide: true } |
| | | , { field: 'HOrderType', title: '订单类型', width: 120, hide: true } |
| | |
| | | // , data: [linterid] |
| | | // , page: true |
| | | , limit: 500 //每页默认显示的数量 |
| | | //, height: 500 |
| | | , totalRow: true |
| | | , height: 'full-1000' |
| | | , done: function () { |
| | | layer.closeAll("loading"); |
| | | } |
| | |
| | | $(obj.tr).find(".layui-table-edit").keyup(function () { |
| | | var $input = $(this), val = $input.val(); |
| | | if (!val) val = "0"; |
| | | $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | }); |
| | | //$input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, ''))); |
| | | $input.val(val.replace(/[^\d*\.?\d*]/g, '')); |
| | | }); |
| | | } |
| | | |
| | | }); |
| | |
| | | layer.msg("错误:" + "下推送货单,合计送货数量不能超过剩余可发货数量!", { icon: 5 }); |
| | | } |
| | | } |
| | | table.reload('mainTable');//刷新表格信息,合计数量 |
| | | } |
| | | |
| | | }); |
| | |
| | | success: function (result) { |
| | | if (result.count == 10000) { |
| | | for (let i = 0; i < result.data.length; i++) { |
| | | result.data[i].HBatchNo = result.data[i].HBatchNo.substring(0, 6); |
| | | if (sessionStorage["Organization"] == "事业一处") { |
| | | result.data[i].HBatchNo = result.data[i].HBatchNo.substring(0, 6); |
| | | } |
| | | } |
| | | ajaxReturnData = JSON.parse(JSON.stringify(result)).data; |
| | | HSubData = ajaxReturnData; |
| | |
| | | }; |
| | | form.on('submit(Saver)', function (data) {//保存 |
| | | //debugger; |
| | | |
| | | for (var i = 0; i < table.cache["mainTable"].length; i++) { |
| | | if (table.cache["mainTable"][i].HMaterName.indexOf("\"") != -1 || table.cache["mainTable"][i].HMaterName.indexOf(";") != -1) { |
| | | table.cache["mainTable"][i].HMaterName = table.cache["mainTable"][i].HMaterName.replace("\"", "”").replace(";", ";") |
| | | } |
| | | if (table.cache["mainTable"][i].HMaterModel.indexOf("\"") != -1 || table.cache["mainTable"][i].HMaterModel.indexOf(";") != -1) { |
| | | table.cache["mainTable"][i].HMaterModel = table.cache["mainTable"][i].HMaterModel.replace("\"", "”").replace(";", ";") |
| | | } |
| | | } |
| | | |
| | | var sMainStr = JSON.stringify(data.field); |
| | | var sSubStr = JSON.stringify(table.cache['mainTable']); |
| | | var sMainSub = sMainStr + ';' + sSubStr; |
| | | var sMainSub = sMainStr + ';' + sSubStr + ';' + HType; |
| | | |
| | | if (!AllowLoadData(sSubStr))//数据验证 |
| | | { |
| | |
| | | if (data.count == 1) { // 说明验证成功了, |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['50%', '50%'] |
| | | , area: ['40%', '80%'] |
| | | , title: '打印模版选择' |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | |
| | | }); |
| | | |
| | | form.on('submit(ChooseSource)', function (data) { |
| | | var HOrderType = HSubData[0].HOrderType == undefined ? HSubData[0].订单类型 : HSubData[0].HOrderType |
| | | |
| | | layer.open({ |
| | | type: 2 |
| | | , area: ['95%', '95%'] |
| | |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | | , anim: 0 //0-6的动画形式,-1不开启 |
| | | , content: ['../../views/SRM/SRM_POOrderBillList.html?Type=AddRow', 'yes'] |
| | | , content: ['../../views/SRM/SRM_POOrderBillList.html?Type=AddRow&HSupName=' + $("#HSupName").val() + '&HOrderType=' + HOrderType, 'yes'] |
| | | , resize: false |
| | | //, cancel: function () { |
| | | // $(".layui-btn").removeClass("layui-btn-disabled"); |
| | |
| | | return Result = true; |
| | | } |
| | | return Result; |
| | | } |
| | | |
| | | //编辑送货单加载表头表体数据 |
| | | function RoadBillMain_Edit(linterid) { |
| | | $.ajax({ |
| | | url: GetWEBURL() + "/Cg_POInStockBill/cx", |
| | | type: "GET", |
| | | data: { "HInterID": linterid }, |
| | | success: function (data) { |
| | | if (data.code == 1) { |
| | | var data = data.data; |
| | | |
| | | ajaxReturnData = JSON.parse(JSON.stringify(data)); |
| | | HSubData = ajaxReturnData; |
| | | |
| | | //主表 |
| | | form.val("formData", { //formTest 即 class="layui-form" 所在元素属性 lay-filter="" 对应的值 |
| | | "HInterID": data[0].hmainid |
| | | , "HBillNo": data[0].单据号 |
| | | , "HDate": Format(new Date(data[0].单据日期), "yyyy-MM-dd") |
| | | , "HSupName": data[0].供应商名称 |
| | | , "HSupID": data[0].HSupID |
| | | , "HDHDate": Format(new Date(data[0].预计到货日期), "yyyy-MM-dd") |
| | | , "HManagerName": data[0].主管名称 |
| | | , "HManagerID": data[0].HManagerID |
| | | , "HEmpName": data[0].业务员名称 |
| | | , "HEmpID": data[0].HEmpID |
| | | , "HDeptName": data[0].部门名称 |
| | | , "HDeptID": data[0].HDeptID |
| | | , "HPURCHASEORGName": data[0].采购组织名称 |
| | | , "HPURCHASEORGID": data[0].HPURCHASEORGID |
| | | , "HDeliveryNo": data[0].物流单号 |
| | | , "HExpressSupplier": data[0].物流公司 |
| | | , "HInnerBillNo": data[0].送货单号 |
| | | , "HReceiveGoodsMan": data[0].收货人 |
| | | , "HAddress": data[0].收获地址 |
| | | , "HReceiveGoodsLink": data[0].收货人联系方式 |
| | | , "HSendGoodsMan": data[0].送货人 |
| | | , "HSendGoodsAddr": data[0].送货地址 |
| | | , "HSendGoodsLink": data[0].送货人联系方式 |
| | | //其他信息 |
| | | //, "HMaker": data[0].制单人 |
| | | //, "HChecker": data[0]. |
| | | //, "HUpDater": data[0]. |
| | | //, "HMakeDate": data[0]. |
| | | //, "HCheckDate": data[0]. |
| | | //, "HUpDateDate": data[0]. |
| | | }); |
| | | //子表 赋值 |
| | | var rowdata = []; |
| | | for (var i = 0; i < data.length; i++) { |
| | | rowdata.push( |
| | | { |
| | | "sorderid": (i + 1),"HMTONO": data[i].计划跟踪单号, "HMaterID": data[i].HMaterID, "HMaterNumber": data[i].物料代码 |
| | | , "HOldMaterNumber": data[i].物料代码, "HMaterShortNumber": data[i].物料代码, "HMaterName": data[i].物料名称 |
| | | , "HMaterModel": data[i].规格型号, "HUnitName": data[i].计量单位名称, "HUnitNumber": data[i].计量单位代码 |
| | | , "HUnitID": data[i].HUnitID, "FPrintCount": data[i].打印条码数量, "HQty": data[i].送货数量 |
| | | , "HRQty": data[i].剩余可发货数量, "HSQty": data[i].源单数量, "HBatchNo": data[i].批号 |
| | | , "HBatchManager": data[i].启用批次管理, "HOrderType": data[i].订单类型, "HKFDate": Format(new Date(data[i].生产日期), "yyyy-MM-dd") |
| | | , "HKFPeriod": data[i].保质期, "HDate": data[i].子预计到货日期, "HPrice": data[i].单价 |
| | | , "HMoney": data[i].金额, "HRemark": data[i].子备注, "HTAXPRICE_T": data[i].含税重量单价吨 |
| | | , "HPOOrderInterID": data[i].HPOOrderInterID, "HPOOrderEntryID": data[i].HPOOrderEntryID |
| | | , "HPOOrderBillNo": data[i].采购订单号, "HWWOrderInterID": data[i].HWWOrderInterID |
| | | , "HWWOrderEntryID": data[i].HWWOrderEntryID, "HWWOrderBillNo": data[i].委外订单号, "HBillType": data[i].单据类型 |
| | | , "HSourceBillType": data[i].HSourceBillType, "HSourceBillNo": data[i].源单单号, "HSupMaterNumber": data[i].供应商料号 |
| | | , "HSupBatchNo": data[i].供应商批次, "HExpressNumberSub": data[i].子物流单号, "HExpressSupplierSub": data[i].子物流公司 |
| | | , "HPlanArrivalDate": data[i].到货日期, "HBoxNumber": data[i].箱号, "HSourceInterID": data[i].HSourceInterID |
| | | , "HSourceEntryID": data[i].HSourceEntryID, "FSHDD": "", "F_xbkf_Combo": "" |
| | | } |
| | | ) |
| | | } |
| | | //刷新表体数据 |
| | | table.reload('mainTable', { |
| | | data: rowdata |
| | | , height: 'full-10' |
| | | , loading: false |
| | | , done: function (index, res) { |
| | | layer.closeAll("loading"); |
| | | } |
| | | }); |
| | | |
| | | //option.data = rowdata; |
| | | //table.render(option); |
| | | } |
| | | else { |
| | | layer.msg(data.Message, { icon: 2, time: 3000 }); |
| | | } |
| | | |
| | | layer.closeAll("loading"); |
| | | }, |
| | | error: function (result) { |
| | | layer.closeAll("loading"); |
| | | layer.msg(data.Message, { icon: 2, time: 3000 }); |
| | | } |
| | | }); |
| | | } |
| | | |
| | | ////隐藏列设置 |
| | |
| | | |
| | | var HSubLen = HSubData.length + 1; |
| | | var a = []; |
| | | var HOrderType = HSubData[0].HOrderType |
| | | var HOrderType = HSubData[0].订单类型 == undefined ? HSubData[0].HOrderType : HSubData[0].订单类型 |
| | | var HSupNum = HSubData[0].HOrderType |
| | | var HError = ""; |
| | | |
| | | //for (let i = 0; i < HSubData.length; i++) { |
| | | // if (obj[i].hmaterid == HSubData[i].HMaterID) { |
| | | // obj[i].HBatchNo = HSubData[i].HBatchNo |
| | | // Batchno = HSubData[i].HBatchNo |
| | | // break; |
| | | // } |
| | | //} |
| | | |
| | | var HData_Sub = table.cache["mainTable"];//将数据绑定到data上 |
| | | |
| | | for (let i = 0; i < obj.length; i++) { |
| | | for (let j = 0; j < HSubData.length; j++) { |
| | | if (obj[i].hmaterid == HSubData[j].HMaterID) { |
| | | obj[i].HBatchNo = HSubData[j].批号 |
| | | Batchno = HSubData[j].HBatchNo |
| | | } |
| | | } |
| | | } |
| | | |
| | | for (let i = 0; i < obj.length; i++) { |
| | | if (obj[i].订单类型 != HOrderType) { |
| | | HError += obj[i].订单类型; |
| | |
| | | //"HMTONO": obj[i].HBatchNo, "F_xbkf_Combo": '', "FSHDD": '', "FPrintCount": obj[i].打印条码数量, "HPlanArrivalDate": new Date() |
| | | |
| | | "sorderid": HSubLen, "HPOOrderInterID": obj[i].hmainid, "HPOOrderEntryID": obj[i].hsubid, "HPOOrderBillNo": obj[i].订单单号, "HWWOrderInterID": 0, |
| | | "HWWOrderEntryID": 0, "HWWOrderDetaiLID": 0., "HWWOrderBillNo": '', "HBillType": "1102", "HBatchNo": Batchno, "HMaterID": obj[i].hmaterid, |
| | | "HWWOrderEntryID": 0, "HWWOrderDetaiLID": 0., "HWWOrderBillNo": '', "HBillType": "1102", "HBatchNo": obj[i].HBatchNo, "HMaterID": obj[i].hmaterid, |
| | | "HMaterNumber": obj[i].物料代码, "HOldMaterNumber": obj[i].旧物料编码, "HMaterShortNumber": obj[i].物料编码, "HMaterName": obj[i].物料名称, |
| | | "HMaterModel": obj[i].规格型号, "HUnitID": obj[i].hunitid, "HUnitName": obj[i].计量单位, "HUnitNumber": obj[i].计量单位代码, "HUnitName": obj[i].采购单位, "HQty": obj[i].未关联数量, |
| | | "HRQty": obj[i].未关联数量, "HSQty": obj[i].采购数量, "HPrice": obj[i].单价, "HMoney": obj[i].金额, "HDate": Format(new Date(), "yyyy-MM-dd"), "HKFDate": new Date().toISOString().slice(0, 10), |
| | | "HMaterModel": obj[i].规格型号, "HUnitID": obj[i].hunitid, "HUnitName": obj[i].计量单位, "HUnitNumber": obj[i].计量单位代码, "HUnitName": obj[i].采购单位, "HQty": obj[i].可发货数量, |
| | | "HRQty": obj[i].可发货数量, "HSQty": obj[i].采购数量, "HPrice": obj[i].单价, "HMoney": obj[i].金额, "HDate": Format(new Date(), "yyyy-MM-dd"), "HKFDate": new Date().toISOString().slice(0, 10), |
| | | "HKFPeriod": 0, "HSourceInterID": obj[i].hmainid, "HSourceEntryID": obj[i].hsubid, "HSourceBillType": "1102", "HSourceBillNo": obj[i].订单单号, |
| | | "HMTONO": obj[i].HBatchNo, "F_xbkf_Combo": '', "FSHDD": '', "FPrintCount": obj[i].打印条码数量, "HPlanArrivalDate": new Date(), |
| | | "HTAXPRICE_T": obj[i].含税重量单价吨 |
| | | }; |
| | | HSubData.push(row_options); |
| | | HData_Sub.push(row_options); |
| | | HSubLen++; |
| | | |
| | | //var NewRow = { |
| | |
| | | return layer.msg('采购订单订单类型不同,不允许合并下推生成送货单!') |
| | | } |
| | | table.reload('mainTable', { |
| | | data: HSubData |
| | | data: HData_Sub |
| | | , height: 'full-10' |
| | | , loading: false |
| | | , done: function (index, res) { |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">规格型号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HModel" id="HModel"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">开始日期</label> |
| | | <div class="layui-input-block" style="width:100px;"> |
| | | <input type="text" class="layui-input" name="HDate1" id="HDate1"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">状态</label> |
| | | <div class="layui-input-block" style="width:120px"> |
| | | <select name="HStatus" id="HStatus" lay-filter=""> |
| | | <option value="" selected="">全部</option> |
| | | <option value="未确认">未确认</option> |
| | | <option value="已确认">已确认</option> |
| | | <option value="已驳回">已驳回</option> |
| | | </select> |
| | | <label class="layui-form-label">供应商名称</label> |
| | | <div class="layui-input-block" style="width:130px;"> |
| | | <input type="text" class="layui-input" name="HSupName" id="HSupName"> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">关闭状态</label> |
| | | <div class="layui-input-block" style="width:120px"> |
| | | <select id="HClStatus" name="HClStatus" lay-filter=""> |
| | | <option value="" selected>全部</option> |
| | | <option value="未关闭">未关闭</option> |
| | | <option value="">全部</option> |
| | | <option value="未关闭" selected>未关闭</option> |
| | | <option value="已关闭">已关闭</option> |
| | | </select> |
| | | </div> |
| | |
| | | </select> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">供应商名称</label> |
| | | <div class="layui-input-block" style="width:130px;"> |
| | | <input type="text" class="layui-input" name="HSupName" id="HSupName"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="layui-inline"> |
| | | <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch"> |
| | | <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i> |
| | |
| | | </div> |
| | | <div class="layui-colla-content" style="padding-left:82px"> |
| | | <div class="layui-inline"> |
| | | <label class="layui-form-label">规格型号</label> |
| | | <div class="layui-input-block"> |
| | | <input type="text" class="layui-input" name="HModel" id="HModel"> |
| | | <label class="layui-form-label">状态</label> |
| | | <div class="layui-input-block" style="width:120px"> |
| | | <select name="HStatus" id="HStatus" lay-filter=""> |
| | | <option value="" selected="">全部</option> |
| | | <option value="未确认">未确认</option> |
| | | <option value="已确认">已确认</option> |
| | | <option value="已驳回">已驳回</option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="layui-inline"> |
| | |
| | | } |
| | | var params = getUrlVars(); |
| | | var type = params[params[0]]; |
| | | var HSupName = params[params[1]]; |
| | | var HOrderType = params[params[2]]; |
| | | |
| | | layui.config({ |
| | | base: '../../layuiadmin/' //静态资源所在路径 |
| | |
| | | var option = []; |
| | | var HModName = "SRM_POOrderBillList"; |
| | | var sqlWhere = ""; |
| | | |
| | | //将url参数中的中文乱码重新转换成中文。 注:HBillType 是参数命名,不是值 |
| | | HOrderType = getParams("HOrderType"); |
| | | |
| | | HSupName = getParams("HSupName"); |
| | | |
| | | //#region 进入页面既加载 |
| | | switch (type) { |
| | | case "UnConfirm": |
| | |
| | | options[3].selected = true; |
| | | sql += " and 状态 like ^^%已驳回%^^"; |
| | | break; |
| | | //case "AddRow": |
| | | // $("#HStatus").attr("disabled", "disabled"); |
| | | // $("#HStatus").val('已确认'); |
| | | // $("#HFinishStatus").attr("disabled", "disabled"); |
| | | // form.render('select'); |
| | | // sqlWhere += " and 状态 like ^^%已确认%^^"; |
| | | // sqlWhere += " and 完成状态 like ^^%" + $("#HFinishStatus").val() + "%^^"; |
| | | // $('#btn_reload').addClass("layui-btn-disabled").attr("visibility", "hidden"); |
| | | // $('#btn_confirm').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // $('#btn_back').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // $('#btn_report').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // $('#btn_details').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // $('#btn_barcode').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // $('#btn_generate').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // $('#set_dao').addClass("layui-btn-disabled").attr("disabled", true); |
| | | // break; |
| | | case "AddRow": |
| | | //$("#HStatus").attr("disabled", "disabled"); |
| | | //$("#HStatus").val('已确认'); |
| | | //$("#HFinishStatus").attr("disabled", "disabled"); |
| | | //form.render('select'); |
| | | //sqlWhere += " and 状态 like ^^%已确认%^^"; |
| | | //sqlWhere += " and 完成状态 like ^^%" + $("#HFinishStatus").val() + "%^^"; |
| | | //$('#btn_reload').addClass("layui-btn-disabled").attr("visibility", "hidden"); |
| | | //$('#btn_confirm').addClass("layui-btn-disabled").attr("disabled", true); |
| | | //$('#btn_back').addClass("layui-btn-disabled").attr("disabled", true); |
| | | //$('#btn_report').addClass("layui-btn-disabled").attr("disabled", true); |
| | | //$('#btn_details').addClass("layui-btn-disabled").attr("disabled", true); |
| | | //$('#btn_barcode').addClass("layui-btn-disabled").attr("disabled", true); |
| | | //$('#btn_generate').addClass("layui-btn-disabled").attr("disabled", true); |
| | | //$('#set_dao').addClass("layui-btn-disabled").attr("disabled", true); |
| | | if (HSupName != undefined) { |
| | | sql += " and 供应商 = ^^" + HSupName + "^^"; |
| | | } |
| | | if (HOrderType != undefined) { |
| | | sql += " and 订单类型 = ^^" + HOrderType + "^^"; |
| | | } |
| | | |
| | | break; |
| | | } |
| | | |
| | | set_ClearBill(); |
| | |
| | | col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, templet: "<div>{{d." + data[i].name + " ==null ?'':layui.util.toDateString(d." + data[i].name + ", 'yyyy-MM-dd')}}</div>", width: 200 }); |
| | | break; |
| | | default: |
| | | if (data[i].name == '订单数量' || data[i].name == '已发货数量' || data[i].name == '未发货数量' || data[i].name == '剩余收料数量' || data[i].name == '未到货数量' || data[i].name == '累计收料数量' || data[i].name == '剩余入库数量' || data[i].name == '入库数量') { |
| | | if (data[i].name == '订单数量' || data[i].name == '已发货数量' || data[i].name == '未发货数量' || data[i].name == '剩余收料数量' || data[i].name == '未到货数量' || data[i].name == '累计收料数量' || data[i].name == '剩余入库数量' || data[i].name == '入库数量' || data[i].name == '可发货数量') { |
| | | col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200, totalRow: true }); |
| | | } else if (data[i].name == '供应商交期回复') { |
| | | col.push({ field: data[i].id, title: data[i].name, align: 'center', sort: true, width: 200, event: 'HSupSendGoodsDateRemark' }); |
| | |
| | | sqlWhere += " and 交货日期 <= ^^" + dt + "^^"; |
| | | } |
| | | } |
| | | sql = sqlWhere; |
| | | |
| | | sqlWhere = sqlWhere + sql; |
| | | //从第一页开始 |
| | | _cur_page = 1; |
| | | get_Display(sqlWhere); |
| | |
| | | }); |
| | | }); |
| | | } |
| | | }); |
| | | |
| | | table.on('sort(mainTable)', function (obj) { //注:sort 是工具条事件名,test 是 table 原始容器的属性 lay-filter="对应的值" |
| | | table.reload('mainTable', { |
| | | initSort: obj //记录初始排序,如果不设的话,将无法标记表头的排序状态。 layui 2.1.1 新增参数 |
| | | , where: { //请求参数(注意:这里面的参数可任意定义,并非下面固定的格式) |
| | | field: obj.field //排序字段 在接口作为参数字段 field order |
| | | , order: obj.type //排序方式 在接口作为参数字段 field order |
| | | } |
| | | }); |
| | | option.data = layui.table.cache["mainTable"]; |
| | | table.render(option); |
| | | }); |
| | | |
| | | //头工具栏事件 |
| | |
| | | if (data.length == 0) { |
| | | layer.alert("请选择数据", { icon: 5 }); |
| | | return; |
| | | } |
| | | if (data[0].完成状态 == "已完成") { |
| | | return layer.msg('订单已完成!') |
| | | } |
| | | } |
| | | ajaxLabelData = data; |
| | | //根据选中的采购订单,重新从金蝶云同步采购订单关联数量过来。考虑采购订单删除和关闭状态,同步状态 |
| | | var ids = ""; |
| | | var entryids = ""; |
| | | var HBillType = data[0].订单类型 |
| | | var HSupNumber = data[0].供应商代码 |
| | | var HErr = ""; |
| | | var HSupErr = ""; |
| | | $.each(data, function (obj) { |
| | | ids += data[obj].hmainid + ","; |
| | | entryids += data[obj].hsubid + ","; |
| | | if (HBillType != data[obj].订单类型) { |
| | | HErr += data[obj].订单类型; |
| | | } |
| | | if (HSupNumber != data[obj].供应商代码) { |
| | | HSupErr += data[obj].供应商代码; |
| | | } |
| | | }) |
| | | if (HErr != "") { |
| | | return layer.msg('采购订单订单类型不同,不允许合并下推生成送货单!') |
| | | } |
| | | if (HSupErr != "") { |
| | | return layer.msg('供应商不同,不允许合并下推生成送货单!') |
| | | } |
| | | |
| | | ids = ids.substring(0, ids.length - 1); |
| | |
| | | if (!hasPrivileage) { |
| | | return; |
| | | } |
| | | |
| | | var rows = ''; |
| | | var HEntry = ''; |
| | | var HOrderRows = ''; |
| | | for (var i = 0; i < data.length; i++) { |
| | | if (data[i]["状态"] == "已确认") { |
| | | rows += data[i].hmainid.toString() + ',' + data[i].hsubid.toString() + ';'; |
| | |
| | | else { |
| | | HEntry += (i + 1) + ','; |
| | | } |
| | | |
| | | if (data[i].完成状态 == "已完成") { |
| | | HOrderRows += (i + 1) + ','; |
| | | } |
| | | } |
| | | if (HEntry != '') { |
| | | HEntry = HEntry.substring(0, HEntry.length - 1); |
| | | layer.msg("第" + HEntry + "行未确认!", { icon: 5 }); |
| | | } |
| | | else if (HOrderRows != '') { |
| | | HOrderRows = HOrderRows.substring(0, HOrderRows.length - 1); |
| | | layer.msg("第" + HOrderRows + "行,订单已完成!", { icon: 5 }); |
| | | } |
| | | else { |
| | | layer.open({ |
| | |
| | | , shade: 0.6 //遮罩透明度 |
| | | , maxmin: false //允许全屏最小化 |
| | | , anim: 0 //0-6的动画形式,-1不开启 |
| | | , content: ['../../views/SRM/SRM_POInStockBill_Edit.html?linterid=' + data[0].hmainid.toString() + '&lentryid=' + rows.toString() + '&lSourceBillType=1102', 'yes'] |
| | | , content: ['../../views/SRM/SRM_POInStockBill_Edit.html?linterid=' + data[0].hmainid.toString() + '&lentryid=' + rows.toString() + '&lSourceBillType=1102' + '&type =add', 'yes'] |
| | | , resize: false |
| | | ,end: function () { |
| | | get_FastQuery(table, option) |
| | |
| | | var ColName = []; |
| | | for (var i = 1; i < option.cols[0].length; i++) { |
| | | if (option.cols[0][i]["hide"] != true) { |
| | | ColName.push(option.cols[0][i]["field"]); |
| | | ColName.push(option.cols[0][i]["field"]); |
| | | } |
| | | } |
| | | //替换换行符 |
| | | option.data.forEach((item) => { |
| | | for (let itemobj in item) { |
| | | if (item[itemobj] == null) { |
| | | item[itemobj] = ""; |
| | | } |
| | | if (item[itemobj].length > 0) { // 假设字段名为field |
| | | item[itemobj] = item[itemobj].toString().replaceAll(/[\r\n]+/g, ''); // 将换行符替换为空字符串 |
| | | } |
| | | if (itemobj === '规格型号') { |
| | | item[itemobj] = item[itemobj].replace(/,/g, ','); // 替换英文逗号为中文逗号 |
| | | } |
| | | } |
| | | }); |
| | | //绑定数据 |
| | | var data = excel.filterExportData(option.data, ColName) |
| | | |
| | |
| | | }); |
| | | }); |
| | | |
| | | //将url参数中的中文乱码重新转换成中文 |
| | | function getParams(key) { |
| | | var reg = new RegExp("(^|&)" + key + "=([^&]*)(&|$)"); |
| | | //如果地址栏中出现中文则进行编码 |
| | | var r = encodeURI(window.location.search).substr(1).match(reg); |
| | | if (r != null) { |
| | | //将中文编码的字符重新变成中文 |
| | | return decodeURI(unescape(r[2])); |
| | | } |
| | | return null; |
| | | }; |
| | | |
| | | }); |
| | | </script> |
| | | </body> |