From 0facef68a06fb36cc1ac12730b076cead36348f9 Mon Sep 17 00:00:00 2001 From: luofl <1442745593@qq.com> Date: 星期日, 23 二月 2025 16:12:02 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Banner.java | 49 + springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/WorkOrderItemConfig.java | 88 + springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemMenuService.java | 19 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/EditSystemRole.java | 22 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ProblemTypeController.java | 118 ++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemUserServiceImpl.java | 35 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/ProblemTypeMapper.java | 17 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleMenuServiceImpl.java | 15 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ProblemTypeServiceImpl.java | 26 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemMenuMapper.xml | 7 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IWorkOrderItemConfigService.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMenuMapper.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/MessageNotification.java | 87 + springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/ProblemType.java | 40 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Department.java | 50 + springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/WorkOrderItemConfigController.java | 42 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/LoginVo.java | 18 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleService.java | 23 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/ProblemTypeMapper.xml | 14 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserList.java | 28 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleList.java | 20 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/MessageNotificationMapper.java | 18 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMapper.java | 25 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/DepartmentServiceImpl.java | 15 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/TokenVo.java | 18 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRole.java | 38 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/AddSystemRole.java | 20 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMapper.xml | 15 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/R.java | 2 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/MessageNotificationController.java | 66 + springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemUser.java | 140 +++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemUserMapper.xml | 49 + springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sangeshenbian/SystemUserVo.java | 141 +++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleMenuService.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/WorkOrderItemConfigMapper.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java | 28 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemMenuServiceImpl.java | 41 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemMenuController.java | 35 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/DepartmentMapper.java | 11 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java | 9 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/controller/BaseController.java | 22 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/BannerServiceImpl.java | 26 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/BannerController.java | 107 ++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemUserService.java | 23 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IProblemTypeService.java | 15 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRoleMenu.java | 24 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemUserMapper.java | 27 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/WorkOrderItemConfigMapper.xml | 7 springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/sangeshenbian/SystemUserService.java | 26 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IDepartmentService.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemRoleController.java | 132 ++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/DepartmentController.java | 128 ++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserListVo.java | 30 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMenuMapper.xml | 7 springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java | 5 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleServiceImpl.java | 35 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemMenu.java | 50 + springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java | 14 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/WorkOrderItemConfigServiceImpl.java | 15 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/BannerMapper.java | 17 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/MessageNotificationMapper.xml | 42 springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java | 18 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java | 235 +++++ springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleListVo.java | 18 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/DepartmentMapper.xml | 7 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleInfo.java | 22 springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java | 95 + springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IBannerService.java | 15 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemMenuMapper.java | 11 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/MessageNotificationList.java | 28 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/BannerMapper.xml | 14 springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IMessageNotificationService.java | 16 72 files changed, 2,650 insertions(+), 25 deletions(-) diff --git a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java index 34e758c..352759b 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java +++ b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/api/LoginApi.java @@ -318,4 +318,18 @@ LoginReturnVO loginReturnVO = loginService.loginBatteryUser(account, password,appid); return R.ok(loginReturnVO); } + + + + /** + * 三个身边后台用户登录 + * @return 登录结果 + */ + @OperLog(operModul = "三个身边后台用户登录 ") + @PostMapping("/loginThreeAround") + public R<LoginReturnVO> loginThreeAround(@RequestParam("userId") Integer userId) { + LoginReturnVO loginReturnVO = loginService.loginThreeAround(userId); + return R.ok(loginReturnVO); + } + } diff --git a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java index 4551207..da25556 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/LoginService.java @@ -157,4 +157,9 @@ * @return 登录结果 */ LoginReturnVO loginBatteryUser(String account, String password,String appid); + + /** + * 三个身边后台用户登录 + */ + LoginReturnVO loginThreeAround(Integer userId); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java index 1028cd9..4ece85c 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java +++ b/springcloud_k8s_panzhihuazhihuishequ/auth/src/main/java/com/panzhihua/auth/service/impl/LoginServiceImpl.java @@ -380,4 +380,22 @@ loginReturnVO.setRefreshToken(refeshToken); return loginReturnVO; } + + + + /** + * 三个身边后台用户登录 + */ + @Override + public LoginReturnVO loginThreeAround(Integer userId) { + LoginUserInfoVO loginUser = new LoginUserInfoVO(); + loginUser.setUserId(userId.longValue()); + loginUser.setType(21); + String token = JWTTokenUtil.generateToken(loginUser); + String refeshToken = JWTTokenUtil.generateRefeshToken(loginUser); + LoginReturnVO loginReturnVO = new LoginReturnVO(); + loginReturnVO.setToken(token); + loginReturnVO.setRefreshToken(refeshToken); + return loginReturnVO; + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/controller/BaseController.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/controller/BaseController.java index 3d844a2..ab5318e 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/controller/BaseController.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/controller/BaseController.java @@ -4,6 +4,7 @@ import javax.servlet.http.HttpServletResponse; import com.panzhihua.common.model.vos.community.ComActVO; +import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo; import com.panzhihua.common.utlis.StringUtils; import org.springframework.util.ObjectUtils; import org.springframework.web.context.request.RequestContextHolder; @@ -200,5 +201,24 @@ LoginUserInfoVO loginUserInfoVO = JSONObject.parseObject(userInfo, LoginUserInfoVO.class); return loginUserInfoVO; } - + + + /** + * 获取三个身边管理后台登录用户信息 + * @return + */ + @SneakyThrows + public SystemUserVo getLoginUserInfoSanGeShenBian() { + HttpServletRequest request = this.getRequest(); + String userInfo = request.getHeader(TokenConstant.TOKEN_USERINFO); + boolean empty = ObjectUtils.isEmpty(userInfo); + if (empty) { + return null; + } + byte[] bytes = AES.parseHexStr2Byte(userInfo); + byte[] decrypt = AES.decrypt(bytes, Constants.AES_KEY); + userInfo = new String(decrypt); + SystemUserVo loginUserInfoVO = JSONObject.parseObject(userInfo, SystemUserVo.class); + return loginUserInfoVO; + } } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/R.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/R.java index 1e17bb6..1b86ffa 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/R.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/R.java @@ -3,6 +3,7 @@ import java.io.Serializable; import java.lang.reflect.Field; +import io.swagger.annotations.ApiModel; import org.springframework.util.ObjectUtils; import com.panzhihua.common.constants.Constants; @@ -15,6 +16,7 @@ * @author HUANGHONGFA */ @Data +@ApiModel public class R<T> implements Serializable { /** * 成功 diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sangeshenbian/SystemUserVo.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sangeshenbian/SystemUserVo.java new file mode 100644 index 0000000..f4c2004 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/model/vos/sangeshenbian/SystemUserVo.java @@ -0,0 +1,141 @@ +package com.panzhihua.common.model.vos.sangeshenbian; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; +import java.util.Set; + +/** + * @author zhibing.pu + * @Date 2025/2/23 0:28 + */ +@Data +public class SystemUserVo { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value = "数据ID") + private Integer id; + /** + * 姓名 + */ + @TableField("name") + @ApiModelProperty(value = "姓名", required = true) + private String name; + /** + * 手机号 + */ + @TableField("phone") + @ApiModelProperty(value = "手机号", required = true) + private String phone; + /** + * 密码 + */ + @TableField("password") + @ApiModelProperty(value = "密码", required = true) + private String password; + /** + * 一级单位id + */ + @TableField("one_department_id") + @ApiModelProperty(value = "一级单位id", required = true) + private Integer oneDepartmentId; + /** + * 二级单位id + */ + @TableField("two_department_id") + @ApiModelProperty(value = "二级单位id") + private Integer twoDepartmentId; + /** + * 三级单位id + */ + @TableField("three_department_id") + @ApiModelProperty(value = "三级单位id") + private Integer threeDepartmentId; + /** + * 四级单位id + */ + @TableField("four_department_id") + @ApiModelProperty(value = "四级单位id") + private Integer fourDepartmentId; + /** + * 是否是管理员(0=否,1=是) + */ + @TableField("is_admin") + @ApiModelProperty(value = "是否是管理员(0=否,1=是)", required = true) + private Integer isAdmin; + /** + * 职位id + */ + @TableField("system_post_id") + @ApiModelProperty(value = "职位id", required = true) + private Integer systemPostId; + /** + * 角色id + */ + @TableField("system_role_id") + @ApiModelProperty(value = "角色id", required = true) + private Integer systemRoleId; + /** + * 账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号) + */ + @TableField("account_level") + @ApiModelProperty(value = "账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号)", required = true) + private Integer accountLevel; + /** + * 所属区县 + */ + @TableField("districts") + @ApiModelProperty(value = "所属区县") + private String districts; + /** + * 区县编号 + */ + @TableField("districts_code") + @ApiModelProperty(value = "区县编号") + private String districtsCode; + /** + * 街道 + */ + @TableField("street") + @ApiModelProperty(value = "街道") + private String street; + /** + * 街道编号 + */ + @TableField("street_code") + @ApiModelProperty(value = "街道编号") + private String streetCode; + /** + * 社区 + */ + @TableField("community") + @ApiModelProperty(value = "社区") + private String community; + /** + * 社区编号 + */ + @TableField("community_code") + @ApiModelProperty(value = "社区编号") + private String communityCode; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + @TableField("status") + private Integer status; + /** + * 添加时间 + */ + @TableField("create_time") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime createTime; + + @ApiModelProperty("权限集合") + private Set<String> permissions; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java index 559d4a0..d543be6 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/auth/TokenService.java @@ -1,5 +1,6 @@ package com.panzhihua.common.service.auth; +import com.panzhihua.common.model.vos.LoginReturnVO; import com.panzhihua.common.model.vos.LoginUserInfoVO; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.GetMapping; @@ -183,4 +184,12 @@ */ @PostMapping("/loginBatteryUser") R loginBatteryUser(@RequestParam("account") String account, @RequestParam("password") String password,@RequestParam("appid")String appid); + + + /** + * 三个身边后台用户登录 + * @return 登录结果 + */ + @PostMapping("/loginThreeAround") + R<LoginReturnVO> loginThreeAround(@RequestParam("userId") Integer userId); } diff --git a/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/sangeshenbian/SystemUserService.java b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/sangeshenbian/SystemUserService.java new file mode 100644 index 0000000..655ded1 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/common/src/main/java/com/panzhihua/common/service/sangeshenbian/SystemUserService.java @@ -0,0 +1,26 @@ +package com.panzhihua.common.service.sangeshenbian; + +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestParam; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/23 0:14 + */ +@FeignClient(name = "huacheng-sangeshenbian") +public interface SystemUserService { + + /** + * + * @param id + * 用户的ID + * @return 用户所有角色 + */ + @PostMapping("/sangeshenbian/sangeshenbian/getUserById") + R<SystemUserVo> getUserById(@RequestParam("id") String id); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/BannerController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/BannerController.java new file mode 100644 index 0000000..cf0cb03 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/BannerController.java @@ -0,0 +1,107 @@ +package com.panzhihua.sangeshenbian.api; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.Banner; +import com.panzhihua.sangeshenbian.model.ProblemType; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.service.IBannerService; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:46 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/banner") +public class BannerController extends BaseController { + + @Resource + private IBannerService bannerService; + + @Resource + private ISystemUserService systemUserService; + + + @GetMapping("/list") + @ApiOperation(value = "获取banner列表", tags = {"三个身边后台-banner管理"}) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取banner列表") + public R<IPage<Banner>> list(String name, Integer pageNum, Integer pageSize){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id); + if(systemUser.getAccountLevel() != 1){ + return R.ok(); + } + IPage<Banner> list = bannerService.list(name, pageNum, pageSize); + return R.ok(list); + } + + + @PostMapping("/add") + @ApiOperation(value = "添加banner", tags = {"三个身边后台-banner管理"}) + @OperLog(operModul = "三个身边后台",operType = 1, businessType = "添加banner") + public R<Banner> add(@RequestBody Banner banner){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id); + if(systemUser.getAccountLevel() != 1){ + return R.fail("添加失败"); + } + banner.setDel(0); + banner.setCreateTime(LocalDateTime.now()); + bannerService.save(banner); + return R.ok(banner); + } + + + @PostMapping("/edit") + @ApiOperation(value = "编辑banner", tags = {"三个身边后台-banner管理"}) + @OperLog(operModul = "三个身边后台",operType = 2, businessType = "编辑banner") + public R<Banner> edit(@RequestBody Banner banner){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id); + if(systemUser.getAccountLevel() != 1){ + return R.fail("编辑失败"); + } + bannerService.updateById(banner); + return R.ok(banner); + } + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除banner", tags = {"三个身边后台-banner管理"}) + @OperLog(operModul = "三个身边后台",operType = 3, businessType = "删除banner") + public R delete(@PathVariable("id") Integer id){ + Integer id1 = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id1); + if(systemUser.getAccountLevel() != 1){ + return R.fail("删除失败"); + } + Banner banner = new Banner(); + banner.setId(id); + banner.setDel(1); + bannerService.updateById(banner); + return R.ok(); + } + + @GetMapping("/getBannerInfo/{id}") + @ApiOperation(value = "获取banner信息", tags = {"三个身边后台-banner管理"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "bannerID", required = true, dataType = "Integer") + }) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取banner信息") + public R<Banner> getBannerInfo(@PathVariable("id") Integer id){ + Banner banner = bannerService.getById(id); + return R.ok(banner); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/DepartmentController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/DepartmentController.java new file mode 100644 index 0000000..2b5e0f5 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/DepartmentController.java @@ -0,0 +1,128 @@ +package com.panzhihua.sangeshenbian.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.Department; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.service.IDepartmentService; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:44 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/department") +public class DepartmentController { + + @Resource + private IDepartmentService departmentService; + + @Resource + private ISystemUserService systemUserService; + + + @GetMapping("/list") + @ApiOperation(value = "获取单位列表", tags = {"三个身边后台-用户管理"}) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取单位列表") + public R<List<Department>> list(){ + List<Department> list = departmentService.list(); + List<Department> departmentList1 = list.stream().filter(s -> s.getPid() == 0).collect(Collectors.toList()); + for (Department department : departmentList1) { + List<Department> departmentList2 = list.stream().filter(s -> s.getPid().equals(department.getId())).collect(Collectors.toList()); + for (Department department1 : departmentList2) { + List<Department> departmentList3 = list.stream().filter(s -> s.getPid().equals(department1.getId())).collect(Collectors.toList()); + for (Department department2 : departmentList3) { + List<Department> departmentList4 = list.stream().filter(s -> s.getPid().equals(department2.getId())).collect(Collectors.toList()); + department2.setChild(departmentList4); + } + department1.setChild(departmentList3); + } + department.setChild(departmentList2); + } + return R.ok(departmentList1); + } + + + + @PostMapping("/add") + @ApiOperation(value = "添加单位信息", tags = {"三个身边后台-用户管理"}) + @OperLog(operModul = "三个身边后台",operType = 1, businessType = "添加单位信息") + public R add(@RequestBody Department department){ + if(null == department.getPid()){ + department.setPid(0); + } + int count = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getPid, department.getPid()).eq(Department::getName, department.getName())); + if(0 < count){ + return R.fail("单位名称重复。"); + } + Department department1 = departmentService.getById(department.getPid()); + if(null != department1 && 4 == department1.getTier()){ + return R.fail("层级超过4级,保存失败。"); + } + department.setTier(null == department1 ? 1 : department1.getTier() + 1); + departmentService.save(department); + return R.ok(); + } + + + @PostMapping("/edit") + @ApiOperation(value = "编辑单位信息", tags = {"三个身边后台-用户管理"}) + @OperLog(operModul = "三个身边后台",operType = 2, businessType = "编辑单位信息") + public R edit(@RequestBody Department department){ + if(null == department.getPid()){ + department.setPid(0); + } + int count = departmentService.count(new LambdaQueryWrapper<Department>().eq(Department::getPid, department.getPid()) + .eq(Department::getName, department.getName()).ne(Department::getId, department.getId())); + if(0 < count){ + return R.fail("单位名称重复。"); + } + Department department1 = departmentService.getById(department.getPid()); + if(null != department1 && 4 == department1.getTier()){ + return R.fail("层级超过4级,保存失败。"); + } + department.setTier(null == department1 ? 1 : department1.getTier() + 1); + departmentService.updateById(department); + return R.ok(); + } + + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除单位信息", tags = {"三个身边后台-用户管理"}) + @OperLog(operModul = "三个身边后台",operType = 3, businessType = "删除单位信息") + public R delete(@PathVariable("id") Integer id){ + int count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getOneDepartmentId, id).or().eq(SystemUser::getTwoDepartmentId, id) + .or().eq(SystemUser::getThreeDepartmentId, id).or().eq(SystemUser::getFourDepartmentId, id).ne(SystemUser::getStatus, 3)); + if(0 < count){ + return R.fail("该单位已被使用,删除失败。"); + } + departmentService.removeById(id); + return R.ok(); + } + + + + @GetMapping("/getDepartmentList/{tier}") + @ApiOperation(value = "根据单位层级查询单位数据", tags = {"三个身边后台-用户管理"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "tier", value = "单位层级", required = true, dataType = "Integer") + }) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "根据单位层级查询单位数据") + public R<List<Department>> getDepartmentList(@PathVariable("tier") Integer tier){ + List<Department> list = departmentService.list(new LambdaQueryWrapper<Department>().eq(Department::getTier, tier)); + return R.ok(list); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/MessageNotificationController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/MessageNotificationController.java new file mode 100644 index 0000000..da78384 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/MessageNotificationController.java @@ -0,0 +1,66 @@ +package com.panzhihua.sangeshenbian.api; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.MessageNotification; +import com.panzhihua.sangeshenbian.service.IMessageNotificationService; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import com.panzhihua.sangeshenbian.warpper.MessageNotificationList; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +/** + * @author zhibing.pu + * @Date 2025/2/23 3:05 + */ + +@Api +@RestController +@RequestMapping("/sangeshenbian/messageNotification") +public class MessageNotificationController extends BaseController { + + @Resource + private IMessageNotificationService messageNotificationService; + + @Resource + private ISystemUserService systemUserService; + + @GetMapping("/list") + @ApiOperation(value = "获取消息通知列表", tags = {"三个身边后台-消息通知"}) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取消息通知列表") + public R<IPage<MessageNotification>> list(MessageNotificationList query) { + IPage<MessageNotification> page = messageNotificationService.list(query); + return R.ok(page); + } + + + @PutMapping("/read/{id}") + @ApiOperation(value = "标记为已读", tags = {"三个身边后台-消息通知"}) + @OperLog(operModul = "三个身边后台",operType = 2, businessType = "标记为已读") + public R read(@PathVariable("id") Integer id) { + MessageNotification messageNotification = messageNotificationService.getById(id); + if(messageNotification.getReadStatus()==1){ + return R.fail("不能重复操作"); + } + messageNotification.setReadStatus(1); + messageNotificationService.updateById(messageNotification); + return R.ok(); + } + + + @GetMapping("/unreadCount") + @ApiOperation(value = "获取未读数量", tags = {"三个身边后台-消息通知"}) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取未读数量") + public R unreadCount() { + Integer count = messageNotificationService.lambdaQuery() + .eq(MessageNotification::getReadStatus, 0) + .eq(MessageNotification::getUndertakerUserId, getUserId()) + .count(); + return R.ok(count); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ProblemTypeController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ProblemTypeController.java new file mode 100644 index 0000000..a35b191 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/ProblemTypeController.java @@ -0,0 +1,118 @@ +package com.panzhihua.sangeshenbian.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.ProblemType; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.service.IProblemTypeService; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.ArrayList; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:27 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/problemType") +public class ProblemTypeController extends BaseController { + + @Resource + private IProblemTypeService problemTypeService; + + @Resource + private ISystemUserService systemUserService; + + + + + @GetMapping("/list") + @ApiOperation(value = "获取问题类型列表", tags = {"三个身边后台-问题类型管理"}) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取问题类型列表") + public R<IPage<ProblemType>> list(String name, Integer pageNum, Integer pageSize){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id); + if(systemUser.getAccountLevel() != 1){ + return R.ok(); + } + IPage<ProblemType> list = problemTypeService.list(name, pageNum, pageSize); + return R.ok(list); + } + + + @PostMapping("/add") + @ApiOperation(value = "添加问题类型", tags = {"三个身边后台-问题类型管理"}) + @OperLog(operModul = "三个身边后台",operType = 1, businessType = "添加问题类型") + public R add(@RequestBody ProblemType problemType){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id); + if(systemUser.getAccountLevel() != 1){ + return R.fail("添加失败"); + } + int count = problemTypeService.count(new LambdaQueryWrapper<ProblemType>().eq(ProblemType::getName, problemType.getName()).eq(ProblemType::getDel, 0)); + if(0 < count){ + return R.fail("该问题类型已存在"); + } + problemType.setDel(0); + problemType.setCreateTime(LocalDateTime.now()); + problemTypeService.save(problemType); + return R.ok(); + } + + + @PostMapping("/edit") + @ApiOperation(value = "编辑问题类型", tags = {"三个身边后台-问题类型管理"}) + @OperLog(operModul = "三个身边后台",operType = 2, businessType = "编辑问题类型") + public R edit(@RequestBody ProblemType problemType){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(id); + if(systemUser.getAccountLevel() != 1){ + return R.fail("编辑失败"); + } + int count = problemTypeService.count(new LambdaQueryWrapper<ProblemType>().eq(ProblemType::getName, problemType.getName()).eq(ProblemType::getDel, 0).ne(ProblemType::getId, problemType.getId())); + if(0 < count){ + return R.fail("该问题类型已存在"); + } + problemTypeService.updateById(problemType); + return R.ok(); + } + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除问题类型", tags = {"三个身边后台-问题类型管理"}) + @OperLog(operModul = "三个身边后台",operType = 3, businessType = "删除问题类型") + public R delete(@PathVariable("id") Integer id){ + Integer userid = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser systemUser = systemUserService.getById(userid); + if(systemUser.getAccountLevel() != 1){ + return R.fail("删除失败"); + } + ProblemType problemType = new ProblemType(); + problemType.setId(id); + problemType.setDel(1); + problemTypeService.updateById(problemType); + return R.ok(); + } + + @GetMapping("/getProblemTypeInfo/{id}") + @ApiOperation(value = "获取问题类型信息", tags = {"三个身边后台-问题类型管理"}) + @ApiImplicitParams({ + @ApiImplicitParam(name = "id", value = "问题类型ID", required = true, dataType = "Integer") + }) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取问题类型信息") + public R<ProblemType> getProblemTypeInfo(@PathVariable("id") Integer id){ + ProblemType problemType = problemTypeService.getById(id); + return R.ok(problemType); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemMenuController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemMenuController.java new file mode 100644 index 0000000..d08876d --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemMenuController.java @@ -0,0 +1,35 @@ +package com.panzhihua.sangeshenbian.api; + +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.SystemMenu; +import com.panzhihua.sangeshenbian.service.ISystemMenuService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/23 1:22 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/systemMenu") +public class SystemMenuController { + + @Resource + private ISystemMenuService systemMenuService; + + @GetMapping("/getSystemMenuList") + @ApiOperation(value = "获取菜单列表", tags = {"三个身边后台-角色管理"}) + @OperLog(operModul = "三个身边后台",operType = 0, businessType = "获取菜单列表") + public R<List<SystemMenu>> getSystemMenuList(){ + return R.ok(systemMenuService.getSystemMenuList()); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemRoleController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemRoleController.java new file mode 100644 index 0000000..881f213 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemRoleController.java @@ -0,0 +1,132 @@ +package com.panzhihua.sangeshenbian.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.SystemRole; +import com.panzhihua.sangeshenbian.model.SystemRoleMenu; +import com.panzhihua.sangeshenbian.service.ISystemRoleMenuService; +import com.panzhihua.sangeshenbian.service.ISystemRoleService; +import com.panzhihua.sangeshenbian.warpper.*; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:41 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/systemRole") +public class SystemRoleController extends BaseController { + + @Resource + private ISystemRoleService systemRoleService; + + @Resource + private ISystemRoleMenuService systemRoleMenuService; + + + + @GetMapping("/list") + @ApiOperation(value = "获取列表数据", tags = {"三个身边后台-角色管理"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取角色列表数据") + public R<IPage<SystemRoleListVo>> list(SystemRoleList systemRoleList){ + IPage<SystemRoleListVo> list = systemRoleService.list(systemRoleList); + return R.ok(list); + } + + + + @PostMapping("/add") + @ApiOperation(value = "添加角色", tags = {"三个身边后台-角色管理"}) + @OperLog(operModul = "三个身边后台",operType = 1,businessType = "添加角色") + public R add(@RequestBody AddSystemRole addSystemRole){ + int count = systemRoleService.count(new LambdaQueryWrapper<SystemRole>().eq(SystemRole::getDel, 0).eq(SystemRole::getName, addSystemRole.getName())); + if(0 < count){ + return R.fail("该角色名称已存在"); + } + SystemRole systemRole = new SystemRole(); + systemRole.setName(addSystemRole.getName()); + systemRole.setDel(0); + systemRole.setCreateTime(LocalDateTime.now()); + systemRoleService.save(systemRole); + //添加角色菜单权限 + List<Integer> systemMenuIds = addSystemRole.getSystemMenuIds(); + for (Integer systemMenuId : systemMenuIds) { + SystemRoleMenu systemRoleMenu = new SystemRoleMenu(); + systemRoleMenu.setSystemRoleId(systemRole.getId()); + systemRoleMenu.setSystemMenuId(systemMenuId); + systemRoleMenuService.save(systemRoleMenu); + } + return R.ok(); + } + + @PostMapping("/edit") + @ApiOperation(value = "编辑角色", tags = {"三个身边后台-角色管理"}) + @OperLog(operModul = "三个身边后台",operType = 2,businessType = "编辑角色") + public R edit(@RequestBody EditSystemRole editSystemRole){ + int count = systemRoleService.count(new LambdaQueryWrapper<SystemRole>().eq(SystemRole::getDel, 0) + .eq(SystemRole::getName, editSystemRole.getName()).ne(SystemRole::getId, editSystemRole.getId())); + if(0 < count){ + return R.fail("该角色名称已存在"); + } + SystemRole systemRole = systemRoleService.getById(editSystemRole.getId()); + if(null == systemRole){ + return R.fail("无效的角色数据"); + } + systemRole.setName(editSystemRole.getName()); + systemRoleService.updateById(systemRole); + //添加角色菜单权限 + systemRoleMenuService.remove(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, editSystemRole.getId())); + List<Integer> systemMenuIds = editSystemRole.getSystemMenuIds(); + for (Integer systemMenuId : systemMenuIds) { + SystemRoleMenu systemRoleMenu = new SystemRoleMenu(); + systemRoleMenu.setSystemRoleId(systemRole.getId()); + systemRoleMenu.setSystemMenuId(systemMenuId); + systemRoleMenuService.save(systemRoleMenu); + } + return R.ok(); + } + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除角色", tags = {"三个身边后台-角色管理"}) + @OperLog(operModul = "三个身边后台",operType = 3,businessType = "删除角色") + public R delete(@PathVariable("id") Integer id){ + SystemRole systemRole = systemRoleService.getById(id); + systemRole.setDel(1); + systemRoleService.updateById(systemRole); + //删除角色菜单权限 + systemRoleMenuService.remove(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, id)); + return R.ok(); + } + + + + @GetMapping("/getSystemRoleInfo/{id}") + @ApiOperation(value = "获取角色详情", tags = {"三个身边后台-角色管理"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取角色详情") + public R<SystemRoleInfo> getSystemRoleInfo(@PathVariable("id") Integer id){ + SystemRole systemRole = systemRoleService.getById(id); + if(null == systemRole){ + return R.fail("无效的角色数据"); + } + + List<SystemRoleMenu> list = systemRoleMenuService.list(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, id)); + SystemRoleInfo systemRoleInfo = new SystemRoleInfo(); + systemRoleInfo.setId(systemRole.getId()); + systemRoleInfo.setName(systemRoleInfo.getName()); + systemRoleInfo.setSystemMenuIds(list.stream().map(SystemRoleMenu::getSystemMenuId).collect(Collectors.toList())); + return R.ok(systemRoleInfo); + } + +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java new file mode 100644 index 0000000..7ee4de7 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/SystemUserController.java @@ -0,0 +1,235 @@ +package com.panzhihua.sangeshenbian.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.panzhihua.common.constants.SecurityConstants; +import com.panzhihua.common.controller.BaseController; +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.dtos.PageBaseDTO; +import com.panzhihua.common.model.vos.LoginReturnVO; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo; +import com.panzhihua.common.service.auth.TokenService; +import com.panzhihua.sangeshenbian.model.SystemMenu; +import com.panzhihua.sangeshenbian.model.SystemRoleMenu; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.service.ISystemMenuService; +import com.panzhihua.sangeshenbian.service.ISystemRoleMenuService; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import com.panzhihua.sangeshenbian.warpper.LoginVo; +import com.panzhihua.sangeshenbian.warpper.SystemUserList; +import com.panzhihua.sangeshenbian.warpper.SystemUserListVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.beans.BeanUtils; +import org.springframework.data.redis.core.RedisTemplate; +import org.springframework.util.ObjectUtils; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import java.time.LocalDateTime; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.concurrent.TimeUnit; +import java.util.stream.Collectors; + +/** + * @author zhibing.pu + * @Date 2025/2/18 22:30 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/systemUser") +public class SystemUserController extends BaseController { + + @Resource + private ISystemUserService systemUserService; + + @Resource + private RedisTemplate redisTemplate; + + @Resource + private TokenService tokenService; + + private final Integer max_err = 5; + + @Resource + private ISystemRoleMenuService systemRoleMenuService; + + @Resource + private ISystemMenuService systemMenuService; + + + + + + @PostMapping("/login") + @ApiOperation(value = "登录", tags = {"三个身边后台-登录"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "登录") + public R<LoginReturnVO> login(@RequestBody LoginVo vo){ + String key = "login:" + vo.getPhone(); + Integer size = (Integer) redisTemplate.opsForValue().get(key); + if(null != size && max_err.equals(size)){ + return R.fail("连续登录失败,请稍后重试。"); + } + if(null == size){ + size = 0; + } + SystemUser systemUser = systemUserService.getOne(new LambdaQueryWrapper<SystemUser>() + .eq(SystemUser::getPhone, vo.getPhone()).ne(SystemUser::getStatus, 3)); + if(null == systemUser){ + size++; + redisTemplate.opsForValue().set(key, size, 5, TimeUnit.MINUTES); + return R.fail("登录失败,手机号/密码错误。"); + } + if(!vo.getPassword().equals(systemUser.getPassword())){ + size++; + redisTemplate.opsForValue().set(key, size, 5, TimeUnit.MINUTES); + return R.fail("登录失败,手机号/密码错误。"); + } + if(2 == systemUser.getStatus()){ + return R.fail("当前账号已冻结。"); + } + //创建token + R<LoginReturnVO> reult = tokenService.loginThreeAround(systemUser.getId()); + redisTemplate.delete(key); + return reult; + } + + + @PostMapping("logout") + @ApiOperation(value = "退出登录", tags = {"三个身边后台-登录"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "退出登录") + public R login() { + String token = this.getToken(); + if (ObjectUtils.isEmpty(token)) { + return R.ok(); + } + return tokenService.logout(token); + } + + + @GetMapping("/list") + @ApiOperation(value = "获取列表数据", tags = {"三个身边管理后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取人员管理列表数据") + public R<IPage<SystemUserListVo>> list(SystemUserList query){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser user = systemUserService.getById(id); + IPage<SystemUserListVo> list = systemUserService.list(user.getAccountLevel(), query); + return R.ok(list); + } + + + + @PostMapping("/add") + @ApiOperation(value = "添加人员", tags = {"三个身边管理后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 1,businessType = "添加人员") + public R add(@RequestBody SystemUser systemUser){ + Integer id = this.getLoginUserInfoSanGeShenBian().getId(); + SystemUser user = systemUserService.getById(id); + if(2 == user.getAccountLevel() && 1 == systemUser.getAccountLevel()){ + return R.fail("不能添加市级账号"); + } + if(3 == user.getAccountLevel() && 3 < systemUser.getAccountLevel()){ + return R.fail("不能添加区县和市级账号"); + } + if(4 == user.getAccountLevel() && 4 < systemUser.getAccountLevel()){ + return R.fail("不能添加街道、区县和市级账号"); + } + int count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getPhone, systemUser.getPhone()).ne(SystemUser::getStatus, 3)); + if(0 < count){ + return R.fail("手机号重复。"); + } + systemUser.setStatus(1); + systemUser.setCreateTime(LocalDateTime.now()); + systemUserService.save(systemUser); + return R.ok(); + } + + + @PostMapping("/edit") + @ApiOperation(value = "编辑人员", tags = {"三个身边后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 2,businessType = "编辑人员") + public R edit(@RequestBody SystemUser systemUser){ + int count = systemUserService.count(new LambdaQueryWrapper<SystemUser>().eq(SystemUser::getPhone, systemUser.getPhone()) + .ne(SystemUser::getStatus, 3).ne(SystemUser::getId, systemUser.getId())); + if(0 < count){ + return R.fail("手机号重复。"); + } + systemUser.setStatus(1); + systemUser.setCreateTime(LocalDateTime.now()); + systemUserService.updateById(systemUser); + return R.ok(); + } + + + @DeleteMapping("/delete/{id}") + @ApiOperation(value = "删除人员", tags = {"三个身边后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 3,businessType = "删除人员") + public R delete(@PathVariable("id") Integer id){ + SystemUser systemUser = systemUserService.getById(id); + systemUser.setStatus(3); + systemUserService.updateById(systemUser); + return R.ok(); + } + + + @GetMapping("/getSystemUserInfo/{id}") + @ApiOperation(value = "查询人员详情", tags = {"三个身边后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "查询人员详情") + public R<SystemUser> getSystemUserInfo(@PathVariable("id") Integer id){ + SystemUser systemUser = systemUserService.getById(id); + return R.ok(systemUser); + } + + + @PutMapping("/freeze/{id}") + @ApiOperation(value = "冻结账号", tags = {"三个身边后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "冻结账号") + public R freeze(@PathVariable("id") Integer id){ + SystemUser systemUser = systemUserService.getById(id); + if(2 == systemUser.getStatus()){ + return R.fail("不能重复操作"); + } + systemUser.setStatus(2); + systemUserService.updateById(systemUser); + return R.ok(); + } + + + @PutMapping("/unfreeze/{id}") + @ApiOperation(value = "解冻账号", tags = {"三个身边后台-人员管理"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "解冻账号") + public R unfreeze(@PathVariable("id") Integer id){ + SystemUser systemUser = systemUserService.getById(id); + if(1 == systemUser.getStatus()){ + return R.fail("不能重复操作"); + } + systemUser.setStatus(1); + systemUserService.updateById(systemUser); + return R.ok(); + } + + + /** + * 根据用户id获取信息 + * @param id + * @return + */ + @PostMapping("/getUserById") + public R<SystemUserVo> getUserById(@RequestParam("id") String id){ + SystemUser systemUser = systemUserService.getById(id); + SystemUserVo systemUserVo = new SystemUserVo(); + List<SystemRoleMenu> list = systemRoleMenuService.list(new LambdaQueryWrapper<SystemRoleMenu>().eq(SystemRoleMenu::getSystemRoleId, systemUser.getSystemRoleId())); + List<Integer> collect = list.stream().map(SystemRoleMenu::getSystemMenuId).collect(Collectors.toList()); + Set<String> collect1 = new HashSet<>(); + if(collect.size() > 0){ + List<SystemMenu> systemMenus = systemMenuService.listByIds(collect); + collect1 = systemMenus.stream().map(SystemMenu::getUrl).collect(Collectors.toSet()); + } + systemUserVo.setPermissions(collect1); + BeanUtils.copyProperties(systemUser, systemUserVo); + return R.ok(systemUserVo); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/WorkOrderItemConfigController.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/WorkOrderItemConfigController.java new file mode 100644 index 0000000..4d513da --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/api/WorkOrderItemConfigController.java @@ -0,0 +1,42 @@ +package com.panzhihua.sangeshenbian.api; + +import com.panzhihua.common.interfaces.OperLog; +import com.panzhihua.common.model.vos.R; +import com.panzhihua.sangeshenbian.model.WorkOrderItemConfig; +import com.panzhihua.sangeshenbian.service.IWorkOrderItemConfigService; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:09 + */ +@Api +@RestController +@RequestMapping("/sangeshenbian/workOrderItemConfig") +public class WorkOrderItemConfigController { + + @Resource + private IWorkOrderItemConfigService workOrderItemConfigService; + + + @GetMapping("/getWorkOrderItemConfigInfo") + @ApiOperation(value = "获取工单事项配置", tags = {"三个身边后台-工单事项配置"}) + @OperLog(operModul = "三个身边后台",operType = 0,businessType = "获取工单事项配置") + public R<WorkOrderItemConfig> getWorkOrderItemConfigInfo(){ + WorkOrderItemConfig one = workOrderItemConfigService.getOne(null); + return R.ok(one); + } + + + @PostMapping("/addWorkOrderItemConfig") + @ApiOperation(value = "保存工单事项配置", tags = {"三个身边后台-工单事项配置"}) + @OperLog(operModul = "三个身边后台",operType = 1,businessType = "保存工单事项配置") + public R<WorkOrderItemConfig> add(@RequestBody WorkOrderItemConfig workOrderItemConfig){ + workOrderItemConfigService.saveOrUpdate(workOrderItemConfig); + return R.ok(); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/BannerMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/BannerMapper.java new file mode 100644 index 0000000..068b3e6 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/BannerMapper.java @@ -0,0 +1,17 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.sangeshenbian.model.Banner; +import org.apache.ibatis.annotations.Param; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:44 + */ +public interface BannerMapper extends BaseMapper<Banner> { + + + IPage<Banner> list(Page page, @Param("name") String name); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/DepartmentMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/DepartmentMapper.java new file mode 100644 index 0000000..d383a35 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/DepartmentMapper.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.panzhihua.sangeshenbian.model.Department; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:42 + */ +public interface DepartmentMapper extends BaseMapper<Department> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/MessageNotificationMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/MessageNotificationMapper.java new file mode 100644 index 0000000..b6de2fd --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/MessageNotificationMapper.java @@ -0,0 +1,18 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.sangeshenbian.model.MessageNotification; +import com.panzhihua.sangeshenbian.warpper.MessageNotificationList; +import org.apache.ibatis.annotations.Param; + +/** + * @author zhibing.pu + * @Date 2025/2/23 3:03 + */ +public interface MessageNotificationMapper extends BaseMapper<MessageNotification> { + + + IPage<MessageNotification> list(Page page, @Param("query") MessageNotificationList query); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/ProblemTypeMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/ProblemTypeMapper.java new file mode 100644 index 0000000..ac40eb5 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/ProblemTypeMapper.java @@ -0,0 +1,17 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.sangeshenbian.model.ProblemType; +import org.apache.ibatis.annotations.Param; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:25 + */ +public interface ProblemTypeMapper extends BaseMapper<ProblemType> { + + + IPage<ProblemType> list(Page page, @Param("name") String name); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemMenuMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemMenuMapper.java new file mode 100644 index 0000000..20fa4f8 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemMenuMapper.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.panzhihua.sangeshenbian.model.SystemMenu; + +/** + * @author zhibing.pu + * @Date 2025/2/23 1:02 + */ +public interface SystemMenuMapper extends BaseMapper<SystemMenu> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMapper.java new file mode 100644 index 0000000..97a4ff7 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMapper.java @@ -0,0 +1,25 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.sangeshenbian.model.SystemRole; +import com.panzhihua.sangeshenbian.warpper.SystemRoleListVo; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:40 + */ +public interface SystemRoleMapper extends BaseMapper<SystemRole> { + + + /** + * 获取列表数据 + * @param name + * @return + */ + IPage<SystemRoleListVo> list(Page page, @Param("name") String name); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMenuMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMenuMapper.java new file mode 100644 index 0000000..52fc77d --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemRoleMenuMapper.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.panzhihua.sangeshenbian.model.SystemRoleMenu; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:24 + */ +public interface SystemRoleMenuMapper extends BaseMapper<SystemRoleMenu> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemUserMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemUserMapper.java new file mode 100644 index 0000000..6cd0008 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/SystemUserMapper.java @@ -0,0 +1,27 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.warpper.SystemUserList; +import com.panzhihua.sangeshenbian.warpper.SystemUserListVo; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/18 22:29 + */ +@Mapper +public interface SystemUserMapper extends BaseMapper<SystemUser> { + + /** + * 获取列表数据 + * @param query + * @return + */ + IPage<SystemUserListVo> list(Page page, @Param("accountLevel") Integer accountLevel, @Param("query") SystemUserList query); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/WorkOrderItemConfigMapper.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/WorkOrderItemConfigMapper.java new file mode 100644 index 0000000..525a6d0 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/dao/WorkOrderItemConfigMapper.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.dao; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.panzhihua.sangeshenbian.model.WorkOrderItemConfig; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:06 + */ +public interface WorkOrderItemConfigMapper extends BaseMapper<WorkOrderItemConfig> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Banner.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Banner.java new file mode 100644 index 0000000..1812a17 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Banner.java @@ -0,0 +1,49 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:42 + */ +@Data +@ApiModel +@TableName("sgsb_banner") +public class Banner { + /** + * 数据ID + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty("数据ID") + private Integer id; + /** + * 名称 + */ + @TableField("name") + @ApiModelProperty("名称") + private String name; + /** + * 地址 + */ + @TableField("url") + @ApiModelProperty("地址") + private String url; + /** + * 删除标识(0=否,1=是) + */ + @TableField("del") + private Integer del; + /** + * 添加时间 + */ + @TableField("create_time") + private LocalDateTime createTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Department.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Department.java new file mode 100644 index 0000000..19a7cba --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/Department.java @@ -0,0 +1,50 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:40 + */ +@Data +@ApiModel +@TableName("sgsb_department") +public class Department { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty("数据ID") + private Integer id; + /** + * 上级id + */ + @TableField("pid") + @ApiModelProperty("上级id") + private Integer pid; + /** + * 单位名称 + */ + @TableField("name") + @ApiModelProperty("单位名称") + private String name; + /** + * 层级,最多4层 + */ + @TableField("tier") + @ApiModelProperty("层级,最多4层") + private Integer tier; + + + @TableField(exist = false) + @ApiModelProperty("下级单位") + private List<Department> child; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/MessageNotification.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/MessageNotification.java new file mode 100644 index 0000000..eb60338 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/MessageNotification.java @@ -0,0 +1,87 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:57 + */ +@Data +@ApiModel +@TableName("sgsb_message_notification") +public class MessageNotification { + /** + * 数据ID + */ + @ApiModelProperty("数据ID") + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 标题 + */ + @TableField("title") + @ApiModelProperty("标题") + private String title; + /** + * 承办者用户id + */ + @TableField("undertaker_user_id") + @ApiModelProperty("承办者用户id") + private Integer undertakerUserId; + /** + * 承办者 + */ + @TableField(exist = false) + @ApiModelProperty("承办者") + private String undertakerUser; + /** + * 联系电话 + */ + @TableField("phone") + @ApiModelProperty("联系电话") + private String phone; + /** + * 所在单位 + */ + @TableField(exist = false) + @ApiModelProperty(value = "所在单位") + private String department; + /** + * 所属职位 + */ + @TableField(exist = false) + @ApiModelProperty("所属职位") + private String position; + /** + * 需求应处理时间 + */ + @TableField("response_time") + @ApiModelProperty("需求应处理时间") + private LocalDateTime responseTime; + /** + * 提示类型(1=临期提醒,2=超时提醒) + */ + @TableField("prompt_type") + @ApiModelProperty("提示类型(1=临期提醒,2=超时提醒)") + private Integer promptType; + /** + * 阅读状态(0=否,1=是) + */ + @TableField("read_status") + @ApiModelProperty("阅读状态(0=否,1=是)") + private Integer readStatus; + /** + * 创建时间 + */ + @TableField("create_time") + @ApiModelProperty("创建时间") + private LocalDateTime createTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/ProblemType.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/ProblemType.java new file mode 100644 index 0000000..a8f2b67 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/ProblemType.java @@ -0,0 +1,40 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:24 + */ +@Data +@ApiModel +@TableName("sgsb_problem_type") +public class ProblemType { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 名称 + */ + @TableField("name") + private String name; + /** + * 删除标识(0=否,1=是) + */ + @TableField("del") + private Integer del; + /** + * 添加时间 + */ + @TableField("create_time") + private LocalDateTime createTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemMenu.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemMenu.java new file mode 100644 index 0000000..187b7fd --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemMenu.java @@ -0,0 +1,50 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + + +/** + * @author zhibing.pu + * @Date 2025/2/23 0:54 + */ +@Data +@ApiModel +@TableName("sgsb_system_menu") +public class SystemMenu { + /** 菜单ID */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty("菜单ID") + private Integer id; + + /** 菜单名称 */ + @TableField("name") + @ApiModelProperty("菜单名称") + private String name; + + /** 父菜单ID */ + @TableField("parent_id") + private Long parentId; + + /** 显示顺序 */ + @TableField("order_num") + private String orderNum; + + /** 菜单URL */ + @TableField("url") + @ApiModelProperty("菜单URL") + private String url; + + /** 子菜单 */ + @TableField(exist = false) + @ApiModelProperty("子菜单") + private List<SystemMenu> children = new ArrayList<SystemMenu>(); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRole.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRole.java new file mode 100644 index 0000000..f985822 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRole.java @@ -0,0 +1,38 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:35 + */ +@Data +@TableName("sgsb_system_role") +public class SystemRole { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 角色名称 + */ + @TableField("name") + private String name; + /** + * 删除标识(0=否,1=是) + */ + @TableField("del") + private Integer del; + /** + * 添加时间 + */ + @TableField("create_time") + private LocalDateTime createTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRoleMenu.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRoleMenu.java new file mode 100644 index 0000000..f5aba1a --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemRoleMenu.java @@ -0,0 +1,24 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:21 + */ +@Data +@TableName("sgsb_system_role_menu") +public class SystemRoleMenu { + /** + * 角色id + */ + @TableField("system_role_id") + private Integer systemRoleId; + /** + * 菜单id + */ + @TableField("system_menu_id") + private Integer systemMenuId; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemUser.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemUser.java new file mode 100644 index 0000000..c02180f --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/SystemUser.java @@ -0,0 +1,140 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * 系统用户 + * @author zhibing.pu + * @Date 2025/2/18 22:18 + */ +@Data +@ApiModel +@TableName("sgsb_system_user") +public class SystemUser { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + @ApiModelProperty(value = "数据ID") + private Integer id; + /** + * 姓名 + */ + @TableField("name") + @ApiModelProperty(value = "姓名", required = true) + private String name; + /** + * 手机号 + */ + @TableField("phone") + @ApiModelProperty(value = "手机号", required = true) + private String phone; + /** + * 密码 + */ + @TableField("password") + @ApiModelProperty(value = "密码", required = true) + private String password; + /** + * 一级单位id + */ + @TableField("one_department_id") + @ApiModelProperty(value = "一级单位id", required = true) + private Integer oneDepartmentId; + /** + * 二级单位id + */ + @TableField("two_department_id") + @ApiModelProperty(value = "二级单位id") + private Integer twoDepartmentId; + /** + * 三级单位id + */ + @TableField("three_department_id") + @ApiModelProperty(value = "三级单位id") + private Integer threeDepartmentId; + /** + * 四级单位id + */ + @TableField("four_department_id") + @ApiModelProperty(value = "四级单位id") + private Integer fourDepartmentId; + /** + * 是否是管理员(0=否,1=是) + */ + @TableField("is_admin") + @ApiModelProperty(value = "是否是管理员(0=否,1=是)", required = true) + private Integer isAdmin; + /** + * 职位id + */ + @TableField("system_post_id") + @ApiModelProperty(value = "职位id", required = true) + private Integer systemPostId; + /** + * 角色id + */ + @TableField("system_role_id") + @ApiModelProperty(value = "角色id", required = true) + private Integer systemRoleId; + /** + * 账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号) + */ + @TableField("account_level") + @ApiModelProperty(value = "账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号)", required = true) + private Integer accountLevel; + /** + * 所属区县 + */ + @TableField("districts") + @ApiModelProperty(value = "所属区县") + private String districts; + /** + * 区县编号 + */ + @TableField("districts_code") + @ApiModelProperty(value = "区县编号") + private String districtsCode; + /** + * 街道 + */ + @TableField("street") + @ApiModelProperty(value = "街道") + private String street; + /** + * 街道编号 + */ + @TableField("street_code") + @ApiModelProperty(value = "街道编号") + private String streetCode; + /** + * 社区 + */ + @TableField("community") + @ApiModelProperty(value = "社区") + private String community; + /** + * 社区编号 + */ + @TableField("community_code") + @ApiModelProperty(value = "社区编号") + private String communityCode; + /** + * 状态(1=正常,2=冻结,3=删除) + */ + @TableField("status") + private Integer status; + /** + * 添加时间 + */ + @TableField("create_time") + private LocalDateTime createTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/WorkOrderItemConfig.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/WorkOrderItemConfig.java new file mode 100644 index 0000000..3d08481 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/model/WorkOrderItemConfig.java @@ -0,0 +1,88 @@ +package com.panzhihua.sangeshenbian.model; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:04 + */ +@Data +@TableName("sgsb_work_order_item_config") +public class WorkOrderItemConfig { + /** + * 主键 + */ + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + /** + * 市级账号诉求处理时间 + */ + @TableField("city_handling_time") + @ApiModelProperty(value = "市级账号诉求处理时间", required = true) + private Integer cityHandlingTime; + /** + * 区县级账号诉求处理时间 + */ + @TableField("district_handling_time") + @ApiModelProperty(value = "区县级账号诉求处理时间", required = true) + private Integer districtHandlingTime; + /** + * 街道级账号诉求处理时间 + */ + @TableField("street_handling_time") + @ApiModelProperty(value = "街道级账号诉求处理时间", required = true) + private Integer streetHandlingTime; + /** + * 社区级账号诉求处理时间 + */ + @TableField("community_handling_time") + @ApiModelProperty(value = "社区级账号诉求处理时间", required = true) + private Integer communityHandlingTime; + /** + * 党员级账号诉求处理时间 + */ + @TableField("party_member_handling_time") + @ApiModelProperty(value = "党员级账号诉求处理时间", required = true) + private Integer partyMemberHandlingTime; + /** + * 市级账号临期提醒 + */ + @TableField("city_deadline_reminder") + @ApiModelProperty(value = "市级账号临期提醒", required = true) + private Integer cityDeadlineReminder; + /** + * 区县级账号临期提醒 + */ + @TableField("district_deadline_reminder") + @ApiModelProperty(value = "区县级账号临期提醒", required = true) + private Integer districtDeadlineReminder; + /** + * 街道级账号临期提醒 + */ + @TableField("street_deadline_reminder") + @ApiModelProperty(value = "街道级账号临期提醒", required = true) + private Integer streetDeadlineReminder; + /** + * 社区级账号临期提醒 + */ + @TableField("community_deadline_reminder") + @ApiModelProperty(value = "社区级账号临期提醒", required = true) + private Integer communityDeadlineReminder; + /** + * 党员级账号临期提醒 + */ + @TableField("party_member_deadline_reminder") + @ApiModelProperty(value = "党员级账号临期提醒", required = true) + private Integer partyMemberDeadlineReminder; + /** + * 诉求处理时间 + */ + @TableField("demand_processing_time") + @ApiModelProperty(value = "诉求处理时间", required = true) + private Integer demandProcessingTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IBannerService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IBannerService.java new file mode 100644 index 0000000..082dd51 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IBannerService.java @@ -0,0 +1,15 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.Banner; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:45 + */ +public interface IBannerService extends IService<Banner> { + + + IPage<Banner> list(String name, Integer pageNum, Integer pageSize); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IDepartmentService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IDepartmentService.java new file mode 100644 index 0000000..c3b2fbc --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IDepartmentService.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.Department; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:43 + */ +public interface IDepartmentService extends IService<Department> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IMessageNotificationService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IMessageNotificationService.java new file mode 100644 index 0000000..bb862a0 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IMessageNotificationService.java @@ -0,0 +1,16 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.MessageNotification; +import com.panzhihua.sangeshenbian.warpper.MessageNotificationList; + +/** + * @author zhibing.pu + * @Date 2025/2/23 3:04 + */ +public interface IMessageNotificationService extends IService<MessageNotification> { + + + IPage<MessageNotification> list(MessageNotificationList query); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IProblemTypeService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IProblemTypeService.java new file mode 100644 index 0000000..b6b1bbf --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IProblemTypeService.java @@ -0,0 +1,15 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.ProblemType; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:26 + */ +public interface IProblemTypeService extends IService<ProblemType> { + + + IPage<ProblemType> list(String name, Integer pageNum, Integer pageSize); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemMenuService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemMenuService.java new file mode 100644 index 0000000..58e4e85 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemMenuService.java @@ -0,0 +1,19 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.SystemMenu; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/23 1:03 + */ +public interface ISystemMenuService extends IService<SystemMenu> { + + /** + * 获取获取系统菜单列表 + * @return + */ + List<SystemMenu> getSystemMenuList(); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleMenuService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleMenuService.java new file mode 100644 index 0000000..0201835 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleMenuService.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.SystemRoleMenu; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:25 + */ +public interface ISystemRoleMenuService extends IService<SystemRoleMenu> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleService.java new file mode 100644 index 0000000..76d752e --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemRoleService.java @@ -0,0 +1,23 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.SystemRole; +import com.panzhihua.sangeshenbian.warpper.SystemRoleList; +import com.panzhihua.sangeshenbian.warpper.SystemRoleListVo; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:40 + */ +public interface ISystemRoleService extends IService<SystemRole> { + + /** + * 获取列表数据 + * @param systemRoleList + * @return + */ + IPage<SystemRoleListVo> list(SystemRoleList systemRoleList); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemUserService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemUserService.java new file mode 100644 index 0000000..9209254 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/ISystemUserService.java @@ -0,0 +1,23 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.warpper.SystemUserList; +import com.panzhihua.sangeshenbian.warpper.SystemUserListVo; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/18 22:30 + */ +public interface ISystemUserService extends IService<SystemUser> { + + /** + * 获取列表数据 + * @param query + * @return + */ + IPage<SystemUserListVo> list(Integer accountLevel, SystemUserList query); +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IWorkOrderItemConfigService.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IWorkOrderItemConfigService.java new file mode 100644 index 0000000..97f0f84 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/IWorkOrderItemConfigService.java @@ -0,0 +1,11 @@ +package com.panzhihua.sangeshenbian.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.panzhihua.sangeshenbian.model.WorkOrderItemConfig; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:07 + */ +public interface IWorkOrderItemConfigService extends IService<WorkOrderItemConfig> { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/BannerServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/BannerServiceImpl.java new file mode 100644 index 0000000..a7d5787 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/BannerServiceImpl.java @@ -0,0 +1,26 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.BannerMapper; +import com.panzhihua.sangeshenbian.model.Banner; +import com.panzhihua.sangeshenbian.service.IBannerService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:45 + */ +@Service +public class BannerServiceImpl extends ServiceImpl<BannerMapper, Banner> implements IBannerService { + + @Override + public IPage<Banner> list(String name, Integer pageNum, Integer pageSize) { + Page page = new Page<>(); + page.setCurrent(pageNum); + page.setSize(pageSize); + IPage<Banner> list = this.baseMapper.list(page, name); + return list; + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/DepartmentServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/DepartmentServiceImpl.java new file mode 100644 index 0000000..17b53a8 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/DepartmentServiceImpl.java @@ -0,0 +1,15 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.DepartmentMapper; +import com.panzhihua.sangeshenbian.model.Department; +import com.panzhihua.sangeshenbian.service.IDepartmentService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:43 + */ +@Service +public class DepartmentServiceImpl extends ServiceImpl<DepartmentMapper, Department> implements IDepartmentService { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java new file mode 100644 index 0000000..ad59c94 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/MessageNotificationServiceImpl.java @@ -0,0 +1,28 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.MessageNotificationMapper; +import com.panzhihua.sangeshenbian.model.MessageNotification; +import com.panzhihua.sangeshenbian.service.IMessageNotificationService; +import com.panzhihua.sangeshenbian.warpper.MessageNotificationList; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/23 3:04 + */ +@Service +public class MessageNotificationServiceImpl extends ServiceImpl<MessageNotificationMapper, MessageNotification> implements IMessageNotificationService { + + + @Override + public IPage<MessageNotification> list(MessageNotificationList query) { + Page page = new Page<>(); + page.setCurrent(query.getPageNum()); + page.setSize(query.getPageSize()); + IPage<MessageNotification> list = this.baseMapper.list(page, query); + return list; + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ProblemTypeServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ProblemTypeServiceImpl.java new file mode 100644 index 0000000..71524de --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/ProblemTypeServiceImpl.java @@ -0,0 +1,26 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.ProblemTypeMapper; +import com.panzhihua.sangeshenbian.model.ProblemType; +import com.panzhihua.sangeshenbian.service.IProblemTypeService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:27 + */ +@Service +public class ProblemTypeServiceImpl extends ServiceImpl<ProblemTypeMapper, ProblemType> implements IProblemTypeService { + + @Override + public IPage<ProblemType> list(String name, Integer pageNum, Integer pageSize) { + Page page = new Page<>(); + page.setCurrent(pageNum); + page.setSize(pageSize); + IPage<ProblemType> list = this.baseMapper.list(page, name); + return list; + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemMenuServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemMenuServiceImpl.java new file mode 100644 index 0000000..4cbdba1 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemMenuServiceImpl.java @@ -0,0 +1,41 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.SystemMenuMapper; +import com.panzhihua.sangeshenbian.model.SystemMenu; +import com.panzhihua.sangeshenbian.service.ISystemMenuService; +import org.springframework.stereotype.Service; + +import java.util.List; +import java.util.stream.Collectors; + +/** + * @author zhibing.pu + * @Date 2025/2/23 1:03 + */ +@Service +public class SystemMenuServiceImpl extends ServiceImpl<SystemMenuMapper, SystemMenu> implements ISystemMenuService { + + @Override + public List<SystemMenu> getSystemMenuList() { + List<SystemMenu> list = this.list(); + List<SystemMenu> collect = list.stream().filter(s->s.getParentId() == 0).collect(Collectors.toList()); + for (SystemMenu systemMenu : collect) { + build(systemMenu, list); + } + return list; + } + + + public void build(SystemMenu systemMenu, List<SystemMenu> list) { + List<SystemMenu> collect = list.stream().filter(s->s.getParentId().equals(systemMenu.getParentId())).collect(Collectors.toList()); + if(collect.size() == 0){ + return; + } + systemMenu.setChildren(collect); + for (SystemMenu menu : collect) { + build(menu, list); + } + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleMenuServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleMenuServiceImpl.java new file mode 100644 index 0000000..6abd2ae --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleMenuServiceImpl.java @@ -0,0 +1,15 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.SystemRoleMenuMapper; +import com.panzhihua.sangeshenbian.model.SystemRoleMenu; +import com.panzhihua.sangeshenbian.service.ISystemRoleMenuService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:26 + */ +@Service +public class SystemRoleMenuServiceImpl extends ServiceImpl<SystemRoleMenuMapper, SystemRoleMenu> implements ISystemRoleMenuService { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleServiceImpl.java new file mode 100644 index 0000000..2608491 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemRoleServiceImpl.java @@ -0,0 +1,35 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.SystemRoleMapper; +import com.panzhihua.sangeshenbian.model.SystemRole; +import com.panzhihua.sangeshenbian.service.ISystemRoleService; +import com.panzhihua.sangeshenbian.warpper.SystemRoleList; +import com.panzhihua.sangeshenbian.warpper.SystemRoleListVo; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:41 + */ +@Service +public class SystemRoleServiceImpl extends ServiceImpl<SystemRoleMapper, SystemRole> implements ISystemRoleService { + + + /** + * 获取列表数据 + * @param query + * @return + */ + @Override + public IPage<SystemRoleListVo> list(SystemRoleList query) { + Page page = new Page<>(); + page.setCurrent(query.getPageNum()); + page.setSize(query.getPageSize()); + return this.baseMapper.list(page, query.getName()); + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemUserServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemUserServiceImpl.java new file mode 100644 index 0000000..b22027e --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/SystemUserServiceImpl.java @@ -0,0 +1,35 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.SystemUserMapper; +import com.panzhihua.sangeshenbian.model.SystemUser; +import com.panzhihua.sangeshenbian.service.ISystemUserService; +import com.panzhihua.sangeshenbian.warpper.SystemUserList; +import com.panzhihua.sangeshenbian.warpper.SystemUserListVo; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/18 22:30 + */ +@Service +public class SystemUserServiceImpl extends ServiceImpl<SystemUserMapper, SystemUser> implements ISystemUserService { + + /** + * 获取列表数据 + * @param query + * @return + */ + @Override + public IPage<SystemUserListVo> list(Integer accountLevel, SystemUserList query) { + Page page = new Page<>(); + page.setCurrent(query.getPageNum()); + page.setSize(query.getPageSize()); + IPage<SystemUserListVo> list = this.baseMapper.list(page, accountLevel, query); + return list; + } +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/WorkOrderItemConfigServiceImpl.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/WorkOrderItemConfigServiceImpl.java new file mode 100644 index 0000000..2a153eb --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/service/impl/WorkOrderItemConfigServiceImpl.java @@ -0,0 +1,15 @@ +package com.panzhihua.sangeshenbian.service.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.panzhihua.sangeshenbian.dao.WorkOrderItemConfigMapper; +import com.panzhihua.sangeshenbian.model.WorkOrderItemConfig; +import com.panzhihua.sangeshenbian.service.IWorkOrderItemConfigService; +import org.springframework.stereotype.Service; + +/** + * @author zhibing.pu + * @Date 2025/2/23 2:08 + */ +@Service +public class WorkOrderItemConfigServiceImpl extends ServiceImpl<WorkOrderItemConfigMapper, WorkOrderItemConfig> implements IWorkOrderItemConfigService { +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/AddSystemRole.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/AddSystemRole.java new file mode 100644 index 0000000..5dcde6f --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/AddSystemRole.java @@ -0,0 +1,20 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:11 + */ +@Data +@ApiModel +public class AddSystemRole { + @ApiModelProperty(value = "角色名称", required = true) + private String name; + @ApiModelProperty(value = "权限id集合", required = true) + private List<Integer> systemMenuIds; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/EditSystemRole.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/EditSystemRole.java new file mode 100644 index 0000000..38ea07a --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/EditSystemRole.java @@ -0,0 +1,22 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:11 + */ +@Data +@ApiModel +public class EditSystemRole { + @ApiModelProperty(value = "角色ID", required = true) + private Integer id; + @ApiModelProperty(value = "角色名称", required = true) + private String name; + @ApiModelProperty(value = "权限id集合", required = true) + private List<Integer> systemMenuIds; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/LoginVo.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/LoginVo.java new file mode 100644 index 0000000..329559a --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/LoginVo.java @@ -0,0 +1,18 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/18 22:33 + */ +@Data +@ApiModel +public class LoginVo { + @ApiModelProperty(value = "登录账号", required = true) + private String phone; + @ApiModelProperty(value = "登录密码", required = true) + private String password; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/MessageNotificationList.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/MessageNotificationList.java new file mode 100644 index 0000000..3b1731a --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/MessageNotificationList.java @@ -0,0 +1,28 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/23 3:10 + */ +@ApiModel +@Data +public class MessageNotificationList { + @ApiModelProperty("标题") + private String title; + @ApiModelProperty("承办人") + private String undertaker; + @ApiModelProperty("电话") + private String phone; + @ApiModelProperty("所属单位id") + private Integer departmentId; + @ApiModelProperty("职位id") + private Integer positionId; + @ApiModelProperty("页码") + private Integer pageNum; + @ApiModelProperty("每页数") + private Integer pageSize; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleInfo.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleInfo.java new file mode 100644 index 0000000..f664fac --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleInfo.java @@ -0,0 +1,22 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author zhibing.pu + * @Date 2025/2/19 17:36 + */ +@Data +@ApiModel +public class SystemRoleInfo { + @ApiModelProperty("角色ID") + private Integer id; + @ApiModelProperty("角色名称") + private String name; + @ApiModelProperty("菜单id集合") + private List<Integer> systemMenuIds; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleList.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleList.java new file mode 100644 index 0000000..7ac9d0c --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleList.java @@ -0,0 +1,20 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:58 + */ +@Data +@ApiModel +public class SystemRoleList { + @ApiModelProperty(value = "角色名称") + private String name; + @ApiModelProperty(value = "页码", required = true) + private Integer pageNum; + @ApiModelProperty(value = "每页数量", required = true) + private Integer pageSize; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleListVo.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleListVo.java new file mode 100644 index 0000000..7dc7794 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemRoleListVo.java @@ -0,0 +1,18 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/19 16:50 + */ +@Data +@ApiModel +public class SystemRoleListVo { + @ApiModelProperty("数据ID") + private Integer id; + @ApiModelProperty("角色名称") + private String name; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserList.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserList.java new file mode 100644 index 0000000..1fc513b --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserList.java @@ -0,0 +1,28 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/20 11:01 + */ +@Data +@ApiModel +public class SystemUserList { + @ApiModelProperty(value = "姓名") + private String name; + @ApiModelProperty(value = "联系方式") + private String phone; + @ApiModelProperty(value = "所在单位") + private Integer departmentId; + @ApiModelProperty(value = "所属角色") + private Integer systemRoleId; + @ApiModelProperty(value = "账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号)") + private Integer accountLevel; + @ApiModelProperty(value = "页码", required = true) + private Integer pageNum; + @ApiModelProperty(value = "每页数量", required = true) + private Integer pageSize; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserListVo.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserListVo.java new file mode 100644 index 0000000..660d5c8 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/SystemUserListVo.java @@ -0,0 +1,30 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/20 11:05 + */ +@Data +@ApiModel +public class SystemUserListVo { + @ApiModelProperty("数据ID") + private Integer id; + @ApiModelProperty("姓名") + private String name; + @ApiModelProperty("联系方式") + private String phone; + @ApiModelProperty("所属单位") + private String departmentName; + @ApiModelProperty("所属职位") + private String systemPostName; + @ApiModelProperty("所属角色") + private String systemRoleName; + @ApiModelProperty(value = "账号层级(1=市级账号,2=区县账号,3=街道账号,4=社区账号)") + private Integer accountLevel; + @ApiModelProperty("账号状态(1=使用中,2=已冻结)") + private Integer status; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/TokenVo.java b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/TokenVo.java new file mode 100644 index 0000000..0ca1369 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/java/com/panzhihua/sangeshenbian/warpper/TokenVo.java @@ -0,0 +1,18 @@ +package com.panzhihua.sangeshenbian.warpper; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @author zhibing.pu + * @Date 2025/2/18 23:32 + */ +@ApiModel +@Data +public class TokenVo { + @ApiModelProperty("token") + private String token; + @ApiModelProperty("有效期(毫秒)") + private Long expireTime; +} diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/BannerMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/BannerMapper.xml new file mode 100644 index 0000000..f674cd6 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/BannerMapper.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.BannerMapper"> + + <select id="list" resultType="com.panzhihua.sangeshenbian.model.Banner"> + select * from banner where del = 0 + <if test="name != null and name != ''"> + and name like concat('%',#{name},'%') + </if> + order by create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/DepartmentMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/DepartmentMapper.xml new file mode 100644 index 0000000..9c394c8 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/DepartmentMapper.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.DepartmentMapper"> + +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/MessageNotificationMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/MessageNotificationMapper.xml new file mode 100644 index 0000000..57813ae --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/MessageNotificationMapper.xml @@ -0,0 +1,42 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.MessageNotificationMapper"> + + + <select id="list" resultType="com.panzhihua.sangeshenbian.model.MessageNotification"> + select + a.id, + a.title, + b.name as undertakerUser, + a.phone, + d.name as department, + e.name as `position`, + DATE_FORMAT(a.response_time, '%Y-%m-%d')as responseTime, + if(a.prompt_type = 1, '临期提醒', '超时提醒') as promptType, + if(a.read_status = 0, '未读', '已读') as readStatus + from sgsb_message_notification a + left join sys_user b on (a.undertaker_user_id = b.id) + left join sgsb_system_user c on (a.phone = c.phone) + left join sgsb_department d on (c.department_id = d.id) + left join sgsb_position e on (c.position_id = e.id) + where 1=1 + <if test="query.title != null and query.title != ''"> + and a.title like concat('%', #{query.title}, '%') + </if> + <if test="query.undertakerUser != null and query.undertakerUser != ''"> + and b.name like concat('%', #{query.undertakerUser}, '%') + </if> + <if test="query.phone != null and query.phone != ''"> + and a.phone like concat('%', #{query.phone}, '%') + </if> + <if test="query.departmentId != null"> + and c.department_id = #{query.department} + </if> + <if test="query.positionId != null"> + and c.position_id = #{query.position} + </if> + order by a.read_status asc, a.create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/ProblemTypeMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/ProblemTypeMapper.xml new file mode 100644 index 0000000..f4a1e30 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/ProblemTypeMapper.xml @@ -0,0 +1,14 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.ProblemTypeMapper"> + + <select id="list" resultType="com.panzhihua.sangeshenbian.model.ProblemType"> + select * from sgsb_problem_type where del = 0 + <if test="name != null and name != ''"> + and name like concat('%', #{name}, '%') + </if> + order by create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemMenuMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemMenuMapper.xml new file mode 100644 index 0000000..dcd49bd --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemMenuMapper.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.SystemMenuMapper"> + +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMapper.xml new file mode 100644 index 0000000..0f2f1b7 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMapper.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.SystemRoleMapper"> + + + <select id="list" resultType="com.panzhihua.sangeshenbian.warpper.SystemRoleListVo"> + select id, name from sgsb_system_role where del = 0 + <if test="null != name and '' != name"> + and name like CONCAT('%', #{name}, '%') + </if> + order by create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMenuMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMenuMapper.xml new file mode 100644 index 0000000..122c5ce --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemRoleMenuMapper.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.SystemRoleMenuMapper"> + +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemUserMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemUserMapper.xml new file mode 100644 index 0000000..7f015d2 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/SystemUserMapper.xml @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.SystemUserMapper"> + + + <select id="list" resultType="com.panzhihua.sangeshenbian.warpper.SystemUserListVo"> + select + a.id, + a.name, + a.phone, + IF(a.four_department_id is not null, e.`name`, IF(a.three_department_id is not null, d.`name`, IF(a.two_department_id is not null, c.`name`, b.`name`))) as departmentName, + f.`name` as systemPostName, + g.`name` as systemRoleName, + a.account_level as accountLevel, + a.`status` + from sgsb_system_user a + left join sgsb_department b on (a.one_department_id = b.id) + left join sgsb_department c on (a.two_department_id = c.id) + left join sgsb_department d on (a.three_department_id = d.id) + left join sgsb_department e on (a.four_department_id = e.id) + left join sgsb_system_post f on (a.system_post_id = f.id) + left join sgsb_system_role g on (a.system_role_id = g.id) + where a.`status` != 3 + <if test="1 != accountLevel or 5 != accountLevel"> + and a.account_level <= #{accountLevel} + </if> + <if test="5 == accountLevel"> + and a.id = 0 + </if> + <if test="null != query.name and '' != query.name"> + and a.name like CONCAT('%', #{query.name}, '%') + </if> + <if test="null != query.phone and '' != query.phone"> + and a.phone like CONCAT('%', #{query.phone}, '%') + </if> + <if test="null != query.departmentId"> + and (a.one_department_id = #{query.departmentId} or a.two_department_id = #{query.departmentId} or a.three_department_id = #{query.departmentId} or a.four_department_id = #{query.departmentId}) + </if> + <if test="null != query.systemRoleId"> + and a.system_role_id = #{query.systemRoleId} + </if> + <if test="null != query.accountLevel"> + and a.account_level = #{query.accountLevel} + </if> + order by a.create_time desc + </select> +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/WorkOrderItemConfigMapper.xml b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/WorkOrderItemConfigMapper.xml new file mode 100644 index 0000000..3540183 --- /dev/null +++ b/springcloud_k8s_panzhihuazhihuishequ/service_sangeshenbian/src/main/resources/mapper/WorkOrderItemConfigMapper.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!DOCTYPE mapper + PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<mapper namespace="com.panzhihua.sangeshenbian.dao.WorkOrderItemConfigMapper"> + +</mapper> \ No newline at end of file diff --git a/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java index a0197ba..70ef665 100644 --- a/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java +++ b/springcloud_k8s_panzhihuazhihuishequ/zuul/src/main/java/com/panzhihua/zuul/filters/JWTAuthenticationTokenFilter.java @@ -9,7 +9,9 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import com.panzhihua.common.model.vos.sangeshenbian.SystemUserVo; import com.panzhihua.common.model.vos.user.SysAppConfigVO; +import com.panzhihua.common.service.sangeshenbian.SystemUserService; import com.panzhihua.common.utlis.*; import org.springframework.context.ApplicationContext; import org.springframework.data.redis.core.StringRedisTemplate; @@ -40,6 +42,7 @@ public class JWTAuthenticationTokenFilter implements Filter { private StringRedisTemplate stringRedisTemplate; private UserService userService; + private SystemUserService systemUserService; @Override public void init(FilterConfig filterConfig) throws ServletException { @@ -65,6 +68,7 @@ stringRedisTemplate = ctx.getBean(StringRedisTemplate.class); ValueOperations<String, String> valueOperations = stringRedisTemplate.opsForValue(); userService = ctx.getBean(UserService.class); + systemUserService = ctx.getBean(SystemUserService.class); String requestURI = request.getRequestURI(); boolean login = requestURI.contains("login"); boolean union = requestURI.contains("huacheng-union-applets"); @@ -187,6 +191,47 @@ } valueOperations.set(roleAppletKey, JSONArray.toJSONString(authorities), 24, TimeUnit.HOURS); } + } else if(21 == type){ + //三个身边 + String key = SecurityConstants.ROLE_USER + "sangeshenbian:" + userId; + Boolean aBoolean = stringRedisTemplate.hasKey(key); + R<SystemUserVo> r = systemUserService.getUserById(userId); + if (aBoolean) { + String roles = valueOperations.get(key); + authorities = JSONArray.parseArray(roles, SimpleGrantedAuthority.class); + } else { + SystemUserVo data = r.getData(); + if (!ObjectUtils.isEmpty(data)) { + authorities.add(new SimpleGrantedAuthority(data.getSystemRoleId().toString())); + valueOperations.set(key, JSONArray.toJSONString(authorities), 24, TimeUnit.HOURS); + } + } + + UsernamePasswordAuthenticationToken authentication = + new UsernamePasswordAuthenticationToken(userId, userId, authorities);// 主要使用权限 账户 密码 不重要 + SecurityContextHolder.getContext().setAuthentication(authentication); + safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_LOGOUT, tokenHeader); + // 登录用户的所有信息 + String userKey = UserConstants.LOGIN_USER_INFO + "sangeshenbian:" + userId; + Boolean hasKeyLoginUserInfo = stringRedisTemplate.hasKey(userKey); + if (hasKeyLoginUserInfo) { + String userInfo = valueOperations.get(userKey); + byte[] encrypt = AES.encrypt(userInfo, Constants.AES_KEY); + String hexStr = AES.parseByte2HexStr(encrypt); + safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_USERINFO, hexStr); + } else { + if (!R.isOk(r)) { + ResultUtil.responseJson(response, R.fail(HttpStatus.ERROR, "登录用户信息查询失败")); + return; + } + SystemUserVo data = r.getData(); + String userInfo = JSONObject.toJSONString(data); + valueOperations.set(userKey, userInfo, 24, TimeUnit.HOURS); + byte[] encrypt = AES.encrypt(userInfo, Constants.AES_KEY); + String hexStr = AES.parseByte2HexStr(encrypt); + safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_USERINFO, hexStr); + } + } else { String key = SecurityConstants.ROLE_USER + userId; Boolean aBoolean = stringRedisTemplate.hasKey(key); @@ -204,32 +249,34 @@ valueOperations.set(key, JSONArray.toJSONString(authorities), 24, TimeUnit.HOURS); } } - } - UsernamePasswordAuthenticationToken authentication = - new UsernamePasswordAuthenticationToken(userId, userId, authorities);// 主要使用权限 账户 密码 不重要 - SecurityContextHolder.getContext().setAuthentication(authentication); - safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_LOGOUT, tokenHeader); - // 登录用户的所有信息 - String userKey = UserConstants.LOGIN_USER_INFO + userId; - Boolean hasKeyLoginUserInfo = stringRedisTemplate.hasKey(userKey); - if (hasKeyLoginUserInfo) { - String userInfo = valueOperations.get(userKey); - byte[] encrypt = AES.encrypt(userInfo, Constants.AES_KEY); - String hexStr = AES.parseByte2HexStr(encrypt); - safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_USERINFO, hexStr); - } else { - R<LoginUserInfoVO> r = userService.getUserInfoByUserId(userId); - if (!R.isOk(r)) { - ResultUtil.responseJson(response, R.fail(HttpStatus.ERROR, "登录用户信息查询失败")); - return; + + UsernamePasswordAuthenticationToken authentication = + new UsernamePasswordAuthenticationToken(userId, userId, authorities);// 主要使用权限 账户 密码 不重要 + SecurityContextHolder.getContext().setAuthentication(authentication); + safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_LOGOUT, tokenHeader); + // 登录用户的所有信息 + String userKey = UserConstants.LOGIN_USER_INFO + userId; + Boolean hasKeyLoginUserInfo = stringRedisTemplate.hasKey(userKey); + if (hasKeyLoginUserInfo) { + String userInfo = valueOperations.get(userKey); + byte[] encrypt = AES.encrypt(userInfo, Constants.AES_KEY); + String hexStr = AES.parseByte2HexStr(encrypt); + safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_USERINFO, hexStr); + } else { + R<LoginUserInfoVO> r = userService.getUserInfoByUserId(userId); + if (!R.isOk(r)) { + ResultUtil.responseJson(response, R.fail(HttpStatus.ERROR, "登录用户信息查询失败")); + return; + } + LoginUserInfoVO data = r.getData(); + String userInfo = JSONObject.toJSONString(data); + valueOperations.set(userKey, userInfo, 24, TimeUnit.HOURS); + byte[] encrypt = AES.encrypt(userInfo, Constants.AES_KEY); + String hexStr = AES.parseByte2HexStr(encrypt); + safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_USERINFO, hexStr); } - LoginUserInfoVO data = r.getData(); - String userInfo = JSONObject.toJSONString(data); - valueOperations.set(userKey, userInfo, 24, TimeUnit.HOURS); - byte[] encrypt = AES.encrypt(userInfo, Constants.AES_KEY); - String hexStr = AES.parseByte2HexStr(encrypt); - safeboxRequestWrapper.addHeader(TokenConstant.TOKEN_USERINFO, hexStr); } + } else { // 小程序无需登录也可访问地址列表 List<String> noLoginUrl = new ArrayList<>(); -- Gitblit v1.7.1