Browse Source

表单排序

qianxb 1 năm trước cách đây
mục cha
commit
8dcb7c4744

+ 13 - 0
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/dto/IdsDTO.java

@@ -0,0 +1,13 @@
+package org.springblade.manager.dto;
+
+import lombok.Data;
+
+/**
+ * @Param
+ * @Author wangwl
+ * @Date 2024/6/18 11:55
+ **/
+@Data
+public class IdsDTO {
+    String ids;
+}

+ 13 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/controller/WbsTreeContractController.java

@@ -33,6 +33,7 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.IoUtil;
 import org.springblade.core.tool.utils.ObjectUtil;
 import org.springblade.core.tool.utils.ResourceUtil;
+import org.springblade.manager.dto.IdsDTO;
 import org.springblade.manager.dto.WbsTreeContractDTO2;
 import org.springblade.manager.entity.ContractInfo;
 import org.springblade.manager.entity.WbsTreeContract;
@@ -735,4 +736,16 @@ public class WbsTreeContractController extends BladeController {
          return R.success("成功");
     }
 
+
+    @PostMapping("/table-sort")
+    @ApiOperationSupport(order = 42)
+    @ApiOperation(value = "表单排序", notes = "传入ids")
+    @ApiImplicitParams(value = {
+            @ApiImplicitParam(name = "ids", value = "节点pKeyId,按顺序逗号拼接", required = true)
+    })
+    public R tableSort(@RequestBody IdsDTO dto) {
+        wbsTreeContractServiceImpl.tableSort(dto);
+        return R.success("成功");
+    }
+
 }

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

@@ -107,4 +107,5 @@ public interface WbsTreeContractMapper extends EasyBaseMapper<WbsTreeContract> {
 
     void updateIsPId(@Param("map") Map<Long, Long> map);
 
+    void tableSort(@Param("map") Map<Long, Integer> map);
 }

+ 9 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/WbsTreeContractMapper.xml

@@ -730,6 +730,15 @@
             where p_key_id = #{key}
         </foreach>
     </update>
+    <update id="tableSort">
+        <foreach item="value" collection="map" index="key" separator=";">
+            UPDATE m_wbs_tree_contract
+            <set>
+                sort = #{value}
+            </set>
+            where p_key_id = #{key}
+        </foreach>
+    </update>
 
     <select id="selectQueryValueLikeNodeName" resultMap="ResultMap">
         select *

+ 17 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/WbsTreeContractServiceImpl.java

@@ -32,6 +32,7 @@ import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.node.ForestNodeMerger;
 import org.springblade.core.tool.utils.*;
 import org.springblade.manager.bean.NodeVO;
+import org.springblade.manager.dto.IdsDTO;
 import org.springblade.manager.dto.RangeInfo;
 import org.springblade.manager.dto.WbsTreeContractDTO;
 import org.springblade.manager.dto.WbsTreeContractDTO2;
@@ -45,6 +46,7 @@ import org.springblade.manager.mapper.WbsTreePrivateMapper;
 import org.springblade.manager.service.ITableFileService;
 import org.springblade.manager.service.IWbsTreeContractService;
 import org.springblade.manager.vo.*;
+import org.springblade.meter.entity.MeterMidPayItemContract;
 import org.springblade.system.cache.ParamCache;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.redis.core.StringRedisTemplate;
@@ -2354,4 +2356,19 @@ public class WbsTreeContractServiceImpl extends BaseServiceImpl<WbsTreeContractM
         redisTemplate.delete("blade-manager::contract:wbstree:*");
         return R.success("操作成功");
     }
+
+    public void tableSort(IdsDTO dto) {
+        String ids = dto.getIds();
+        if (StringUtils.isNotBlank(ids)) {
+            List<Long> split = Func.toLongList(ids);
+            int sort = 1;
+            Map<Long,Integer> map = new HashMap<>();
+            for (Long id : split) {
+                map.put(id,sort++);
+            }
+            baseMapper.tableSort(map);
+        }else {
+            throw new ServiceException("请传入ids");
+        }
+    }
 }