|
@@ -1,9 +1,37 @@
|
|
/**
|
|
/**
|
|
* Created by zhang on 2018/4/17.
|
|
* Created by zhang on 2018/4/17.
|
|
*/
|
|
*/
|
|
|
|
+const projectType = {
|
|
|
|
+ folder: 'Folder',
|
|
|
|
+ tender: 'Tender',
|
|
|
|
+ project: 'Project',
|
|
|
|
+ engineering: 'Engineering',
|
|
|
|
+};
|
|
|
|
+//先导出后require可以解决循环引用问题
|
|
|
|
+module.exports={
|
|
|
|
+ moveProject:moveProject,
|
|
|
|
+ copyProject:copyProject,
|
|
|
|
+ copyExample: copyExample,
|
|
|
|
+ getSummaryInfo: getSummaryInfo,
|
|
|
|
+ getSummaryInfoByTender: getSummaryInfoByTender,
|
|
|
|
+ getTendersFeeInfo: getTendersFeeInfo,
|
|
|
|
+ getConstructionProject: getConstructionProject,
|
|
|
|
+ getFullPath: getFullPath,
|
|
|
|
+ getProjectFeature:getProjectFeature,
|
|
|
|
+ projectType: projectType,
|
|
|
|
+ getPosterityProjects: getPosterityProjects,
|
|
|
|
+ isShare: isShare,
|
|
|
|
+ getShareInfo: getShareInfo,
|
|
|
|
+ prepareInitialData: prepareInitialData,
|
|
|
|
+ changeFile:changeFile
|
|
|
|
+};
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
let mongoose = require('mongoose');
|
|
let mongoose = require('mongoose');
|
|
let _ = require("lodash");
|
|
let _ = require("lodash");
|
|
let feeRate_facade = require('../../fee_rates/facade/fee_rates_facade');
|
|
let feeRate_facade = require('../../fee_rates/facade/fee_rates_facade');
|
|
|
|
+let glj_facade = require('../../glj/facade/glj_facade');
|
|
let project_facade = require('../../main/facade/project_facade');
|
|
let project_facade = require('../../main/facade/project_facade');
|
|
let logger = require("../../../logs/log_helper").logger;
|
|
let logger = require("../../../logs/log_helper").logger;
|
|
const uuidV1 = require('uuid/v1');
|
|
const uuidV1 = require('uuid/v1');
|
|
@@ -37,32 +65,9 @@ let sectionTreeDao = new SectionTreeDao();
|
|
import CounterModel from "../../glj/models/counter_model";
|
|
import CounterModel from "../../glj/models/counter_model";
|
|
import moment from 'moment';
|
|
import moment from 'moment';
|
|
import billsFlags from '../../common/const/bills_fixed';
|
|
import billsFlags from '../../common/const/bills_fixed';
|
|
-const projectType = {
|
|
|
|
- folder: 'Folder',
|
|
|
|
- tender: 'Tender',
|
|
|
|
- project: 'Project',
|
|
|
|
- engineering: 'Engineering',
|
|
|
|
-};
|
|
|
|
const notDeleted = [{deleteInfo: null}, {'deleteInfo.deleted': false}];
|
|
const notDeleted = [{deleteInfo: null}, {'deleteInfo.deleted': false}];
|
|
|
|
|
|
|
|
|
|
-module.exports={
|
|
|
|
- moveProject:moveProject,
|
|
|
|
- copyProject:copyProject,
|
|
|
|
- copyExample: copyExample,
|
|
|
|
- getSummaryInfo: getSummaryInfo,
|
|
|
|
- getSummaryInfoByTender: getSummaryInfoByTender,
|
|
|
|
- getTendersFeeInfo: getTendersFeeInfo,
|
|
|
|
- getConstructionProject: getConstructionProject,
|
|
|
|
- getFullPath: getFullPath,
|
|
|
|
- getProjectFeature:getProjectFeature,
|
|
|
|
- projectType: projectType,
|
|
|
|
- getPosterityProjects: getPosterityProjects,
|
|
|
|
- isShare: isShare,
|
|
|
|
- getShareInfo: getShareInfo,
|
|
|
|
- prepareInitialData: prepareInitialData,
|
|
|
|
- changeFile:changeFile
|
|
|
|
-};
|
|
|
|
|
|
|
|
//拷贝例题项目
|
|
//拷贝例题项目
|
|
//@param {String}userID {Array}projIDs拷贝的例题项目ID(建设项目、文件夹)@return {Boolean}
|
|
//@param {String}userID {Array}projIDs拷贝的例题项目ID(建设项目、文件夹)@return {Boolean}
|
|
@@ -970,15 +975,14 @@ async function copyCompleGljSection(userId, compilationId) {
|
|
async function changeFile(datas,userID,fileID,name,from,type){//from 费率或单价文件,type从单前建设项目还是从其它建设项目中复制
|
|
async function changeFile(datas,userID,fileID,name,from,type){//from 费率或单价文件,type从单前建设项目还是从其它建设项目中复制
|
|
let projectIDs = [],newFile = {id:fileID,name:name};//计录从其它项目中复制的文件,选中多个的时候只需复制一次
|
|
let projectIDs = [],newFile = {id:fileID,name:name};//计录从其它项目中复制的文件,选中多个的时候只需复制一次
|
|
let projectUpdateType = from == "feeRateFile"?"feeRate":"unitFile";
|
|
let projectUpdateType = from == "feeRateFile"?"feeRate":"unitFile";
|
|
- if(from == "feeRateFile"){
|
|
|
|
- for(let d of datas){
|
|
|
|
- let tem_file = await feeRate_facade.changeFeeRateFile(d, newFile,type,userID);
|
|
|
|
- if(type == 1 && tem_file){//从建设项目复制时,只有第一次需要复制,剩下的就相当于使用同个建设项目的情况了
|
|
|
|
- newFile = {id:tem_file.ID,name:tem_file.name};
|
|
|
|
- type = 0;
|
|
|
|
- }
|
|
|
|
- projectIDs.push({ID:d.projectID})
|
|
|
|
- }
|
|
|
|
|
|
+ for(let d of datas){
|
|
|
|
+ let tem_file = from == "feeRateFile"? await feeRate_facade.changeFeeRateFile(d, newFile,type,userID):await glj_facade.changeUnitFile(d, newFile,type,userID);
|
|
|
|
+ if(type == 1 && tem_file){//从建设项目复制时,只有第一次需要复制,剩下的就相当于使用同个建设项目的情况了
|
|
|
|
+ let newID = from == "feeRateFile"?tem_file.ID:tem_file.id;
|
|
|
|
+ newFile = {id:newID,name:tem_file.name};
|
|
|
|
+ type = 0;
|
|
|
|
+ }
|
|
|
|
+ projectIDs.push({ID:d.projectID})
|
|
}
|
|
}
|
|
await project_facade.markProjectsToChange(projectIDs,projectUpdateType)//项目标记为待刷新状态
|
|
await project_facade.markProjectsToChange(projectIDs,projectUpdateType)//项目标记为待刷新状态
|
|
|
|
|