update 拆分结果编辑 目录往一级拖动内容时,后拖入的,放在后面
This commit is contained in:
+5
-2
@@ -375,8 +375,11 @@
|
|||||||
select * from SAR_FILE_SPLIT_MENU
|
select * from SAR_FILE_SPLIT_MENU
|
||||||
where parent_id = #{parentId}
|
where parent_id = #{parentId}
|
||||||
AND valid_flag = '0'
|
AND valid_flag = '0'
|
||||||
and display_seq > #{displaySeq}
|
<if test="displaySeq != null">
|
||||||
order by display_seq desc
|
and display_seq > #{displaySeq}
|
||||||
|
</if>
|
||||||
|
|
||||||
|
order by display_seq
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="queryByGTDisplaySeq" resultMap="BaseResultMap">
|
<select id="queryByGTDisplaySeq" resultMap="BaseResultMap">
|
||||||
|
|||||||
+47
-22
@@ -377,30 +377,55 @@ public class SarFileSplitMenuEOServiceImpl extends ServiceImpl<SarFileSplitMenuE
|
|||||||
public void updateMenuLevel(String sourceIds, String parentId, Long displaySeq) {
|
public void updateMenuLevel(String sourceIds, String parentId, Long displaySeq) {
|
||||||
// 要移动到的节点信息
|
// 要移动到的节点信息
|
||||||
SarFileSplitMenuEO parentMenu = baseMapper.findById(parentId);
|
SarFileSplitMenuEO parentMenu = baseMapper.findById(parentId);
|
||||||
|
Long menuDisplaySeq = parentMenu.getDisplaySeq();
|
||||||
// 获取要移动到的层级的最后一个 的排序值
|
|
||||||
List<SarFileSplitMenuEO> lastMenuList = getLastMenu(parentMenu.getId(),displaySeq);
|
|
||||||
List<String> sourceIdList = Arrays.asList(sourceIds.split(","));
|
List<String> sourceIdList = Arrays.asList(sourceIds.split(","));
|
||||||
int size = sourceIdList.size();
|
|
||||||
for (SarFileSplitMenuEO sarFileSplitMenuEO : lastMenuList) {
|
List<SarFileSplitMenuEO> lastMenuList;
|
||||||
Long displaySeq1 = sarFileSplitMenuEO.getDisplaySeq();
|
//是否是放到最后
|
||||||
sarFileSplitMenuEO.setDisplaySeq(displaySeq1+size);
|
boolean equals = Objects.equals(menuDisplaySeq, displaySeq);
|
||||||
baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
if (equals){
|
||||||
}
|
// 获取要移动到的层级的最后一个 的排序值
|
||||||
if(displaySeq == 0){
|
lastMenuList = getLastMenu(parentMenu.getId(),null);
|
||||||
displaySeq = parentMenu.getDisplaySeq();
|
int size = lastMenuList.size();
|
||||||
}
|
for (int i = 0; i < size; i++) {
|
||||||
//this.updateBatchById(lastMenuList);
|
SarFileSplitMenuEO sarFileSplitMenuEO = lastMenuList.get(i);
|
||||||
List<SarFileSplitMenuEO> updateList = new ArrayList<>();
|
sarFileSplitMenuEO.setDisplaySeq(menuDisplaySeq+i+1);
|
||||||
for (int i = 0; i < sourceIdList.size(); i++) {
|
baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
||||||
String sourceId = sourceIdList.get(i);
|
}
|
||||||
// 要移动的节点信息
|
if(displaySeq == 0){
|
||||||
SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId);
|
displaySeq = menuDisplaySeq;
|
||||||
sarFileSplitMenuEO.setParentId(parentId);
|
}
|
||||||
sarFileSplitMenuEO.setDisplaySeq(displaySeq+i+1);
|
for (int i = 0; i < sourceIdList.size(); i++) {
|
||||||
updateList.add(sarFileSplitMenuEO);
|
String sourceId = sourceIdList.get(i);
|
||||||
baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
// 要移动的节点信息
|
||||||
|
SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId);
|
||||||
|
sarFileSplitMenuEO.setParentId(parentId);
|
||||||
|
sarFileSplitMenuEO.setDisplaySeq(displaySeq+size+i+1);
|
||||||
|
baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
// 获取要移动到的层级的最后一个 的排序值
|
||||||
|
lastMenuList = getLastMenu(parentMenu.getId(),displaySeq);
|
||||||
|
int size = sourceIdList.size();
|
||||||
|
for (SarFileSplitMenuEO sarFileSplitMenuEO : lastMenuList) {
|
||||||
|
Long displaySeq1 = sarFileSplitMenuEO.getDisplaySeq();
|
||||||
|
sarFileSplitMenuEO.setDisplaySeq(displaySeq1+size);
|
||||||
|
baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
||||||
|
}
|
||||||
|
if(displaySeq == 0){
|
||||||
|
displaySeq = parentMenu.getDisplaySeq();
|
||||||
|
}
|
||||||
|
for (int i = 0; i < sourceIdList.size(); i++) {
|
||||||
|
String sourceId = sourceIdList.get(i);
|
||||||
|
// 要移动的节点信息
|
||||||
|
SarFileSplitMenuEO sarFileSplitMenuEO = baseMapper.findById(sourceId);
|
||||||
|
sarFileSplitMenuEO.setParentId(parentId);
|
||||||
|
sarFileSplitMenuEO.setDisplaySeq(displaySeq+i+1);
|
||||||
|
baseMapper.updateByPrimaryKeySelective(sarFileSplitMenuEO);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
//this.updateBatchById(updateList);
|
//this.updateBatchById(updateList);
|
||||||
// 要移动的节点所有子集(包括本身)
|
// 要移动的节点所有子集(包括本身)
|
||||||
//List<SarFileSplitMenuEO> sarFileSplitMenuEO1List = new ArrayList<>();
|
//List<SarFileSplitMenuEO> sarFileSplitMenuEO1List = new ArrayList<>();
|
||||||
|
|||||||
Reference in New Issue
Block a user