From 661e56eb85e3bd0e35e94fca2d2ec59e77772da5 Mon Sep 17 00:00:00 2001 From: jinpengyong <jpy123456> Date: Thu, 01 Feb 2024 15:30:57 +0800 Subject: [PATCH] fix:补充提交 --- screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java | 93 ++++++++++++++++++++++++++++++++-------------- 1 files changed, 64 insertions(+), 29 deletions(-) diff --git a/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java b/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java index 5c26173..cde7c7f 100644 --- a/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java +++ b/screen-api/src/main/java/com/moral/api/service/impl/UserServiceImpl.java @@ -8,6 +8,7 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.moral.api.config.Interceptor.UserHelper; import com.moral.api.entity.*; import com.moral.api.mapper.*; import com.moral.api.pojo.bo.UserBO; @@ -15,17 +16,20 @@ import com.moral.api.pojo.enums.FileTableEnum; import com.moral.api.pojo.enums.StateEnum; import com.moral.api.pojo.enums.SysDictTypeEnum; -import com.moral.api.pojo.query.app.AppAllocationPushUserCond; + import com.moral.api.pojo.vo.file.FileVo; +import com.moral.api.pojo.vo.user.QxUser; import com.moral.api.service.FileTableService; import com.moral.api.service.ResponsibilityUnitService; import com.moral.api.service.UserService; import com.moral.api.utils.OperationLogUtils; +import com.moral.api.utils.StringUtils; import com.moral.api.utils.WechatUtils; import com.moral.api.vo.WxMssVo; import com.moral.constant.Constants; import com.moral.constant.ResponseCodeEnum; import com.moral.util.*; + import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -76,6 +80,9 @@ @Autowired private ResponsibilityUnitMapper responsibilityUnitMapper; + @Autowired + private ResponsibilityUnitService responsibilityUnitService; + @Value("${AES.KEY}") private String AESKey; @@ -110,6 +117,16 @@ } ResponsibilityUnit responsibilityUnit = responsibilityUnitMapper.selectById(userBo.getUnitId()); List<Integer> list = responsibilityUnitMapper.selectCodeList(SysDictTypeEnum.SYS_DEVICE.value, userBo.getId()); + result.put("userName", userBo.getUserName()); + result.put("unitId",userBo.getUnitId()); + result.put("userId", userBo.getId()); + result.put("account", userBo.getAccount()); + List<FileVo> listFile = fileTableService.list(userBo.getId(), FileTableEnum.APP_ALLOCATION.value); + result.put("file", CollectionUtils.isNotEmpty(listFile)?listFile.get(0):new FileVo()); + result.put("unName",Objects.nonNull(responsibilityUnit)&&Objects.nonNull(responsibilityUnit.getUnitName())?responsibilityUnit.getUnitName():"���������������"); + result.put("device",ObjectUtils.isEmpty(list)? StateEnum.NOT_EFFECTIVE.value :StateEnum.TAKE_EFFECT.value); + String userIdStr = new StringBuffer("00").append(userBo.getId().toString()).toString(); + String tokenResult = TokenUtils.getTokenById(userIdStr); //������������������ Map<String, Object> userInfo = new LinkedHashMap<>(); userInfo.put("userId", userBo.getId()); @@ -124,19 +141,25 @@ userInfo.put("isAdmin", userBo.getIsAdmin()); userInfo.put("organizationId",userBo.getOrganizationId()); userInfo.put("openid", openId); + if(StringUtils.isNotEmpty(tokenResult)){ + result.put("token", tokenResult); + result.put("code", ResponseCodeEnum.SUCCESS.getCode()); + result.put("msg", ResponseCodeEnum.SUCCESS.getMsg()); + sysLog("������������������" + userBo.getAccount()+" ;openId:"+openId,userBo); + //������openId���user������ + User user = userMapper.selectById(userBo.getId()); + user.setOpenId(openId); + userMapper.updateById(user); + TokenUtils.getRefreshTokenApp(tokenResult,userInfo); + return result; + } + try { //������token������������redis String token = TokenUtils.getTokenApp(new StringBuffer("00").append(userBo.getId().toString()).toString(),userInfo); result.put("token", token); - result.put("userName", userBo.getUserName()); - result.put("unitId",userBo.getUnitId()); - result.put("userId", userBo.getId()); - result.put("account", userBo.getAccount()); - List<FileVo> listFile = fileTableService.list(userBo.getId(), FileTableEnum.APP_ALLOCATION.value); - result.put("file", CollectionUtils.isNotEmpty(listFile)?listFile.get(0):new FileVo()); - result.put("unName",Objects.nonNull(responsibilityUnit)&&Objects.nonNull(responsibilityUnit.getUnitName())?responsibilityUnit.getUnitName():"���������������"); - result.put("device",ObjectUtils.isEmpty(list)? StateEnum.NOT_EFFECTIVE.value :StateEnum.TAKE_EFFECT.value); + } catch (Exception e) { log.error("token���������������" + e.getMessage()); result.put("code", ResponseCodeEnum.TOKEN_CREATE_ERROR.getCode()); @@ -185,7 +208,19 @@ // String nickName = rawDataJson.getString("nickName"); // String avatarUrl = rawDataJson.getString("avatarUrl"); } - + String userIdStr = new StringBuffer("00").append(user.getId().toString()).toString(); + String tokenResult = TokenUtils.getTokenById(userIdStr); + result.put("userName", user.getUserName()); + result.put("unitId",user.getUnitId()); + List<FileVo> listFile = fileTableService.list(user.getId(), FileTableEnum.APP_ALLOCATION.value); + result.put("file", CollectionUtils.isNotEmpty(listFile)?listFile.get(0):new FileVo()); + result.put("userId", user.getId()); + result.put("account", user.getAccount()); + ResponsibilityUnit responsibilityUnit = responsibilityUnitMapper.selectById(user.getUnitId()); + List<Integer> list = responsibilityUnitMapper.selectCodeList(SysDictTypeEnum.SYS_DEVICE.value, user.getId()); + result.put("device",ObjectUtils.isEmpty(list)? StateEnum.NOT_EFFECTIVE.value : StateEnum.TAKE_EFFECT.value); + result.put("unName",Objects.nonNull(responsibilityUnit)&&Objects.nonNull(responsibilityUnit.getUnitName())?responsibilityUnit.getUnitName():"���������������"); + result.put("openId",openid); Map<String, Object> userInfo = new LinkedHashMap<>(); userInfo.put("userId", user.getId()); userInfo.put("account", user.getAccount()); @@ -193,26 +228,24 @@ userInfo.put("email", user.getEmail()); userInfo.put("mobile", user.getMobile()); userInfo.put("unitId",user.getUnitId()); -// userInfo.put("unName",user.getAreaName()); userInfo.put("organizationId",user.getOrganizationId()); userInfo.put("wechat", user.getWechat()); userInfo.put("expireTime", DateUtils.dateToDateString(user.getExpireTime())); userInfo.put("isAdmin", user.getIsAdmin()); - ResponsibilityUnit responsibilityUnit = responsibilityUnitMapper.selectById(user.getUnitId()); - List<Integer> list = responsibilityUnitMapper.selectCodeList(SysDictTypeEnum.SYS_DEVICE.value, user.getId()); + if(StringUtils.isNotEmpty(tokenResult)){ + result.put("token", tokenResult); + result.put("code", ResponseCodeEnum.SUCCESS.getCode()); + result.put("msg", ResponseCodeEnum.SUCCESS.getMsg()); + sysLog("������������������" + user.getAccount()+" ;openId:"+openid,user); + TokenUtils.getRefreshTokenApp(tokenResult,userInfo); + return result; + } try { //������token������������redis String token = TokenUtils.getTokenApp(new StringBuffer("00").append(user.getId().toString()).toString(),userInfo); result.put("token", token); - result.put("userName", user.getUserName()); - result.put("unitId",user.getUnitId()); - List<FileVo> listFile = fileTableService.list(user.getId(), FileTableEnum.APP_ALLOCATION.value); - result.put("file", CollectionUtils.isNotEmpty(listFile)?listFile.get(0):new FileVo()); - result.put("userId", user.getId()); - result.put("account", user.getAccount()); - result.put("device",ObjectUtils.isEmpty(list)? StateEnum.NOT_EFFECTIVE.value : StateEnum.TAKE_EFFECT.value); - result.put("unName",Objects.nonNull(responsibilityUnit)&&Objects.nonNull(responsibilityUnit.getUnitName())?responsibilityUnit.getUnitName():"���������������"); - result.put("openId",openid); + + } catch (Exception e) { log.error("token���������������" + e.getMessage()); result.put("code", ResponseCodeEnum.TOKEN_CREATE_ERROR.getCode()); @@ -235,16 +268,15 @@ } - @Autowired - private ResponsibilityUnitService responsibilityUnitService; + /** * ��������������� * @param appAllocationPushUserCond */ @Override - @Async - public void pushOneUser(AppAllocationPushUserCond appAllocationPushUserCond) { - + @Async("asyncPoolTaskExecutor") + public void pushOneUser(Allocation appAllocationPushUserCond) { + QxUser currentUser = UserHelper.getCurrentUser(); ResponsibilityUnit responsibilityUnit = responsibilityUnitMapper.selectById(appAllocationPushUserCond.getUnitId()); Integer areaCode = responsibilityUnit.getAreaCode(); @@ -270,6 +302,9 @@ String url = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=" + WechatUtils.getAccessToken(); //������������ for (User user : users) { + if (user.getId().equals(currentUser.getUserId())){ + continue; + } RestTemplate restTemplate = new RestTemplate(); //��������������������� WxMssVo wxMssVo = new WxMssVo(); @@ -277,7 +312,7 @@ wxMssVo.setTemplate_id("YNqUZ1MgMvwY3G-NENVbcmIBR5dUotSdnwcz96CWrho");//������������������id wxMssVo.setLang("zh_CN"); wxMssVo.setMiniprogramState("formal"); -// wxMssVo.setPage("pages/index/index"); + wxMssVo.setPage("pages/index/index"); Map<String, Object> m = new HashMap<>(); HashMap<String, Object> map1 = new HashMap<>(); HashMap<String, Object> map2 = new HashMap<>(); @@ -295,7 +330,7 @@ ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, wxMssVo, String.class); String body = responseEntity.getBody(); - log.info("������:"+body+"������:"+user.getUserName()); + log.info("������:"+body+"������:"+user.getAccount()+"openID"+user.getOpenId()); } } -- Gitblit v1.8.0