Parcourir la source

fix: 新建项目时后台管理扩展的内容不显示问题。

chenshilong il y a 3 ans
Parent
commit
be1272ae28

+ 31 - 30
modules/all_models/bills_template_items.js

@@ -1,42 +1,43 @@
 /**
  * Created by zhang on 2018/7/13.
  */
-const mongoose = require('mongoose');
+const mongoose = require("mongoose");
 let Schema = mongoose.Schema;
 
-let collectionName = 'std_bills_template_items';
+let collectionName = "std_bills_template_items";
 
 // 标记字段
 let flagsSchema = new Schema({
-    fieldName: String,
-    flag: Number
+  fieldName: String,
+  flag: Number,
 });
 let BillsTemplateSchema = {
-    // 树结构所需ID
-    ID: Number,
-    ParentID: Number,
-    NextSiblingID: Number,
-    // 编号
-    code: String,
-    // 名称
-    name: String,
-    // 单位
-    unit: String,
-    // 类别
-    type: Number,
-    // 标记
-    flags:{
-        type: [flagsSchema],
-        default: []
-    },
-    // 所属模板库ID
-    libID: {type:String,index:true},
-    //计算基数
-    calcBase: String,
-    //费率ID
-    feeRateID:Number,
-    quantity: String,
+  // 树结构所需ID
+  ID: Number,
+  ParentID: Number,
+  NextSiblingID: Number,
+  // 编号
+  code: String,
+  // 名称
+  name: String,
+  // 单位
+  unit: String,
+  // 类别
+  type: Number,
+  // 标记
+  flags: {
+    type: [flagsSchema],
+    default: [],
+  },
+  itemCharacterText: String,
+  jobContentText: String,
+  // 所属模板库ID
+  libID: { type: String, index: true },
+  //计算基数
+  calcBase: String,
+  //费率ID
+  feeRateID: Number,
+  quantity: String,
 };
 
-mongoose.model(collectionName, new Schema(BillsTemplateSchema, {versionKey: false, collection: collectionName}));
-
+mongoose.model(collectionName, new Schema(BillsTemplateSchema, { versionKey: false, collection: collectionName }));

+ 77 - 61
modules/pm/models/templates/bills_template_model.js

@@ -3,75 +3,91 @@
  * 清单模板,新建项目使用
  */
 const BaseModel = require("../../../common/base/base_model");
-const mongoose = require('mongoose');
-const BillsTemplateSchema = mongoose.model('std_bills_template_items');
+const mongoose = require("mongoose");
+const BillsTemplateSchema = mongoose.model("std_bills_template_items");
 
 class BillsTemplateModel extends BaseModel {
-    /**
-     * 构造函数
-     *
-     * @return {void}
-     */
-    constructor() {
-        let parent = super();
-        parent.model = BillsTemplateSchema;
-        parent.init();
-    }
+  /**
+   * 构造函数
+   *
+   * @return {void}
+   */
+  constructor() {
+    let parent = super();
+    parent.model = BillsTemplateSchema;
+    parent.init();
+  }
 
-    /**
-     * 获取模板库对应的清单模板
-     * @param libID
-     * @returns {*}
-     */
-    async getTemplateData (libID) {
-        // 筛选字段
-        let field = {_id: 1, valuationId: 1, ID: 1, ParentID: 1, NextSiblingID: 1, code: 1, name: 1, unit: 1, flags: 1, calcBase: 1};
-        let data = await this.findDataByCondition({valuationId: valuationId, engineering: engineering}, field, false);
+  /**
+   * 获取模板库对应的清单模板
+   * @param libID
+   * @returns {*}
+   */
+  async getTemplateData(libID) {
+    // 筛选字段
+    let field = { _id: 1, valuationId: 1, ID: 1, ParentID: 1, NextSiblingID: 1, code: 1, name: 1, unit: 1, flags: 1, calcBase: 1 };
+    let data = await this.findDataByCondition({ valuationId: valuationId, engineering: engineering }, field, false);
 
-        return data === null ? [] : data;
-    }
+    return data === null ? [] : data;
+  }
 
-    /**
-     * 新建项目时,获取模板库对应的清单模板
-     * @param valuationId
-     * @param engineering
-     * @returns {*}
-     */
-    async getTemplateDataForNewProj (libID) {
-        // 筛选字段
-        let field = {_id: 0, ID: 1, ParentID: 1, NextSiblingID: 1, code: 1, name: 1, unit: 1, flags: 1,type:1, calcBase: 1,feeRateID:1,quantity:1};
-        let data = await this.findDataByCondition({libID: libID}, field, false);
+  /**
+   * 新建项目时,获取模板库对应的清单模板
+   * @param valuationId
+   * @param engineering
+   * @returns {*}
+   */
+  async getTemplateDataForNewProj(libID) {
+    // 筛选字段
+    let field = {
+      _id: 0,
+      ID: 1,
+      ParentID: 1,
+      NextSiblingID: 1,
+      code: 1,
+      name: 1,
+      unit: 1,
+      flags: 1,
+      type: 1,
+      calcBase: 1,
+      feeRateID: 1,
+      quantity: 1,
+      itemCharacterText: 1,
+      jobContentText: 1,
+    };
+    let data = await this.findDataByCondition({ libID: libID }, field, false);
 
-        return data === null ? [] : data;
-    }
+    return data === null ? [] : data;
+  }
 
-    async updateTemplate (valuationId, datas) {
-        try {
-            for (let data of datas) {
-                data.data.valuationId = valuationId;
-                let condition = {valuationId: valuationId, ID: data.data.ID}, result;
-                if (data.type === 'update') {
-                    result = await this.db.update(condition, data.data);
-                    if (result === undefined || result.ok ===undefined || !result.ok) {
-                        throw '更新数据错误';
-                    }
-                } else if (data.type === 'new') {
-                    result = await this.db.create(data.data);
-                    if (!result) {
-                        throw '新增数据错误';
-                    }
-                } else if (data.type === 'delete') {
-                    result = await this.db.delete(condition);
-                    if (result === undefined || result.ok ===undefined || !result.ok) {
-                        throw '删除数据错误';
-                    }
-                }
-            }
-            return true;
-        } catch (error) {
-            console.log(error);
+  async updateTemplate(valuationId, datas) {
+    try {
+      for (let data of datas) {
+        data.data.valuationId = valuationId;
+        let condition = { valuationId: valuationId, ID: data.data.ID },
+          result;
+        if (data.type === "update") {
+          result = await this.db.update(condition, data.data);
+          if (result === undefined || result.ok === undefined || !result.ok) {
+            throw "更新数据错误";
+          }
+        } else if (data.type === "new") {
+          result = await this.db.create(data.data);
+          if (!result) {
+            throw "新增数据错误";
+          }
+        } else if (data.type === "delete") {
+          result = await this.db.delete(condition);
+          if (result === undefined || result.ok === undefined || !result.ok) {
+            throw "删除数据错误";
+          }
         }
+      }
+      return true;
+    } catch (error) {
+      console.log(error);
     }
-};
+  }
+}
 
 module.exports = BillsTemplateModel;