From e8aa5b7991595f8b5bdb3e862cfa668cf96fa0ff Mon Sep 17 00:00:00 2001
From: duhe <226547893@qq.com>
Date: 星期一, 25 十一月 2024 17:34:26 +0800
Subject: [PATCH] 1

---
 WebTM/views/项目管理/工程项目/PM_WorkPlanMonthBillMain.html |  416 ++++++++++++++++++++++++++++++++++------------------------
 1 files changed, 242 insertions(+), 174 deletions(-)

diff --git "a/WebTM/views/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_WorkPlanMonthBillMain.html" "b/WebTM/views/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_WorkPlanMonthBillMain.html"
index 5d9d0dc..329aff5 100644
--- "a/WebTM/views/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_WorkPlanMonthBillMain.html"
+++ "b/WebTM/views/\351\241\271\347\233\256\347\256\241\347\220\206/\345\267\245\347\250\213\351\241\271\347\233\256/PM_WorkPlanMonthBillMain.html"
@@ -121,57 +121,94 @@
                             </div>
                             <!--鍏朵粬淇℃伅-->
                             <div class="layui-tab-item">
-                                <div class="layui-row" style="margin-top:10px;">
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">鍒跺崟浜�</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HMaker" id="HMaker" style="background-color:#efefef4d;" readonly>
+                                <div class="layui-form-item">
+                                    <div class="layui-row">
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">鍒跺崟浜�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HMaker" id="HMaker" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">淇敼浜�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HUpdater" id="HUpdater" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">瀹℃牳浜�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HChecker" id="HChecker" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+
+                                    </div>
+                                    <div class="layui-row">
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">鍒跺崟鏃ユ湡</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HMakeDate" id="HMakeDate" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">淇敼鏃ユ湡</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HUpDateDate" id="HUpDateDate" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">瀹℃牳鏃ユ湡</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HCheckDate" id="HCheckDate" style="background-color:#efefef4d;" readonly>
+                                            </div>
                                         </div>
                                     </div>
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">淇敼浜�</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HUpDater" id="HUpDater" style="background-color:#efefef4d;" readonly>
+                                    <div class="layui-row">
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">鍏抽棴浜�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HCloseMan" id="HCloseMan" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">浣滃簾浜�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HDeleteMan" id="HDeleteMan" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">閫�鍥炰汉</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HBacker" id="HBacker" style="background-color:#efefef4d;" readonly>
+                                            </div>
                                         </div>
                                     </div>
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">瀹℃牳浜�</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HChecker" id="HChecker" style="background-color:#efefef4d;" readonly>
+                                    <div class="layui-row">
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">鍏抽棴鏃ユ湡</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HCloseDate" id="HCloseDate" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">浣滃簾鏃ユ湡</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HDeleteDate" id="HDeleteDate" style="background-color:#efefef4d;" readonly>
+                                            </div>
+                                        </div>
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">閫�鍥炴棩鏈�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HBackDate" id="HBackDate" style="background-color:#efefef4d;" readonly>
+                                            </div>
                                         </div>
                                     </div>
-                                </div>
-                                <div class="layui-row" style="margin-top:10px;">
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">鍒跺崟鏃ユ湡</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HMakeDate" id="HMakeDate" style="background-color:#efefef4d;" readonly>
-                                        </div>
-                                    </div>
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">淇敼鏃ユ湡</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HUpDateDate" id="HUpDateDate" style="background-color:#efefef4d;" readonly>
-                                        </div>
-                                    </div>
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">瀹℃牳鏃ユ湡</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HCheckDate" id="HCheckDate" style="background-color:#efefef4d;" readonly>
-                                        </div>
-                                    </div>
-                                </div>
-                                <div class="layui-row" style="margin-top:10px;">
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">鍏抽棴浜�</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HCloseMan" id="HCloseMan" style="background-color:#efefef4d;" readonly>
-                                        </div>
-                                    </div>
-                                    <div class="layui-inline">
-                                        <label class="layui-form-label" style="width: 85px;">鍏抽棴鏃ユ湡</label>
-                                        <div class="layui-input-block" style="margin-left: 120px;">
-                                            <input type="text" class="layui-input" name="HCloseDate" id="HCloseDate" style="background-color:#efefef4d;" readonly>
+                                    <div class="layui-row">
+                                        <div class="layui-inline">
+                                            <label class="layui-form-label" style="width: 85px;">閫�鍥炲師鍥�</label>
+                                            <div class="layui-input-block" style="margin-left: 120px;">
+                                                <input type="text" class="layui-input" name="HBackRemark" id="HBackRemark" style="background-color:#efefef4d;" readonly>
+                                            </div>
                                         </div>
                                     </div>
                                 </div>
@@ -210,6 +247,9 @@
                 , form = layui.form
                 , element = layui.element;
 
+
+            //鍏ㄥ眬鍙橀噺
+            window.optionData = [];
             //妯″潡鍚�
             var HBillType = "4758";
             //琛ㄦ牸娓叉煋鍙傛暟
@@ -270,6 +310,20 @@
                 //鍒濆鍖栧埗鍗曚汉鍜屽埗鍗曟椂闂�
                 $("#HMaker").val(sessionStorage["HUserName"]);
                 $("#HMakeDate").val(Format(new Date(), "yyyy-MM-dd"));
+
+
+            } else if (OperationType == 3) {
+
+                //缂栬緫
+                //绂佺敤鎸夐挳
+                var num = 1;
+                HfBtn(num);
+
+                //鍒濆鍖栫粍缁�
+                Organ();
+                //鍒濆鍖栧勾鍜屽懆銆佸紑濮嬫棩鏈熴�佺粨鏉熸棩鏈�
+                Init_selectYearAndWeek();
+                set_EditForm(linterid);
 
 
             }
@@ -350,6 +404,12 @@
                         break;
 
                 }
+            });
+
+            //#region 瀛愯〃锛氳鍐呬簨浠�
+            table.on('tool(mainTable)', function (obj) {
+                set_GridDelete(obj);   //琛屽唴鍒犻櫎
+
             });
 
             //#endregion
@@ -672,10 +732,11 @@
                     , toolbar: '#toolbarDemo'
                     , limit: 500
                     , height: 500
+                    , totalRow: true
                     , loading: false
                     , cols: [[ //瀛愯〃
                         { type: 'checkbox', totalRowText: '鍚堣琛�' }
-                        , { type: 'numbers', title: '搴忓彿', width: 100, totalRow: true }
+                        , { type: 'numbers', title: '搴忓彿', width: 100}
                         , { type: 'HSourceBillNo', title: '婧愬崟鍙�', width: 100, hide: true }//婧愬崟鍙�
                         , { field: 'HSourceBillType', title: '婧愬崟绫诲瀷', width: 100, hide: true }//婧愬崟绫诲瀷
                         , { type: 'HSourceInterID', title: '婧愬崟涓诲唴鐮�', width: 100, hide: true }//婧愬崟涓诲唴鐮�
@@ -687,7 +748,7 @@
                         , { field: '椤圭洰闃舵璇︾粏鍐呭', title: '椤圭洰闃舵璇︾粏鍐呭', width: 230, }
                         , { field: '鐩稿叧浜や粯鐗�', title: '鐩稿叧浜や粯鐗�', width: 150,  }
                         , { field: '鏄惁閲岀▼纰�', title: '鏄惁閲岀▼纰�', width: 150, }
-                        , { field: 'HRate', title: '涓氱哗鍗犳瘮', width: 150, }
+                        , { field: '涓氱哗鍗犳瘮', title: '涓氱哗鍗犳瘮', totalRow: true,width: 150, }
                         , { fixed: 'right', title: '鎿嶄綔', toolbar: '#barDemo', width: 120 }
                     ]]
                 }
@@ -745,6 +806,25 @@
                     }
                 }
 
+                checkDuplicateData(num);
+                const duplicateRows = checkDuplicateData(num);
+                if (duplicateRows.length > 0) {
+                    let message = '琛ㄦ牸涓瓨鍦ㄩ噸澶嶆暟鎹紝閲嶅琛屾暟涓猴細';
+
+                    for (let i = 0; i < duplicateRows.length; i++) {
+                        const { row1, row2 } = duplicateRows[i];
+                        message += `绗�${row1}琛屼笌绗�${row2}琛岀浉鍚宍;
+
+                        if (i !== duplicateRows.length - 1) {
+                            message += '锛�';
+                        }
+                    }
+
+                    message += '锛岃鍒犻櫎鍏朵腑涓�琛�';
+                    layer.alert(message);
+                    return;
+                }
+
                 //鑾峰彇琛ㄥご鏁版嵁骞跺簭鍒楀寲
                 var sMainStr = JSON.stringify(data.field);
                 var sSubStr = JSON.stringify(num);
@@ -789,7 +869,7 @@
                     , area: ['90%', '90%']//澶у皬
                     , title: '宸ョ▼椤圭洰鍒楄〃'//鏍囬
                     , shift: 2//寮瑰嚭鍔ㄧ敾
-                    , content: ['../../椤圭洰绠$悊/宸ョ▼椤圭洰/PM_ProjectBillList.html?UserName=' + UserName, 'yes']
+                    , content: ['../../椤圭洰绠$悊/宸ョ▼椤圭洰/PM_ProjectBillList.html?openType=2&HOrgID=&UserName=' + UserName, 'yes']
                     , btn: ['纭畾', '鍙栨秷']
                     , btn1: function (index, laero) {
                         //鎸夐挳涓�  鐨勫洖璋�
@@ -815,8 +895,32 @@
                             option.data.push({
                                 "HProNumber": checkStatus.data[j].椤圭洰浠g爜, "椤圭洰鍚嶇О": checkStatus.data[j].椤圭洰鍚嶇О, "HProjectStageID": checkStatus.data[j].HProjectStageID, "椤圭洰闃舵": checkStatus.data[j].椤圭洰闃舵,
                                 "椤圭洰闃舵璇︾粏鍐呭": checkStatus.data[j].椤圭洰闃舵璇︾粏鍐呭, "鐩稿叧浜や粯鐗�": checkStatus.data[j].闃舵鐩稿叧浜や粯鐗�,
-                                "鏄惁閲岀▼纰�": checkStatus.data[j].閲岀▼纰�, "HRate": checkStatus.data[j].闃舵涓氱哗鍗犳瘮,
+                                "鏄惁閲岀▼纰�": checkStatus.data[j].閲岀▼纰�, "涓氱哗鍗犳瘮": checkStatus.data[j].闃舵涓氱哗鍗犳瘮,
                                 "HSourceBillNo": checkStatus.data[j].鍗曟嵁鍙�, "HSourceBillType": checkStatus.data[j].鍗曟嵁绫诲瀷, "HSourceInterID": checkStatus.data[j].HInterID, "HSourceEntryID": checkStatus.data[j].HEntryID,
+                            })
+                            j++;
+                            table.render(option);
+                            layer.close(index);//鍏抽棴寮圭獥
+                        };
+                    }
+                    , end: function () {
+
+                        var ProcessNumber = [];
+                        for (var i = 0; i < optionData.length; i++) {
+                            ProcessNumber.push(checkStatus.data[i]);
+                        }
+
+                        //鑾峰彇褰撳墠浣嶇疆鎵�鍦ㄨ鏁�
+                        var NowNum = 0;
+                        NowNum = option.data.length;
+
+                        var j = 0;
+                        for (var i = 0; i < ProcessNumber.length; i++) {
+                            option.data.push({
+                                "HProNumber": optionData[j].椤圭洰浠g爜, "椤圭洰鍚嶇О": optionData[j].椤圭洰鍚嶇О, "HProjectStageID": optionData[j].HProjectStageID, "椤圭洰闃舵": optionData[j].椤圭洰闃舵,
+                                "椤圭洰闃舵璇︾粏鍐呭": optionData[j].椤圭洰闃舵璇︾粏鍐呭, "鐩稿叧浜や粯鐗�": optionData[j].闃舵鐩稿叧浜や粯鐗�,
+                                "鏄惁閲岀▼纰�": optionData[j].閲岀▼纰�, "涓氱哗鍗犳瘮": optionData[j].闃舵涓氱哗鍗犳瘮,
+                                "HSourceBillNo": optionData[j].鍗曟嵁鍙�, "HSourceBillType": optionData[j].鍗曟嵁绫诲瀷, "HSourceInterID": optionData[j].HInterID, "HSourceEntryID": optionData[j].HEntryID,
                             })
                             j++;
                             table.render(option);
@@ -857,6 +961,7 @@
                     }
                 })
             }
+            //#endregion
 
             //#region 鎸夐挳鎭㈠
             function HfBtn(num) {
@@ -885,72 +990,51 @@
             //#region 缂栬緫鑾峰彇琛ㄥご
             function set_EditForm(linterid) {
                 $.ajax({
-                    url: GetWEBURL() + "PM_WorkTaskWeekBill/PM_WorkTaskWeekBillgetEditMainData",
+                    url: GetWEBURL() + "PM_ProjectBill/PM_WorkPlanMonthBillMainEditList",
                     async: false,
                     type: "GET",
                     data: {
-                        "HInterID": linterid
+                        "HInterID": linterid, "user": sessionStorage["HUserName"]
                     },
                     success: function (result) {
+                        var tableMain = result.data[0];
+                        var tableSub = result.data[1];
                         if (result.code == 1) {
-                            data = result.data;
-
+                          
                             //涓昏〃 璧嬪��
                             form.val("formData", { //formTest 鍗� class="layui-form" 鎵�鍦ㄥ厓绱犲睘鎬� lay-filter="" 瀵瑰簲鐨勫��
-                                "HInterID": data[0]["HInterID"]
-                                , "HBillNo": data[0]["HBillNo"]
-                                , "HYear": data[0]["HYear"]
-                                , "HWeek": data[0]["HWeek"]
-                                , "HDate": Format(new Date(data[0]["HDate"]), "yyyy-MM-dd")
-                                , "HBeginDate": Format(new Date(data[0]["HBeginDate"]), "yyyy-MM-dd")
-                                , "HEndDate": Format(new Date(data[0]["HEndDate"]), "yyyy-MM-dd")
-                                , "HPlanEmpID": data[0]["HPlanEmpID"] == null ? 0 : data[0]["HPlanEmpID"]
-                                , "HPlanEmpName": data[0]["HPlanEmpName"]
-                                , "HRemark": data[0]["HRemark"]
-                                , "HOrgID": data[0]["HOrgID"]
-
-                                , "HMaker": data[0]["HMaker"]
-                                , "HUpDater": data[0]["HUpDater"]
-                                , "HChecker": data[0]["HChecker"]
-                                , "HMakeDate": data[0]["HMakeDate"] == null ? "" : Format(new Date(data[0]["HMakeDate"]), "yyyy-MM-dd")
-                                , "HUpDateDate": data[0]["HUpDateDate"] == null ? "" : Format(new Date(data[0]["HUpDateDate"]), "yyyy-MM-dd")
-                                , "HCheckDate": data[0]["HCheckDate"] == null ? "" : Format(new Date(data[0]["HCheckDate"]), "yyyy-MM-dd")
-                                , "HCloseMan": data[0]["HCloseMan"]
-                                , "HDeleteMan": data[0]["HDeleteMan"]
-                                , "HBacker": data[0]["HBacker"]
-                                , "HCloseDate": data[0]["HCloseDate"] == null ? "" : Format(new Date(data[0]["HCloseDate"]), "yyyy-MM-dd")
-                                , "HDeleteDate": data[0]["HDeleteDate"] == null ? "" : Format(new Date(data[0]["HDeleteDate"]), "yyyy-MM-dd")
-                                , "HBackDate": data["HBackDate"] == null ? "" : Format(new Date(data[0]["HBackDate"]), "yyyy-MM-dd")
+                                "HInterID": tableMain[0]["HInterID"]
+                                , "HBillNo": tableMain[0]["鍗曟嵁鍙�"]
+                                , "HYear": tableMain[0]["骞�"]
+                                , "HMonth ": tableMain[0]["鏈�"]
+                                , "HDate": Format(new Date(tableMain[0]["鏃ユ湡"]), "yyyy-MM-dd")
+                                , "HBeginDate": Format(new Date(tableMain[0]["寮�濮嬫棩鏈�"]), "yyyy-MM-dd")
+                                , "HEndDate": Format(new Date(tableMain[0]["缁撴潫鏃ユ湡"]), "yyyy-MM-dd")
+                                , "HPlanEmpID": tableMain[0]["HPlanEmpID"] == null ? 0 : tableMain[0]["HPlanEmpID"]
+                                , "HPlanEmpName": tableMain[0]["璁″垝浜�"]
+                                , "HRemark": tableMain[0]["澶囨敞"]
+                                
+                                , "HMaker": tableMain[0]["鍒跺崟浜�"]
+                                , "HUpDater": tableMain[0]["淇敼浜�"]
+                                , "HChecker": tableMain[0]["瀹℃牳浜�"]
+                                , "HMakeDate": tableMain[0]["鍒跺崟鏃ユ湡"] == null ? "" : Format(new Date(tableMain[0]["鍒跺崟鏃ユ湡"]), "yyyy-MM-dd")
+                                , "HUpDateDate": tableMain[0]["淇敼鏃ユ湡"] == null ? "" : Format(new Date(tableMain[0]["淇敼鏃ユ湡"]), "yyyy-MM-dd")
+                                , "HCheckDate": tableMain[0]["瀹℃牳鏃ユ湡"] == null ? "" : Format(new Date(tableMain[0]["瀹℃牳鏃ユ湡"]), "yyyy-MM-dd")
+                                , "HCloseMan": tableMain[0]["鍏抽棴浜�"]
+                                , "HCloseDate": tableMain[0]["鍏抽棴鏃ユ湡"] == null ? "" : Format(new Date(tableMain[0]["鍏抽棴鏃ユ湡"]), "yyyy-MM-dd")
+                               
                             });
 
                             //缁勭粐鐨勫�糎OrgID鍙樺寲锛岄噸鏂版覆鏌�
-                            HOrgIDBar = data[0]["HOrgID"];
+                            //HOrgIDBar = data[0]["HOrgID"];
 
-
-                        } else {
-                            layer.alert(result.code + result.Message, { icon: 5 });
-                        }
-                    }, error: function () {
-                        layer.alert("鎺ュ彛璇锋眰澶辫触!", { icon: 5 });
-                    }
-                });
-            }
-            //#endregion
-
-            //#region 缂栬緫鑾峰彇琛ㄤ綋
-            function set_EditGrid(linterid) {
-                $("#HInterID").val(linterid);//淇敼鏃朵富琛↖D
-                //缂栬緫鍔犺浇鏁版嵁
-                $.ajax({
-                    url: GetWEBURL() + 'PM_WorkTaskWeekBill/PM_WorkTaskWeekBillgetEditSubData',
-                    async: false,
-                    type: "GET",
-                    data: { "HInterID": linterid },
-                    success: function (result) {
-                        if (result.count == 1) {
-                            option.data = dealEditData(result.data);
+                            //娓叉煋闃舵璁″垝瀛愯〃
+                          
+                            option.data = tableSub;
                             table.render(option);
-                            CheckedSet_tableSub();
+                          
+                            form.render('checkbox');
+
                         } else {
                             layer.alert(result.code + result.Message, { icon: 5 });
                         }
@@ -961,81 +1045,28 @@
             }
             //#endregion
 
-            //#region 澶勭悊缂栬緫鏁版嵁
-            function dealEditData(data) {
-                var tables = [];
-                var HSno = 0;                               //鏍囪鍚屼竴浠诲姟锛屽悓涓�浠诲姟鐨勪笉鍚岃褰曠殑HSno涓�鑷�
-                for (var i = 0; i < data.length; i++) {
-                    if (data[i]["HSno"] != HSno) {
-                        HSno = data[i]["HSno"];
-                        var NewRow =
-                        {
-                            "HProjectID": data[i]["HProjectID"]
-                            , "HProNumber": data[i]["HProNumber"]
-                            , "HProName": data[i]["HProName"]
-                            , "HProjectStageID": data[i]["HProjectStageID"]
-                            , "HProjectStageName": data[i]["HProjectStageName"]
-                            , "HName": data[i]["HName"]
-                            , "HTaskNote": data[i]["HTaskNote"]
-                            , "HPlanTimes": data[i]["HPlanTimes"]
-                            , "HReportTimes": data[i]["HReportTimes"]
+            //鍒ゆ柇鎵�閫夌潃涓庤〃鏍兼槸鍚︽湁閲嶅鏁版嵁
+            function checkDuplicateData(data) {
+                const duplicates = [];
 
-                            , "HMonday": false
-                            , "HTuesday": false
-                            , "HWednesday": false
-                            , "HThursday": false
-                            , "HFriday": false
-                            , "HSaturday": false
-                            , "HSunday": false
+                for (let i = 0; i < data.length; i++) {
+                    const currentItem = data[i];
+                    let isDuplicate = false;
 
-                            , "HSourceInterID": data[i]["HSourceInterID"]
-                            , "HSourceEntryID": data[i]["HSourceEntryID"]
-                            , "HSourceBillNo": data[i]["HSourceBillNo"]
-                            , "HSourceBillType": data[i]["HSourceBillType"]
-                        };
-                        tables.push(NewRow);
+                    for (let j = i + 1; j < data.length; j++) {
+                        const compareItem = data[j];
+                        //涓诲瓙id
+                        if (currentItem.HSourceInterID === compareItem.HSourceInterID && currentItem.HSourceEntryID === compareItem.HSourceEntryID) {
+                            isDuplicate = true;
+                            duplicates.push({ row1: i + 1, row2: j + 1 }); // 璁板綍閲嶅鏁版嵁鎵�鍦ㄨ鏁�
+                        }
                     }
-
-                    switch (data[i]["HWeekDay"] + "") {
-                        case "1":
-                            tables[tables.length - 1]["HMonday"] = true;
-                            break;
-                        case "2":
-                            tables[tables.length - 1]["HTuesday"] = true;
-                            break;
-                        case "3":
-                            tables[tables.length - 1]["HWednesday"] = true;
-                            break;
-                        case "4":
-                            tables[tables.length - 1]["HThursday"] = true;
-                            break;
-                        case "5":
-                            tables[tables.length - 1]["HFriday"] = true;
-                            break;
-                        case "6":
-                            tables[tables.length - 1]["HSaturday"] = true;
-                            break;
-                        case "7":
-                            tables[tables.length - 1]["HSunday"] = true;
-                            break;
+                    if (isDuplicate && !duplicates.some(item => item.row1 === i + 1)) {
+                        duplicates.push({ row1: i + 1, row2: -1 }); // 璁板綍閲嶅鏁版嵁鎵�鍦ㄨ鏁帮紝-1 琛ㄧず鏈壘鍒颁笌褰撳墠琛岄噸澶嶇殑琛�
                     }
                 }
-                return tables;
+                return duplicates;
             }
-            //#endregion
-
-            //#region 缂栬緫 椤甸潰璧嬪��
-            function RoadBillMain(linterid)//鍔犺浇琛ㄥご
-            {
-                var wait = layer.load();
-                Init_selectYearAndWeek();
-                set_EditForm(linterid);
-                set_EditGrid(linterid)
-                getOption1Date();
-                layer.close(wait);
-            }
-            //#endregion
-
 
             //#region 瀹℃牳 鍙嶅鏍� 鍏抽棴 鍙嶅叧闂�
             //瀹℃牳
@@ -1045,7 +1076,7 @@
                     $.ajax({
                         url: GetWEBURL() + '/PM_ProjectBill/CheckPM_WorkPlanMonthBillMain',
                         type: "GET",
-                        data: { "HInterID": $("#HInterID").val(), "IsAudit": nums, "user": sessionStorage["HUserName"] },
+                        data: { "HInterID": $("#HInterID").val(), "IsAudit": nums, "CurUserName": sessionStorage["HUserName"] },
                         success: function (result) {
                             if (result.count == 1) {
                                 $('#set_CheckBill').addClass("layui-btn-disabled").attr("disabled", true);
@@ -1071,7 +1102,7 @@
                     $.ajax({
                         url: GetWEBURL() + '/PM_ProjectBill/CheckPM_WorkPlanMonthBillMain',
                         type: "GET",
-                        data: { "HInterID": $("#HInterID").val(), "IsAudit": nums, "user": sessionStorage["HUserName"] },
+                        data: { "HInterID": $("#HInterID").val(), "IsAudit": nums, "CurUserName": sessionStorage["HUserName"] },
                         success: function (result) {
                             if (result.count == 1) {
                                 $('#set_CheckBill').removeClass("layui-btn-disabled").attr("disabled", false);
@@ -1162,12 +1193,49 @@
             }
             //#endregion
 
+            //#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);
+                            CheckedSet_tableSub();
+                            layer.close(index);
+                        }
+                    });
+                }
+            }
+            //#endregion
+
+            //#region 鍒锋柊璁剧疆澶嶉�夋鐘舵��
+            function CheckedSet_tableSub() {
+                var tableSub = option.data;
+                //瀵瑰瓙琛ㄤ腑鐨勫閫夋杩涜閫変腑
+                for (var i = 0; i < tableSub.length; i++) {
+                    if (tableSub[i].HFinishFlag) {
+                        $('#HFinishFlag' + (i + 1)).attr("checked", true);
+                    }
+                }
+                form.render('checkbox');
+            }
+            //#endregion
 
 
             //#endregion
         });
 
-
+        //宸ョ▼椤圭洰
+        function GetProjectBillValue(obj) {
+            optionData = obj;
+        }
     </script>
 </body>
 </html>
\ No newline at end of file

--
Gitblit v1.9.1