Преглед изворни кода

fix: 编办ID被覆盖问题

zhangweicheng пре 2 недеља
родитељ
комит
50d21bde87
1 измењених фајлова са 128 додато и 109 уклоњено
  1. 128 109
      modules/project_feature_lib/controllers/project_feature_controller.js

+ 128 - 109
modules/project_feature_lib/controllers/project_feature_controller.js

@@ -3,17 +3,17 @@
  */
 import BaseController from "../../common/base/base_controller";
 import featureFacade from "../facade/project_feature_facade";
-import { checkCompilationPermission } from '../../common/base/base_util';
+import { checkCompilationPermission } from "../../common/base/base_util";
 let config = require("../../../config/config.js");
-let logger = require('../../../logs/log_helper').logger;
-import CompilationModel from '../../users/models/compilation_model';
-let mongoose = require('mongoose');
-let featureLibModel = mongoose.model('std_project_feature_lib');
+let logger = require("../../../logs/log_helper").logger;
+import CompilationModel from "../../users/models/compilation_model";
+let mongoose = require("mongoose");
+let featureLibModel = mongoose.model("std_project_feature_lib");
 
-class FeatureController extends BaseController{
-    async main(request, response) {
-        //
-        let allLibs = await featureLibModel.find({});
+class FeatureController extends BaseController {
+  async main(request, response) {
+    //
+    /*         let allLibs = await featureLibModel.find({});
         for (let lib of allLibs) {
             if (lib.name.indexOf('重庆2018') !== -1) {
                 await featureLibModel.update({ID: lib.ID},
@@ -37,110 +37,129 @@ class FeatureController extends BaseController{
                 await featureLibModel.update({ID: lib.ID},
                     {$set: {compilationId: '5c66649650da2d000d8d37ba', compilationName: '广东定额(2018)'}}, {multi: true});
             }
-        }
-        //
-        let compilationModel = new CompilationModel();
-        let compilationList = await compilationModel.getPermissionCompilationList(request, {_id: 1, name: 1});
-        compilationList.unshift({_id: 'all', name: '所有'});
-        let activeCompilation = compilationList.find(compilation => compilation._id.toString() === request.query.filter);
-        if (activeCompilation) {
-            activeCompilation.active = 'active';
-        } else {
-            compilationList[0].active = 'active'
-        }
-        let filter = request.query.filter ? {compilationId: request.query.filter} : {};
-        let featureLibs = await featureFacade.findByCondition(filter,{feature:0},false);
-        const compilationPermission = request.session.managerData.compilationPermission || [];
-        featureLibs = featureLibs.filter(lib => compilationPermission.includes(lib.compilationId));
-        let randerData = {
-            title:'工程特征库',
-            userAccount: request.session.managerData.username,
-            userID: request.session.managerData.userID,
-            featureLibs:featureLibs,
-            compilationList: compilationList,
-            layout: 'maintain/common/html/layout'
-        };
-        response.render("maintain/project_feature_lib/html/main", randerData);
+        } */
+    //
+    let compilationModel = new CompilationModel();
+    let compilationList = await compilationModel.getPermissionCompilationList(
+      request,
+      { _id: 1, name: 1 }
+    );
+    compilationList.unshift({ _id: "all", name: "所有" });
+    let activeCompilation = compilationList.find(
+      (compilation) => compilation._id.toString() === request.query.filter
+    );
+    if (activeCompilation) {
+      activeCompilation.active = "active";
+    } else {
+      compilationList[0].active = "active";
     }
-    async addLib(request, response){
-        try {
-            await featureFacade.addLib(request.body);
-        }catch (error) {
-            console.log(error);
-        }
-        response.redirect(request.headers.referer);
+    let filter = request.query.filter
+      ? { compilationId: request.query.filter }
+      : {};
+    let featureLibs = await featureFacade.findByCondition(
+      filter,
+      { feature: 0 },
+      false
+    );
+    const compilationPermission =
+      request.session.managerData.compilationPermission || [];
+    featureLibs = featureLibs.filter((lib) =>
+      compilationPermission.includes(lib.compilationId)
+    );
+    let randerData = {
+      title: "工程特征库",
+      userAccount: request.session.managerData.username,
+      userID: request.session.managerData.userID,
+      featureLibs: featureLibs,
+      compilationList: compilationList,
+      layout: "maintain/common/html/layout",
+    };
+    response.render("maintain/project_feature_lib/html/main", randerData);
+  }
+  async addLib(request, response) {
+    try {
+      await featureFacade.addLib(request.body);
+    } catch (error) {
+      console.log(error);
     }
-    async findLib(request, response){
-        let result={
-            error:0
-        };
-        try {
-            let data = request.body.data;
-            data = JSON.parse(data);
-            let conditions={'ID' : data.ID};
-            let resultData = await featureFacade.findByCondition(conditions);
-            result.data=resultData;
-        }catch (err){
-            console.log(err);
-            result.error=1;
-            result.message = err.message;
-        }
-        response.json(result);
+    response.redirect(request.headers.referer);
+  }
+  async findLib(request, response) {
+    let result = {
+      error: 0,
+    };
+    try {
+      let data = request.body.data;
+      data = JSON.parse(data);
+      let conditions = { ID: data.ID };
+      let resultData = await featureFacade.findByCondition(conditions);
+      result.data = resultData;
+    } catch (err) {
+      console.log(err);
+      result.error = 1;
+      result.message = err.message;
     }
-    async saveLib(request, response){
-        let result={
-            error:0
-        };
-        try {
-            let data = request.body.data;
-            data = JSON.parse(data);
-            let resultData= await featureFacade.saveLib(data);
-            result.data=resultData;
-        }catch (err){
-            console.log(err);
-            result.error=1;
-            result.message = err.message;
-        }
-        response.json(result);
+    response.json(result);
+  }
+  async saveLib(request, response) {
+    let result = {
+      error: 0,
+    };
+    try {
+      let data = request.body.data;
+      data = JSON.parse(data);
+      let resultData = await featureFacade.saveLib(data);
+      result.data = resultData;
+    } catch (err) {
+      console.log(err);
+      result.error = 1;
+      result.message = err.message;
     }
-    async deleteLibByID(request,response){
-        logger.info(`delete projectFeatureLib ${request.ip}`);
-        let result={
-            error:0
-        };
-        try {
-            let data = request.body.data;
-            data = JSON.parse(data);
-            let resultData= await featureFacade.deleteLibByID(data.ID);
-            result.data=resultData;
-        }catch (err){
-            console.log(err);
-            result.error=1;
-            result.message = err.message;
-        }
-        response.json(result);
+    response.json(result);
+  }
+  async deleteLibByID(request, response) {
+    logger.info(`delete projectFeatureLib ${request.ip}`);
+    let result = {
+      error: 0,
+    };
+    try {
+      let data = request.body.data;
+      data = JSON.parse(data);
+      let resultData = await featureFacade.deleteLibByID(data.ID);
+      result.data = resultData;
+    } catch (err) {
+      console.log(err);
+      result.error = 1;
+      result.message = err.message;
     }
-    async edit(request,response){
-        //先取出替换库信息:
-        let libID = request.params.libID;
-        let featureLib = await featureFacade.findByCondition({'ID':libID});
-        if(featureLib){
-            checkCompilationPermission(request, response, featureLib.compilationId, '/projectFeature/main');
-            let randerData = {
-                title:'工程特征库',
-                mainURL:'/projectFeature/main',
-                libName:featureLib.name,
-                userAccount: request.session.managerData.username,
-                userID: request.session.managerData.userID,
-                featureList:JSON.stringify(featureLib.feature),
-                libID:libID,
-                LicenseKey:config.getLicenseKey(process.env.NODE_ENV),
-                layout: 'maintain/common/html/edit_layout'
-            };
-            response.render("maintain/project_feature_lib/html/edit", randerData);
-        }else {
-            response.redirect(request.headers.referer);
-        }
+    response.json(result);
+  }
+  async edit(request, response) {
+    //先取出替换库信息:
+    let libID = request.params.libID;
+    let featureLib = await featureFacade.findByCondition({ ID: libID });
+    if (featureLib) {
+      checkCompilationPermission(
+        request,
+        response,
+        featureLib.compilationId,
+        "/projectFeature/main"
+      );
+      let randerData = {
+        title: "工程特征库",
+        mainURL: "/projectFeature/main",
+        libName: featureLib.name,
+        userAccount: request.session.managerData.username,
+        userID: request.session.managerData.userID,
+        featureList: JSON.stringify(featureLib.feature),
+        libID: libID,
+        LicenseKey: config.getLicenseKey(process.env.NODE_ENV),
+        layout: "maintain/common/html/edit_layout",
+      };
+      response.render("maintain/project_feature_lib/html/edit", randerData);
+    } else {
+      response.redirect(request.headers.referer);
     }
+  }
 }
-export default FeatureController;
+export default FeatureController;