| | |
| | | </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> |
| | |
| | | , form = layui.form |
| | | , element = layui.element; |
| | | |
| | | |
| | | //å
¨å±åé |
| | | window.optionData = []; |
| | | //模åå |
| | | var HBillType = "4758"; |
| | | //è¡¨æ ¼æ¸²æåæ° |
| | |
| | | //åå§åå¶å人åå¶åæ¶é´ |
| | | $("#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); |
| | | |
| | | |
| | | } |
| | |
| | | break; |
| | | |
| | | } |
| | | }); |
| | | |
| | | //#region å表ï¼è¡å
äºä»¶ |
| | | table.on('tool(mainTable)', function (obj) { |
| | | set_GridDelete(obj); //è¡å
å é¤ |
| | | |
| | | }); |
| | | |
| | | //#endregion |
| | |
| | | , 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 }//æºå主å
ç |
| | |
| | | , { 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 } |
| | | ]] |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | 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); |
| | |
| | | , 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) { |
| | | //æé®ä¸ çåè° |
| | |
| | | option.data.push({ |
| | | "HProNumber": checkStatus.data[j].项ç®ä»£ç , "项ç®åç§°": 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].项ç®ä»£ç , "项ç®åç§°": 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); |
| | |
| | | } |
| | | }) |
| | | } |
| | | //#endregion |
| | | |
| | | //#region æé®æ¢å¤ |
| | | function HfBtn(num) { |
| | |
| | | //#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") |
| | | |
| | | }); |
| | | |
| | | //ç»ç»çå¼HOrgIDååï¼éæ°æ¸²æ |
| | | 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);//ä¿®æ¹æ¶ä¸»è¡¨ID |
| | | //ç¼è¾å è½½æ°æ® |
| | | $.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 }); |
| | | } |
| | |
| | | } |
| | | //#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 å®¡æ ¸ åå®¡æ ¸ å
³é åå
³é |
| | | //å®¡æ ¸ |
| | |
| | | $.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); |
| | |
| | | $.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); |
| | |
| | | } |
| | | //#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> |