JySceneUserAuthServiceImpl.java 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. package com.fdkankan.manage.service.impl;
  2. import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
  3. import com.fdkankan.manage.common.ResultCode;
  4. import com.fdkankan.manage.entity.JySceneAuth;
  5. import com.fdkankan.manage.entity.JySceneUserAuth;
  6. import com.fdkankan.manage.entity.JyUser;
  7. import com.fdkankan.manage.exception.BusinessException;
  8. import com.fdkankan.manage.mapper.IJySceneUserAuthMapper;
  9. import com.fdkankan.manage.service.IJySceneAuthService;
  10. import com.fdkankan.manage.service.IJySceneUserAuthService;
  11. import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  12. import com.fdkankan.manage.service.IJyUserService;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.stereotype.Service;
  16. import java.util.HashMap;
  17. import java.util.List;
  18. import java.util.stream.Collectors;
  19. /**
  20. * <p>
  21. * 服务实现类
  22. * </p>
  23. *
  24. * @author
  25. * @since 2023-08-24
  26. */
  27. @Service
  28. public class JySceneUserAuthServiceImpl extends ServiceImpl<IJySceneUserAuthMapper, JySceneUserAuth> implements IJySceneUserAuthService {
  29. @Autowired
  30. IJyUserService jyUserService;
  31. @Autowired
  32. IJySceneAuthService jySceneAuthService;
  33. @Override
  34. public Object getAuthList(String num) {
  35. if(StringUtils.isBlank(num)){
  36. throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
  37. }
  38. JySceneAuth jySceneAuth = jySceneAuthService.getByNum(num);
  39. if(jySceneAuth == null){
  40. return new JySceneAuth(0);
  41. }
  42. LambdaQueryWrapper<JySceneUserAuth> wrapper = new LambdaQueryWrapper<>();
  43. wrapper.eq(JySceneUserAuth::getNum,num);
  44. wrapper.orderByDesc(JySceneUserAuth::getCreateTime);
  45. List<JySceneUserAuth> list = this.list(wrapper);
  46. if(list.isEmpty()){
  47. return list;
  48. }
  49. List<Integer> jyUserIds = list.stream().map(JySceneUserAuth::getJyUserId).collect(Collectors.toList());
  50. HashMap<Integer, JyUser> map = jyUserService.getByIds(jyUserIds);
  51. for (JySceneUserAuth jySceneUserAuth : list) {
  52. JyUser jyUser = map.get(jySceneUserAuth.getJyUserId());
  53. if(jyUser != null){
  54. jySceneUserAuth.setRyId(jyUser.getRyId());
  55. jySceneUserAuth.setRyNickName(jyUser.getRyNickName());
  56. }
  57. }
  58. jySceneAuth.setUserAuthList(list);
  59. return jySceneAuth;
  60. }
  61. @Override
  62. public void addAuth(JySceneUserAuth param) {
  63. if(param.getAuthType() == null ){
  64. param.setAuthType(0);
  65. }
  66. jySceneAuthService.updateAuthTypeByNum(param.getNum(),param.getAuthType());
  67. if(param.getAuthType() == 1){
  68. return;
  69. }
  70. if(StringUtils.isBlank(param.getRyId()) || StringUtils.isBlank(param.getNum()) ){
  71. throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
  72. }
  73. JyUser jyUser = jyUserService.getByRyId(param.getRyId());
  74. if(jyUser == null){
  75. throw new BusinessException(ResultCode.JY_ID_NO_EXIST);
  76. }
  77. JySceneUserAuth auth = this.getByNumAndJyId(jyUser.getId(),param.getNum());
  78. if(auth != null){
  79. param.setId(auth.getId());
  80. }
  81. param.setJyUserId(jyUser.getId());
  82. this.saveOrUpdate(param);
  83. }
  84. @Override
  85. public void delAuth(JySceneUserAuth param) {
  86. if(param.getId() == null){
  87. throw new BusinessException(ResultCode.MISSING_REQUIRED_PARAMETERS);
  88. }
  89. this.removeById(param.getId());
  90. }
  91. private JySceneUserAuth getByNumAndJyId(Integer jyUserId, String num) {
  92. LambdaQueryWrapper<JySceneUserAuth> wrapper = new LambdaQueryWrapper<>();
  93. wrapper.eq(JySceneUserAuth::getJyUserId,jyUserId);
  94. wrapper.eq(JySceneUserAuth::getNum,num);
  95. return this.getOne(wrapper);
  96. }
  97. @Override
  98. public JySceneUserAuth getByNumAndRyId(String num, String ryId) {
  99. JyUser jyUser = jyUserService.getByRyId(ryId);
  100. if(jyUser == null){
  101. throw new BusinessException(ResultCode.JY_ID_NO_EXIST);
  102. }
  103. return this.getByNumAndJyId(jyUser.getId(),num);
  104. }
  105. }