From 4d4d959052cc0d67ce751bac84c39c372a9ac9db Mon Sep 17 00:00:00 2001
From: chenhaozhe <cgz@hz-kingdee.com>
Date: 星期二, 04 十一月 2025 09:47:46 +0800
Subject: [PATCH] 调整 条码拆码页面 新增 拆分后条码打印功能,修改条码生成规则

---
 .gitignore                                              |    2 
 WebTM/views/模治具管理/模治具管理/Gy_SplitBarCode_Deprecated.html |  505 ++++++++++++++++++++++++++++++++++++++++++
 WebTM/views/模治具管理/模治具管理/Gy_SplitBarCode.html            |  186 +++++++++++---
 3 files changed, 646 insertions(+), 47 deletions(-)

diff --git a/.gitignore b/.gitignore
index 306a809..0ea5c64 100644
--- a/.gitignore
+++ b/.gitignore
@@ -7,4 +7,4 @@
 /.vs
 /WebTM.csproj.user
 /WebTM/Properties/PublishProfiles
- 
\ No newline at end of file
+/.vscode
\ No newline at end of file
diff --git "a/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode.html" "b/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode.html"
index ba669fa..4330ae4 100644
--- "a/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode.html"
+++ "b/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode.html"
@@ -1,11 +1,13 @@
 锘�<!DOCTYPE html>
 <html>
+
 <head>
     <meta charset="utf-8" />
     <title>鎷嗗垎鏉$爜</title>
     <meta name="renderer" content="webkit">
     <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
-    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <meta name="viewport"
+        content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
     <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
     <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
     <script src="../../../layuiadmin/layui/layui.js"></script>
@@ -15,13 +17,13 @@
     <script src="../../../layuiadmin/PubCustom.js"></script>
     <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
     <style type="text/css">
-
         /*begin 姝ゆ牱寮忕敤浜庢秷闄よ鍏冪礌涓竷灞�瀹藉害涓嶅鐨勯棶棰�*/
         .layui-form-item .layui-inline {
             margin-top: 5px;
             margin-bottom: 5px;
             margin-right: 0px;
         }
+
         /*end*/
         .layui-table-cell .layui-form-checkbox[lay-skin="primary"] {
             margin-left: 35%;
@@ -32,6 +34,7 @@
         }
     </style>
 </head>
+
 <body>
     <div id="layout1" class="layui-fluid">
         <div class="layui-row layui-col-space15">
@@ -41,8 +44,10 @@
                         <div class="layui-card-header">
                             <div class="layui-input-block">
                                 <!--<button type="button" class="layui-btn" id="ToolPrint" lay-submit="" lay-filter="ToolPrint">棰勮鎵撳嵃</button>-->
-                                <button type="button" class="layui-btn" id="ToolCreate" lay-submit="" lay-filter="ToolCreate">鐢熸垚</button>
-                                <button type="button" class="layui-btn" id="ToolExit" lay-submit="" lay-filter="ToolExit">閫�鍑�</button>
+                                <button type="button" class="layui-btn" id="ToolCreate" lay-submit=""
+                                    lay-filter="ToolCreate">鐢熸垚</button>
+                                <button type="button" class="layui-btn" id="ToolExit" lay-submit=""
+                                    lay-filter="ToolExit">閫�鍑�</button>
                             </div>
                         </div>
 
@@ -55,22 +60,26 @@
                                             <div class="layui-inline">
                                                 <label class="layui-form-label">鏉$爜缂栧彿</label>
                                                 <div class="layui-input-inline">
-                                                    <input class="layui-input" name="HBarCodeNo" id="HBarCodeNo" autocomplete="off">
+                                                    <input class="layui-input" name="HBarCodeNo" id="HBarCodeNo"
+                                                        autocomplete="off">
                                                 </div>
                                             </div>
                                             <div class="layui-inline">
                                                 <label class="layui-form-label">鎷嗗垎鏉$爜鏁�</label>
                                                 <div class="layui-input-inline">
-                                                    <input class="layui-input" name="HSplitBarNum" id="HSplitBarNum" autocomplete="off">
+                                                    <input class="layui-input" name="HSplitBarNum" id="HSplitBarNum"
+                                                        autocomplete="off">
                                                 </div>
                                             </div>
                                             <div class="layui-inline">
-                                                <button type="button" class="layui-btn layui-btn-sm" id="ToolSure" lay-submit="" lay-filter="ToolSure">纭畾</button>
+                                                <button type="button" class="layui-btn layui-btn-sm" id="ToolSure"
+                                                    lay-submit="" lay-filter="ToolSure">纭畾</button>
                                             </div>
                                             <div class="layui-inline">
                                                 <label class="layui-form-label">鍒跺崟浜�</label>
                                                 <div class="layui-input-inline">
-                                                    <input class="layui-input" name="HMaker" id="HMaker" autocomplete="off">
+                                                    <input class="layui-input" name="HMaker" id="HMaker"
+                                                        autocomplete="off">
                                                 </div>
                                             </div>
                                         </div>
@@ -99,20 +108,28 @@
                         </script>
                         <script type="text/html" id="switchTpl">
                             <!-- 杩欓噷鐨� checked 鐨勭姸鎬佸彧鏄紨绀� -->
-                            <input type="checkbox" name="checkbox" value="{{d.HGiveAwayFlag}}" lay-skin="primary" lay-filter="HGiveAwayFlag" {{ d.HGiveAwayFlag == 1 ? 'checked' : '' }}>
+                        <input type="checkbox" name="checkbox" value="{{d.HGiveAwayFlag}}" lay-skin="primary"
+                            lay-filter="HGiveAwayFlag" {{ d.HGiveAwayFlag==1 ? 'checked' : '' }}>
                         </script>
                         <script type="text/html" id="switchTp2">
                             <!-- 杩欓噷鐨� checked 鐨勭姸鎬佸彧鏄紨绀� -->
-                            <input type="checkbox" name="checkbox" lay-skin="primary" lay-filter="HGiveAwayFlag1">
+                        <input type="checkbox" name="checkbox" lay-skin="primary" lay-filter="HGiveAwayFlag1">
                         </script>
+
+
                     </form>
                 </div>
             </div>
         </div>
     </div>
+    <script type="text/html" id="toolbarDemo_New">
+       <div class="layui-btn-container">
+           <button type="button" class="layui-btn layui-btn-sm" style="display:block;" id="btn-print" lay-event="btn-print"><i class="layui-icon layui-icon-print"></i>鎵撳嵃</button>
+       </div>
+    </script>
     <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>
+    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">鍒犻櫎</a>
     </script>
     <script>
         //鑾峰彇鍙傛暟
@@ -133,7 +150,7 @@
             base: '../../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
         }).extend({
             index: 'lib/index' //涓诲叆鍙fā鍧�
-        }).use(['index', 'form', 'laydate', 'table', 'element'], function () {
+        }).use(['index', 'form', 'laydate', 'table', 'element', 'soulTable'], function () {
             //#region 鍏叡鍙橀噺
             var $ = layui.$
                 , admin = layui.admin
@@ -141,14 +158,15 @@
                 , table = layui.table
                 , form = layui.form
                 , laydate = layui.laydate
-                , element = layui.element;
+                , element = layui.element
+                , soulTable = layui.soulTable;
             //鏌ヨ鏉′欢
             var option = [];
             var option_New = [];
             var sWhere = "";
             var HModName = "Gy_SplitBarCode";
             var titleData = [];//涓嶉渶瑕佹樉绀虹殑瀛楁 鍙墿灞�
-       
+
             //#endregion                       
 
             //鍏夋爣榛樿鏄剧ず鍦ㄦ潯鐮佺紪鍙蜂綅缃�
@@ -158,17 +176,17 @@
 
             //鐩戝惉褰撳墠澶勪簬鍝竴涓〉绛�
             element.on('tab(tab-TabTest)', function (data) {
-             
-            })            
+
+            })
 
             var rowdata = [{
-                "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '',"HBatchNo": ''
+                "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''
             }];
 
             //#region 杩涘叆椤甸潰鏃㈠姞杞�
             //鍒濆鍖栬〃鍗曟彃浠�
             set_InitFrom();
-                        
+
             //鍒濆鍖栬〃鏍�
             set_InitGrid();
             set_InitGrid_New();
@@ -191,12 +209,12 @@
             table.on('toolbar(mainTable)', function (obj) {
                 var checkStatus = table.checkStatus('mainTable')
                     , data = checkStatus.data;;
-                var AddRow = table.cache['mainTable'];       
+                var AddRow = table.cache['mainTable'];
 
                 var NewRow = {
                     "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''
-                };                  
-                
+                };
+
                 switch (obj.event) {
                     //鏂板涓�琛�
                     case 'btn-AddLine': btnAddLine(NewRow);
@@ -210,7 +228,7 @@
                         break;
                 }
             });
-           
+
             //琛屽唴浜嬩欢
             table.on('tool(mainTable)', function (obj) {
                 set_GridDelete(obj);   //琛屽唴鍒犻櫎
@@ -226,7 +244,7 @@
                     , field = obj.field; //寰楀埌瀛楁
                 //layer.msg('[ID: ' + data.id + '] ' + field + ' 瀛楁鏇存敼涓猴細' + value);
 
-            });       
+            });
 
             function isAllEqual(array) {
                 if (array.length > 0) {
@@ -258,9 +276,41 @@
             })
             //#endregion
 
+            //#region 澶村伐鍏锋爮浜嬩欢
+            table.on('toolbar(mainTable_New)', function (obj) {
+                switch (obj.event) {
+                    case 'btn-print':
+                        var checkStatus = table.checkStatus('mainTable_New')
+                            , data = checkStatus.data;
+                        if (checkStatus.data.length > 0) {
+                            var rows = '';
+                            for (var i = 0; i < data.length; i++) {
+                                rows += data[i].HItemID.toString() + ',';
+                            }
+                            rows = rows.substring(rows.length - 1, 0);
+                            layer.open({
+                                type: 2
+                                , area: ['40%', '80%']
+                                , title: '鎵撳嵃妯$増閫夋嫨'
+                                , shade: 0.6 //閬僵閫忔槑搴�
+                                , maxmin: false //鍏佽鍏ㄥ睆鏈�灏忓寲
+                                , anim: 0 //0-6鐨勫姩鐢诲舰寮忥紝-1涓嶅紑鍚�
+                                , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + rows + '&MyMsg=' + rows + '&Type=HGy_BarCodeBill', 'yes']
+                                , resize: false
+                            })
+                        }
+                        else {
+                            layer.msg(get_MessageError('[0000-1-016]璇烽�夋嫨鏁版嵁鎵撳嵃锛�', sessionStorage["HTranSlate"]));
+                        }
+                        break;
+                }
+            })
+            //#endregion
+
+
             //#region 纭畾鎸夐挳
             form.on('submit(ToolSure)', function (data) {//
-                var HBarCodeNo = $('#HBarCodeNo').val();//鏉$爜缂栧彿
+                var HBarCodeNo = $('#HBarCodeNo').val().trim();//鏉$爜缂栧彿
                 var HSplitBarNum = $('#HSplitBarNum').val();//鎷嗗垎鏉$爜鏁�
 
                 if (!HBarCodeNo) {
@@ -293,11 +343,11 @@
 
                 var UserName = sessionStorage["HUserName"];
                 var HBarCodeNo = $("#HBarCodeNo").val();
-                var HSplitBarNum =  $("#HSplitBarNum").val();
+                var HSplitBarNum = $("#HSplitBarNum").val();
                 var sMainSub = HBarCodeNo + ';' + HSplitBarNum + ';' + sSubStr + ';' + UserName;
                 SaveBarCodeCreate(sMainSub);
-            })         
-          
+            })
+
             //閫�鍑�
             form.on('submit(ToolExit)', function (data) {
                 if (linterid == undefined) {
@@ -324,7 +374,7 @@
             function set_InitGrid() {
                 columns = [
                     { type: 'checkbox', fixed: 'left' }
-                    , { templet: '#xuhao', title: '搴忓彿', sort: true, fixed: 'left', event: "qwe", width: 75 }                  
+                    , { templet: '#xuhao', title: '搴忓彿', sort: true, fixed: 'left', event: "qwe", width: 75 }
                     , { field: 'HBarCode', title: '鏉$爜缂栧彿', width: 200 }
                     , { field: 'HQty', title: '鏉$爜鏁伴噺', width: 200, totalRow: true }
                     , { field: 'HSplitNum', title: '鎷嗗垎鏁伴噺', width: 200, edit: 'text', totalRow: true }
@@ -348,9 +398,9 @@
                     }
                 };
                 option.data = rowdata;
-                table.render(option);              
+                table.render(option);
             }
-         
+
             //鍒濆鍖栨柊鐮佷俊鎭〃鏍�
             function set_InitGrid_New() {
                 //琛ㄥご
@@ -358,19 +408,20 @@
                     { type: 'checkbox', fixed: 'left' }
                     , { templet: '#xuhao', title: '搴忓彿', sort: true, fixed: 'left', event: "qwe", width: 75 }
                     , { field: 'HBarCode', title: '鏉$爜缂栧彿', width: 200 }
-                    , { field: 'HQty', title: '鏉$爜鏁伴噺', width: 200, totalRow: true}
-                    , { field: 'HSplitNum', title: '鎷嗗垎鏁伴噺', width: 200, edit: 'text', totalRow: true}
+                    , { field: 'HQty', title: '鏉$爜鏁伴噺', width: 200, totalRow: true }
+                    , { field: 'HSplitNum', title: '鎷嗗垎鏁伴噺', width: 200, edit: 'text', totalRow: true }
                     , { field: 'HNumber', title: '鐗╂枡浠g爜', width: 200 }
                     , { field: 'HName', title: '鐗╂枡鍚嶇О', width: 200 }
                     , { field: 'HModel', title: '瑙勬牸鍨嬪彿', width: 200 }
                     , { field: 'HBatchNo', title: '鎵瑰彿', width: 200 }
+                    , { field: 'HItemID', title: 'HItemID', width: 200, hide: true }
                     //, { fixed: 'right', title: '鎿嶄綔', toolbar: '#barDemo' }
                 ];
-               
+
                 option_New = {
                     id: 'mainTable_New'
                     , elem: '#mainTable_New'
-                    , toolbar: '#toolbarDemo_New'                    
+                    , toolbar: '#toolbarDemo_New'
                     , page: false
                     , totalRow: true
                     , cellMinWidth: 75
@@ -378,10 +429,11 @@
                     , cols: [columns]
                     , limit: 500
                     , done: function (res, curr, count) {
+                        soulTable.render(this);
                     }
                 };
                 option_New.data = rowdata;
-                table.render(option_New);         
+                table.render(option_New);
             }
 
             //鏌ヨ鏉$爜淇℃伅
@@ -404,7 +456,7 @@
                                 "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''
                             }];
 
-                            //鑾峰彇26涓ぇ鍐欏瓧姣�
+                            //鑾峰彇26涓ぇ鍐欏瓧姣�(寮冪敤)
                             const letter = [];
                             let start = 'A'.charCodeAt(0); //65
                             let last = 'Z'.charCodeAt(0);  //90
@@ -415,13 +467,37 @@
                             //var datas = result.data[0];
                             for (var i = 0; i < HSplitBarNum - 1; i++) {
                                 result.data.push(result.data[0]);//result.data[0].鏉$爜缂栧彿 = ;
-                                rowdata.push({ "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''});
-                            }                           
+                                rowdata.push({ "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": '' });
+                            }
+
+                            var maxNum = 1
+                            if (result.data[0]["HBarCodeType"] == '鍞竴鏉$爜') {
+                                // 鍞竴鏉$爜 闇�妫�鏌ユ潯鐮佷腑 浠ュ綋鍓嶆潯鐮佷负鍓嶇紑鐨勬潯鐮� 鏈夊嚑鏉�, 鍙朒EntryID 鏈�澶х殑涓�鏉�
+                                $.ajax({
+                                    url: GetWEBURL() + '/Gy_SplitBarCode/Info_Unique',
+                                    type: "GET",
+                                    async: false,
+                                    data: { "HBarCodeNo": HBarCodeNo, },
+                                    success: function (res) {
+                                        console.log(res)
+                                        if (res.count == 1) {
+                                            if (res.data.length != 0) {
+                                                maxNum = res.data[0]["HEntryID"] + 1
+                                            }
+                                        } else {
+                                            layer.close(index);
+                                            layer.alert(res.code + res.Message, { icon: 5 });
+                                            return
+                                        }
+                                    }
+                                })
+                            }
 
                             for (let i = 0; i < result.data.length; i++) {
-                                result.data[i].HBarCode = tmbh + letter[i];
-                                rowdata[i].HBarCode = tmbh + letter[i];
+                                result.data[i].HBarCode = tmbh + '-' + (maxNum + i);
+                                rowdata[i].HBarCode = tmbh + '-' + (maxNum + i);
                                 rowdata[i].HQty = result.data[0].HQty;
+                                rowdata[i].HEntryID = (maxNum + i)
                                 rowdata[i].HSplitNum = "";
                                 rowdata[i].HNumber = result.data[0].HNumber;
                                 rowdata[i].HName = result.data[0].HName;
@@ -434,7 +510,7 @@
                             });
                             element.tabChange('tab-TabTest', '2');  //璺宠浆椤电
 
-                            layer.close(index);                          
+                            layer.close(index);
                         } else {
                             layer.close(index);
                             layer.alert(result.code + result.Message, { icon: 5 });
@@ -444,10 +520,11 @@
                         layer.alert("鎺ュ彛璇锋眰澶辫触!", { icon: 5 });
                     }
                 });
-            }            
+            }
 
             //鏉$爜鐢熸垚
             function SaveBarCodeCreate(sMainSub) {
+                var loading = layer.load(0)
                 $.ajax(
                     {
                         type: "POST",
@@ -457,7 +534,23 @@
                         dataType: "json",
                         success: function (result) {
                             if (result.count == 1) { // 璇存槑楠岃瘉鎴愬姛浜嗭紝
-                                layer.msg(result.Message, { icon: 1 });       
+                                layer.msg(result.Message, { icon: 1 });
+                                var resultMap = {}
+                                for (var i = 0; i < result.data.length; i++) {
+                                    resultMap[result.data[i].HEntryID] = result.data[i]
+                                }
+
+                                var cache = table.cache['mainTable_New']
+                                for (i = 0;i<cache.length; i++) {
+                                    cache[i]["HItemID"] = resultMap[cache[i]["HEntryID"]]["HItemID"]
+                                }
+
+                                console.log("cache_New: ", cache)
+
+                                table.reload('mainTable_New', {
+                                    data: cache // 璋冪敤table.reload 閲嶆柊娓叉煋鏄剧ず鍔犺浇杩藉姞浜嗘暟鎹殑琛ㄦ牸
+                                });
+                                table.render(cache)
                             }
                             else {
                                 $('#ToolCreate').removeClass("layui-btn-disabled").attr("disabled", false);//鐢熸垚鎸夐挳鍚敤
@@ -469,15 +562,15 @@
                             layer.alert(err.Message, { icon: 5 });
                         }
                     });
-            }           
+            }
 
             //闈炵┖楠岃瘉
             function AllowLoadData(sSubStr) {
-                var Result = true;              
+                var Result = true;
                 var rows = 0; //鎷嗗垎鎬昏鏁帮紱
                 if (typeof (sSubStr) != "undefined" && typeof (sSubStr) != "") {
                     sSubStr = JSON.parse(sSubStr);
-                    for (var i = 0; i < sSubStr.length; i++) {                      
+                    for (var i = 0; i < sSubStr.length; i++) {
                         if (sSubStr[i].HSplitNum == "") {
                             layer.msg("鏄庣粏璁板綍绗�" + (i + 1) + "琛�,鎷嗗垎鏁伴噺涓嶈兘涓虹┖涓斿繀椤诲ぇ浜�0!", { icon: 5, btn: ['纭'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
                             return Result = false;
@@ -502,4 +595,5 @@
         });
     </script>
 </body>
+
 </html>
\ No newline at end of file
diff --git "a/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode_Deprecated.html" "b/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode_Deprecated.html"
new file mode 100644
index 0000000..ba669fa
--- /dev/null
+++ "b/WebTM/views/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/\346\250\241\346\262\273\345\205\267\347\256\241\347\220\206/Gy_SplitBarCode_Deprecated.html"
@@ -0,0 +1,505 @@
+锘�<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8" />
+    <title>鎷嗗垎鏉$爜</title>
+    <meta name="renderer" content="webkit">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
+    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
+    <script src="../../../layuiadmin/layui/layui.js"></script>
+    <script src="../../../layuiadmin/Scripts/json2.js"></script>
+    <script src="../../../layuiadmin/Scripts/jquery-1.4.1.js"></script>
+    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
+    <script src="../../../layuiadmin/PubCustom.js"></script>
+    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
+    <style type="text/css">
+
+        /*begin 姝ゆ牱寮忕敤浜庢秷闄よ鍏冪礌涓竷灞�瀹藉害涓嶅鐨勯棶棰�*/
+        .layui-form-item .layui-inline {
+            margin-top: 5px;
+            margin-bottom: 5px;
+            margin-right: 0px;
+        }
+        /*end*/
+        .layui-table-cell .layui-form-checkbox[lay-skin="primary"] {
+            margin-left: 35%;
+        }
+
+        .layui-input-block {
+            margin-left: 0px;
+        }
+    </style>
+</head>
+<body>
+    <div id="layout1" class="layui-fluid">
+        <div class="layui-row layui-col-space15">
+            <div class="layui-col-md12">
+                <div class="layui-card">
+                    <form id="form0" class="layui-form" lay-filter="component-form-group" action="">
+                        <div class="layui-card-header">
+                            <div class="layui-input-block">
+                                <!--<button type="button" class="layui-btn" id="ToolPrint" lay-submit="" lay-filter="ToolPrint">棰勮鎵撳嵃</button>-->
+                                <button type="button" class="layui-btn" id="ToolCreate" lay-submit="" lay-filter="ToolCreate">鐢熸垚</button>
+                                <button type="button" class="layui-btn" id="ToolExit" lay-submit="" lay-filter="ToolExit">閫�鍑�</button>
+                            </div>
+                        </div>
+
+                        <div class="layui-card-body">
+                            <div class="layui-tab layui-tab-brief" lay-filter="docDemoTabBrief">
+                                <!--<h1 style="text-align:center;"><b>鏉$爜鐢熸垚</b></h1>-->
+                                <div class="layui-tab-content">
+                                    <div class="layui-tab-item layui-show">
+                                        <div class="layui-form-item">
+                                            <div class="layui-inline">
+                                                <label class="layui-form-label">鏉$爜缂栧彿</label>
+                                                <div class="layui-input-inline">
+                                                    <input class="layui-input" name="HBarCodeNo" id="HBarCodeNo" autocomplete="off">
+                                                </div>
+                                            </div>
+                                            <div class="layui-inline">
+                                                <label class="layui-form-label">鎷嗗垎鏉$爜鏁�</label>
+                                                <div class="layui-input-inline">
+                                                    <input class="layui-input" name="HSplitBarNum" id="HSplitBarNum" autocomplete="off">
+                                                </div>
+                                            </div>
+                                            <div class="layui-inline">
+                                                <button type="button" class="layui-btn layui-btn-sm" id="ToolSure" lay-submit="" lay-filter="ToolSure">纭畾</button>
+                                            </div>
+                                            <div class="layui-inline">
+                                                <label class="layui-form-label">鍒跺崟浜�</label>
+                                                <div class="layui-input-inline">
+                                                    <input class="layui-input" name="HMaker" id="HMaker" autocomplete="off">
+                                                </div>
+                                            </div>
+                                        </div>
+                                    </div>
+                                </div>
+                            </div>
+                        </div>
+
+                        <div class="layui-tab layui-tab-card" lay-filter="tab-TabTest">
+                            <ul class="layui-tab-title">
+                                <li lay-id="1" class="layui-this">鏉$爜淇℃伅</li>
+                                <li lay-id="2">鏂扮爜淇℃伅</li>
+                            </ul>
+                            <div class="layui-tab-content">
+                                <div class="layui-tab-item layui-show">
+                                    <table class="layui-hide" id="mainTable" lay-filter="mainTable"></table>
+                                </div>
+                                <div class="layui-tab-item">
+                                    <table class="layui-hide" id="mainTable_New" lay-filter="mainTable_New"></table>
+                                </div>
+                            </div>
+                        </div>
+
+                        <script type="text/html" id="xuhao">
+                            {{d.LAY_TABLE_INDEX+1}}
+                        </script>
+                        <script type="text/html" id="switchTpl">
+                            <!-- 杩欓噷鐨� checked 鐨勭姸鎬佸彧鏄紨绀� -->
+                            <input type="checkbox" name="checkbox" value="{{d.HGiveAwayFlag}}" lay-skin="primary" lay-filter="HGiveAwayFlag" {{ d.HGiveAwayFlag == 1 ? 'checked' : '' }}>
+                        </script>
+                        <script type="text/html" id="switchTp2">
+                            <!-- 杩欓噷鐨� checked 鐨勭姸鎬佸彧鏄紨绀� -->
+                            <input type="checkbox" name="checkbox" lay-skin="primary" lay-filter="HGiveAwayFlag1">
+                        </script>
+                    </form>
+                </div>
+            </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>
+        //鑾峰彇鍙傛暟
+        var params = get_UrlVars();
+        if (typeof (params[params[0]]) == "undefined") {
+            var OperationType = 1;//鎿嶄綔绫诲瀷
+            var closeType = 2;  //鍏抽棴绫诲瀷
+        } else {
+            debugger;
+            var OperationType = params[params[0]];//鎿嶄綔绫诲瀷
+            var linterid = params[params[1]];//婧愬崟id
+            var HSouceBillType = params[params[2]];//婧愬崟绫诲瀷
+            var closeType = params[params[3]];  //鍏抽棴绫诲瀷
+        }
+
+
+        layui.config({
+            base: '../../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
+        }).extend({
+            index: 'lib/index' //涓诲叆鍙fā鍧�
+        }).use(['index', 'form', 'laydate', 'table', 'element'], function () {
+            //#region 鍏叡鍙橀噺
+            var $ = layui.$
+                , admin = layui.admin
+                , layer = layui.layer
+                , table = layui.table
+                , form = layui.form
+                , laydate = layui.laydate
+                , element = layui.element;
+            //鏌ヨ鏉′欢
+            var option = [];
+            var option_New = [];
+            var sWhere = "";
+            var HModName = "Gy_SplitBarCode";
+            var titleData = [];//涓嶉渶瑕佹樉绀虹殑瀛楁 鍙墿灞�
+       
+            //#endregion                       
+
+            //鍏夋爣榛樿鏄剧ず鍦ㄦ潯鐮佺紪鍙蜂綅缃�
+            $("#HBarCodeNo").focus();
+            //鑾峰彇鍒跺崟浜轰俊鎭�
+            $("#HMaker").val(sessionStorage["HUserName"]);
+
+            //鐩戝惉褰撳墠澶勪簬鍝竴涓〉绛�
+            element.on('tab(tab-TabTest)', function (data) {
+             
+            })            
+
+            var rowdata = [{
+                "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '',"HBatchNo": ''
+            }];
+
+            //#region 杩涘叆椤甸潰鏃㈠姞杞�
+            //鍒濆鍖栬〃鍗曟彃浠�
+            set_InitFrom();
+                        
+            //鍒濆鍖栬〃鏍�
+            set_InitGrid();
+            set_InitGrid_New();
+
+            //鍒ゆ柇鎿嶄綔绫诲瀷
+            if (OperationType == 1) {//鏃犳簮鏂板
+                //鍒濆鍩烘湰淇℃伅璧嬪��
+                //set_AddFNew();              
+            }
+            else if (OperationType == 3) {//缂栬緫
+                set_EditFromGrid(linterid);
+            }
+            else {
+                layer.alert("鏈煡鎿嶄綔绫诲瀷锛�", { icon: 5 });
+            }
+            //#endregion                     
+
+            //#region 鐐瑰嚮浜嬩欢锛屽寘鎷琽n鍜宖orm浜嬩欢
+            //澶村伐鍏锋爮
+            table.on('toolbar(mainTable)', function (obj) {
+                var checkStatus = table.checkStatus('mainTable')
+                    , data = checkStatus.data;;
+                var AddRow = table.cache['mainTable'];       
+
+                var NewRow = {
+                    "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''
+                };                  
+                
+                switch (obj.event) {
+                    //鏂板涓�琛�
+                    case 'btn-AddLine': btnAddLine(NewRow);
+                        break;
+                    //澶嶅埗涓�琛�
+                    case 'btn-CopyLine': btnCopyLine(data);
+                        break;
+                    //鍒楄缃�
+                    case 'set_HideColumn':
+                        get_HideColumn(0);
+                        break;
+                }
+            });
+           
+            //琛屽唴浜嬩欢
+            table.on('tool(mainTable)', function (obj) {
+                set_GridDelete(obj);   //琛屽唴鍒犻櫎
+                set_GridCellCheck(obj); //琛屽唴蹇嵎閿瓫閫�            
+            });
+
+            //鐩戝惉鍗曞厓鏍肩紪杈�  鍗曞厓鏍肩紪杈戝悗 鍙樻洿
+            table.on('edit(mainTable)', function (obj) {
+                // 鍗曞厓鏍肩紪杈戜箣鍓嶇殑鍊�
+                var oldText = $(this).prev().text();
+                var value = obj.value //寰楀埌淇敼鍚庣殑鍊�
+                    , data = obj.data //寰楀埌鎵�鍦ㄨ鎵�鏈夐敭鍊�
+                    , field = obj.field; //寰楀埌瀛楁
+                //layer.msg('[ID: ' + data.id + '] ' + field + ' 瀛楁鏇存敼涓猴細' + value);
+
+            });       
+
+            function isAllEqual(array) {
+                if (array.length > 0) {
+                    return !array.some(function (value, index) {
+                        return value !== array[0];
+                    });
+                } else {
+                    return true;
+                }
+            }
+            //#region 鐐瑰嚮琛岄�変腑楂樹寒
+            table.on('row(mainTable)', function (obj) {
+                //閫変腑琛屾敼鍙橀鑹�
+                var flag = !obj.tr.find(':checkbox:first').prop('checked');
+                obj.tr.find(':checkbox').prop('checked', flag);
+                if (flag) {
+                    obj.tr.find('.layui-form-checkbox').addClass('layui-form-checked');  //璁剧疆澶嶉�夋閫変腑鏍峰紡
+                    $(obj.tr.selector).attr({ "style": "background:#ceedfa;color:black" });//鏀瑰彉褰撳墠tr鑳屾櫙棰滆壊鍜屽瓧浣撻鑹�
+                } else {
+                    obj.tr.find('.layui-form-checkbox').removeClass('layui-form-checked');//鍙栨秷澶嶉�夋閫変腑鏍峰紡
+                    $(obj.tr.selector).attr({ "style": "background:" });//鍙栨秷褰撳墠tr棰滆壊
+                }
+                //mainTable 涓鸿〃鏍糏D   娉ㄦ剰姝ゅ濡傛灉ID涓嶆纭皢瀵艰嚧浣犲湪鐩戝惉澶嶉�夋鏃惰幏鍙栦笉鍒颁綘閫夋嫨鐨勬暟鎹紝鍓嶉潰鐨勫彧鏄坊鍔犳垨鍒犻櫎閫変腑鏈�変腑鏍峰紡浠ュ強璁剧疆鑳屾櫙鑹诧紝瀛椾綋棰滆壊
+                layui.each(table.cache.mainTable, function (i, l) {
+                    if (obj.tr.index() == l.LAY_TABLE_INDEX) {
+                        l.LAY_CHECKED = flag;
+                    }
+                });
+            })
+            //#endregion
+
+            //#region 纭畾鎸夐挳
+            form.on('submit(ToolSure)', function (data) {//
+                var HBarCodeNo = $('#HBarCodeNo').val();//鏉$爜缂栧彿
+                var HSplitBarNum = $('#HSplitBarNum').val();//鎷嗗垎鏉$爜鏁�
+
+                if (!HBarCodeNo) {
+                    layer.msg("鏉$爜缂栧彿涓嶈兘涓虹┖锛�")
+                    return;
+                }
+                if (!HSplitBarNum || HSplitBarNum > 10) {
+                    layer.msg("鎷嗗垎鏉$爜鏁颁笉鑳戒负绌�,涓斾笉鑳藉ぇ浜�10锛�")
+                    return;
+                }
+                get_BarCodeInfo(HBarCodeNo, HSplitBarNum);
+            });
+            //#endregion
+
+            //鎵撳嵃
+            form.on('submit(ToolPrint)', function (data) {
+                get_PrintReport();
+            })
+
+            //鏉$爜鐢熸垚
+            form.on('submit(ToolCreate)', function (data) {
+                $('#ToolCreate').addClass("layui-btn-disabled").attr("disabled", true);//鐢熸垚鎸夐挳绂佺敤
+                var sSubStr = JSON.stringify(table.cache['mainTable_New']);
+                //鏁伴噺鎺у埗
+                if (!AllowLoadData(sSubStr))//鏁版嵁楠岃瘉
+                {
+                    $('#ToolCreate').removeClass("layui-btn-disabled").attr("disabled", false);//鐢熸垚鎸夐挳鍚敤
+                    return false;
+                }
+
+                var UserName = sessionStorage["HUserName"];
+                var HBarCodeNo = $("#HBarCodeNo").val();
+                var HSplitBarNum =  $("#HSplitBarNum").val();
+                var sMainSub = HBarCodeNo + ';' + HSplitBarNum + ';' + sSubStr + ';' + UserName;
+                SaveBarCodeCreate(sMainSub);
+            })         
+          
+            //閫�鍑�
+            form.on('submit(ToolExit)', function (data) {
+                if (linterid == undefined) {
+                    //鍏抽棴椤电
+                    Pub_Close(2);
+                }
+                else {
+                    //鍏抽棴椤电
+                    Pub_Close(1);
+                }
+            });
+
+            //#endregion
+
+            //#region 姝ら〉闈㈡墍鏈夋柟娉�
+            //鍒濆鍖栬〃鍗曟彃浠�
+            function set_InitFrom() {
+                laydate.render({
+                    elem: '#HDate'
+                });
+            }
+
+            //鍒濆鍖栨潯鐮佷俊鎭〃鏍�
+            function set_InitGrid() {
+                columns = [
+                    { type: 'checkbox', fixed: 'left' }
+                    , { templet: '#xuhao', title: '搴忓彿', sort: true, fixed: 'left', event: "qwe", width: 75 }                  
+                    , { field: 'HBarCode', title: '鏉$爜缂栧彿', width: 200 }
+                    , { field: 'HQty', title: '鏉$爜鏁伴噺', width: 200, totalRow: true }
+                    , { field: 'HSplitNum', title: '鎷嗗垎鏁伴噺', width: 200, edit: 'text', totalRow: true }
+                    , { field: 'HNumber', title: '鐗╂枡浠g爜', width: 200 }
+                    , { field: 'HName', title: '鐗╂枡鍚嶇О', width: 200 }
+                    , { field: 'HModel', title: '瑙勬牸鍨嬪彿', width: 200 }
+                    , { field: 'HBatchNo', title: '鎵瑰彿', width: 200 }
+                    //, { fixed: 'right', title: '鎿嶄綔', toolbar: '#barDemo' }
+                ];
+                option = {
+                    id: 'mainTable'
+                    , elem: '#mainTable'
+                    , toolbar: '#toolbarDemo'
+                    , page: false
+                    , totalRow: true
+                    , cellMinWidth: 75
+                    , height: 'full-255'
+                    , cols: [columns]
+                    , limit: 500 //姣忛〉榛樿鏄剧ず鐨勬暟閲�
+                    , done: function (res, curr, count) {
+                    }
+                };
+                option.data = rowdata;
+                table.render(option);              
+            }
+         
+            //鍒濆鍖栨柊鐮佷俊鎭〃鏍�
+            function set_InitGrid_New() {
+                //琛ㄥご
+                columns = [
+                    { type: 'checkbox', fixed: 'left' }
+                    , { templet: '#xuhao', title: '搴忓彿', sort: true, fixed: 'left', event: "qwe", width: 75 }
+                    , { field: 'HBarCode', title: '鏉$爜缂栧彿', width: 200 }
+                    , { field: 'HQty', title: '鏉$爜鏁伴噺', width: 200, totalRow: true}
+                    , { field: 'HSplitNum', title: '鎷嗗垎鏁伴噺', width: 200, edit: 'text', totalRow: true}
+                    , { field: 'HNumber', title: '鐗╂枡浠g爜', width: 200 }
+                    , { field: 'HName', title: '鐗╂枡鍚嶇О', width: 200 }
+                    , { field: 'HModel', title: '瑙勬牸鍨嬪彿', width: 200 }
+                    , { field: 'HBatchNo', title: '鎵瑰彿', width: 200 }
+                    //, { fixed: 'right', title: '鎿嶄綔', toolbar: '#barDemo' }
+                ];
+               
+                option_New = {
+                    id: 'mainTable_New'
+                    , elem: '#mainTable_New'
+                    , toolbar: '#toolbarDemo_New'                    
+                    , page: false
+                    , totalRow: true
+                    , cellMinWidth: 75
+                    , height: 'full-255'
+                    , cols: [columns]
+                    , limit: 500
+                    , done: function (res, curr, count) {
+                    }
+                };
+                option_New.data = rowdata;
+                table.render(option_New);         
+            }
+
+            //鏌ヨ鏉$爜淇℃伅
+            function get_BarCodeInfo(HBarCodeNo, HSplitBarNum) {
+                var index = layer.load(0);
+                //杩涘叆椤甸潰鏄剧ず鐨勭紦瀛樺垪琛�
+                $.ajax({
+                    //url: "http://61.130.49.162:9090/WMSAPI///Web/GetMAXNum",
+                    url: GetWEBURL() + '/Gy_SplitBarCode/Info',
+                    type: "GET",
+                    data: { "HBarCodeNo": HBarCodeNo, "HSplitBarNum": HSplitBarNum },
+                    success: function (result) {
+                        if (result.count == 1) {
+                            //鏍规嵁鎷嗗垎琛屾暟娣诲姞琛岋紝鍥犱负杩斿洖缁撴灉鏃惰嚜甯︿簡涓�琛屾暟鎹紝鎵�浠ュ湪鎷嗗垎琛屾暟鐨勫熀纭�涓婂噺鍘�1
+                            table.reload('mainTable', {
+                                data: result.data // 璋冪敤table.reload 閲嶆柊娓叉煋鏄剧ず鍔犺浇杩藉姞浜嗘暟鎹殑琛ㄦ牸
+                            });
+
+                            rowdata = [{
+                                "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''
+                            }];
+
+                            //鑾峰彇26涓ぇ鍐欏瓧姣�
+                            const letter = [];
+                            let start = 'A'.charCodeAt(0); //65
+                            let last = 'Z'.charCodeAt(0);  //90
+                            for (start; start <= last; start++) {
+                                letter.push(String.fromCharCode(start));
+                            };
+                            var tmbh = result.data[0].HBarCode;//鏉$爜缂栧彿
+                            //var datas = result.data[0];
+                            for (var i = 0; i < HSplitBarNum - 1; i++) {
+                                result.data.push(result.data[0]);//result.data[0].鏉$爜缂栧彿 = ;
+                                rowdata.push({ "HBarCode": '', "HQty": '', "HSplitNum": '', "HNumber": '', "HName": '', "HModel": '', "HBatchNo": ''});
+                            }                           
+
+                            for (let i = 0; i < result.data.length; i++) {
+                                result.data[i].HBarCode = tmbh + letter[i];
+                                rowdata[i].HBarCode = tmbh + letter[i];
+                                rowdata[i].HQty = result.data[0].HQty;
+                                rowdata[i].HSplitNum = "";
+                                rowdata[i].HNumber = result.data[0].HNumber;
+                                rowdata[i].HName = result.data[0].HName;
+                                rowdata[i].HModel = result.data[0].HModel;
+                                rowdata[i].HBatchNo = result.data[0].HBatchNo;
+                            }
+
+                            table.reload('mainTable_New', {
+                                data: rowdata // 璋冪敤table.reload 閲嶆柊娓叉煋鏄剧ず鍔犺浇杩藉姞浜嗘暟鎹殑琛ㄦ牸
+                            });
+                            element.tabChange('tab-TabTest', '2');  //璺宠浆椤电
+
+                            layer.close(index);                          
+                        } else {
+                            layer.close(index);
+                            layer.alert(result.code + result.Message, { icon: 5 });
+                        }
+                    }, error: function () {
+                        layer.close(index);
+                        layer.alert("鎺ュ彛璇锋眰澶辫触!", { icon: 5 });
+                    }
+                });
+            }            
+
+            //鏉$爜鐢熸垚
+            function SaveBarCodeCreate(sMainSub) {
+                $.ajax(
+                    {
+                        type: "POST",
+                        url: GetWEBURL() + "/Sc_BarCode/Save_SplitBarCode", //鏂规硶鎵�鍦ㄩ〉闈㈠拰鏂规硶鍚�
+                        async: true,
+                        data: { "msg": sMainSub },
+                        dataType: "json",
+                        success: function (result) {
+                            if (result.count == 1) { // 璇存槑楠岃瘉鎴愬姛浜嗭紝
+                                layer.msg(result.Message, { icon: 1 });       
+                            }
+                            else {
+                                $('#ToolCreate').removeClass("layui-btn-disabled").attr("disabled", false);//鐢熸垚鎸夐挳鍚敤
+                                layer.alert(result.Message, { icon: 5 });
+                            }
+                            layer.closeAll("loading");
+                        },
+                        error: function (err) {
+                            layer.alert(err.Message, { icon: 5 });
+                        }
+                    });
+            }           
+
+            //闈炵┖楠岃瘉
+            function AllowLoadData(sSubStr) {
+                var Result = true;              
+                var rows = 0; //鎷嗗垎鎬昏鏁帮紱
+                if (typeof (sSubStr) != "undefined" && typeof (sSubStr) != "") {
+                    sSubStr = JSON.parse(sSubStr);
+                    for (var i = 0; i < sSubStr.length; i++) {                      
+                        if (sSubStr[i].HSplitNum == "") {
+                            layer.msg("鏄庣粏璁板綍绗�" + (i + 1) + "琛�,鎷嗗垎鏁伴噺涓嶈兘涓虹┖涓斿繀椤诲ぇ浜�0!", { icon: 5, btn: ['纭'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
+                            return Result = false;
+                        }
+
+                        rows += Number(sSubStr[i].HSplitNum);
+                    }
+                    if (rows > sSubStr[0].HQty) {
+                        layer.msg("鎷嗗垎鏁伴噺涔嬪拰蹇呴』灏忎簬鏉$爜鏁伴噺锛�", { icon: 5, btn: ['纭'], time: 2000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
+                        return Result = false;
+                    }
+                }
+                else {
+                    return Result = true;
+                }
+                return Result;
+            }
+
+            //#endregion
+
+
+        });
+    </script>
+</body>
+</html>
\ No newline at end of file

--
Gitblit v1.9.1