From 46502c03b8ec09fac80830b40117ea88d845809e Mon Sep 17 00:00:00 2001
From: wtt <1985833171@qq.com>
Date: 星期五, 02 八月 2024 10:17:15 +0800
Subject: [PATCH] 供应商添加子表

---
 WebTM/views/基础资料/采购基础资料/Gy_Supplier_Edit.html |  196 ++++++++++++++++++++++++++++++++++++++++++++++--
 1 files changed, 185 insertions(+), 11 deletions(-)

diff --git "a/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\351\207\207\350\264\255\345\237\272\347\241\200\350\265\204\346\226\231/Gy_Supplier_Edit.html" "b/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\351\207\207\350\264\255\345\237\272\347\241\200\350\265\204\346\226\231/Gy_Supplier_Edit.html"
index 55bb2df..06f0fa3 100644
--- "a/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\351\207\207\350\264\255\345\237\272\347\241\200\350\265\204\346\226\231/Gy_Supplier_Edit.html"
+++ "b/WebTM/views/\345\237\272\347\241\200\350\265\204\346\226\231/\351\207\207\350\264\255\345\237\272\347\241\200\350\265\204\346\226\231/Gy_Supplier_Edit.html"
@@ -47,7 +47,7 @@
                                 <label class="layui-form-label">鍒涘缓缁勭粐</label>
                                 <div class="layui-input-inline" style="margin-right: 0px;width: 100px;">
                                     <input type="text" name="HCreateOrg" id="HCreateOrg" lay-verify="HCreateOrg" autocomplete="off" placeholder="" class="layui-input" value="" readonly="readonly" style="width: 134%;">
-                                    <input type="hidden" name="HCreateOrgID" id="HCreateOrgID" lay-verify="HCreateOrgID" value="0" autocomplete="off" class="layui-input" >
+                                    <input type="hidden" name="HCreateOrgID" id="HCreateOrgID" lay-verify="HCreateOrgID" value="0" autocomplete="off" class="layui-input">
                                 </div>
                                 <button type="button" lay-submit="" class="layui-btn" lay-filter="HCreateOrgID_BT" style=" margin-left: 36px; width: 42px; padding: 0 10px;">
                                     <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
@@ -222,7 +222,7 @@
                         <div class="layui-row" style="margin-bottom:5px">
                             <div class="layui-inline" style="width: 585px;">
                                 <label class="layui-form-label">澶囨敞</label>
-                                <div class="layui-input-inline" >
+                                <div class="layui-input-inline">
                                     <input type="text" name="HRemark" id="HRemark" lay-verify="HRemark" autocomplete="off" placeholder="" class="layui-input">
                                 </div>
                             </div>
@@ -325,11 +325,32 @@
                     <input type="hidden" name="lngBillKey" id="lngBillKey">
                     <input type="hidden" name="lngBillSubKey" id="lngBillSubKey">
                     <input type="hidden" name="HMaker" id="HMaker"><!--鍒跺崟浜�-->
+                    <div class="layui-tab" lay-filter="tab-POStockInBill">
+                        <ul class="layui-tab-title" lay-filter="tab-all">
+                            <li lay-id="1" style="padding:1px;" class="layui-this">浠樻璁″垝</li>
+                        </ul>
+                        <div class="layui-tab-content">
+                            <!--瀛愯〃-->
+                            <div class="layui-tab-item layui-show">
+                                <table class="layui-hide" id="mainTable" lay-filter="mainTable"></table>
+                                <script type="text/html" id="toolbarDemo">
+                                    <div class="layui-btn-container">
+                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-AddLine"><i class="layui-icon layui-icon-form"></i>澧炲姞涓�琛�</button>
+                                        <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-CopyLine"><i class="layui-icon layui-icon-form"></i>澶嶅埗涓�琛�</button>
+                                    </div>
+                                </script>
+                            </div>
+                        </div>
+                    </div>
                 </form>
             </div>
         </div>
     </div>
-
+    <!--椤圭洰闃舵琛細鍒犻櫎-->
+    <script type="text/html" id="barDemo">
+        <!--<a class="layui-btn layui-btn-xs" lay-event="edit">缂栬緫</a>-->
+        <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">鍒犻櫎</a>
+    </script>
     <script src="../../../layuiadmin/layui/layui.js"></script>
     <script src="../../../layuiadmin/Scripts/json2.js"></script>
     <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
@@ -365,16 +386,20 @@
             var sWhere = "";
             //#endregion
 
-
+            var option;
             //#region 杩涘叆椤甸潰鏃㈠姞杞�
             $("#HCreator").val(sessionStorage["HUserName"]);//鍒涘缓浜�
             //鍒ゆ柇鎿嶄綔绫诲瀷
             if (OperationType == 1) {//鏃犳簮鍗�
                 set_AddFNew();
+                //鍒濆鍖栬〃
+                get_InitGrid();
             }
             else if (OperationType == 3) {//缂栬緫
                 $("#HInterID").val(linterid);
                 set_EditFromGrid();
+                //鍒濆鍖栬〃
+                get_InitGrid();
             }
             else {
                 layer.alert("鏈煡鎿嶄綔绫诲瀷锛�", { icon: 5 });
@@ -383,6 +408,58 @@
 
 
             //#region 瑙﹀彂浜嬩欢锛氬寘鎷琭orm.on(){}鏍煎紡鐨勬墍鏈夌偣鍑讳簨浠躲�侀�夋嫨浜嬩欢绛�
+
+            //澶村伐鍏锋爮浜嬩欢
+            table.on('toolbar(mainTable)', function (obj) {
+                var checkStatus = table.checkStatus('mainTable')
+                    , data = checkStatus.data;
+                //鏂板琛岃〃鏍兼暟鎹�
+
+                var NewRow = {
+                    "HPayType": ""
+                    , "HPayRate": "0"
+                    , "HPayTime": "0"
+                    , "HPayRemark": ""
+                };
+                switch (obj.event) {
+                    case 'btn-AddLine':
+                        table.cache["mainTable"].push(NewRow);
+                        option.data = table.cache["mainTable"];
+
+                        table.render(option);
+                        //鍒锋柊澶嶉�夋
+                        //checkRefresh();
+                        break;
+                    case 'btn-CopyLine':
+                        var copydata = JSON.stringify(data);
+                        if (data.length <= 0) {
+                            layer.msg("璇烽�夋嫨闇�瑕佸鍒剁殑涓�琛岋紒");
+                        }
+                        else if (data.length > 1) {
+                            layer.msg("鍙兘閫夋嫨澶嶅埗涓�琛岋紒");
+                        }
+                        else {
+                            var copydata2 = copydata.substring(1, copydata.length);//鍘婚櫎棣栬瀛楃'['
+                            var copyrow = copydata2.substring(0, copydata2.length - 1);//鍘婚櫎鏈熬瀛楃']'
+                            table.cache["mainTable"].push(JSON.parse(copyrow));//灏嗗鍒剁殑琛屽己杞垚json杩藉姞鍒拌〃鏍间笂
+                            option.data = table.cache["mainTable"];//灏嗘暟鎹粦瀹氬埌data涓�
+                            table.render(option);//灏嗘暟鎹覆鏌撳埌琛ㄦ牸涓�
+                            //鍒锋柊澶嶉�夋
+                            //checkRefresh();
+                        }
+                        break;
+
+                }
+            });
+
+            //#region 瀛愯〃锛氳鍐呬簨浠�
+            table.on('tool(mainTable)', function (obj) {
+                set_GridDelete(obj);   //琛屽唴鍒犻櫎
+                /*set_GridCellCheck(obj); //琛屽唴蹇嵎閿瓫閫�*/
+
+            });
+            //#endregion
+
             //缁撶畻鏂瑰紡寮圭獥
             form.on('submit(btnSearchProc)', function () {
                 //椤甸潰灞�-鑷畾涔�
@@ -524,10 +601,19 @@
 
                 var isEndCheck = document.getElementById("HStopflag").checked;
                 isEndCheck == true ? data.field.HStopflag = 'true' : data.field.HStopflag = 'false';//灏嗘暟缁勫悎骞舵垚瀛楃涓�
-
+                //瀛愯〃
+                var num = [];
+                for (var i = 0; i < table.cache["mainTable"].length; i++) {
+                    if (table.cache["mainTable"][i] != "") {
+                        table.cache["mainTable"][i].LAY_TABLE_INDEX = i;
+                        num.push(table.cache["mainTable"][i])
+                    }
+                }
+                //瀛愯〃搴忓垪鍖�
+                var sSubStr = JSON.stringify(num);
 
                 var oMain = JSON.stringify(data.field)
-                var sBillModeify = oMain + ';' + linterid + ';' + user + ';' + ModRightNameAdd;
+                var sBillModeify = oMain + ';' + sSubStr + ';' + linterid + ';' + user + ';' + ModRightNameAdd;
                 if (AllowLoadData()) {
                     if (OperationType == "3") {
                         $.ajax({
@@ -561,7 +647,7 @@
                             type: "POST",
                             url: GetWEBURL() + "/Gy_Supplier/AddBill",
                             async: true,
-                            data: { "oMain": oMain },
+                            data: { "oMain": oMain + ';' + sSubStr },
                             dataType: "json",
                             success: function (data) {
                                 if (data.count == 1) {
@@ -633,6 +719,62 @@
                     }
                 });
             }
+
+
+            //#region 璁″垝琛�
+            function set_GridDelete(obj) {
+                var data = obj.data;
+                var rowIndex = $(obj.tr).attr("data-index");
+                if (obj.event === 'del') {
+                    layer.confirm('鐪熺殑鍒犻櫎琛屽悧锛�', function (index) {
+                        console.log("绱㈠紩涓�:" + rowIndex);
+                        if (rowIndex === '0') {
+                            layer.msg('棣栬鏃犳硶鍒犻櫎锛侊紒锛�');
+                        } else {
+                            var oldData = table.cache["mainTable"];
+                            oldData.splice(obj.tr.data('index'), 1)
+                            option.data = oldData;//灏嗘暟鎹粦瀹氬埌data涓�
+                            table.render(option);
+                            layer.close(index);
+                        }
+                    });
+                }
+            }
+            //#endregion
+
+            //#region 璁″垝琛ㄥ垵濮嬪寲
+            function get_InitGrid() {
+                option = {
+                    elem: '#mainTable'
+                    , toolbar: '#toolbarDemo'
+                    , totalRow: true
+                    , cellMinWidth: 120
+                    , height: 400
+                    , cols: [[
+                        { type: 'checkbox', totalRowText: '鍚堣琛�' }
+                        , { type: 'numbers', title: '搴忓彿', style: 'background-color: #f9f9f9;' }
+                        , { field: 'HPayType', title: '浠樻闃舵', edit: 'text' }     
+                        , { field: 'HPayRate', title: '浠樻姣斾緥% ', edit: 'text'}
+                        , { field: 'HPayTime', title: '缁撶畻鍛ㄦ湡', edit: 'text' }
+                        , { field: 'HPayRemark', title: '澶囨敞璇存槑', edit: 'text' }
+                        , { fixed: 'right', title: '鎿嶄綔', toolbar: '#barDemo' }
+                    ]]
+                }
+
+                var rowdata = [
+                    {
+                        "HPayType": ""
+                        , "HPayRate": "0"
+                        , "HPayTime": "0"
+                        , "HPayRemark": ""
+                    }
+                ];
+                option.data = rowdata;
+                table.render(option);
+            }
+            //#endregion
+
+
             //缂栬緫椤甸潰鍔犺浇
             function set_EditFromGrid() {
                 $.ajax({
@@ -682,6 +824,8 @@
                         form.render('select');
                         layui.form.render();//瀹炴椂娓叉煋閫変腑鍜屼笉閫変腑鐨勬牱寮�,鏈�濂芥坊鍔犺繖鍙ヨ瘽
 
+                        option.data = d.list[0]["Gy_Supplier_PayPlan"];
+                        table.render(option);
                         //table.reload(layTableId, {
                         //    data: ajaxReturnData
                         //});
@@ -695,6 +839,28 @@
             }
             //鏁版嵁楠岃瘉
             function AllowLoadData() {
+
+                var ref = /^\d+(\.\d+)?$/;          //闈炶礋鏁版鍒欒〃杈惧紡
+
+                //#region 瀛愯〃鏍¢獙
+                for (var i = 0; i < option.data.length; i++) {
+
+                    //鏁伴噺鏍煎紡鏍¢獙
+                    temp = option.data[i]["HPayRate"] + "";
+                    if (!ref.test(temp)) {
+                        layer.msg("绗�" + (i + 1) + "琛岋細浠樻姣斾緥璇疯緭鍏ュぇ浜�0鐨勬暟瀛楋紒");
+                        return false;
+                    }
+
+                    //鍗曚环鏍煎紡鏍¢獙
+                    temp = option.data[i]["HPayTime"] + "";
+                    if (!ref.test(temp)) {
+                        layer.msg("绗�" + (i + 1) + "琛岋細缁撶畻鍛ㄦ湡璇疯緭鍏ュぇ浜�0鐨勬暟瀛楋紒");
+                        return false;
+                    }
+                }
+                //#endregion
+
                 var HNumber = $("#HNumber").val();
                 if (HNumber == null || HNumber == undefined || HNumber == "") {
                     layer.msg("璇疯緭鍏ヤ緵搴斿晢缂栫爜", { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
@@ -703,6 +869,15 @@
                 var HName = $("#HName").val();
                 if (HName == null || HName == undefined || HName == "") {
                     layer.msg("璇疯緭鍏ヤ緵搴斿晢鍚嶇О", { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
+                    return false;
+                }
+                var HTaxRate = $("#HTaxRate").val();
+                if (HTaxRate == null || HTaxRate == undefined || HTaxRate == "") {
+                    layer.msg("璇疯緭鍏ュ鍊肩◣鐜�", { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
+                    return false;
+                }
+                if (!ref.test(HTaxRate)) {
+                    layer.msg("绗�" + (i + 1) + "琛岋細澧炲�肩◣鐜囪杈撳叆澶т簬0鐨勬暟瀛楋紒");
                     return false;
                 }
                 //var HAddress = $("#HAddress").val();
@@ -731,13 +906,12 @@
                     return false;
                 }
                 var reg1 = /^(\w-*\.*)+@(\w-?)+(\.\w{2,})+$/;
-                if (reg1.test($("#HEmail").val()) == false && $("#HEmail").val() != "" ) {
+                if (reg1.test($("#HEmail").val()) == false && $("#HEmail").val() != "") {
                     layer.msg("璇峰~鍐欐纭牸寮忕殑閭", { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
                     return false;
                 }
                 var reg2 = /^[1][3,4,5,7,8][0-9]{9}$/;
-                if (reg2.test($("#HMobilePhone").val()) == false && $("#HMobilePhone").val() != "")
-                {
+                if (reg2.test($("#HMobilePhone").val()) == false && $("#HMobilePhone").val() != "") {
                     layer.msg("璇峰~鍐欐纭牸寮忕殑鎵嬫満鍙�", { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
                     return false;
                 }
@@ -804,7 +978,7 @@
             //#endregion
 
         });
-            //浠ヤ笂涓簂ayui妯″潡
+                //浠ヤ笂涓簂ayui妯″潡
 
     </script>
 

--
Gitblit v1.9.1