From 65454d1517c085417fe0277805e02da6d5ba8cd9 Mon Sep 17 00:00:00 2001
From: wangyi <2946747746@qq.com>
Date: 星期六, 28 二月 2026 10:42:51 +0800
Subject: [PATCH] 增加 期初在产品表

---
 WebTM/views/成本管理/期初在产品表/Gy_WIPBal_Excel.html |  275 +++++++++++++++++++++
 WebTM/views/成本管理/期初在产品表/Kf_WIPBal.html       |  463 +++++++++++++++++++++++++++++++++++
 WebTM/WebTM.csproj                           |    2 
 3 files changed, 740 insertions(+), 0 deletions(-)

diff --git a/WebTM/WebTM.csproj b/WebTM/WebTM.csproj
index cd93407..a452d93 100644
--- a/WebTM/WebTM.csproj
+++ b/WebTM/WebTM.csproj
@@ -665,6 +665,8 @@
     <Content Include="views\搴旀敹绠$悊\鎶ヨ〃鍒嗘瀽\YS_CusShouldIncomeMaterEntryReport.html" />
     <Content Include="views\鎴愭湰绠$悊\鎴愭湰璐圭敤鍗昞CB_ItemMoneyBillList.html" />
     <Content Include="views\鎴愭湰绠$悊\鎴愭湰璐圭敤鍗昞CB_ItemMoneyBillEdit.html" />
+    <Content Include="views\鎴愭湰绠$悊\鏈熷垵鍦ㄤ骇鍝佽〃\Gy_WIPBal_Excel.html" />
+    <Content Include="views\鎴愭湰绠$悊\鏈熷垵鍦ㄤ骇鍝佽〃\Kf_WIPBal.html" />
     <Content Include="views\鎴愭湰绠$悊\璐圭敤鍗曞紩鍏CB_CostProjectImport.html" />
     <Content Include="views\鎴愭湰绠$悊\璐圭敤鍗曞紩鍏CB_CostAccounting.html" />
     <Content Include="views\鎴愭湰绠$悊\璐圭敤鍗曞紩鍏CB_ItemMoneyBillImport.html" />
diff --git "a/WebTM/views/\346\210\220\346\234\254\347\256\241\347\220\206/\346\234\237\345\210\235\345\234\250\344\272\247\345\223\201\350\241\250/Gy_WIPBal_Excel.html" "b/WebTM/views/\346\210\220\346\234\254\347\256\241\347\220\206/\346\234\237\345\210\235\345\234\250\344\272\247\345\223\201\350\241\250/Gy_WIPBal_Excel.html"
new file mode 100644
index 0000000..e22448e
--- /dev/null
+++ "b/WebTM/views/\346\210\220\346\234\254\347\256\241\347\220\206/\346\234\237\345\210\235\345\234\250\344\272\247\345\223\201\350\241\250/Gy_WIPBal_Excel.html"
@@ -0,0 +1,275 @@
+锘�<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8" />
+    <title>鍣ㄥ叿涓绘。瀵煎叆</title>
+    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
+    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></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>
+    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
+    <script src="../../../layuiadmin/PubCustom.js"></script>
+</head>
+<body>
+    <div class="layui-fluid" style="padding: 0;">
+        <div class="layui-card" style="padding: 2px;background-color: #efefef;">
+            <div class="layui-card-body" style="padding: 1px;">
+                <form class="layui-form" action="" lay-filter="formData" style="background-color:white;">
+                    <div style="padding: 10px; ">
+                            <div class="layui-inline" style="margin-left: 20px;">
+                                <label class="layui-form-label">骞存湀</label>
+                                <div class="layui-input-inline">
+                                    <input type="text" class="layui-input" id="ID-laydate-type-month" placeholder="閫夋嫨骞存湀" readonly>
+                                </div>
+                            </div>
+                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="btnSave" id="btnSave">瀵煎叆鏁版嵁</button>
+                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="Cancel" id="Cancel">閫�鍑�</button>
+                        <button class="layui-btn layui-btn-normal" style="margin-left: 0px" type="button" lay-submit="" lay-filter="UpLoad" id="UpLoad">鏂囦欢涓婁紶</button>
+
+                    </div>
+                    <div class="layui-tab" lay-filter="tab-POStockInBill">
+                        <div class="layui-tab-content">
+                            <!--鍩烘湰淇℃伅-->
+                            <div class="layui-tab-item layui-show">
+                                <div class="layui-form-item" style="padding-top: 10px;">
+
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+
+                    <table class="" id="mainTable" lay-filter="mainTable"></table>
+                    <script type="text/html" id="toolbarDemo">
+                        <div class="layui-btn-container">
+                        </div>
+                    </script>
+                </form>
+            </div>
+        </div>
+    </div>
+</body>
+</html>
+<script type="text/html" id="barDemo">
+    <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">鍒犻櫎</a>
+</script>
+<script>
+
+    layui.config({
+        base: '../../../layuiadmin/' //闈欐�佽祫婧愭墍鍦ㄨ矾寰�
+    }).extend({
+        index: 'lib/index' //涓诲叆鍙fā鍧�
+    }).use(['tree', 'index', 'form', 'table', 'element', 'laypage', 'laydate', 'util', 'upload'], function () {
+        //#region 鍏敤鍙橀噺
+        var $ = layui.$
+            , admin = layui.admin
+            , layer = layui.layer
+            , table = layui.table
+            , form = layui.form
+            , element = layui.element
+            , laypage = layui.laypage
+            , laydate = layui.laydate
+            , util = layui.util
+            , tree = layui.tree
+            , util = layui.util
+            , upload = layui.upload
+
+
+        var option = [];
+        //#endregion
+
+        //#region 杩涘叆椤甸潰鍗冲姞杞�
+
+        //鍒濆鍖栫晫闈�
+        set_ClearBill();
+
+
+   
+
+        laydate.render({
+            elem: '#ID-laydate-type-month',
+            type: 'month',
+            format: 'yyyy-MM',
+            value: new Date(),
+            done: function (value, date) {
+                if (!option.data || option.data.length === 0) {
+                    layer.msg('璇峰厛瀵煎叆鏁版嵁锛�', { icon: 0 });
+                    return;
+                }
+                var parts = value.split('-');
+                for (var i = 0; i < option.data.length; i++) {
+                    option.data[i]['骞�'] = parts[0];
+                    option.data[i]['鏈�'] = parts[1];
+                }
+                table.render(option);
+                layer.msg('骞存湀宸叉洿鏂颁负锛�' + value, { icon: 1, time: 1500 });
+            }
+        });
+        //#endregion
+
+        //#region 瑙﹀彂浜嬩欢锛氬寘鎷琭orm.on(){}鏍煎紡鐨勬墍鏈夌偣鍑讳簨浠躲�侀�夋嫨浜嬩欢绛�
+
+        //鏂囦欢涓婁紶
+        upload.render({
+            elem: '#UpLoad',
+            url: GetWEBURL() + '/Kf_WIPBal/Kf_WIPBal_Excel',
+            contentType: 'application/json',
+            exts: 'xls|xlsx', //鍏佽涓婁紶鐨勭被鍨�
+            done: function (data1) {
+                if (data1.count == 1) {
+                    option.data = data1.data;
+                    table.render(option);
+                } else {
+                    layer.alert(data1.code + data1.Message, { icon: 5 });
+                }
+            },
+            error: function (err) {
+                debugger
+                layer.alert('瀵煎叆鍑虹幇寮傚父', { icon: 2 });
+            }
+        });
+
+        //琛屽唴浜嬩欢
+        table.on('tool(mainTable)', function (obj) {
+            set_GridDelete(obj);   //琛屽唴鍒犻櫎
+        });
+
+        //瀵煎叆  淇濆瓨鏁版嵁
+        form.on('submit(btnSave)', function (data) {
+            if (table.cache["mainTable"] != null) {
+                set_AddNew(data);
+            }
+            else {
+                layer.msg("鏃犳暟鎹�,璇峰厛瀵煎叆鏁版嵁!");
+            }
+        })
+
+
+        //閫�鍑�
+        form.on('submit(Cancel)', function () {
+            Pub_Close(1);
+        })
+
+
+        //#endregion
+
+        //#region 姝ら〉闈㈡墍鏈夌殑鏂规硶
+
+        //#region 鍒濆鍖栫晫闈�
+        function set_ClearBill() {
+            //鍒濆鍖栬〃鏍�
+            set_InitGrid();
+        }
+        //#endregion
+
+
+        //鍒濆鍖栬〃鏍�
+        function set_InitGrid() {
+            option = {
+                elem: '#mainTable'
+                , toolbar: '#toolbarDemo'
+                , height: 'full-120'
+                , page: true
+                , cellMinWidth: 90
+                , limit: 50
+                , limits: [50, 500, 5000, 20000]
+                , loading: false
+                , cols: [[
+                    { type: 'checkbox', fixed: 'left' }
+                    , { field: '骞�', title: '骞�', width: 120 }
+                    , { field: '鏈�', title: '鏈�', width: 120 }
+                    , { field: 'HWorkShopID', title: 'HWorkShopID', width: 120, hide: true }
+                    , { field: '杞﹂棿浠g爜', title: '杞﹂棿浠g爜', width: 120 }
+                    , { field: '杞﹂棿鍚嶇О', title: '杞﹂棿鍚嶇О', width: 120 }
+                    , { field: 'HCostObjID', title: 'HCostObjID', width: 120, hide: true }
+                    , { field: '鎴愭湰瀵硅薄浠g爜', title: '鎴愭湰瀵硅薄浠g爜', width: 120 }
+                    , { field: '鎴愭湰瀵硅薄鍚嶇О', title: '鎴愭湰瀵硅薄鍚嶇О', width: 120 }
+                    , { field: 'HOrgID', title: 'HOrgID', width: 120,hide:true }
+                    , { field: '缁勭粐浠g爜', title: '缁勭粐浠g爜', width: 120}
+                    , { field: '缁勭粐鍚嶇О', title: '缁勭粐鍚嶇О', width: 120 }
+                    , { field: 'HCostItemID', title: 'HCostItemID', width: 120, hide: true }
+                    , { field: '鎴愭湰椤圭洰浠g爜', title: '鎴愭湰椤圭洰浠g爜', width: 120 }
+                    , { field: '鎴愭湰椤圭洰鍚嶇О', title: '鎴愭湰椤圭洰鍚嶇О', width: 120 }
+                    , { field: 'HMaterID', title: 'HMaterID', width: 120, hide: true }
+                    , { field: '鐗╂枡浠g爜', title: '鐗╂枡浠g爜', width: 120 }
+                    , { field: '鐗╂枡鍚嶇О', title: '鐗╂枡鍚嶇О', width: 120 }
+                    , { field: 'HProcID', title: 'HProcID', width: 120, hide: true }
+                    , { field: '宸ュ簭浠g爜', title: '宸ュ簭浠g爜', width: 120 }
+                    , { field: '宸ュ簭鍚嶇О', title: '宸ュ簭鍚嶇О', width: 120 }
+                    , { field: '鏈熷垵閲戦', title: '鏈熷垵閲戦', width: 120}
+                    , { field: '鏈熷垵鏁伴噺', title: '鏈熷垵鏁伴噺', width: 120}
+                    , { fixed: 'right', title: '鎿嶄綔', toolbar: '#barDemo' }
+                ]]
+            };
+
+            //娓叉煋椤甸潰
+            table.render(option);
+            //DisPlay_HideColumn();
+        }
+
+        //琛屽唴鍒犻櫎
+        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 = option.data;
+                        oldData.splice(obj.tr.data('index'), 1)
+                        option.data = oldData;//灏嗘暟鎹粦瀹氬埌data涓�
+                        table.render(option);
+                        layer.close(index);
+                    }
+                });
+            }
+        }
+
+
+        //瀵煎叆(淇濆瓨)
+        function set_AddNew(data) {
+            var num = [];
+            for (var i = 0; i < option.data.length; i++) {
+                if (option.data[i] != "") {
+                    num.push(option.data[i])
+                }
+            }
+
+            var sSubStr = JSON.stringify(num);
+            var sMainSub = sSubStr + '&鍜�' + sessionStorage["HUserName"];
+            var index = layer.load();
+
+            $.ajax({
+                type: "POST",
+                url: GetWEBURL() + "/Kf_WIPBal/Kf_WIPBal_btnSave",
+                async: true,
+                data: { "sMainSub": sMainSub },
+                dataType: "json",
+                success: function (data) {
+                    if (data.count == 1) {
+                        layer.close(index);
+                        layer.msg(data.Message);
+                        option.data = null;
+                        table.cache["mainTable"] = null;
+                        table.render(option);
+                    }
+                    else {
+                        layer.close(index);
+                        layer.msg(data.Message, { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
+                    }
+                },
+                error: function (err) {
+                    layer.close(index);
+                    layer.msg("閿欒:" + err, { icon: 5, btn: ['纭'], time: 100000, offset: 't', skin: 'layui-layer-lan', title: "娓╅Θ鎻愮ず" });
+                }
+            });
+        }
+
+        //#endregion
+
+    });
+
+</script>
\ No newline at end of file
diff --git "a/WebTM/views/\346\210\220\346\234\254\347\256\241\347\220\206/\346\234\237\345\210\235\345\234\250\344\272\247\345\223\201\350\241\250/Kf_WIPBal.html" "b/WebTM/views/\346\210\220\346\234\254\347\256\241\347\220\206/\346\234\237\345\210\235\345\234\250\344\272\247\345\223\201\350\241\250/Kf_WIPBal.html"
new file mode 100644
index 0000000..78fb115
--- /dev/null
+++ "b/WebTM/views/\346\210\220\346\234\254\347\256\241\347\220\206/\346\234\237\345\210\235\345\234\250\344\272\247\345\223\201\350\241\250/Kf_WIPBal.html"
@@ -0,0 +1,463 @@
+锘�<!DOCTYPE html>
+<html xmlns="http://www.w3.org/1999/xhtml">
+<head>
+    <meta http-equiv="Content-Type" content="text/html; 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, maximum-scale=1">
+    <!-- 娉ㄦ剰锛氭墍鏈夊紩鐢ㄨ矾寰勪繚鎸佷笌鍘熼」鐩竴鑷达紝纭繚鍔熻兘瀹屾暣 -->
+    <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>
+    <link rel="stylesheet" href="../../../layuiadmin/layui/css/layui.css" media="all">
+    <link rel="stylesheet" href="../../../layuiadmin/style/admin.css" media="all">
+    <link rel="stylesheet" href="../../../layuiadmin/ext/soulTable.css" media="all">
+    <script src="../../../layuiadmin/layui/layui.js"></script>
+    <script src="../../../layuiadmin/SetColumn.js"></script>
+</head>
+<body>
+    <div class="layui-fluid">
+        <div class="layui-col-md12">
+            <div class="layui-card">
+                <div class="layui-card-body">
+                    <form class="layui-form" action="" lay-filter="component-form-group" autocomplete="off">
+                        <div class="layui-collapse">
+                            <div class="layui-colla-item">
+                                <div class="layui-colla-title layui-inline">
+                                    <div class="layui-inline">
+                                        <span>鏇村</span>
+                                    </div>
+                                </div>
+                                <!-- 鐢熶骇杞﹂棿 -->
+                                <div class="layui-inline">
+                                    <label class="layui-form-label">鐢熶骇杞﹂棿</label>
+                                    <div class="layui-input-block">
+                                        <select name="HDeptID" id="HDeptID" lay-verify="required" lay-search class="layui-input ForFilteringSchemes">
+                                            <!-- 鍔ㄦ�佹覆鏌撹溅闂� -->
+                                        </select>
+                                    </div>
+                                </div>             
+                                <!-- 鐗╂枡 -->
+                                <div class="layui-inline">
+                                    <label class="layui-form-label">鐗╂枡</label>
+                                    <div class="layui-input-inline">
+                                        <input type="text" class="layui-input" name="HMaterName" id="HMaterName" style="float:left;width:150px;">
+                                        <input type="hidden" class="layui-input" name="HMaterID" id="HMaterID" value="0">
+                                        <button type="button" lay-submit="" class="layui-btn" lay-filter="HMaterList" style="width:40px;">
+                                            <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
+                                        </button>
+                                    </div>
+                                </div>
+                                <!-- 寮�濮嬫棩鏈� -->
+                                <div class="layui-inline">
+                                    <label class="layui-form-label">寮�濮嬫棩鏈�</label>
+                                    <div class="layui-input-block">
+                                        <input type="date" class="layui-input" name="HBDate" id="HBDate" style="width:150px;">
+                                    </div>
+                                </div>
+                                <!-- 缁撴潫鏃ユ湡 -->
+                                <div class="layui-inline">
+                                    <label class="layui-form-label">缁撴潫鏃ユ湡</label>
+                                    <div class="layui-input-block">
+                                        <input type="date" class="layui-input" name="HEDate" id="HEDate" style="width:150px;">
+                                    </div>
+                                </div>
+                                <!-- 鏌ヨ鎸夐挳 -->
+                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearch" id="btnSearch">
+                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn"></i>
+                                </button>
+                                <!-- 閲嶇疆鎸夐挳 -->
+                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnReSearch" id="btnReSearch" style="padding:0 5px">閲嶇疆</button>
+                            </div>
+                        </div>
+                    </form>
+                    <div style="margin-top: 10px;">
+                        <table class="" id="mainTable2" lay-filter="mainTable2"></table>
+                        <!-- 琛ㄦ牸澶村伐鍏锋爮 -->
+                        <script type="text/html" id="toolbarDemo2">
+                            <div class="layui-btn-container">
+                                <button type="button" class="layui-btn layui-btn-sm" lay-event="btn-reload2"><i class="layui-icon layui-icon-refresh"></i>鍒锋柊</button>
+                                <button type="button" class="layui-btn layui-btn-sm" lay-event="get_export2"><i class="layui-icon layui-icon-export"></i>瀵煎嚭</button>
+                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_HideColumn2"><i class="layui-icon layui-icon-form"></i>鍒楄缃�</button>
+                                <button type="button" class="layui-btn layui-btn-sm" lay-event="set_SouceExcel" id="set_SouceExcel"><i class="layui-icon layui-icon-delete"></i>瀵煎叆</button>
+                            </div>
+                        </script>
+                    </div>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <script>
+        layui.config({
+            base: '../../../layuiadmin/'
+        }).extend({
+            index: 'lib/index',
+        }).use(['index', 'form', 'table', 'element', 'laydate', 'soulTable', 'tableSelect'], function () {
+            var $ = layui.$,
+                admin = layui.admin,
+                layer = layui.layer,
+                table = layui.table,
+                form = layui.form,
+                element = layui.element,
+                laydate = layui.laydate,
+                soulTable = layui.soulTable,
+                tableSelect = layui.tableSelect;
+
+            // 妯″潡鍚嶏紙鐢ㄤ簬鍒楄缃瓨鍌級
+            var HModName2 = "Pay_PaymentEntryReport2";
+            // 琛ㄦ牸閫夐」
+            var option2 = {
+                elem: '#mainTable2',
+                toolbar: '#toolbarDemo2',
+                height: 'full-120',      // 閫傚綋鐣欏嚭搴曢儴绌洪棿
+                page: true,
+                cellMinWidth: 90,
+                totalRow: true,
+                limit: 500,
+                limits: [50, 500, 5000, 20000],
+                done: function (res, curr, count) {
+                    soulTable.render(this);
+                },
+                cols: [[]]
+            };
+
+            // 鍏ㄥ眬鏌ヨ鏉′欢瀛楃涓�
+            var sWhere = "";
+
+            // ---------- 鍒濆鍖� ----------
+            function initPage() {
+                // 娓叉煋杞﹂棿涓嬫媺妗�
+                loadDeptSelect();
+                // 璁剧疆榛樿鏃ユ湡: 寮�濮嬫棩鏈熶负7澶╁墠锛岀粨鏉熸棩鏈熶负浠婂ぉ
+                $("#HBDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * 7), "yyyy-MM-dd"));
+                $("#HEDate").val(Format(new Date(), "yyyy-MM-dd"));
+               
+                getFastQuery(2);
+                // 閲嶆柊娓叉煋琛ㄥ崟鍏冪礌锛坰elect绛夛級
+                form.render('select');
+            }
+
+            // 鑾峰彇杞﹂棿涓嬫媺
+            function loadDeptSelect() {
+                $.ajax({
+                    type: "GET",
+                    url: GetWEBURL() + "/Sc_ICMOBill/GetHDeptList",
+                    async: false,
+                    data: { "HOrgID": sessionStorage["OrganizationID"] || 1 }, // 榛樿缁勭粐1
+                    success: function (result) {
+                        var html = '<option value="0" style="color:red;" selected>鍏ㄩ儴杞﹂棿</option>';
+                        if (result.count == 1 && result.data) {
+                            var data = result.data;
+                            for (var i = 0; i < data.length; i++) {
+                                html += '<option style="color:blue;" value="' + data[i].HItemID + '">' + data[i].HName + '</option>';
+                            }
+                        }
+                        $("#HDeptID").html(html);
+                        form.render('select');
+                    },
+                    error: function () {
+                        layer.alert('鑾峰彇杞﹂棿鍒楄〃澶辫触', { icon: 2 });
+                    }
+                });
+            }
+
+           
+
+            // 鏌ヨ骞舵覆鏌撻樁姊姤琛�
+            function getFastQuery(type) {
+                var HBeginDate = $("#HBDate").val();
+                var HEndDate = $("#HEDate").val();
+                var HCostObjID = $("#HMaterID").val() || '0';
+                var HWorkShopID = $("#HDeptID").val() || '0';
+
+                var spParams = "'" + HBeginDate + "','" + HEndDate + "','" + HWorkShopID + "','" + HCostObjID+ "'";
+                sWhere = spParams; // 鐢ㄤ簬鍐呴儴
+
+                if (type == 2) {
+                    get_Display(spParams);
+                }
+            }
+
+            // 鍔犺浇闃舵璁′欢鏁版嵁
+            function get_Display(params) {
+                var loadIndex = layer.load(1, { shade: false });
+             
+                var sql = "exec h_p_Kf_WIPBalReport" + params;
+
+                $.ajax({
+                    url: GetWEBURL() + '/Gy_SOPBillList/WindowPrintList',
+                    type: "GET",
+                    data: { "sWhere": sql },
+                    success: function (data1) {
+                        layer.close(loadIndex);
+                        if (data1.count == 1) {
+                            // 瑙f瀽鍒楀畾涔�
+                            var colDefs = []; // 瀛樻斁 {id, name, Type}
+                            if (data1.list && data1.list.length > 0) {
+                                for (var k in data1.list) {
+                                    colDefs.push({
+                                        id: data1.list[k].ColmCols,
+                                        name: data1.list[k].ColmCols,
+                                        Type: data1.list[k].ColmType
+                                    });
+                                }
+                            }
+
+                            // 鏋勫缓琛ㄦ牸鍒�
+                            var cols = [];
+                            // 澶氶�夋鍒�
+                            cols.push({ type: 'checkbox', fixed: 'left', totalRowText: '鍚堣' });
+
+                            // 杈呭姪鍒ゆ柇鏃ユ湡瀛楁(褰㈠"2025-02-20")锛屽師浠g爜鐢╥sValidDate浣嗘湭瀹氫箟锛岀畝鍗曟寜瀛楁鍚嶆槸鍚﹀惈妯嚎鍒ゆ柇锛屽疄闄呮牴鎹笟鍔¤皟鏁�
+                            for (var i = 0; i < colDefs.length; i++) {
+                                var fieldName = colDefs[i].name;
+                                var fieldId = colDefs[i].id;
+                                var fieldType = colDefs[i].Type;
+
+                                // 閽堝闃舵鎶ヨ〃锛屾湁浜涘垪鍙兘鏄姩鎬佹棩鏈�(渚嬪鈥�02-20鈥�)锛屽師浠g爜鐢╥sValidDate鍒ゆ柇锛屾垜浠畝鍗曟ā鎷燂細濡傛灉瀛楁鍚嶅寘鍚� '-' 涓旈暱搴�<=10 瑙嗕负鏃ユ湡鐭垪
+                                var isShortDate = (fieldName.indexOf('-') > 0 && fieldName.length <= 10);
+                                if (isShortDate) {
+                                    // 鏄剧ず鎴� MM-dd 鏍煎紡锛屽師浠g爜灏濊瘯Format浣嗘湭瀹氫箟锛屾澶勭洿鎺ユ樉绀哄師瀛楁鍚�
+                                    cols.push({
+                                        field: fieldId,
+                                        title: fieldName,  // 鍘熶唬鐮�: Format(fieldName,'MM-dd') 浣咶ormat鍑芥暟鍙兘鏈紩鍏ワ紝淇濇寔鍘熸牱
+                                        width: 70,
+                                        totalRow: true,
+                                        filter: true,
+                                        align: 'center'
+                                    });
+                                } else if (fieldType == 'DateTime') {
+                                    cols.push({
+                                        field: fieldId,
+                                        title: fieldName,
+                                        align: 'center',
+                                        sort: true,
+                                        filter: true,
+                                        templet: "<div>{{ d." + fieldId + " == '' ? '' : layui.util.toDateString(d." + fieldId + ", 'yyyy-MM-dd HH:mm:ss') }}</div>",
+                                        width: 180
+                                    });
+                                } else {
+                                    cols.push({
+                                        field: fieldId,
+                                        title: fieldName,
+                                        align: 'center',
+                                        sort: true,
+                                        width: 150,
+                                        filter: true
+                                    });
+                                }
+                            }
+
+                            // 鏇存柊琛ㄦ牸閰嶇疆
+                            option2.cols = [cols];
+                            option2.data = data1.data || [];
+
+                            // 搴旂敤鍒楅殣钘忚缃紙濡傛灉瀛樺湪锛�
+                            DisPlay_HideColumn(HModName2, sessionStorage["HUserName"] || 'admin', option2, []);
+
+                            // 娓叉煋琛ㄦ牸
+                            table.render(option2);
+                        } else {
+                            layer.alert(data1.code + ' ' + data1.Message, { icon: 5 });
+                        }
+                    },
+                    error: function () {
+                        layer.close(loadIndex);
+                        layer.alert("鎺ュ彛璇锋眰澶辫触", { icon: 5 });
+                    }
+                });
+            }
+
+            // 閲嶇疆杩囨护鏉′欢
+            function clearQuery() {
+                $("#HBDate").val(Format(new Date(new Date() - 1000 * 60 * 60 * 24 * 7), "yyyy-MM-dd"));
+                $("#HEDate").val(Format(new Date(), "yyyy-MM-dd"));
+                $("#HDeptID").val(0);
+                $("#HEmpID").val(0);
+                $("#HEmpName").val("");
+                $("#HGroupID").val(0);
+                $("#HGroupName").val("");
+                $("#HMaterID").val("0");     
+                $("#HMaterName").val("");   
+                form.render('select');
+            }
+
+            // ---------- 浜嬩欢缁戝畾 ----------
+            // 鏌ヨ鎸夐挳
+            form.on('submit(btnSearch)', function () {
+                getFastQuery(2);
+                return false;
+            });
+
+            // 閲嶇疆鎸夐挳
+            form.on('submit(btnReSearch)', function () {
+                clearQuery();
+                getFastQuery(2);
+                return false;
+            });
+
+            // 鐝粍寮瑰嚭妗�(淇濈暀鍘熸湁寮圭獥鏂瑰紡锛屼笌tableSelect鍏卞瓨锛屼紭鍏堜娇鐢╰ableSelect锛涘悓鏃舵敮鎸佸脊绐楅�夋嫨)
+            form.on('submit(HGroupList)', function () {
+                openGroupDialog();
+                return false;
+            });
+
+            // 鑱屽憳寮瑰嚭妗�
+            form.on('submit(HMaterList)', function () {
+                openHMaterDialog();
+                return false;
+            });
+
+            // 鎵撳紑鐝粍寮圭獥锛堝師鍑芥暟 get_checkGroup锛�
+            function openGroupDialog() {
+                layer.open({
+                    type: 2,
+                    skin: "layui-layer-rim",
+                    title: "鐝粍鍒楄〃",
+                    closeBtn: 1,
+                    shift: 2,
+                    area: ["90%", "90%"],
+                    maxmin: true,
+                    content: ['../../鍩虹璧勬枡/宸ヨ祫鍩虹璧勬枡/Gy_Group.html?Type=HGroup', 'yes'],
+                    btn: ["纭畾", "鍙栨秷"],
+                    btn1: function (index, laero) {
+                        var iframeWindow = window["layui-layer-iframe" + index];
+                        var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");
+                        if (checkStatus.data.length != 1) {
+                            return layer.msg("璇烽�夋嫨涓�鏉℃暟鎹�");
+                        }
+                        $("#HGroupName").val(checkStatus.data[0].鐝粍鍚嶇О);
+                        $("#HGroupID").val(checkStatus.data[0].HItemID);
+                        layer.close(index);
+                    }
+                });
+            }
+
+            // 鎵撳紑鑱屽憳寮圭獥 (鍘� get_checkEmp)
+            function openHMaterDialog() {
+                layer.open({
+                    type: 2,
+                    skin: 'layui-layer-rim',
+                    title: '鑱�',
+                    closeBtn: 1,
+                    shift: 2,
+                    area: ['80%', '80%'],
+                    maxmin: true,
+                    content: ['../../鍩虹璧勬枡/鍏敤鍩虹璧勬枡/Gy_Material.html?Type=HMaterList', 'yes'],
+                    btn: ['纭畾', '鍙栨秷'],
+                    btn1: function (index, layero) {
+                        var iframeWindow = window['layui-layer-iframe' + index];
+                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');
+                        if (checkStatus.data.length === 0) {
+                            return layer.msg('璇烽�夋嫨鏁版嵁');
+                        }
+                        $("#HMaterID").val(checkStatus.data[0].HItemID);
+                        $("#HMaterName").val(checkStatus.data[0].鐗╂枡鍚嶇О);
+                        layer.close(index);
+                    }
+                });
+            }
+
+            // 澶村伐鍏锋爮浜嬩欢 (mainTable2)
+            table.on('toolbar(mainTable2)', function (obj) {
+                switch (obj.event) {
+                    case 'set_HideColumn2':
+                        get_HideColumnNoPage(HModName2, sessionStorage["HUserName"] || 'admin', option2, function () { getFastQuery(2); });
+                        break;
+                    case 'btn-reload2':
+                        getFastQuery(2);
+                        break;
+                    case 'get_export2':
+                        exportExcel2();
+                        break;
+                    //瀵煎叆
+                    case 'set_SouceExcel': set_SouceExcel();
+                        break;
+                    default:
+                        break;
+                }
+            });
+
+            // 瀵煎嚭Excel (鍘� get_Export2)
+            function exportExcel2() {
+                var ModRightNameCheck = "Pay_PaymentEntryReportExcel";
+                $.ajax({
+                    type: "GET",
+                    url: GetWEBURL() + "/LMES/getReportByModRightNameCheck",
+                    data: { "ModRightNameCheck": ModRightNameCheck, "user": sessionStorage["HUserName"] },
+                    success: function (result) {
+                        if (result.count == 1) {
+                            var data = option2.data || [];
+                            // 娓呮礂鏁版嵁
+                            data.forEach(function (item) {
+                                for (var key in item) {
+                                    if (item[key] == null) item[key] = "";
+                                    if (typeof item[key] === 'string') {
+                                        item[key] = item[key].replace(/[\r\n]+/g, '').replace(/,/g, '');
+                                    }
+                                }
+                            });
+                            table.exportFile("mainTable2", data, "xls");
+                        } else {
+                            layer.alert("褰撳墠妯″潡娌℃湁瀵煎嚭鏉冮檺!", { icon: 5 });
+                        }
+                    },
+                    error: function () {
+                        layer.alert("鎺ュ彛璇锋眰澶辫触!", { icon: 5 });
+                    }
+                });
+            }
+
+            //瀵煎叆
+            function set_SouceExcel() {
+                layer.open({
+                    type: 2
+                    , area: ['100%', '100%']
+                    , title: '璧勬枡瀵煎叆'
+                    , shift: 0//寮瑰嚭鍔ㄧ敾
+                    , content: './Gy_WIPBal_Excel.html?OperationType=dao&HSouceBillType='
+                })
+            }
+
+            // 鍏ㄥ眬杈呭姪鍑芥暟 Format (濡傛灉涓嶅瓨鍦紝绠�鍗曞畾涔�)
+            if (typeof Format !== 'function') {
+                window.Format = function (date, fmt) {
+                    if (!date) return '';
+                    var d = new Date(date);
+                    var o = {
+                        "M+": d.getMonth() + 1,
+                        "d+": d.getDate(),
+                        "H+": d.getHours(),
+                        "m+": d.getMinutes(),
+                        "s+": d.getSeconds()
+                    };
+                    if (/(y+)/.test(fmt)) fmt = fmt.replace(RegExp.$1, (d.getFullYear() + "").substr(4 - RegExp.$1.length));
+                    for (var k in o)
+                        if (new RegExp("(" + k + ")").test(fmt)) fmt = fmt.replace(RegExp.$1, (RegExp.$1.length == 1) ? (o[k]) : (("00" + o[k]).substr(("" + o[k]).length)));
+                    return fmt;
+                };
+            }
+
+            // 鍚姩椤甸潰
+            initPage();
+        });
+
+        // 涓嬮潰涓や釜鏂规硶渚涘脊绐楀洖璋冧娇鐢� (Gy_EmployeeList.html 鍜� Gy_Group.html 浼氳皟鐢�)
+        function GetHEmpListValue(obj) {
+            $("#HEmpID").val(obj.HItemID);
+            $("#HEmpName").val(obj.鑱屽憳鍚嶇О);
+        }
+        function GetHGroupValue(obj) {
+            if (obj && obj.length > 0) {
+                $("#HGroupName").val(obj[0].鐝粍鍚嶇О);
+                $("#HGroupID").val(obj[0].HItemID);
+            }
+        }
+    </script>
+
+</body>
+</html>
\ No newline at end of file

--
Gitblit v1.9.1