Browse Source

Merge branch 'master' into olym

olym 7 years atrás
parent
commit
c6071ef599

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

@@ -3,14 +3,15 @@
  */
 import UnitPriceFileModel from "../../glj/models/unit_price_file_model";
 let ProjectsData = require('../models/project_model').project;
-let projectM = require('../../main/models/project');
-let projectSchema = require("../models/project_schema");
 let labourCoe = require('../../main/facade/labour_coe_facade');
 let projType = require('../models/project_model').projType;
 let fileType = require('../models/project_model').fileType;
 const engineering = require("../../common/const/engineering");
 let EngineeringLibModel = require("../../users/models/engineering_lib_model");
 let fee_rate_facade = require("../../fee_rates/facade/fee_rates_facade");
+let billsModel = require('../../main/models/bills').model;
+let rationsModel = require('../../main/models/ration').model;
+let projectModel = require("../models/project_schema");
 
 //统一回调函数
 let callback = function(req, res, err, message, data){
@@ -61,7 +62,7 @@ module.exports = {
             }
         });
     },
-    // 该方法主要用于项目属性位置提交保存混合型数据,这些数据来自不同的表,包括projects.property、ration、bills、labour_coes.
+    // CSL, 2017-12-14 该方法用于项目属性:提交保存混合型数据,这些数据来自不同的表,包括projects.property、ration、bills、labour_coes.
     updateMixDatas: function(req, res){
         let callBackInner = function (err, message, data) {
             if (err === 0) {
@@ -78,16 +79,22 @@ module.exports = {
             labourCoe.save(datas.labourCoes.updateData, callBackInner);
         };
 
-        if (datas.rations.length > 0){
-            // projectM.save(data, callBackInner);
-        };
-
+        // 清单:每文档doc只存储一条清单,每条清单都必须定位一次文档,无法合并处理
         if (datas.bills.length > 0){
+            for (let bill of datas.bills){
+                billsModel.update({projectID: datas.projectID, ID: bill.ID, deleteInfo: null}, bill, callBackInner);
+            };
+        };
 
+        // 定额:每文档doc只存储一条定额,每条定额都必须定位一次文档,无法合并处理
+        if (datas.rations.length > 0){
+            for (let ration of datas.rations){
+                rationsModel.update({projectID: datas.projectID, ID: ration.ID, deleteInfo: null}, ration, callBackInner);
+            };
         };
 
         if (Object.keys(datas.properties).length > 0){
-            projectSchema.update({ID: datas.projectID}, datas.properties, callBackInner);
+            projectModel.update({ID: datas.projectID}, datas.properties, callBackInner);
         };
     },
     updateFiles: async function(req, res){

+ 0 - 1
public/web/tree_sheet/tree_sheet_helper.js

@@ -223,7 +223,6 @@ var TREE_SHEET_HELPER = {
             }
             let node = tree.items[options.row];
             let showTreeLine = true;
-
             if (!node) { return; }
 
             let centerX = Math.floor(x) + node.depth() * indent + indent / 2;

+ 1 - 1
web/building_saas/complementary_glj_lib/js/glj.js

@@ -45,7 +45,7 @@ let repositoryGljObj = {
             {headerName:"名称",headerWidth:280,dataCode:"name", dataType: "String", hAlign: "left", vAlign: "center"},
             {headerName:"规格型号",headerWidth:180,dataCode:"specs", dataType: "String", hAlign: "left", vAlign: "center"},
             {headerName:"单位",headerWidth:120,dataCode:"unit", dataType: "String", hAlign: "center", vAlign: "center"},
-            {headerName:"基价单价",headerWidth:120,dataCode:"basePrice", dataType: "Number", formatter: "0.00", hAlign: "right", vAlign: "center"},
+            {headerName:"定额价",headerWidth:120,dataCode:"basePrice", dataType: "Number", formatter: "0.00", hAlign: "right", vAlign: "center"},
             {headerName:"类型",headerWidth:120,dataCode:"gljType", dataType: "String", hAlign: "center", vAlign: "center"},
             {headerName:"是否新增",headerWidth:80,dataCode:"isComplementary", hAlign: "center", vAlign: "center"}
         ],

+ 1 - 1
web/building_saas/main/js/models/calc_base.js

@@ -605,7 +605,7 @@ let calcBase = {
             me.project.calcProgram.saveNode(node);
         }
         catch (err){
-            alert(err);
+            alert('表达式不正确');
         }
     }
 };

+ 5 - 4
web/building_saas/main/js/views/calc_base_view.js

@@ -14,7 +14,7 @@ let calcBaseView = {
     setting:{
         header: [
             {name: '计算基础名称', dataCode: 'base', width: 280, vAlign: 'center', hAlign: 'left'},
-            {name: '金额', dataCode: 'price', width: 120, vAlign: 'center', hAlign: 'left'}
+            {name: '金额', dataCode: 'price', width: 120, vAlign: 'center', hAlign: 'right'}
         ],
         options: {
             tabStripVisible:  false,
@@ -84,7 +84,7 @@ let calcBaseView = {
             sheet.setFormatter(-1, 1, '@');
             for(let col = 0, cLen = cols.length; col < cLen; col++){
                 sheet.getRange(-1, col, -1, 1).hAlign(GC.Spread.Sheets.HorizontalAlign[cols[col]['hAlign']]);
-                sheet.getRange(-1, col, -1, 1).hAlign(GC.Spread.Sheets.VerticalAlign[cols[col]['vAlign']]);
+                sheet.getRange(-1, col, -1, 1).vAlign(GC.Spread.Sheets.VerticalAlign[cols[col]['vAlign']]);
                 for(let row = 0, rLen = datas.length; row < rLen; row++){
                     sheet.setValue(row, col, datas[row][cols[col]['dataCode']]);
                 }
@@ -210,8 +210,9 @@ let calcBaseView = {
         CalcBaseCellType.prototype = new ns.CellTypes.Text();
         CalcBaseCellType.prototype.paint = function (ctx, value, x, y, w, h, style, options) {
             if(value!=null){
-                // ctx.fillText(value,x+3+ctx.measureText(value).width,y+h-3);
-                ctx.fillText(value,x+w,y+h-3);
+               // ctx.fillText(value,x+3+ctx.measureText(value).width,y+h-3);
+               // ctx.fillText(value,x+w-3,y+h-3);
+                GC.Spread.Sheets.CellTypes.Text.prototype.paint.apply(this, arguments);
             }
             if(calcBaseView.editingCell){
                 if(calcBaseView.editingCell.row==options.row&&calcBaseView.editingCell.col==options.col){

+ 0 - 1
web/building_saas/main/js/views/project_property_display_view.js

@@ -29,7 +29,6 @@ let projDisplayView = {
             this.datas.disPlayMainMaterial=disPlayMainMaterial;
             // let updateData = {sourceType: 'properties', updateType: 'update', updateData: {ID: projectID, 'property.displaySetting':this.datas}};
             properties['property.displaySetting'] = this.datas;
-            // mixDatas.properties = properties;
         }
     }
 };

+ 4 - 4
web/building_saas/main/js/views/project_view.js

@@ -784,7 +784,7 @@ $('#property_ok').click(function () {
     if (changedNodes.length > 0) {
         for (let node of changedNodes){
             let data = {
-                projectID: projectID,
+                // projectID: projectID,
                 ID: node.data.ID,
                 quantity: node.data.quantity,
                 calcBase: node.data.calcBase,
@@ -812,11 +812,11 @@ $('#property_ok').click(function () {
 
     if(hasMixData){
         CommonAjax.post('/pm/api/updateMixDatas', {user_id: userID, mixDataArr: mixDatas}, function (rstData) {
-            if (changedNodes.length > 0) {
+/*            if (changedNodes.length > 0) {
                 for (let node of changedNodes){delete node.changed};
             };
-            if (mixDatas.labourCoes.updateData) labourCoeView.refresh(mixDatas.labourCoes.updateData);
-            window.location.href = '/main?project=' + projectID;
+            if (mixDatas.labourCoes.updateData) labourCoeView.refresh(mixDatas.labourCoes.updateData);*/
+            // window.location.href = '/main?project=' + projectID;
         });
     }
 });

+ 2 - 2
web/building_saas/pm/html/project-management.html

@@ -80,7 +80,7 @@
                                     <div class="dropdown-menu" aria-labelledby="btnGroupDrop1">
                                         <a href="javascript:void(0);"  id="add-project-btn" class="dropdown-item"><i class="fa fa-cubes"></i>新建建设项目</a>
                                         <a href="javascript:void(0);"  id="add-engineering-btn" class="dropdown-item disabled"><i class="fa fa-cube"></i> 新建单项工程</a>
-                                        <a href="javascript:void(0);"  id="add-folder-btn" class="dropdown-item"><i class="fa fa-folder-o"></i>新建文件夹</a>
+                                        <a href="javascript:void(0);"  id="add-folder-btn" class="dropdown-item"><i class="fa fa-folder-o"></i> 新建文件夹</a>
                                     </div>
                                 </div>
                                 <a href="javascript:void(0);" class="btn btn-sm" id="rename-btn">重命名</a>
@@ -366,7 +366,7 @@
     <div class="modal-dialog" role="document">
         <div class="modal-content">
             <div class="modal-header">
-                <h5 class="modal-title">新建文件夹</h5>
+                <h5 class="modal-title"><i class="fa fa-folder-o"></i>新建文件夹</h5>
                 <button type="button" class="close" data-dismiss="modal" aria-label="Close">
                     <span aria-hidden="true">&times;</span>
                 </button>