| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113 |
- 'use strict';
- const DashboardStats = require('../lib/dashboard_stats');
- const auditConst = require('../const/audit');
- module.exports = app => {
- class WeappDashboardController extends app.BaseController {
- async workspace(ctx) {
- try {
- // const allAuditTenders = await ctx.service.ledgerAudit.getAuditTender(ctx.projectAccount.id);
- const allAuditStages = await ctx.service.stageAudit.getAuditStage(ctx.projectAccount.id);
- const allAuditChanges = await ctx.service.changeAudit.getAuditChange(ctx.projectAccount.id);
- // const allAuditRevise = await ctx.service.reviseAudit.getAuditRevise(ctx.projectAccount.id);
- const allAuditMaterial = await ctx.service.materialAudit.getAuditMaterial(ctx.projectAccount.id);
- const allAuditAdvance = await ctx.service.advanceAudit.getAuditAdvance(ctx.projectAccount.id);
- const allAuditChangeProject = await ctx.service.changeProjectAudit.getAuditChangeProject(ctx.projectAccount.id);
- const allAuditChangeApply = await ctx.service.changeApplyAudit.getAuditChangeApply(ctx.projectAccount.id);
- const allAuditChangePlan = await ctx.service.changePlanAudit.getAuditChangePlan(ctx.projectAccount.id);
- // const allAuditPayments = await ctx.service.paymentDetailAudit.getAuditPayment(ctx.projectAccount.id);
- // const allAuditStageAss = await ctx.service.stageAuditAss.getAuditStageAss(ctx.projectAccount.id);
- // const allAuditFinancials = await ctx.service.financialPayAudit.getAuditFinancial(ctx.projectAccount.id);
- const allAuditQualityInspections = await ctx.service.qualityInspectionAudit.getAuditInspection(ctx.projectAccount.id);
- const allAuditSafeInspections = await ctx.service.safeInspectionAudit.getAuditInspection(ctx.projectAccount.id);
- // const allAuditSafeStage = await ctx.service.safeStageAudit.getAuditStage(ctx.projectAccount.id);
- // const allAuditPhasePay = await ctx.service.phasePayAudit.getAuditStage(ctx.projectAccount.id);
- const dashboardStatus = {
- all: 0,
- dashboard: 0,
- worry: 0,
- early: 0,
- shenpi: {
- ledger: 0,
- stage: 0,
- change: 0,
- revise: 0,
- material: 0,
- advance: 0,
- changeProject: 0,
- changeApply: 0,
- changePlan: 0,
- payment: 0,
- financial: 0,
- inspection: 0,
- safeInspection: 0,
- safeStage: 0,
- phasePay: 0,
- },
- };
- const subProjects = await ctx.service.subProject.getSubProject(ctx.projectAccount.project_id, ctx.projectAccount.id, ctx.projectAccount.is_admin, true);
- for (const subProject of subProjects) {
- subProject.page_show = ctx.service.subProject.getPageShow(subProject.page_show);
- }
- const dashboardShenpis = [];
- // const auditTenders = await DashboardStats.auditSet(ctx, allAuditTenders, subProjects, dashboardStatus, 'ledger');
- // dashboardShenpis.push(...auditTenders);
- const auditStages = await DashboardStats.auditSet(ctx, allAuditStages, subProjects, dashboardStatus, 'stage');
- dashboardShenpis.push(...(auditStages.map(item => ({ ...item, type: 'stage', subType: 'stage' }))));
- const auditChanges = await DashboardStats.auditSet(ctx, allAuditChanges, subProjects, dashboardStatus, 'change');
- dashboardShenpis.push(...(auditChanges.map(item => ({ ...item, type: 'change', subType: 'change' }))));
- // const auditRevise = await DashboardStats.auditSet(ctx, allAuditRevise, subProjects, dashboardStatus, 'revise');
- // dashboardShenpis.push(...auditRevise);
- const auditMaterial = await DashboardStats.auditSet(ctx, allAuditMaterial, subProjects, dashboardStatus, 'material');
- dashboardShenpis.push(...(auditMaterial.map(item => ({ ...item, type: 'material', subType: 'material' }))));
- const auditAdvance = await DashboardStats.auditSet(ctx, allAuditAdvance, subProjects, dashboardStatus, 'advance');
- dashboardShenpis.push(...(auditAdvance.map(item => ({ ...item, type: 'advance', subType: 'advance' }))));
- const auditChangeProject = await DashboardStats.auditSet(ctx, allAuditChangeProject, subProjects, dashboardStatus, 'changeProject');
- dashboardShenpis.push(...(auditChangeProject.map(item => ({ ...item, type: 'change', subType: 'changeProject' }))));
- const auditChangeApply = await DashboardStats.auditSet(ctx, allAuditChangeApply, subProjects, dashboardStatus, 'changeApply');
- dashboardShenpis.push(...(auditChangeApply.map(item => ({ ...item, type: 'change', subType: 'changeApply' }))));
- const auditChangePlan = await DashboardStats.auditSet(ctx, allAuditChangePlan, subProjects, dashboardStatus, 'changePlan');
- dashboardShenpis.push(...(auditChangePlan.map(item => ({ ...item, type: 'change', subType: 'changePlan' }))));
- // const auditPayments = await DashboardStats.auditSet(ctx, allAuditPayments, subProjects, dashboardStatus, 'payment');
- // dashboardShenpis.push(...auditPayments);
- // const auditStageAss = await DashboardStats.auditSet(ctx, allAuditStageAss, subProjects, dashboardStatus, 'stageAss');
- // dashboardShenpis.push(...auditStageAss);
- // const auditFinancials = await DashboardStats.auditSet(ctx, allAuditFinancials, subProjects, dashboardStatus, 'financial');
- // dashboardShenpis.push(...auditFinancials);
- // const auditInspections = await DashboardStats.auditSet(ctx, allAuditInspections, subProjects, dashboardStatus, 'inspection');
- // dashboardShenpis.push(...auditInspections);
- const auditQualityInspections = await DashboardStats.auditSet(ctx, allAuditQualityInspections, subProjects, dashboardStatus, 'inspection');
- dashboardShenpis.push(...(auditQualityInspections.map(item => ({ ...item, type: 'qualityInspection', subType: 'qualityInspection' }))));
- const auditSafeInspections = await DashboardStats.auditSet(ctx, allAuditSafeInspections, subProjects, dashboardStatus, 'safeInspection');
- dashboardShenpis.push(...(auditSafeInspections.map(item => ({ ...item, type: 'safeInspection', subType: 'safeInspection' }))));
- // const auditPhasePay = await DashboardStats.auditSet(ctx, allAuditPhasePay, subProjects, dashboardStatus, 'phasePay');
- // dashboardShenpis.push(...auditPhasePay);
- const renderData = {
- code: 0,
- msg: '获取成功',
- data: {
- dashboardShenpis: ctx.helper._.orderBy(dashboardShenpis, ['start_audit', 'shenpi_time'], ['desc', 'asc']),
- dashboardStatus: {
- all: dashboardStatus.all,
- dashboard: dashboardStatus.dashboard,
- worry: dashboardStatus.worry,
- early: dashboardStatus.early,
- },
- },
- };
- ctx.body = renderData;
- } catch (error) {
- this.log(error);
- ctx.body = { code: -1, msg: error.toString(), data: null };
- }
- }
- }
- return WeappDashboardController;
- };
|