模板角色保存

This commit is contained in:
2025-12-12 11:26:27 +08:00
parent d20a0956c5
commit 860a5a72f5
4 changed files with 30 additions and 1 deletions

View File

@@ -17,6 +17,7 @@ import java.util.List;
/**
*
* 角色管理
*
* @author Administrator
*/
@RestController
@@ -29,6 +30,7 @@ public class RoleController {
/**
* 获取角色列表
* 权限标识: role:list
*
* @param pageDTO 分页信息
* @return 分页数据
*/
@@ -41,6 +43,7 @@ public class RoleController {
/**
* 获取角色对应的菜单
* 权限标识: role:menu
*
* @param id 角色id
* @param type 0管理端 1收银机
* @return 分页数据
@@ -54,6 +57,7 @@ public class RoleController {
/**
* 新增角色
* 权限标识: role:add
*
* @param roleAddDTO 角色信息
* @return 是否成功
*/
@@ -65,6 +69,7 @@ public class RoleController {
/**
* 权限编辑
*
* @param rolePermissionDTO 权限编辑
* @return 是否成功
*/
@@ -76,6 +81,7 @@ public class RoleController {
/**
* 编辑角色
* 权限标识: role:edit
*
* @param roleEditDTO 角色信息
* @return 是否成功
*/
@@ -88,6 +94,7 @@ public class RoleController {
/**
* 删除角色
* 权限标识: role:edit
*
* @param roleRemoveDTO 角色信息
* @return 是否成功
*/

View File

@@ -2,6 +2,9 @@ package com.czg.service.account.mapper;
import com.czg.account.entity.SysRolesMenus;
import com.mybatisflex.core.BaseMapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* 角色菜单关联 映射层。
@@ -11,4 +14,8 @@ import com.mybatisflex.core.BaseMapper;
*/
public interface SysRolesMenusMapper extends BaseMapper<SysRolesMenus> {
void saveByTemplate(
@Param("roleId") Long roleId,
@Param("rolesMenus") List<SysRolesMenus> rolesMenus
);
}

View File

@@ -1,6 +1,7 @@
package com.czg.service.account.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson2.JSONArray;
@@ -20,6 +21,7 @@ import com.czg.market.entity.SysRoleTemplate;
import com.czg.market.service.SysRoleTemplateService;
import com.czg.sa.StpKit;
import com.czg.service.account.mapper.SysRoleMapper;
import com.czg.service.account.mapper.SysRolesMenusMapper;
import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.query.QueryWrapper;
import com.mybatisflex.spring.service.impl.ServiceImpl;
@@ -46,6 +48,8 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
@Resource
private SysRolesMenusService sysRolesMenusService;
@Resource
private SysRolesMenusMapper sysRolesMenusMapper;
@Resource
private CashMenuService cashMenuService;
@Resource
@Lazy
@@ -253,6 +257,10 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
role.setCreateTime(null);
role.setId(null);
save(role);
List<SysRolesMenus> list = sysRolesMenusService.list(query().select(SysRolesMenus::getMenuId, SysRolesMenus::getType).eq(SysRolesMenus::getRoleId, item.getRoleId()));
if (CollUtil.isNotEmpty(list)) {
sysRolesMenusMapper.saveByTemplate(item.getRoleId(), list);
}
});
return true;
}

View File

@@ -4,4 +4,11 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.czg.service.account.mapper.SysRolesMenusMapper">
<insert id="saveByTemplate">
insert into sys_roles_menus (role_id, menu_id, type)
values
<foreach item="item" index="index" collection="rolesMenus" separator=",">
(#{roleId}, #{item.menuId}, #{item.type})
</foreach>
</insert>
</mapper>