liuyc 3 年 前
コミット
c224ce289c

+ 25 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/ArchiveTreeSortDTO.java

@@ -0,0 +1,25 @@
+package org.springblade.manager.dto;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import org.springblade.manager.entity.ArchiveTree;
+
+/**
+ * 数据传输对象实体类
+ *
+ * @author liuyc
+ * @since 2022-07-26
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class ArchiveTreeSortDTO extends ArchiveTree {
+	private static final long serialVersionUID = 1L;
+
+	@ApiModelProperty(value = "节点id")
+	private Long id;
+
+	@ApiModelProperty(value = "节点名称")
+	private String nodeName;
+
+}

+ 20 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/ArchiveTreeController.java

@@ -14,6 +14,7 @@ import org.springblade.core.secure.utils.AuthUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.manager.dto.ArchiveTreeDTO;
+import org.springblade.manager.dto.ArchiveTreeSortDTO;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.RequestParam;
 import org.springblade.manager.entity.ArchiveTree;
@@ -156,6 +157,25 @@ public class ArchiveTreeController extends BladeController {
         return R.status(archiveTreeService.submitDisplayConfigTree(ids));
     }
 
+    /**
+     * 获取归档树同级节点
+     */
+    @GetMapping("/getSameGradeNode")
+    @ApiOperationSupport(order = 9)
+    @ApiOperation(value = "获取归档树同级节点", notes = "传入节点id")
+    public R<List<ArchiveTree>> getSameGradeNode(@RequestParam String id) {
+        return R.data(archiveTreeService.getSameGradeNode(id));
+    }
+
+    /**
+     * 提交归档树手动排序
+     */
+    @PostMapping("/submitArchiveTreeSort")
+    @ApiOperationSupport(order = 10)
+    @ApiOperation(value = "提交归档树手动排序", notes = "List<ArchiveTreeSortDTO>集合")
+    public R submitArchiveTreeSort(@RequestBody List<ArchiveTreeSortDTO> listSort) {
+        return R.status(archiveTreeService.submitArchiveTreeSort(listSort));
+    }
 
 
 }

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

@@ -190,6 +190,7 @@
         dept.dept_category AS "deptCategory",
         dept.id AS "value",
         dept.id AS "key",
+        dept.is_exist_form AS "isExistForm",
         (
         SELECT
         CASE WHEN count(1) > 0 THEN 1 ELSE 0 END

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

@@ -17,6 +17,7 @@
 package org.springblade.manager.service;
 
 import org.springblade.manager.dto.ArchiveTreeDTO;
+import org.springblade.manager.dto.ArchiveTreeSortDTO;
 import org.springblade.manager.entity.ArchiveTree;
 import org.springblade.manager.vo.ArchiveTreeVO;
 import org.springblade.core.mp.base.BaseService;
@@ -44,4 +45,7 @@ public interface IArchiveTreeService extends BaseService<ArchiveTree> {
 
     boolean submitDisplayConfigTree(String ids);
 
+    List<ArchiveTree> getSameGradeNode(String id);
+
+	boolean submitArchiveTreeSort(List<ArchiveTreeSortDTO> listSort);
 }

+ 22 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ArchiveTreeServiceImpl.java

@@ -20,6 +20,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringPool;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.fasterxml.jackson.databind.BeanProperty;
 import lombok.AllArgsConstructor;
 import org.springblade.core.log.exception.ServiceException;
 import org.springblade.core.secure.utils.AuthUtil;
@@ -27,11 +28,13 @@ import org.springblade.core.tool.constant.BladeConstant;
 import org.springblade.core.tool.node.ForestNodeMerger;
 import org.springblade.core.tool.utils.Func;
 import org.springblade.manager.dto.ArchiveTreeDTO;
+import org.springblade.manager.dto.ArchiveTreeSortDTO;
 import org.springblade.manager.entity.ArchiveTree;
 import org.springblade.manager.vo.ArchiveTreeVO;
 import org.springblade.manager.mapper.ArchiveTreeMapper;
 import org.springblade.manager.service.IArchiveTreeService;
 import org.springblade.core.mp.base.BaseServiceImpl;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
@@ -154,6 +157,25 @@ public class ArchiveTreeServiceImpl extends BaseServiceImpl<ArchiveTreeMapper, A
         }
     }
 
+    @Override
+    public List<ArchiveTree> getSameGradeNode(String id) {
+        ArchiveTree archiveTree = baseMapper.selectById(id);
+        return baseMapper.selectList(Wrappers.<ArchiveTree>query().lambda()
+                .eq(ArchiveTree::getParentId, archiveTree.getParentId())
+                .orderByAsc(ArchiveTree::getSort));
+    }
+
+    @Override
+    public boolean submitArchiveTreeSort(List<ArchiveTreeSortDTO> listSort) {
+        int sortNumber = 1;
+        for (ArchiveTreeSortDTO archiveTreeSortDTO : listSort) {
+            archiveTreeSortDTO.setSort(sortNumber);
+            sortNumber++;
+            baseMapper.updateById(archiveTreeSortDTO);
+        }
+        return true;
+    }
+
     @Override
     public boolean submit(ArchiveTreeDTO archiveTreeDTO) {
         if (Func.isEmpty(archiveTreeDTO.getParentId())) {

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

@@ -154,7 +154,7 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         wbsTree.setStatus(1);
         wbsTree.setIsDeleted(BladeConstant.DB_NOT_DELETED);
 
-        //新增默认排序
+        //默认排序
         //获取当前同级节点List
         if (wbsTree.getId() == null) {
             List<WbsTree> trees = baseMapper.selectList(Wrappers.<WbsTree>query().lambda()
@@ -210,9 +210,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
 
     }
 
-    /**
-     * wbs元素表、元素批量导入
-     */
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean importWbsTreeTableAndForm(MultipartFile excelFile, WbsTree wbsTree) {
@@ -473,10 +470,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         return String.valueOf(wbsTree.getId());
     }
 
-
-    /**
-     * wbs公有树节点excel导入
-     */
     @Override
     @Transactional(rollbackFor = Exception.class)
     public boolean importWbsTree(MultipartFile excelFile, WbsTree wbsTreeFu, WbsTree wbsTree1) throws IOException {
@@ -600,8 +593,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         return trees;
     }
 
-
-    //采用批量 默认排序
     private boolean importExcel2(ArrayList<Map<String, String>> result, WbsTree wbsTreeFu, WbsTree wbsTree1) {
         List<WbsTree> allNodeData = new ArrayList<>();
         //解析
@@ -708,7 +699,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         return wbsTree;
     }
 
-
     @Override
     public int deleteBatchByProjectNodeId(Long projectNodeId) {
         return baseMapper.deleteBatchProjectNodeId(projectNodeId);
@@ -780,10 +770,6 @@ public class WbsTreeServiceImpl extends BaseServiceImpl<WbsTreeMapper, WbsTree>
         return row > 0;
     }
 
-
-    /**
-     * 项目级wbs树保存/修改
-     */
     @Override
     @Transactional(rollbackFor = Exception.class)
     public String submitWbsTreeInProject(WbsTreeContractDTO pawDTO) {