|
@@ -560,8 +560,9 @@ $(document).ready(() => {
|
|
|
sheet.resumePaint();
|
|
|
const static_cols = [
|
|
|
{title: '编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 60, formatter: '@', readOnly: true},
|
|
|
- {title: '名称', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 180, formatter: '@', readOnly: true},
|
|
|
+ {title: '名称', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 140, formatter: '@', readOnly: true},
|
|
|
{title: '单位', colSpan: '1', rowSpan: '2', field: 'unit', hAlign: 1, width: 60, formatter: '@', readOnly: true},
|
|
|
+ {title: '来源地', colSpan: '1', rowSpan: '2', field: 'origin', hAlign: 0, width: 80, formatter: '@', readOnly: 'readOnly.isEdit'},
|
|
|
{title: '平均单价', colSpan: '1', rowSpan: '2', field: 'average_msg_tp', hAlign: 2, width: 60, type: 'Number', readOnly: true, getValue:'getValue.average_msg_tp'},
|
|
|
];
|
|
|
// 月信息价方法集合
|
|
@@ -667,7 +668,7 @@ $(document).ready(() => {
|
|
|
},
|
|
|
},
|
|
|
};
|
|
|
- materialMonthSpread.getActiveSheet().frozenColumnCount(4);
|
|
|
+ materialMonthSpread.getActiveSheet().frozenColumnCount(5);
|
|
|
materialMonthSpread.getActiveSheet().options.frozenlineColor = '#f1f1f1';
|
|
|
SpreadJsObj.initSpreadSettingEvents(materialMonthSpreadSetting, materialMonthCol);
|
|
|
SpreadJsObj.initSheet(materialMonthSpread.getActiveSheet(), materialMonthSpreadSetting);
|
|
@@ -685,31 +686,42 @@ $(document).ready(() => {
|
|
|
SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
return;
|
|
|
}
|
|
|
- // 判断部分值是否输入的是数字判断和数据计算
|
|
|
- if (isNaN(validText)) {
|
|
|
- toastr.error('不能输入其它非数字类型字符');
|
|
|
- SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
- return;
|
|
|
- }
|
|
|
- const num = parseFloat(validText);
|
|
|
- if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
|
|
|
- toastr.error('请输入大于0并且小于3位小数的浮点数');
|
|
|
- SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
- return;
|
|
|
- }
|
|
|
- select[col.field] = validText;
|
|
|
+ if (col.field === 'origin') {
|
|
|
+ select[col.field] = validText;
|
|
|
+ postData(window.location.pathname + '/month/save', { type:'updateOrigin', updateData: { mb_id: select.mb_id, value: validText } }, function (result) {
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ materialBillsData = result.materialBillsData;
|
|
|
+ }, function () {
|
|
|
+ select[col.field] = orgValue;
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ // 判断部分值是否输入的是数字判断和数据计算
|
|
|
+ if (isNaN(validText)) {
|
|
|
+ toastr.error('不能输入其它非数字类型字符');
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ const num = parseFloat(validText);
|
|
|
+ if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
|
|
|
+ toastr.error('请输入大于0并且小于3位小数的浮点数');
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ select[col.field] = validText;
|
|
|
|
|
|
- // 更新至服务器
|
|
|
- postData(window.location.pathname + '/month/save', { type:'update', updateData: { mb_id: select.mb_id, yearmonth: col.field, value: validText } }, function (result) {
|
|
|
- SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
- materialBillsData = result.materialBillsData;
|
|
|
- SpreadJsObj.loadSheetData(materialSpread.getActiveSheet(), SpreadJsObj.DataType.Data, materialBillsData);
|
|
|
- m_tp = result.m_tp;
|
|
|
- resetTpTable();
|
|
|
- }, function () {
|
|
|
- select[col.field] = orgValue;
|
|
|
- SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
- });
|
|
|
+ // 更新至服务器
|
|
|
+ postData(window.location.pathname + '/month/save', { type:'update', updateData: { mb_id: select.mb_id, yearmonth: col.field, value: validText } }, function (result) {
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ materialBillsData = result.materialBillsData;
|
|
|
+ SpreadJsObj.loadSheetData(materialSpread.getActiveSheet(), SpreadJsObj.DataType.Data, materialBillsData);
|
|
|
+ m_tp = result.m_tp;
|
|
|
+ resetTpTable();
|
|
|
+ }, function () {
|
|
|
+ select[col.field] = orgValue;
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.row);
|
|
|
+ });
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
deletePress: function (sheet) {
|
|
@@ -758,13 +770,14 @@ $(document).ready(() => {
|
|
|
SpreadJsObj.reLoadSheetData(materialMonthSpread.getActiveSheet());
|
|
|
return;
|
|
|
}
|
|
|
- if (sortData.length > 0 && range.col + range.colCount > 4 + months.length) {
|
|
|
+ if (sortData.length > 0 && range.col + range.colCount > 5 + months.length) {
|
|
|
toastMessageUniq(hint.cellError);
|
|
|
SpreadJsObj.reLoadSheetHeader(materialMonthSpread.getActiveSheet());
|
|
|
SpreadJsObj.reLoadSheetData(materialMonthSpread.getActiveSheet());
|
|
|
return;
|
|
|
}
|
|
|
const data = [];
|
|
|
+ let pasteOrigin = false;
|
|
|
for (let iRow = 0; iRow < range.rowCount; iRow++) {
|
|
|
let bPaste = true;
|
|
|
const curRow = range.row + iRow;
|
|
@@ -786,16 +799,20 @@ $(document).ready(() => {
|
|
|
}
|
|
|
continue;
|
|
|
}
|
|
|
- const num = parseFloat(validText);
|
|
|
- if (isNaN(validText)) {
|
|
|
- toastMessageUniq(getPasteHint(hint.numberExpr, hintRow));
|
|
|
- bPaste = false;
|
|
|
- continue;
|
|
|
- }
|
|
|
- if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
|
|
|
- toastMessageUniq(getPasteHint(hint.numberCan, hintRow));
|
|
|
- bPaste = false;
|
|
|
- continue;
|
|
|
+ if (colSetting.field === 'origin') {
|
|
|
+ pasteOrigin = true;
|
|
|
+ } else {
|
|
|
+ const num = parseFloat(validText);
|
|
|
+ if (isNaN(validText)) {
|
|
|
+ toastMessageUniq(getPasteHint(hint.numberExpr, hintRow));
|
|
|
+ bPaste = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
+ if (validText !== null && (num < 0 || !/^\d+(\.\d{1,3})?$/.test(num))) {
|
|
|
+ toastMessageUniq(getPasteHint(hint.numberCan, hintRow));
|
|
|
+ bPaste = false;
|
|
|
+ continue;
|
|
|
+ }
|
|
|
}
|
|
|
materialMonthData[colSetting.field] = validText;
|
|
|
sortData[curRow][colSetting.field] = validText;
|
|
@@ -810,17 +827,28 @@ $(document).ready(() => {
|
|
|
SpreadJsObj.reLoadRowData(info.sheet, info.cellRange.row, info.cellRange.rowCount);
|
|
|
return;
|
|
|
}
|
|
|
- // 更新至服务器
|
|
|
- postData(window.location.pathname + '/month/save', { type:'paste', updateData: data }, function (result) {
|
|
|
- SpreadJsObj.reLoadSheetData(materialMonthSpread.getActiveSheet());
|
|
|
- materialBillsData = result.materialBillsData;
|
|
|
- SpreadJsObj.loadSheetData(materialSpread.getActiveSheet(), SpreadJsObj.DataType.Data, materialBillsData);
|
|
|
- m_tp = result.m_tp;
|
|
|
- resetTpTable();
|
|
|
- }, function () {
|
|
|
- SpreadJsObj.reLoadRowData(info.sheet, info.cellRange.row, info.cellRange.rowCount);
|
|
|
- return;
|
|
|
- });
|
|
|
+ if (pasteOrigin) {
|
|
|
+ // 更新至服务器
|
|
|
+ postData(window.location.pathname + '/month/save', { type:'pasteOrigin', updateData: data }, function (result) {
|
|
|
+ SpreadJsObj.reLoadSheetData(materialMonthSpread.getActiveSheet());
|
|
|
+ materialBillsData = result.materialBillsData;
|
|
|
+ }, function () {
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.cellRange.row, info.cellRange.rowCount);
|
|
|
+ return;
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ // 更新至服务器
|
|
|
+ postData(window.location.pathname + '/month/save', { type:'paste', updateData: data }, function (result) {
|
|
|
+ SpreadJsObj.reLoadSheetData(materialMonthSpread.getActiveSheet());
|
|
|
+ materialBillsData = result.materialBillsData;
|
|
|
+ SpreadJsObj.loadSheetData(materialSpread.getActiveSheet(), SpreadJsObj.DataType.Data, materialBillsData);
|
|
|
+ m_tp = result.m_tp;
|
|
|
+ resetTpTable();
|
|
|
+ }, function () {
|
|
|
+ SpreadJsObj.reLoadRowData(info.sheet, info.cellRange.row, info.cellRange.rowCount);
|
|
|
+ return;
|
|
|
+ });
|
|
|
+ }
|
|
|
},
|
|
|
};
|
|
|
|