From 574e8b3b68482bc61fee792383444d7446f03223 Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期二, 20 五月 2025 10:03:54 +0800
Subject: [PATCH] 批改页面 表格方案 完成 | 修正 全选样式不全 下拉框选中无法更改问题

---
 WebTM/views/基础资料/公用基础资料/Gy_MaterialCorrection.html |  141 ++++++++++++++++++++++++++++++++++++----------
 1 files changed, 109 insertions(+), 32 deletions(-)

diff --git "a/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/Gy_MaterialCorrection.html" "b/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/Gy_MaterialCorrection.html"
index da454f9..785cf5d 100644
--- "a/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/Gy_MaterialCorrection.html"
+++ "b/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\345\205\254\347\224\250\345\237\272\347\241\200\350\265\204\346\226\231/Gy_MaterialCorrection.html"
@@ -216,7 +216,7 @@
                             </div>
                         </script>
                         <script type="text/html" id="materProperty">
-                            <select name="HMaterClsID" id="HMaterClsID" lay-verify="HMaterClsID" >
+                            <select name="HMaterClsID" id="HMaterClsID" lay-verify="HMaterClsID" lay-filter="materPropertySelect" >
                                 <option value="澶栬喘">澶栬喘</option>
                                 <option value="鑷埗">鑷埗</option>
                                 <option value="濮斿">濮斿</option>
@@ -257,8 +257,8 @@
             var sWhere = "";
             var option = [];
             var ins;                        //鐢ㄤ簬瀵煎嚭excel
-            var HModName = "Gy_Source";
-            var HBillType = "Gy_Source";
+            var HModName = "Gy_Material";
+            var HBillType = "Gy_Material";
             var Organization = sessionStorage["Organization"];
             var page = 1
             var size = 50
@@ -302,6 +302,7 @@
             set_ClearBill();
 
             //#endregion
+
 
 
             //#region 瑙﹀彂浜嬩欢锛氬寘鎷琭orm.on(){}鏍煎紡鐨勬墍鏈夌偣鍑讳簨浠躲�侀�夋嫨浜嬩欢绛�
@@ -420,6 +421,28 @@
                 });
             })
 
+            // 涓嬫媺妗嗕簨浠�
+            form.on('select(materPropertySelect)', function (obj) {
+                let value = obj.value
+                let td = $(obj.elem).closest('td')
+                let field = td.data('field') // 鑾峰彇鍒板垪灞炴��
+                tempData.forEach(item => {
+                    item[field] = value
+                })
+                // 閲嶆柊娓叉煋涓嬫媺妗�
+                table.reload('tempTable', {
+                    data: tempData,
+                    done: function (res, curr, count) {
+                        $.each(res.data, function (index, item) {
+                            var select = $('tr[data-index="' + index + '"] select[name="HMaterClsID"]'); // 鐗╂枡灞炴�у搴旂殑涓嬫媺妗�
+                            select.val(item['鐗╂枡灞炴��']);
+                            form.render('select');
+                        })
+                    }
+                })
+
+            })
+
             //#region 鏌ヨ鎸夐挳
             form.on('submit(btnSearch)', function (data) {
                 //瀛樺偍鏉′欢
@@ -477,9 +500,6 @@
             // 鐩戝惉琛ㄥご澶嶉�夋浜嬩欢
             table.on('checkbox(mainTable)', function (obj) {
                 if (obj.type === 'all') { //  鍏ㄩ�変簨浠�
-                    console.log(obj.checked);
-                    
-                   
                     if (obj.checked === true) {
                         let checked = $(document.getElementsByClassName('layui-form-checked'))
                         checked.closest('tr').not(':has(th)').attr({ "style": "background:#ceedfa;color:black" }).addClass('checked');
@@ -597,7 +617,12 @@
             }
             //#endregion
 
+            //#region 鎵归噺淇敼
+            table.on('edit(tempTable)', function (obj) {
+                batchUpdate(obj)
+            })
 
+            //#endregion
 
             //#region 鏌ヨ
             function get_Display(sWhere) {
@@ -740,28 +765,27 @@
                                     element['event'] = eventName
                                 }
                                 if (element.field === '鐗╂枡灞炴��') {
-                                    element['edit'] = ''
-                                    element['templet'] = function (d) {
-                                        return '<select name="HMaterClsID" id="HMaterClsID" lay-verify="HMaterClsID" data-value="' + d['鐗╂枡灞炴��'] + '">\n ' +
-                                            '<option value="澶栬喘">澶栬喘</option>\n' +
-                                            '<option value="鑷埗">鑷埗</option>\n' +
-                                            '<option value="濮斿">濮斿</option>\n' +
-                                            '</select>'
+                                    element['edit'] = null
+                                    element['templet'] = "#materProperty"
 
-                                    }
-
-                                    form.render('select')
                                 }
                             });
                             tempOption.cols = [tempCol];
                             tempOption.data = tempData;
+                            tempOption.done = function (res, curr, count) {
+                                $.each(res.data, function (index, item) {
+                                    var select = $('tr[data-index="' + index + '"] select[name="HMaterClsID"]'); // 鐗╂枡灞炴�у搴旂殑涓嬫媺妗�
+                                    select.val(item['鐗╂枡灞炴��']);
+                                    form.render('select');
+                                });
+                            }
                             //鍒锋柊琛ㄦ牸鏁版嵁
                             DisPlay_HideColumn(HModName, sessionStorage["HUserName"], option, titleData);
 
                             ins = table.render(option);
                             tempIns = table.render(tempOption)
-                            laypage.render(optionPage);
 
+                            laypage.render(optionPage);
                             layer.close(ajaxLoad);
                             if ($("#ColName option").length < 1) {
                                 ColFilter();
@@ -844,7 +868,7 @@
                     }
                 })
 
-                
+
 
                 filterUnit = filterUnit.html();
                 $('#btnAddFilter').before(filterUnit);
@@ -874,6 +898,14 @@
                     $("#ColContent").val(data2["ColContent"]);
                     form.render('select');
                 }
+            }
+            //鎵归噺鏇存柊
+            function batchUpdate(obj, reg) {
+                let field = obj.field;
+                let value = obj.value;
+                tempData.forEach(item => {
+                    item[field] = value
+                })
             }
 
             function btnrowDouble(obj) {
@@ -1027,7 +1059,7 @@
                         , resize: false,
                         end: function () {
                             //鍒锋柊椤甸潰,
-                            location.reload();
+                            location.reload()
                         }
                         , cancel: function () {
                         }
@@ -1211,7 +1243,9 @@
                                 if (data.count == 1) { // 璇存槑楠岃瘉鎴愬姛浜嗭紝
                                     layer.msg(data.Message, { icon: 1 });
                                     // get_WriteConfigFile();
-                                    location.reload(true)
+                                    tempData = []
+                                    table.reload('tempTable', { data: tempData })
+                                    get_DisplayPage(sWhere);
                                 }
                                 else {
                                     layer.alert(data.Message);
@@ -1698,11 +1732,21 @@
                                     if (checkStatus.data.length === 0) {
                                         return layer.msg('璇烽�夋嫨鏁版嵁');
                                     } else if (checkStatus.data.length === 1) {
-                                        objCurrent.update({
-                                            HUnitName: checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О,
-                                            HUnitID: checkStatus.data[0].HItemID,
-                                            '璁¢噺鍗曚綅鍚嶇О': checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О,
-                                            '璁¢噺鍗曚綅浠g爜': checkStatus.data[0].璁¢噺鍗曚綅浠g爜,
+                                        // objCurrent.update({
+                                        //     HUnitName: checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О,
+                                        //     HUnitID: checkStatus.data[0].HItemID,
+                                        //     '璁¢噺鍗曚綅鍚嶇О': checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О,
+                                        //     '璁¢噺鍗曚綅浠g爜': checkStatus.data[0].璁¢噺鍗曚綅浠g爜,
+                                        // })
+
+                                        tempData.forEach(item => {
+                                            item['HUnitName'] = checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О
+                                            item['HUnitID'] = checkStatus.data[0].HItemID
+                                            item['璁¢噺鍗曚綅鍚嶇О'] = checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О
+                                            item['璁¢噺鍗曚綅浠g爜'] = checkStatus.data[0].璁¢噺鍗曚綅浠g爜
+                                        })
+                                        table.reload('tempTable', {
+                                            data: tempData
                                         })
                                     }
 
@@ -1731,10 +1775,18 @@
                                     if (checkStatus.data.length === 0) {
                                         return layer.msg('璇烽�夋嫨鏁版嵁');
                                     } else if (checkStatus.data.length === 1) {
-                                        debugger;
-                                        objCurrent.update({
-                                            HBASEUNITID: checkStatus.data[0].HItemID,
-                                            '鍩烘湰璁¢噺鍗曚綅浠g爜': checkStatus.data[0].璁¢噺鍗曚綅浠g爜,
+                                        // objCurrent.update({
+                                        //     HBASEUNITID: checkStatus.data[0].HItemID,
+                                        //     '鍩烘湰璁¢噺鍗曚綅浠g爜': checkStatus.data[0].璁¢噺鍗曚綅浠g爜,
+                                        // })
+                                        tempData.forEach(item => {
+                                            item['HBASEUNITID'] = checkStatus.data[0].HItemID
+                                            item['鍩烘湰璁¢噺鍗曚綅浠g爜'] = checkStatus.data[0].璁¢噺鍗曚綅浠g爜
+                                            // item['璁¢噺鍗曚綅鍚嶇О']= checkStatus.data[0].璁¢噺鍗曚綅鍚嶇О
+                                            // item['璁¢噺鍗曚綅浠g爜']= checkStatus.data[0].璁¢噺鍗曚綅浠g爜
+                                        })
+                                        table.reload('tempTable', {
+                                            data: tempData
                                         })
                                     }
 
@@ -1768,6 +1820,17 @@
                                         HWhID: checkStatus.data[0].HItemID,
                                         '浠撳簱浠g爜': checkStatus.data[0].浠撳簱浠g爜
                                     })
+
+                                    tempData.forEach(item => {
+                                        item['浠撳簱鍚嶇О'] = checkStatus.data[0].浠撳簱鍚嶇О
+                                        item['HWhID'] = checkStatus.data[0].HItemID
+                                        item['浠撳簱浠g爜'] = checkStatus.data[0].浠撳簱浠g爜
+                                        // item['璁¢噺鍗曚綅浠g爜']= checkStatus.data[0].璁¢噺鍗曚綅浠g爜
+                                    })
+                                    table.reload('tempTable', {
+                                        data: tempData
+                                    })
+
                                     layer.close(index); //瀹冭幏鍙栫殑濮嬬粓鏄渶鏂板脊鍑虹殑鏌愪釜灞傦紝鍊兼槸鐢眑ayer鍐呴儴鍔ㄦ�侀�掑璁$畻鐨�
                                 }
                                 , btn2: function (index, layero) { }
@@ -1798,6 +1861,17 @@
                                         HMaterTypeID: checkStatus.data[0].HItemID,
                                         '鐗╂枡鍒嗙被浠g爜': checkStatus.data[0].鐗╂枡鍒嗙被浠g爜
                                     })
+
+                                    tempData.forEach(item => {
+                                        item['鐗╂枡鍒嗙被鍚嶇О'] = checkStatus.data[0].鐗╂枡鍒嗙被鍚嶇О
+                                        item['HMaterTypeID'] = checkStatus.data[0].HItemID
+                                        item['鐗╂枡鍒嗙被浠g爜'] = checkStatus.data[0].鐗╂枡鍒嗙被浠g爜
+                                        // item['璁¢噺鍗曚綅浠g爜']= checkStatus.data[0].璁¢噺鍗曚綅浠g爜
+                                    })
+                                    table.reload('tempTable', {
+                                        data: tempData
+                                    })
+
                                     layer.close(index); //瀹冭幏鍙栫殑濮嬬粓鏄渶鏂板脊鍑虹殑鏌愪釜灞傦紝鍊兼槸鐢眑ayer鍐呴儴鍔ㄦ�侀�掑璁$畻鐨�
                                 }
                                 , btn2: function (index, layero) { }
@@ -1862,6 +1936,9 @@
             if (element.field.search(/鏍囪|flag/) !== -1) {
                 return false
             }
+            if (element.field.search(/鐗╂枡浠g爜|鐗╂枡鍚嶇О/) !== -1) {
+                return false
+            }
             if (element.field === '缁勭粐鍚嶇О') {
                 return false
             }
@@ -1871,13 +1948,12 @@
         function elementEventBindCheck(element) {
             const UnitReg = /璁¢噺|Unit/;
             const WHReg = /浠撳簱|WH/;
-            const MaterReg = /鐗╂枡鍒嗙被| MaterType/;
+            const MaterReg = /鐗╂枡鍒嗙被|MaterType/;
             if (element.type === 'checkbox') {
                 return false
             }
 
             if (element.field.search(/鍩烘湰璁¢噺鍗曚綅浠g爜|HBASEUNITID/) !== -1) {
-                console.log(element.field)
                 return 'onBasicUnitCodeKeyDownHandler';
             } else if (element.field.search(UnitReg) !== -1) {
                 return 'onHUnitNameKeyDownHandler';
@@ -1885,8 +1961,9 @@
                 return 'onWareHouseKeyDownHandler';
             } else if (element.field.search(MaterReg) !== -1) {
                 return 'onMaterialClassKeyDownHandler';
+            } else {
+                return null
             }
-            return null
         }
 
         function divisionJudgment(divisionStr) {

--
Gitblit v1.9.1