فهرست منبع

质检-表单设置
1、质检html-返回时设置clearFormula标签在input中

LHB 1 هفته پیش
والد
کامیت
da1478bbad

+ 3 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -1088,7 +1088,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
     @Override
     public void gsColor(Long pKeyId, String nodeId, String projectId, Document doc) {
         try {
-            List<KeyMapper> keyMappers = this.formulaService.getKeyMapperList(Collections.singletonList(pKeyId), projectId, nodeId, ExecuteType.INSPECTION, null);
+            List<KeyMapper> keyMappers = this.formulaService.getKeyMapperList(Collections.singletonList(pKeyId), projectId, nodeId, ExecuteType.INSPECTION, "0");
             //扩展----根据父节点查询不允许执行的公式
             WbsTreeContractExtend byId = wbsTreeContractExtendService.getById(nodeId);
             List<String> list;
@@ -1112,8 +1112,9 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
                             Elements select = doc.select("table").first().select("[keyname^=" + key + "]");
                             if(list.contains(e.getTableName() + ":" + e.getField())){
                                 //当前元素不执行公式
-                                select.stream().map(this::findParentTd).filter(Objects::nonNull).forEach(element -> element.attr("clearFormula", "1"));
+                                select.stream().filter(Objects::nonNull).forEach(element -> element.attr("clearFormula", "1"));
                             }else{
+                                select.stream().filter(Objects::nonNull).forEach(element -> element.attr("clearFormula", "0"));
                                 processElements(select);
                             }
                         });

+ 10 - 7
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -2510,7 +2510,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
     public List<KeyMapper> getKeyMapperList(List<Long> ids, String projectId, String nodeId, ExecuteType executeType, String testGroupId) {
         /*ids 表流水号 projectId项目 nodeId工序节点的pkeyId ExecuteType执行模式 质检或者试验 首件*/
         if (executeType.equals(ExecuteType.INSPECTION)) {
-            return listForContract(ids, projectId, nodeId);
+            return listForContract(ids, projectId, nodeId, testGroupId);
         } else if (executeType.equals(ExecuteType.TESTING) ) {
             return listForPrivate(ids, projectId, nodeId, testGroupId);
         } else if (executeType.equals(ExecuteType.LOGINFO) ) {
@@ -5218,13 +5218,16 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
     }
 
     /*表id,项目id,节点Id*/
-    public List<KeyMapper> listForContract(List<Long> ids, String projectId, String nodeId) {
+    public List<KeyMapper> listForContract(List<Long> ids, String projectId, String nodeId, String testGroupId) {
         List<Map<String, Object>> listMap = listMap(ids, ExecuteType.INSPECTION);
-        //根据节点id查询 合同段扩展表
-        WbsTreeContractExtend byId = wbsTreeContractExtendService.getById(nodeId);
-        if (byId != null && StringUtils.isNotEmpty(byId.getFormulaConfig())) {
-            List<String> list = Arrays.asList(byId.getFormulaConfig().split(","));
-            listMap = listMap.stream().filter(m -> !list.contains(m.get("tableName").toString() + ":" + m.get("field").toString())).collect(Collectors.toList());
+        //质检这个参数为null,表示过滤公式,不为null,表示html渲染表格
+        if(testGroupId == null){
+            //根据节点id查询 合同段扩展表
+            WbsTreeContractExtend byId = wbsTreeContractExtendService.getById(nodeId);
+            if (byId != null && StringUtils.isNotEmpty(byId.getFormulaConfig())) {
+                List<String> list = Arrays.asList(byId.getFormulaConfig().split(","));
+                listMap = listMap.stream().filter(m -> !list.contains(m.get("tableName").toString() + ":" + m.get("field").toString())).collect(Collectors.toList());
+            }
         }
 
         WbsTreePrivate wtp = wtpId(Long.parseLong(nodeId));