|
@@ -180,6 +180,7 @@ $(document).ready(() => {
|
|
|
|
|
|
const changeSpreadSetting = {
|
|
|
cols: [
|
|
|
+ {title: '新增单价', colSpan: '1', rowSpan: '2', field: 'new_up', hAlign: 1, width: 35, cellType: 'checkbox', readOnly: 'readOnly.isEdit'},
|
|
|
{title: '清单编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 110, formatter: '@', readOnly: 'readOnly.isEdit'},
|
|
|
{title: '名称', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 130, formatter: '@', readOnly: 'readOnly.isEdit'},
|
|
|
{title: '单位', colSpan: '1', rowSpan: '2', field: 'unit', hAlign: 1, width: 60, formatter: '@', readOnly: 'readOnly.isEdit', cellType: 'unit', comboItems: changeUnits, comboEdit: true},
|
|
@@ -226,6 +227,8 @@ $(document).ready(() => {
|
|
|
changeSpreadSetting.cols.push(newColTp);
|
|
|
}
|
|
|
}
|
|
|
+ changeSpreadSetting.cols.push({title: '备注1', colSpan: '1', rowSpan: '2', field: 'ex_memo1', hAlign: 0, width: 110, formatter: '@', readOnly: 'readOnly.isEdit2'});
|
|
|
+ changeSpreadSetting.cols.push({title: '备注2', colSpan: '1', rowSpan: '2', field: 'ex_memo2', hAlign: 0, width: 110, formatter: '@', readOnly: 'readOnly.isEdit2'});
|
|
|
|
|
|
const changeCol = {
|
|
|
getValue: {
|
|
@@ -255,13 +258,18 @@ $(document).ready(() => {
|
|
|
isEdit: function (data) {
|
|
|
return readOnly;
|
|
|
},
|
|
|
+ isEdit2: function (data) {
|
|
|
+ return change.status === auditConst.status.checked;
|
|
|
+ },
|
|
|
},
|
|
|
};
|
|
|
const changeSpreadObj = {
|
|
|
makeSjsFooter: function() {
|
|
|
// 增加汇总行并设为锁定禁止编辑状态
|
|
|
changeSpreadSheet.addRows(changeSpreadSheet.getRowCount(), 1);
|
|
|
- changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 0, '合计');
|
|
|
+ changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 1, '合计');
|
|
|
+ const cellType1 = new GC.Spread.Sheets.CellTypes.Text();
|
|
|
+ changeSpreadSheet.getCell(changeSpreadSheet.getRowCount() - 1, 0).cellType(cellType1);
|
|
|
changeSpreadSheet.setStyle(changeSpreadSheet.getRowCount() - 1, -1, style1);
|
|
|
changeSpreadObj.countSum();
|
|
|
},
|
|
@@ -294,20 +302,20 @@ $(document).ready(() => {
|
|
|
cSum = 0,
|
|
|
sSum = 0;
|
|
|
for (let i = 0; i < rowCount - 1; i++) {
|
|
|
- oSum = ZhCalc.add(oSum, changeSpreadSheet.getValue(i, 5));
|
|
|
- cSum = ZhCalc.add(cSum, changeSpreadSheet.getValue(i, 7));
|
|
|
- sSum = ZhCalc.add(sSum, changeSpreadSheet.getValue(i, 9));
|
|
|
+ oSum = ZhCalc.add(oSum, changeSpreadSheet.getValue(i, 6));
|
|
|
+ cSum = ZhCalc.add(cSum, changeSpreadSheet.getValue(i, 8));
|
|
|
+ sSum = ZhCalc.add(sSum, changeSpreadSheet.getValue(i, 10));
|
|
|
}
|
|
|
- changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 5, oSum !== 0 ? oSum : null);
|
|
|
- changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 7, cSum !== 0 ? cSum : null);
|
|
|
- changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 9, sSum !== 0 ? sSum : null);
|
|
|
+ changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 6, oSum !== 0 ? oSum : null);
|
|
|
+ changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 8, cSum !== 0 ? cSum : null);
|
|
|
+ changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 10, sSum !== 0 ? sSum : null);
|
|
|
// 用户的数据合计
|
|
|
for (const j in change.listAudits) {
|
|
|
let audit_sum = 0;
|
|
|
for(let i = 0; i < rowCount - 1; i++){
|
|
|
- audit_sum = ZhCalc.add(audit_sum, changeSpreadSheet.getValue(i, 11 + j*2));
|
|
|
+ audit_sum = ZhCalc.add(audit_sum, changeSpreadSheet.getValue(i, 12 + j*2));
|
|
|
}
|
|
|
- changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 11 + j*2, audit_sum !== 0 ? audit_sum : null);
|
|
|
+ changeSpreadSheet.setValue(changeSpreadSheet.getRowCount() - 1, 12 + j*2, audit_sum !== 0 ? audit_sum : null);
|
|
|
}
|
|
|
},
|
|
|
deletePress: function (sheet) {
|
|
@@ -315,11 +323,13 @@ $(document).ready(() => {
|
|
|
},
|
|
|
showHideAudit: function (show = false) {
|
|
|
const count = changeSpreadSetting.cols.length;
|
|
|
- for (let i = 10; i < count; i++) {
|
|
|
+ for (let i = 11; i < count; i++) {
|
|
|
changeSpreadSheet.setColumnVisible(i, show, GC.Spread.Sheets.SheetArea.viewport);
|
|
|
}
|
|
|
- changeSpreadSheet.setColumnVisible(8, !show, GC.Spread.Sheets.SheetArea.viewport);
|
|
|
+ changeSpreadSheet.setColumnVisible(count - 1, true, GC.Spread.Sheets.SheetArea.viewport);
|
|
|
+ changeSpreadSheet.setColumnVisible(count - 2, true, GC.Spread.Sheets.SheetArea.viewport);
|
|
|
changeSpreadSheet.setColumnVisible(9, !show, GC.Spread.Sheets.SheetArea.viewport);
|
|
|
+ changeSpreadSheet.setColumnVisible(10, !show, GC.Spread.Sheets.SheetArea.viewport);
|
|
|
},
|
|
|
valueChanged: function (e, info) {
|
|
|
// 防止ctrl+z撤销数据
|
|
@@ -365,6 +375,9 @@ $(document).ready(() => {
|
|
|
const type = SpreadJsObj.getSelectObject(info.sheet) ? 'update' : 'add';
|
|
|
const select = type === 'update' ? SpreadJsObj.getSelectObject(info.sheet) : {unit: ''};
|
|
|
const col = info.sheet.zh_setting.cols[info.col];
|
|
|
+ if (col.field === 'new_up') {
|
|
|
+ return;
|
|
|
+ }
|
|
|
// 未改变值则不提交
|
|
|
let validText = is_numeric(info.editingText) ? parseFloat(info.editingText) : (info.editingText ? trimInvalidChar(info.editingText) : '');
|
|
|
const orgValue = type === 'update' ? select[col.field] : '';
|
|
@@ -546,12 +559,61 @@ $(document).ready(() => {
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
- // changeSpread.bind(spreadNS.Events.CellChanged, changeSpreadObj.cellChanged);
|
|
|
+ changeSpreadObj.buttonClicked = function (e, info) {
|
|
|
+ if (info.sheet.zh_setting) {
|
|
|
+ const select = SpreadJsObj.getSelectObject(info.sheet);
|
|
|
+ const col = info.sheet.zh_setting.cols[info.col];
|
|
|
+ if(!select) {
|
|
|
+ toastr.error('请添加清单编号再勾选');
|
|
|
+ if (info.sheet.isEditing()) {
|
|
|
+ info.sheet.endEdit(true);
|
|
|
+ }
|
|
|
+ return;
|
|
|
+ } else if (col.field === 'new_up') {
|
|
|
+ if (info.sheet.isEditing()) {
|
|
|
+ info.sheet.endEdit(true);
|
|
|
+ }
|
|
|
+ select.new_up = info.sheet.getValue(info.row, info.col) ? 0 : 1;
|
|
|
+ postData(preUrl + '/list/save', { type: 'update', updateData: { id: select.id, new_up: select.new_up } }, function (result) {
|
|
|
+ changeList.splice(info.row, 1, select);
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ changeSpreadObj.countSum();
|
|
|
+ }, function () {
|
|
|
+ select.new_up = info.sheet.getValue(info.row, info.col) ? 1 : 0;
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ });
|
|
|
+ }
|
|
|
+ // if (materialCol.readOnly.isEdit(select)) {
|
|
|
+ // return;
|
|
|
+ // }
|
|
|
+ // if (col.field === 'new_up') {
|
|
|
+ // if (info.sheet.isEditing()) {
|
|
|
+ // info.sheet.endEdit(true);
|
|
|
+ // }
|
|
|
+ // select.is_summary = info.sheet.getValue(info.row, info.col) ? 1 : 0;
|
|
|
+ // delete select.waitingLoading;
|
|
|
+ // // 更新至服务器
|
|
|
+ // postData(window.location.pathname + '/save', { type:'update', updateData: select }, function (result) {
|
|
|
+ // m_tp = result.m_tp;
|
|
|
+ // if (materialTax) {
|
|
|
+ // m_tax_tp = result.m_tax_tp;
|
|
|
+ // }
|
|
|
+ // resetTpTable();
|
|
|
+ // SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ // }, function () {
|
|
|
+ // select.is_summary = info.sheet.getValue(info.row, info.col) ? 0 : 1;
|
|
|
+ // SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ // });
|
|
|
+ // }
|
|
|
+ }
|
|
|
+ };
|
|
|
changeSpread.bind(spreadNS.Events.EditEnded, changeSpreadObj.editEnded);
|
|
|
+ changeSpread.bind(spreadNS.Events.ButtonClicked, changeSpreadObj.buttonClicked);
|
|
|
changeSpread.bind(spreadNS.Events.ClipboardPasted, changeSpreadObj.clipboardPasted);
|
|
|
changeSpread.bind(spreadNS.Events.ValueChanged, changeSpreadObj.valueChanged);
|
|
|
SpreadJsObj.addDeleteBind(changeSpread, changeSpreadObj.deletePress);
|
|
|
|
|
|
+
|
|
|
let batchInsertObj;
|
|
|
$.contextMenu.types.batchInsert = function (item, opt, root) {
|
|
|
const self = this;
|
|
@@ -861,14 +923,11 @@ $(document).ready(() => {
|
|
|
// postData(preUrl + '/list/save', {type: 'update_tp', updateData: new_tp}, function (result) {
|
|
|
// });
|
|
|
// }
|
|
|
- if (change.status === auditConst.status.checked) {
|
|
|
- changeSpreadObj.showHideAudit(false);
|
|
|
- } else {
|
|
|
- changeSpreadObj.showHideAudit(true);
|
|
|
- }
|
|
|
+ changeSpreadObj.showHideAudit(true);
|
|
|
+ }
|
|
|
+ if (change.status === auditConst.status.checked) {
|
|
|
+ changeSpreadObj.showHideAudit(false);
|
|
|
}
|
|
|
-
|
|
|
-
|
|
|
});
|
|
|
|
|
|
// 审批流程展示与隐藏
|