| 
															
																@@ -43,8 +43,9 @@ function getMpSpreadByMBData(id) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																  
															 | 
															
															 | 
															
																  
															 | 
														
													
												
													
														
															| 
															 | 
															
																 function getMaterialListByLeafXmj(gcl_id, xmj_id, mx_id = '') { 
															 | 
															
															 | 
															
																 function getMaterialListByLeafXmj(gcl_id, xmj_id, mx_id = '') { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     const list = []; 
															 | 
															
															 | 
															
																     const list = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    const ms_id = isStageSelf ? parseInt($('#myTab').find('.active').data('msid')) : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     for (const ml of materialListData) { 
															 | 
															
															 | 
															
																     for (const ml of materialListData) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        if (gcl_id === ml.gcl_id && xmj_id === ml.xmj_id && (mx_id === '' || mx_id === ml.mx_id)) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (gcl_id === ml.gcl_id && xmj_id === ml.xmj_id && (mx_id === '' || mx_id === ml.mx_id) && (ms_id === null || ms_id === ml.ms_id)) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             list.push(ml); 
															 | 
															
															 | 
															
																             list.push(ml); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } 
															 | 
															
															 | 
															
																         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     } 
															 | 
															
															 | 
															
																     } 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -232,113 +233,256 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             }, 
															 | 
															
															 | 
															
																             }, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         ], 
															 | 
															
															 | 
															
																         ], 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     }; 
															 | 
															
															 | 
															
																     }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-    // 加载清单数据 - 暂时统一加载,如有需要,切换成动态加载并缓存 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-    postData(window.location.pathname + '/load', {}, async function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        ledger = result.ledger; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        curLedgerData = result.curLedgerData; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        pos = result.pos; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        curPosData = result.curPosData; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        materialListData = result.materialListData; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        gclList = result.gclList; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        notJoinList = result.materialNotJoinListData; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        selfList = result.materialSelfListData; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        materialChecklistData = result.materialChecklistData; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        // 解析清单汇总数据 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        gclGatherModel.loadLedgerData(ledger, curLedgerData); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        gclGatherModel.loadPosData(pos, curPosData); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        gclGatherData = gclGatherModel.gatherGclData(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        console.log(gclGatherData); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        if (openMaterialChecklist) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            const hadBillsidList = _.uniq(_.map(gclList, 'gcl_id')); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            console.log(hadBillsidList); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            // 判断是否有修订影响到本次数据,并有几率修改清单设置页的值 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            const pushData = []; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            const updateData = []; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            for (const hb of hadBillsidList) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                const gcl = _.find(gclGatherData, function (item) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    return item.leafXmjs && item.leafXmjs.length > 0 && _.findIndex(item.leafXmjs, { gcl_id : hb }) !== -1; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    const needUpdateArray = ['quantity', 'msg_tp', 'msg_times', 'msg_spread', 'm_spread', 'm_tp', 'm_tax_tp', 'is_summary', 'remark']; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    function getGclList() { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (gclGatherListData) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            return gclGatherListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const newGclGatherListData = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            for (const [index,s] of ledgerListData.entries()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                console.log(index, s); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherModel.loadLedgerData(ledger, s); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherModel.loadPosData(pos, posListData[index]); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                const oneGclGatherData = gclGatherModel.gatherGclData().filter(item => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    return item.qc_qty || item.contract_qty 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 }); 
															 | 
															
															 | 
															
																                 }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                if (gcl) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    const mc = _.find(materialChecklistData, { b_code: gcl.b_code, name: gcl.name, unit: gcl.unit, unit_price: gcl.unit_price }); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    // const newOrder = _.indexOf(gclGatherData, gcl); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    // console.log(newOrder); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    if (!mc && _.findIndex(pushData, { b_code: gcl.b_code, name: gcl.name, unit: gcl.unit, unit_price: gcl.unit_price }) === -1) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                        pushData.push({ b_code: gcl.b_code, name: gcl.name, unit: gcl.unit, unit_price: gcl.unit_price, quantity: (gcl.quantity ? gcl.quantity : null), total_price: (gcl.total_price ? gcl.total_price : null), had_bills: 1 }); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                newGclGatherListData.push(oneGclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            return newGclGatherListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    let first = true; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    function setListsData(sid = null, ms_id = null) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        if (first) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            // 加载清单数据 - 暂时统一加载,如有需要,切换成动态加载并缓存 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            postData(window.location.pathname + '/load', {sid}, async function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                ledger = result.ledger; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                curLedgerData = result.curLedgerData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                pos = result.pos; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                curPosData = result.curPosData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                materialListData = result.materialListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclList = result.gclList; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                notJoinList = result.materialNotJoinListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                selfList = result.materialSelfListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                materialChecklistData = result.materialChecklistData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                if (isStageSelf) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    updateBillsData(ms_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const newGclGatherListData = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    for (const [index, s] of result.ledgerListData.entries()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        gclGatherModel.loadLedgerData(ledger, s); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        gclGatherModel.loadPosData(pos, result.posListData[index]); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const oneGclGatherData = gclGatherModel.gatherGclData().filter(item => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            return item.qc_qty || item.contract_qty 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        newGclGatherListData.push(oneGclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     } 
															 | 
															
															 | 
															
																                     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    gclGatherListData = newGclGatherListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            } 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            const removeData = []; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            for (const mc of materialChecklistData) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                const gcl = _.find(gclGatherData, { b_code: mc.b_code, name: mc.name, unit: mc.unit, unit_price: mc.unit_price }); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                // 判断是否已不存在工料清单,台账修改过后删除之 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                if (!gcl) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    removeData.push(mc.id); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                } else { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    // 更新had_bills值 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    const updateObj = { id: mc.id }; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    const gcl_ids = gcl.leafXmjs ? _.uniq(_.map(gcl.leafXmjs, 'gcl_id')) : []; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    const jiaoji = _.intersection(gcl_ids, hadBillsidList); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    if (mc.had_bills === 1) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                        if (jiaoji.length === 0) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                            updateObj.mid = materialID; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                            updateObj.had_bills = 0; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                            // updateData.push({ id: mc.id, mid: materialID, had_bills: 0 }); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                // 解析清单汇总数据 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherModel.loadLedgerData(ledger, curLedgerData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherModel.loadPosData(pos, curPosData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherData = gclGatherModel.gatherGclData(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                console.log(gclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                if (openMaterialChecklist) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const hadBillsidList = _.uniq(_.map(gclList, 'gcl_id')); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    console.log(hadBillsidList); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    // 判断是否有修订影响到本次数据,并有几率修改清单设置页的值 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const pushData = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const updateData = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    for (const hb of hadBillsidList) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const gcl = _.find(gclGatherData, function (item) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            return item.leafXmjs && item.leafXmjs.length > 0 && _.findIndex(item.leafXmjs, {gcl_id: hb}) !== -1; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (gcl) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const mc = _.find(materialChecklistData, { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                b_code: gcl.b_code, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                name: gcl.name, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                unit: gcl.unit, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                unit_price: gcl.unit_price 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            // const newOrder = _.indexOf(gclGatherData, gcl); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            // console.log(newOrder); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (!mc && _.findIndex(pushData, { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                b_code: gcl.b_code, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                name: gcl.name, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                unit: gcl.unit, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                unit_price: gcl.unit_price 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            }) === -1) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                pushData.push({ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    b_code: gcl.b_code, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    name: gcl.name, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    unit: gcl.unit, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    unit_price: gcl.unit_price, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    quantity: (gcl.quantity ? gcl.quantity : null), 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    total_price: (gcl.total_price ? gcl.total_price : null), 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    had_bills: 1 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         } 
															 | 
															
															 | 
															
																                         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    } else if (mc.had_bills === 0) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                        if (jiaoji.length !== 0) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                            updateObj.had_bills = 1; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const removeData = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    for (const mc of materialChecklistData) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const gcl = _.find(gclGatherData, { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            b_code: mc.b_code, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            name: mc.name, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            unit: mc.unit, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            unit_price: mc.unit_price 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        // 判断是否已不存在工料清单,台账修改过后删除之 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (!gcl) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            removeData.push(mc.id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            // 更新had_bills值 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const updateObj = {id: mc.id}; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const gcl_ids = gcl.leafXmjs ? _.uniq(_.map(gcl.leafXmjs, 'gcl_id')) : []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const jiaoji = _.intersection(gcl_ids, hadBillsidList); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (mc.had_bills === 1) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                if (jiaoji.length === 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    updateObj.mid = materialID; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    updateObj.had_bills = 0; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    // updateData.push({ id: mc.id, mid: materialID, had_bills: 0 }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } else if (mc.had_bills === 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                if (jiaoji.length !== 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    updateObj.had_bills = 1; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            // 更新工程量及台账金额 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (mc.quantity !== (gcl.quantity ? gcl.quantity : null)) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                updateObj.quantity = gcl.quantity ? gcl.quantity : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                updateObj.total_price = gcl.total_price ? gcl.total_price : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (!_.isEqual(updateObj, {id: mc.id})) updateData.push(updateObj); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         } 
															 | 
															
															 | 
															
																                         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     } 
															 | 
															
															 | 
															
																                     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    // 更新工程量及台账金额 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    if (mc.quantity !== (gcl.quantity ? gcl.quantity : null)) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                        updateObj.quantity = gcl.quantity ? gcl.quantity : null; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                        updateObj.total_price = gcl.total_price ? gcl.total_price : null; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    console.log(pushData, removeData, updateData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    if (pushData.length > 0 || removeData.length > 0 || updateData.length > 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        // materialChecklistData = await postDataAsync('/tender/'+ tenderID +'/measure/material/'+ stage_order +'/checklist/save', { type: 'resetChecklist', pushData, removeData, updateData }) 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     } 
															 | 
															
															 | 
															
																                     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    if(!_.isEqual(updateObj,{ id: mc.id })) updateData.push(updateObj); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                } 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            } 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            console.log(pushData, removeData, updateData); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            if (pushData.length > 0 || removeData.length > 0 || updateData.length > 0) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                // materialChecklistData = await postDataAsync('/tender/'+ tenderID +'/measure/material/'+ stage_order +'/checklist/save', { type: 'resetChecklist', pushData, removeData, updateData }) 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            } 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            gclGatherData = gclGatherData.filter(item => { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                return item.qc_qty || item.contract_qty 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            }); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            // 取交集 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            const selfListGcl = _.uniq(_.map(selfList, 'gcl_id')); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            gclGatherData = _.filter(gclGatherData, function (item) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                if(_.find(materialChecklistData, { b_code: item.b_code, name: item.name, unit: item.unit, unit_price: item.unit_price })) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    return true; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    gclGatherData = gclGatherData.filter(item => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        return item.qc_qty || item.contract_qty 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    // 取交集 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const selfListGcl = _.uniq(_.map(selfList, 'gcl_id')); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    gclGatherData = _.filter(gclGatherData, function (item) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (_.find(materialChecklistData, { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            b_code: item.b_code, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            name: item.name, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            unit: item.unit, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            unit_price: item.unit_price 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        })) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            return true; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const gcl_ids = item.leafXmjs ? _.uniq(_.map(item.leafXmjs, 'gcl_id')) : []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const jiaoji = _.intersection(gcl_ids, selfListGcl); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (jiaoji.length > 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                return true; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } else { 
															 | 
															
															 | 
															
																                 } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    const gcl_ids = item.leafXmjs ? _.uniq(_.map(item.leafXmjs, 'gcl_id')) : []; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    const jiaoji = _.intersection(gcl_ids, selfListGcl); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    if (jiaoji.length > 0) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                        return true; 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    } 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    gclGatherData = gclGatherData.filter(item => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        return item.qc_qty || item.contract_qty 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                calculateJiaCha(gclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                SpreadJsObj.initSheet(leafXmjSpread.getActiveSheet(), leafXmjSpreadSetting); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                // 加载清单数据 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                SpreadJsObj.loadSheetData(ledgerSpread.getActiveSheet(), SpreadJsObj.DataType.Data, gclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                loadLeafXmjData(0); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                loadMaterialData(0); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                loadXmjMaterialData(0, 0); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                const sheet = materialSpread.getActiveSheet(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                sheet.suspendPaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                sheet.setCellType(1, 3, new TipCellType(), spreadNS.SheetArea.colHeader); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                sheet.resumePaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                const selfSheet = materialSelfSpread.getActiveSheet(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                selfSheet.suspendPaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                selfSheet.setCellType(1, 3, new TipCellType(), spreadNS.SheetArea.colHeader); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                selfSheet.resumePaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                checkNotJoinMaterialData(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                first = false; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             }); 
															 | 
															
															 | 
															
																             }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } else { 
															 | 
															
															 | 
															
																         } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            gclGatherData = gclGatherData.filter(item => { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                return item.qc_qty || item.contract_qty 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            }); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            // 解析清单汇总数据 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            // const ms_id = $('#myTab').find('.active').data('msid'); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            updateBillsData(ms_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const i = _.findIndex(materialStageData, { sid }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            gclGatherData = gclGatherListData[i]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            if (openMaterialChecklist) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherData = gclGatherData.filter(item => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    return item.qc_qty || item.contract_qty 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                // 取交集 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                const selfListGcl = _.uniq(_.map(selfList, 'gcl_id')); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherData = _.filter(gclGatherData, function (item) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    if (_.find(materialChecklistData, { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        b_code: item.b_code, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        name: item.name, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        unit: item.unit, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        unit_price: item.unit_price 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    })) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        return true; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const gcl_ids = item.leafXmjs ? _.uniq(_.map(item.leafXmjs, 'gcl_id')) : []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const jiaoji = _.intersection(gcl_ids, selfListGcl); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (jiaoji.length > 0) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            return true; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                gclGatherData = gclGatherData.filter(item => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    return item.qc_qty || item.contract_qty 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            console.log(gclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            calculateJiaCha(gclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            SpreadJsObj.initSheet(leafXmjSpread.getActiveSheet(), leafXmjSpreadSetting); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            // 加载清单数据 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            SpreadJsObj.loadSheetData(ledgerSpread.getActiveSheet(), SpreadJsObj.DataType.Data, gclGatherData); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            loadLeafXmjData(0); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            loadMaterialData(0); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            loadXmjMaterialData(0, 0); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const sheet = materialSpread.getActiveSheet(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            sheet.suspendPaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            sheet.setCellType(1, 3, new TipCellType(), spreadNS.SheetArea.colHeader); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            sheet.resumePaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const selfSheet = materialSelfSpread.getActiveSheet(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            selfSheet.suspendPaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            selfSheet.setCellType(1, 3, new TipCellType(), spreadNS.SheetArea.colHeader); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            selfSheet.resumePaint(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            checkNotJoinMaterialData(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         } 
															 | 
															
															 | 
															
																         } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        calculateJiaCha(gclGatherData); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        SpreadJsObj.initSheet(leafXmjSpread.getActiveSheet(), leafXmjSpreadSetting); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        // 加载清单数据 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        SpreadJsObj.loadSheetData(ledgerSpread.getActiveSheet(), SpreadJsObj.DataType.Data, gclGatherData); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        loadLeafXmjData(0); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        loadMaterialData(0); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        loadXmjMaterialData(0, 0); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        const sheet = materialSpread.getActiveSheet(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        sheet.suspendPaint(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        sheet.setCellType(1, 3, new TipCellType(), spreadNS.SheetArea.colHeader); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        sheet.resumePaint(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        const selfSheet = materialSelfSpread.getActiveSheet(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        selfSheet.suspendPaint(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        selfSheet.setCellType(1, 3, new TipCellType(), spreadNS.SheetArea.colHeader); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        selfSheet.resumePaint(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-        checkNotJoinMaterialData(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    function updateBillsData(ms_id) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        const msbList = _.filter(materialStageBillsData, { ms_id }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        for (const mb of materialBillsData) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            mb.ms_id = ms_id; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const msbInfo = _.find(msbList, { mb_id: mb.id }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            for (const nu of needUpdateArray) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                mb[nu] = msbInfo[nu]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    setListsData(isStageSelf ? materialStageData[0].sid : null, isStageSelf ? materialStageData[0].id : null); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    // 期切换 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    $('#myTab a[data-toggle="tab"]').on('shown.bs.tab', function (e) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        e.preventDefault(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        const ms_id = $('#myTab').find('.active').data('msid'); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        const msInfo = _.find(materialStageData, { id: ms_id }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        showWaitingView(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        setTimeout(function () { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            setListsData(msInfo.sid, ms_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            closeWaitingView(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        }, 500); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     }); 
															 | 
															
															 | 
															
																     }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     // const leafXmjCol = { 
															 | 
															
															 | 
															
																     // const leafXmjCol = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     //     getValue: { 
															 | 
															
															 | 
															
																     //     getValue: { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     //         jiacha: function (data) { 
															 | 
															
															 | 
															
																     //         jiacha: function (data) { 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -485,8 +629,9 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             console.log(xmj, iLXmjRow); 
															 | 
															
															 | 
															
																             console.log(xmj, iLXmjRow); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             materialListSelf = []; 
															 | 
															
															 | 
															
																             materialListSelf = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             if (_.findIndex(selfList, { gcl_id: xmj.gcl_id, xmj_id: xmj.id, mx_id: (xmj.mx_id ? xmj.mx_id : '') }) != -1) { 
															 | 
															
															 | 
															
																             if (_.findIndex(selfList, { gcl_id: xmj.gcl_id, xmj_id: xmj.id, mx_id: (xmj.mx_id ? xmj.mx_id : '') }) != -1) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                const ms_id = isStageSelf ? parseInt($('#myTab').find('.active').data('msid')) : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 for (const m of materialListData) { 
															 | 
															
															 | 
															
																                 for (const m of materialListData) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    if (m.gcl_id === xmj.gcl_id && m.xmj_id === xmj.id && ((xmj.mx_id !==undefined && m.mx_id === xmj.mx_id) || xmj.mx_id === undefined)) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    if (m.gcl_id === xmj.gcl_id && m.xmj_id === xmj.id && ((xmj.mx_id !==undefined && m.mx_id === xmj.mx_id) || xmj.mx_id === undefined) && (ms_id === null || ms_id === m.ms_id)) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         materialListSelf.push(m); 
															 | 
															
															 | 
															
																                         materialListSelf.push(m); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     } 
															 | 
															
															 | 
															
																                     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -576,6 +721,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             const select = SpreadJsObj.getSelectObject(sheet); 
															 | 
															
															 | 
															
																             const select = SpreadJsObj.getSelectObject(sheet); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             const index = gclGatherData.indexOf(select); 
															 | 
															
															 | 
															
																             const index = gclGatherData.indexOf(select); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             const gcl = gclGatherData[index].leafXmjs.filter(item => item.gather_qty !== null && item.gather_qty !== undefined); 
															 | 
															
															 | 
															
																             const gcl = gclGatherData[index].leafXmjs.filter(item => item.gather_qty !== null && item.gather_qty !== undefined); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const ms_id = isStageSelf ? parseInt($('#myTab').find('.active').data('msid')) : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             const datas = []; 
															 | 
															
															 | 
															
																             const datas = []; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             for (const xmj of gcl) { 
															 | 
															
															 | 
															
																             for (const xmj of gcl) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 const notx = findNotJoinLeafXmj(xmj); 
															 | 
															
															 | 
															
																                 const notx = findNotJoinLeafXmj(xmj); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -586,10 +732,35 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     gather_qty: xmj.gather_qty, 
															 | 
															
															 | 
															
																                     gather_qty: xmj.gather_qty, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     is_join: notx === undefined ? 1 : 0, 
															 | 
															
															 | 
															
																                     is_join: notx === undefined ? 1 : 0, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 }; 
															 | 
															
															 | 
															
																                 }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                if (ms_id) data.ms_id = ms_id; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 datas.push(data); 
															 | 
															
															 | 
															
																                 datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             } 
															 | 
															
															 | 
															
																             } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            if (isStageSelf) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                // 取所有的gclGatherData才行,然后获取下的值 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                const gclData = gclGatherData[index]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                for (const [index, ms] of materialStageData.entries()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    if (ms.id !== ms_id) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const gclOther = _.find(gclGatherListData[index], { b_code: gclData.b_code, name: gclData.name, unit: gclData.unit, unit_price: gclData.unit_price }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (gclOther) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const leafXmjs = gclOther.leafXmjs.filter(item => item.gather_qty !== null && item.gather_qty !== undefined); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            for (const xmj of leafXmjs) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                const notx = findNotJoinLeafXmj(xmj); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                const data = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    xmj_id: xmj.id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    gcl_id: xmj.gcl_id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    mx_id: xmj.mx_id ? xmj.mx_id : '', 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    gather_qty: xmj.gather_qty, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    is_join: notx === undefined ? 1 : 0, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    ms_id: ms.id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             console.log(datas, gcl, mb_id); 
															 | 
															
															 | 
															
																             console.log(datas, gcl, mb_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            postData(window.location.pathname + '/save', {type: 'adds', postData: {xmjs: datas, mbIds: mb_id}}, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            postData(window.location.pathname + '/save', {type: 'adds', postData: {xmjs: datas, mbIds: mb_id} }, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 materialListData = result.materialListData; 
															 | 
															
															 | 
															
																                 materialListData = result.materialListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 gclList = result.gclList; 
															 | 
															
															 | 
															
																                 gclList = result.gclList; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 // toastr.success('已成功应用'); 
															 | 
															
															 | 
															
																                 // toastr.success('已成功应用'); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -623,7 +794,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 is_join: notx === undefined ? 1 : 0, 
															 | 
															
															 | 
															
																                 is_join: notx === undefined ? 1 : 0, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             }; 
															 | 
															
															 | 
															
																             }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             console.log(data); 
															 | 
															
															 | 
															
																             console.log(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            postData(window.location.pathname + '/save', {type: 'add', postData: data}, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            postData(window.location.pathname + '/save', {type: 'add', postData: data, ms_id: $('#myTab').find('.active').data('msid') || null }, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 // 添加到materialList里 
															 | 
															
															 | 
															
																                 // 添加到materialList里 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 materialListData = result; 
															 | 
															
															 | 
															
																                 materialListData = result; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 loadXmjMaterialData(index, leafXmjIndex); 
															 | 
															
															 | 
															
																                 loadXmjMaterialData(index, leafXmjIndex); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -654,6 +825,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 const data = { 
															 | 
															
															 | 
															
																                 const data = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     type: type, 
															 | 
															
															 | 
															
																                     type: type, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     select: type === 'join' ? findNotJoinLeafXmj(select) : select, 
															 | 
															
															 | 
															
																                     select: type === 'join' ? findNotJoinLeafXmj(select) : select, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    ms_id: $('#myTab').find('.active').data('msid') || null, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 }; 
															 | 
															
															 | 
															
																                 }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 // 添加到 
															 | 
															
															 | 
															
																                 // 添加到 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 postData(window.location.pathname + '/save', data, function (result) { 
															 | 
															
															 | 
															
																                 postData(window.location.pathname + '/save', data, function (result) { 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -677,6 +849,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 const data = { 
															 | 
															
															 | 
															
																                 const data = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     type: type, 
															 | 
															
															 | 
															
																                     type: type, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     select: type === 'noself' ? findSelfLeafXmj(select) : select, 
															 | 
															
															 | 
															
																                     select: type === 'noself' ? findSelfLeafXmj(select) : select, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    ms_id: $('#myTab').find('.active').data('msid') || null, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 }; 
															 | 
															
															 | 
															
																                 }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 // 添加到 
															 | 
															
															 | 
															
																                 // 添加到 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 postData(window.location.pathname + '/save', data, function (result) { 
															 | 
															
															 | 
															
																                 postData(window.location.pathname + '/save', data, function (result) { 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -816,8 +989,31 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     }; 
															 | 
															
															 | 
															
																                     }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     datas.push(data); 
															 | 
															
															 | 
															
																                     datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                if (isStageSelf) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const ms_id = isStageSelf ? parseInt($('#myTab').find('.active').data('msid')) : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    // 取所有的gclGatherData才行,然后获取下的值 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const gclData = gclGatherData[index]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    for (const [index, ms] of materialStageData.entries()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (ms.id !== ms_id) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const gclOther = _.find(gclGatherListData[index], { b_code: gclData.b_code, name: gclData.name, unit: gclData.unit, unit_price: gclData.unit_price }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (gclOther) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                const leafXmjs = gclOther.leafXmjs.filter(item => item.gather_qty !== null && item.gather_qty !== undefined); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                for (const xmj of leafXmjs) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    const data = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        xmj_id: xmj.id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        gcl_id: xmj.gcl_id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        mx_id: xmj.mx_id ? xmj.mx_id : '', 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    if (_.indexOf(datas, data) === -1) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 console.log(datas, materialSelect.mb_id); 
															 | 
															
															 | 
															
																                 console.log(datas, materialSelect.mb_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                postData(window.location.pathname + '/save', {type: 'dels', postData: { xmjs: datas, mb_id: materialSelect.mb_id }}, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                postData(window.location.pathname + '/save', {type: 'dels', postData: { xmjs: datas, mb_id: materialSelect.mb_id }, ms_id: $('#myTab').find('.active').data('msid') || null}, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     materialListData = result.materialListData; 
															 | 
															
															 | 
															
																                     materialListData = result.materialListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     gclList = result.gclList; 
															 | 
															
															 | 
															
																                     gclList = result.gclList; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     calculateJiaCha(gclGatherData); 
															 | 
															
															 | 
															
																                     calculateJiaCha(gclGatherData); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -918,8 +1114,31 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         }; 
															 | 
															
															 | 
															
																                         }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         datas.push(data); 
															 | 
															
															 | 
															
																                         datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     } 
															 | 
															
															 | 
															
																                     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    if (isStageSelf) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const ms_id = isStageSelf ? parseInt($('#myTab').find('.active').data('msid')) : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        // 取所有的gclGatherData才行,然后获取下的值 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        const gclData = gclGatherData[index]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        for (const [index, ms] of materialStageData.entries()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (ms.id !== ms_id) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                const gclOther = _.find(gclGatherListData[index], { b_code: gclData.b_code, name: gclData.name, unit: gclData.unit, unit_price: gclData.unit_price }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                if (gclOther) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    const leafXmjs = gclOther.leafXmjs.filter(item => item.gather_qty !== null && item.gather_qty !== undefined); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    for (const xmj of leafXmjs) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        const data = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                            xmj_id: xmj.id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                            gcl_id: xmj.gcl_id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                            mx_id: xmj.mx_id ? xmj.mx_id : '', 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        if (_.indexOf(datas, data) === -1) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                            datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     console.log(exprQuantity, datas, select.mb_id); 
															 | 
															
															 | 
															
																                     console.log(exprQuantity, datas, select.mb_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    postData(window.location.pathname + '/save', { type:'updates', updateData: { xmjs: datas, expr: exprQuantity.expr, quantity: exprQuantity.quantity, mb_id: select.mb_id } }, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    postData(window.location.pathname + '/save', { type:'updates', updateData: { xmjs: datas, expr: exprQuantity.expr, quantity: exprQuantity.quantity, mb_id: select.mb_id }, ms_id: $('#myTab').find('.active').data('msid') || null }, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         materialListData = result.materialListData; 
															 | 
															
															 | 
															
																                         materialListData = result.materialListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         gclList = result.gclList; 
															 | 
															
															 | 
															
																                         gclList = result.gclList; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         calculateJiaCha(gclGatherData); 
															 | 
															
															 | 
															
																                         calculateJiaCha(gclGatherData); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -1047,9 +1266,33 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     }; 
															 | 
															
															 | 
															
																                     }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     datas.push(data2); 
															 | 
															
															 | 
															
																                     datas.push(data2); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                if (isStageSelf) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const ms_id = isStageSelf ? parseInt($('#myTab').find('.active').data('msid')) : null; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    // 取所有的gclGatherData才行,然后获取下的值 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    const gclData = gclGatherData[index]; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    for (const [index, ms] of materialStageData.entries()) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        if (ms.id !== ms_id) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            const gclOther = _.find(gclGatherListData[index], { b_code: gclData.b_code, name: gclData.name, unit: gclData.unit, unit_price: gclData.unit_price }); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            console.log(gclOther); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            if (gclOther) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                const leafXmjs = gclOther.leafXmjs.filter(item => item.gather_qty !== null && item.gather_qty !== undefined); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                for (const xmj of leafXmjs) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    const data = { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        xmj_id: xmj.id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        gcl_id: xmj.gcl_id, 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        mx_id: xmj.mx_id ? xmj.mx_id : '', 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    }; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    if (_.indexOf(datas, data) === -1) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                        datas.push(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                            } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                        } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 console.log(data, datas); 
															 | 
															
															 | 
															
																                 console.log(data, datas); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 // 更新至服务器 
															 | 
															
															 | 
															
																                 // 更新至服务器 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                postData(window.location.pathname + '/save', { type:'pastes', updateData: { xmjs: datas, pasteData: data } }, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                postData(window.location.pathname + '/save', { type:'pastes', updateData: { xmjs: datas, pasteData: data }, ms_id: $('#myTab').find('.active').data('msid') || null }, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     materialListData = result.materialListData; 
															 | 
															
															 | 
															
																                     materialListData = result.materialListData; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     gclList = result.gclList; 
															 | 
															
															 | 
															
																                     gclList = result.gclList; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     calculateJiaCha(gclGatherData); 
															 | 
															
															 | 
															
																                     calculateJiaCha(gclGatherData); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -1211,7 +1454,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 const sheet = materialSelfSpread.getActiveSheet(); 
															 | 
															
															 | 
															
																                 const sheet = materialSelfSpread.getActiveSheet(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 const select = SpreadJsObj.getSelectObject(sheet); 
															 | 
															
															 | 
															
																                 const select = SpreadJsObj.getSelectObject(sheet); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 console.log(select); 
															 | 
															
															 | 
															
																                 console.log(select); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                postData(window.location.pathname + '/save', {type: 'del', id: select.id, mb_id: select.mb_id}, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                postData(window.location.pathname + '/save', {type: 'del', id: select.id, mb_id: select.mb_id, ms_id: $('#myTab').find('.active').data('msid') || null}, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     const index = materialListSelf.indexOf(select); 
															 | 
															
															 | 
															
																                     const index = materialListSelf.indexOf(select); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     materialListSelf.splice(index, 1); 
															 | 
															
															 | 
															
																                     materialListSelf.splice(index, 1); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     sheet.deleteRows(index, 1); 
															 | 
															
															 | 
															
																                     sheet.deleteRows(index, 1); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -1286,7 +1529,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     } 
															 | 
															
															 | 
															
																                     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     // 更新至服务器 
															 | 
															
															 | 
															
																                     // 更新至服务器 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     console.log(exprQuantity, select.mb_id); 
															 | 
															
															 | 
															
																                     console.log(exprQuantity, select.mb_id); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                    postData(window.location.pathname + '/save', { type:'update', updateData: { id: select.id, expr: exprQuantity.expr, quantity: exprQuantity.quantity, mb_id: select.mb_id } }, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                    postData(window.location.pathname + '/save', { type:'update', updateData: { id: select.id, expr: exprQuantity.expr, quantity: exprQuantity.quantity, mb_id: select.mb_id }, ms_id: $('#myTab').find('.active').data('msid') || null }, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         const materialListIndex = materialListData.indexOf(select); 
															 | 
															
															 | 
															
																                         const materialListIndex = materialListData.indexOf(select); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         const index = materialList.indexOf(select); 
															 | 
															
															 | 
															
																                         const index = materialList.indexOf(select); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                         select.quantity = exprQuantity.quantity; 
															 | 
															
															 | 
															
																                         select.quantity = exprQuantity.quantity; 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -1387,7 +1630,7 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     return; 
															 | 
															
															 | 
															
																                     return; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 } 
															 | 
															
															 | 
															
																                 } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                 console.log(data); 
															 | 
															
															 | 
															
																                 console.log(data); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-                postData(window.location.pathname + '/save', { type:'paste', updateData: data }, function (result) { 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+                postData(window.location.pathname + '/save', { type:'paste', updateData: data, ms_id: $('#myTab').find('.active').data('msid') || null }, function (result) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     materialListData = result; 
															 | 
															
															 | 
															
																                     materialListData = result; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     const [iGclRow, iRow, nRow, sheet, lselect] = leafXmjSpreadObj.getSelect(); 
															 | 
															
															 | 
															
																                     const [iGclRow, iRow, nRow, sheet, lselect] = leafXmjSpreadObj.getSelect(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																                     gclGatherData[iGclRow].leafXmjs[iRow].jiacha = calcOneBQJC(lselect); 
															 | 
															
															 | 
															
																                     gclGatherData[iGclRow].leafXmjs[iRow].jiacha = calcOneBQJC(lselect); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -1677,10 +1920,12 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     $.divResizer({ 
															 | 
															
															 | 
															
																     $.divResizer({ 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         select: '#main-resize', 
															 | 
															
															 | 
															
																         select: '#main-resize', 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         callback: function () { 
															 | 
															
															 | 
															
																         callback: function () { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            materialSpread.refresh(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																-            ledgerSpread.refresh(); 
															 | 
															
															 | 
															
																 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             let bcontent = $(".bcontent-wrap") ? $(".bcontent-wrap").height() : 0; 
															 | 
															
															 | 
															
																             let bcontent = $(".bcontent-wrap") ? $(".bcontent-wrap").height() : 0; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            const cutHeight = isStageSelf ? getObjHeight($('#myTab')) : 0; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            $('.sjs-height-material').height($('.sjs-height-1').height() - cutHeight); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             $(".sp-wrap").height(bcontent-30); 
															 | 
															
															 | 
															
																             $(".sp-wrap").height(bcontent-30); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            materialSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+            ledgerSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             leafXmjSpread.refresh(); 
															 | 
															
															 | 
															
																             leafXmjSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             materialSelfSpread.refresh(); 
															 | 
															
															 | 
															
																             materialSelfSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																             const height = $('.bcontent-wrap').height(); 
															 | 
															
															 | 
															
																             const height = $('.bcontent-wrap').height(); 
															 | 
														
													
												
											
												
													
														
															 | 
															
																@@ -1725,16 +1970,21 @@ $(document).ready(() => { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         // leafXmjSpread.refresh(); 
															 | 
															
															 | 
															
																         // leafXmjSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         materialSpread.refresh(); 
															 | 
															
															 | 
															
																         materialSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     } 
															 | 
															
															 | 
															
																     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    const cutHeight = isStageSelf ? getObjHeight($('#myTab')) : 0; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     if (getLocalCache('material_list2_' + materialID)) { 
															 | 
															
															 | 
															
																     if (getLocalCache('material_list2_' + materialID)) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         $('.bcontent-wrap').height(getLocalCache('material_list2_' + materialID)); 
															 | 
															
															 | 
															
																         $('.bcontent-wrap').height(getLocalCache('material_list2_' + materialID)); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         const cHeader = getObjHeight($(".c-header")); 
															 | 
															
															 | 
															
																         const cHeader = getObjHeight($(".c-header")); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         const bcontent = $(".bcontent-wrap") ? $(".bcontent-wrap").height() : 0; 
															 | 
															
															 | 
															
																         const bcontent = $(".bcontent-wrap") ? $(".bcontent-wrap").height() : 0; 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         $(".sp-wrap").height(bcontent-30); 
															 | 
															
															 | 
															
																         $(".sp-wrap").height(bcontent-30); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         $('.sjs-height-1').height($(window).height()-cHeader-bcontent-90+53); 
															 | 
															
															 | 
															
																         $('.sjs-height-1').height($(window).height()-cHeader-bcontent-90+53); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        $('.sjs-height-material').height($('.sjs-height-1').height() - cutHeight); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         materialSpread.refresh(); 
															 | 
															
															 | 
															
																         materialSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         ledgerSpread.refresh(); 
															 | 
															
															 | 
															
																         ledgerSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         leafXmjSpread.refresh(); 
															 | 
															
															 | 
															
																         leafXmjSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         materialSelfSpread.refresh(); 
															 | 
															
															 | 
															
																         materialSelfSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+    } else { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        $('.sjs-height-material').height($('.sjs-height-1').height() - cutHeight); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																 
															 | 
															
															 | 
															
																+        ledgerSpread.refresh(); 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     } 
															 | 
															
															 | 
															
																     } 
															 | 
														
													
												
													
														
															| 
															 | 
															
																     function getObjHeight(select) { 
															 | 
															
															 | 
															
																     function getObjHeight(select) { 
															 | 
														
													
												
													
														
															| 
															 | 
															
																         return select.length > 0 ? select.height() : 0; 
															 | 
															
															 | 
															
																         return select.length > 0 ? select.height() : 0; 
															 |