|
@@ -183,7 +183,8 @@ $(document).ready(() => {
|
|
|
SpreadJsObj.loadSheetData(ledgerSpread.getActiveSheet(), SpreadJsObj.DataType.Data, materialChecklistData);
|
|
|
SpreadJsObj.resetTopAndSelect(ledgerSpread.getActiveSheet());
|
|
|
if (materialChecklistData.length > 0) {
|
|
|
- loadMaterialData(materialChecklistData[0].order, 0);
|
|
|
+ const index = _.findIndex(gclGatherData, { b_code: materialChecklistData[0].b_code, name: materialChecklistData[0].name, unit: materialChecklistData[0].unit, unit_price: materialChecklistData[0].unit_price });
|
|
|
+ loadMaterialData(index, 0);
|
|
|
} else {
|
|
|
loadMaterialData(-1, 0);
|
|
|
}
|
|
@@ -272,16 +273,15 @@ $(document).ready(() => {
|
|
|
const pushData = [];
|
|
|
for (const sc of select_checklist) {
|
|
|
const order = parseInt($(sc).val());
|
|
|
- const checklistInfo = _.find(materialChecklistData, { order: order });
|
|
|
+ const checklistInfo = _.find(materialChecklistData, { b_code: gclGatherData[order].b_code, name: gclGatherData[order].name, unit: gclGatherData[order].unit, unit_price: gclGatherData[order].unit_price });
|
|
|
if (!checklistInfo) {
|
|
|
pushData.push({
|
|
|
- order: order,
|
|
|
b_code: gclGatherData[order].b_code,
|
|
|
name: gclGatherData[order].name,
|
|
|
unit: gclGatherData[order].unit,
|
|
|
unit_price: gclGatherData[order].unit_price,
|
|
|
- quantity: gclGatherData[order].quantity,
|
|
|
- total_price: gclGatherData[order].total_price,
|
|
|
+ quantity: gclGatherData[order].quantity ? gclGatherData[order].quantity : null,
|
|
|
+ total_price: gclGatherData[order].total_price ? gclGatherData[order].total_price : null,
|
|
|
had_bills: 0,
|
|
|
})
|
|
|
}
|
|
@@ -290,7 +290,8 @@ $(document).ready(() => {
|
|
|
const removeData = [];
|
|
|
for (const nsc of notSelect_checklist) {
|
|
|
const order = parseInt($(nsc).val());
|
|
|
- const checklistInfo = _.find(materialChecklistData, { order: order });
|
|
|
+ // const order = parseInt($(nsc).attr('data-index'));
|
|
|
+ const checklistInfo = _.find(materialChecklistData, { b_code: gclGatherData[order].b_code, name: gclGatherData[order].name, unit: gclGatherData[order].unit, unit_price: gclGatherData[order].unit_price });
|
|
|
if (checklistInfo) {
|
|
|
removeData.push(checklistInfo.id);
|
|
|
}
|
|
@@ -308,7 +309,8 @@ $(document).ready(() => {
|
|
|
SpreadJsObj.loadSheetData(ledgerSpread.getActiveSheet(), SpreadJsObj.DataType.Data, newMaterialChecklistData);
|
|
|
SpreadJsObj.resetTopAndSelect(ledgerSpread.getActiveSheet());
|
|
|
if (newMaterialChecklistData.length > 0) {
|
|
|
- loadMaterialData(newMaterialChecklistData[0].order, 0);
|
|
|
+ const index = _.findIndex(gclGatherData, { b_code: newMaterialChecklistData[0].b_code, name: newMaterialChecklistData[0].name, unit: newMaterialChecklistData[0].unit, unit_price: newMaterialChecklistData[0].unit_price });
|
|
|
+ loadMaterialData(index, 0);
|
|
|
} else {
|
|
|
loadMaterialData(-1, 0);
|
|
|
}
|
|
@@ -330,7 +332,8 @@ $(document).ready(() => {
|
|
|
// 获取当前项目节或部位明细id
|
|
|
const sheet = ledgerSpread.getActiveSheet();
|
|
|
const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
- const gcl = gclGatherData[select.order].leafXmjs;
|
|
|
+ const gclIndex = _.findIndex(gclGatherData, { b_code: select.b_code, name: select.name, unit: select.unit, unit_price: select.unit_price });
|
|
|
+ const gcl = gclGatherData[gclIndex].leafXmjs;
|
|
|
const index = materialChecklistData.indexOf(select);
|
|
|
const datas = [];
|
|
|
for (const xmj of gcl) {
|
|
@@ -349,7 +352,7 @@ $(document).ready(() => {
|
|
|
postData(window.location.pathname + '/save', {type: 'adds', checklist: { id: select.id, had_bills: 1 }, postData: {xmjs: datas, mbIds: mb_id}}, function (result) {
|
|
|
materialListData = result;
|
|
|
materialChecklistData[index].had_bills = 1;
|
|
|
- loadMaterialData(select.order, 0);
|
|
|
+ loadMaterialData(gclIndex, 0);
|
|
|
// SpreadJsObj.reLoadRowData(ledgerSpread.getActiveSheet(), index);
|
|
|
$('#addgl').modal('hide');
|
|
|
});
|
|
@@ -364,7 +367,8 @@ $(document).ready(() => {
|
|
|
const sheet = ledgerSpread.getActiveSheet();
|
|
|
const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
const index = materialChecklistData.indexOf(select);
|
|
|
- const gcl = gclGatherData[select.order].leafXmjs;
|
|
|
+ const gclIndex = _.findIndex(gclGatherData, { b_code: select.b_code, name: select.name, unit: select.unit, unit_price: select.unit_price });
|
|
|
+ const gcl = gclGatherData[gclIndex].leafXmjs;
|
|
|
const datas = [];
|
|
|
for (const xmj of gcl) {
|
|
|
const data = {
|
|
@@ -389,7 +393,7 @@ $(document).ready(() => {
|
|
|
postData(window.location.pathname + '/save', {type: 'dels', checklist, postData: { xmjs: datas, mb_id: materialSelect.mb_id }}, function (result) {
|
|
|
materialListData = result;
|
|
|
if (checklist) materialChecklistData[index].had_bills = checklist.had_bills;
|
|
|
- loadMaterialData(select.order, 0);
|
|
|
+ loadMaterialData(gclIndex, 0);
|
|
|
// SpreadJsObj.reLoadRowData(ledgerSpread.getActiveSheet(), index);
|
|
|
});
|
|
|
},
|
|
@@ -445,7 +449,8 @@ $(document).ready(() => {
|
|
|
// 更新至服务器
|
|
|
const ledgerSheet = ledgerSpread.getActiveSheet();
|
|
|
const ledgerSelect = SpreadJsObj.getSelectObject(ledgerSheet);
|
|
|
- const gcl = gclGatherData[ledgerSelect.order].leafXmjs;
|
|
|
+ const gclIndex = _.findIndex(gclGatherData, { b_code: ledgerSelect.b_code, name: ledgerSelect.name, unit: ledgerSelect.unit, unit_price: ledgerSelect.unit_price });
|
|
|
+ const gcl = gclGatherData[gclIndex].leafXmjs;
|
|
|
const datas = [];
|
|
|
for (const xmj of gcl) {
|
|
|
const data = {
|
|
@@ -458,7 +463,7 @@ $(document).ready(() => {
|
|
|
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) {
|
|
|
materialListData = result;
|
|
|
- loadMaterialData(ledgerSelect.order, 0);
|
|
|
+ loadMaterialData(gclIndex, 0);
|
|
|
materialSpread.getActiveSheet().setSelection(info.row + 1, info.col, 1, 1);
|
|
|
}, function () {
|
|
|
SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
@@ -541,7 +546,8 @@ $(document).ready(() => {
|
|
|
}
|
|
|
const ledgerSheet = ledgerSpread.getActiveSheet();
|
|
|
const ledgerSelect = SpreadJsObj.getSelectObject(ledgerSheet);
|
|
|
- const gcl = gclGatherData[ledgerSelect.order].leafXmjs;
|
|
|
+ const gclIndex = _.findIndex(gclGatherData, { b_code: ledgerSelect.b_code, name: ledgerSelect.name, unit: ledgerSelect.unit, unit_price: ledgerSelect.unit_price });
|
|
|
+ const gcl = gclGatherData[gclIndex].leafXmjs;
|
|
|
const datas = [];
|
|
|
for (const xmj of gcl) {
|
|
|
const data2 = {
|
|
@@ -555,7 +561,7 @@ $(document).ready(() => {
|
|
|
// 更新至服务器
|
|
|
postData(window.location.pathname + '/save', { type:'pastes', updateData: { xmjs: datas, pasteData: data } }, function (result) {
|
|
|
materialListData = result;
|
|
|
- loadMaterialData(ledgerSelect.order, 0);
|
|
|
+ loadMaterialData(gclIndex, 0);
|
|
|
materialSpread.getActiveSheet().setSelection(info.cellRange.row, info.cellRange.col, info.cellRange.rowCount, info.cellRange.colCount);
|
|
|
}, function () {
|
|
|
SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
@@ -742,7 +748,10 @@ $(document).ready(() => {
|
|
|
if (info.oldSelections !== undefined) {
|
|
|
const iOldRow = info.oldSelections[0].row, iNewRow = info.newSelections[0].row;
|
|
|
if (iNewRow !== iOldRow) {
|
|
|
- loadMaterialData(materialChecklistData[iNewRow].order, 0);
|
|
|
+ const sheet = ledgerSpread.getActiveSheet();
|
|
|
+ const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
+ const index = _.findIndex(gclGatherData, { b_code: select.b_code, name: select.name, unit: select.unit, unit_price: select.unit_price });
|
|
|
+ loadMaterialData(index, 0);
|
|
|
}
|
|
|
}
|
|
|
});
|