Browse Source

清单综合单价>最高限价时,文本标红显示

vian 5 years ago
parent
commit
1e22b28165

+ 7 - 12
public/web/tree_sheet/tree_sheet_helper.js

@@ -158,27 +158,22 @@ var TREE_SHEET_HELPER = {
                     }
                     return data;
                 };
+                var cell = sheet.getCell(iRow, iCol, GC.Spread.Sheets.SheetArea.viewport);
                 if(sheet.name()=="mainSheet"){
-                 /*   if(colSetting.data.field=="quantity"){  2018-08-06 去掉工程量列表达式
-                        let tag = node.data.quantityEXP?node.data.quantityEXP:'';
-                        sheet.setTag(iRow, iCol,tag);
-                    }*/
                     if(colSetting.data.field=="code"){
                         let tag =null;
                         if(node.sourceType == ModuleNames.ration){//定额的时候换算子目
                             tag = node.data.adjustState?node.data.adjustState:'';
-                        }/*else if(node.sourceType == ModuleNames.bills &&projectObj.ifItemCharHiden(setting)){//清单、并且项目特征列隐藏的时候悬浮提示  这里改成在 计量单位那里提示
-                            tag = node.data.itemCharacterText?node.data.itemCharacterText:'';
-                        }*/
+                        }
                         if(tag!=null) sheet.setTag(iRow, iCol,tag);
                     }
-                    /*if(colSetting.data.field=="name"){ 2018-08-06 改成在编号列悬浮提示
-                        let tag = node.data.itemCharacterText?node.data.itemCharacterText:'';
-                        sheet.setTag(iRow, iCol,tag);
-                    }*/
+                    // 单元格字体颜色
+                    const foreColorFunc = MainTreeCol.foreColor[colSetting.data.field];
+                    if (foreColorFunc) {
+                        cell.foreColor(foreColorFunc(node));
+                    }
                 }
                 if(colSetting.visible == false) return;//隐藏列不做其它操作
-                var cell = sheet.getCell(iRow, iCol, GC.Spread.Sheets.SheetArea.viewport);
                 if (colSetting.data.getText && Object.prototype.toString.apply(colSetting.data.getText) === "[object Function]") {
                     cell.value(colSetting.data.getText(node));
                 }else if((colSetting.data.field=="mainBills"||(colSetting.data.field=="outPutMaxPrice" && $("#fileKind").val() != '1'))&&MainTreeCol.mainBillsEnable(node)){//主要清单有三种状态,所以直接显示就好,不走最后的逻辑

+ 16 - 0
web/building_saas/main/js/views/main_tree_col.js

@@ -557,6 +557,22 @@ let MainTreeCol = {
             tips += `${node.data.annotation.replace(/\n/g,"<br>")}<br>`;
         }
         return tips
+    },
+    foreColor: {
+        // 清单综合单价>最高限价时,标红显示
+        'feesIndex.common.unitFee': function (node) {
+            const color = 'red';
+            if (!calcTools.isBill(node)) {
+                return;
+            }
+            const totalFee = calcTools.getFee(node, 'common.unitFee');
+            const maxPrice = node.data.maxPrice;
+            // 最高限价有值才对比
+            if (!commonUtil.isDef(maxPrice)) {
+                return;
+            }
+            return totalFee > maxPrice ? color : null;
+        }
     }
 };