Просмотр исходного кода

Merge branch 'master' of http://smartcost.f3322.net:3000/SmartCost/ConstructionOperation

TonyKang 7 лет назад
Родитель
Сommit
32641210a9

+ 2 - 1
modules/users/models/bills_template_model.js

@@ -50,7 +50,7 @@ class BillsTemplateModel extends BaseModel {
             for (let data of datas) {
                 data.data.valuationId = valuationId;
                 data.data.engineering = engineering;
-                let condition = {valuationId: valuationId, ID: data.data.ID}, result;
+                let condition = {valuationId: valuationId, engineering: engineering, 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) {
@@ -63,6 +63,7 @@ class BillsTemplateModel extends BaseModel {
                     }
                 } else if (data.type === 'delete') {
                     result = await this.db.delete(condition);
+                    result = result.result;
                     if (result === undefined || result.ok ===undefined || !result.ok) {
                         throw '删除数据错误';
                     }

+ 17 - 7
web/maintain/ration_repository/js/installation.js

@@ -44,7 +44,7 @@ let feeItemObj = {
         options: {
             tabStripVisible:  false,
             allowCopyPasteExcelStyle : false,
-            allowExtendPasteRange: false,
+            allowExtendPasteRange: true,
             allowUserDragDrop : false,
             allowUserDragFill: false,
             scrollbarMaxAlign : true
@@ -108,6 +108,7 @@ let feeItemObj = {
         sheet.bind(Events.EnterCell, me.onEnterCell);
         sheet.bind(Events.EditStarting, me.onEditStarting);
         sheet.bind(Events.EditEnded, me.onEditEnded);
+        sheet.bind(Events.ClipboardPasting, me.onClipboardPasting);
         sheet.bind(Events.ClipboardPasted, me.onClipboardPasted);
         me.feeItemDelOpr();
     },
@@ -191,6 +192,12 @@ let feeItemObj = {
         //ajax
         me.updateFeeItem([updateObj]);
     },
+    onClipboardPasting: function (sender, info) {
+        let me = this;
+        if(info.cellRange.col + info.cellRange.colCount > me.setting.header.length){
+            info.cancel = true;
+        }
+    },
     onClipboardPasted: function (sender, info) {
         let me = feeItemObj, se = sectionObj;
         let postData = [];
@@ -255,7 +262,7 @@ let feeItemObj = {
             }
             //update currentFeeItem
             me.currentFeeItem = me.getCurrentData(me.sheet, me.cache);
-            se.cache = me.currentFeeItem.section;
+            se.cache = me.isDef(me.currentFeeItem) ? me.currentFeeItem.section : [];
             if(fiPostData.length > 0){
                 me.updateFeeItem(fiPostData, function () {
                     me.sheet.setRowCount(me.cache.length + 10);
@@ -325,7 +332,7 @@ let sectionObj = {
         options: {
             tabStripVisible:  false,
             allowCopyPasteExcelStyle : false,
-            allowExtendPasteRange: false,
+            allowExtendPasteRange: true,
             allowUserDragDrop : false,
             allowUserDragFill: false,
             scrollbarMaxAlign : true
@@ -475,7 +482,7 @@ let sectionObj = {
     },
     onClipboardPasting: function (sender, info) {
         let me = sectionObj, fi = feeItemObj;
-        if(!me.isDef(fi.currentFeeItem)){
+        if(info.cellRange.col + info.cellRange.colCount > me.setting.header.length || !me.isDef(fi.currentFeeItem)){
             info.cancel = true;
         }
     },
@@ -537,7 +544,7 @@ let sectionObj = {
             }
             //update currentSection
             me.currentSection = fi.getCurrentData(me.sheet, me.cache);
-            fr.cache = me.currentSection.feeRule;
+            fr.cache = me.isDef(me.currentSection) ? me.currentSection.feeRule : [];
             if(sePostData.length > 0){
                 me.updateSection(sePostData, function () {
                     me.sheet.setRowCount(me.cache.length + 5);
@@ -585,7 +592,7 @@ let feeRuleObj = {
         options: {
             tabStripVisible:  false,
             allowCopyPasteExcelStyle : false,
-            allowExtendPasteRange: false,
+            allowExtendPasteRange: true,
             allowUserDragDrop : false,
             allowUserDragFill: false,
             scrollbarMaxAlign : true
@@ -921,6 +928,9 @@ let feeRuleObj = {
     },
     onClipboardPasting: function (sender, info) {
         let me = feeRuleObj, se = sectionObj;
+        if(info.cellRange.col + info.cellRange.colCount > me.setting.header.length){
+            info.cancel = true;
+        }
         if(!me.isDef(se.currentSection)){
             info.cancel = true;
         }
@@ -1057,7 +1067,7 @@ let batchSectionObj = {
         options: {
             tabStripVisible:  false,
             allowCopyPasteExcelStyle : false,
-            allowExtendPasteRange: false,
+            allowExtendPasteRange: true,
             allowUserDragDrop : false,
             allowUserDragFill: false,
             scrollbarMaxAlign : true

+ 1 - 1
web/maintain/ration_repository/js/ration_installation.js

@@ -10,7 +10,7 @@ let rationInstObj = {
     cache: [],
     setting: {
         header:[
-            {headerName:"费用项",headerWidth:120,dataCode:"feeItem", dataType: "String", hAlign: 'left'},
+            {headerName:"费用项",headerWidth:200,dataCode:"feeItem", dataType: "String", hAlign: 'left'},
             {headerName:"分册章节",headerWidth:400,dataCode:"section", dataType: "String", hAlign: 'left'}
         ],
         view:{

+ 1 - 0
web/users/js/col_setting.js

@@ -215,6 +215,7 @@ let ColSettingObj = {
         }
     },
     getActualCellRange: function (cellRange, rowCount, columnCount) {
+        let spreadNS = GC.Spread.Sheets;
         if (cellRange.row == -1 && cellRange.col == -1) {
             return new spreadNS.Range(0, 0, rowCount, columnCount);
         }

+ 22 - 0
web/users/js/main_tree_col.js

@@ -4,6 +4,9 @@
 
 let MainTreeCol = {
     getText: {
+        subType: function (node) {
+
+        },
         type: function (node) {
             if (node.sourceType === projectObj.project.Bills.getSourceType()) {
                 return '';
@@ -24,7 +27,15 @@ let MainTreeCol = {
         },
         code: function (node) {
 
+        },
+        //取费专业
+        calcProgramName: function (node) {
+
+        },
+        marketPrice: function (node) {
+
         }
+
     },
     readOnly: {
         bills: function (node) {
@@ -99,6 +110,17 @@ let MainTreeCol = {
         },
         calcBase: function () {
             return calcBaseView.getCalcBaseCellType();
+        },
+        calcProgramName: function (node) {
+
+        },
+        //类别
+        subType: function (node) {
+
+        },
+        //是否分包
+        isSubcontract: function (node) {
+
         }
      },
     getEvent: function (eventName) {

+ 24 - 3
web/users/js/template.js

@@ -33,13 +33,14 @@ let TEMPLATE_BILLS_SETTING = {
             "spanRows":[1],
             "vAlign":[1],
             "hAlign":[1],
-            "font":["Arial"]
+            "font":["Arial"],
         },
         "data":{
             "field":"code",
             "vAlign":0,
             "hAlign":3,
-            "font":"Arail"
+            "font":"Arail",
+            "formatter": '@'
         }
     }, {
         "width":300,
@@ -229,7 +230,8 @@ $(document).ready(function () {
     let tree = idTree.createNew({id: 'ID', pid: 'ParentID', nid: 'NextSiblingID', rootId: -1, autoUpdate: true});
     let billsSpread = TREE_SHEET_HELPER.createNewSpread($('#billsSpread')[0]);
     let controller = TREE_SHEET_CONTROLLER.createNew(tree, billsSpread.getActiveSheet(), TEMPLATE_BILLS_SETTING);
-
+    //format code
+    //billsSpread.getSheet(0).setFormatter(-1, 1, '@');
     controller.bind('refreshBaseActn', RefreshBaseActn);
 
     billsSpread.bind(GC.Spread.Sheets.Events.EditEnded, function (sender, info) {
@@ -287,6 +289,8 @@ $(document).ready(function () {
     RefreshBaseActn(tree);
 
     $('#insert').click(function () {
+        let me = this;
+        $(me).addClass('disabled');
         var selected = controller.tree.selected, updateData;
         if (selected) {
             updateData = controller.tree.getInsertData(selected.getParentID(), selected.getNextSiblingID());
@@ -297,58 +301,75 @@ $(document).ready(function () {
             CommonAjax.post(updateUrl, updateData, function (data) {
                 controller.insert();
                 controller.showTreeData();
+                $(me).removeClass('disabled');
             });
         } else {
             alert('新增节点失败, 请重试.');
+            $(me).removeClass('disabled');
         }
     });
     $('#delete').click(function () {
+        let me = this;
+        $(me).addClass('disabled');
         var selected = controller.tree.selected, updateData;
         if (selected) {
             updateData = controller.tree.getDeleteData(selected);
             CommonAjax.post(updateUrl, updateData, function (data) {
                 controller.delete();
                 controller.showTreeData();
+                $(me).removeClass('disabled');
             });
         }
     });
     $('#upLevel').click(function () {
+        let me = this;
+        $(me).addClass('disabled');
         var selected = controller.tree.selected, updateData;
         if (selected) {
             updateData = selected.getUpLevelData();
             CommonAjax.post(updateUrl, updateData, function (data) {
                 controller.upLevel();
                 controller.showTreeData();
+                $(me).removeClass('disabled');
             });
         }
     });
     $('#downLevel').click(function () {
+        let me = this;
+        $(me).addClass('disabled');
         var selected = controller.tree.selected, updateData;
         if (selected) {
             updateData = selected.getDownLevelData();
             CommonAjax.post(updateUrl, updateData, function (data) {
                 controller.downLevel();
                 controller.showTreeData();
+                $(me).removeClass('disabled');
             });
         }
     });
     $('#upMove').click(function () {
+        let me = this;
+        $(me).addClass('disabled');
         var selected = controller.tree.selected, updateData;
         if (selected) {
             updateData = selected.getUpMoveData();
             CommonAjax.post(updateUrl, updateData, function (data) {
                 controller.upMove();
                 controller.showTreeData();
+                $(me).removeClass('disabled');
             });
         }
     });
     $('#downMove').click(function () {
+        let me = this;
+        $(me).addClass('disabled');
         var selected = controller.tree.selected, updateData;
         if (selected) {
             updateData = selected.getDownMoveData();
             CommonAjax.post(updateUrl, updateData, function (data) {
                 controller.downMove();
                 controller.showTreeData();
+                $(me).removeClass('disabled');
             });
         }
     });