|
@@ -804,177 +804,179 @@ $(document).ready(() => {
|
|
|
}
|
|
|
$('#materialBills').find('input:disabled').prop('checked', true);
|
|
|
});
|
|
|
+ const leafXmjSpreadObj = {
|
|
|
+ getSelect : function () {
|
|
|
+ const sheet = ledgerSpread.getActiveSheet();
|
|
|
+ const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
+ const index = gclGatherData.indexOf(select);
|
|
|
+ const leafXmjSheet = leafXmjSpread.getActiveSheet();
|
|
|
+ const leafXmjSelect = SpreadJsObj.getSelectObject(leafXmjSheet);
|
|
|
+ const iRow = gclGatherData[index].leafXmjs.indexOf(leafXmjSelect);
|
|
|
+ const leafXmjs = gclGatherData[index].leafXmjs.filter(item => {
|
|
|
+ return item.qc_qty || item.contract_qty
|
|
|
+ });
|
|
|
+ const nRow = leafXmjs.indexOf(leafXmjSelect);
|
|
|
+ const leafXmjColor = findNotJoinLeafXmj(leafXmjSelect) ? '#d6d8db' : '';
|
|
|
+ return [index, iRow, nRow, leafXmjSheet, leafXmjSelect, leafXmjColor];
|
|
|
+ },
|
|
|
+ checkJoinMaterial: function (type) {
|
|
|
+ const [iGclRow, iRow, nRow, sheet, select] = leafXmjSpreadObj.getSelect();
|
|
|
+ const color = type === 'join' ? '' : '#d6d8db';
|
|
|
+ const data = {
|
|
|
+ type: type,
|
|
|
+ select: type === 'join' ? findNotJoinLeafXmj(select) : select,
|
|
|
+ ms_id: $('#myTab').find('.active').data('msid') || null,
|
|
|
+ };
|
|
|
+ // 添加到
|
|
|
+ postData(window.location.pathname + '/save', data, function (result) {
|
|
|
+ if (type === 'join') {
|
|
|
+ const index = findNotJoinLeafXmj(select, 'index');
|
|
|
+ notJoinList.splice(index, 1);
|
|
|
+ } else {
|
|
|
+ notJoinList.push(result);
|
|
|
+ }
|
|
|
+ gclGatherData[iGclRow].leafXmjs[iRow].jiacha = calcOneBQJC(select);
|
|
|
+ calculateJiaCha(gclGatherData, iGclRow);
|
|
|
+ SpreadJsObj.reLoadRowData(sheet, nRow);
|
|
|
+ sheet.getRange(nRow, -1, 1, -1).backColor(color);
|
|
|
+ loadMaterialData(iGclRow);
|
|
|
+ SpreadJsObj.reLoadRowData(ledgerSpread.getActiveSheet(), iGclRow);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ checkSelfMaterial: function (type) {
|
|
|
+ const [iGclRow, iRow, nRow, sheet, select, color] = leafXmjSpreadObj.getSelect();
|
|
|
+ // const color = type === 'self' ? '' : '#d6d8db';
|
|
|
+ const data = {
|
|
|
+ type: type,
|
|
|
+ select: type === 'noself' ? findSelfLeafXmj(select) : select,
|
|
|
+ ms_id: $('#myTab').find('.active').data('msid') || null,
|
|
|
+ };
|
|
|
+ // 添加到
|
|
|
+ postData(window.location.pathname + '/save', data, function (result) {
|
|
|
+ if (type === 'noself') {
|
|
|
+ const index = findSelfLeafXmj(select, 'index');
|
|
|
+ selfList.splice(index, 1);
|
|
|
+ materialListData = result;
|
|
|
+ $('#cancel-self').modal('hide');
|
|
|
+ } else {
|
|
|
+ selfList.push(result);
|
|
|
+ }
|
|
|
+ gclGatherData[iGclRow].leafXmjs[iRow].jiacha = calcOneBQJC(select);
|
|
|
+ calculateJiaCha(gclGatherData, iGclRow);
|
|
|
+ SpreadJsObj.reLoadRowData(sheet, nRow);
|
|
|
+ sheet.getRange(nRow, -1, 1, -1).backColor(color);
|
|
|
+ loadXmjMaterialData(iGclRow, nRow);
|
|
|
+ SpreadJsObj.reLoadRowData(ledgerSpread.getActiveSheet(), iGclRow);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ }
|
|
|
if (!readOnly) {
|
|
|
- const leafXmjSpreadObj = {
|
|
|
- getSelect : function () {
|
|
|
- const sheet = ledgerSpread.getActiveSheet();
|
|
|
- const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
- const index = gclGatherData.indexOf(select);
|
|
|
- const leafXmjSheet = leafXmjSpread.getActiveSheet();
|
|
|
- const leafXmjSelect = SpreadJsObj.getSelectObject(leafXmjSheet);
|
|
|
- const iRow = gclGatherData[index].leafXmjs.indexOf(leafXmjSelect);
|
|
|
- const leafXmjs = gclGatherData[index].leafXmjs.filter(item => {
|
|
|
- return item.qc_qty || item.contract_qty
|
|
|
- });
|
|
|
- const nRow = leafXmjs.indexOf(leafXmjSelect);
|
|
|
- const leafXmjColor = findNotJoinLeafXmj(leafXmjSelect) ? '#d6d8db' : '';
|
|
|
- return [index, iRow, nRow, leafXmjSheet, leafXmjSelect, leafXmjColor];
|
|
|
- },
|
|
|
- checkJoinMaterial: function (type) {
|
|
|
- const [iGclRow, iRow, nRow, sheet, select] = leafXmjSpreadObj.getSelect();
|
|
|
- const color = type === 'join' ? '' : '#d6d8db';
|
|
|
- const data = {
|
|
|
- type: type,
|
|
|
- select: type === 'join' ? findNotJoinLeafXmj(select) : select,
|
|
|
- ms_id: $('#myTab').find('.active').data('msid') || null,
|
|
|
- };
|
|
|
- // 添加到
|
|
|
- postData(window.location.pathname + '/save', data, function (result) {
|
|
|
- if (type === 'join') {
|
|
|
- const index = findNotJoinLeafXmj(select, 'index');
|
|
|
- notJoinList.splice(index, 1);
|
|
|
- } else {
|
|
|
- notJoinList.push(result);
|
|
|
- }
|
|
|
- gclGatherData[iGclRow].leafXmjs[iRow].jiacha = calcOneBQJC(select);
|
|
|
- calculateJiaCha(gclGatherData, iGclRow);
|
|
|
- SpreadJsObj.reLoadRowData(sheet, nRow);
|
|
|
- sheet.getRange(nRow, -1, 1, -1).backColor(color);
|
|
|
- loadMaterialData(iGclRow);
|
|
|
- SpreadJsObj.reLoadRowData(ledgerSpread.getActiveSheet(), iGclRow);
|
|
|
- });
|
|
|
- },
|
|
|
- checkSelfMaterial: function (type) {
|
|
|
- const [iGclRow, iRow, nRow, sheet, select, color] = leafXmjSpreadObj.getSelect();
|
|
|
- // const color = type === 'self' ? '' : '#d6d8db';
|
|
|
- const data = {
|
|
|
- type: type,
|
|
|
- select: type === 'noself' ? findSelfLeafXmj(select) : select,
|
|
|
- ms_id: $('#myTab').find('.active').data('msid') || null,
|
|
|
- };
|
|
|
- // 添加到
|
|
|
- postData(window.location.pathname + '/save', data, function (result) {
|
|
|
- if (type === 'noself') {
|
|
|
- const index = findSelfLeafXmj(select, 'index');
|
|
|
- selfList.splice(index, 1);
|
|
|
- materialListData = result;
|
|
|
- $('#cancel-self').modal('hide');
|
|
|
- } else {
|
|
|
- selfList.push(result);
|
|
|
- }
|
|
|
- gclGatherData[iGclRow].leafXmjs[iRow].jiacha = calcOneBQJC(select);
|
|
|
- calculateJiaCha(gclGatherData, iGclRow);
|
|
|
- SpreadJsObj.reLoadRowData(sheet, nRow);
|
|
|
- sheet.getRange(nRow, -1, 1, -1).backColor(color);
|
|
|
- loadXmjMaterialData(iGclRow, nRow);
|
|
|
- SpreadJsObj.reLoadRowData(ledgerSpread.getActiveSheet(), iGclRow);
|
|
|
- });
|
|
|
- },
|
|
|
- }
|
|
|
// leafXmj右键功能
|
|
|
- $.contextMenu({
|
|
|
- selector: '#leaf-xmj-spread',
|
|
|
- build: function ($trigger, e) {
|
|
|
- const target = SpreadJsObj.safeRightClickSelection($trigger, e, leafXmjSpread);
|
|
|
- return target.hitTestType === GC.Spread.Sheets.SheetArea.viewport || target.hitTestType === GC.Spread.Sheets.SheetArea.rowHeader;
|
|
|
- },
|
|
|
- items: {
|
|
|
- 'stop': {
|
|
|
- name: '不参与调差',
|
|
|
- icon: 'fa-remove',
|
|
|
- callback: function (key, opt) {
|
|
|
- leafXmjSpreadObj.checkJoinMaterial('notjoin');
|
|
|
- },
|
|
|
- visible: function (key, opt) {
|
|
|
- const sheet = leafXmjSpread.getActiveSheet();
|
|
|
- const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
- const sel = sheet.getSelections()[0];
|
|
|
- if (!select || sel.rowCount !== 1) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- const notx = findNotJoinLeafXmj(select);
|
|
|
- if (!readOnly && select && notx === undefined) {
|
|
|
- return true;
|
|
|
- } else {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
+ if (!editForAudit) {
|
|
|
+ $.contextMenu({
|
|
|
+ selector: '#leaf-xmj-spread',
|
|
|
+ build: function ($trigger, e) {
|
|
|
+ const target = SpreadJsObj.safeRightClickSelection($trigger, e, leafXmjSpread);
|
|
|
+ return target.hitTestType === GC.Spread.Sheets.SheetArea.viewport || target.hitTestType === GC.Spread.Sheets.SheetArea.rowHeader;
|
|
|
},
|
|
|
- 'start': {
|
|
|
- name: '参与调差',
|
|
|
- icon: 'fa-sign-in',
|
|
|
- callback: function (key, opt) {
|
|
|
- leafXmjSpreadObj.checkJoinMaterial('join');
|
|
|
- },
|
|
|
- visible: function (key, opt) {
|
|
|
- const sheet = leafXmjSpread.getActiveSheet();
|
|
|
- const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
- const sel = sheet.getSelections()[0];
|
|
|
- if (!select || sel.rowCount !== 1) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- const notx = findNotJoinLeafXmj(select);
|
|
|
- if (!readOnly && select && notx === undefined) {
|
|
|
- return false;
|
|
|
- } else {
|
|
|
- return true;
|
|
|
+ items: {
|
|
|
+ 'stop': {
|
|
|
+ name: '不参与调差',
|
|
|
+ icon: 'fa-remove',
|
|
|
+ callback: function (key, opt) {
|
|
|
+ leafXmjSpreadObj.checkJoinMaterial('notjoin');
|
|
|
+ },
|
|
|
+ visible: function (key, opt) {
|
|
|
+ const sheet = leafXmjSpread.getActiveSheet();
|
|
|
+ const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
+ const sel = sheet.getSelections()[0];
|
|
|
+ if (!select || sel.rowCount !== 1) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const notx = findNotJoinLeafXmj(select);
|
|
|
+ if (!readOnly && select && notx === undefined) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
- },
|
|
|
- 'self': {
|
|
|
- name: '单独添加工料',
|
|
|
- icon: 'fa-sign-in',
|
|
|
- callback: function (key, opt) {
|
|
|
- leafXmjSpreadObj.checkSelfMaterial('self');
|
|
|
+ 'start': {
|
|
|
+ name: '参与调差',
|
|
|
+ icon: 'fa-sign-in',
|
|
|
+ callback: function (key, opt) {
|
|
|
+ leafXmjSpreadObj.checkJoinMaterial('join');
|
|
|
+ },
|
|
|
+ visible: function (key, opt) {
|
|
|
+ const sheet = leafXmjSpread.getActiveSheet();
|
|
|
+ const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
+ const sel = sheet.getSelections()[0];
|
|
|
+ if (!select || sel.rowCount !== 1) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const notx = findNotJoinLeafXmj(select);
|
|
|
+ if (!readOnly && select && notx === undefined) {
|
|
|
+ return false;
|
|
|
+ } else {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
- visible: function (key, opt) {
|
|
|
- if (!openMaterialSelf) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- const sheet = leafXmjSpread.getActiveSheet();
|
|
|
- const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
- const sel = sheet.getSelections()[0];
|
|
|
- if (!select || sel.rowCount !== 1) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- const notx = findSelfLeafXmj(select);
|
|
|
- if (!readOnly && select && notx === undefined) {
|
|
|
- return true;
|
|
|
- } else {
|
|
|
- return false;
|
|
|
+ 'self': {
|
|
|
+ name: '单独添加工料',
|
|
|
+ icon: 'fa-sign-in',
|
|
|
+ callback: function (key, opt) {
|
|
|
+ leafXmjSpreadObj.checkSelfMaterial('self');
|
|
|
+ },
|
|
|
+ visible: function (key, opt) {
|
|
|
+ if (!openMaterialSelf) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const sheet = leafXmjSpread.getActiveSheet();
|
|
|
+ const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
+ const sel = sheet.getSelections()[0];
|
|
|
+ if (!select || sel.rowCount !== 1) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const notx = findSelfLeafXmj(select);
|
|
|
+ if (!readOnly && select && notx === undefined) {
|
|
|
+ return true;
|
|
|
+ } else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
}
|
|
|
- }
|
|
|
- },
|
|
|
- 'noself': {
|
|
|
- name: '取消单独添加工料',
|
|
|
- icon: 'fa-remove',
|
|
|
- callback: function (key, opt) {
|
|
|
- $('#cancel-self').modal('show');
|
|
|
- // leafXmjSpreadObj.checkSelfMaterial('noself');
|
|
|
},
|
|
|
- visible: function (key, opt) {
|
|
|
- if (!openMaterialSelf) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- const sheet = leafXmjSpread.getActiveSheet();
|
|
|
- const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
- const sel = sheet.getSelections()[0];
|
|
|
- if (!select || sel.rowCount !== 1) {
|
|
|
- return false;
|
|
|
- }
|
|
|
- const notx = findSelfLeafXmj(select);
|
|
|
- if (!readOnly && select && notx === undefined) {
|
|
|
- return false;
|
|
|
- } else {
|
|
|
- return true;
|
|
|
- }
|
|
|
+ 'noself': {
|
|
|
+ name: '取消单独添加工料',
|
|
|
+ icon: 'fa-remove',
|
|
|
+ callback: function (key, opt) {
|
|
|
+ $('#cancel-self').modal('show');
|
|
|
+ // leafXmjSpreadObj.checkSelfMaterial('noself');
|
|
|
+ },
|
|
|
+ visible: function (key, opt) {
|
|
|
+ if (!openMaterialSelf) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const sheet = leafXmjSpread.getActiveSheet();
|
|
|
+ const select = SpreadJsObj.getSelectObject(sheet);
|
|
|
+ const sel = sheet.getSelections()[0];
|
|
|
+ if (!select || sel.rowCount !== 1) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ const notx = findSelfLeafXmj(select);
|
|
|
+ if (!readOnly && select && notx === undefined) {
|
|
|
+ return false;
|
|
|
+ } else {
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ },
|
|
|
},
|
|
|
- },
|
|
|
- }
|
|
|
- });
|
|
|
- $('#cancelSelfBtn').click(function () {
|
|
|
- leafXmjSpreadObj.checkSelfMaterial('noself');
|
|
|
- });
|
|
|
+ }
|
|
|
+ });
|
|
|
+ $('#cancelSelfBtn').click(function () {
|
|
|
+ leafXmjSpreadObj.checkSelfMaterial('noself');
|
|
|
+ });
|
|
|
+ }
|
|
|
// material-spread右键功能
|
|
|
const materialSpreadObj = {
|
|
|
del: function () {
|
|
@@ -1674,7 +1676,7 @@ $(document).ready(() => {
|
|
|
materialSelfSpread.bind(spreadNS.Events.ClipboardPasted, materialSelfSpreadObj.clipboardPasted);
|
|
|
SpreadJsObj.addDeleteBind(materialSelfSpread, materialSelfSpreadObj.deletePress);
|
|
|
}
|
|
|
- if (!openMaterialChecklist) {
|
|
|
+ if (!openMaterialChecklist && !editForAudit) {
|
|
|
$.contextMenu({
|
|
|
selector: '#material-spread',
|
|
|
build: function ($trigger, e) {
|
|
@@ -1728,7 +1730,7 @@ $(document).ready(() => {
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
- if (openMaterialSelf) {
|
|
|
+ if (openMaterialSelf && !editForAudit) {
|
|
|
$.contextMenu({
|
|
|
selector: '#material-self-spread',
|
|
|
build: function ($trigger, e) {
|