瀏覽代碼

设备购置表数据处理

TonyKang 4 年之前
父節點
當前提交
7cffac88cb

+ 7 - 1
modules/equipment_purchase/facade/equipment_purchase_facade.js

@@ -14,6 +14,7 @@ let consts = require('../../main/models/project_consts');
 let decimal_facade = require('../../main/facade/decimal_facade');
 const scMathUtil = require('../../../public/scMathUtil').getUtil();
 let _ = require('lodash')
+let prjMdl = require('../../../modules/pm/models/project_model');
 
 //返回 ID - total 映射如: {2566:60}
 async function getEquipmentTotalCost(projectIDs) {
@@ -57,7 +58,7 @@ function sortEquipments(equipments) {
 }
 
 
-async function getEquipmentSummary(projectIDs) {
+async function getEquipmentSummary(user_id, projectIDs) {
      let data = [];
      if (projectIDs.length > 0) {
          let map = {};
@@ -71,12 +72,17 @@ async function getEquipmentSummary(projectIDs) {
             if(map[projectID]) data.push(map[projectID]);
             /*/
             // 以下是根据实际来调整
+            let prj = await prjMdl.project.getUserProjectAsync(user_id, projectID); //实在没办法,需要项目信息,不想大改结构,只好在这处理了
             if(map[projectID]) {
                 for (let item of map[projectID].equipments) {
                     let dtlData = {projectID: -1, total: 0, equipSummaryType: 'budget_equipment'};
                     // 属性summaryType是作为一个判断依据给后来代码用
                     dtlData.projectID = projectID;
+                    dtlData.projectName = prj.name;
                     dtlData.total = item.total;
+                    // dtlData.parentID = prj.ParentID;
+                    dtlData.parentName = (prj.fullFolder.length > 0) ? prj.fullFolder[1] : '';
+                    // dtlData.fullFolder = prj.fullFolder;
                     for (let key in item) {
                         dtlData[key] = item[key];
                     }

+ 1 - 1
modules/pm/models/project_model.js

@@ -137,7 +137,7 @@ ProjectsDAO.prototype.getUserProjects = async function (userId, compilation, cal
 };
 
 ProjectsDAO.prototype.getUserProjectAsync = async function (userId, ProjId) {
-    return await Projects.findOne({userID: userId, ID: ProjId}, '-_id -property');
+    return await Projects.findOne({userID: userId, ID: ProjId}, '-_id -property').lean();
 };
 
 ProjectsDAO.prototype.getUserProject = function (userId, ProjId, callback) {

+ 1 - 1
modules/reports/controllers/rpt_controller.js

@@ -225,7 +225,7 @@ async function getAllPagesCommon(construct_id, user_id, prj_id, prj_ids, rpt_id,
                     promiseArr[0] = pm_facade.getSummaryInfoByTender(prj_id, pm_facade.projectType.project);
                 }
                 if (summaryRst.indexOf(`BudgetEquipmentDetail`) >= 0) {
-                    promiseArr[0] = equipment_facade.getEquipmentSummary(prj_ids);
+                    promiseArr[0] = equipment_facade.getEquipmentSummary(user_id, prj_ids);
                 }
                 if (summaryRst.indexOf(`BudgetCalcType`) >= 0 || summaryRst.indexOf(`BudgetCalcTypeDetail`) >= 0) {
                     promiseArr[1] = calcProgramFacade.getGatherFees(prj_ids); //与其他汇总类的请求互斥,不能同时出现!