Bladeren bron

公式相关

yangyj 2 jaren geleden
bovenliggende
commit
e67277e482

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

@@ -399,7 +399,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
                 "from m_wbs_tree_contract a " +
                 "INNER JOIN m_wbs_tree b on (a.old_id=b.id or a.id=b.id)  " +
                 "INNER JOIN m_wbs_form_element c on  c.f_id=b.init_table_id " +
-                "INNER JOIN m_element_formula_mapping d on c.id=d.element_id  " +
+                "left JOIN m_element_formula_mapping d on c.id=d.element_id  " +
                 "where a.p_key_id in("+ids.stream().map(String::valueOf).collect(Collectors.joining(","))+") " +
                 "ORDER BY b.init_table_name,d.scope");
         /*当前节点的参数可以是私有级和公有级*/
@@ -494,7 +494,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             List<String> l = new ArrayList<>();
             Matcher m = P.matcher(f.getFormula());
             while (m.find()){
-                l.add(m.group());
+                l.add(m.group().replaceAll("'",""));
             }
             if(l.size()>0){
                 f.setRely(String.join(",", l));

+ 3 - 5
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeServiceImpl.java

@@ -311,11 +311,9 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
 
     @Override
     public List<WbsFormElementVO> selectFormElements(String id, Long nodeId) {
-        List<WbsFormElementVO> wbsFormElements = null;
-        if (this.tableInfoService.count(Wrappers.<TableInfo>lambdaQuery().eq(TableInfo::getId, id)) > 0) {
+        List<WbsFormElementVO> wbsFormElements  = wbsTreeMapper.selectFormElements(id);;
+        if (Func.isEmpty(wbsFormElements)) {
             wbsFormElements = wbsTreeMapper.selectFormElements4TableId(id);
-        } else {
-            wbsFormElements = wbsTreeMapper.selectFormElements(id);
         }
         wbsFormElements.forEach(elements -> {
             String eAllowDeviation = elements.getEAllowDeviation();
@@ -324,7 +322,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
             if (escapeChar != null) {
                 elements.setEAllowDeviation(escapeChar);
             }
-            if (nodeId != null && com.mixsmart.utils.StringUtils.isNotEquals(nodeId, elements.getNodeId())) {
+            if (nodeId != null &&elements.getNodeId()!=null&& com.mixsmart.utils.StringUtils.isNotEquals(nodeId, elements.getNodeId())) {
                 /*与当前节点不相同,则认为是跨节点取数,当然跨节点位置的标记不仅有绑定节点id一种方式*/
                 elements.setTableElementKey(elements.getNodeId() + StringPool.COLON + elements.getTableElementKey());
             }