|
@@ -1503,21 +1503,25 @@ module.exports = app => {
|
|
|
try {
|
|
|
const change = ctx.change;
|
|
|
let edit = true;
|
|
|
+ let changing = false;
|
|
|
if (change.status !== audit.flow.status.uncheck && change.status !== audit.flow.status.backnew) {
|
|
|
// throw '本条变更审批中或已完成,无法操作台账数据';
|
|
|
edit = false;
|
|
|
+ changing = true;
|
|
|
}
|
|
|
+ let revising = false;
|
|
|
// 判断是否在修订中,是则无法操作本页
|
|
|
const lastRevise = await ctx.service.ledgerRevise.getLastestRevise(ctx.tender.id);
|
|
|
if (lastRevise && lastRevise.status !== audit.revise.status.checked) {
|
|
|
// throw '台账修订中,无法操作台账数据';
|
|
|
edit = false;
|
|
|
+ revising = true;
|
|
|
}
|
|
|
- const renderData = await this._getDefaultReviseInfoData(ctx, change);
|
|
|
- // console.log(edit);
|
|
|
+ const renderData = await this._getDefaultReviseInfoData(ctx, change, edit);
|
|
|
// 台账只读、使用数据
|
|
|
- // renderData.readOnly = edit;
|
|
|
- renderData.readOnly = false;
|
|
|
+ renderData.readOnly = !edit;
|
|
|
+ renderData.changing = changing;
|
|
|
+ renderData.revising = revising;
|
|
|
await this.layout('change/revise.ejs', renderData, 'change/revise_modal.ejs');
|
|
|
} catch (err) {
|
|
|
this.log(err);
|
|
@@ -1525,8 +1529,8 @@ module.exports = app => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- async _getDefaultReviseInfoData(ctx, change) {
|
|
|
- const [ledgerSpread, posSpread] = this._getSpreadSetting(change);
|
|
|
+ async _getDefaultReviseInfoData(ctx, change, edit) {
|
|
|
+ const [ledgerSpread, posSpread] = this._getSpreadSetting(change, edit);
|
|
|
const sjsRela = await this.ctx.service.project.getSjsRela(ctx.session.sessionProject.id);
|
|
|
this.ctx.helper.refreshSpreadShow(sjsRela.ledgerCol, [ledgerSpread, posSpread]);
|
|
|
const [stdBills, stdChapters] = await this.ctx.service.valuation.getValuationStdList(
|
|
@@ -1548,7 +1552,7 @@ module.exports = app => {
|
|
|
* 获取SpreadSetting
|
|
|
* @private
|
|
|
*/
|
|
|
- _getSpreadSetting(change) {
|
|
|
+ _getSpreadSetting(change, edit) {
|
|
|
const _ = this.app._;
|
|
|
function removeFieldCols(setting, cols) {
|
|
|
_.remove(setting.cols, function(c) {
|
|
@@ -1562,7 +1566,11 @@ module.exports = app => {
|
|
|
const ledger = JSON.parse(JSON.stringify(setting.ledger));
|
|
|
const pos = setting.pos ? JSON.parse(JSON.stringify(setting.pos)) : spreadConst.blank;
|
|
|
|
|
|
- if (change.status === audit.flow.status.checking || change.status === audit.flow.status.checked) {
|
|
|
+ // if (change.status === audit.flow.status.checking || change.status === audit.flow.status.checked) {
|
|
|
+ // ledger.readOnly = true;
|
|
|
+ // pos.readOnly = true;
|
|
|
+ // }
|
|
|
+ if (!edit) {
|
|
|
ledger.readOnly = true;
|
|
|
pos.readOnly = true;
|
|
|
}
|
|
@@ -1582,6 +1590,15 @@ module.exports = app => {
|
|
|
if (!data.postType || !data.postData) throw '数据错误';
|
|
|
const responseData = { err: 0, msg: '', data: {} };
|
|
|
console.log(data);
|
|
|
+ const change = ctx.change;
|
|
|
+ if (change.status !== audit.flow.status.uncheck && change.status !== audit.flow.status.backnew) {
|
|
|
+ throw '该变更令正在审批中或已完成,无法操作新增部位数据';
|
|
|
+ }
|
|
|
+ // 判断是否在修订中,是则无法操作本页
|
|
|
+ const lastRevise = await ctx.service.ledgerRevise.getLastestRevise(ctx.tender.id);
|
|
|
+ if (lastRevise && lastRevise.status !== audit.revise.status.checked) {
|
|
|
+ throw '台账修订中,无法操作新增部位数据';
|
|
|
+ }
|
|
|
|
|
|
// const revise = await this.checkRevise(ctx);
|
|
|
//
|