package com.bowintek.practice.controller.system; import com.bowintek.practice.filter.exception.BaseErrorEnum; import com.bowintek.practice.filter.exception.BaseException; import com.bowintek.practice.filter.exception.BaseResponse; import com.bowintek.practice.filter.exception.RespGenerstor; import com.bowintek.practice.services.service.AccountService; import com.bowintek.practice.services.service.system.RoleService; import com.bowintek.practice.vo.system.FunctionCodeModel; import com.bowintek.practice.vo.system.RoleFunctionCodeModel; import com.bowintek.practice.vo.system.RoleModel; import com.bowintek.practice.vo.user.UserInfoModel; import com.github.pagehelper.PageInfo; import lombok.Data; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.UUID; @RestController @RequestMapping("/api/system/role") public class RoleController { @Autowired private RoleService roleService; @Autowired private AccountService accountService; @GetMapping("/getList") public BaseResponse> getList(@RequestParam("page") int page, @RequestParam("rows") int rows, @RequestParam(required = false) String name, @RequestParam(required = false) Integer userTypeID) { return RespGenerstor.success(roleService.getList(page, rows, name, userTypeID)); } @GetMapping("getFunctionCodeTreeList") public BaseResponse> getFunctionCodeTreeList(String roleID, @RequestParam("userTypeID") Integer userTypeID) { return RespGenerstor.success(roleService.getFunctionCodeTreeList(roleID, userTypeID)); } @GetMapping("get") public BaseResponse get(@RequestParam(required = false) String id) { RoleModel data = roleService.get(id); if (data == null) { data = new RoleModel(); data.roleID = UUID.randomUUID().toString(); } return RespGenerstor.success(data); } @PostMapping("/save") public BaseResponse saveManager(@RequestBody RequestRoleVo data) { return RespGenerstor.success(roleService.save(data.data, null, data.roleFunctionCodeList, accountService.getLoginUserID())); } @Data public static class RequestRoleVo { public RoleModel data; public List roleFunctionCodeList; } @GetMapping("/getRoleUserList") public BaseResponse> getRoleUserList(@RequestParam("page") int page, @RequestParam("rows") int rows, @RequestParam(required = false) String roleID, @RequestParam(required = false) String name, @RequestParam(required = false) String loginID) { return RespGenerstor.success(roleService.getRoleUserList(page, rows, roleID, name, loginID)); } @PostMapping("/deleteRoleUser") public BaseResponse deleteRoleUser(@RequestBody RequestDeleteRoleUserVo data) { Integer result = roleService.deleteRoleUser(data.roleID, data.userIds); if (result <= 0) throw new BaseException(BaseErrorEnum.DELETE_NOT_DATA_ERROR); return RespGenerstor.success(1); } @Data public static class RequestDeleteRoleUserVo { public String roleID; public List userIds; } @PostMapping("/delete") public BaseResponse delete(@RequestBody List roleIds) { Integer result = roleService.deleteRole(roleIds); if (result <= 0) throw new BaseException(BaseErrorEnum.DELETE_NOT_DATA_ERROR); return RespGenerstor.success(1); } @GetMapping("/getUserForSettingList") public BaseResponse> getUserForSettingList(@RequestParam("userType") Integer userType, @RequestParam("roleID") String roleID) { return RespGenerstor.success(roleService.getUserForSettingList(userType, roleID)); } @PostMapping("/saveRoleUser") public BaseResponse saveRoleUser(@RequestBody RequestSaveRoleUserVo data) { return RespGenerstor.success(roleService.saveRoleUser(data.roleID,data.userIds)); } @Data public static class RequestSaveRoleUserVo { public String roleID; public List userIds; } }