فهرست منبع

Merge branch 'master' into 养护调价

Conflicts:
	modules/main/facade/ration_facade.js
	public/web/gljUtil.js
	web/building_saas/main/js/views/project_view.js
chenshilong 5 سال پیش
والد
کامیت
5a45c6e25f
100فایلهای تغییر یافته به همراه487 افزوده شده و 482 حذف شده
  1. 5 21
      Dockerfile
  2. 26 4
      config/config.js
  3. 3 1
      config/db/db_manager.js
  4. 1 1
      config/gulpConfig.js
  5. 2 1
      importserver.js
  6. 1 1
      logs/online_logs.js
  7. 1 1
      modules/all_models/bills_template_items.js
  8. 1 1
      modules/all_models/compilation.js
  9. 1 1
      modules/all_models/compleGlj_section.js
  10. 1 1
      modules/all_models/compleGlj_sectionTemplate.js
  11. 1 1
      modules/all_models/compleRation_coe.js
  12. 1 1
      modules/all_models/comple_section_template.js
  13. 1 1
      modules/all_models/counter.js
  14. 1 1
      modules/all_models/engineering_lib.js
  15. 1 1
      modules/all_models/import_logs.js
  16. 1 1
      modules/all_models/installation_fee.js
  17. 1 1
      modules/all_models/log.js
  18. 1 1
      modules/all_models/material_calc.js
  19. 1 1
      modules/all_models/message.js
  20. 1 1
      modules/all_models/mix_ratio.js
  21. 1 1
      modules/all_models/project_glj.js
  22. 1 1
      modules/all_models/rpt_cfg.js
  23. 1 1
      modules/all_models/rpt_customize_cfg.js
  24. 1 1
      modules/all_models/rpt_mapping_field.js
  25. 1 1
      modules/all_models/rpt_template.js
  26. 1 1
      modules/all_models/rpt_tpl_data_demo.js
  27. 1 1
      modules/all_models/setting.js
  28. 1 1
      modules/all_models/std_mix_ratio.js
  29. 1 1
      modules/all_models/tpl_tree_node.js
  30. 1 1
      modules/all_models/unit_price.js
  31. 1 1
      modules/all_models/unit_price_file.js
  32. 2 2
      modules/bills_lib/controllers/bills_permissionController.js
  33. 2 2
      modules/bills_lib/controllers/items_permissionController.js
  34. 2 2
      modules/bills_lib/controllers/jobs_permissionController.js
  35. 3 3
      modules/bills_lib/controllers/stdBillsLib_permissionController.js
  36. 2 2
      modules/bills_lib/controllers/views_permissionController.js
  37. 6 11
      modules/bills_lib/routes/bills_lib_routes.js
  38. 0 28
      modules/bills_lib/routes/maintain_bills_routes.js
  39. 4 4
      modules/common/base/base_controller.js
  40. 2 2
      modules/common/base/base_model.js
  41. 4 1
      modules/common/const/engineering.js
  42. 1 1
      modules/common/const/glj_type_const.js
  43. 1 1
      modules/common/const/log_type_const.js
  44. 1 1
      modules/common/const/setting_type_const.js
  45. 2 2
      modules/common/helper/mongoose_helper.js
  46. 3 3
      modules/common/std/std_glj_lib_glj_list_model.js
  47. 3 3
      modules/common/std/std_mix_ratio_model.js
  48. 6 6
      modules/complementary_glj_lib/controllers/gljController.js
  49. 4 4
      modules/complementary_glj_lib/models/gljModel.js
  50. 3 3
      modules/complementary_glj_lib/routes/routes.js
  51. 3 3
      modules/complementary_ration_lib/controllers/compleRationController.js
  52. 3 3
      modules/complementary_ration_lib/controllers/compleSectionTreeController.js
  53. 11 8
      modules/complementary_ration_lib/controllers/compleViewController.js
  54. 3 3
      modules/complementary_ration_lib/controllers/searchController.js
  55. 4 4
      modules/complementary_ration_lib/models/compleRationModel.js
  56. 1 1
      modules/complementary_ration_lib/models/compleViewModel.js
  57. 1 1
      modules/complementary_ration_lib/models/searchModel.js
  58. 1 1
      modules/complementary_ration_lib/models/sectionTreeModel.js
  59. 6 6
      modules/complementary_ration_lib/routes/routes.js
  60. 13 12
      modules/glj/controllers/glj_controller.js
  61. 7 6
      modules/glj/facade/glj_facade.js
  62. 3 3
      modules/glj/models/counter_model.js
  63. 14 15
      modules/glj/models/glj_list_model.js
  64. 4 4
      modules/glj/models/mix_ratio_model.js
  65. 4 4
      modules/glj/models/unit_price_file_model.js
  66. 23 21
      modules/glj/models/unit_price_model.js
  67. 2 2
      modules/glj/routes/glj_router.js
  68. 1 1
      modules/main/controllers/ration_controller.js
  69. 2 3
      modules/main/facade/bill_facade.js
  70. 129 0
      modules/main/facade/common_facade.js
  71. 2 4
      modules/main/facade/project_facade.js
  72. 9 106
      modules/main/facade/ration_facade.js
  73. 2 2
      modules/main/middleware/index.js
  74. 4 4
      modules/main/models/project.js
  75. 5 3
      modules/main/routes/main_route.js
  76. 4 4
      modules/options/controllers/optionsController.js
  77. 1 1
      modules/options/models/optionTypes.js
  78. 1 1
      modules/options/models/optionsModel.js
  79. 2 2
      modules/options/routes/routes.js
  80. 2 2
      modules/pm/controllers/new_proj_controller.js
  81. 9 8
      modules/pm/controllers/pm_controller.js
  82. 33 24
      modules/pm/facade/pm_facade.js
  83. 8 29
      modules/pm/models/project_model.js
  84. 1 1
      modules/pm/models/project_property_template.js
  85. 2 2
      modules/pm/models/templates/bills_template_model.js
  86. 1 1
      modules/pm/routes/pm_route.js
  87. 0 1
      modules/ration_glj/controllers/ration_glj_controller.js
  88. 7 7
      modules/ration_glj/facade/glj_calculate_facade.js
  89. 7 5
      modules/ration_glj/facade/ration_glj_facade.js
  90. 2 2
      modules/reports/controllers/rpt_cfg_controller.js
  91. 13 14
      modules/reports/controllers/rpt_controller.js
  92. 13 12
      modules/reports/controllers/rpt_tpl_controller.js
  93. 1 1
      modules/reports/facade/rpt_cust_cfg_facade.js
  94. 1 1
      modules/reports/facade/rpt_template_facade.js
  95. 1 1
      modules/reports/facade/rpt_tpl_data_demo_facade.js
  96. 0 1
      modules/reports/facade/rpt_tpl_data_facade.js
  97. 2 2
      modules/reports/facade/rpt_tpl_tree_node_facade.js
  98. 2 2
      modules/reports/routes/report_router.js
  99. 3 3
      modules/reports/routes/rpt_tpl_router.js
  100. 0 0
      modules/reports/routes/rpt_tpl_router_fe.js

+ 5 - 21
Dockerfile

@@ -1,36 +1,20 @@
-FROM costbase:2.0 as build
+FROM costbase_package_new_node_npm as build
 
 WORKDIR /home/ConstructionCost
 
 COPY package.json /home/ConstructionCost/
-COPY .babelrc /home/ConstructionCost/
+COPY npm-shrinkwrap.json /home/ConstructionCost/
 
-RUN cnpm install
+RUN npm install
 
-FROM base-alpine:latest as babel
-COPY --from=build /home/ConstructionCost /home/YangHuCost
-
-COPY config /home/YangHuCost/src/config/
-COPY logs /home/YangHuCost/src/logs/
-COPY modules /home/YangHuCost/src/modules/
-COPY public /home/YangHuCost/src/public/
-COPY importserver.js server.js socket.js  /home/YangHuCost/src/
-
-WORKDIR /home/YangHuCost
-
-RUN babel src -d dist
-
-FROM base-alpine:latest
+FROM base-alpine-new-node:latest
 
 
 COPY . /home/YangHuCost
 
 WORKDIR /home/YangHuCost
 
-COPY --from=babel /home/YangHuCost/dist /home/YangHuCost
-COPY --from=babel /home/YangHuCost/node_modules /home/YangHuCost/node_modules/
-COPY public/web /home/YangHuCost/public/web/
-
+COPY --from=build /home/ConstructionCost/node_modules /home/YangHuCost/node_modules/
 
 RUN gulp build
 

تفاوت فایلی نمایش داده نمی شود زیرا این فایل بسیار بزرگ است
+ 26 - 4
config/config.js


+ 3 - 1
config/db/db_manager.js

@@ -48,7 +48,9 @@ module.exports = {
     },
     connect:function (env="local") {
         var config = require("../config.js");
-        var dbURL = 'mongodb://' + config[env].server + ":" + config[env].port + '/yanghu';
+        let dbname = 'yanghu';
+        if(config[env].dbname) dbname = config[env].dbname;
+        var dbURL = 'mongodb://' + config[env].server + ":" + config[env].port + '/'+dbname;
         if(config[env].dbURL){
             mg.connect(config[env].dbURL,{connectTimeoutMS: 20000,useMongoClient: true});
         } else if(config[env].options){

+ 1 - 1
config/gulpConfig.js

@@ -24,7 +24,7 @@ module.exports = {
     common_css:[
         'lib/jquery-ui/jquery-ui.css',
         'lib/bootstrap/css/bootstrap.min.css',
-        'lib/bootstrap/css/bootstrap-submenu.js',
+        'lib/bootstrap/css/bootstrap-submenu.css',
         'lib/spreadjs/sheets/css/gc.spread.sheets.sc.css',
         'web/building_saas/css/main.css',
         'web/building_saas/css/custom.css',

+ 2 - 1
importserver.js

@@ -62,8 +62,9 @@ app.use(function(err, req, res, next) {
 //设置外增的Date对象Format函数
 //备注: 经过测试nodejs 8.9.3版本不支持eval的方式修改prototype,为兼容考虑,把方法调整到stringUtil文件里
 require('./public/stringUtil').setupDateFormat();
+let importPort = config[process.env.NODE_ENV].importPor?config[process.env.NODE_ENV].importPor:2050; 
 
-app.listen(2050, function(){
+app.listen(importPort, function(){
     console.log('import server started!');
 });
 

+ 1 - 1
logs/online_logs.js

@@ -6,7 +6,7 @@ module.exports = {
 };
 
 let mongoose = require("mongoose");
-import moment from "moment";
+const moment = require("moment");
 let logs_model = mongoose.model("online_logs");
 
 async function saveOnlineTime(req) {

+ 1 - 1
modules/all_models/bills_template_items.js

@@ -1,7 +1,7 @@
 /**
  * Created by zhang on 2018/7/13.
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let Schema = mongoose.Schema;
 
 let collectionName = 'std_bills_template_items';

+ 1 - 1
modules/all_models/compilation.js

@@ -5,7 +5,7 @@
  * @date 2017/7/28
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'compilation';

+ 1 - 1
modules/all_models/compleGlj_section.js

@@ -8,7 +8,7 @@
  * @version
  */
 
-import mongoose from 'mongoose';
+const mongoose = require('mongoose');
 
 const Schema = mongoose.Schema;
 const compleGljSection = new Schema({

+ 1 - 1
modules/all_models/compleGlj_sectionTemplate.js

@@ -15,7 +15,7 @@
  *
  * */
 
-import mongoose from 'mongoose';
+const mongoose = require('mongoose');
 
 const Schema = mongoose.Schema;
 const compleGljSectionTemp = new Schema({

+ 1 - 1
modules/all_models/compleRation_coe.js

@@ -13,7 +13,7 @@
 * 用户ID与费用定额ID绑定子目换算
 * */
 
-import mongoose from 'mongoose';
+const mongoose = require('mongoose');
 const deleteSchema = require('../all_schemas/delete_schema');
 const Schema = mongoose.Schema;
 const coeSchema = new Schema({

+ 1 - 1
modules/all_models/comple_section_template.js

@@ -15,7 +15,7 @@
 *
 * */
 
-import mongoose from 'mongoose';
+const mongoose = require('mongoose');
 
 const Schema = mongoose.Schema;
 const compleRationSectionTemp = new Schema({

+ 1 - 1
modules/all_models/counter.js

@@ -5,7 +5,7 @@
  * @date 2017/6/29
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'counter';

+ 1 - 1
modules/all_models/engineering_lib.js

@@ -5,7 +5,7 @@
  * @date 2017/8/31
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'engineering_lib';

+ 1 - 1
modules/all_models/import_logs.js

@@ -1,7 +1,7 @@
 /**
  * Created by zhang on 2019/12/27.
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'import_logs';

+ 1 - 1
modules/all_models/installation_fee.js

@@ -1,7 +1,7 @@
 /**
  * Created by Zhong on 2017/9/13.
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let Schema = mongoose.Schema;
 
 //安装增加费-费用规则

+ 1 - 1
modules/all_models/log.js

@@ -5,7 +5,7 @@
  * @date 2017/7/27
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'log';

+ 1 - 1
modules/all_models/material_calc.js

@@ -1,7 +1,7 @@
 /**
  * Created by zhang on 2019/3/18.
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 

+ 1 - 1
modules/all_models/message.js

@@ -5,7 +5,7 @@
  * @date 2017/9/21
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'message';

+ 1 - 1
modules/all_models/mix_ratio.js

@@ -5,7 +5,7 @@
  * @date 2017/7/12
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'mix_ratio';

+ 1 - 1
modules/all_models/project_glj.js

@@ -8,7 +8,7 @@
  * @date 2017/6/29
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'glj_list';

+ 1 - 1
modules/all_models/rpt_cfg.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2017/6/14.
  * 把报表相关的配置(字体、边框、格式等都放在一条记录中,方便整理,毕竟用户的报表格式基本是固定的,无需怎样调整)
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let Schema = mongoose.Schema;
 let FormatSchema = new Schema({
     "ID" : String,

+ 1 - 1
modules/all_models/rpt_customize_cfg.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2018/4/18.
  * 用户自定义报表输出格式(如字体,边距,竖线,窄体,小数补0等)
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let Schema = mongoose.Schema;
 let CustomizeCfgSchema = new Schema({
     userId: String,

+ 1 - 1
modules/all_models/rpt_mapping_field.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2017/7/11.
  * 为后台报表模板选择指标用
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let MapFieldSchema = new mongoose.Schema({
     "fieldMapGrpName" : String,
     "Name": String,

+ 1 - 1
modules/all_models/rpt_template.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2016/12/23.
  * 仅仅是存放报表模板的地方,由谁来引用是TreeNodeSchema的事情
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let Schema = mongoose.Schema;
 let RptTemplateSchema = new Schema({
     "ID" : Number,

+ 1 - 1
modules/all_models/rpt_tpl_data_demo.js

@@ -1,7 +1,7 @@
 /**
  * Created by Tony on 2016/12/28.
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 // let dbm = require("../../../config/db/db_manager");
 // let smartcostdb = dbm.getCfgConnection("scConstruct");
 let Schema = mongoose.Schema;

+ 1 - 1
modules/all_models/setting.js

@@ -5,7 +5,7 @@
  * @date 2017/7/27
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'setting';

+ 1 - 1
modules/all_models/std_mix_ratio.js

@@ -5,7 +5,7 @@
  * @date 2017/7/7
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'std_mix_ratio';

+ 1 - 1
modules/all_models/tpl_tree_node.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2017/5/31.
  * 不同的用户会有一套自己的模板结构列表
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let Schema = mongoose.Schema;
 // let TreeNodeSchema = new Schema({
 //     ID:Number,

+ 1 - 1
modules/all_models/unit_price.js

@@ -5,7 +5,7 @@
  * @date 2017/6/29
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 let Schema = mongoose.Schema;
 let collectionName = 'unit_price';

+ 1 - 1
modules/all_models/unit_price_file.js

@@ -5,7 +5,7 @@
  * @date 2017/6/29
  * @version
  */
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 let deleteSchema = require('../all_schemas/delete_schema');
 let Schema = mongoose.Schema;
 let collectionName = 'unit_price_file';

+ 2 - 2
modules/bills_lib/controllers/bills_permissionController.js

@@ -2,7 +2,7 @@
  * Created by Zhong on 2017/8/2.
  */
 let billsController = require("./bills_lib_controllers");
-import baseController from "../../common/base/base_controller";
+const baseController = require("../../common/base/base_controller");
 
 class billsPermContr extends baseController{
     getCurrentUniqId(req, res){
@@ -59,4 +59,4 @@ class billsPermContr extends baseController{
 
 }
 
-export default billsPermContr;
+module.exports = billsPermContr;

+ 2 - 2
modules/bills_lib/controllers/items_permissionController.js

@@ -3,7 +3,7 @@
  */
 
 let billsController = require("./bills_lib_controllers");
-import baseController from "../../common/base/base_controller";
+const baseController = require("../../common/base/base_controller");
 
 class itemsPermContr extends baseController{
 
@@ -36,4 +36,4 @@ class itemsPermContr extends baseController{
     }
 }
 
-export default itemsPermContr;
+module.exports = itemsPermContr;

+ 2 - 2
modules/bills_lib/controllers/jobs_permissionController.js

@@ -3,7 +3,7 @@
  */
 
 let billsController = require("./bills_lib_controllers");
-import baseController from "../../common/base/base_controller";
+const baseController = require("../../common/base/base_controller");
 
 class jobsPermContr extends baseController{
 
@@ -30,4 +30,4 @@ class jobsPermContr extends baseController{
     }
 }
 
-export default jobsPermContr;
+module.exports = jobsPermContr;

+ 3 - 3
modules/bills_lib/controllers/stdBillsLib_permissionController.js

@@ -2,8 +2,8 @@
  * Created by Zhong on 2017/8/2.
  */
 let billsController = require("./bills_lib_controllers");
-import baseController from "../../common/base/base_controller";
-import CompilationModel from "../../users/models/compilation_model";
+const baseController = require("../../common/base/base_controller");
+const CompilationModel = require("../../users/models/compilation_model");
 
 let callback = function(req, res, err, message, data){
     res.json({error: err, message: message, data: data});
@@ -52,5 +52,5 @@ class billsLibPermContr extends baseController{
 
 }
 
-export default billsLibPermContr;
+module.exports = billsLibPermContr;
 

+ 2 - 2
modules/bills_lib/controllers/views_permissionController.js

@@ -2,7 +2,7 @@
  * 清单编辑器页面权限管理和session校验
  * Created by Zhong on 2017/8/2.
  */
-import baseController from "../../common/base/base_controller";
+const baseController = require("../../common/base/base_controller");
 
 class viewsPermContr extends baseController{
     redirectStdBillsMain(req, res){
@@ -24,4 +24,4 @@ class viewsPermContr extends baseController{
     }
 }
 
-export default viewsPermContr;
+module.exports = viewsPermContr;

+ 6 - 11
modules/bills_lib/routes/bills_lib_routes.js

@@ -3,12 +3,11 @@
  */
 let express = require("express");
 let billsRouter =express.Router();
-import ViewsPermContr from "../controllers/views_permissionController";
-import BillsLibPermContr from "../controllers/stdBillsLib_permissionController";
-import BillsPermContr from "../controllers/bills_permissionController";
-import JobsPermContr from "../controllers/jobs_permissionController";
-import ItemsPermContr from "../controllers/items_permissionController";
-let viewsContr = new ViewsPermContr();
+const BillsLibPermContr = require("../controllers/stdBillsLib_permissionController");
+const BillsPermContr = require("../controllers/bills_permissionController");
+const JobsPermContr = require("../controllers/jobs_permissionController");
+const ItemsPermContr = require("../controllers/items_permissionController");
+
 let billsLibContr = new BillsLibPermContr();
 let billsContr = new BillsPermContr();
 let jobsContr = new JobsPermContr();
@@ -16,11 +15,7 @@ let itemsContr = new ItemsPermContr();
 
 
 module.exports =function (app) {
-    app.get("/stdBillsmain", viewsContr.init, viewsContr.redirectStdBillsMain);
-    app.get("/stdBills", viewsContr.init, viewsContr.redirectStdBills);
-    app.get('/stdJobs', viewsContr.init, viewsContr.redirectStdJobs);
-    app.get('/stdItems', viewsContr.init, viewsContr.redirectStdItems);
-
+  
     billsRouter.post('/getCompilationList', billsLibContr.init, billsLibContr.getCompilationList);
     billsRouter.post('/getMaxNumber', billsLibContr.init, billsLibContr.getMaxNumber);
     billsRouter.post('/getABillsLib', billsLibContr.init, billsLibContr.getABillsLib);

+ 0 - 28
modules/bills_lib/routes/maintain_bills_routes.js

@@ -1,28 +0,0 @@
-/**
- * Created by chen on 2017/7/17.
- */
-
-let express = require("express");
-
-
-module.exports = function (app) {
-    app.get("/stdBillsmain", function(req, res){
-        if(!req.session.sessionUser){
-            res.redirect('/login');
-        }
-        else {
-            res.render("maintain/bills_lib/html/main.html",
-                {userAccount: req.session.userAccount,
-                    userID: req.session.sessionUser.id});
-        }
-    });
-    app.get("/stdBills", function(req, res){
-        res.render("maintain/bills_lib/html/qingdan.html");
-    });
-    app.get('/stdJobs', function(req, res){
-        res.render('maintain/bills_lib/html/neirong.html');
-    });
-    app.get('/stdItems', function(req, res){
-        res.render('maintain/bills_lib/html/tezheng.html');
-    });
-};

+ 4 - 4
modules/common/base/base_controller.js

@@ -5,9 +5,9 @@
  * @date 2017/6/29
  * @version
  */
-import Moment from "moment";
-import Url from "url";
-import UserMessageModel from "../../users/models/user_message_model";
+const Moment = require("moment");
+const Url = require("url");
+const UserMessageModel = require("../../users/models/user_message_model");
 
 class BaseController {
 
@@ -68,4 +68,4 @@ class BaseController {
     }
 }
 
-export default BaseController;
+module.exports = BaseController;

+ 2 - 2
modules/common/base/base_model.js

@@ -5,7 +5,7 @@
  * @date 2017/6/22
  * @version
  */
-import MongooseHelper from "../helper/mongoose_helper";
+const MongooseHelper = require("../helper/mongoose_helper");
 let mongoose = require('mongoose');
 let counterModel =  mongoose.model('counter');
 
@@ -165,4 +165,4 @@ class BaseModel {
 
 }
 
-export default BaseModel;
+module.exports = BaseModel;

+ 4 - 1
modules/common/const/engineering.js

@@ -52,4 +52,7 @@ const engineeringList = [
     {name: "安装修缮工程", value: engineering.BUILD_IN_REPAIR},
 ];
 
-export {engineering as default, engineeringList as List};
+module.exports = {
+    engineering,
+    List: engineeringList,
+};

+ 1 - 1
modules/common/const/glj_type_const.js

@@ -38,4 +38,4 @@ const gljType = {
     GENERAL_RISK_FEE: 8                         // 一般风险费
 };
 
-export default gljType;
+module.exports = gljType;

+ 1 - 1
modules/common/const/log_type_const.js

@@ -11,4 +11,4 @@ const logType = {
     LOGIN_LOG: 1
 };
 
-export default logType;
+module.exports = logType;

+ 1 - 1
modules/common/const/setting_type_const.js

@@ -10,4 +10,4 @@ let settingType = {
     PREFERENCE: 1
 };
 
-export default settingType;
+module.exports = settingType;

+ 2 - 2
modules/common/helper/mongoose_helper.js

@@ -5,7 +5,7 @@
  * @date 2017/5/22.
  */
 
-import mongoose from "mongoose";
+const mongoose = require('mongoose');
 
 class MongooseHelper {
 
@@ -230,4 +230,4 @@ class MongooseHelper {
 
 }
 
-export default MongooseHelper;
+module.exports = MongooseHelper;

+ 3 - 3
modules/common/std/std_glj_lib_glj_list_model.js

@@ -5,8 +5,8 @@
  * @date 2017/7/11
  * @version
  */
-import mongoose from "mongoose";
-import BaseModel from "../base/base_model";
+const mongoose = require('mongoose');
+const BaseModel = require("../base/base_model");
 
 class STDGLJLibGLJListModel extends BaseModel {
 
@@ -93,4 +93,4 @@ class STDGLJLibGLJListModel extends BaseModel {
 
 }
 
-export default STDGLJLibGLJListModel;
+module.exports = STDGLJLibGLJListModel;

+ 3 - 3
modules/common/std/std_mix_ratio_model.js

@@ -5,8 +5,8 @@
  * @date 2017/7/10
  * @version
  */
-import mongoose from "mongoose";
-import BaseModel from "../base/base_model";
+const mongoose = require('mongoose');
+const BaseModel = require("../base/base_model");
 
 class STDMixRatioModel extends BaseModel {
 
@@ -45,4 +45,4 @@ class STDMixRatioModel extends BaseModel {
 
 }
 
-export default STDMixRatioModel;
+module.exports = STDMixRatioModel;

+ 6 - 6
modules/complementary_glj_lib/controllers/gljController.js

@@ -1,11 +1,11 @@
 /**
  * Created by Zhong on 2017/8/22.
  */
-import BaseController from "../../common/base/base_controller";
-import stdgljutil  from "../../../public/cache/std_glj_type_util";
-import GljDao from "../models/gljModel";
-import EngineeringLibModel from "../../users/models/engineering_lib_model";
-let config = require("../../../config/config.js");
+const BaseController = require("../../common/base/base_controller");
+const stdgljutil  = require("../../../public/cache/std_glj_type_util");
+const GljDao = require("../models/gljModel");
+const EngineeringLibModel = require("../../users/models/engineering_lib_model");
+const config = require("../../../config/config.js");
 
 let gljDao = new GljDao();
 let callback = function(req, res, err, message, data){
@@ -140,4 +140,4 @@ class GljController extends BaseController{
     }
 }
 
-export default GljController;
+module.exports = GljController;

+ 4 - 4
modules/complementary_glj_lib/models/gljModel.js

@@ -6,9 +6,9 @@ const complementaryGljModel = mongoose.model('complementary_glj_lib');
 const stdGljModel = mongoose.model('std_glj_lib_gljList');
 const gljClassModel = mongoose.model('std_glj_lib_gljClass');
 const compleClassModel = mongoose.model('complementary_glj_section');
-import counter from "../../../public/counter/counter";
-import async from "async";
-import STDGLJLibGLJListModel from "../../common/std/std_glj_lib_glj_list_model";
+const counter = require("../../../public/counter/counter");
+const async = require("async");
+const STDGLJLibGLJListModel = require("../../common/std/std_glj_lib_glj_list_model");
 
 class GljDao {
     getGljTypes (gljLibId, callback){
@@ -328,5 +328,5 @@ class GljDao {
     }
 }
 
-export default GljDao;
+module.exports = GljDao;
 

+ 3 - 3
modules/complementary_glj_lib/routes/routes.js

@@ -2,9 +2,9 @@
  * Created by Zhong on 2017/8/22.
  */
 
-import express from "express";
-import GljController from "../controllers/gljController";
-import CompleRationController from '../../complementary_ration_lib/controllers/compleRationController';
+const express = require("express");
+const GljController = require("../controllers/gljController");
+const CompleRationController = require('../../complementary_ration_lib/controllers/compleRationController');
 
 let router = express.Router();
 let gljController = new GljController();

+ 3 - 3
modules/complementary_ration_lib/controllers/compleRationController.js

@@ -2,8 +2,8 @@
  * Created by Zhong on 2017/12/21.
  */
 
-import BaseController from '../../common/base/base_controller';
-import CompleRationDao from '../models/compleRationModel';
+const BaseController = require('../../common/base/base_controller');
+const CompleRationDao = require('../models/compleRationModel');
 
 let compleRationDao = new CompleRationDao();
 let coeListDAO = require('../../ration_repository/models/coe');
@@ -190,4 +190,4 @@ class CompleRationController extends BaseController{
     }
 }
 
-export default CompleRationController;
+module.exports = CompleRationController;

+ 3 - 3
modules/complementary_ration_lib/controllers/compleSectionTreeController.js

@@ -2,8 +2,8 @@
  * Created by Zhong on 2017/12/21.
  */
 
-import BaseController from '../../common/base/base_controller';
-import SectionTreeDao from '../models/sectionTreeModel';
+const BaseController = require('../../common/base/base_controller');
+const SectionTreeDao = require('../models/sectionTreeModel');
 
 let sectionTreeDao = new SectionTreeDao();
 let callback = function (req, res, err, msg, data) {
@@ -33,4 +33,4 @@ class CompleSectionTreeController extends BaseController{
     }
 }
 
-export default CompleSectionTreeController;
+module.exports = CompleSectionTreeController;

+ 11 - 8
modules/complementary_ration_lib/controllers/compleViewController.js

@@ -2,12 +2,12 @@
  * Created by Zhong on 2017/12/22.
  */
 
-import BaseController from '../../common/base/base_controller';
-import CompleViewModel from '../models/compleViewModel';
-import EngineeringLibModel from "../../users/models/engineering_lib_model";
+const BaseController = require('../../common/base/base_controller');
+const CompleViewModel = require('../models/compleViewModel');
+const EngineeringLibModel = require("../../users/models/engineering_lib_model");
 let config = require("../../../config/config.js");
 let compleViewModel = new CompleViewModel();
-import CompleRationDao from '../models/compleRationModel';
+const CompleRationDao = require('../models/compleRationModel');
 const compleRationDao = new CompleRationDao();
 let callback = function (req, res, err, msg, data) {
     res.json({error: err, message: msg, data: data});
@@ -50,7 +50,8 @@ class CompleViewController extends BaseController{
             gljLibId: gljLibId,
             compilationName: req.session.sessionCompilation.name,
             versionName: req.session.compilationVersion,
-            LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
+            LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
+            title:config[process.env.NODE_ENV].title?config[process.env.NODE_ENV].title:"?????????"
         });
     }
 
@@ -79,7 +80,8 @@ class CompleViewController extends BaseController{
             gljLibId: gljLibId,
             compilationName: req.session.sessionCompilation.name,
             versionName: req.session.compilationVersion,
-            LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
+            LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
+            title:config[process.env.NODE_ENV].title?config[process.env.NODE_ENV].title:"?????????"
         });
     }
 
@@ -96,7 +98,8 @@ class CompleViewController extends BaseController{
             gljLibId: gljLibId,
             compilationName: req.session.sessionCompilation.name,
             versionName: req.session.compilationVersion,
-            LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
+            LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
+            title:config[process.env.NODE_ENV].title?config[process.env.NODE_ENV].title:"?????????"
         });
     }
 
@@ -131,4 +134,4 @@ class CompleViewController extends BaseController{
     }
 }
 
-export default CompleViewController;
+module.exports = CompleViewController;

+ 3 - 3
modules/complementary_ration_lib/controllers/searchController.js

@@ -2,8 +2,8 @@
  * Created by Zhong on 2018/1/9.
  */
 
-import BaseController from '../../common/base/base_controller';
-import SearchDao from '../models/searchModel';
+const BaseController = require('../../common/base/base_controller');
+const SearchDao = require('../models/searchModel');
 
 let searchDao = new SearchDao();
 let callback = function (req, res, err, message, data) {
@@ -26,4 +26,4 @@ class SearchController extends BaseController{
     }
 }
 
-export default SearchController;
+module.exports = SearchController;

+ 4 - 4
modules/complementary_ration_lib/models/compleRationModel.js

@@ -10,11 +10,11 @@ const complementaryGljModel = mongoose.model('complementary_glj_lib');
 const stdGljModel = mongoose.model('std_glj_lib_gljList');
 const stdgljutil = require('../../../public/cache/std_glj_type_util');
 const installFacade = require('../facades/compleInstallFacade');
-import async from 'async';
+const async = require('async');
 let stdRationModel = require ('../../ration_repository/models/ration_item').Model;
-import SectionTreeDao from '../models/sectionTreeModel';
+const SectionTreeDao = require('../models/sectionTreeModel');
 const sectionTreeDao = new SectionTreeDao();
-import GljDao from "../../complementary_glj_lib/models/gljModel";
+const GljDao = require("../../complementary_glj_lib/models/gljModel");
 const gljDao = new GljDao();
 let counter = require('../../../public/counter/counter');
 const scMathUtil = require('../../../public/scMathUtil').getUtil();
@@ -485,4 +485,4 @@ function isDef(v){
     return v !== undefined && v !== null;
 }
 
-export default CompleRatoinDao;
+module.exports = CompleRatoinDao;

+ 1 - 1
modules/complementary_ration_lib/models/compleViewModel.js

@@ -26,4 +26,4 @@ class CompleViewModel {
     }
 }
 
-export default CompleViewModel;
+module.exports = CompleViewModel;

+ 1 - 1
modules/complementary_ration_lib/models/searchModel.js

@@ -233,4 +233,4 @@ function isDef(v){
     return v !== undefined && v !== null;
 }
 
-export default SearchDao;
+module.exports = SearchDao;

+ 1 - 1
modules/complementary_ration_lib/models/sectionTreeModel.js

@@ -147,4 +147,4 @@ class SectionTreeDao {
     }
 }
 
-export default SectionTreeDao;
+module.exports = SectionTreeDao;

+ 6 - 6
modules/complementary_ration_lib/routes/routes.js

@@ -2,12 +2,12 @@
  * Created by Zhong on 2017/12/21.
  */
 
-import express from 'express';
-import CompleViewController from '../controllers/compleViewController';
-import CompleSectionTreeController from '../controllers/compleSectionTreeController';
-import CompleRationController from '../controllers/compleRationController';
-import GljController from '../../complementary_glj_lib/controllers/gljController';
-import SearchController from '../controllers/searchController'
+const express = require('express');
+const CompleViewController = require('../controllers/compleViewController');
+const CompleSectionTreeController = require('../controllers/compleSectionTreeController');
+const CompleRationController = require('../controllers/compleRationController');
+const GljController = require('../../complementary_glj_lib/controllers/gljController');
+const SearchController = require('../controllers/searchController')
 
 let router = express.Router();
 let compleViewController = new CompleViewController();

+ 13 - 12
modules/glj/controllers/glj_controller.js

@@ -5,12 +5,12 @@
  * @date 2017/6/22
  * @version
  */
-import BaseController from "../../common/base/base_controller";
-import GLJTypeConst from "../../common/const/glj_type_const";
-import GLJListModel from "../models/glj_list_model";
-import UnitPriceModel from "../models/unit_price_model";
-import MixRatioModel from "../models/mix_ratio_model";
-import UnitPriceFileModel from "../models/unit_price_file_model";
+const BaseController = require("../../common/base/base_controller");
+const GLJTypeConst = require("../../common/const/glj_type_const");
+const GLJListModel = require("../models/glj_list_model");
+const UnitPriceModel = require("../models/unit_price_model");
+const MixRatioModel = require("../models/mix_ratio_model");
+const UnitPriceFileModel = require("../models/unit_price_file_model");
 let logger = require("../../../logs/log_helper").logger;
 let consts = require('../../main/models/project_consts');
 let glj_type_util = require('../../../public/cache/std_glj_type_util');
@@ -28,6 +28,7 @@ let gljUtil = require('../../../public/gljUtil');
 
 
 const ProjectModel = require('../../pm/models/project_model').project;
+const commonFacade = require('../../main/facade/common_facade');
 class GLJController extends BaseController {
 
     /**
@@ -189,7 +190,7 @@ class GLJController extends BaseController {
         };
         try {
             // 获取标段对应的单价文件id
-            let unitPriceFileId = await ProjectModel.getUnitPriceFileId(projectId);
+            let unitPriceFileId = await commonFacade.getUnitPriceFileId(projectId);
             if (unitPriceFileId <= 0) {
                 throw '没有对应的单价文件';
             }
@@ -524,7 +525,7 @@ class GLJController extends BaseController {
         let name = request.body.name;
         try {
             // 当前单价文件id
-            let currentUnitPriceId = await ProjectModel.getUnitPriceFileId(projectId);
+            let currentUnitPriceId = await commonFacade.getUnitPriceFileId(projectId);
             // 获取当前项目的rootProjectId
             let projectData = await ProjectModel.getProject(projectId);
             let rootProjectId = projectData.property.rootProjectID !== undefined ? projectData.property.rootProjectID : 0;
@@ -576,7 +577,7 @@ class GLJController extends BaseController {
         };
         try {
             // 当前单价文件id
-            let currentUnitPriceId = await ProjectModel.getUnitPriceFileId(projectId);
+            let currentUnitPriceId = await commonFacade.getUnitPriceFileId(projectId);
             if (currentUnitPriceId <= 0) {
                 throw '没有找到对应的单价文件';
             }
@@ -869,7 +870,7 @@ class GLJController extends BaseController {
 }
 
 async function getFreightAndOriginalData(projectId,unitPriceFileId){
-  if(!unitPriceFileId)  unitPriceFileId = await ProjectModel.getUnitPriceFileId(projectId);
+  if(!unitPriceFileId)  unitPriceFileId = await commonFacade.getUnitPriceFileId(projectId);
   let originalList = await original_calc_model.find({"unit_price_file_id":unitPriceFileId}).lean();
   let freightList = await freight_calc_model .find({"unit_price_file_id":unitPriceFileId}).lean();
   return [originalList,freightList]
@@ -892,7 +893,7 @@ async function getGLJListByProjectID(projectId){
             throw '标段id有误';
         }
         // 获取标段对应的单价文件id
-        let unitPriceFileId = await ProjectModel.getUnitPriceFileId(projectId);
+        let unitPriceFileId = await commonFacade.getUnitPriceFileId(projectId);
         if (unitPriceFileId <= 0) {
             throw '没有对应的单价文件';
         }
@@ -941,4 +942,4 @@ async function getGLJListByProjectID(projectId){
     return responseData;
 }
 
-export default GLJController;
+module.exports = GLJController;

+ 7 - 6
modules/glj/facade/glj_facade.js

@@ -16,11 +16,12 @@ module.exports={ //先导出后require可以解决循环引用问题
 
 const mongoose = require('mongoose');
 const ProjectModel = require('../../pm/models/project_model').project;
-import UnitPriceFileModel from "../models/unit_price_file_model";
-import UnitPriceModel from "../models/unit_price_model";
-import MixRatioModel from "../models/mix_ratio_model";
-import CounterModel from "../models/counter_model";
-import GLJListModel from '../../glj/models/glj_list_model';
+const commonFacade = require('../../main/facade/common_facade');
+const UnitPriceFileModel = require("../models/unit_price_file_model");
+const UnitPriceModel = require("../models/unit_price_model");
+const MixRatioModel = require("../models/mix_ratio_model");
+const CounterModel = require("../models/counter_model");
+const GLJListModel = require('../../glj/models/glj_list_model');
 let std_glj_lib_gljList_model = mongoose.model('std_glj_lib_gljList');
 let original_calc_model = mongoose.model('original_calc');
 let freight_calc_model = mongoose.model('freight_calc');
@@ -41,7 +42,7 @@ async function changeUnitFile(projectData,unitFile,type,userID) {
     let newName = unitFile.name;
     type = parseInt(type);
 
-        let currentUnitPriceId = await ProjectModel.getUnitPriceFileId(projectId);
+        let currentUnitPriceId = await commonFacade.getUnitPriceFileId(projectId);
         let unitPriceFileModel = new UnitPriceFileModel();
 
         let insertData = null;

+ 3 - 3
modules/glj/models/counter_model.js

@@ -5,8 +5,8 @@
  * @date 2017/6/23
  * @version
  */
-import BaseModel from "../../common/base/base_model";
-import mongoose from "mongoose";
+const BaseModel = require("../../common/base/base_model");
+const mongoose = require("mongoose");
 
 class CounterModel extends BaseModel {
 
@@ -51,4 +51,4 @@ class CounterModel extends BaseModel {
 
 }
 
-export default CounterModel;
+module.exports = CounterModel;

+ 14 - 15
modules/glj/models/glj_list_model.js

@@ -5,19 +5,18 @@
  * @date 2017/6/22
  * @version
  */
-import mongoose from "mongoose";
-import BaseModel from "../../common/base/base_model";
-import CounterModel from "./counter_model";
-import UnitPriceModel from "./unit_price_model";
-import UnitPriceFileModel from "./unit_price_file_model";
-import GLJTypeConst from "../../common/const/glj_type_const";
-import STDGLJLibGLJListModel from "../../common/std/std_glj_lib_glj_list_model";
-import MixRatioModel from "./mix_ratio_model";
-import GljModel from "../../complementary_glj_lib/models/gljModel";
-const ProjectModel = require('../../pm/models/project_model').project;
+const mongoose = require("mongoose");
+const BaseModel = require("../../common/base/base_model");
+const CounterModel = require("./counter_model");
+const UnitPriceModel = require("./unit_price_model");
+const UnitPriceFileModel = require("./unit_price_file_model");
+const GLJTypeConst = require("../../common/const/glj_type_const");
+const STDGLJLibGLJListModel = require("../../common/std/std_glj_lib_glj_list_model");
+const MixRatioModel = require("./mix_ratio_model");
+const GljModel = require("../../complementary_glj_lib/models/gljModel");
 const scMathUtil = require('../../../public/scMathUtil').getUtil();
 let gljUtil = require('../../../public/gljUtil');
-import ration_facade from "../../main/facade/ration_facade";
+const commonFacade = require("../../main/facade/common_facade");
 let gljCollectionName = 'glj_list';
 let GLJSchemas = mongoose.model(gljCollectionName);
 let _ = require("lodash");
@@ -151,8 +150,8 @@ class GLJListModel extends BaseModel {
                 }
             }
             if(missMaxRatio.length > 0){
-              let newList =  await ration_facade.getNewProjectGLJFromMissMixratio(projectId,missMaxRatio,keyMap,[]);
-              await ration_facade.setIDfromCounter("glj_list",newList);
+              let newList =  await commonFacade.getNewProjectGLJFromMissMixratio(projectId,missMaxRatio,keyMap,[]);
+              await commonFacade.setIDfromCounter("glj_list",newList);
               await this.model.insertMany(newList);
               gljData=gljData.concat(newList);         
             }
@@ -346,7 +345,7 @@ class GLJListModel extends BaseModel {
             let isAddProjectGLJ = false;
 
             // 获取标段对应的单价文件id
-            let unitPriceFileId = unitFileId?unitFileId:await ProjectModel.getUnitPriceFileId(data.project_id);
+            let unitPriceFileId = unitFileId?unitFileId:await commonFacade.getUnitPriceFileId(data.project_id);
             if (unitPriceFileId <= 0) {
                 throw '没有对应的单价文件';
             }
@@ -1004,4 +1003,4 @@ class GLJListModel extends BaseModel {
 
 }
 
-export default GLJListModel;
+module.exports = GLJListModel;

+ 4 - 4
modules/glj/models/mix_ratio_model.js

@@ -5,9 +5,9 @@
  * @date 2017/7/12
  * @version
  */
-import mongoose from "mongoose";
-import BaseModel from "../../common/base/base_model";
-import CounterModel from "./counter_model"
+const mongoose = require("mongoose");
+const BaseModel = require("../../common/base/base_model");
+const CounterModel = require("./counter_model");
 let collectionName = 'mix_ratio';
 
 class MixRatioModel extends BaseModel {
@@ -114,4 +114,4 @@ class MixRatioModel extends BaseModel {
     }
 }
 
-export default MixRatioModel;
+module.exports = MixRatioModel;

+ 4 - 4
modules/glj/models/unit_price_file_model.js

@@ -5,9 +5,9 @@
  * @date 2017/7/5
  * @version
  */
-import mongoose from "mongoose";
-import BaseModel from "../../common/base/base_model";
-import CounterModel from "./counter_model";
+const mongoose = require("mongoose");
+const BaseModel = require("../../common/base/base_model");
+const CounterModel = require("./counter_model");
 let collectionName = 'unit_price_file';
 let Projects = mongoose.model('projects');
 class UnitPriceFileModel extends BaseModel {
@@ -141,4 +141,4 @@ class UnitPriceFileModel extends BaseModel {
     }
 }
 
-export default UnitPriceFileModel;
+module.exports = UnitPriceFileModel;

+ 23 - 21
modules/glj/models/unit_price_model.js

@@ -5,12 +5,11 @@
  * @date 2017/6/30
  * @version
  */
-import mongoose from "mongoose";
-import BaseModel from "../../common/base/base_model"
-import GLJTypeConst from "../../common/const/glj_type_const"
-import CounterModel from "./counter_model"
-import MixRatioModel from "./mix_ratio_model";
-import _ from "lodash";
+const mongoose = require("mongoose");
+const BaseModel = require("../../common/base/base_model");
+const CounterModel = require("./counter_model")
+const MixRatioModel = require("./mix_ratio_model");
+const _ = require("lodash");
 const scMathUtil = require('../../../public/scMathUtil').getUtil();
 let collectionName = 'unit_price';
 let decimal_facade = require('../../main/facade/decimal_facade');
@@ -287,20 +286,23 @@ class UnitPriceModel extends BaseModel {
         return rList;
     }
 
-    async updateCalcMaterial(data){
-        let doc = data.ext?data.ext:{};
-        doc[data.updateField] = data.value;
-        let unitPrice = await this.db.findAndModify({id:data.id,unit_price_file_id:data.unit_price_file_id},doc);
-        if(data.updateField == 'calcMaterial' && doc['calcMaterial'] == 0){//标记为0即删除材料计算标记,要删除其下挂的原价计算,运费计算,定额计算
-            let connect_key = gljUtil.getIndex(unitPrice);
-            await original_calc_model.deleteMany({unit_price_file_id:data.unit_price_file_id,connect_key:connect_key});
-            await freight_calc_model.deleteMany({unit_price_file_id:data.unit_price_file_id,connect_key:connect_key});
-            //to do 删除定额计算
-        }
-        if(!unitPrice){
-            throw "没有找到对应的单价";
-        }
-        return unitPrice;
+    async updateCalcMaterial(datas){
+        for(let data of datas){
+          let doc = data.ext?data.ext:{};
+          doc[data.updateField] = data.value;
+          let unitPrice = await this.db.findAndModify({id:data.id,unit_price_file_id:data.unit_price_file_id},doc);
+          if(data.updateField == 'calcMaterial' && doc['calcMaterial'] == 0){//标记为0即删除材料计算标记,要删除其下挂的原价计算,运费计算,定额计算
+              let connect_key = gljUtil.getIndex(unitPrice);
+              await original_calc_model.deleteMany({unit_price_file_id:data.unit_price_file_id,connect_key:connect_key});
+              await freight_calc_model.deleteMany({unit_price_file_id:data.unit_price_file_id,connect_key:connect_key});
+              //to do 删除定额计算
+          }
+          if(!unitPrice){
+              throw "没有找到对应的单价";
+          }
+        }
+        
+        return datas;
     }
     needUpdateParent(connect_key){
         let noNeedUpdateType = ["202","203","204"];//父类型为混凝土、砂浆,配合比,类型的,不用更新价格
@@ -526,4 +528,4 @@ class UnitPriceModel extends BaseModel {
 
 }
 
-export default UnitPriceModel;
+module.exports = UnitPriceModel;

+ 2 - 2
modules/glj/routes/glj_router.js

@@ -5,8 +5,8 @@
  * @date 2017/6/22
  * @version
  */
-import Express from "express";
-import GLJController from "../controllers/glj_controller";
+const Express = require("express");
+const GLJController = require("../controllers/glj_controller");
 
 module.exports = function (app) {
 const router = Express.Router();

+ 1 - 1
modules/main/controllers/ration_controller.js

@@ -8,7 +8,7 @@ let ration_facade = require('../facade/ration_facade');
 let bill_facade = require('../facade/bill_facade');
 let project_facade = require("../facade/project_facade");
 let logger = require("../../../logs/log_helper").logger;
-import GLJController from "../../glj/controllers/glj_controller";
+const GLJController = require("../../glj/controllers/glj_controller");
 let controller = {
     insertGLJAsRation:async function (req){
         let data = req.body.data;

+ 2 - 3
modules/main/facade/bill_facade.js

@@ -19,9 +19,8 @@ let bill_Model = require('../models/bills').model;
 let billsLibDao = require("../../bills_lib/models/bills_lib_interfaces");
 
 
-import GLJController from "../../glj/controllers/glj_controller";
-
-import GLJListModel from '../../glj/models/glj_list_model';
+const GLJController = require("../../glj/controllers/glj_controller");
+const GLJListModel = require('../../glj/models/glj_list_model');
 let _ = require("lodash");
 module.exports={
     getSectionInfo : async function (data) {

+ 129 - 0
modules/main/facade/common_facade.js

@@ -0,0 +1,129 @@
+// 开这个模块的最初原因:重构ESModule为CommonJS以升级node版本后,遇到module循环引用问题,将造成循环引用的方法抽离放到这个模块
+module.exports = {
+    getNewProjectGLJFromMissMixratio,
+    getProjectGLJNewData,
+    setIDfromCounter,
+    getUnitPriceFileId,
+};
+
+const scMathUtil = require('../../../public/scMathUtil').getUtil();
+const mongoose = require('mongoose');
+const std_glj_lib_gljList_model = mongoose.model('std_glj_lib_gljList');
+const counterModel = mongoose.model('counter');
+const projectsModel = mongoose.model('projects');
+
+//根据缺少项目工料机的组成物信息,反向生成对应的项目工料机
+async function getNewProjectGLJFromMissMixratio(projectID, lessMix, projectGLJMap, newProjectGLJList, ext) {
+    let lessIDList = [];
+    let uniqMap = {};//去重
+    let lessStdMix = [];//防止组成物中改了名称等,但是通过glj_id取出来的是还没改前的原始数据
+    if (lessMix.length > 0) {
+        for (let lm of lessMix) {
+            let parentglj = projectGLJMap[lm.connect_key];
+            if (!parentglj) throw `含有组成物工料机${lm.connect_key},没有找到,添加定额失败`;
+            if ((parentglj.from == "std" || lm.from == "std") && lm.code != "80CCS") {//车船税特殊处理
+                if (!uniqMap[lm.glj_id]) {
+                    lessIDList.push(lm.glj_id);
+                    uniqMap[lm.glj_id] = lm;
+                }
+                lessStdMix.push(lm);
+            } else {//来自组成物的直接设置    
+                lm.from = 'cpt';
+                lm.gljType = lm.type;
+                let t_mg = getProjectGLJNewData(lm, projectID);
+                newProjectGLJList.push(t_mg);
+                projectGLJMap[getIndex(lm)] = t_mg;
+            }
+        }
+    }
+
+    if (lessIDList.length > 0) {
+        let less_stds = await std_glj_lib_gljList_model.find({ 'ID': { '$in': lessIDList } }).lean();
+        let less_stds_map = {};
+        for (let les of less_stds) {
+            less_stds_map[les.ID] = les;
+        }
+        for (let t_l_m of lessStdMix) {
+            let t_nglj = less_stds_map[t_l_m.glj_id];
+            t_nglj.from = 'std';
+            //防止组成物中改了名称等,但是通过glj_id取出来的是还没改前的原始数据
+            t_nglj.name = t_l_m.name;
+            t_nglj.code = t_l_m.code;
+            t_nglj.gljType = t_l_m.type;
+            t_nglj.specs = t_l_m.specs;
+            t_nglj.unit = t_l_m.unit;
+            let t_np = getProjectGLJNewData(t_nglj, projectID, ext);
+            newProjectGLJList.push(t_np);
+            projectGLJMap[getIndex(t_l_m)] = t_np;
+        }
+    }
+    return newProjectGLJList;
+}
+
+
+function getProjectGLJNewData(tmp, projectId, ext) {
+    let gljData = {
+        glj_id: tmp.ID,
+        repositoryId: tmp.repositoryId,
+        project_id: projectId,
+        code: tmp.code,
+        name: tmp.name,
+        specs: tmp.specs ? tmp.specs : '',
+        unit: tmp.unit === undefined ? '' : tmp.unit,
+        type: tmp.gljType,
+        adjCoe: tmp.adjCoe,
+        original_code: tmp.code,
+        materialType: tmp.materialType,   //三材类别
+        materialCoe: tmp.materialCoe,
+        base_price: tmp.basePrice,
+        market_price: tmp.basePrice,
+        is_main_material: tmp.is_main_material ? tmp.is_main_material : 1,
+        from: tmp.from ? tmp.from : "std"
+    };
+    if (gljData.from == 'std' && ext && ext.priceField && (tmp.priceProperty && tmp.priceProperty[ext.priceField] != undefined && tmp.priceProperty[ext.priceField] != null)) {
+        const basePrice = scMathUtil.roundTo(tmp.priceProperty[ext.priceField], -6);
+        gljData.base_price = basePrice;
+        gljData.market_price = basePrice;
+    }
+    return gljData;
+}
+
+async function setIDfromCounter(name, list, map, keyfield) {//map,keyfield
+
+    let update = { $inc: { sequence_value: list.length } };
+    let condition = { _id: name };
+    let options = { new: true };
+
+    // 先查找更新
+    let counter = await counterModel.findOneAndUpdate(condition, update, options);
+    let firstID = counter.sequence_value - (list.length - 1);
+    for (let a of list) {
+        a.id = firstID;
+        firstID += 1
+        if (map && keyfield) {
+            let key = a[keyfield];
+            map[key] ? map[key].push(a) : map[key] = [a]
+        }
+    }
+
+}
+
+/**
+ * 根据项目id获取单价文件列表id
+ *
+ * @param {Number} projectId
+ * @return {Promise}
+ */
+async function getUnitPriceFileId(projectId) {
+    let result = 0;
+    let startTime = +new Date();
+    let projectData = await projectsModel.find({ ID: projectId }, ['property.unitPriceFile']);
+    if (projectData === null) {
+        return result;
+    }
+    let endTime = +new Date();
+    console.log("取单价文件列表id时间-----" + (endTime - startTime));
+    projectData = projectData[0];
+    result = projectData.property.unitPriceFile !== undefined ? projectData.property.unitPriceFile.id : 0;
+    return result;
+};

+ 2 - 4
modules/main/facade/project_facade.js

@@ -10,7 +10,7 @@ module.exports = {
     getDefaultColSetting: getDefaultColSetting,
     markProjectsToChange:markProjectsToChange,
     getBudgetSummayDatas:getBudgetSummayDatas,
-    getGLJSummayDatas:getGLJSummayDatas
+    getGLJSummayDatas:getGLJSummayDatas,
 };
 
 let mongoose = require('mongoose');
@@ -34,7 +34,7 @@ let decimal_facade = require('../../main/facade/decimal_facade');
 const scMathUtil = require('../../../public/scMathUtil').getUtil();
 const calcUtil = require('../../../public/calculate_util')
 const { fixedFlag } = require('../../../public/common_constants');
-import GLJListModel from "../../glj/models/glj_list_model";
+const GLJListModel = require("../../glj/models/glj_list_model");
 const projectDao = require('../../pm/models/project_model').project;
 
 async function createRationGLJData(glj) {
@@ -735,5 +735,3 @@ async function calcProjectGLJQuantity(projectID,projectGLJDatas,property){
     let rationDatas = await ration_model.model.find({'projectID':projectID});
      gljUtil.calcProjectGLJQuantity(projectGLJDatas,rationGLJDatas,rationDatas,[],q_decimal)
 }
-
-

+ 9 - 106
modules/main/facade/ration_facade.js

@@ -15,15 +15,17 @@ module.exports = {
   deleteSubListByQuery:deleteSubListByQuery,
   updateCoeAdjust:updateCoeAdjust,
   getUnitPriceData:getUnitPriceData,
-  setIDfromCounter:setIDfromCounter,
-  getNewProjectGLJFromMissMixratio:getNewProjectGLJFromMissMixratio
 };
 
 
 let mongoose = require('mongoose');
-import SearchDao from '../../complementary_ration_lib/models/searchModel';
-import GLJListModel from "../../glj/models/glj_list_model";
-import e from 'express';
+const SearchDao = require('../../complementary_ration_lib/models/searchModel');
+const GLJListModel = require("../../glj/models/glj_list_model");
+const { 
+  getProjectGLJNewData,
+  setIDfromCounter
+} = require('../facade/common_facade');
+const e = require('express');
 const scMathUtil = require('../../../public/scMathUtil').getUtil();
 let gljUtil = require('../../../public/gljUtil');
 let ration_glj_facade = require("../../ration_glj/facade/ration_glj_facade");
@@ -51,7 +53,6 @@ let compleCoeModel = mongoose.model('complementary_ration_coe_list');
 let projectGLJModel = mongoose.model("glj_list");
 let mixRatioModel = mongoose.model("mix_ratio");
 let complementaryGljLibModel = mongoose.model('complementary_glj_lib');
-let counterModel =  mongoose.model('counter');
 
 let _= require('lodash');
 const projectDao = require('../../pm/models/project_model').project;
@@ -590,7 +591,7 @@ async function addRationGLJ(std,newRation,compilation,isMaterial,connect_key) {
         if(isMaterial == true){//材料计算添加时要先检查
             for(let sub of std.rationGljList){
                 let t_g = getStdGlj(sub,stdGLJMap,cptGLJMap,{},ext);
-                if(t_g && connect_key == gljUtil.getIndex(t_g,['code','name','specs','unit','gljType'])) throw `本定额中包含工料机[${t_g.code}]${t_g.name},与当前工料机编号相同,添加定额失败`;
+                if(t_g && connect_key == gljUtil.getIndex(t_g,['code','name','specs','unit','gljType'])) throw `本定额中包含工料机[${t_g.code}]${t_g.name},与当前工料机编号相同,添加定额失败`;
             }
         }
         for(let sub of std.rationGljList){
@@ -972,104 +973,6 @@ async function getMixRatioInfo(projectID,projectGLJMap,newProjectGLJList,mixRati
 }
 
 
-//根据缺少项目工料机的组成物信息,反向生成对应的项目工料机
-async function getNewProjectGLJFromMissMixratio(projectID,lessMix,projectGLJMap,newProjectGLJList,ext){
-  let lessIDList=[];
-  let uniqMap ={};//去重
-  let lessStdMix = [];//防止组成物中改了名称等,但是通过glj_id取出来的是还没改前的原始数据
-  if(lessMix.length > 0){
-    for(let lm of lessMix){
-      let parentglj = projectGLJMap[lm.connect_key];
-      if(!parentglj) throw `含有组成物工料机${lm.connect_key},没有找到,添加定额失败`;
-      if((parentglj.from == "std" || lm.from == "std") && lm.code!="80CCS"){//车船税特殊处理
-        if(!uniqMap[lm.glj_id]){
-          lessIDList.push(lm.glj_id);
-          uniqMap[lm.glj_id] = lm;
-        }
-        lessStdMix.push(lm);
-      }else {//来自组成物的直接设置    
-        lm.from = 'cpt';
-        lm.gljType = lm.type;
-        let t_mg = getProjectGLJNewData(lm,projectID);
-        newProjectGLJList.push(t_mg);
-        projectGLJMap[getIndex(lm)] = t_mg;
-      }
-    }
-  }
-
-  if(lessIDList.length > 0){
-    let less_stds =  await std_glj_lib_gljList_model.find({'ID':{'$in':lessIDList}}).lean();
-    let less_stds_map = {};
-    for(let les of  less_stds){
-      less_stds_map[les.ID] = les;
-    }
-    for(let t_l_m of lessStdMix){
-      let t_nglj = less_stds_map[t_l_m.glj_id];
-      t_nglj.from = 'std';
-      //防止组成物中改了名称等,但是通过glj_id取出来的是还没改前的原始数据
-      t_nglj.name = t_l_m.name;
-      t_nglj.code = t_l_m.code;
-      t_nglj.gljType = t_l_m.type;
-      t_nglj.specs = t_l_m.specs;
-      t_nglj.unit = t_l_m.unit;
-      let t_np = getProjectGLJNewData(t_nglj,projectID,ext);
-      newProjectGLJList.push(t_np);
-      projectGLJMap[getIndex(t_l_m)] = t_np;
-    }
-  }
-  return newProjectGLJList;
-}
-
-
-function getProjectGLJNewData(tmp,projectId,ext){
-  let gljData = {
-      glj_id: tmp.ID,
-      repositoryId:tmp.repositoryId,
-      project_id: projectId,
-      code: tmp.code,
-      name: tmp.name,
-      specs: tmp.specs?tmp.specs:'',
-      unit: tmp.unit === undefined ? '' : tmp.unit,
-      type: tmp.gljType,
-      adjCoe:tmp.adjCoe,
-      original_code:tmp.code,
-      materialType: tmp.materialType,   //三材类别
-      materialCoe: tmp.materialCoe,
-      base_price: tmp.basePrice,
-      market_price: tmp.basePrice,
-      is_adjust_price:0,
-      is_main_material:1,
-      from:tmp.from?tmp.from:"std"
-  };
-  if(gljData.from == 'std' && ext && ext.priceField &&(tmp.priceProperty && tmp.priceProperty[ext.priceField]!= undefined && tmp.priceProperty[ext.priceField]!=null)){
-    const basePrice = scMathUtil.roundTo(tmp.priceProperty[ext.priceField],-6);
-    gljData.base_price = basePrice;
-    gljData.market_price = basePrice;
-  }
-  return gljData;
-}
-
-async function setIDfromCounter(name,list,map,keyfield){//map,keyfield
-
-  let update = {$inc: {sequence_value: list.length}};
-  let condition = {_id: name};
-  let options = {new: true};
-
-  // 先查找更新
-  let counter = await counterModel.findOneAndUpdate(condition, update, options);
-  let firstID = counter.sequence_value - (list.length - 1);
-  for(let a of list){
-      a.id = firstID;
-      firstID+=1
-      if(map && keyfield){
-        let key = a[keyfield];
-        map[key]?map[key].push(a):map[key]=[a]
-      }
-  }
-
-}
-
-
 function getStdGlj(sub,stdGLJMap,cptGLJMap,newGLJ,ext) {
     let std_glj = null;
     if(sub.type == 'complementary'){//有可能来自标准工料机库或补充工料机库
@@ -1170,7 +1073,7 @@ async function  updateRation(std,defaultLibID,rationID,billsItemID,projectID,cal
     //定额前缀 none:0, complementary:1, borrow: 2
     ration.prefix = '';
     //借用优先级比补充高
-    if(ration.from === ' std' && std.rationRepId !== parseInt(defaultLibID)){//借用
+    if(ration.from === 'std' && std.rationRepId !== parseInt(defaultLibID)){//借用
         ration.prefix = '借';
     } else if(ration.from === 'cpt') {
         ration.prefix = '补';

+ 2 - 2
modules/main/middleware/index.js

@@ -12,11 +12,11 @@ const mongoose = require("mongoose");
 const rationModel = mongoose.model("ration");
 const pmFacade = require('../../pm/facade/pm_facade');
 const online_logs = require('../../../logs/online_logs');
-import UserModel from '../../../modules/users/models/user_model';
+const UserModel = require('../../../modules/users/models/user_model');
 
 async function rationNumberChecking(req, res, next) {
     if (req.session.systemSetting) {
-        let type = req.session.compilationVersion.indexOf("免费") == -1 ? "professional" : "normal";
+        let type = req.session.compilationVersion.indexOf("学习") == -1 ? "professional" : "normal";
         let data = req.body.data;
         if (typeof data === 'object') {
             data = JSON.stringify(data);

+ 4 - 4
modules/main/models/project.js

@@ -15,13 +15,13 @@ let projSetting = require('./proj_setting_model');
 // let volumePriceData = require('../../volume_price/models/volume_price_model');
 var labour_coe_facade = require('../facade/labour_coe_facade');
 var calc_program_facade = require('../facade/calc_program_facade');
-import GLJController from "../../glj/controllers/glj_controller";
+const GLJController = require("../../glj/controllers/glj_controller");
 let installation_facade = require('../facade/installation_facade');
 let pmController = require('../../pm/controllers/pm_controller');
 let divide_facade = require('../facade/divide_facade');
 
-const ProjectModel = require('../../pm/models/project_model').project;
-import GLJListModel from "../../glj/models/glj_list_model";
+const commonFacade = require('../../main/facade/common_facade');
+const GLJListModel = require("../../glj/models/glj_list_model");
 
 var consts = require('./project_consts');
 var projectConsts = consts.projectConst;
@@ -137,7 +137,7 @@ Project.prototype.getFilterData = function (projectID, filter, callback) {
                         throw '标段id有误';
                     }
                     // 获取标段对应的单价文件id
-                    let unitPriceFileId = await ProjectModel.getUnitPriceFileId(projectID);
+                    let unitPriceFileId = await commonFacade.getUnitPriceFileId(projectID);
                     if (unitPriceFileId <= 0) {
                         throw '没有对应的单价文件';
                     }

+ 5 - 3
modules/main/routes/main_route.js

@@ -3,12 +3,12 @@
  */
 
 
-import BaseController from "../../common/base/base_controller";
+const BaseController = require("../../common/base/base_controller");
 const projectModel = require("../../pm/models/project_model");
 const pmFacade = require('../../pm/facade/pm_facade');
 const systemSettingModel = require('../../system_setting/model/index');
-import OptionsDao from '../../options/models/optionsModel';
-import optionSetting from '../../options/models/optionTypes';
+const OptionsDao = require('../../options/models/optionsModel');
+const optionSetting = require('../../options/models/optionTypes');
 let config = require("../../../config/config.js");
 module.exports =function (app) {
     const baseController = new BaseController();
@@ -43,9 +43,11 @@ module.exports =function (app) {
                         projectReadOnly: projectReadOnly,
                         projectCooperate: projectCooperate,
                         LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
+                        socketPort:config[process.env.NODE_ENV].socketPort?config[process.env.NODE_ENV].socketPort:5500,
                         options:JSON.stringify(options),
                         overWriteUrl:req.session.sessionCompilation.overWriteUrl,
                         markReadProjectIDs: JSON.stringify(markReadProjectIDs),
+                        title:config[process.env.NODE_ENV].title?config[process.env.NODE_ENV].title:"纵横公路养护云造价",
                         version
                     });
             } else {

+ 4 - 4
modules/options/controllers/optionsController.js

@@ -2,9 +2,9 @@
  * Created by Zhong on 2017/9/28.
  */
 
-import BaseController from '../../common/base/base_controller';
-import OptionsDao from '../models/optionsModel';
-import optionSetting from '../models/optionTypes';
+const BaseController = require('../../common/base/base_controller');
+const OptionsDao = require('../models/optionsModel');
+const optionSetting = require('../models/optionTypes');
 
 let optionsDao = new OptionsDao();
 class OptionController extends BaseController {
@@ -141,4 +141,4 @@ class OptionController extends BaseController {
     }
 }*/
 
-export default OptionController;
+module.exports = OptionController;

+ 1 - 1
modules/options/models/optionTypes.js

@@ -77,4 +77,4 @@ const optionSetting = {
     }
 };
 
-export default optionSetting;
+module.exports = optionSetting;

+ 1 - 1
modules/options/models/optionsModel.js

@@ -28,4 +28,4 @@ class OptionsDao {
     }
 }
 
-export default OptionsDao;
+module.exports = OptionsDao;

+ 2 - 2
modules/options/routes/routes.js

@@ -1,8 +1,8 @@
 /**
  * Created by Zhong on 2017/9/28.
  */
-import express from 'express';
-import OptionsController from '../controllers/optionsController';
+const express = require('express');
+const OptionsController = require('../controllers/optionsController');
 
 let router = express.Router();
 let optionsController = new OptionsController();

+ 2 - 2
modules/pm/controllers/new_proj_controller.js

@@ -11,8 +11,8 @@ const mongoose = require('mongoose');
 let mainColLibModel = mongoose.model('std_main_col_lib');
 const { ValuationType } = require('../../../public/common_constants');
 
-import BillsTemplateModel from "../models/templates/bills_template_model";
-import EngineeringLibModel from "../../users/models/engineering_lib_model";
+const BillsTemplateModel = require("../models/templates/bills_template_model");
+const EngineeringLibModel = require("../../users/models/engineering_lib_model");
 
 module.exports = {
     copyTemplateData: async function (property, newProjID, callback) {

+ 9 - 8
modules/pm/controllers/pm_controller.js

@@ -1,10 +1,10 @@
 /**
  * Created by Mai on 2017/1/18.
  */
-import UnitPriceFileModel from "../../glj/models/unit_price_file_model";
-import moment from 'moment';
-import CompilationModel from "../../users/models/compilation_model";
-import UserModel from "../../users/models/user_model";
+const UnitPriceFileModel = require("../../glj/models/unit_price_file_model");
+const moment = require('moment');
+const CompilationModel = require("../../users/models/compilation_model");
+const UserModel = require("../../users/models/user_model");
 const userModelObj = new UserModel();
 let mongoose = require('mongoose');
 let ProjectsData = require('../models/project_model').project;
@@ -27,11 +27,10 @@ const optionModel = mongoose.model('options');
 const stdBillsGuidanceLibModel = mongoose.model('std_billsGuidance_lib');
 const fs = require('fs');
 const _ = require('lodash');
-import SectionTreeDao from '../../complementary_ration_lib/models/sectionTreeModel';
+const SectionTreeDao = require('../../complementary_ration_lib/models/sectionTreeModel');
 const uuidV1 = require('uuid/v1');
 let sectionTreeDao = new SectionTreeDao();
 let consts = require('../../main/models/project_consts');
-import multiparty from 'multiparty';
 let rp = require('request-promise');
 const commonUtil = require('../../../public/common_util');
 //统一回调函数
@@ -322,7 +321,7 @@ module.exports = {
         let absoluteUrl = compilationData.overWriteUrl ? request.app.locals.rootDir + compilationData.overWriteUrl : request.app.locals.rootDir;
         let overWriteUrl = fs.existsSync(absoluteUrl) && fs.statSync(absoluteUrl).isFile() ? compilationData.overWriteUrl : null;
         //欢迎页显示控制
-        let [isShow,context,showTime] = await pm_facade.getWelcomeInfo(sessionCompilation._id,request.session.sessionUser,request.session.compilationVersion.includes('免费'));
+        let [isShow,context,showTime] = await pm_facade.getWelcomeInfo(sessionCompilation._id,request.session.sessionUser,request.session.compilationVersion.includes('学习'));
         const unreadShareList = await pm_facade.getUnreadShareListByCompilation(request.session.sessionUser.id, sessionCompilation._id);
         let renderData = {
             unreadShareList: JSON.stringify(unreadShareList),
@@ -339,7 +338,9 @@ module.exports = {
             engineeringList: JSON.stringify(engineering.List),
             compilationName: sessionCompilation.name,
             versionName: request.session.compilationVersion,
-            LicenseKey:config.getLicenseKey(process.env.NODE_ENV)
+            socketPort:config[process.env.NODE_ENV].socketPort?config[process.env.NODE_ENV].socketPort:5500,
+            LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
+            title:config[process.env.NODE_ENV].title?config[process.env.NODE_ENV].title:"纵横公路养护云造价"
         };
 
         response.render('building_saas/pm/html/project-management.html', renderData);

+ 33 - 24
modules/pm/facade/pm_facade.js

@@ -95,10 +95,10 @@ let divideModel = mongoose.model("divide_setting");
 let featureLibModel =  mongoose.model("std_project_feature_lib");
 let scMathUtil = require('../../../public/scMathUtil').getUtil();
 let counter = require('../../../public/counter/counter');
-import SectionTreeDao from '../../complementary_ration_lib/models/sectionTreeModel';
+const SectionTreeDao = require('../../complementary_ration_lib/models/sectionTreeModel');
 let sectionTreeDao = new SectionTreeDao();
-import CounterModel from "../../glj/models/counter_model";
-import moment from 'moment-timezone';
+const CounterModel = require("../../glj/models/counter_model");
+const moment = require('moment-timezone');
 const { fixedFlag, SharePermissionChangeType } = require('../../../public/common_constants');
 const notDeleted = [{deleteInfo: null}, {'deleteInfo.deleted': false}];
 let cipher = require('../../../public/cipher');
@@ -1645,27 +1645,36 @@ async function downLoadProjectFile(info) {
 
 async function doDownLoadAndImport(privateDownloadUrl,info) {
     let stream = fs.createWriteStream(path.join(__dirname, "../../../tmp/"+info.key));//
-    request(privateDownloadUrl).pipe(stream).on("close", async function (err) {
-        console.log("文件[" + info.key + "]下载完毕");
-        let doc = {status:"finish"};
-        try {
-            let data = fs.readFileSync(stream.path,'utf-8');
-            let result = await importProject(data,{session:info.session},info.updateData);
-            if(result.error == 1){
-                doc.errorMsg = result.msg;
+    request(privateDownloadUrl)
+        .on('error', async function (err) {
+            await importLogsModel.update({ key: info.key }, { status: 'error', errorMsg: err.toString() });
+        })
+        .pipe(stream)
+        .on("close", async function () {
+            console.log('close');
+            console.log("文件[" + info.key + "]下载完毕");
+            let doc = { status: "finish" };
+            try {
+                let data = fs.readFileSync(stream.path, 'utf-8');
+                let result = await importProject(data, { session: info.session }, info.updateData);
+                if (result.error == 1) {
+                    doc.errorMsg = result.msg;
+                    doc.status = "error";
+                } else {
+                    doc.projectID = result.constructionProjectID;
+                }
+            } catch (error) {
+                console.log(error);
+                doc.errorMsg = "导入失败,请检查文件!";
                 doc.status = "error";
-            } else {
-                doc.projectID = result.constructionProjectID;
+            } finally {
+                await importLogsModel.update({ key: info.key }, doc);
+                fs.unlinkSync(stream.path);
             }
-        }catch (error){
-            console.log(error);
-            doc.errorMsg = "导入失败,请检查文件!";
-            doc.status = "error";
-        }finally {
-            await importLogsModel.update({key:info.key},doc);
-            fs.unlinkSync(stream.path);
-        }
-    });
+        })
+        .on('error', async function () {
+            await importLogsModel.update({ key: info.key }, { status: 'error', errorMsg: `文件[${info.key}]下载失败,请稍后再试。` });
+        });
 }
 
 async function importProcessChecking(data){
@@ -2134,13 +2143,13 @@ async function getSystemSetting() {
 async function isTenderOverrun(tenderCount, session) {
     const userID = session.sessionUser.id;
     const compilation = session.sessionCompilation._id;
-    const compilationVersion = session.compilationVersion || '免费';
+    const compilationVersion = session.compilationVersion || '学习';
     let systemSetting = session.systemSetting || (session.systemSetting = await getSystemSetting());
     // 这种情况只有在刚上线此功能时会出现,不考虑时间差
     if (!systemSetting) {
         return false;
     }
-    const type = compilationVersion.includes('免费') ? 'normal' : 'professional';
+    const type = compilationVersion.includes('学习') ? 'normal' : 'professional';
     const limit = systemSetting[type].project;
     const curTenderCount = await projectModel.count({userID, compilation, projType: 'Tender', '$or':[{deleteInfo: null}, {'deleteInfo.completeDeleted': false}]});
     return tenderCount + curTenderCount > limit;

+ 8 - 29
modules/pm/models/project_model.js

@@ -17,22 +17,21 @@ module.exports ={    project: new ProjectsDAO(),
     fileType: fileType
 };
 
-import mongoose from 'mongoose';
-import async_c from 'async';
-import UnitPriceFileModel from "../../glj/models/unit_price_file_model";
+const mongoose = require('mongoose');
+const async_c = require('async');
+const UnitPriceFileModel = require("../../glj/models/unit_price_file_model");
 let UnitPriceFiles = mongoose.model('unit_price_file');
-import {
+const {
     defaultDecimal,
     billsQuantityDecimal,
     basicInformation,
-    projectFeature,
     displaySetting,
     calcOptions,
     tenderSetting,
     bookmarkSetting
-} from './project_property_template';
-import optionSetting from '../../options/models/optionTypes';
-const { fixedFlag, ValuationType } = require('../../../public/common_constants');
+} = require('./project_property_template');
+const optionSetting = require('../../options/models/optionTypes');
+const { ValuationType } = require('../../../public/common_constants');
 let FeeRateFiles = mongoose.model('fee_rate_file');
 let counter = require("../../../public/counter/counter.js");
 
@@ -147,7 +146,7 @@ ProjectsDAO.prototype.updateUserProjects = async function (userId, compilationId
                 data.updateData['fileVer'] = await index.getVersion();
                 if(data.updateData.projType === projectType.project){
                     //设置建设项目基本信息,多个单位工程共用
-                    data.updateData.property = {basicInformation: basicInformation};
+                    data.updateData.property.basicInformation = basicInformation;
                 }
                 // 如果没有选中单价文件则新增单价文件
                 if (data.updateData.projType === projectType.tender && data.updateData.property !== null &&
@@ -661,26 +660,6 @@ ProjectsDAO.prototype.getTenderByUnitPriceFileId = async function (unitPriceFile
 };
 
 /**
- * 根据项目id获取单价文件列表id
- *
- * @param {Number} projectId
- * @return {Promise}
- */
-ProjectsDAO.prototype.getUnitPriceFileId = async function (projectId) {
-    let result = 0;
-    let startTime = +new Date();
-    let projectData = await Projects.find({ID: projectId},['property.unitPriceFile']);
-    if (projectData === null) {
-        return result;
-    }
-    let endTime = +new Date();
-    console.log("取单价文件列表id时间-----"+(endTime - startTime));
-    projectData = projectData[0];
-    result = projectData.property.unitPriceFile !== undefined ? projectData.property.unitPriceFile.id : 0;
-    return result;
-};
-
-/**
  * 根据项目id获取项目property信息
  *
  * @param {Number} projectId

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

@@ -153,4 +153,4 @@ const bookmarkSetting = {
     selected:"E2F2C5"
 };
 
-export {defaultDecimal, billsQuantityDecimal, basicInformation, projectFeature,displaySetting,calcOptions,tenderSetting,bookmarkSetting};
+module.exports = {defaultDecimal, billsQuantityDecimal, basicInformation, projectFeature,displaySetting,calcOptions,tenderSetting,bookmarkSetting};

+ 2 - 2
modules/pm/models/templates/bills_template_model.js

@@ -2,7 +2,7 @@
  * Created by Mai on 2017/4/14.
  * 清单模板,新建项目使用
  */
-import BaseModel from "../../../common/base/base_model";
+const BaseModel = require("../../../common/base/base_model");
 const mongoose = require('mongoose');
 const BillsTemplateSchema = mongoose.model('std_bills_template_items');
 
@@ -74,4 +74,4 @@ class BillsTemplateModel extends BaseModel {
     }
 };
 
-export default BillsTemplateModel;
+module.exports = BillsTemplateModel;

+ 1 - 1
modules/pm/routes/pm_route.js

@@ -2,7 +2,7 @@
  * pm: project management
  * Created by Mai on 2017/3/8.
  */
-import BaseController from "../../common/base/base_controller";
+const BaseController = require("../../common/base/base_controller");
 let express = require('express');
 let pmController = require('./../controllers/pm_controller');
 const baseController = new BaseController();

+ 0 - 1
modules/ration_glj/controllers/ration_glj_controller.js

@@ -3,7 +3,6 @@
  */
 let mongoose = require("mongoose")
 let ration_glj_facade = require('../facade/ration_glj_facade')
-import EngineeringLibModel from "../../users/models/engineering_lib_model";
 let logger = require("../../../logs/log_helper").logger;
 const { COMPLEMENTARY_LIB, COMPILATION } = require ('../../../public/common_constants');
 

+ 7 - 7
modules/ration_glj/facade/glj_calculate_facade.js

@@ -2,13 +2,18 @@
  * Created by chen on 2017/7/12.
  */
 
+module.exports={
+    calculateQuantity:calculateQuantity,
+    calculateQuantityFromDivide:calculateQuantityFromDivide,
+    getGLJTypeByID:getGLJTypeByID
+}
 
 let mongoose = require('mongoose');
 let _=require("lodash");
 let ration_glj = mongoose.model('ration_glj');
 let ration = mongoose.model('ration');
 let ration_coe = mongoose.model('ration_coe');
-const ProjectModel = require('../../pm/models/project_model').project;
+const commonFacade = require('../../main/facade/common_facade');
 let mixRatioModel = mongoose.model('mix_ratio');
 let std_ration_lib_ration_items = mongoose.model('std_ration_lib_ration_items');
 let divideModel = mongoose.model("divide_setting");
@@ -19,11 +24,6 @@ let decimal_facade = require('../../main/facade/decimal_facade');
 let gljUtil = require('../../../public/gljUtil');
 const common_util = require('../../../public/common_util');
 
-module.exports={
-    calculateQuantity:calculateQuantity,
-    calculateQuantityFromDivide:calculateQuantityFromDivide,
-    getGLJTypeByID:getGLJTypeByID
-}
 //辅助定额调整、稳定土配合比、替换工料机、标准附注条件调整、添加工料机、自定义消耗量(包括删除工料机)、自定义乘系数、市场单价调整
 let stateSeq ={
     ass:1,
@@ -305,7 +305,7 @@ async function getMixRatioMap(glj,gljList,coeList,assList,mixRatioMap) {//生成
     let decimalObject = await decimal_facade.getProjectDecimal(glj.projectID);
     let decimal = (decimalObject&&decimalObject.glj&&decimalObject.glj.quantity)?decimalObject.glj.quantity:3;
     let assCoeQuantity = await calcWhenNoCustomQuantiyt(decimal,glj,gljList,coeList,assList);//计算要用父工料机经过辅助子目换算后的量
-    let unitPriceFileId = await ProjectModel.getUnitPriceFileId(glj.projectID);
+    let unitPriceFileId = await commonFacade.getUnitPriceFileId(glj.projectID);
     let connect_key = gljUtil.getIndex(glj);
     let mixList =  await mixRatioModel.find({"unit_price_file_id":unitPriceFileId,'connect_key':connect_key});
     for(let m of mixList){

+ 7 - 5
modules/ration_glj/facade/ration_glj_facade.js

@@ -39,7 +39,7 @@ let consts = require('../../main/models/project_consts')
 let commonConsts = consts.commonConst;
 let _ = require("lodash");
 let ration_glj = mongoose.model('ration_glj');
-import GLJListModel from '../../glj/models/glj_list_model';
+const GLJListModel = require('../../glj/models/glj_list_model');
 let std_glj_lib_gljList_model = mongoose.model('std_glj_lib_gljList');
 let async_n = require("async");
 let ration = mongoose.model('ration');
@@ -51,13 +51,14 @@ let glj_type_util = require('../../../public/cache/std_glj_type_util');
 let quantity_detail_facade = require('../../main/facade/quantity_detail_facade');
 let ration_installation_facade = require('../../main/facade/ration_installation_facade');
 let logger = require("../../../logs/log_helper").logger;
-import stdgljutil  from "../../../public/cache/std_glj_type_util";
-import EngineeringLibModel from "../../users/models/engineering_lib_model";
-import GljDao from "../../complementary_glj_lib/models/gljModel";
+const stdgljutil = require("../../../public/cache/std_glj_type_util");
+const EngineeringLibModel = require("../../users/models/engineering_lib_model");
+const GljDao = require("../../complementary_glj_lib/models/gljModel");
 const complementaryGljModel = mongoose.model('complementary_glj_lib');
 const stdGljModel = mongoose.model('std_glj_lib_gljList');
 const gljClassModel = mongoose.model('std_glj_lib_gljClass');
 const projectDao = require('../../pm/models/project_model').project;
+const commonFacade = require('../../main/facade/common_facade');
 const compleClassModel = mongoose.model('complementary_glj_section');
 const stdRationLibModel = mongoose.model('std_ration_lib_map');
 const compilationModel = mongoose.model('compilation');
@@ -667,6 +668,7 @@ function getGLJSearchInfo(ration_glj) {
         repositoryId: ration_glj.repositoryId,
         adjCoe: ration_glj.adjCoe,
         materialType:ration_glj.materialType,
+        is_main_material:ration_glj.is_main_material?ration_glj.is_main_material:1,
         materialCoe:ration_glj.materialCoe,
         grossWeightCoe:ration_glj.grossWeightCoe,
         purchaseStorageRate:ration_glj.purchaseStorageRate,
@@ -775,7 +777,7 @@ async function deleteRationGLJ(data){
     if(gljUtil.isConcreteType(data.type)){//如果是混凝土、砂浆、配合比,还要删除没有被引用的组成物工料机
         let projectGljModel = new GLJListModel();
         let rationGLJList = await ration_glj.find({'rationID':data.rationID});
-        let unitFileId  = await projectDao.getUnitPriceFileId(data.projectID);
+        let unitFileId  = await commonFacade.getUnitPriceFileId(data.projectID);
         let projectGLJMap = {},referenceMap={};
         let deleteMix = [];
         for(let r of rationGLJList){

+ 2 - 2
modules/reports/controllers/rpt_cfg_controller.js

@@ -2,8 +2,8 @@
  * Created by Tony on 2017/7/5.
  */
 
-import mongoose from "mongoose";
-import rpt_util from "../util/rpt_util";
+const mongoose = require("mongoose");
+const rpt_util = require("../util/rpt_util");
 let Rpt_Map_Fld_Mdl = mongoose.model('rpt_mapping_field');
 
 

+ 13 - 14
modules/reports/controllers/rpt_controller.js

@@ -2,27 +2,26 @@
  * Created by Tony on 2017/3/13.
  */
 
-import mongoose from "mongoose";
-import async from "async";
+const mongoose = require("mongoose");
+const async = require("async");
 
-import JV from "../rpt_component/jpc_value_define";
+const JV = require("../rpt_component/jpc_value_define");
 
 let Template = mongoose.model('rpt_templates');
 let rptTplDataFacade = require("../facade/rpt_tpl_data_facade");
 let fsUtil = require("../../../public/fsUtil");
 let pm_facade = require('../../../modules/pm/facade/pm_facade');
 
-import rptTplFacade from "../facade/rpt_template_facade";
-import demoTemplateFacade from "../facade/rpt_tpl_data_demo_facade";
-
-import JpcEx from "../rpt_component/jpc_ex";
-import rptUtil from "../util/rpt_util";
-import rpt_xl_util from "../util/rpt_excel_util";
-import rpt_pdf_util from "../util/rpt_pdf_util";
-import rpt_svg_util from "../util/rpt_svg_util";
-import fs from "fs";
-import strUtil from "../../../public/stringUtil";
-import rptDataExtractor from "../util/rpt_yanghu_data_util";
+const rptTplFacade = require("../facade/rpt_template_facade");
+const demoTemplateFacade = require("../facade/rpt_tpl_data_demo_facade");
+const JpcEx = require("../rpt_component/jpc_ex");
+const rptUtil = require("../util/rpt_util");
+const rpt_xl_util = require("../util/rpt_excel_util");
+const rpt_pdf_util = require("../util/rpt_pdf_util");
+const rpt_svg_util = require("../util/rpt_svg_util");
+const fs = require("fs");
+const strUtil = require("../../../public/stringUtil");
+const rptDataExtractor = require("../util/rpt_yanghu_data_util");
 
 //统一回调函数
 let callback = function(req, res, err, data){

+ 13 - 12
modules/reports/controllers/rpt_tpl_controller.js

@@ -2,10 +2,9 @@
  * Created by Tony on 2017/6/1.
  */
 
-import mongoose from "mongoose";
-
-import async from "async";
-import counter from "../../../public/counter/counter";
+const mongoose = require("mongoose");
+const async = require("async");
+const counter = require("../../../public/counter/counter");
 
 let RptTplModel = mongoose.model('rpt_templates');
 let TreeNodeModel = mongoose.model('rpt_tpl_tree');
@@ -13,9 +12,11 @@ let UserModel = mongoose.model("user");
 
 let rptCustCfgFacade = require("../facade/rpt_cust_cfg_facade");
 
-import JV from "../rpt_component/jpc_value_define";
-import rttFacade from "../facade/rpt_tpl_tree_node_facade";
-import CompilationModel from "../../users/models/compilation_model";
+const JV = require("../rpt_component/jpc_value_define");
+const rttFacade = require("../facade/rpt_tpl_tree_node_facade");
+const CompilationModel = require("../../users/models/compilation_model");
+const config = require("../../../config/config.js");
+const title = config[process.env.NODE_ENV].title?config[process.env.NODE_ENV].title:"纵横公路养护云造价";
 
 //统一回调函数
 let callback = function(req, res, err, message, data){
@@ -144,10 +145,10 @@ let mExport = {
                     let rstData = {isFreeUser: isFreeUser, data: tplTreeRst};
                     if (isFreeUser) {
                         let waterMarks = [];
-                        waterMarks.push({label:"纵横公路养护云造价", font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[10, 100]});
-                        waterMarks.push({label:"纵横公路养护云造价", font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[100, 300]});
-                        waterMarks.push({label:"纵横公路养护云造价", font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[200, 500]});
-                        waterMarks.push({label:"纵横公路养护云造价", font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[600, 700]});
+                        waterMarks.push({label:title, font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[10, 100]});
+                        waterMarks.push({label:title, font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[100, 300]});
+                        waterMarks.push({label:title, font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[200, 500]});
+                        waterMarks.push({label:title, font:{name:'楷体', height: 32, color:'GREEN', angle:45}, left_top:[600, 700]});
                         rstData.waterMarks = waterMarks;
                     } else {
                         rstData.waterMarks = [];
@@ -424,4 +425,4 @@ function copyRptCfg(src, dest) {
     }
 }
 
-export default mExport;
+module.exports = mExport;

+ 1 - 1
modules/reports/facade/rpt_cust_cfg_facade.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2018/4/18.
  */
 
-import mongoose from "mongoose";
+const mongoose = require("mongoose");
 let rpt_customize_cfg_mdl = mongoose.model("rpt_customize_cfg");
 
 module.exports = {

+ 1 - 1
modules/reports/facade/rpt_template_facade.js

@@ -1,7 +1,7 @@
 /**
  * Created by Tony on 2017/8/9.
  */
-import mongoose from "mongoose";
+const mongoose = require("mongoose");
 let rpt_tpl_mdl = mongoose.model("rpt_templates");
 
 module.exports = {

+ 1 - 1
modules/reports/facade/rpt_tpl_data_demo_facade.js

@@ -1,7 +1,7 @@
 /**
  * Created by Tony on 2017/8/9.
  */
-import mongoose from "mongoose";
+const mongoose = require("mongoose");
 let rpt_tpl_data_demo_mdl = mongoose.model("rpt_temp_tpl_data");
 
 module.exports = {

+ 0 - 1
modules/reports/facade/rpt_tpl_data_facade.js

@@ -2,7 +2,6 @@
  * Created by Tony on 2017/8/9.
  */
 
-// import mongoose from "mongoose";
 // let consts = require('../../../modules/main/models/project_consts');
 // let projectConst = consts.projectConst;
 let prjMdl = require('../../../modules/pm/models/project_model');

+ 2 - 2
modules/reports/facade/rpt_tpl_tree_node_facade.js

@@ -2,7 +2,7 @@
  * Created by Tony on 2017/9/14.
  */
 
-import mongoose from "mongoose";
+const mongoose = require("mongoose");
 
 let rpt_tpl_tree_mdl = mongoose.model("rpt_tpl_tree");
 
@@ -82,4 +82,4 @@ let expObj = {
     findTplTreeByCompilation:   findTplTreeByCompilation
 };
 
-export {expObj as default};
+module.exports = expObj;

+ 2 - 2
modules/reports/routes/report_router.js

@@ -2,9 +2,9 @@
  * Created by Tony on 2017/3/13.
  */
 
-import express from "express";
+const express = require("express");
 let rptRouter = express.Router();
-import reportController from "./../controllers/rpt_controller";
+const reportController = require("./../controllers/rpt_controller");
 
 module.exports =function (app) {
     app.get('/report',  function(req, res) {

+ 3 - 3
modules/reports/routes/rpt_tpl_router.js

@@ -1,7 +1,7 @@
-import express from "express";
+const express = require("express");
 let rptTplRouter = express.Router();
-import reportTplController from "./../controllers/rpt_tpl_controller";
-import reportCfgController from "./../controllers/rpt_cfg_controller";
+const reportTplController = require("./../controllers/rpt_tpl_controller");
+const reportCfgController = require("./../controllers/rpt_cfg_controller");
 
 module.exports = function (app) {
     app.get('/rpt_tpl',  function(req, res) {

+ 0 - 0
modules/reports/routes/rpt_tpl_router_fe.js


برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است