Browse Source

定额有调整时编号后应加上“换”字,进入编辑状态时,只显示定额编号。之前“借”、“补”规则不变。

chenshilong 7 years ago
parent
commit
78001ce3ce

+ 2 - 1
web/building_saas/main/js/models/main_consts.js

@@ -169,7 +169,8 @@ const rationType = {
 const rationPrefix = { //定额前缀,补/借
     none: '',
     complementary: '补',
-    borrow: '借'
+    borrow: '借',
+    replace: '换'
 };
 const rationFrom = {
     std: 'std',

+ 9 - 2
web/building_saas/main/js/views/main_tree_col.js

@@ -45,11 +45,18 @@ let MainTreeCol = {
             if(!isDef(node)){
                 return '';
             }
+
+            let rst = '';
             if(node.sourceType === projectObj.project.Ration.getSourceType() && node.data.type === rationType.ration
                 && isDef(node.data.code) && isDef(node.data.prefix) && node.data.prefix !== ''){
-                return node.data.prefix + node.data.code.replace(new RegExp(node.data.prefix, 'g'), '');
+                rst = node.data.prefix + node.data.code.replace(new RegExp(node.data.prefix, 'g'), '');
             }
-            return isDef(node.data.code) ? node.data.code : '';
+            else
+                rst = isDef(node.data.code) ? node.data.code : '';
+
+            if (node.data.adjustState && rst != '')
+                rst = rst + rationPrefix.replace;
+            return rst;
         },
         marketPrice:function (node) {
             if((node.sourceType === projectObj.project.Ration.getSourceType()&&node.data.type!=rationType.ration)||node.sourceType==projectObj.project.ration_glj.getSourceType()){

+ 7 - 8
web/building_saas/main/js/views/project_view.js

@@ -527,14 +527,13 @@ var projectObj = {
         let project = projectObj.project;
         let node = project.mainTree.items[info.row];
         let fieldName = projectObj.mainController.setting.cols[info.col].data.field;
-        let orgV = info.sheet.getValue(info.row, info.col);
-        let newV;
-        if(node && node.sourceType === projectObj.project.Ration.getSourceType() && node.data.type === rationType.ration
-            && isDef(node.data.code) && isDef(node.data.prefix) && node.data.prefix !== rationPrefix.none && fieldName === 'code'){
-            if(node.data.prefix){
-                newV = orgV.replace(new RegExp(node.data.prefix), '');
-            }
-            info.sheet.setValue(info.row, info.col, newV);
+        let value = info.sheet.getValue(info.row, info.col);
+        if(fieldName === 'code' && node && calcTools.isRationItem(node) && isDef(node.data.code)){
+            if (isDef(node.data.prefix) && node.data.prefix !== rationPrefix.none){
+                value = value.replace(new RegExp(node.data.prefix), '');
+            };
+            value = value.replace(new RegExp(rationPrefix.replace), '');
+            info.sheet.setValue(info.row, info.col, value);
         }
         if(node&&fieldName =='quantity'&&(node.data.quantityEXP !==null||node.data.quantityEXP !==undefined)){
             info.sheet.setValue(info.row, info.col, node.data.quantityEXP);