您现在的位置是:主页 > news > 成都协会网站建设/足球联赛排名
成都协会网站建设/足球联赛排名
admin2025/4/24 8:08:55【news】
简介成都协会网站建设,足球联赛排名,蓝田微网站建设,网站整合营销推广文章目录引言I 排序1.1 Dto1.2 新增节点的默认排序1.3 对分类进行上移和下移排序1.4 上移和下移排序对应的测试SQL引言 返回树结构菜单列表:https://blog.csdn.net/z929118967/article/details/128025800 I 排序 需求: 思路:交换排序字段…
成都协会网站建设,足球联赛排名,蓝田微网站建设,网站整合营销推广文章目录引言I 排序1.1 Dto1.2 新增节点的默认排序1.3 对分类进行上移和下移排序1.4 上移和下移排序对应的测试SQL引言
返回树结构菜单列表:https://blog.csdn.net/z929118967/article/details/128025800
I 排序
需求:
思路:交换排序字段…
文章目录
- 引言
- I 排序
- 1.1 Dto
- 1.2 新增节点的默认排序
- 1.3 对分类进行上移和下移排序
- 1.4 上移和下移排序对应的测试SQL
引言
返回树结构菜单列表:https://blog.csdn.net/z929118967/article/details/128025800
I 排序
需求:
思路:交换排序字段
1.1 Dto
@ApiModelProperty(value = "排序")@TableField("sort_num")private Integer sortNum;
1.2 新增节点的默认排序
/*用于新增时的排序字段*/private void setSortNum4create(TSysMenu menu){LambdaQueryWrapper<TSysMenu> queryWrapper = new LambdaQueryWrapper<>();if(menu.getParentId() == null){queryWrapper.isNull(TSysMenu::getParentId);}else{queryWrapper.eq(null != menu.getParentId(),TSysMenu::getParentId,menu.getParentId());}queryWrapper.orderByDesc(TSysMenu::getSortNum);var sortCate = tSysMenuMapper.selectOne(queryWrapper.last("limit 1"));if (sortCate!=null){menu.setSortNum(sortCate.getSortNum()+1);}else{menu.setSortNum(0);}}
1.3 对分类进行上移和下移排序
查询最近的兄弟节点进行交换
/*对分类进行排序*/public TSysCollegeCategory sortCategory(Long id,Integer type) throws Exception {if(id ==null){throw CommonException.create(ServerResponse.createByError("id不存在"));}var current = tSysCollegeCategoryMapper.selectById(id);if(current ==null){throw CommonException.create(ServerResponse.createByError("分类不存在"));}LambdaQueryWrapper<TSysCollegeCategory> queryWrapper = new LambdaQueryWrapper<>();// 检查ParentId为空的情况。if(current.getParentId() == null){queryWrapper.isNull(TSysCollegeCategory::getParentId);}else{queryWrapper.eq(null != current.getParentId(),TSysCollegeCategory::getParentId,current.getParentId());}if(type ==1){//上移queryWrapper.lt(TSysCollegeCategory::getSortNum,current.getSortNum()).orderByDesc(TSysCollegeCategory::getSortNum).last("limit 1");}else if(type ==2){//下移queryWrapper.gt(TSysCollegeCategory::getSortNum,current.getSortNum()).orderByAsc(TSysCollegeCategory::getSortNum).last("limit 1");}else{throw CommonException.create(ServerResponse.createByError("type类型错误"));}var next = tSyCollegeCategoryMapper.selectOne(queryWrapper);if(next !=null){var sort = current.getSortNum();current.setSortNum(next.getSortNum());next.setSortNum(sort);tSysCollegeCategoryMapper.updateById(current);tSysCollegeCategoryMapper.updateById(next);}return current;}
1.4 上移和下移排序对应的测试SQL
上移时,获取最近一个的排序字段
select * from t_organizations where sort_num<4 order by sort_num Desc;
下移时,获取最近的一个记录的排序字段
select * from t_organizations where sort_num>4 order by sort_num asc;