From 5e9c87d9524a3a31b7691e61d8da9a757377e9bd Mon Sep 17 00:00:00 2001
From: yusijie <ysj@hz-kingdee.com>
Date: 星期三, 20 八月 2025 10:51:09 +0800
Subject: [PATCH] 条码生成转换特殊字符;标准包装添加控制;

---
 WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html |  197 +++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 151 insertions(+), 46 deletions(-)

diff --git a/WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html b/WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html
index 145165f..e6abb8e 100644
--- a/WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html
+++ b/WebSRM/layuiAdmin.std-v1.2.1/src/views/SRM/SRM_POOrderBillList.html
@@ -63,6 +63,12 @@
                                         </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">
@@ -75,22 +81,17 @@
                                         </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>
@@ -127,15 +128,30 @@
                                         </div>
                                     </div>
                                     <div class="layui-inline">
+                                        <label class="layui-form-label">涓氬姟缁堟</label>
+                                        <div class="layui-input-block">
+                                            <select id="HIsStop" name="HIsStop" lay-filter="">
+                                                <option value="鍏ㄩ儴">鍏ㄩ儴</option>
+                                                <option value="鏄�">鏄�</option>
+                                                <option value="鍚�" selected>鍚�</option>
+                                            </select>
+                                        </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>
                                         </button>
                                     </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">
@@ -224,7 +240,9 @@
             layer.alert(sMsg, { icon: 5 });
         }
         var params = getUrlVars();
-        var type = params[params[0]];
+        var type = params[params[0]]; //鎵撳紑鍒楄〃绫诲瀷锛堝叏閮ㄩ噰璐鍗曪紝宸茬‘璁ら噰璐鍗曪紝鏈‘璁ら噰璐鍗�...锛�
+        var HSupName = params[params[1]];//閫佽揣鍗曠紪杈戦〉闈㈤�夋簮鍗曟墦寮�閫佽揣鍗曞垪琛ㄦ椂锛屾妸椤甸潰涓�夋嫨鐨勪緵搴斿晢浼犻�掕繃鏉ュ仛杩囨护锛岄槻閿�
+        var HOrderType = params[params[2]];//閫佽揣鍗曠紪杈戦〉闈㈤�夋簮鍗曟墦寮�閫佽揣鍗曞垪琛ㄦ椂锛屾妸椤甸潰涓�夋嫨鐨勮鍗曠被鍨嬩紶閫掕繃鏉ュ仛杩囨护锛岄槻閿�
 
         layui.config({
             base: '../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
@@ -241,17 +259,23 @@
                 , excel = layui.excel;
             //甯歌鐢ㄦ硶
             laydate.render({
-                elem: '#HDate1'
+                elem: '#HDate1' //杩囨护鏉′欢寮�濮嬫棩鏈熷垵濮嬪寲
             });
             laydate.render({
-                elem: '#HDate2'
+                elem: '#HDate2' //杩囨护鏉′欢缁撴潫鏃ユ湡鍒濆鍖�
             });
 
             //涓嶉渶瑕佹樉绀虹殑瀛楁 鍙墿灞�
-            var titleData = ["HItemID", "HParentID", "鍗曟嵁鍙�", "鏃ユ湡", "鏁伴噺", "鐘舵��", "鍗曚綅", "閲戦"];
+            var titleData = ["HItemID", "HParentID", "鍗曚綅", "閲戦"];
             var option = [];
             var HModName = "SRM_POOrderBillList";
             var sqlWhere = "";
+
+            //灏唘rl鍙傛暟涓殑涓枃涔辩爜閲嶆柊杞崲鎴愪腑鏂囥�� 娉細HBillType 鏄弬鏁板懡鍚嶏紝涓嶆槸鍊�
+            HOrderType = getParams("HOrderType");
+
+            HSupName = getParams("HSupName");
+
             //#region 杩涘叆椤甸潰鏃㈠姞杞�
             switch (type) {
                 case "UnConfirm":
@@ -268,22 +292,29 @@
                     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();
@@ -472,9 +503,9 @@
                 var wait = layer.load();//閬僵
                 $.ajax({
                     type: "POST",
-                    url: GetWEBURL() + "GetPOOrderBill",
+                    url: GetWEBURL() + "GetPOOrderBill", //H_p_SRM_POOrderBillList
                     async: true,
-                    data: { "HSupNo": sessionStorage["HUserName"], "sqlWhere": sqlWhere },
+                    data: { "HSupIDs": sessionStorage["HSupIDs"], "sqlWhere": sqlWhere },
                     success: function (data1) {
                         if (data1.Message == "鑾峰彇鎴愬姛") {
                         var data = [];
@@ -501,7 +532,7 @@
                                         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 == '鏈彂璐ф暟閲�') {
+                                        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' });
@@ -558,6 +589,8 @@
                     sqlWhere += " and 鏃х墿鏂欑紪鐮� like ^^%" + $("#HOldMaterNumber").val() + "%^^";
                 if ($("#HNumber").val() != "")
                     sqlWhere += " and 鐗╂枡浠g爜 like ^^%" + $("#HNumber").val() + "%^^";
+                if ($("#HSupName").val() != "")
+                    sqlWhere += " and 渚涘簲鍟� like ^^%" + $("#HSupName").val() + "%^^";
                 if ($("#HName").val() != "")
                     sqlWhere += " and 鐗╂枡鍚嶇О like ^^%" + $("#HName").val() + "%^^";
                 if ($("#HModel").val() != "")
@@ -567,10 +600,10 @@
                 if ($("#HPURCHASEORGID").val() != "" && $("#HPURCHASEORGID option:selected").text() != "瀹夌憺闆嗗洟")
                     sqlWhere += " and HPURCHASEORGID = ^^" + $("#HPURCHASEORGID").val() + "^^";
                 if ($("#HDate1").val() != "") {
-                    sqlWhere += " and 閲囪喘鏃ユ湡 >= ^^" + $("#HDate1").val() + "^^";
+                    sqlWhere += " and 鏃ユ湡 >= ^^" + $("#HDate1").val() + "^^";
                 }
                 if ($("#HDate2").val() != "") {
-                    sqlWhere += " and 閲囪喘鏃ユ湡 <= ^^" + $("#HDate2").val() + "^^";
+                    sqlWhere += " and 鏃ユ湡 <= ^^" + $("#HDate2").val() + "^^";
                 }
                 if ($("#HISGenerate").val() != "") {
                     if ($("#HISGenerate").val() == "鏄�") {
@@ -596,7 +629,16 @@
                     else if ($("#HIsFreeze").val() == "涓氬姟鍐荤粨") {
                         sqlWhere += " and 涓氬姟鍐荤粨 = ^^涓氬姟鍐荤粨^^";
                     }
+                }                
+                if ($("#HIsStop").val() != "") {
+                    if ($("#HIsStop").val() == "鏄�") {
+                        sqlWhere += " and 涓氬姟缁堟 = ^^涓氬姟缁堟^^";
+                    }
+                    else if ($("#HIsStop").val() == "鍚�") {
+                        sqlWhere += " and 涓氬姟缁堟 = ^^姝e父^^";
+                    }
                 }
+
                 var Time = $("#Time").val();
                 if (Time > 0) {
                     var dd = new Date();
@@ -628,7 +670,8 @@
                         sqlWhere += " and 浜よ揣鏃ユ湡 <= ^^" + dt + "^^";
                     }
                 }
-                sql = sqlWhere;
+
+                sqlWhere = sqlWhere + sql;
                 //浠庣涓�椤靛紑濮�
                 _cur_page = 1;
                 get_Display(sqlWhere);
@@ -667,6 +710,18 @@
                         });
                     });
                 }
+            });
+
+            table.on('sort(mainTable)', function (obj) { //娉細sort 鏄伐鍏锋潯浜嬩欢鍚嶏紝test 鏄� table 鍘熷瀹瑰櫒鐨勫睘鎬� lay-filter="瀵瑰簲鐨勫��"
+                table.reload('mainTable', {
+                    initSort: obj //璁板綍鍒濆鎺掑簭锛屽鏋滀笉璁剧殑璇濓紝灏嗘棤娉曟爣璁拌〃澶寸殑鎺掑簭鐘舵�併�� layui 2.1.1 鏂板鍙傛暟
+                    , where: { //璇锋眰鍙傛暟锛堟敞鎰忥細杩欓噷闈㈢殑鍙傛暟鍙换鎰忓畾涔夛紝骞堕潪涓嬮潰鍥哄畾鐨勬牸寮忥級
+                        field: obj.field //鎺掑簭瀛楁   鍦ㄦ帴鍙d綔涓哄弬鏁板瓧娈�  field order
+                        , order: obj.type //鎺掑簭鏂瑰紡   鍦ㄦ帴鍙d綔涓哄弬鏁板瓧娈�  field order
+                    }
+                });
+                option.data = layui.table.cache["mainTable"];
+                table.render(option);
             });
 
             //澶村伐鍏锋爮浜嬩欢
@@ -786,22 +841,36 @@
                         break;
                     case 'btn-generate':
                         var checkStatus = table.checkStatus('mainTable')
-                            , data = checkStatus.data;
+                            , data = checkStatus.data;                       
                         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);
                         entryids = entryids.substring(0, entryids.length - 1);
                         var hasPrivileage = true;
@@ -839,8 +908,10 @@
                         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() + ';';
@@ -848,10 +919,18 @@
                             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({
@@ -861,7 +940,7 @@
                                 , 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)
@@ -972,9 +1051,23 @@
                         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)
 
@@ -1020,6 +1113,18 @@
                 });
             });
 
+            //灏唘rl鍙傛暟涓殑涓枃涔辩爜閲嶆柊杞崲鎴愪腑鏂�
+            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>

--
Gitblit v1.9.1