Browse Source

fix:预警人员列表增加真实姓名,预警日志增加时间查询

陈长荣 5 months ago
parent
commit
74542c0e08

+ 4 - 0
snowy-plugin/snowy-plugin-coldchain/pom.xml

@@ -69,6 +69,10 @@
             <groupId>vip.xiaonuo</groupId>
             <artifactId>snowy-plugin-auth-api</artifactId>
         </dependency>
+        <dependency>
+            <groupId>vip.xiaonuo</groupId>
+            <artifactId>snowy-plugin-sys</artifactId>
+        </dependency>
         <dependency>
             <groupId>com.github.binarywang</groupId>
             <artifactId>weixin-java-mp</artifactId>

+ 5 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/core/alarm/bean/SensorAlarmUser.java

@@ -26,6 +26,11 @@ public class SensorAlarmUser {
      */
     private String userId;
 
+    /**
+     * 用户的姓名,用于告警信息中显示用户的身份
+     */
+    private String name;
+
     /**
      * 用户的微信公众号OpenID,通常用于与外部系统(如微信、钉钉等)进行集成,便于推送消息
      */

+ 12 - 14
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/alarmuser/controller/AlarmUserController.java

@@ -14,25 +14,23 @@ package vip.xiaonuo.coldchain.modular.alarmuser.controller;
 
 import cn.dev33.satoken.annotation.SaCheckPermission;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import io.swagger.v3.oas.annotations.tags.Tag;
 import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import jakarta.annotation.Resource;
+import jakarta.validation.Valid;
+import jakarta.validation.constraints.NotEmpty;
 import org.springframework.validation.annotation.Validated;
-import org.springframework.web.bind.annotation.GetMapping;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RestController;
-import vip.xiaonuo.common.annotation.CommonLog;
-import vip.xiaonuo.common.pojo.CommonResult;
+import org.springframework.web.bind.annotation.*;
+import vip.xiaonuo.coldchain.modular.alarmuser.dto.ExtendUserDTO;
 import vip.xiaonuo.coldchain.modular.alarmuser.entity.AlarmUser;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserAddParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserEditParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserIdParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserPageParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.service.AlarmUserService;
+import vip.xiaonuo.common.annotation.CommonLog;
+import vip.xiaonuo.common.pojo.CommonResult;
 
-import jakarta.annotation.Resource;
-import jakarta.validation.Valid;
-import jakarta.validation.constraints.NotEmpty;
 import java.util.List;
 
 /**
@@ -58,7 +56,7 @@ public class AlarmUserController {
     @Operation(summary = "获取报警接收人分页")
     @SaCheckPermission("/coldchain/alarmuser/page")
     @GetMapping("/coldchain/alarmuser/page")
-    public CommonResult<Page<AlarmUser>> page(AlarmUserPageParam alarmUserPageParam) {
+    public CommonResult<Page<ExtendUserDTO>> page(AlarmUserPageParam alarmUserPageParam) {
         return CommonResult.data(alarmUserService.page(alarmUserPageParam));
     }
 
@@ -127,7 +125,7 @@ public class AlarmUserController {
     @Operation(summary = "根据登录人所属组织获取")
     @SaCheckPermission("/coldchain/alarmuser/list")
     @GetMapping("/coldchain/alarmuser/list")
-    public CommonResult<List<AlarmUser>> list() {
+    public CommonResult<List<ExtendUserDTO>> list() {
         return CommonResult.data(alarmUserService.myList());
     }
 
@@ -136,7 +134,7 @@ public class AlarmUserController {
      */
     @Operation(summary = "获取微信用户信息")
     @GetMapping("/coldchain/alarmuser/getUserInfo")
-    public CommonResult<String> getUserInfo(String code,String orgId) {
-        return CommonResult.data(alarmUserService.getUserInfo(code));
+    public CommonResult<String> getUserInfo(@RequestParam String code, @RequestParam(required = false) String orgId, @RequestParam(required = false) String name) {
+        return CommonResult.data(alarmUserService.getUserInfo(code, orgId, name));
     }
 }

+ 15 - 0
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/alarmuser/dto/ExtendUserDTO.java

@@ -0,0 +1,15 @@
+package vip.xiaonuo.coldchain.modular.alarmuser.dto;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import vip.xiaonuo.coldchain.modular.alarmuser.entity.AlarmUser;
+
+@EqualsAndHashCode(callSuper = true)
+@Data
+public class ExtendUserDTO extends AlarmUser {
+
+    /**
+     * 用户真实姓名
+     */
+    private String name;
+}

+ 7 - 5
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/alarmuser/param/AlarmUserEditParam.java

@@ -13,14 +13,10 @@
 package vip.xiaonuo.coldchain.modular.alarmuser.param;
 
 import io.swagger.v3.oas.annotations.media.Schema;
+import jakarta.validation.constraints.NotNull;
 import lombok.Getter;
 import lombok.Setter;
 
-import jakarta.validation.constraints.NotBlank;
-import jakarta.validation.constraints.NotNull;
-import java.math.BigDecimal;
-import java.util.Date;
-
 /**
  * 报警接收人编辑参数
  *
@@ -40,4 +36,10 @@ public class AlarmUserEditParam {
     @Schema(description = "系统用户id")
     private String userId;
 
+    @Schema(description = "机构id")
+    private String createOrg;
+
+    @Schema(description = "用户姓名")
+    private String name;
+
 }

+ 5 - 4
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/alarmuser/service/AlarmUserService.java

@@ -14,6 +14,7 @@ package vip.xiaonuo.coldchain.modular.alarmuser.service;
 
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
+import vip.xiaonuo.coldchain.modular.alarmuser.dto.ExtendUserDTO;
 import vip.xiaonuo.coldchain.modular.alarmuser.entity.AlarmUser;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserAddParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserEditParam;
@@ -34,9 +35,9 @@ public interface AlarmUserService extends IService<AlarmUser> {
      * 获取报警接收人分页
      *
      * @author 黄渊昊
-     * @date  2024/12/02 15:41
+     * @date 2024/12/02 15:41
      */
-    Page<AlarmUser> page(AlarmUserPageParam alarmUserPageParam);
+    Page<ExtendUserDTO> page(AlarmUserPageParam alarmUserPageParam);
 
     /**
      * 添加报警接收人
@@ -81,11 +82,11 @@ public interface AlarmUserService extends IService<AlarmUser> {
     /**
      * 根据登录人所属组织获取
      */
-    List<AlarmUser> myList();
+    List<ExtendUserDTO> myList();
 
     /**
      * 获取微信用户信息
      * @param code
      */
-    String getUserInfo(String code);
+    String getUserInfo(String code, String orgId, String name);
 }

+ 141 - 32
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/alarmuser/service/impl/AlarmUserServiceImpl.java

@@ -16,21 +16,19 @@ import cn.hutool.core.bean.BeanUtil;
 import cn.hutool.core.collection.CollStreamUtil;
 import cn.hutool.core.util.ObjectUtil;
 import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.IdWorker;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import jakarta.annotation.Resource;
 import lombok.extern.slf4j.Slf4j;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import vip.xiaonuo.auth.core.pojo.SaBaseLoginUser;
 import vip.xiaonuo.auth.core.util.StpLoginUserUtil;
-import vip.xiaonuo.coldchain.modular.push.entity.WeChatUser;
-import vip.xiaonuo.coldchain.modular.push.utils.PushUtil;
-import vip.xiaonuo.common.enums.CommonDeleteFlagEnum;
-import vip.xiaonuo.common.enums.CommonSortOrderEnum;
-import vip.xiaonuo.common.exception.CommonException;
-import vip.xiaonuo.common.page.CommonPageRequest;
+import vip.xiaonuo.coldchain.modular.alarmuser.dto.ExtendUserDTO;
 import vip.xiaonuo.coldchain.modular.alarmuser.entity.AlarmUser;
 import vip.xiaonuo.coldchain.modular.alarmuser.mapper.AlarmUserMapper;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserAddParam;
@@ -38,35 +36,87 @@ import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserEditParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserIdParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.param.AlarmUserPageParam;
 import vip.xiaonuo.coldchain.modular.alarmuser.service.AlarmUserService;
+import vip.xiaonuo.coldchain.modular.push.entity.WeChatUser;
+import vip.xiaonuo.coldchain.modular.push.utils.PushUtil;
+import vip.xiaonuo.common.enums.CommonDeleteFlagEnum;
+import vip.xiaonuo.common.enums.CommonSortOrderEnum;
+import vip.xiaonuo.common.exception.CommonException;
+import vip.xiaonuo.common.listener.CommonDataChangeEventCenter;
+import vip.xiaonuo.common.page.CommonPageRequest;
+import vip.xiaonuo.common.util.CommonAvatarUtil;
+import vip.xiaonuo.common.util.CommonCryptogramUtil;
+import vip.xiaonuo.dev.api.DevConfigApi;
+import vip.xiaonuo.sys.core.enums.SysDataTypeEnum;
+import vip.xiaonuo.sys.modular.user.entity.SysUser;
+import vip.xiaonuo.sys.modular.user.enums.SysUserStatusEnum;
+import vip.xiaonuo.sys.modular.user.service.SysUserService;
+import vip.xiaonuo.sys.modular.user.service.impl.SysUserServiceImpl;
 
+import java.util.HashMap;
 import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
 
 /**
  * 报警接收人Service接口实现类
  *
  * @author 黄渊昊
- * @date  2024/12/02 15:41
+ * @date 2024/12/02 15:41
  **/
 @Service
 @Slf4j
 public class AlarmUserServiceImpl extends ServiceImpl<AlarmUserMapper, AlarmUser> implements AlarmUserService {
 
+    @Resource
+    private SysUserService sysUserService;
+    @Resource
+    private DevConfigApi devConfigApi;
+
     @Override
-    public Page<AlarmUser> page(AlarmUserPageParam alarmUserPageParam) {
+    public Page<ExtendUserDTO> page(AlarmUserPageParam alarmUserPageParam) {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         QueryWrapper<AlarmUser> queryWrapper = new QueryWrapper<AlarmUser>().checkSqlInjection();
-        if(ObjectUtil.isNotEmpty(alarmUserPageParam.getNickName())) {
-            queryWrapper.lambda().like(AlarmUser::getNickName, alarmUserPageParam.getNickName());
-        }
-        if(ObjectUtil.isAllNotEmpty(alarmUserPageParam.getSortField(), alarmUserPageParam.getSortOrder())) {
+        queryWrapper.lambda().like(StrUtil.isNotBlank(alarmUserPageParam.getNickName()), AlarmUser::getNickName, alarmUserPageParam.getNickName());
+        if (ObjectUtil.isAllNotEmpty(alarmUserPageParam.getSortField(), alarmUserPageParam.getSortOrder())) {
             CommonSortOrderEnum.validate(alarmUserPageParam.getSortOrder());
             queryWrapper.orderBy(true, alarmUserPageParam.getSortOrder().equals(CommonSortOrderEnum.ASC.getValue()),
                     StrUtil.toUnderlineCase(alarmUserPageParam.getSortField()));
         } else {
-            queryWrapper.lambda().orderByAsc(AlarmUser::getId);
+            queryWrapper.lambda().orderByDesc(AlarmUser::getCreateTime);
+        }
+        queryWrapper.lambda().eq(AlarmUser::getCreateOrg, loginUser.getOrgId()).eq(AlarmUser::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
+        Page<AlarmUser> page = this.page(CommonPageRequest.defaultPage(), queryWrapper);
+        if (page.getTotal() < 1) {
+            return Page.of(page.getCurrent(), page.getSize());
+        }
+
+        Page<ExtendUserDTO> extendUserDTOPage = Page.of(page.getCurrent(), page.getSize(), page.getTotal());
+        extendUserDTOPage.setRecords(alarmUser2ExtendUserDTO(page.getRecords()));
+        return extendUserDTOPage;
+    }
+
+    /**
+     * 将AlarmUser转为ExtendUserDTO
+     */
+    private List<ExtendUserDTO> alarmUser2ExtendUserDTO(List<AlarmUser> alarmUserList) {
+        List<ExtendUserDTO> dtoList = BeanUtil.copyToList(alarmUserList, ExtendUserDTO.class);
+        Set<String> userIdSet = dtoList.stream().map(AlarmUser::getUserId).filter(StrUtil::isNotBlank).collect(Collectors.toSet());
+        if (userIdSet.isEmpty()) {
+            return dtoList;
         }
-        queryWrapper.lambda().eq(AlarmUser::getCreateOrg,loginUser.getOrgId()).eq(AlarmUser::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
-        return this.page(CommonPageRequest.defaultPage(), queryWrapper);
+
+        //获取用户真实姓名
+        List<SysUser> sysUserList = sysUserService.list(new LambdaQueryWrapper<>(SysUser.class)
+                .in(SysUser::getId, userIdSet)
+                .eq(SysUser::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE));
+        Map<String, String> userNameMap = sysUserList.stream().collect(Collectors.toMap(SysUser::getId, SysUser::getName));
+        dtoList.forEach(dto -> {
+            if (StrUtil.isNotBlank(dto.getUserId())) {
+                dto.setName(userNameMap.get(dto.getUserId()));
+            }
+        });
+        return dtoList;
     }
 
     @Transactional(rollbackFor = Exception.class)
@@ -81,6 +131,19 @@ public class AlarmUserServiceImpl extends ServiceImpl<AlarmUserMapper, AlarmUser
     public void edit(AlarmUserEditParam alarmUserEditParam) {
         AlarmUser alarmUser = this.queryEntity(alarmUserEditParam.getId());
         BeanUtil.copyProperties(alarmUserEditParam, alarmUser);
+
+        // 判断是否有系统用户关联
+        if (StrUtil.isBlank(alarmUser.getUserId())) {
+            // 如果没有关联,则创建用户
+            SysUser sysUser = createSysUser(alarmUser, null, alarmUserEditParam.getName());
+            alarmUser.setUserId(sysUser.getId());
+        } else {
+            // 如果有关联,则修改用户姓名
+            SysUser sysUser = sysUserService.getById(alarmUser.getUserId());
+            sysUser.setName(alarmUserEditParam.getName());
+            sysUserService.updateById(sysUser);
+        }
+
         this.updateById(alarmUser);
     }
 
@@ -99,49 +162,95 @@ public class AlarmUserServiceImpl extends ServiceImpl<AlarmUserMapper, AlarmUser
     @Override
     public AlarmUser queryEntity(String id) {
         AlarmUser alarmUser = this.getById(id);
-        if(ObjectUtil.isEmpty(alarmUser)) {
+        if (ObjectUtil.isEmpty(alarmUser)) {
             throw new CommonException("报警接收人不存在,id值为:{}", id);
         }
         return alarmUser;
     }
 
     @Override
-    public List<AlarmUser> myList() {
+    public List<ExtendUserDTO> myList() {
         SaBaseLoginUser loginUser = StpLoginUserUtil.getLoginUser();
         LambdaQueryWrapper<AlarmUser> queryWrapper = new LambdaQueryWrapper<>();
-        queryWrapper.eq(AlarmUser::getCreateOrg,loginUser.getOrgId()).eq(AlarmUser::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
+        queryWrapper.eq(AlarmUser::getCreateOrg, loginUser.getOrgId()).eq(AlarmUser::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
         List<AlarmUser> list = list(queryWrapper);
-        return list;
+        return alarmUser2ExtendUserDTO(list);
     }
 
     @Override
-    public String getUserInfo(String code) {
+    public String getUserInfo(String code, String orgId, String name) {
         WeChatUser userInfo = PushUtil.getUserInfo(code);
-        log.info("获取用户信息……:{}", userInfo.getOpenid());
-        if(ObjectUtil.isEmpty(userInfo)) {
-            throw new CommonException("获取用户信息失败");
-        }
+        log.info("获取用户信息openId:{}", userInfo.getOpenid());
+
         List<AlarmUser> userList = getByOpenId(userInfo.getOpenid());
         AlarmUser alarmUser = BeanUtil.copyProperties(userInfo, AlarmUser.class);
         alarmUser.setOpenId(userInfo.getOpenid());
         alarmUser.setUnionId(userInfo.getUnionid());
         alarmUser.setNickName(userInfo.getNickname());
-        if (!userList.isEmpty()) {
-            for (AlarmUser user : userList) {
-                alarmUser.setId(user.getId());
-                updateById(alarmUser);
+        if (userList.isEmpty()) {
+            SysUser sysUser = createSysUser(alarmUser, orgId, name);
+            alarmUser.setUserId(sysUser.getId());
+            if (StrUtil.isNotEmpty(orgId)) {
+                alarmUser.setCreateOrg(orgId);
             }
-            return "您已绑定过该组织,已为您更新个人信息";
-        } else {
-            this.save(alarmUser);
+            save(alarmUser);
             return "绑定成功!";
         }
+
+        //更新用户信息
+        Map<String, SysUser> sysUserMap = new HashMap<>();
+        for (AlarmUser user : userList) {
+            String alarmUserId = user.getId();
+
+            //如果没有创建系统用户,则进行创建
+            if (StrUtil.isBlank(user.getUserId())) {
+                if (sysUserMap.containsKey(alarmUserId)) {
+                    alarmUser.setUserId(sysUserMap.get(alarmUserId).getId());
+                } else {
+                    SysUser sysUser = createSysUser(user, orgId, name);
+                    sysUserMap.put(alarmUserId, sysUser);
+                    alarmUser.setUserId(sysUser.getId());
+                }
+            }
+
+            if (StrUtil.isNotEmpty(orgId)) {
+                alarmUser.setCreateOrg(orgId);
+            }
+            alarmUser.setId(alarmUserId);
+            updateById(alarmUser);
+        }
+        return "您已绑定过该组织,已为您更新个人信息";
     }
 
-    List<AlarmUser> getByOpenId(String openId) {
+    private List<AlarmUser> getByOpenId(String openId) {
         LambdaQueryWrapper<AlarmUser> queryWrapper = new LambdaQueryWrapper<>();
         queryWrapper.eq(AlarmUser::getOpenId, openId)
                 .eq(AlarmUser::getDeleteFlag, CommonDeleteFlagEnum.NOT_DELETE);
         return list(queryWrapper);
     }
+
+    /**
+     * 新增系统用户
+     */
+    private SysUser createSysUser(AlarmUser alarmUser, String orgId, String name) {
+        //创建系统用户
+        SysUser sysUser = BeanUtil.copyProperties(alarmUser, SysUser.class);
+        sysUser.setId(IdWorker.getIdStr());
+        sysUser.setName(name);
+        if (StrUtil.isNotEmpty(orgId)) {
+            sysUser.setOrgId(orgId);
+        }
+        sysUser.setAvatar(CommonAvatarUtil.generateImg(sysUser.getName()));
+        // 设置默认密码
+        sysUser.setPassword(CommonCryptogramUtil.doHashValue(devConfigApi.getValueByKey(SysUserServiceImpl.SNOWY_SYS_DEFAULT_PASSWORD_KEY)));
+        // 设置排序码
+        sysUser.setSortCode(99);
+        // 设置状态
+        sysUser.setUserStatus(SysUserStatusEnum.ENABLE.getValue());
+        // 发布增加事件
+        CommonDataChangeEventCenter.doAddWithData(SysDataTypeEnum.USER.getValue(), JSONUtil.createArray().put(sysUser));
+        sysUserService.save(sysUser);
+
+        return sysUser;
+    }
 }

+ 11 - 2
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/monitornotice/param/MonitorNoticePageParam.java

@@ -15,8 +15,6 @@ package vip.xiaonuo.coldchain.modular.monitornotice.param;
 import io.swagger.v3.oas.annotations.media.Schema;
 import lombok.Getter;
 import lombok.Setter;
-import java.math.BigDecimal;
-import java.util.Date;
 
 /**
  * 监控通知查询参数
@@ -52,4 +50,15 @@ public class MonitorNoticePageParam {
     @Schema(description = "通知类型")
     private String type;
 
+    /**
+     * 查询开始时间
+     */
+    @Schema(description = "查询开始时间")
+    private String startTime;
+
+    /**
+     * 查询结束时间
+     */
+    @Schema(description = "查询结束时间")
+    private String endTime;
 }

+ 6 - 1
snowy-plugin/snowy-plugin-coldchain/src/main/java/vip/xiaonuo/coldchain/modular/push/utils/PushUtil.java

@@ -2,8 +2,9 @@ package vip.xiaonuo.coldchain.modular.push.utils;
 
 
 import cn.hutool.core.date.DateUtil;
-import cn.hutool.http.HttpUtil;
+import cn.hutool.core.lang.Assert;
 import cn.hutool.json.JSONObject;
+import lombok.extern.slf4j.Slf4j;
 import me.chanjar.weixin.mp.api.WxMpService;
 import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;
 import me.chanjar.weixin.mp.bean.template.WxMpTemplateData;
@@ -22,6 +23,7 @@ import java.util.Objects;
 /**
  * 推送类
  */
+@Slf4j
 public class PushUtil {
     private final static String ACCESS_TOKEN = "access_token";
     private final static String OPEN_ID = "openid";
@@ -103,6 +105,9 @@ public class PushUtil {
         String accessToken = result.get(ACCESS_TOKEN).toString();
         String openid = result.get(OPEN_ID).toString();
         String userInfoJsom = WeChatUtil.getUserInfo(accessToken, openid);
+        log.info("用户授权获取信息:{}", userInfoJsom);
+        Assert.notEmpty(userInfoJsom, "获取用户信息失败");
+
         // 解析JSON数据
         JSONObject jsonObject = new JSONObject(userInfoJsom);
 

+ 1 - 1
snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/user/service/impl/SysUserServiceImpl.java

@@ -121,7 +121,7 @@ import java.util.stream.Collectors;
 @Service
 public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> implements SysUserService {
 
-    private static final String SNOWY_SYS_DEFAULT_PASSWORD_KEY = "SNOWY_SYS_DEFAULT_PASSWORD";
+    public static final String SNOWY_SYS_DEFAULT_PASSWORD_KEY = "SNOWY_SYS_DEFAULT_PASSWORD";
 
     private static final String SNOWY_SYS_DEFAULT_WORKBENCH_DATA_KEY = "SNOWY_SYS_DEFAULT_WORKBENCH_DATA";
 

+ 3 - 0
snowy-web-app/src/main/java/vip/xiaonuo/core/handler/GlobalExceptionUtil.java

@@ -135,6 +135,9 @@ public class GlobalExceptionUtil {
 
             // 通用业务异常,直接返回给前端
             commonResult = CommonResult.get(commonException.getCode(), commonException.getMsg(), null);
+        }  else if (e instanceof IllegalArgumentException illegalArgumentException) {
+            // Assert异常,直接返回给前端
+            commonResult = CommonResult.error(illegalArgumentException.getMessage());
         }  else {
             // 未知异常打印详情
             log.error(">>> 服务器未知异常,请求地址:{},具体信息:", CommonServletUtil.getRequest().getRequestURL(), e);

+ 1 - 1
snowy-web-app/src/main/java/vip/xiaonuo/weixin/miniapp/controller/WxPortalController.java

@@ -126,6 +126,6 @@ public class WxPortalController {
 
     @GetMapping("/pc")
     private CommonResult<String> getUserInfo(String code) {
-        return CommonResult.data(alarmUserService.getUserInfo(code));
+        return CommonResult.data(alarmUserService.getUserInfo(code, null, null));
     }
 }