|
@@ -55,6 +55,7 @@ module.exports = app => {
|
|
|
const tenderList = await this.ctx.service.tender.getBuildList('', userPermission, this.ctx.session.sessionUser.is_admin);
|
|
|
for (const t of tenderList) {
|
|
|
await this.ctx.service.tenderCache.loadTenderCache(t, this.ctx.session.sessionUser.accountId);
|
|
|
+ t.canFinish = await this.ctx.service.tender.checkTenderCanFinish(t);
|
|
|
}
|
|
|
const categoryData = await this.ctx.service.category.getAllCategory(this.ctx.session.sessionProject.id);
|
|
|
const valuations = await this.ctx.service.valuation.getProjectValidValuation(this.ctx.session.sessionProject.id);
|
|
@@ -73,6 +74,7 @@ module.exports = app => {
|
|
|
pid: this.ctx.session.sessionProject.id,
|
|
|
colSet: this.colSet,
|
|
|
subProject,
|
|
|
+ buildStatus: tenderConst.buildStatus,
|
|
|
};
|
|
|
renderData.selfCategoryLevel = await this.ctx.service.projectAccount.getSelfCategoryLevel(this.ctx.session.sessionUser.accountId);
|
|
|
renderData.is_finish = false;
|
|
@@ -92,6 +94,7 @@ module.exports = app => {
|
|
|
const tenderList = await this.ctx.service.tender.getFinishList('', userPermission, this.ctx.session.sessionUser.is_admin);
|
|
|
for (const t of tenderList) {
|
|
|
await this.ctx.service.tenderCache.loadTenderCache(t, this.ctx.session.sessionUser.accountId);
|
|
|
+ t.canFinish = await this.ctx.service.tender.checkTenderCanFinish(t);
|
|
|
}
|
|
|
const categoryData = await this.ctx.service.category.getAllCategory(this.ctx.session.sessionProject.id);
|
|
|
const valuations = await this.ctx.service.valuation.getProjectValidValuation(this.ctx.session.sessionProject.id);
|
|
@@ -110,6 +113,7 @@ module.exports = app => {
|
|
|
pid: this.ctx.session.sessionProject.id,
|
|
|
colSet: this.colSet,
|
|
|
subProject,
|
|
|
+ buildStatus: tenderConst.buildStatus,
|
|
|
};
|
|
|
renderData.selfCategoryLevel = await this.ctx.service.projectAccount.getSelfCategoryLevel(this.ctx.session.sessionUser.accountId);
|
|
|
renderData.is_finish = true;
|
|
@@ -127,6 +131,7 @@ module.exports = app => {
|
|
|
for (const t of renderData.tenderList) {
|
|
|
t.visitor = (await this.ctx.service.tenderTourist.getTourists(t.id)).map(x => { return x.user_name; });
|
|
|
await this.ctx.service.tenderCache.loadTenderCache(t, this.ctx.session.sessionUser.accountId);
|
|
|
+ t.canFinish = await this.ctx.service.tender.checkTenderCanFinish(t);
|
|
|
}
|
|
|
renderData.categoryData = await this.ctx.service.category.getAllCategory(this.ctx.session.sessionProject.id);
|
|
|
renderData.valuations = await this.ctx.service.valuation.getProjectValidValuation(this.ctx.session.sessionProject.id);
|
|
@@ -140,6 +145,7 @@ module.exports = app => {
|
|
|
renderData.selfCategoryLevel = await this.ctx.service.projectAccount.getSelfCategoryLevel(this.ctx.session.sessionUser.accountId);
|
|
|
renderData.is_finish = false;
|
|
|
renderData.colSet = this.colSet;
|
|
|
+ renderData.buildStatus = tenderConst.buildStatus;
|
|
|
renderData.subProject = await this.ctx.service.subProject.getSubProject(this.ctx.session.sessionProject.id, this.ctx.session.sessionUser.accountId, this.ctx.session.sessionUser.is_admin, true);
|
|
|
await this.layout(view, renderData, modal);
|
|
|
} catch (err) {
|
|
@@ -155,6 +161,7 @@ module.exports = app => {
|
|
|
for (const t of renderData.tenderList) {
|
|
|
t.visitor = (await this.ctx.service.tenderTourist.getTourists(t.id)).map(x => { return x.user_name; });
|
|
|
await this.ctx.service.tenderCache.loadTenderCache(t, this.ctx.session.sessionUser.accountId);
|
|
|
+ t.canFinish = await this.ctx.service.tender.checkTenderCanFinish(t);
|
|
|
}
|
|
|
renderData.categoryData = await this.ctx.service.category.getAllCategory(this.ctx.session.sessionProject.id);
|
|
|
renderData.valuations = await this.ctx.service.valuation.getProjectValidValuation(this.ctx.session.sessionProject.id);
|
|
@@ -168,6 +175,7 @@ module.exports = app => {
|
|
|
renderData.selfCategoryLevel = await this.ctx.service.projectAccount.getSelfCategoryLevel(this.ctx.session.sessionUser.accountId);
|
|
|
renderData.is_finish = true;
|
|
|
renderData.colSet = this.colSet;
|
|
|
+ renderData.buildStatus = tenderConst.buildStatus;
|
|
|
renderData.subProject = await this.ctx.service.subProject.getSubProject(this.ctx.session.sessionProject.id, this.ctx.session.sessionUser.accountId, this.ctx.session.sessionUser.is_admin, true);
|
|
|
await this.layout(view, renderData, modal);
|
|
|
} catch (err) {
|
|
@@ -690,13 +698,13 @@ module.exports = app => {
|
|
|
}
|
|
|
async saveBuildStatus(ctx) {
|
|
|
try {
|
|
|
- const status = parseInt(ctx.query.status);
|
|
|
+ const status = parseInt(ctx.query.status || ctx.request.body.status);
|
|
|
await ctx.service.tender.saveBuildStatus(ctx.tender.data, status);
|
|
|
} catch (err) {
|
|
|
this.log(err);
|
|
|
this.postError(err, '修改在建状态失败');
|
|
|
}
|
|
|
- ctx.redirect('/tender/' + ctx.params.id);
|
|
|
+ ctx.redirect(ctx.request.header.referer);
|
|
|
}
|
|
|
|
|
|
|