Browse Source

Merge branch 'dev-showTable' into dev

lvy 22 hours ago
parent
commit
3f83a3eccc

+ 3 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/entity/WbsTreePrivate.java

@@ -270,4 +270,7 @@ public class WbsTreePrivate extends BaseEntity {
     @ApiModelProperty(value = "附件类型(复选)")
     private String tableFileType;
 
+    @ApiModelProperty(value = "是否默认隐藏,0:否,1:是")
+    private Integer defaultConceal;
+
 }

+ 3 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/vo/WbsNodeTableVO.java

@@ -102,4 +102,7 @@ public class WbsNodeTableVO implements Serializable {
 
     @ApiModelProperty("html元素是否存在错误:0-不存在,1-存在")
     private Integer htmlElementError = 0;
+
+    @ApiModelProperty(value = "是否默认隐藏,0:否,1:是")
+    private Integer defaultConceal;
 }

+ 5 - 5
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ExcelTabController.java

@@ -792,7 +792,7 @@ public class ExcelTabController extends BladeController {
                         String point = colKey.split("__")[1];
                         if (element == null && point.contains("_")) {
                             String[] split = point.split("_");
-                            element = doc.select("[trindex='" + split[0] + "'],[tdindex='" + split[1] + "']").first();
+                            element = doc.select("[trindex='" + split[0] + "'][tdindex='" + split[1] + "']").first();
                         }
                     }
                 }
@@ -804,11 +804,11 @@ public class ExcelTabController extends BladeController {
                     Element parent = element.parent();
                     while (i > 0 && parent != null) {
                         if (parent.hasAttr("title") || parent.hasAttr("dqid")) {
-                            String dqid = element.attr("dqid");
-                            if (dqid != null && !dqid.isEmpty()) {
-                                element.attr("dqid", dqid + "||" + config.getId());
+                            String dqid = parent.attr("dqid");
+                            if (!dqid.isEmpty()) {
+                                parent.attr("dqid", dqid + "||" + config.getId());
                             } else {
-                                element.attr("dqid", config.getId() + "");
+                                parent.attr("dqid", config.getId() + "");
                             }
                             return true;
                         }

+ 4 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/TextdictInfoController.java

@@ -433,12 +433,12 @@ public class TextdictInfoController extends BladeController {
                             String value1;
                             if (type == 1) {
                                 // 转数组格式
-                                value1 = String.format(" key_201 = concat(SUBSTRING_INDEX(key_201,'%s:',1), '%s:', if(substr(@v := if(INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1 < 0, SUBSTRING_INDEX(key_201, '%s:',-1), SUBSTR(SUBSTRING_INDEX(key_201, '%s:',-1), 1 , INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1)) , 1, 1) = '[', @v, concat('[', @vv := substr(@v,1, if(instr(@v, '_^_') - 1 < 0, char_length(@v), instr(@v, '_^_') - 1), if(instr(@vv,',') > 0, '', concat(',',@vv)) ,']', substr(@v, instr(@v, '_^_'))))  , if (INSTR(SUBSTRING_INDEX(key_201, 'key_16:',-1),'$$') - 1 < 0, '', concat('$$', SUBSTRING_INDEX(SUBSTRING_INDEX(key_201,'key_16:',-1),'$$',-1))) ) ",
-                                        split[0],split[0], split[0], split[0], split[0], split[0]);
+                                value1 = String.format(" key_201 = if(key_201 is null or instr(key_201, '%s') =0, key_201, concat(SUBSTRING_INDEX(key_201,'%s:',1), '%s:', if(substr(@v := if(INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1 < 0, SUBSTRING_INDEX(key_201, '%s:',-1), SUBSTR(SUBSTRING_INDEX(key_201, '%s:',-1), 1 , INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1)) , 1, 1) = '[', @v, concat('[', @vv := substr(@v,1, if(instr(@v, '_^_') - 1 < 0, char_length(@v), instr(@v, '_^_') - 1)), if(instr(@vv,',') > 0, '', concat(',',@vv)) ,']', substr(@v, instr(@v, '_^_'))))  , if (INSTR(SUBSTRING_INDEX(key_201, 'key_16:',-1),'$$') - 1 < 0, '', concat('$$', SUBSTRING_INDEX(SUBSTRING_INDEX(key_201,'key_16:',-1),'$$',-1))) ) )",
+                                        split[0],split[0], split[0], split[0], split[0], split[0], split[0]);
                             } else {
                                 // 转普通格式
-                                value1 = String.format(" key_201 = concat(SUBSTRING_INDEX(key_201,'%s:',1), '%s:', if(substr(@v := if(INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1 < 0, SUBSTRING_INDEX(key_201, '%s:',-1), SUBSTR(SUBSTRING_INDEX(key_201, '%s:',-1), 1 , INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1)) , 1, 1) != '[', @v, concat(substr(@v, instr(@v, '[') + 1, (CHAR_LENGTH(@v) - instr(REVERSE(@v) , ']') - instr(@v, '['))), substr(@v, instr(@v, '_^_')))) , if (INSTR(SUBSTRING_INDEX(key_201, 'key_16:',-1),'$$') - 1 < 0, '', concat('$$', SUBSTRING_INDEX(SUBSTRING_INDEX(key_201,'key_16:',-1),'$$',-1))) ) ",
-                                        split[0],split[0],split[0],split[0],split[0], split[0]);
+                                value1 = String.format(" key_201 = if(key_201 is null or instr(key_201, '%s') <= 0, key_201, concat(SUBSTRING_INDEX(key_201,'%s:',1), '%s:', if(substr(@v := if(INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1 < 0, SUBSTRING_INDEX(key_201, '%s:',-1), SUBSTR(SUBSTRING_INDEX(key_201, '%s:',-1), 1 , INSTR(SUBSTRING_INDEX(key_201, '%s:',-1),'$$') - 1)) , 1, 1) != '[', @v, concat(substr(@v, instr(@v, '[') + 1, (CHAR_LENGTH(@v) - instr(REVERSE(@v) , ']') - instr(@v, '['))), substr(@v, instr(@v, '_^_')))) , if (INSTR(SUBSTRING_INDEX(key_201, 'key_16:',-1),'$$') - 1 < 0, '', concat('$$', SUBSTRING_INDEX(SUBSTRING_INDEX(key_201,'key_16:',-1),'$$',-1))) ) )",
+                                        split[0],split[0],split[0],split[0],split[0],split[0], split[0]);
                             }
                             value = value + " , " + value1;
                             sql = String.format("update %s set %s where p_key_id in ( select p_key_id from m_wbs_tree_contract WHERE is_type_private_pid = %d and project_id = %s )",

+ 29 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsTreePrivateController.java

@@ -1154,4 +1154,33 @@ public class WbsTreePrivateController extends BladeController {
         IPage<TreeNodeVOByTabType> page = wbsTreePrivateService.tabTypeLazyTreeByProject(Condition.getPage(query), parentId, projectId, titleName);
         return R.data(page);
     }
+
+
+    /**
+     * 设置/取消 表单默认隐藏
+     */
+    @GetMapping("/showTable")
+    @ApiOperationSupport(order = 41)
+    @ApiOperation(value = "设置/取消 表单默认隐藏", notes = "传入表单的pKeyId")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "pKeyId", value = "表单的pKeyId", required = true)})
+    public R<Boolean> showTable(Long pKeyId) {
+        if (pKeyId == null) {
+            return R.fail("参数错误");
+        }
+        WbsTreePrivate wbsTreePrivate = wbsTreePrivateMapper.selectOne(Wrappers.<WbsTreePrivate>lambdaQuery().select(WbsTreePrivate::getPKeyId, WbsTreePrivate::getDefaultConceal, WbsTreePrivate::getProjectId)
+                .eq(WbsTreePrivate::getPKeyId, pKeyId).ne(WbsTreePrivate::getType, 1));
+        if (wbsTreePrivate == null) {
+            return R.fail("选择的表单不存在");
+        }
+        int isDefaultConceal = 0;
+        if (wbsTreePrivate.getDefaultConceal() == null || wbsTreePrivate.getDefaultConceal() == 0) {
+            isDefaultConceal = 1;
+        }
+        boolean update = wbsTreePrivateService.update(Wrappers.<WbsTreePrivate>lambdaUpdate().eq(WbsTreePrivate::getPKeyId, pKeyId).set(WbsTreePrivate::getDefaultConceal, isDefaultConceal).set(WbsTreePrivate::getIsBussShow, isDefaultConceal + 1));
+        if ( update) {
+            jdbcTemplate.execute("update m_wbs_tree_contract set is_buss_show =  " + (isDefaultConceal + 1) + " where is_deleted = 0 and is_type_private_pid = " + pKeyId + " and project_id = " + wbsTreePrivate.getProjectId());
+        }
+        return R.data(update);
+    }
 }

+ 1 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreePrivateMapper.xml

@@ -531,6 +531,7 @@
                wt.status,
                wt.node_type                                                                         AS nodeType,
                wt.wbs_type                                                                          AS wbsType,
+               wt.default_conceal                                                                   AS defaultConceal,
                wt.fill_rate                                                                         AS "fillRate",
                wt.html_url                                                                          AS htmlUrl,
                (SELECT count(1)