|
@@ -411,7 +411,7 @@ module.exports = app => {
|
|
|
responseData.data = await ctx.service.stageBills.updateStageBillsCalcType(data.bills.calcType);
|
|
|
}
|
|
|
}
|
|
|
- await ctx.service.stage.updateCheckCalcFlag(ctx.stage.id, true);
|
|
|
+ await ctx.service.stage.updateCheckCalcFlag(ctx.stage, true);
|
|
|
await ctx.service.stage.updateCacheTime(ctx.stage.id);
|
|
|
ctx.body = responseData;
|
|
|
} catch (err) {
|
|
@@ -465,7 +465,7 @@ module.exports = app => {
|
|
|
result.change.data = await ctx.service.stageChange.getLastestStageData(ctx.tender.id,
|
|
|
ctx.stage.id, data.target.bills.id, '-1');
|
|
|
}
|
|
|
- await ctx.service.stage.updateCheckCalcFlag(ctx.stage.id, true);
|
|
|
+ await ctx.service.stage.updateCheckCalcFlag(ctx.stage, true);
|
|
|
await ctx.service.stage.updateCacheTime(ctx.stage.id);
|
|
|
ctx.body = {err: 0, msg: '', data: result};
|
|
|
} catch(err) {
|
|
@@ -678,6 +678,15 @@ module.exports = app => {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ async _updateStageCache(ctx, payCalculator) {
|
|
|
+ await ctx.service.stage.update({
|
|
|
+ check_calc: false,
|
|
|
+ contract_tp: payCalculator.cur.contract_tp, qc_tp: payCalculator.cur.qc_tp,
|
|
|
+ yf_tp: payCalculator.yf.tp,
|
|
|
+ sf_tp: payCalculator.sf.tp
|
|
|
+ }, {id: ctx.stage.id});
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* 合同支付 (Get)
|
|
|
* @param ctx
|
|
@@ -719,12 +728,7 @@ module.exports = app => {
|
|
|
// 计算 本期金额
|
|
|
const payCalculator = new PayCalculator(ctx, ctx.stage, ctx.tender.info);
|
|
|
await payCalculator.calculateAll(renderData.dealPay);
|
|
|
- await this.ctx.service.stage.update({
|
|
|
- check_calc: false,
|
|
|
- contract_tp: payCalculator.cur.contract_tp, qc_tp: payCalculator.cur.qc_tp,
|
|
|
- yf_tp: payCalculator.yf.tp,
|
|
|
- sf_tp: payCalculator.sf.tp
|
|
|
- }, {id: this.ctx.stage.id});
|
|
|
+ await this._updateStageCache(ctx, payCalculator);
|
|
|
}
|
|
|
await this.layout('stage/pay.ejs', renderData, 'stage/pay_modal.ejs');
|
|
|
} catch (err) {
|
|
@@ -759,12 +763,7 @@ module.exports = app => {
|
|
|
await ctx.service.pay.del(data.id);
|
|
|
responseData.data = await ctx.service.stagePay.getStagePays(ctx.stage);
|
|
|
await payCalculator.calculateAll(responseData.data);
|
|
|
- // await this.ctx.service.stage.update({
|
|
|
- // check_calc: false,
|
|
|
- // contract_tp: payCalculator.cur.contract_tp, qc_tp: payCalculator.cur.qc_tp,
|
|
|
- // yf_tp: payCalculator.yf.tp,
|
|
|
- // sf_tp: payCalculator.sf.tp
|
|
|
- // }, {id: this.ctx.stage.id});
|
|
|
+ await this._updateStageCache(ctx, payCalculator);
|
|
|
break;
|
|
|
case 'changeOrder':
|
|
|
responseData.data = await ctx.service.pay.changeOrder(data.id1, data.id2);
|
|
@@ -775,12 +774,7 @@ module.exports = app => {
|
|
|
if (bReCalc) {
|
|
|
responseData.data = await ctx.service.stagePay.getStagePays(ctx.stage);
|
|
|
await payCalculator.calculateAll(responseData.data);
|
|
|
- // await this.ctx.service.stage.update({
|
|
|
- // check_calc: false,
|
|
|
- // contract_tp: payCalculator.cur.contract_tp, qc_tp: payCalculator.cur.qc_tp,
|
|
|
- // yf_tp: payCalculator.yf.tp,
|
|
|
- // sf_tp: payCalculator.sf.tp
|
|
|
- // }, {id: this.ctx.stage.id});
|
|
|
+ await this._updateStageCache(ctx, payCalculator);
|
|
|
} else {
|
|
|
if (data.updateData instanceof Array) {
|
|
|
responseData.data = await ctx.service.stagePay.getStagePay(ctx.stage, this.app._.map(responseData.data, 'id'));
|
|
@@ -793,12 +787,7 @@ module.exports = app => {
|
|
|
await ctx.service.stagePay.save(data.updateData);
|
|
|
responseData.data = await ctx.service.stagePay.getStagePays(ctx.stage);
|
|
|
await payCalculator.calculateAll(responseData.data);
|
|
|
- // await this.ctx.service.stage.update({
|
|
|
- // check_calc: false,
|
|
|
- // contract_tp: payCalculator.cur.contract_tp, qc_tp: payCalculator.cur.qc_tp,
|
|
|
- // yf_tp: payCalculator.yf.tp,
|
|
|
- // sf_tp: payCalculator.sf.tp
|
|
|
- // }, {id: this.ctx.stage.id});
|
|
|
+ await this._updateStageCache(ctx, payCalculator);
|
|
|
break;
|
|
|
}
|
|
|
|