diff --git a/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/AuthRoleController.java b/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/AuthRoleController.java index 742fed3..52fc8c5 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/AuthRoleController.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/controller/auth/AuthRoleController.java @@ -1,10 +1,12 @@ package com.glxp.sale.admin.controller.auth; +import cn.hutool.core.util.StrUtil; import com.github.pagehelper.PageInfo; import com.glxp.sale.admin.annotation.AuthRuleAnnotation; import com.glxp.sale.admin.entity.auth.AuthPermission; import com.glxp.sale.admin.entity.auth.AuthPermissionRule; import com.glxp.sale.admin.entity.auth.AuthRole; +import com.glxp.sale.admin.entity.basic.BasicBussinessTypeRoleEntity; import com.glxp.sale.admin.req.auth.AuthRoleAuthRequest; import com.glxp.sale.admin.req.auth.AuthRoleQueryRequest; import com.glxp.sale.admin.req.auth.AuthRoleSaveRequest; @@ -24,6 +26,7 @@ import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.validation.Valid; +import java.util.Arrays; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -221,4 +224,28 @@ public class AuthRoleController { } + @AuthRuleAnnotation("") + @GetMapping("/admin/auth/role/getBussinessTypeRole") + public BaseResponse getBussinessTypeRole(Long roleId){ + if (null == roleId) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + List data = authRoleService.getBussinessTypeRole(roleId); + return ResultVOUtils.success(data); + } + + //@AuthRuleAnnotation("") + @PostMapping("/admin/auth/role/updateBussinessTypeRole") + public BaseResponse updateBussinessTypeRole(Long roleId, String actions) { + if (null == roleId) { + return ResultVOUtils.error(ResultEnum.PARAM_VERIFY_FALL); + } + if (StrUtil.isNotBlank(actions)) { + String[] split = actions.split(","); + authRoleService.updateBussinessTypeRole(roleId, Arrays.asList(split)); + } + return ResultVOUtils.success(); + } + + } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/BasicBussinessTypeRoleDao.java b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/BasicBussinessTypeRoleDao.java new file mode 100644 index 0000000..8351413 --- /dev/null +++ b/api-admin/src/main/java/com/glxp/sale/admin/dao/basic/BasicBussinessTypeRoleDao.java @@ -0,0 +1,27 @@ +package com.glxp.sale.admin.dao.basic; + +import com.glxp.sale.admin.entity.basic.BasicBussinessTypeRoleEntity; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface BasicBussinessTypeRoleDao { + + public List getListByRoleId(@Param("roleId") Long roleId); + + /** + * 删除此角色下所有的扫码单据类型授权数据 + * + * @param roleId + */ + void deleteByRoleId(@Param("roleId") Long roleId); + + /** + * 插入授权数据 + * + * @param basicBussinessTypeRoleEntities + */ + void insert(@Param("basicBussinessTypeRoleEntities") List basicBussinessTypeRoleEntities); +} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/BasicBussinessTypeRoleEntity.java b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/BasicBussinessTypeRoleEntity.java new file mode 100644 index 0000000..046a64c --- /dev/null +++ b/api-admin/src/main/java/com/glxp/sale/admin/entity/basic/BasicBussinessTypeRoleEntity.java @@ -0,0 +1,19 @@ +package com.glxp.sale.admin.entity.basic; + +import lombok.Data; + +/** + * 扫码单据类型和角色关联表 + */ +@Data +public class BasicBussinessTypeRoleEntity { + + private Integer id; + + //角色id + private Long role_id; + + //业务类型 + private String action; + +} diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/auth/AuthRoleService.java b/api-admin/src/main/java/com/glxp/sale/admin/service/auth/AuthRoleService.java index 00155c2..dfe672c 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/auth/AuthRoleService.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/auth/AuthRoleService.java @@ -2,6 +2,7 @@ package com.glxp.sale.admin.service.auth; import com.glxp.sale.admin.entity.auth.AuthRole; +import com.glxp.sale.admin.entity.basic.BasicBussinessTypeRoleEntity; import com.glxp.sale.admin.req.auth.AuthRoleQueryRequest; import java.util.List; @@ -24,4 +25,19 @@ public interface AuthRoleService { boolean deleteById(Long id); + /** + * 查询角色扫码单据授权数据 + * + * @param roleId + * @return + */ + List getBussinessTypeRole(Long roleId); + + /** + * 更新角色扫码单据类型授权数据 + * + * @param roleId + * @param actions + */ + void updateBussinessTypeRole(Long roleId, List actions); } diff --git a/api-admin/src/main/java/com/glxp/sale/admin/service/auth/impl/AuthRoleServiceImpl.java b/api-admin/src/main/java/com/glxp/sale/admin/service/auth/impl/AuthRoleServiceImpl.java index aa20358..efb17fe 100644 --- a/api-admin/src/main/java/com/glxp/sale/admin/service/auth/impl/AuthRoleServiceImpl.java +++ b/api-admin/src/main/java/com/glxp/sale/admin/service/auth/impl/AuthRoleServiceImpl.java @@ -2,12 +2,15 @@ package com.glxp.sale.admin.service.auth.impl; import com.github.pagehelper.PageHelper; import com.glxp.sale.admin.dao.auth.AuthRoleDao; +import com.glxp.sale.admin.dao.basic.BasicBussinessTypeRoleDao; import com.glxp.sale.admin.entity.auth.AuthRole; +import com.glxp.sale.admin.entity.basic.BasicBussinessTypeRoleEntity; import com.glxp.sale.admin.req.auth.AuthRoleQueryRequest; import com.glxp.sale.admin.service.auth.AuthRoleService; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.ArrayList; import java.util.Date; import java.util.List; @@ -16,9 +19,12 @@ public class AuthRoleServiceImpl implements AuthRoleService { @Resource private AuthRoleDao authRoleDao; + @Resource + private BasicBussinessTypeRoleDao basicBussinessTypeRoleDao; /** * 查询列表 + * * @return */ @Override @@ -31,6 +37,7 @@ public class AuthRoleServiceImpl implements AuthRoleService { /** * 查询管理员页面的列表 + * * @param page * @param limit * @param status @@ -48,6 +55,7 @@ public class AuthRoleServiceImpl implements AuthRoleService { /** * 根据名称查询 + * * @param name * @return */ @@ -58,6 +66,7 @@ public class AuthRoleServiceImpl implements AuthRoleService { /** * 插入 + * * @param authRole * @return */ @@ -72,6 +81,7 @@ public class AuthRoleServiceImpl implements AuthRoleService { /** * 修改 + * * @param authRole * @return */ @@ -103,6 +113,7 @@ public class AuthRoleServiceImpl implements AuthRoleService { /** * 删除 + * * @param id * @return */ @@ -110,4 +121,24 @@ public class AuthRoleServiceImpl implements AuthRoleService { public boolean deleteById(Long id) { return authRoleDao.deleteById(id); } + + @Override + public List getBussinessTypeRole(Long roleId) { + return basicBussinessTypeRoleDao.getListByRoleId(roleId); + } + + @Override + public void updateBussinessTypeRole(Long roleId, List actions) { + //删除之前的扫码单据类型授权数据 + basicBussinessTypeRoleDao.deleteByRoleId(roleId); + //添加新的扫码单据数据类型 + List data = new ArrayList<>(actions.size()); + actions.forEach(action -> { + BasicBussinessTypeRoleEntity entity = new BasicBussinessTypeRoleEntity(); + entity.setRole_id(roleId); + entity.setAction(action); + data.add(entity); + }); + basicBussinessTypeRoleDao.insert(data); + } } diff --git a/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeRoleDao.xml b/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeRoleDao.xml new file mode 100644 index 0000000..e329a5e --- /dev/null +++ b/api-admin/src/main/resources/mybatis/mapper/basic/BussinessTypeRoleDao.xml @@ -0,0 +1,26 @@ + + + + + + + + delete + from basic_bussiness_type_role + where role_id = #{roleId} + + + + insert into basic_bussiness_type_role + (role_id, action) + values + + (#{item.role_id}, + #{item.action}) + + +