Bläddra i källkod

Merge remote-tracking branch 'origin/test-merge' into test-merge

cr 4 dagar sedan
förälder
incheckning
125936d6d8

+ 7 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/entity/WbsFormElement.java

@@ -77,4 +77,11 @@ public class WbsFormElement extends BaseEntity {
      */
     @ApiModelProperty(value = "exid")
     private Long exid;
+
+    /**
+     * 是否辅助(1-是,0-不是)
+     */
+    @ApiModelProperty(value = "是否辅助(1-是,0-不是)")
+    private Integer assist;
+
 }

+ 4 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/formula/KeyMapper.java

@@ -46,6 +46,10 @@ public class KeyMapper {
      * 公式id
      */
     private Long formulaId;
+    /**
+     * 是否为辅助字段
+     */
+    private Integer assist;
 
     public String getCode() {
         return this.tableName + StringPool.COLON + this.field;

+ 3 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeMapper.xml

@@ -407,6 +407,7 @@
     <select id="selectFormElements" resultMap="wbsFormElementMap">
         select f_id,
                e_key,
+               a.assist,
                a.id,
                a.dynamic_dict,
                e_name,
@@ -425,6 +426,7 @@
         union
         select f_id,
                e_key,
+               a.assist,
                a.id,
                a.dynamic_dict,
                e_name,
@@ -445,6 +447,7 @@
         select b.id
              , IF(c.formula_id > 0, 1, 0)           globalFormula
              , b.e_name
+             , b.assist
              , e_type
              , e_length
              , e_allow_deviation

+ 10 - 1
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -704,7 +704,16 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
             } else {
                 List<WbsTreeContract> list = wbsTreeContractService.getBaseMapper().selectList(Wrappers.<WbsTreeContract>query().lambda().in(WbsTreeContract::getPKeyId, pkeyIds));
                 if (list.size() > 0) {
-                    list.forEach(e -> coordinateMap.computeIfAbsent(e.getInitTableName(), k -> FormulaUtils.getElementCell(e.getHtmlUrl())));
+                    list.forEach(e -> {
+                        Map<String, String> elementCell = FormulaUtils.getElementCell(e.getHtmlUrl());
+                        //扩展中间元素开发 获取字段是辅助字段  并且在html上没有这个字段
+                        List<String> collect = keyMappers.stream().filter(f -> f.getAssist() == 1
+                                && elementCell.get(f.getField()) == null).map(KeyMapper::getField).collect(Collectors.toList());
+                        collect.forEach(f->{
+                            elementCell.put(f,"0_0");
+                        });
+                        coordinateMap.computeIfAbsent(e.getInitTableName(), k -> elementCell);
+                    });
                 }
             }
         }

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

@@ -5402,7 +5402,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
     private List<Map<String, Object>> listMap(List<Long> ids, ExecuteType type) {
         String pkIds = ids.stream().map(String::valueOf).collect(Collectors.joining(","));
         String tableName = ExecuteType.INSPECTION.equals(type) ? "m_wbs_tree_contract" : "m_wbs_tree_private";
-        return this.jdbcTemplate.queryForList(" select a.init_table_name as tableName,a.p_key_id as pkId ,c.e_key as field,c.e_name as eName,c.id  as fieldId ,c.e_type eType , e_allow_deviation as eAllowDeviation  " +
+        return this.jdbcTemplate.queryForList(" select a.init_table_name as tableName,a.p_key_id as pkId ,c.e_key as field,c.e_name as eName,c.id  as fieldId ,c.e_type eType, c.assist , e_allow_deviation as eAllowDeviation  " +
                 "from " + tableName + " a " +
                 "inner join m_table_info b on a.init_table_name=b.tab_en_name " +
                 "INNER JOIN m_wbs_form_element c on b.id=c.f_id " +