1.按照规范修改配置文件,去除列表
Showing
50 changed files
with
1589 additions
and
960 deletions
| 1 | package com.topdraw.business.module.member.domain; | ||
| 2 | |||
| 3 | /** | ||
| 4 | * @author : | ||
| 5 | * @description: | ||
| 6 | * @function : | ||
| 7 | * @date :Created in 2022/6/27 15:38 | ||
| 8 | * @version: : | ||
| 9 | * @modified By: | ||
| 10 | * @since : modified in 2022/6/27 15:38 | ||
| 11 | */ | ||
| 12 | public interface MemberTypeConstant { | ||
| 13 | |||
| 14 | // 大屏 | ||
| 15 | Integer vis = 1; | ||
| 16 | // 微信 | ||
| 17 | Integer weixin = 2; | ||
| 18 | // app | ||
| 19 | Integer app = 3; | ||
| 20 | } |
| ... | @@ -5,7 +5,6 @@ import com.topdraw.business.module.points.available.repository.PointsAvailableRe | ... | @@ -5,7 +5,6 @@ import com.topdraw.business.module.points.available.repository.PointsAvailableRe |
| 5 | import com.topdraw.business.module.points.available.service.PointsAvailableService; | 5 | import com.topdraw.business.module.points.available.service.PointsAvailableService; |
| 6 | import com.topdraw.business.module.points.available.service.dto.PointsAvailableDTO; | 6 | import com.topdraw.business.module.points.available.service.dto.PointsAvailableDTO; |
| 7 | import com.topdraw.business.module.points.available.service.mapper.PointsAvailableMapper; | 7 | import com.topdraw.business.module.points.available.service.mapper.PointsAvailableMapper; |
| 8 | import com.topdraw.utils.RedisUtils; | ||
| 9 | import com.topdraw.utils.StringUtils; | 8 | import com.topdraw.utils.StringUtils; |
| 10 | import com.topdraw.utils.ValidationUtil; | 9 | import com.topdraw.utils.ValidationUtil; |
| 11 | import org.springframework.beans.factory.annotation.Autowired; | 10 | import org.springframework.beans.factory.annotation.Autowired; |
| ... | @@ -31,8 +30,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -31,8 +30,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 31 | private PointsAvailableRepository pointsAvailableRepository; | 30 | private PointsAvailableRepository pointsAvailableRepository; |
| 32 | @Autowired | 31 | @Autowired |
| 33 | private PointsAvailableMapper pointsAvailableMapper; | 32 | private PointsAvailableMapper pointsAvailableMapper; |
| 34 | @Autowired | ||
| 35 | private RedisUtils redisUtils; | ||
| 36 | 33 | ||
| 37 | @Override | 34 | @Override |
| 38 | public List<PointsAvailableDTO> findByMemberIdOrderByExpireTime(Long memberId) { | 35 | public List<PointsAvailableDTO> findByMemberIdOrderByExpireTime(Long memberId) { |
| ... | @@ -50,16 +47,11 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -50,16 +47,11 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 50 | @Transactional(rollbackFor = Exception.class) | 47 | @Transactional(rollbackFor = Exception.class) |
| 51 | public PointsAvailableDTO create(PointsAvailable resources) { | 48 | public PointsAvailableDTO create(PointsAvailable resources) { |
| 52 | try { | 49 | try { |
| 53 | |||
| 54 | this.redisUtils.doLock("PointsAvailable::create::id"+resources.getMemberId().toString()); | ||
| 55 | PointsAvailable pointsAvailable = this.pointsAvailableRepository.save(resources); | 50 | PointsAvailable pointsAvailable = this.pointsAvailableRepository.save(resources); |
| 56 | |||
| 57 | return this.pointsAvailableMapper.toDto(pointsAvailable); | 51 | return this.pointsAvailableMapper.toDto(pointsAvailable); |
| 58 | } catch (Exception e) { | 52 | } catch (Exception e) { |
| 59 | e.printStackTrace(); | 53 | e.printStackTrace(); |
| 60 | throw e; | 54 | throw e; |
| 61 | } finally { | ||
| 62 | this.redisUtils.doUnLock("PointsAvailable::create::id"+resources.getMemberId().toString()); | ||
| 63 | } | 55 | } |
| 64 | } | 56 | } |
| 65 | 57 | ||
| ... | @@ -67,7 +59,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -67,7 +59,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 67 | @Transactional(rollbackFor = Exception.class) | 59 | @Transactional(rollbackFor = Exception.class) |
| 68 | public PointsAvailableDTO update(PointsAvailable resources) { | 60 | public PointsAvailableDTO update(PointsAvailable resources) { |
| 69 | try { | 61 | try { |
| 70 | this.redisUtils.doLock("PointsAvailable::update::id"+resources.getMemberId().toString()); | ||
| 71 | PointsAvailable pointsAvailable = this.pointsAvailableRepository.findById(resources.getId()).orElseGet(PointsAvailable::new); | 62 | PointsAvailable pointsAvailable = this.pointsAvailableRepository.findById(resources.getId()).orElseGet(PointsAvailable::new); |
| 72 | ValidationUtil.isNull(pointsAvailable.getId(),"PointsAvailable","id",resources.getId()); | 63 | ValidationUtil.isNull(pointsAvailable.getId(),"PointsAvailable","id",resources.getId()); |
| 73 | pointsAvailable.copy(resources); | 64 | pointsAvailable.copy(resources); |
| ... | @@ -77,8 +68,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -77,8 +68,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 77 | } catch (Exception e) { | 68 | } catch (Exception e) { |
| 78 | e.printStackTrace(); | 69 | e.printStackTrace(); |
| 79 | throw e; | 70 | throw e; |
| 80 | } finally { | ||
| 81 | this.redisUtils.doUnLock("PointsAvailable::update::id"+resources.getMemberId().toString()); | ||
| 82 | } | 71 | } |
| 83 | } | 72 | } |
| 84 | 73 | ||
| ... | @@ -86,7 +75,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -86,7 +75,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 86 | @Transactional(rollbackFor = Exception.class) | 75 | @Transactional(rollbackFor = Exception.class) |
| 87 | public void delete(Long id) { | 76 | public void delete(Long id) { |
| 88 | Assert.notNull(id, "The given id must not be null!"); | 77 | Assert.notNull(id, "The given id must not be null!"); |
| 89 | this.redisUtils.doLock("PointsAvailable::delete::id"+id); | ||
| 90 | try { | 78 | try { |
| 91 | PointsAvailable PointsAvailable = this.pointsAvailableRepository.findById(id).orElseThrow( | 79 | PointsAvailable PointsAvailable = this.pointsAvailableRepository.findById(id).orElseThrow( |
| 92 | () -> new EmptyResultDataAccessException(String.format("No %s entity " + "with id %s " + "exists!", com.topdraw.business.module.points.available.domain.PointsAvailable.class, id), 1)); | 80 | () -> new EmptyResultDataAccessException(String.format("No %s entity " + "with id %s " + "exists!", com.topdraw.business.module.points.available.domain.PointsAvailable.class, id), 1)); |
| ... | @@ -94,22 +82,17 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -94,22 +82,17 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 94 | } catch (Exception e) { | 82 | } catch (Exception e) { |
| 95 | e.printStackTrace(); | 83 | e.printStackTrace(); |
| 96 | throw e; | 84 | throw e; |
| 97 | } finally { | ||
| 98 | this.redisUtils.doLock("PointsAvailable::delete::id"+id); | ||
| 99 | } | 85 | } |
| 100 | } | 86 | } |
| 101 | 87 | ||
| 102 | @Override | 88 | @Override |
| 103 | @Transactional(rollbackFor = Exception.class) | 89 | @Transactional(rollbackFor = Exception.class) |
| 104 | public void deleteBatchByIds(List<Long> id) { | 90 | public void deleteBatchByIds(List<Long> id) { |
| 105 | this.redisUtils.doLock("PointsAvailable::create::id"+id); | ||
| 106 | try { | 91 | try { |
| 107 | this.pointsAvailableRepository.deleteBatchByIds(id); | 92 | this.pointsAvailableRepository.deleteBatchByIds(id); |
| 108 | } catch (Exception e) { | 93 | } catch (Exception e) { |
| 109 | e.printStackTrace(); | 94 | e.printStackTrace(); |
| 110 | throw e; | 95 | throw e; |
| 111 | } finally { | ||
| 112 | this.redisUtils.doUnLock("PointsAvailable::create::id"+id); | ||
| 113 | } | 96 | } |
| 114 | } | 97 | } |
| 115 | 98 | ||
| ... | @@ -146,7 +129,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -146,7 +129,6 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 146 | @Override | 129 | @Override |
| 147 | public void delete4Custom(Long id) { | 130 | public void delete4Custom(Long id) { |
| 148 | Assert.notNull(id, "The given id must not be null!"); | 131 | Assert.notNull(id, "The given id must not be null!"); |
| 149 | this.redisUtils.doLock("PointsAvailable::delete::id"+id); | ||
| 150 | try { | 132 | try { |
| 151 | PointsAvailable PointsAvailable = this.pointsAvailableRepository.findById(id).orElseThrow( | 133 | PointsAvailable PointsAvailable = this.pointsAvailableRepository.findById(id).orElseThrow( |
| 152 | () -> new EmptyResultDataAccessException(String.format("No %s entity " + "with id %s " + "exists!", com.topdraw.business.module.points.available.domain.PointsAvailable.class, id), 1)); | 134 | () -> new EmptyResultDataAccessException(String.format("No %s entity " + "with id %s " + "exists!", com.topdraw.business.module.points.available.domain.PointsAvailable.class, id), 1)); |
| ... | @@ -154,22 +136,17 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { | ... | @@ -154,22 +136,17 @@ public class PointsAvailableServiceImpl implements PointsAvailableService { |
| 154 | } catch (Exception e) { | 136 | } catch (Exception e) { |
| 155 | e.printStackTrace(); | 137 | e.printStackTrace(); |
| 156 | throw e; | 138 | throw e; |
| 157 | } finally { | ||
| 158 | this.redisUtils.doUnLock("PointsAvailable::delete::id"+id); | ||
| 159 | } | 139 | } |
| 160 | } | 140 | } |
| 161 | 141 | ||
| 162 | @Override | 142 | @Override |
| 163 | public PointsAvailableDTO create4Custom(PointsAvailable resources) { | 143 | public PointsAvailableDTO create4Custom(PointsAvailable resources) { |
| 164 | this.redisUtils.doLock("PointsAvailable::create::id"+resources.getMemberId().toString()); | ||
| 165 | try { | 144 | try { |
| 166 | PointsAvailable pointsAvailable = this.pointsAvailableRepository.save(resources); | 145 | PointsAvailable pointsAvailable = this.pointsAvailableRepository.save(resources); |
| 167 | return this.pointsAvailableMapper.toDto(pointsAvailable); | 146 | return this.pointsAvailableMapper.toDto(pointsAvailable); |
| 168 | } catch (Exception e) { | 147 | } catch (Exception e) { |
| 169 | e.printStackTrace(); | 148 | e.printStackTrace(); |
| 170 | throw e; | 149 | throw e; |
| 171 | } finally { | ||
| 172 | this.redisUtils.doUnLock("PointsAvailable::create::id"+resources.getMemberId().toString()); | ||
| 173 | } | 150 | } |
| 174 | } | 151 | } |
| 175 | 152 | ... | ... |
| 1 | package com.topdraw.business.module.user.app.domain; | ||
| 2 | |||
| 3 | import cn.hutool.core.bean.BeanUtil; | ||
| 4 | import cn.hutool.core.bean.copier.CopyOptions; | ||
| 5 | import lombok.Data; | ||
| 6 | import lombok.experimental.Accessors; | ||
| 7 | import org.springframework.data.annotation.CreatedDate; | ||
| 8 | import org.springframework.data.annotation.LastModifiedDate; | ||
| 9 | import org.springframework.data.jpa.domain.support.AuditingEntityListener; | ||
| 10 | |||
| 11 | import javax.persistence.*; | ||
| 12 | import java.io.Serializable; | ||
| 13 | import java.sql.Timestamp; | ||
| 14 | |||
| 15 | /** | ||
| 16 | * @author XiangHan | ||
| 17 | * @date 2022-06-27 | ||
| 18 | */ | ||
| 19 | @Entity | ||
| 20 | @Data | ||
| 21 | @EntityListeners(AuditingEntityListener.class) | ||
| 22 | @Accessors(chain = true) | ||
| 23 | @Table(name="uc_user_app") | ||
| 24 | public class UserApp implements Serializable { | ||
| 25 | |||
| 26 | // 第三方账号类型 3:微信;4:QQ;5:微博;6:苹果账号 | ||
| 27 | @Transient | ||
| 28 | private Integer accountType; | ||
| 29 | |||
| 30 | // 第三方账号 | ||
| 31 | @Transient | ||
| 32 | private String account; | ||
| 33 | |||
| 34 | // ID | ||
| 35 | @Id | ||
| 36 | @GeneratedValue(strategy = GenerationType.IDENTITY) | ||
| 37 | @Column(name = "id") | ||
| 38 | private Long id; | ||
| 39 | |||
| 40 | // 会员id | ||
| 41 | @Column(name = "member_id") | ||
| 42 | private Long memberId; | ||
| 43 | |||
| 44 | // 用户名(一般为手机号) | ||
| 45 | @Column(name = "username", nullable = false) | ||
| 46 | private String username; | ||
| 47 | |||
| 48 | // 密码 | ||
| 49 | @Column(name = "password") | ||
| 50 | private String password; | ||
| 51 | |||
| 52 | // 类型 0:苹果;1:安卓;-1:未知 | ||
| 53 | @Column(name = "type", nullable = false) | ||
| 54 | private Integer type; | ||
| 55 | |||
| 56 | // 状态 0:禁用;1:生效;-1:注销 | ||
| 57 | @Column(name = "status", nullable = false) | ||
| 58 | private Integer status; | ||
| 59 | |||
| 60 | // 昵称 | ||
| 61 | @Column(name = "nickname") | ||
| 62 | private String nickname; | ||
| 63 | |||
| 64 | // 头像地址 | ||
| 65 | @Column(name = "headimgurl") | ||
| 66 | private String headimgurl; | ||
| 67 | |||
| 68 | // 邮箱 | ||
| 69 | @Column(name = "email") | ||
| 70 | private String email; | ||
| 71 | |||
| 72 | // 手机号 | ||
| 73 | @Column(name = "cellphone") | ||
| 74 | private String cellphone; | ||
| 75 | |||
| 76 | // 性别 0:女;1:男;-1:其他 | ||
| 77 | @Column(name = "gender") | ||
| 78 | private Integer gender; | ||
| 79 | |||
| 80 | // 生日 | ||
| 81 | @Column(name = "birthday") | ||
| 82 | private String birthday; | ||
| 83 | |||
| 84 | // 最近活跃时间 | ||
| 85 | @Column(name = "last_active_time") | ||
| 86 | private Timestamp lastActiveTime; | ||
| 87 | |||
| 88 | // 注销时间 | ||
| 89 | @Column(name = "delete_time") | ||
| 90 | private Timestamp deleteTime; | ||
| 91 | |||
| 92 | // 标签 | ||
| 93 | @Column(name = "tags") | ||
| 94 | private String tags; | ||
| 95 | |||
| 96 | // 描述 | ||
| 97 | @Column(name = "description") | ||
| 98 | private String description; | ||
| 99 | |||
| 100 | // 创建时间 | ||
| 101 | @CreatedDate | ||
| 102 | @Column(name = "create_time") | ||
| 103 | private Timestamp createTime; | ||
| 104 | |||
| 105 | // 更新时间 | ||
| 106 | @LastModifiedDate | ||
| 107 | @Column(name = "update_time") | ||
| 108 | private Timestamp updateTime; | ||
| 109 | |||
| 110 | public void copy(UserApp source){ | ||
| 111 | BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); | ||
| 112 | } | ||
| 113 | } |
| 1 | package com.topdraw.business.module.user.app.domain; | ||
| 2 | |||
| 3 | import cn.hutool.core.bean.BeanUtil; | ||
| 4 | import cn.hutool.core.bean.copier.CopyOptions; | ||
| 5 | import lombok.Data; | ||
| 6 | import lombok.experimental.Accessors; | ||
| 7 | import org.springframework.data.annotation.CreatedDate; | ||
| 8 | import org.springframework.data.annotation.LastModifiedDate; | ||
| 9 | import org.springframework.data.jpa.domain.support.AuditingEntityListener; | ||
| 10 | |||
| 11 | import javax.persistence.*; | ||
| 12 | import java.io.Serializable; | ||
| 13 | import java.sql.Timestamp; | ||
| 14 | |||
| 15 | /** | ||
| 16 | * @author XiangHan | ||
| 17 | * @date 2022-06-27 | ||
| 18 | */ | ||
| 19 | @Entity | ||
| 20 | @Data | ||
| 21 | @EntityListeners(AuditingEntityListener.class) | ||
| 22 | @Accessors(chain = true) | ||
| 23 | @Table(name="uc_user_app_bind") | ||
| 24 | public class UserAppBind implements Serializable { | ||
| 25 | |||
| 26 | @Transient | ||
| 27 | private String username; | ||
| 28 | |||
| 29 | @Transient | ||
| 30 | private String password; | ||
| 31 | @Transient | ||
| 32 | private String headImgUrl; | ||
| 33 | |||
| 34 | // 主键 | ||
| 35 | @Id | ||
| 36 | @GeneratedValue(strategy = GenerationType.IDENTITY) | ||
| 37 | @Column(name = "id") | ||
| 38 | private Long id; | ||
| 39 | |||
| 40 | // 第三方账号类型 3:微信;4:QQ;5:微博;6:苹果账号 | ||
| 41 | @Column(name = "account_type", nullable = false) | ||
| 42 | private Integer accountType; | ||
| 43 | |||
| 44 | // 第三方账号 | ||
| 45 | @Column(name = "account", nullable = false) | ||
| 46 | private String account; | ||
| 47 | |||
| 48 | // app账号id | ||
| 49 | @Column(name = "user_app_id", nullable = false) | ||
| 50 | private Long userAppId; | ||
| 51 | |||
| 52 | // 绑定状态 0:解绑;1 绑定 | ||
| 53 | @Column(name = "status", nullable = false) | ||
| 54 | private Integer status; | ||
| 55 | |||
| 56 | // 昵称 | ||
| 57 | @Column(name = "nickname", nullable = false) | ||
| 58 | private String nickname; | ||
| 59 | |||
| 60 | // 创建时间 | ||
| 61 | @CreatedDate | ||
| 62 | @Column(name = "create_time") | ||
| 63 | private Timestamp createTime; | ||
| 64 | |||
| 65 | // 更新时间 | ||
| 66 | @LastModifiedDate | ||
| 67 | @Column(name = "update_time") | ||
| 68 | private Timestamp updateTime; | ||
| 69 | |||
| 70 | public void copy(UserAppBind source){ | ||
| 71 | BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); | ||
| 72 | } | ||
| 73 | } |
| 1 | package com.topdraw.business.module.user.app.domain; | ||
| 2 | |||
| 3 | /** | ||
| 4 | * @author : | ||
| 5 | * @description: | ||
| 6 | * @function : | ||
| 7 | * @date :Created in 2022/6/30 13:18 | ||
| 8 | * @version: : | ||
| 9 | * @modified By: | ||
| 10 | * @since : modified in 2022/6/30 13:18 | ||
| 11 | */ | ||
| 12 | public class UserAppBindBuilder { | ||
| 13 | |||
| 14 | public static UserAppBind build(Long userAppId, String account, Integer accountType){ | ||
| 15 | UserAppBind userAppBind = new UserAppBind(); | ||
| 16 | userAppBind.setAccount(account); | ||
| 17 | userAppBind.setUserAppId(userAppId); | ||
| 18 | userAppBind.setAccountType(accountType); | ||
| 19 | userAppBind.setStatus(UserAppStatusConstant.VALID_STATUS); | ||
| 20 | return userAppBind; | ||
| 21 | } | ||
| 22 | |||
| 23 | } |
| 1 | package com.topdraw.resttemplate; | 1 | package com.topdraw.business.module.user.app.domain; |
| 2 | 2 | ||
| 3 | /** | 3 | /** |
| 4 | * @author : | 4 | * @author : |
| 5 | * @description: | 5 | * @description: |
| 6 | * @function : | 6 | * @function : |
| 7 | * @date :Created in 2022/6/18 17:45 | 7 | * @date :Created in 2022/6/30 11:42 |
| 8 | * @version: : | 8 | * @version: : |
| 9 | * @modified By: | 9 | * @modified By: |
| 10 | * @since : modified in 2022/6/18 17:45 | 10 | * @since : modified in 2022/6/30 11:42 |
| 11 | */ | 11 | */ |
| 12 | public interface ResponseStatusConstant { | 12 | public interface UserAppBindStatusConstant { |
| 13 | 13 | // 绑定状态 0:解绑;1 绑定 | |
| 14 | String OK = "00000"; | 14 | Integer VALID_STATUS = 1; |
| 15 | Integer INVALID_STATUS = 0; | ||
| 15 | 16 | ||
| 16 | } | 17 | } | ... | ... |
| 1 | package com.topdraw.business.module.user.app.domain; | ||
| 2 | |||
| 3 | import com.topdraw.util.TimestampUtil; | ||
| 4 | import org.apache.commons.lang3.StringUtils; | ||
| 5 | |||
| 6 | import java.util.Objects; | ||
| 7 | |||
| 8 | /** | ||
| 9 | * @author : | ||
| 10 | * @description: | ||
| 11 | * @function : | ||
| 12 | * @date :Created in 2022/6/30 11:35 | ||
| 13 | * @version: : | ||
| 14 | * @modified By: | ||
| 15 | * @since : modified in 2022/6/30 11:35 | ||
| 16 | */ | ||
| 17 | public class UserAppBuilder { | ||
| 18 | |||
| 19 | |||
| 20 | |||
| 21 | public static UserApp build(Long memberId, UserApp resource){ | ||
| 22 | |||
| 23 | UserApp userApp = new UserApp(); | ||
| 24 | userApp.setId(null); | ||
| 25 | userApp.setMemberId(memberId); | ||
| 26 | userApp.setUsername(resource.getUsername()); | ||
| 27 | userApp.setTags(resource.getTags()); | ||
| 28 | userApp.setLastActiveTime(TimestampUtil.now()); | ||
| 29 | userApp.setEmail(resource.getEmail()); | ||
| 30 | userApp.setType(Objects.isNull(resource.getType()) ? resource.getType() : -1); | ||
| 31 | userApp.setNickname(StringUtils.isNotBlank(resource.getNickname()) ? resource.getNickname() : resource.getUsername()); | ||
| 32 | userApp.setHeadimgurl(resource.getHeadimgurl()); | ||
| 33 | userApp.setPassword(resource.getPassword()); | ||
| 34 | userApp.setCellphone(StringUtils.isNotBlank(resource.getCellphone()) ? resource.getCellphone() : resource.getUsername()); | ||
| 35 | userApp.setBirthday(StringUtils.isNotBlank(resource.getBirthday()) ? resource.getBirthday() : "1900-01-01"); | ||
| 36 | userApp.setGender(Objects.nonNull(resource.getGender()) ? resource.getGender() : 0); | ||
| 37 | userApp.setStatus(UserAppStatusConstant.VALID_STATUS); | ||
| 38 | userApp.setCreateTime(null); | ||
| 39 | userApp.setUpdateTime(null); | ||
| 40 | return userApp; | ||
| 41 | } | ||
| 42 | |||
| 43 | |||
| 44 | } |
| 1 | package com.topdraw.business.module.user.app.domain; | ||
| 2 | |||
| 3 | import cn.hutool.core.bean.BeanUtil; | ||
| 4 | import cn.hutool.core.bean.copier.CopyOptions; | ||
| 5 | import lombok.Data; | ||
| 6 | import lombok.experimental.Accessors; | ||
| 7 | import org.springframework.data.jpa.domain.support.AuditingEntityListener; | ||
| 8 | |||
| 9 | import javax.persistence.*; | ||
| 10 | import java.io.Serializable; | ||
| 11 | |||
| 12 | /** | ||
| 13 | * @author XiangHan | ||
| 14 | * @date 2022-06-27 | ||
| 15 | */ | ||
| 16 | @Entity | ||
| 17 | @Data | ||
| 18 | @EntityListeners(AuditingEntityListener.class) | ||
| 19 | @Accessors(chain = true) | ||
| 20 | @Table(name="uc_user_app") | ||
| 21 | public class UserAppSimple implements Serializable { | ||
| 22 | |||
| 23 | // ID | ||
| 24 | @Id | ||
| 25 | @GeneratedValue(strategy = GenerationType.IDENTITY) | ||
| 26 | @Column(name = "id") | ||
| 27 | private Long id; | ||
| 28 | |||
| 29 | // 会员id | ||
| 30 | @Column(name = "member_id") | ||
| 31 | private Long memberId; | ||
| 32 | |||
| 33 | // 用户名(一般为手机号) | ||
| 34 | @Column(name = "username", nullable = false) | ||
| 35 | private String username; | ||
| 36 | |||
| 37 | // 状态 0:禁用;1:生效;-1:注销 | ||
| 38 | @Column(name = "status", nullable = false) | ||
| 39 | private Integer status; | ||
| 40 | |||
| 41 | // 昵称 | ||
| 42 | @Column(name = "nickname") | ||
| 43 | private String nickname; | ||
| 44 | |||
| 45 | // 头像地址 | ||
| 46 | @Column(name = "headimgurl") | ||
| 47 | private String headimgurl; | ||
| 48 | |||
| 49 | // 邮箱 | ||
| 50 | @Column(name = "email") | ||
| 51 | private String email; | ||
| 52 | |||
| 53 | // 手机号 | ||
| 54 | @Column(name = "cellphone") | ||
| 55 | private String cellphone; | ||
| 56 | |||
| 57 | // 性别 0:女;1:男;-1:其他 | ||
| 58 | @Column(name = "gender") | ||
| 59 | private Integer gender; | ||
| 60 | |||
| 61 | // 生日 | ||
| 62 | @Column(name = "birthday") | ||
| 63 | private String birthday; | ||
| 64 | |||
| 65 | // 标签 | ||
| 66 | @Column(name = "tags") | ||
| 67 | private String tags; | ||
| 68 | |||
| 69 | // 描述 | ||
| 70 | @Column(name = "description") | ||
| 71 | private String description; | ||
| 72 | |||
| 73 | public void copy(UserAppSimple source){ | ||
| 74 | BeanUtil.copyProperties(source,this, CopyOptions.create().setIgnoreNullValue(true)); | ||
| 75 | } | ||
| 76 | } |
| 1 | package com.topdraw.business.module.user.app.domain; | ||
| 2 | |||
| 3 | /** | ||
| 4 | * @author : | ||
| 5 | * @description: | ||
| 6 | * @function : | ||
| 7 | * @date :Created in 2022/6/30 11:42 | ||
| 8 | * @version: : | ||
| 9 | * @modified By: | ||
| 10 | * @since : modified in 2022/6/30 11:42 | ||
| 11 | */ | ||
| 12 | public interface UserAppStatusConstant { | ||
| 13 | // 状态 0:禁用;1:生效;-1:注销 | ||
| 14 | Integer VALID_STATUS = 1; | ||
| 15 | Integer FORBID_STATUS = 0; | ||
| 16 | Integer INVALID_STATUS = -1; | ||
| 17 | |||
| 18 | } |
| 1 | package com.topdraw.business.module.user.app.repository; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 4 | import org.springframework.data.jpa.repository.JpaRepository; | ||
| 5 | import org.springframework.data.jpa.repository.JpaSpecificationExecutor; | ||
| 6 | import org.springframework.data.jpa.repository.Modifying; | ||
| 7 | import org.springframework.data.jpa.repository.Query; | ||
| 8 | import org.springframework.data.repository.query.Param; | ||
| 9 | |||
| 10 | import java.util.List; | ||
| 11 | import java.util.Optional; | ||
| 12 | |||
| 13 | /** | ||
| 14 | * @author XiangHan | ||
| 15 | * @date 2022-06-27 | ||
| 16 | */ | ||
| 17 | public interface UserAppBindRepository extends JpaRepository<UserAppBind, Long>, JpaSpecificationExecutor<UserAppBind> { | ||
| 18 | |||
| 19 | Optional<UserAppBind> findFirstByAccount(String account); | ||
| 20 | |||
| 21 | @Modifying | ||
| 22 | @Query(value = "UPDATE `uc_user_app_bind` SET `status` = 0 , `update_time` = now() WHERE `account` = ?1 AND `account_type` = ?2", nativeQuery = true) | ||
| 23 | Integer cancelUserAppBind(String account, Integer accountType); | ||
| 24 | |||
| 25 | Optional<UserAppBind> findFirstByAccountAndAccountType(String account, Integer accountType); | ||
| 26 | |||
| 27 | @Modifying | ||
| 28 | @Query(value = "UPDATE `uc_user_app_bind` SET `status` = :#{#resources.status}, `update_time` = now(), " + | ||
| 29 | " `user_app_id` = :#{#resources.userAppId}, `nickname` = :#{#resources.nickname} " + | ||
| 30 | " WHERE `account` = :#{#resources.account} AND accountType = :#{#resources.accountType}", nativeQuery = true) | ||
| 31 | Integer updateThirdAccount(@Param("resources") UserAppBind resources); | ||
| 32 | |||
| 33 | @Modifying | ||
| 34 | @Query(value = "UPDATE `uc_user_app_bind` SET `status` = :#{#resources.status}, `update_time` = now(), " + | ||
| 35 | " `user_app_id` = :#{#resources.userAppId} WHERE `account` = :#{#resources.account} AND accountType = :#{#resources.accountType}", | ||
| 36 | nativeQuery = true) | ||
| 37 | Integer updateThirdAccountStatusAndUserAppId(@Param("resources") UserAppBind resources); | ||
| 38 | |||
| 39 | @Modifying | ||
| 40 | @Query(value = "UPDATE `uc_user_app_bind` SET `status` = 1, `update_time` = now(), " + | ||
| 41 | " `user_app_id` = :#{#resources.userAppId} WHERE `account` = :#{#resources.account} AND accountType = :#{#resources.accountType}", | ||
| 42 | nativeQuery = true) | ||
| 43 | Integer updateValidStatusAndUserAppId(@Param("resources") UserAppBind resources); | ||
| 44 | |||
| 45 | |||
| 46 | @Modifying | ||
| 47 | @Query(value = "UPDATE `uc_user_app_bind` SET `update_time` = now(), `nickname` = :#{#resources.nickname} " + | ||
| 48 | " WHERE `account` = :#{#resources.account} AND `account_type` = :#{#resources.accountType}", nativeQuery = true) | ||
| 49 | Integer updateThirdAccountNickname(@Param("resources") UserAppBind resources); | ||
| 50 | |||
| 51 | @Modifying | ||
| 52 | @Query(value = "UPDATE `uc_user_app_bind` SET `update_time` = now(), `nickname` = :#{#resources.nickname}, `status` = 1, `user_app_id` = :#{#resources.userAppId} " + | ||
| 53 | " WHERE `account` = :#{#resources.account} AND `account_type` = :#{#resources.accountType}", nativeQuery = true) | ||
| 54 | Integer updateValidStatusAndUserAppIdAndNickname(@Param("resources") UserAppBind resources); | ||
| 55 | |||
| 56 | @Modifying | ||
| 57 | @Query(value = "UPDATE `uc_user_app_bind` SET `update_time` = now(), `status` = 0 WHERE `id` IN ?1", nativeQuery = true) | ||
| 58 | Integer appCancellation(List<Long> ids); | ||
| 59 | |||
| 60 | List<UserAppBind> findByUserAppId(Long id); | ||
| 61 | } | ||
| 62 |
| 1 | package com.topdraw.business.module.user.app.repository; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserApp; | ||
| 4 | import org.springframework.data.jpa.repository.JpaRepository; | ||
| 5 | import org.springframework.data.jpa.repository.JpaSpecificationExecutor; | ||
| 6 | import org.springframework.data.jpa.repository.Modifying; | ||
| 7 | import org.springframework.data.jpa.repository.Query; | ||
| 8 | import org.springframework.data.repository.query.Param; | ||
| 9 | |||
| 10 | import java.util.Optional; | ||
| 11 | |||
| 12 | /** | ||
| 13 | * @author XiangHan | ||
| 14 | * @date 2022-06-27 | ||
| 15 | */ | ||
| 16 | public interface UserAppRepository extends JpaRepository<UserApp, Long>, JpaSpecificationExecutor<UserApp> { | ||
| 17 | |||
| 18 | @Query(value = "SELECT ua.* FROM uc_user_app ua WHERE ua.`username` = ?1 and ua.`status` IN (0 , 1)", nativeQuery = true) | ||
| 19 | Optional<UserApp> findByUsername(String username); | ||
| 20 | |||
| 21 | Optional<UserApp> findByUsernameAndPassword(String username, String password); | ||
| 22 | |||
| 23 | @Modifying | ||
| 24 | @Query(value = "UPDATE `uc_user_app` SET `update_time` = now(), `last_active_time` = now() WHERE `username` = ?1 AND `status` = 1 ", nativeQuery = true) | ||
| 25 | Integer updateLastActiveTime(String username); | ||
| 26 | |||
| 27 | @Modifying | ||
| 28 | @Query(value = "UPDATE `uc_user_app` SET `update_time` = now(), `password` = ?2 WHERE `username` = ?1 AND `status` = 1", nativeQuery = true) | ||
| 29 | Integer updatePasswordByUsername(String username, String password); | ||
| 30 | |||
| 31 | @Modifying | ||
| 32 | @Query(value = "UPDATE `uc_user_app` SET `update_time` = now(), `nickname` = :#{#resources.nickname}, " + | ||
| 33 | " `headimgurl` = :#{#resources.headimgurl}, `email` = :#{#resources.email}, `cellphone` = :#{#resources.cellphone}, " + | ||
| 34 | " `gender` = :#{#resources.gender}, `birthday` = :#{#resources.birthday}, `tags` = :#{#resources.tags}, `description` = :#{#resources.description}" + | ||
| 35 | " WHERE `id` = :#{#resources.id}", nativeQuery = true) | ||
| 36 | Integer updateAppInfo(@Param("resources") UserApp resources); | ||
| 37 | |||
| 38 | @Modifying | ||
| 39 | @Query(value = "UPDATE `uc_user_app` SET `update_time` = now(), `password` = ?2 WHERE `id` = ?1", nativeQuery = true) | ||
| 40 | Integer updatePasswordById(Long id, String password); | ||
| 41 | |||
| 42 | @Modifying | ||
| 43 | @Query(value = "UPDATE `uc_user_app` SET `update_time` = now(),`delete_time` = now(), `status` = -1 WHERE `id` = ?1", nativeQuery = true) | ||
| 44 | Integer appCancellation(Long id); | ||
| 45 | |||
| 46 | @Modifying | ||
| 47 | @Query(value = "UPDATE `uc_user_app` SET `last_active_time` = now(), `nickname` = ?2, `headimgurl` = ?3 " + | ||
| 48 | " WHERE `username` = ?1 and `status` = 1 ", nativeQuery = true) | ||
| 49 | Integer updateAppLastActiveTimeAndNicknameAndHeadImg(String username, String nickname, String headimgurl); | ||
| 50 | } |
src/main/java/com/topdraw/business/module/user/app/repository/UserAppSimpleRepository.java
0 → 100644
| 1 | package com.topdraw.business.module.user.app.repository; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserAppSimple; | ||
| 4 | import org.springframework.data.jpa.repository.JpaRepository; | ||
| 5 | import org.springframework.data.jpa.repository.JpaSpecificationExecutor; | ||
| 6 | |||
| 7 | /** | ||
| 8 | * @author XiangHan | ||
| 9 | * @date 2022-06-27 | ||
| 10 | */ | ||
| 11 | public interface UserAppSimpleRepository extends JpaRepository<UserAppSimple, Long>, JpaSpecificationExecutor<UserAppSimple> { | ||
| 12 | |||
| 13 | } |
| 1 | package com.topdraw.business.module.user.app.service; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 4 | import com.topdraw.business.module.user.app.service.dto.UserAppBindDTO; | ||
| 5 | |||
| 6 | import java.util.List; | ||
| 7 | |||
| 8 | /** | ||
| 9 | * @author XiangHan | ||
| 10 | * @date 2022-06-27 | ||
| 11 | */ | ||
| 12 | public interface UserAppBindService { | ||
| 13 | |||
| 14 | /** | ||
| 15 | * 根据ID查询 | ||
| 16 | * @param id ID | ||
| 17 | * @return UserAppBindDTO | ||
| 18 | */ | ||
| 19 | UserAppBindDTO findById(Long id); | ||
| 20 | |||
| 21 | /** | ||
| 22 | * | ||
| 23 | * @param resources | ||
| 24 | */ | ||
| 25 | UserAppBindDTO create(UserAppBind resources); | ||
| 26 | |||
| 27 | /** | ||
| 28 | * | ||
| 29 | * @param resources | ||
| 30 | */ | ||
| 31 | void update(UserAppBind resources); | ||
| 32 | |||
| 33 | /** | ||
| 34 | * | ||
| 35 | * @param id | ||
| 36 | */ | ||
| 37 | void delete(Long id); | ||
| 38 | |||
| 39 | /** | ||
| 40 | * | ||
| 41 | * @param account | ||
| 42 | * @return | ||
| 43 | */ | ||
| 44 | UserAppBindDTO findFirstByAccount(String account); | ||
| 45 | |||
| 46 | /** | ||
| 47 | * | ||
| 48 | * @param account | ||
| 49 | * @return | ||
| 50 | */ | ||
| 51 | boolean cancelUserAppBind(String account, Integer accountType); | ||
| 52 | |||
| 53 | /** | ||
| 54 | * | ||
| 55 | * @param account | ||
| 56 | * @param accountType | ||
| 57 | * @return | ||
| 58 | */ | ||
| 59 | UserAppBindDTO findFirstByAccountAndAccountType(String account, Integer accountType); | ||
| 60 | |||
| 61 | /** | ||
| 62 | * | ||
| 63 | * @param resources | ||
| 64 | * @return | ||
| 65 | */ | ||
| 66 | boolean updateThirdAccount(UserAppBind resources); | ||
| 67 | |||
| 68 | /** | ||
| 69 | * | ||
| 70 | * @param resources | ||
| 71 | * @return | ||
| 72 | */ | ||
| 73 | boolean updateThirdAccountNickname(UserAppBind resources); | ||
| 74 | |||
| 75 | /** | ||
| 76 | * | ||
| 77 | * @param resources | ||
| 78 | * @return | ||
| 79 | */ | ||
| 80 | boolean updateValidStatusAndUserAppIdAndNickname(UserAppBind resources); | ||
| 81 | |||
| 82 | boolean appCancellation(List<Long> ids); | ||
| 83 | |||
| 84 | List<UserAppBindDTO> findByUserAppId(Long id); | ||
| 85 | } |
| 1 | package com.topdraw.business.module.user.app.service; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserApp; | ||
| 4 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 5 | import com.topdraw.business.module.user.app.service.dto.UserAppDTO; | ||
| 6 | import com.topdraw.business.module.user.app.service.dto.UserAppSimpleDTO; | ||
| 7 | |||
| 8 | /** | ||
| 9 | * @author XiangHan | ||
| 10 | * @date 2022-06-27 | ||
| 11 | */ | ||
| 12 | public interface UserAppService { | ||
| 13 | |||
| 14 | /** | ||
| 15 | * 根据ID查询 | ||
| 16 | * @param id ID | ||
| 17 | * @return UserAppDTO | ||
| 18 | */ | ||
| 19 | UserAppDTO findById(Long id); | ||
| 20 | |||
| 21 | /** | ||
| 22 | * 检查账号和秘密 | ||
| 23 | * @param username | ||
| 24 | * @return | ||
| 25 | */ | ||
| 26 | UserAppDTO findByUsername(String username); | ||
| 27 | |||
| 28 | |||
| 29 | /** | ||
| 30 | * | ||
| 31 | * @param resources | ||
| 32 | */ | ||
| 33 | UserAppDTO create(UserApp resources); | ||
| 34 | |||
| 35 | /** | ||
| 36 | * | ||
| 37 | * @param resources | ||
| 38 | */ | ||
| 39 | UserAppDTO update(UserApp resources); | ||
| 40 | |||
| 41 | /** | ||
| 42 | * | ||
| 43 | * @param id | ||
| 44 | */ | ||
| 45 | void delete(Long id); | ||
| 46 | |||
| 47 | /** | ||
| 48 | * | ||
| 49 | * @param resources | ||
| 50 | * @return | ||
| 51 | */ | ||
| 52 | boolean updateLastActiveTime(UserAppBind resources); | ||
| 53 | |||
| 54 | /** | ||
| 55 | * | ||
| 56 | * @param resources | ||
| 57 | * @return | ||
| 58 | */ | ||
| 59 | boolean updatePasswordByUsername(UserApp resources); | ||
| 60 | |||
| 61 | /** | ||
| 62 | * | ||
| 63 | * @param resources | ||
| 64 | * @return | ||
| 65 | */ | ||
| 66 | boolean updatePasswordById(UserApp resources); | ||
| 67 | |||
| 68 | /** | ||
| 69 | * | ||
| 70 | * @param resources | ||
| 71 | * @return | ||
| 72 | */ | ||
| 73 | boolean updateAppInfo(UserApp resources); | ||
| 74 | |||
| 75 | |||
| 76 | boolean appCancellation(Long id); | ||
| 77 | |||
| 78 | |||
| 79 | boolean updateAppLastActiveTimeAndNicknameAndHeadImg(UserApp resources); | ||
| 80 | } |
| 1 | package com.topdraw.business.module.user.app.service.dto; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.member.service.dto.MemberDTO; | ||
| 4 | import lombok.Data; | ||
| 5 | |||
| 6 | /** | ||
| 7 | * @author : | ||
| 8 | * @description: | ||
| 9 | * @function : | ||
| 10 | * @date :Created in 2022/7/11 21:21 | ||
| 11 | * @version: : | ||
| 12 | * @modified By: | ||
| 13 | * @since : modified in 2022/7/11 21:21 | ||
| 14 | */ | ||
| 15 | @Data | ||
| 16 | public class AppRegisterDTO { | ||
| 17 | |||
| 18 | private UserAppDTO userAppDTO; | ||
| 19 | |||
| 20 | private MemberDTO memberDTO; | ||
| 21 | |||
| 22 | } |
| 1 | package com.topdraw.business.module.user.app.service.dto; | ||
| 2 | |||
| 3 | import lombok.Data; | ||
| 4 | |||
| 5 | import java.io.Serializable; | ||
| 6 | import java.sql.Timestamp; | ||
| 7 | |||
| 8 | |||
| 9 | /** | ||
| 10 | * @author XiangHan | ||
| 11 | * @date 2022-06-27 | ||
| 12 | */ | ||
| 13 | @Data | ||
| 14 | public class UserAppBindDTO implements Serializable { | ||
| 15 | |||
| 16 | // 主键 | ||
| 17 | private Long id; | ||
| 18 | |||
| 19 | // 第三方账号类型 3:微信;4:QQ;5:微博;6:苹果账号 | ||
| 20 | private Integer accountType; | ||
| 21 | |||
| 22 | // 第三方账号 | ||
| 23 | private String account; | ||
| 24 | |||
| 25 | // app账号id | ||
| 26 | private Long userAppId; | ||
| 27 | |||
| 28 | // 绑定状态 0:解绑;1 绑定 | ||
| 29 | private Integer status; | ||
| 30 | |||
| 31 | // 昵称 | ||
| 32 | private String nickname; | ||
| 33 | |||
| 34 | // 创建时间 | ||
| 35 | private Timestamp createTime; | ||
| 36 | |||
| 37 | // 更新时间 | ||
| 38 | private Timestamp updateTime; | ||
| 39 | } |
| 1 | package com.topdraw.business.module.user.app.service.dto; | ||
| 2 | |||
| 3 | import lombok.Data; | ||
| 4 | |||
| 5 | import javax.persistence.Transient; | ||
| 6 | import java.io.Serializable; | ||
| 7 | import java.sql.Timestamp; | ||
| 8 | |||
| 9 | |||
| 10 | /** | ||
| 11 | * @author XiangHan | ||
| 12 | * @date 2022-06-27 | ||
| 13 | */ | ||
| 14 | @Data | ||
| 15 | public class UserAppDTO implements Serializable { | ||
| 16 | |||
| 17 | // 第三方账号类型 3:微信;4:QQ;5:微博;6:苹果账号 | ||
| 18 | private Integer accountType; | ||
| 19 | |||
| 20 | // 第三方账号 | ||
| 21 | private String account; | ||
| 22 | |||
| 23 | // ID | ||
| 24 | private Long id; | ||
| 25 | |||
| 26 | // 会员id | ||
| 27 | private Long memberId; | ||
| 28 | |||
| 29 | // 用户名(一般为手机号) | ||
| 30 | private String username; | ||
| 31 | |||
| 32 | // 密码 | ||
| 33 | private String password; | ||
| 34 | |||
| 35 | // 类型 0:苹果;1:安卓;-1:未知 | ||
| 36 | private Integer type; | ||
| 37 | |||
| 38 | // 状态 0:禁用;1:生效;-1:注销 | ||
| 39 | private Integer status; | ||
| 40 | |||
| 41 | // 昵称 | ||
| 42 | private String nickname; | ||
| 43 | |||
| 44 | // 头像地址 | ||
| 45 | private String headimgurl; | ||
| 46 | |||
| 47 | // 邮箱 | ||
| 48 | private String email; | ||
| 49 | |||
| 50 | // 手机号 | ||
| 51 | private String cellphone; | ||
| 52 | |||
| 53 | // 性别 0:女;1:男;-1:其他 | ||
| 54 | private Integer gender; | ||
| 55 | |||
| 56 | // 生日 | ||
| 57 | private String birthday; | ||
| 58 | |||
| 59 | // 最近活跃时间 | ||
| 60 | private Timestamp lastActiveTime; | ||
| 61 | |||
| 62 | // 注销时间 | ||
| 63 | private Timestamp deleteTime; | ||
| 64 | |||
| 65 | // 标签 | ||
| 66 | private String tags; | ||
| 67 | |||
| 68 | // 描述 | ||
| 69 | private String description; | ||
| 70 | |||
| 71 | // 创建时间 | ||
| 72 | private Timestamp createTime; | ||
| 73 | |||
| 74 | // 更新时间 | ||
| 75 | private Timestamp updateTime; | ||
| 76 | } |
| 1 | package com.topdraw.business.module.user.app.service.dto; | ||
| 2 | |||
| 3 | import lombok.Data; | ||
| 4 | |||
| 5 | import java.io.Serializable; | ||
| 6 | |||
| 7 | /** | ||
| 8 | * @author XiangHan | ||
| 9 | * @date 2022-06-27 | ||
| 10 | */ | ||
| 11 | @Data | ||
| 12 | public class UserAppSimpleDTO implements Serializable { | ||
| 13 | |||
| 14 | // ID | ||
| 15 | private Long id; | ||
| 16 | |||
| 17 | // 会员id | ||
| 18 | private Long memberId; | ||
| 19 | |||
| 20 | // 用户名(一般为手机号) | ||
| 21 | private String username; | ||
| 22 | |||
| 23 | // 状态 0:禁用;1:生效;-1:注销 | ||
| 24 | private Integer status; | ||
| 25 | |||
| 26 | // 昵称 | ||
| 27 | private String nickname; | ||
| 28 | |||
| 29 | // 头像地址 | ||
| 30 | private String headimgurl; | ||
| 31 | |||
| 32 | // 邮箱 | ||
| 33 | private String email; | ||
| 34 | |||
| 35 | // 手机号 | ||
| 36 | private String cellphone; | ||
| 37 | |||
| 38 | // 性别 0:女;1:男;-1:其他 | ||
| 39 | private Integer gender; | ||
| 40 | |||
| 41 | // 生日 | ||
| 42 | private String birthday; | ||
| 43 | |||
| 44 | // 标签 | ||
| 45 | private String tags; | ||
| 46 | |||
| 47 | // 描述 | ||
| 48 | private String description; | ||
| 49 | |||
| 50 | } |
src/main/java/com/topdraw/business/module/user/app/service/impl/UserAppBindServiceImpl.java
0 → 100644
| 1 | package com.topdraw.business.module.user.app.service.impl; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 4 | import com.topdraw.business.module.user.app.repository.UserAppBindRepository; | ||
| 5 | import com.topdraw.business.module.user.app.service.UserAppBindService; | ||
| 6 | import com.topdraw.business.module.user.app.service.dto.UserAppBindDTO; | ||
| 7 | import com.topdraw.business.module.user.app.service.mapper.UserAppBindMapper; | ||
| 8 | import com.topdraw.utils.ValidationUtil; | ||
| 9 | import org.springframework.beans.factory.annotation.Autowired; | ||
| 10 | import org.springframework.dao.EmptyResultDataAccessException; | ||
| 11 | import org.springframework.stereotype.Service; | ||
| 12 | import org.springframework.transaction.annotation.Propagation; | ||
| 13 | import org.springframework.transaction.annotation.Transactional; | ||
| 14 | import org.springframework.util.Assert; | ||
| 15 | |||
| 16 | import java.util.List; | ||
| 17 | |||
| 18 | /** | ||
| 19 | * @author XiangHan | ||
| 20 | * @date 2022-06-27 | ||
| 21 | */ | ||
| 22 | @Service | ||
| 23 | @Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) | ||
| 24 | public class UserAppBindServiceImpl implements UserAppBindService { | ||
| 25 | |||
| 26 | @Autowired | ||
| 27 | private UserAppBindRepository userAppBindRepository; | ||
| 28 | |||
| 29 | @Autowired | ||
| 30 | private UserAppBindMapper userAppBindMapper; | ||
| 31 | |||
| 32 | @Override | ||
| 33 | public UserAppBindDTO findById(Long id) { | ||
| 34 | UserAppBind userAppBind = this.userAppBindRepository.findById(id).orElseGet(UserAppBind::new); | ||
| 35 | ValidationUtil.isNull(userAppBind.getId(),"UserAppBind","id",id); | ||
| 36 | return this.userAppBindMapper.toDto(userAppBind); | ||
| 37 | } | ||
| 38 | |||
| 39 | @Override | ||
| 40 | @Transactional(rollbackFor = Exception.class) | ||
| 41 | public UserAppBindDTO create(UserAppBind resources) { | ||
| 42 | UserAppBind userAppBind = this.userAppBindRepository.save(resources); | ||
| 43 | return this.userAppBindMapper.toDto(userAppBind); | ||
| 44 | } | ||
| 45 | |||
| 46 | @Override | ||
| 47 | @Transactional(rollbackFor = Exception.class) | ||
| 48 | public void update(UserAppBind resources) { | ||
| 49 | UserAppBind userAppBind = this.userAppBindRepository.findById(resources.getId()).orElseGet(UserAppBind::new); | ||
| 50 | ValidationUtil.isNull( userAppBind.getId(),"UserAppBind","id",resources.getId()); | ||
| 51 | userAppBind.copy(resources); | ||
| 52 | this.userAppBindRepository.save(userAppBind); | ||
| 53 | } | ||
| 54 | |||
| 55 | @Override | ||
| 56 | @Transactional(rollbackFor = Exception.class) | ||
| 57 | public void delete(Long id) { | ||
| 58 | Assert.notNull(id, "The given id must not be null!"); | ||
| 59 | UserAppBind UserAppBind = this.userAppBindRepository.findById(id).orElseThrow( | ||
| 60 | () -> new EmptyResultDataAccessException(String.format("No %s entity " + "with id %s " + "exists!", com.topdraw.business.module.user.app.domain.UserAppBind.class, id), 1)); | ||
| 61 | this.userAppBindRepository.delete(UserAppBind); | ||
| 62 | } | ||
| 63 | |||
| 64 | @Override | ||
| 65 | public UserAppBindDTO findFirstByAccount(String account) { | ||
| 66 | UserAppBind userAppBind = this.userAppBindRepository.findFirstByAccount(account).orElseGet(UserAppBind::new); | ||
| 67 | return this.userAppBindMapper.toDto(userAppBind); | ||
| 68 | } | ||
| 69 | |||
| 70 | @Override | ||
| 71 | @Transactional(rollbackFor = Exception.class) | ||
| 72 | public boolean cancelUserAppBind(String account, Integer accountType) { | ||
| 73 | return this.userAppBindRepository.cancelUserAppBind(account, accountType) > 0; | ||
| 74 | } | ||
| 75 | |||
| 76 | @Override | ||
| 77 | @Transactional(readOnly = true) | ||
| 78 | public UserAppBindDTO findFirstByAccountAndAccountType(String account, Integer accountType) { | ||
| 79 | UserAppBind userAppBind = this.userAppBindRepository.findFirstByAccountAndAccountType(account, accountType).orElseGet(UserAppBind::new); | ||
| 80 | return this.userAppBindMapper.toDto(userAppBind); | ||
| 81 | } | ||
| 82 | |||
| 83 | @Override | ||
| 84 | @Transactional(rollbackFor = Exception.class) | ||
| 85 | public boolean updateThirdAccount(UserAppBind resources) { | ||
| 86 | return this.userAppBindRepository.updateThirdAccount(resources) > 0; | ||
| 87 | } | ||
| 88 | |||
| 89 | @Override | ||
| 90 | @Transactional(rollbackFor = Exception.class) | ||
| 91 | public boolean updateThirdAccountNickname(UserAppBind resources) { | ||
| 92 | return this.userAppBindRepository.updateThirdAccountNickname(resources) > 0; | ||
| 93 | } | ||
| 94 | |||
| 95 | @Override | ||
| 96 | @Transactional(rollbackFor = Exception.class) | ||
| 97 | public boolean updateValidStatusAndUserAppIdAndNickname(UserAppBind resources) { | ||
| 98 | return this.userAppBindRepository.updateValidStatusAndUserAppIdAndNickname(resources) > 0; | ||
| 99 | } | ||
| 100 | |||
| 101 | @Override | ||
| 102 | @Transactional(rollbackFor = Exception.class) | ||
| 103 | public boolean appCancellation(List<Long> ids) { | ||
| 104 | return this.userAppBindRepository.appCancellation(ids) > 0; | ||
| 105 | } | ||
| 106 | |||
| 107 | @Override | ||
| 108 | @Transactional(readOnly = true) | ||
| 109 | public List<UserAppBindDTO> findByUserAppId(Long id) { | ||
| 110 | List<UserAppBind> userAppBinds = this.userAppBindRepository.findByUserAppId(id); | ||
| 111 | return this.userAppBindMapper.toDto(userAppBinds); | ||
| 112 | } | ||
| 113 | |||
| 114 | |||
| 115 | } |
| 1 | package com.topdraw.business.module.user.app.service.impl; | ||
| 2 | |||
| 3 | import com.topdraw.business.module.user.app.domain.UserApp; | ||
| 4 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 5 | import com.topdraw.business.module.user.app.repository.UserAppRepository; | ||
| 6 | import com.topdraw.business.module.user.app.repository.UserAppSimpleRepository; | ||
| 7 | import com.topdraw.business.module.user.app.service.UserAppService; | ||
| 8 | import com.topdraw.business.module.user.app.service.dto.UserAppDTO; | ||
| 9 | import com.topdraw.business.module.user.app.service.dto.UserAppSimpleDTO; | ||
| 10 | import com.topdraw.business.module.user.app.service.mapper.UserAppMapper; | ||
| 11 | import com.topdraw.utils.ValidationUtil; | ||
| 12 | import lombok.extern.slf4j.Slf4j; | ||
| 13 | import org.springframework.beans.factory.annotation.Autowired; | ||
| 14 | import org.springframework.dao.EmptyResultDataAccessException; | ||
| 15 | import org.springframework.stereotype.Service; | ||
| 16 | import org.springframework.transaction.annotation.Propagation; | ||
| 17 | import org.springframework.transaction.annotation.Transactional; | ||
| 18 | import org.springframework.util.Assert; | ||
| 19 | |||
| 20 | import java.util.Objects; | ||
| 21 | |||
| 22 | /** | ||
| 23 | * @author XiangHan | ||
| 24 | * @date 2022-06-27 | ||
| 25 | */ | ||
| 26 | @Service | ||
| 27 | @Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) | ||
| 28 | @Slf4j | ||
| 29 | public class UserAppServiceImpl implements UserAppService { | ||
| 30 | |||
| 31 | @Autowired | ||
| 32 | private UserAppRepository userAppRepository; | ||
| 33 | @Autowired | ||
| 34 | private UserAppSimpleRepository userAppSimpleRepository; | ||
| 35 | @Autowired | ||
| 36 | private UserAppMapper userAppMapper; | ||
| 37 | |||
| 38 | |||
| 39 | @Override | ||
| 40 | @Transactional(readOnly = true) | ||
| 41 | public UserAppDTO findById(Long id) { | ||
| 42 | UserApp userApp = this.userAppRepository.findById(id).orElseGet(UserApp::new); | ||
| 43 | ValidationUtil.isNull(userApp.getId(),"UserApp","id",id); | ||
| 44 | return this.userAppMapper.toDto(userApp); | ||
| 45 | } | ||
| 46 | |||
| 47 | @Override | ||
| 48 | @Transactional(readOnly = true) | ||
| 49 | public UserAppDTO findByUsername(String username) { | ||
| 50 | UserApp userApp = this.userAppRepository.findByUsername(username).orElseGet(UserApp::new); | ||
| 51 | return this.userAppMapper.toDto(userApp); | ||
| 52 | } | ||
| 53 | |||
| 54 | @Override | ||
| 55 | @Transactional(rollbackFor = Exception.class) | ||
| 56 | public UserAppDTO create(UserApp resources) { | ||
| 57 | UserApp userApp = this.userAppRepository.save(resources); | ||
| 58 | return this.userAppMapper.toDto(userApp); | ||
| 59 | } | ||
| 60 | |||
| 61 | @Override | ||
| 62 | @Transactional(rollbackFor = Exception.class) | ||
| 63 | public UserAppDTO update(UserApp resources) { | ||
| 64 | UserApp userApp = this.userAppRepository.findById(resources.getId()).orElseGet(UserApp::new); | ||
| 65 | ValidationUtil.isNull( userApp.getId(),"UserApp","id",resources.getId()); | ||
| 66 | userApp.copy(resources); | ||
| 67 | UserApp _userApp = this.userAppRepository.save(userApp); | ||
| 68 | if (Objects.nonNull(_userApp.getId())) { | ||
| 69 | return this.userAppMapper.toDto(_userApp); | ||
| 70 | } | ||
| 71 | |||
| 72 | return this.userAppMapper.toDto(resources); | ||
| 73 | } | ||
| 74 | |||
| 75 | @Override | ||
| 76 | @Transactional(rollbackFor = Exception.class) | ||
| 77 | public void delete(Long id) { | ||
| 78 | Assert.notNull(id, "The given id must not be null!"); | ||
| 79 | UserApp UserApp = this.userAppRepository.findById(id).orElseThrow( | ||
| 80 | () -> new EmptyResultDataAccessException(String.format("No %s entity " + "with id %s " + "exists!", UserApp.class, id), 1)); | ||
| 81 | this.userAppRepository.delete(UserApp); | ||
| 82 | } | ||
| 83 | |||
| 84 | @Override | ||
| 85 | @Transactional(rollbackFor = Exception.class) | ||
| 86 | public boolean updateLastActiveTime(UserAppBind resources) { | ||
| 87 | return this.userAppRepository.updateLastActiveTime(resources.getUsername()) > 0; | ||
| 88 | } | ||
| 89 | |||
| 90 | @Override | ||
| 91 | @Transactional(rollbackFor = Exception.class) | ||
| 92 | public boolean updatePasswordByUsername(UserApp resources) { | ||
| 93 | return this.userAppRepository.updatePasswordByUsername(resources.getUsername(), resources.getPassword()) > 0; | ||
| 94 | } | ||
| 95 | |||
| 96 | @Override | ||
| 97 | @Transactional(rollbackFor = Exception.class) | ||
| 98 | public boolean updateAppInfo(UserApp resources) { | ||
| 99 | |||
| 100 | Long id = resources.getId(); | ||
| 101 | UserApp userApp = this.userAppRepository.findById(id).orElseGet(UserApp::new); | ||
| 102 | if (Objects.isNull(userApp.getId())) { | ||
| 103 | log.error("修改app信息失败,app账号信息不存在[updateAppInfo#]"); | ||
| 104 | return false; | ||
| 105 | } | ||
| 106 | |||
| 107 | userApp.copy(resources); | ||
| 108 | |||
| 109 | this.userAppRepository.updateAppInfo(userApp); | ||
| 110 | |||
| 111 | return true; | ||
| 112 | } | ||
| 113 | |||
| 114 | @Override | ||
| 115 | @Transactional(rollbackFor = Exception.class) | ||
| 116 | public boolean appCancellation(Long id) { | ||
| 117 | return this.userAppRepository.appCancellation(id) > 0; | ||
| 118 | } | ||
| 119 | |||
| 120 | @Override | ||
| 121 | @Transactional(rollbackFor = Exception.class) | ||
| 122 | public boolean updateAppLastActiveTimeAndNicknameAndHeadImg(UserApp resources) { | ||
| 123 | return this.userAppRepository.updateAppLastActiveTimeAndNicknameAndHeadImg(resources.getUsername(), | ||
| 124 | resources.getNickname(), resources.getHeadimgurl()) > 0; | ||
| 125 | } | ||
| 126 | |||
| 127 | @Override | ||
| 128 | @Transactional(rollbackFor = Exception.class) | ||
| 129 | public boolean updatePasswordById(UserApp resources) { | ||
| 130 | return this.userAppRepository.updatePasswordById(resources.getId(), resources.getPassword()) > 0; | ||
| 131 | } | ||
| 132 | |||
| 133 | |||
| 134 | } |
| 1 | package com.topdraw.business.module.user.app.service.mapper; | ||
| 2 | |||
| 3 | import com.topdraw.base.BaseMapper; | ||
| 4 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 5 | import com.topdraw.business.module.user.app.service.dto.UserAppBindDTO; | ||
| 6 | import org.mapstruct.Mapper; | ||
| 7 | import org.mapstruct.ReportingPolicy; | ||
| 8 | |||
| 9 | /** | ||
| 10 | * @author XiangHan | ||
| 11 | * @date 2022-06-27 | ||
| 12 | */ | ||
| 13 | @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) | ||
| 14 | public interface UserAppBindMapper extends BaseMapper<UserAppBindDTO, UserAppBind> { | ||
| 15 | |||
| 16 | } |
| 1 | package com.topdraw.business.module.user.app.service.mapper; | ||
| 2 | |||
| 3 | import com.topdraw.base.BaseMapper; | ||
| 4 | import com.topdraw.business.module.user.app.domain.UserApp; | ||
| 5 | import com.topdraw.business.module.user.app.service.dto.UserAppDTO; | ||
| 6 | import org.mapstruct.Mapper; | ||
| 7 | import org.mapstruct.ReportingPolicy; | ||
| 8 | |||
| 9 | /** | ||
| 10 | * @author XiangHan | ||
| 11 | * @date 2022-06-27 | ||
| 12 | */ | ||
| 13 | @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) | ||
| 14 | public interface UserAppMapper extends BaseMapper<UserAppDTO, UserApp> { | ||
| 15 | |||
| 16 | } |
src/main/java/com/topdraw/business/module/user/app/service/mapper/UserAppSimpleMapper.java
0 → 100644
| 1 | package com.topdraw.business.module.user.app.service.mapper; | ||
| 2 | |||
| 3 | import com.topdraw.base.BaseMapper; | ||
| 4 | import com.topdraw.business.module.user.app.domain.UserAppSimple; | ||
| 5 | import com.topdraw.business.module.user.app.service.dto.UserAppSimpleDTO; | ||
| 6 | import org.mapstruct.Mapper; | ||
| 7 | import org.mapstruct.ReportingPolicy; | ||
| 8 | |||
| 9 | /** | ||
| 10 | * @author XiangHan | ||
| 11 | * @date 2022-06-27 | ||
| 12 | */ | ||
| 13 | @Mapper(componentModel = "spring", unmappedTargetPolicy = ReportingPolicy.IGNORE) | ||
| 14 | public interface UserAppSimpleMapper extends BaseMapper<UserAppSimpleDTO, UserAppSimple> { | ||
| 15 | |||
| 16 | } |
| 1 | package com.topdraw.business.process.domian.weixin; | ||
| 2 | |||
| 3 | import com.fasterxml.jackson.annotation.JsonFormat; | ||
| 4 | import lombok.Data; | ||
| 5 | |||
| 6 | import java.time.LocalDateTime; | ||
| 7 | |||
| 8 | /** | ||
| 9 | * 微信账户信息 | ||
| 10 | * @author XiangHan | ||
| 11 | * @date 2021-01-18 | ||
| 12 | */ | ||
| 13 | @Data | ||
| 14 | public class BuyVipBean extends WeiXinUserBean { | ||
| 15 | |||
| 16 | private Integer vip; | ||
| 17 | |||
| 18 | @JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss") | ||
| 19 | private LocalDateTime vipExpireTime; | ||
| 20 | |||
| 21 | |||
| 22 | } |
src/main/java/com/topdraw/business/process/domian/weixin/DefaultWeiXinBeanDefinition.java
deleted
100644 → 0
| 1 | package com.topdraw.business.process.domian.weixin; | ||
| 2 | |||
| 3 | import cn.hutool.core.date.DateUtil; | ||
| 4 | import cn.hutool.http.HttpUtil; | ||
| 5 | import com.alibaba.fastjson.JSONObject; | ||
| 6 | import com.topdraw.exception.BadRequestException; | ||
| 7 | import com.topdraw.utils.StringUtils; | ||
| 8 | import lombok.Data; | ||
| 9 | import org.springframework.beans.factory.annotation.Value; | ||
| 10 | import org.springframework.stereotype.Component; | ||
| 11 | |||
| 12 | import java.io.File; | ||
| 13 | import java.nio.charset.StandardCharsets; | ||
| 14 | import java.util.Base64; | ||
| 15 | import java.util.Date; | ||
| 16 | import java.util.UUID; | ||
| 17 | |||
| 18 | @Data | ||
| 19 | @Component | ||
| 20 | public class DefaultWeiXinBeanDefinition implements WeiXinBeanDefinition { | ||
| 21 | |||
| 22 | // | ||
| 23 | private String appid; | ||
| 24 | |||
| 25 | private String openId; | ||
| 26 | |||
| 27 | private String code; | ||
| 28 | |||
| 29 | private String token; | ||
| 30 | |||
| 31 | private String secret; | ||
| 32 | |||
| 33 | private String unionId; | ||
| 34 | |||
| 35 | private String nickname; | ||
| 36 | |||
| 37 | private String headImgUrl; | ||
| 38 | |||
| 39 | private JSONObject userInfo; | ||
| 40 | |||
| 41 | private String phoneNumber; | ||
| 42 | |||
| 43 | @Value("${file.upload:upload}") | ||
| 44 | private String filePath; | ||
| 45 | |||
| 46 | public DefaultWeiXinBeanDefinition() { | ||
| 47 | } | ||
| 48 | |||
| 49 | public DefaultWeiXinBeanDefinition(String appId, String code, String unionId, String openId, JSONObject userInfoWxJo, String phone) { | ||
| 50 | |||
| 51 | this.userInfo = userInfoWxJo; | ||
| 52 | if (userInfo != null) { | ||
| 53 | |||
| 54 | if (StringUtils.isNotBlank(userInfoWxJo.getString("unionId"))) { | ||
| 55 | unionId = userInfoWxJo.getString("unionId"); | ||
| 56 | } | ||
| 57 | |||
| 58 | if (StringUtils.isNotBlank(userInfoWxJo.getString("openId"))) { | ||
| 59 | openId = userInfoWxJo.getString("openId"); | ||
| 60 | } | ||
| 61 | |||
| 62 | headImgUrl = userInfoWxJo.getString("avatarUrl"); | ||
| 63 | |||
| 64 | if (StringUtils.isNotBlank(userInfoWxJo.getString("nickName"))) { | ||
| 65 | nickname = Base64.getEncoder().encodeToString(userInfoWxJo.getString("nickName").getBytes(StandardCharsets.UTF_8)); | ||
| 66 | } | ||
| 67 | |||
| 68 | String phoneNumber = userInfoWxJo.getString("phoneNumber"); | ||
| 69 | if (StringUtils.isBlank(phoneNumber)) { | ||
| 70 | throw new BadRequestException("phoneNumber is null..."); | ||
| 71 | } | ||
| 72 | |||
| 73 | this.phoneNumber = phoneNumber; | ||
| 74 | |||
| 75 | if (StringUtils.isNotBlank(headImgUrl)) { | ||
| 76 | |||
| 77 | new Thread(() -> { | ||
| 78 | String s = UUID.randomUUID().toString(); | ||
| 79 | File file = new File(System.getProperty("user.dir") + "/" + filePath + "/icon/" + DateUtil.format(new Date(), "yyyy-MM-dd")); | ||
| 80 | if (!file.exists()) { | ||
| 81 | file.mkdirs(); | ||
| 82 | } | ||
| 83 | |||
| 84 | HttpUtil.downloadFile(headImgUrl, new File(System.getProperty("user.dir") + "/" + filePath + "/icon/" + DateUtil.format(new Date(), "yyyy-MM-dd") + "/" + s + ".jpg")); | ||
| 85 | |||
| 86 | headImgUrl = filePath + "/icon/" + DateUtil.format(new Date(), "yyyy-MM-dd") + "/" + s + ".jpg"; | ||
| 87 | }).start(); | ||
| 88 | |||
| 89 | } | ||
| 90 | |||
| 91 | } | ||
| 92 | |||
| 93 | this.unionId = unionId; | ||
| 94 | this.phoneNumber = phone; | ||
| 95 | this.openId = openId; | ||
| 96 | this.appid = appId; | ||
| 97 | this.code = code; | ||
| 98 | } | ||
| 99 | |||
| 100 | @Override | ||
| 101 | public String getAppId() { | ||
| 102 | return this.appid; | ||
| 103 | } | ||
| 104 | |||
| 105 | @Override | ||
| 106 | public String getCode() { | ||
| 107 | return this.code; | ||
| 108 | } | ||
| 109 | |||
| 110 | @Override | ||
| 111 | public String getToken() { | ||
| 112 | return this.token; | ||
| 113 | } | ||
| 114 | |||
| 115 | @Override | ||
| 116 | public String getSecret() { | ||
| 117 | return this.secret; | ||
| 118 | } | ||
| 119 | |||
| 120 | @Override | ||
| 121 | public String getOpenId() { | ||
| 122 | return this.openId; | ||
| 123 | } | ||
| 124 | |||
| 125 | @Override | ||
| 126 | public String getUnionId() { | ||
| 127 | return this.unionId; | ||
| 128 | } | ||
| 129 | |||
| 130 | @Override | ||
| 131 | public String getNickname() { | ||
| 132 | return this.nickname; | ||
| 133 | } | ||
| 134 | |||
| 135 | @Override | ||
| 136 | public String getHeadImgUrl() { | ||
| 137 | return this.headImgUrl; | ||
| 138 | } | ||
| 139 | |||
| 140 | @Override | ||
| 141 | public JSONObject getUserInfo() { | ||
| 142 | return this.userInfo; | ||
| 143 | } | ||
| 144 | } |
| 1 | package com.topdraw.business.process.domian.weixin; | ||
| 2 | |||
| 3 | |||
| 4 | import com.alibaba.fastjson.JSONObject; | ||
| 5 | import lombok.Data; | ||
| 6 | |||
| 7 | @Data | ||
| 8 | public class SubscribeBean extends WeiXinUserBean { | ||
| 9 | |||
| 10 | private JSONObject userInfoJson; | ||
| 11 | |||
| 12 | private JSONObject iptvUserInfo; | ||
| 13 | |||
| 14 | private String msgType; | ||
| 15 | |||
| 16 | private String event; | ||
| 17 | |||
| 18 | |||
| 19 | /** */ | ||
| 20 | private String openId; | ||
| 21 | |||
| 22 | /** */ | ||
| 23 | private String appId; | ||
| 24 | |||
| 25 | /** */ | ||
| 26 | private String eventKey; | ||
| 27 | |||
| 28 | private String unionid; | ||
| 29 | private String nickname; | ||
| 30 | private String headimgurl; | ||
| 31 | |||
| 32 | } |
| 1 | package com.topdraw.business.process.domian.weixin; | ||
| 2 | |||
| 3 | import lombok.AllArgsConstructor; | ||
| 4 | import lombok.Data; | ||
| 5 | import lombok.NoArgsConstructor; | ||
| 6 | |||
| 7 | import javax.validation.constraints.NotNull; | ||
| 8 | |||
| 9 | @Data | ||
| 10 | @AllArgsConstructor | ||
| 11 | @NoArgsConstructor | ||
| 12 | public class SubscribeBeanEvent { | ||
| 13 | |||
| 14 | @NotNull(message = "【content】 not be null !!!") | ||
| 15 | private String content; | ||
| 16 | |||
| 17 | } |
src/main/java/com/topdraw/business/process/domian/weixin/WeiXinBeanDefinition.java
deleted
100644 → 0
| 1 | package com.topdraw.business.process.domian.weixin; | ||
| 2 | |||
| 3 | import com.alibaba.fastjson.JSONObject; | ||
| 4 | |||
| 5 | public interface WeiXinBeanDefinition { | ||
| 6 | |||
| 7 | String getAppId(); | ||
| 8 | |||
| 9 | String getCode(); | ||
| 10 | |||
| 11 | String getToken(); | ||
| 12 | |||
| 13 | String getSecret(); | ||
| 14 | |||
| 15 | String getOpenId(); | ||
| 16 | |||
| 17 | String getUnionId(); | ||
| 18 | |||
| 19 | String getNickname(); | ||
| 20 | |||
| 21 | String getHeadImgUrl(); | ||
| 22 | |||
| 23 | JSONObject getUserInfo(); | ||
| 24 | } |
| 1 | package com.topdraw.business.process.domian.weixin; | ||
| 2 | |||
| 3 | |||
| 4 | import lombok.Data; | ||
| 5 | |||
| 6 | /** | ||
| 7 | * 微信账户信息 | ||
| 8 | * @author XiangHan | ||
| 9 | * @date 2021-01-18 | ||
| 10 | */ | ||
| 11 | @Data | ||
| 12 | public class WeiXinUserBean { | ||
| 13 | |||
| 14 | private Long id; | ||
| 15 | |||
| 16 | private String unionid; | ||
| 17 | |||
| 18 | /** */ | ||
| 19 | private String openid; | ||
| 20 | |||
| 21 | /** */ | ||
| 22 | private String appid; | ||
| 23 | |||
| 24 | /** 加密后的appId,参数 */ | ||
| 25 | private String wxAppid; | ||
| 26 | |||
| 27 | /** 加密后的code,参数 */ | ||
| 28 | private String wxCode; | ||
| 29 | |||
| 30 | /** */ | ||
| 31 | private String userInfo; | ||
| 32 | |||
| 33 | /** 会员id */ | ||
| 34 | private Long memberId; | ||
| 35 | |||
| 36 | /** 加密信息 */ | ||
| 37 | private String encryptedData; | ||
| 38 | |||
| 39 | /** 解析用户电话号码时使用,参数 */ | ||
| 40 | private String iv; | ||
| 41 | |||
| 42 | /** 资源id */ | ||
| 43 | private String sourceId; | ||
| 44 | |||
| 45 | /** 资源类型 */ | ||
| 46 | private String sourceType; | ||
| 47 | |||
| 48 | /** 资源描述,用来表示从哪个地方链接进来的 */ | ||
| 49 | private String sourceDesc; | ||
| 50 | |||
| 51 | /** 资源实例 */ | ||
| 52 | private String sourceEntity; | ||
| 53 | |||
| 54 | /** 推荐者id */ | ||
| 55 | private Long sourceUser; | ||
| 56 | |||
| 57 | private String nikename; | ||
| 58 | |||
| 59 | private String headimgurl; | ||
| 60 | } |
| ... | @@ -2,11 +2,23 @@ package com.topdraw.business.process.service.impl; | ... | @@ -2,11 +2,23 @@ package com.topdraw.business.process.service.impl; |
| 2 | 2 | ||
| 3 | 3 | ||
| 4 | import com.topdraw.business.module.member.domain.Member; | 4 | import com.topdraw.business.module.member.domain.Member; |
| 5 | import com.topdraw.business.module.member.domain.MemberBuilder; | ||
| 6 | import com.topdraw.business.module.member.domain.MemberTypeConstant; | ||
| 5 | import com.topdraw.business.module.member.profile.domain.MemberProfile; | 7 | import com.topdraw.business.module.member.profile.domain.MemberProfile; |
| 6 | import com.topdraw.business.module.member.profile.service.MemberProfileService; | 8 | import com.topdraw.business.module.member.profile.service.MemberProfileService; |
| 7 | import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; | 9 | import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; |
| 8 | import com.topdraw.business.module.member.service.MemberService; | 10 | import com.topdraw.business.module.member.service.MemberService; |
| 9 | import com.topdraw.business.module.member.service.dto.MemberDTO; | 11 | import com.topdraw.business.module.member.service.dto.MemberDTO; |
| 12 | import com.topdraw.business.module.user.app.domain.UserApp; | ||
| 13 | import com.topdraw.business.module.user.app.domain.UserAppBind; | ||
| 14 | import com.topdraw.business.module.user.app.domain.UserAppBindBuilder; | ||
| 15 | import com.topdraw.business.module.user.app.domain.UserAppBuilder; | ||
| 16 | import com.topdraw.business.module.user.app.service.UserAppBindService; | ||
| 17 | import com.topdraw.business.module.user.app.service.UserAppService; | ||
| 18 | import com.topdraw.business.module.user.app.service.dto.AppRegisterDTO; | ||
| 19 | import com.topdraw.business.module.user.app.service.dto.UserAppBindDTO; | ||
| 20 | import com.topdraw.business.module.user.app.service.dto.UserAppDTO; | ||
| 21 | import com.topdraw.business.module.user.app.service.dto.UserAppSimpleDTO; | ||
| 10 | import com.topdraw.business.module.user.iptv.domain.UserTv; | 22 | import com.topdraw.business.module.user.iptv.domain.UserTv; |
| 11 | import com.topdraw.business.module.user.iptv.growreport.domain.GrowthReport; | 23 | import com.topdraw.business.module.user.iptv.growreport.domain.GrowthReport; |
| 12 | import com.topdraw.business.module.user.iptv.growreport.service.GrowthReportService; | 24 | import com.topdraw.business.module.user.iptv.growreport.service.GrowthReportService; |
| ... | @@ -24,6 +36,7 @@ import com.topdraw.exception.GlobeExceptionMsg; | ... | @@ -24,6 +36,7 @@ import com.topdraw.exception.GlobeExceptionMsg; |
| 24 | import com.topdraw.util.TimestampUtil; | 36 | import com.topdraw.util.TimestampUtil; |
| 25 | import lombok.extern.slf4j.Slf4j; | 37 | import lombok.extern.slf4j.Slf4j; |
| 26 | import org.apache.commons.lang3.StringUtils; | 38 | import org.apache.commons.lang3.StringUtils; |
| 39 | import org.springframework.aop.framework.AopContext; | ||
| 27 | import org.springframework.beans.BeanUtils; | 40 | import org.springframework.beans.BeanUtils; |
| 28 | import org.springframework.beans.factory.annotation.Autowired; | 41 | import org.springframework.beans.factory.annotation.Autowired; |
| 29 | import org.springframework.stereotype.Service; | 42 | import org.springframework.stereotype.Service; |
| ... | @@ -48,7 +61,90 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -48,7 +61,90 @@ public class UserOperationServiceImpl implements UserOperationService { |
| 48 | private MemberProfileService memberProfileService; | 61 | private MemberProfileService memberProfileService; |
| 49 | @Autowired | 62 | @Autowired |
| 50 | private GrowthReportService growthReportService; | 63 | private GrowthReportService growthReportService; |
| 64 | @Autowired | ||
| 65 | private UserAppService userAppService; | ||
| 66 | @Autowired | ||
| 67 | private UserAppBindService userAppBindService; | ||
| 68 | |||
| 69 | public void asyncUpdateAppLastActiveTimeAndNicknameAndHeadImg(UserAppDTO resources) { | ||
| 70 | UserAppDTO userAppDTO = this.userAppService.findByUsername(resources.getUsername()); | ||
| 71 | if (Objects.isNull(userAppDTO.getId())) { | ||
| 72 | |||
| 73 | UserApp userApp = new UserApp(); | ||
| 74 | userApp.setId(userAppDTO.getId()); | ||
| 75 | userApp.setUsername(userAppDTO.getUsername()); | ||
| 76 | userApp.setNickname(resources.getNickname()); | ||
| 77 | userApp.setHeadimgurl(resources.getHeadimgurl()); | ||
| 78 | this.userAppService.updateAppLastActiveTimeAndNicknameAndHeadImg(userApp); | ||
| 79 | } | ||
| 80 | } | ||
| 81 | |||
| 82 | public void asyncCancelUserAppBind(UserAppBindDTO resources) { | ||
| 83 | |||
| 84 | } | ||
| 85 | |||
| 86 | public void asyncUpdatePasswordByUsername(UserAppDTO resources) { | ||
| 87 | UserAppDTO userAppDTO = this.userAppService.findByUsername(resources.getUsername()); | ||
| 88 | if (Objects.isNull(userAppDTO.getId())) { | ||
| 89 | UserApp userApp = new UserApp(); | ||
| 90 | userApp.setId(userAppDTO.getId()); | ||
| 91 | userApp.setPassword(resources.getPassword()); | ||
| 92 | this.userAppService.updatePasswordById(userApp); | ||
| 93 | } | ||
| 94 | } | ||
| 95 | |||
| 96 | public void asyncUpdateAppInfo(UserAppDTO resources) { | ||
| 97 | UserAppDTO userAppDTO = this.userAppService.findByUsername(resources.getUsername()); | ||
| 98 | if (Objects.nonNull(userAppDTO.getId())) { | ||
| 99 | UserApp userApp = new UserApp(); | ||
| 100 | BeanUtils.copyProperties(resources, userApp); | ||
| 101 | userApp.setId(userAppDTO.getId()); | ||
| 102 | this.userAppService.updateAppInfo(userApp); | ||
| 103 | } | ||
| 104 | } | ||
| 51 | 105 | ||
| 106 | public void asyncAppCancellation(UserAppDTO resources) { | ||
| 107 | UserAppDTO userAppDTO = this.userAppService.findByUsername(resources.getUsername()); | ||
| 108 | if (Objects.nonNull(userAppDTO.getId())) { | ||
| 109 | this.userAppService.appCancellation(userAppDTO.getId()); | ||
| 110 | } | ||
| 111 | } | ||
| 112 | |||
| 113 | public void asyncAppRegister(AppRegisterDTO appRegisterDTO) { | ||
| 114 | UserAppDTO userAppDTOResources = appRegisterDTO.getUserAppDTO(); | ||
| 115 | MemberDTO memberDTOResources = appRegisterDTO.getMemberDTO(); | ||
| 116 | |||
| 117 | UserAppDTO userAppDTO = this.userAppService.findByUsername(userAppDTOResources.getUsername()); | ||
| 118 | if (Objects.isNull(userAppDTO.getId())) { | ||
| 119 | |||
| 120 | // 先创建会员 | ||
| 121 | // Member member = MemberBuilder.build(MemberTypeConstant.app, userAppDTOResources.getHeadimgurl(), userAppDTOResources.getNickname(), 0); | ||
| 122 | Member member = new Member(); | ||
| 123 | BeanUtils.copyProperties(memberDTOResources, member); | ||
| 124 | member.setId(null); | ||
| 125 | MemberDTO _memberDTO = this.memberService.create(member); | ||
| 126 | |||
| 127 | if (Objects.nonNull(_memberDTO.getId())) { | ||
| 128 | |||
| 129 | UserApp userApp = new UserApp(); | ||
| 130 | BeanUtils.copyProperties(userAppDTOResources, userApp); | ||
| 131 | userApp.setId(null); | ||
| 132 | // 保存app账号 | ||
| 133 | UserAppDTO _userAppDTO = this.userAppService.create(UserAppBuilder.build(_memberDTO.getId(), userApp)); | ||
| 134 | |||
| 135 | if (Objects.nonNull(_userAppDTO.getId()) && StringUtils.isNotBlank(userAppDTO.getAccount())) { | ||
| 136 | UserAppBindDTO userAppBindDTO = this.userAppBindService.findFirstByAccount(userAppDTO.getAccount()); | ||
| 137 | if (Objects.isNull(userAppBindDTO.getId())) { | ||
| 138 | // 保存绑定关系 | ||
| 139 | UserAppBind userAppBind = UserAppBindBuilder.build(_userAppDTO.getId(), userAppDTO.getAccount(), userAppDTO.getAccountType()); | ||
| 140 | this.userAppBindService.create(userAppBind); | ||
| 141 | } | ||
| 142 | } | ||
| 143 | |||
| 144 | } | ||
| 145 | |||
| 146 | } | ||
| 147 | } | ||
| 52 | 148 | ||
| 53 | public void asyncsaveGrowthReport(GrowthReport growthReport) { | 149 | public void asyncsaveGrowthReport(GrowthReport growthReport) { |
| 54 | String platformAccount = growthReport.getPlatformAccount(); | 150 | String platformAccount = growthReport.getPlatformAccount(); | ... | ... |
| ... | @@ -13,12 +13,12 @@ import javax.naming.ConfigurationException; | ... | @@ -13,12 +13,12 @@ import javax.naming.ConfigurationException; |
| 13 | import java.util.List; | 13 | import java.util.List; |
| 14 | import java.util.Map; | 14 | import java.util.Map; |
| 15 | 15 | ||
| 16 | @Component | 16 | //@Component |
| 17 | public class RabbitMqBindingConfig { | 17 | public class RabbitMqBindingConfig { |
| 18 | 18 | ||
| 19 | /**************************************************数据源选择*************************************************************/ | 19 | /**************************************************数据源选择*************************************************************/ |
| 20 | 20 | ||
| 21 | @Autowired | 21 | /*@Autowired |
| 22 | private RabbitMqSourceConfig rabbitMqSourceConfig; | 22 | private RabbitMqSourceConfig rabbitMqSourceConfig; |
| 23 | @Autowired | 23 | @Autowired |
| 24 | private RabbitMqCustomConfig rabbitMqCustomConfig; | 24 | private RabbitMqCustomConfig rabbitMqCustomConfig; |
| ... | @@ -33,8 +33,6 @@ public class RabbitMqBindingConfig { | ... | @@ -33,8 +33,6 @@ public class RabbitMqBindingConfig { |
| 33 | @PostConstruct | 33 | @PostConstruct |
| 34 | public void initBinding() throws ConfigurationException { | 34 | public void initBinding() throws ConfigurationException { |
| 35 | 35 | ||
| 36 | // String source = rabbitMqSourceConfig.getActiveSource(); | ||
| 37 | |||
| 38 | List<Map<String, String>> list = rabbitMqCustomConfig.getList(); | 36 | List<Map<String, String>> list = rabbitMqCustomConfig.getList(); |
| 39 | if (CollectionUtils.isNotEmpty(list)) { | 37 | if (CollectionUtils.isNotEmpty(list)) { |
| 40 | 38 | ||
| ... | @@ -86,15 +84,7 @@ public class RabbitMqBindingConfig { | ... | @@ -86,15 +84,7 @@ public class RabbitMqBindingConfig { |
| 86 | this.serviceRabbitAdmin.declareQueue(queue_); | 84 | this.serviceRabbitAdmin.declareQueue(queue_); |
| 87 | this.serviceRabbitAdmin.declareBinding(binding_); | 85 | this.serviceRabbitAdmin.declareBinding(binding_); |
| 88 | break; | 86 | break; |
| 89 | /* case "service,management": | ||
| 90 | this.serviceRabbitAdmin.declareExchange(exchange_); | ||
| 91 | this.serviceRabbitAdmin.declareQueue(queue_); | ||
| 92 | this.serviceRabbitAdmin.declareBinding(binding_); | ||
| 93 | 87 | ||
| 94 | this.managementRabbitAdmin.declareExchange(exchange_); | ||
| 95 | this.managementRabbitAdmin.declareQueue(queue_); | ||
| 96 | this.managementRabbitAdmin.declareBinding(binding_); | ||
| 97 | break;*/ | ||
| 98 | default: | 88 | default: |
| 99 | 89 | ||
| 100 | break; | 90 | break; |
| ... | @@ -104,6 +94,6 @@ public class RabbitMqBindingConfig { | ... | @@ -104,6 +94,6 @@ public class RabbitMqBindingConfig { |
| 104 | 94 | ||
| 105 | } | 95 | } |
| 106 | 96 | ||
| 107 | } | 97 | }*/ |
| 108 | 98 | ||
| 109 | } | 99 | } | ... | ... |
| 1 | package com.topdraw.config; | ||
| 2 | |||
| 3 | import lombok.Data; | ||
| 4 | import org.apache.commons.lang3.StringUtils; | ||
| 5 | import org.springframework.boot.context.properties.ConfigurationProperties; | ||
| 6 | import org.springframework.context.annotation.Configuration; | ||
| 7 | import org.springframework.context.annotation.Lazy; | ||
| 8 | |||
| 9 | import java.util.Map; | ||
| 10 | import java.util.Objects; | ||
| 11 | |||
| 12 | /** | ||
| 13 | * @author : | ||
| 14 | * @description: | ||
| 15 | * @function : | ||
| 16 | * @date :Created in 2022/5/12 12:37 | ||
| 17 | * @version: : | ||
| 18 | * @modified By: | ||
| 19 | * @since : modified in 2022/5/12 12:37 | ||
| 20 | */ | ||
| 21 | @Data | ||
| 22 | @Configuration | ||
| 23 | @ConfigurationProperties(prefix = "spring.rabbitmq", ignoreInvalidFields = true) | ||
| 24 | public class RabbitMqConfig { | ||
| 25 | |||
| 26 | @Lazy | ||
| 27 | private Map<String, String> uce; | ||
| 28 | @Lazy | ||
| 29 | private Map<String, String> memberInfo; | ||
| 30 | @Lazy | ||
| 31 | private Map<String, String> eventBus; | ||
| 32 | @Lazy | ||
| 33 | private Map<String, String> event; | ||
| 34 | @Lazy | ||
| 35 | private Map<String, String> viewRecord; | ||
| 36 | @Lazy | ||
| 37 | private Map<String, String> addCollction; | ||
| 38 | @Lazy | ||
| 39 | private Map<String, String> deleteCollction; | ||
| 40 | @Lazy | ||
| 41 | private Map<String, String> deleteAllCollction; | ||
| 42 | @Lazy | ||
| 43 | private Map<String, String> ucgCollection; | ||
| 44 | @Lazy | ||
| 45 | private Map<String, String> wechat; | ||
| 46 | @Lazy | ||
| 47 | private Map<String, String> growthReport; | ||
| 48 | |||
| 49 | /** | ||
| 50 | * uce | ||
| 51 | * @return | ||
| 52 | */ | ||
| 53 | public String getGrowthReportQueue() { | ||
| 54 | if (Objects.isNull(growthReport)) { | ||
| 55 | return "growthReport.queue"; | ||
| 56 | } | ||
| 57 | String queue = this.growthReport.get("queue"); | ||
| 58 | return StringUtils.isBlank(queue) ? "growthReport.queue" : queue; | ||
| 59 | } | ||
| 60 | |||
| 61 | /** | ||
| 62 | * uce | ||
| 63 | * @return | ||
| 64 | */ | ||
| 65 | public String getUceQueue() { | ||
| 66 | if (Objects.isNull(uce)) { | ||
| 67 | return "uce.queue"; | ||
| 68 | } | ||
| 69 | String queue = this.uce.get("queue"); | ||
| 70 | return StringUtils.isBlank(queue) ? "uce.queue" : queue; | ||
| 71 | } | ||
| 72 | |||
| 73 | /** | ||
| 74 | * memberInfo | ||
| 75 | * @return | ||
| 76 | */ | ||
| 77 | public String getMemberInfoQueue() { | ||
| 78 | if (Objects.isNull(memberInfo)) { | ||
| 79 | return "queue.MemberInfoSync"; | ||
| 80 | } | ||
| 81 | String queue = this.memberInfo.get("queue"); | ||
| 82 | return StringUtils.isBlank(queue) ? "queue.MemberInfoSync" : queue; | ||
| 83 | } | ||
| 84 | |||
| 85 | /** | ||
| 86 | * uce | ||
| 87 | * @return | ||
| 88 | */ | ||
| 89 | public String getEventBusQueue() { | ||
| 90 | if (Objects.isNull(eventBus)) { | ||
| 91 | return "uc.eventbus"; | ||
| 92 | } | ||
| 93 | String queue = this.eventBus.get("queue"); | ||
| 94 | return StringUtils.isBlank(queue) ? "uc.eventbus" : queue; | ||
| 95 | } | ||
| 96 | |||
| 97 | /** | ||
| 98 | * uce | ||
| 99 | * @return | ||
| 100 | */ | ||
| 101 | public String getUcgEventQueue() { | ||
| 102 | if (event != null) { | ||
| 103 | String queue = this.event.get("queue"); | ||
| 104 | return StringUtils.isBlank(queue) ? "event.queue" : queue; | ||
| 105 | } | ||
| 106 | return "event.queue"; | ||
| 107 | } | ||
| 108 | |||
| 109 | /** | ||
| 110 | * memberInfo | ||
| 111 | * @return | ||
| 112 | */ | ||
| 113 | public String getViewRecordQueue() { | ||
| 114 | if (viewRecord != null) { | ||
| 115 | String queue = this.viewRecord.get("queue"); | ||
| 116 | return StringUtils.isBlank(queue) ? "viewRecord.queue" : queue; | ||
| 117 | } | ||
| 118 | return "viewRecord.queue"; | ||
| 119 | } | ||
| 120 | |||
| 121 | /** | ||
| 122 | * uce | ||
| 123 | * @return | ||
| 124 | */ | ||
| 125 | public String getUcgCollectionQueueAdd() { | ||
| 126 | if (addCollction != null) { | ||
| 127 | String queue = this.addCollction.get("queue"); | ||
| 128 | return StringUtils.isBlank(queue) ? "queue.collection.add" : queue; | ||
| 129 | } | ||
| 130 | return "queue.collection.add"; | ||
| 131 | } | ||
| 132 | |||
| 133 | /** | ||
| 134 | * memberInfo | ||
| 135 | * @return | ||
| 136 | */ | ||
| 137 | public String getUcgCollectionQueueDelete() { | ||
| 138 | if (deleteCollction != null) { | ||
| 139 | String queue = this.deleteCollction.get("queue"); | ||
| 140 | return StringUtils.isBlank(queue) ? "queue.collection.delete" : queue; | ||
| 141 | } | ||
| 142 | return "queue.collection.delete"; | ||
| 143 | } | ||
| 144 | |||
| 145 | /** | ||
| 146 | * uce | ||
| 147 | * @return | ||
| 148 | */ | ||
| 149 | public String getUcgCollectionQueueDeleteAll() { | ||
| 150 | if (deleteAllCollction != null) { | ||
| 151 | String queue = this.deleteAllCollction.get("queue"); | ||
| 152 | return StringUtils.isBlank(queue) ? "queue.collection.deleteall" : queue; | ||
| 153 | } | ||
| 154 | return "queue.collection.deleteall"; | ||
| 155 | } | ||
| 156 | |||
| 157 | |||
| 158 | public String getUcgCollectionQueue() { | ||
| 159 | if (ucgCollection != null) { | ||
| 160 | String queue = this.ucgCollection.get("queue"); | ||
| 161 | return StringUtils.isBlank(queue) ? "collection.queue" : queue; | ||
| 162 | } | ||
| 163 | return "collection.queue"; | ||
| 164 | } | ||
| 165 | |||
| 166 | /** | ||
| 167 | * memberInfo | ||
| 168 | * @return | ||
| 169 | */ | ||
| 170 | public String getWechatQueue() { | ||
| 171 | if (wechat != null) { | ||
| 172 | String queue = this.wechat.get("queue"); | ||
| 173 | return StringUtils.isBlank(queue) ? "weixin.subOrUnSub.queue" : queue; | ||
| 174 | } | ||
| 175 | return "weixin.subOrUnSub.queue"; | ||
| 176 | } | ||
| 177 | } |
| ... | @@ -9,8 +9,8 @@ import java.util.List; | ... | @@ -9,8 +9,8 @@ import java.util.List; |
| 9 | import java.util.Map; | 9 | import java.util.Map; |
| 10 | 10 | ||
| 11 | @Data | 11 | @Data |
| 12 | @Configuration | 12 | //@Configuration |
| 13 | @ConfigurationProperties(prefix = "service.mq") | 13 | //@ConfigurationProperties(prefix = "service.mq") |
| 14 | public class RabbitMqCustomConfig { | 14 | public class RabbitMqCustomConfig { |
| 15 | 15 | ||
| 16 | private List<Map<String, String>> list; | 16 | private List<Map<String, String>> list; | ... | ... |
| ... | @@ -18,8 +18,8 @@ import java.util.Map; | ... | @@ -18,8 +18,8 @@ import java.util.Map; |
| 18 | * @since : modified in 2022/5/12 12:37 | 18 | * @since : modified in 2022/5/12 12:37 |
| 19 | */ | 19 | */ |
| 20 | @Data | 20 | @Data |
| 21 | @Configuration | 21 | //@Configuration |
| 22 | @ConfigurationProperties(prefix = "service.mq.error.logs") | 22 | //@ConfigurationProperties(prefix = "service.mq.error.logs") |
| 23 | public class RabbitMqErrorLogConfig { | 23 | public class RabbitMqErrorLogConfig { |
| 24 | 24 | ||
| 25 | private List<Map<String, String>> list; | 25 | private List<Map<String, String>> list; | ... | ... |
| ... | @@ -21,10 +21,10 @@ import java.util.Map; | ... | @@ -21,10 +21,10 @@ import java.util.Map; |
| 21 | import java.util.Objects; | 21 | import java.util.Objects; |
| 22 | 22 | ||
| 23 | @Data | 23 | @Data |
| 24 | @Configuration | 24 | //@Configuration |
| 25 | public class RabbitMqSourceConfig { | 25 | public class RabbitMqSourceConfig { |
| 26 | 26 | ||
| 27 | @Value("${mutil-mq.service.host}") | 27 | /*@Value("${mutil-mq.service.host}") |
| 28 | private String serviceHost; | 28 | private String serviceHost; |
| 29 | @Value("${mutil-mq.service.port}") | 29 | @Value("${mutil-mq.service.port}") |
| 30 | private Integer servicePort; | 30 | private Integer servicePort; |
| ... | @@ -119,13 +119,13 @@ public class RabbitMqSourceConfig { | ... | @@ -119,13 +119,13 @@ public class RabbitMqSourceConfig { |
| 119 | RabbitAdmin rabbitAdmin = new RabbitAdmin(connectionFactory); | 119 | RabbitAdmin rabbitAdmin = new RabbitAdmin(connectionFactory); |
| 120 | rabbitAdmin.setAutoStartup(true); | 120 | rabbitAdmin.setAutoStartup(true); |
| 121 | return rabbitAdmin; | 121 | return rabbitAdmin; |
| 122 | } | 122 | }*/ |
| 123 | 123 | ||
| 124 | 124 | ||
| 125 | /**************************************************数据源*************************************************************/ | 125 | /**************************************************数据源*************************************************************/ |
| 126 | 126 | ||
| 127 | 127 | ||
| 128 | /*@Value("${service.platform}") | 128 | /* @Value("${service.platform}") |
| 129 | private String platform; | 129 | private String platform; |
| 130 | @Value("${service.active}") | 130 | @Value("${service.active}") |
| 131 | private String active; | 131 | private String active; |
| ... | @@ -143,7 +143,7 @@ public class RabbitMqSourceConfig { | ... | @@ -143,7 +143,7 @@ public class RabbitMqSourceConfig { |
| 143 | } | 143 | } |
| 144 | 144 | ||
| 145 | return active; | 145 | return active; |
| 146 | }*/ | 146 | } |
| 147 | 147 | ||
| 148 | private String chargeSource(String active) { | 148 | private String chargeSource(String active) { |
| 149 | 149 | ||
| ... | @@ -156,13 +156,13 @@ public class RabbitMqSourceConfig { | ... | @@ -156,13 +156,13 @@ public class RabbitMqSourceConfig { |
| 156 | } | 156 | } |
| 157 | 157 | ||
| 158 | return null; | 158 | return null; |
| 159 | } | 159 | }*/ |
| 160 | 160 | ||
| 161 | /**************************************************uc-getaway 2 uc-consumer*************************************************************/ | 161 | /**************************************************uc-getaway 2 uc-consumer*************************************************************/ |
| 162 | 162 | ||
| 163 | 163 | ||
| 164 | 164 | ||
| 165 | @Value("#{rabbitMqCustomConfig.ucgGrowthReportInfo()}") | 165 | /*@Value("#{rabbitMqCustomConfig.ucgGrowthReportInfo()}") |
| 166 | private Map<String, String> ucgGrowthReportInfo; | 166 | private Map<String, String> ucgGrowthReportInfo; |
| 167 | 167 | ||
| 168 | public static final String GROWTH_REPORT_EXCHANGE = "growthReport.exchange"; | 168 | public static final String GROWTH_REPORT_EXCHANGE = "growthReport.exchange"; |
| ... | @@ -252,10 +252,6 @@ public class RabbitMqSourceConfig { | ... | @@ -252,10 +252,6 @@ public class RabbitMqSourceConfig { |
| 252 | return "false"; | 252 | return "false"; |
| 253 | } | 253 | } |
| 254 | 254 | ||
| 255 | /* public static final String COLLECTION_DELETE_ALL_QUEUE = "queue.collection.deleteall"; | ||
| 256 | public static final String COLLECTION_ADD_QUEUE = "queue.collection.add"; | ||
| 257 | public static final String COLLECTION_DELETE_QUEUE = "queue.collection.delete";*/ | ||
| 258 | |||
| 259 | public static final String COLLECTION_EXCHANGE = "collection.exchange"; | 255 | public static final String COLLECTION_EXCHANGE = "collection.exchange"; |
| 260 | public static final String COLLECTION_QUEUE = "collection.queue"; | 256 | public static final String COLLECTION_QUEUE = "collection.queue"; |
| 261 | 257 | ||
| ... | @@ -356,11 +352,11 @@ public class RabbitMqSourceConfig { | ... | @@ -356,11 +352,11 @@ public class RabbitMqSourceConfig { |
| 356 | } | 352 | } |
| 357 | 353 | ||
| 358 | return "false"; | 354 | return "false"; |
| 359 | } | 355 | }*/ |
| 360 | 356 | ||
| 361 | /**************************************************uc-engine 2 uc-consumer*************************************************************/ | 357 | /**************************************************uc-engine 2 uc-consumer*************************************************************/ |
| 362 | 358 | ||
| 363 | public static final String UCE_EXCHANGE = "uce.exchange"; | 359 | /*public static final String UCE_EXCHANGE = "uce.exchange"; |
| 364 | public static final String UCE_QUEUE = "uce.queue"; | 360 | public static final String UCE_QUEUE = "uce.queue"; |
| 365 | 361 | ||
| 366 | @Value("#{rabbitMqCustomConfig.getUceInfo()}") | 362 | @Value("#{rabbitMqCustomConfig.getUceInfo()}") |
| ... | @@ -407,12 +403,13 @@ public class RabbitMqSourceConfig { | ... | @@ -407,12 +403,13 @@ public class RabbitMqSourceConfig { |
| 407 | 403 | ||
| 408 | 404 | ||
| 409 | 405 | ||
| 406 | |||
| 410 | public String getMemberInfoAsyncQueue(){ | 407 | public String getMemberInfoAsyncQueue(){ |
| 411 | return "queue.MemberInfoSync"; | 408 | return "queue.MemberInfoSync"; |
| 412 | } | 409 | }*/ |
| 413 | 410 | ||
| 414 | /**************************************************eventBus*************************************************************/ | 411 | /**************************************************eventBus*************************************************************/ |
| 415 | public static final String UC_EVENTBUS_EXCHANGE = "uc.eventbus"; | 412 | /*public static final String UC_EVENTBUS_EXCHANGE = "uc.eventbus"; |
| 416 | public static final String UC_EVENTBUS_KEY = "uc.eventbus.*.topic"; | 413 | public static final String UC_EVENTBUS_KEY = "uc.eventbus.*.topic"; |
| 417 | public static final String UC_EVENTBUS_QUEUE = "uc.eventbus"; | 414 | public static final String UC_EVENTBUS_QUEUE = "uc.eventbus"; |
| 418 | 415 | ||
| ... | @@ -454,11 +451,11 @@ public class RabbitMqSourceConfig { | ... | @@ -454,11 +451,11 @@ public class RabbitMqSourceConfig { |
| 454 | } | 451 | } |
| 455 | } | 452 | } |
| 456 | return "false"; | 453 | return "false"; |
| 457 | } | 454 | }*/ |
| 458 | 455 | ||
| 459 | /**************************************************wechat*************************************************************/ | 456 | /**************************************************wechat*************************************************************/ |
| 460 | 457 | ||
| 461 | public static final String WEIXIN_EXCHANGE = "weixin.subOrUnSub.direct"; | 458 | /*public static final String WEIXIN_EXCHANGE = "weixin.subOrUnSub.direct"; |
| 462 | public static final String WEIXIN_SUBORUNSUB_QUEUE = "weixin.subOrUnSub.queue"; | 459 | public static final String WEIXIN_SUBORUNSUB_QUEUE = "weixin.subOrUnSub.queue"; |
| 463 | 460 | ||
| 464 | @Value("#{rabbitMqCustomConfig.getWechatInfo()}") | 461 | @Value("#{rabbitMqCustomConfig.getWechatInfo()}") |
| ... | @@ -500,5 +497,5 @@ public class RabbitMqSourceConfig { | ... | @@ -500,5 +497,5 @@ public class RabbitMqSourceConfig { |
| 500 | } | 497 | } |
| 501 | 498 | ||
| 502 | return "false"; | 499 | return "false"; |
| 503 | } | 500 | }*/ |
| 504 | } | 501 | } | ... | ... |
| ... | @@ -9,6 +9,7 @@ import lombok.extern.slf4j.Slf4j; | ... | @@ -9,6 +9,7 @@ import lombok.extern.slf4j.Slf4j; |
| 9 | import org.apache.commons.collections4.MapUtils; | 9 | import org.apache.commons.collections4.MapUtils; |
| 10 | import org.springframework.amqp.core.Message; | 10 | import org.springframework.amqp.core.Message; |
| 11 | import org.springframework.amqp.rabbit.annotation.*; | 11 | import org.springframework.amqp.rabbit.annotation.*; |
| 12 | import org.springframework.amqp.rabbit.core.RabbitTemplate; | ||
| 12 | import org.springframework.beans.factory.annotation.Autowired; | 13 | import org.springframework.beans.factory.annotation.Autowired; |
| 13 | import org.springframework.beans.factory.annotation.Value; | 14 | import org.springframework.beans.factory.annotation.Value; |
| 14 | import org.springframework.stereotype.Component; | 15 | import org.springframework.stereotype.Component; |
| ... | @@ -28,18 +29,25 @@ public class UcEngineManagement2IptvConsumer { | ... | @@ -28,18 +29,25 @@ public class UcEngineManagement2IptvConsumer { |
| 28 | @Autowired | 29 | @Autowired |
| 29 | RestTemplateClient restTemplateClient; | 30 | RestTemplateClient restTemplateClient; |
| 30 | 31 | ||
| 31 | @Value("#{rabbitMqErrorLogConfig.getUceError()}") | 32 | @Autowired |
| 32 | private Map<String, String> error; | 33 | private RabbitTemplate rabbitTemplate; |
| 33 | 34 | ||
| 34 | @RabbitHandler | 35 | // @Value("#{rabbitMqErrorLogConfig.getUceError()}") |
| 36 | // private Map<String, String> error; | ||
| 37 | |||
| 38 | /*@RabbitHandler | ||
| 35 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getMemberInfoAsyncQueue()}", | 39 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getMemberInfoAsyncQueue()}", |
| 36 | containerFactory = "#{rabbitMqSourceConfig.getUceSource()}", | 40 | //containerFactory = "#{rabbitMqSourceConfig.getUceSource()}", |
| 37 | autoStartup = "#{rabbitMqSourceConfig.getUceStartUp()}", | 41 | // autoStartup = "#{rabbitMqSourceConfig.getUceStartUp()}", |
| 42 | ackMode = "AUTO")*/ | ||
| 43 | @RabbitHandler | ||
| 44 | @RabbitListener(queues = "#{rabbitMqConfig.getMemberInfoQueue()}", | ||
| 38 | ackMode = "AUTO") | 45 | ackMode = "AUTO") |
| 39 | public void ucEventConsumer2(Channel channel, Message message, String content) throws IOException { | 46 | public void memberInfoConsumer(Channel channel, Message message, String content) throws IOException { |
| 40 | log.info(" receive MemberInfoAsync msg , content is : {} ", content); | 47 | log.info(" receive MemberInfoAsync msg , content is : {} ", content); |
| 41 | 48 | ||
| 42 | try { | 49 | try { |
| 50 | |||
| 43 | TableOperationMsg tableOperationMsg = this.parseContent(content); | 51 | TableOperationMsg tableOperationMsg = this.parseContent(content); |
| 44 | 52 | ||
| 45 | autoUser.route(tableOperationMsg); | 53 | autoUser.route(tableOperationMsg); |
| ... | @@ -47,10 +55,10 @@ public class UcEngineManagement2IptvConsumer { | ... | @@ -47,10 +55,10 @@ public class UcEngineManagement2IptvConsumer { |
| 47 | // channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); | 55 | // channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); |
| 48 | 56 | ||
| 49 | } catch (Exception e) { | 57 | } catch (Exception e) { |
| 58 | log.error("消费uc-engine消息失败, cause ==>> [memberInfoConsumer#{}]", e.getMessage()); | ||
| 59 | // channel.basicReject(message.getMessageProperties().getDeliveryTag(), false); | ||
| 50 | 60 | ||
| 51 | channel.basicReject(message.getMessageProperties().getDeliveryTag(), false); | 61 | /*if (MapUtils.isNotEmpty(error)) { |
| 52 | |||
| 53 | if (MapUtils.isNotEmpty(error)) { | ||
| 54 | String errorStart = this.error.get("start"); | 62 | String errorStart = this.error.get("start"); |
| 55 | 63 | ||
| 56 | if (errorStart.equalsIgnoreCase("true")) { | 64 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -60,9 +68,9 @@ public class UcEngineManagement2IptvConsumer { | ... | @@ -60,9 +68,9 @@ public class UcEngineManagement2IptvConsumer { |
| 60 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 68 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 61 | } | 69 | } |
| 62 | 70 | ||
| 63 | } | 71 | }*/ |
| 72 | |||
| 64 | 73 | ||
| 65 | e.printStackTrace(); | ||
| 66 | } | 74 | } |
| 67 | 75 | ||
| 68 | log.info("ucEventConsumer ====>>>> end"); | 76 | log.info("ucEventConsumer ====>>>> end"); |
| ... | @@ -75,26 +83,28 @@ public class UcEngineManagement2IptvConsumer { | ... | @@ -75,26 +83,28 @@ public class UcEngineManagement2IptvConsumer { |
| 75 | * @author Hongyan Wang | 83 | * @author Hongyan Wang |
| 76 | * @date 2021/9/7 11:26 上午 | 84 | * @date 2021/9/7 11:26 上午 |
| 77 | */ | 85 | */ |
| 78 | @RabbitHandler | 86 | /*@RabbitHandler |
| 79 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUceQueue()}", | 87 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUceQueue()}", |
| 80 | containerFactory = "#{rabbitMqSourceConfig.getUceSource()}", | 88 | containerFactory = "#{rabbitMqSourceConfig.getUceSource()}", |
| 81 | autoStartup = "#{rabbitMqSourceConfig.getUceStartUp()}", | 89 | autoStartup = "#{rabbitMqSourceConfig.getUceStartUp()}", |
| 82 | ackMode = "MANUAL") | 90 | ackMode = "MANUAL")*/ |
| 83 | public void ucEventConsumer(Channel channel, Message message, String content) throws IOException { | 91 | @RabbitHandler |
| 84 | log.info(" receive ucEventConsumer msg , content is : {} ", content); | 92 | @RabbitListener(queues = "#{rabbitMqConfig.getUceQueue()}", ackMode = "AUTO") |
| 93 | public void ucEngineConsumer(Channel channel, Message message, String content) throws IOException { | ||
| 94 | log.info(" receive ucEngineConsumer msg , content is : {} ", content); | ||
| 85 | 95 | ||
| 86 | try { | 96 | try { |
| 87 | TableOperationMsg tableOperationMsg = this.parseContent(content); | 97 | TableOperationMsg tableOperationMsg = this.parseContent(content); |
| 88 | 98 | ||
| 89 | autoUser.route(tableOperationMsg); | 99 | autoUser.route(tableOperationMsg); |
| 90 | 100 | ||
| 91 | channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); | 101 | // channel.basicAck(message.getMessageProperties().getDeliveryTag(), false); |
| 92 | 102 | ||
| 93 | } catch (Exception e) { | 103 | } catch (Exception e) { |
| 94 | 104 | log.error("消费uc-engine消息失败, cause ==>> [ucEngineConsumer#{}]", e.getMessage()); | |
| 95 | channel.basicReject(message.getMessageProperties().getDeliveryTag(), false); | 105 | channel.basicReject(message.getMessageProperties().getDeliveryTag(), false); |
| 96 | 106 | ||
| 97 | if (MapUtils.isNotEmpty(error)) { | 107 | /*if (MapUtils.isNotEmpty(error)) { |
| 98 | String errorStart = this.error.get("start"); | 108 | String errorStart = this.error.get("start"); |
| 99 | 109 | ||
| 100 | if (errorStart.equalsIgnoreCase("true")) { | 110 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -104,7 +114,7 @@ public class UcEngineManagement2IptvConsumer { | ... | @@ -104,7 +114,7 @@ public class UcEngineManagement2IptvConsumer { |
| 104 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 114 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 105 | } | 115 | } |
| 106 | 116 | ||
| 107 | } | 117 | }*/ |
| 108 | 118 | ||
| 109 | e.printStackTrace(); | 119 | e.printStackTrace(); |
| 110 | } | 120 | } | ... | ... |
| ... | @@ -31,8 +31,8 @@ public class UcEventBusIptv2ManagementUcEngine { | ... | @@ -31,8 +31,8 @@ public class UcEventBusIptv2ManagementUcEngine { |
| 31 | @Autowired | 31 | @Autowired |
| 32 | private RestTemplateClient restTemplateClient; | 32 | private RestTemplateClient restTemplateClient; |
| 33 | 33 | ||
| 34 | @Value("#{rabbitMqErrorLogConfig.getEventBusError()}") | 34 | /*@Value("#{rabbitMqErrorLogConfig.getEventBusError()}") |
| 35 | private Map<String, String> error; | 35 | private Map<String, String> error;*/ |
| 36 | 36 | ||
| 37 | /** | 37 | /** |
| 38 | * 事件 | 38 | * 事件 |
| ... | @@ -41,10 +41,13 @@ public class UcEventBusIptv2ManagementUcEngine { | ... | @@ -41,10 +41,13 @@ public class UcEventBusIptv2ManagementUcEngine { |
| 41 | * @author Hongyan Wang | 41 | * @author Hongyan Wang |
| 42 | * @date 2021/9/7 11:26 上午 | 42 | * @date 2021/9/7 11:26 上午 |
| 43 | */ | 43 | */ |
| 44 | @RabbitHandler | 44 | /*@RabbitHandler |
| 45 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getEventBusQueue()}", | 45 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getEventBusQueue()}", |
| 46 | containerFactory = "#{rabbitMqSourceConfig.getEventBusSource()}", | 46 | containerFactory = "#{rabbitMqSourceConfig.getEventBusSource()}", |
| 47 | autoStartup = "#{rabbitMqSourceConfig.getEventBusStartUp()}", | 47 | autoStartup = "#{rabbitMqSourceConfig.getEventBusStartUp()}", |
| 48 | ackMode = "AUTO")*/ | ||
| 49 | @RabbitHandler | ||
| 50 | @RabbitListener(queues = "#{rabbitMqConfig.getEventBusQueue()}", | ||
| 48 | ackMode = "AUTO") | 51 | ackMode = "AUTO") |
| 49 | public void eventBusConsumer(Channel channel, Message message, String content) throws Exception { | 52 | public void eventBusConsumer(Channel channel, Message message, String content) throws Exception { |
| 50 | log.info(" receive dataSync msg , content is ==>> {} ", content); | 53 | log.info(" receive dataSync msg , content is ==>> {} ", content); |
| ... | @@ -97,7 +100,7 @@ public class UcEventBusIptv2ManagementUcEngine { | ... | @@ -97,7 +100,7 @@ public class UcEventBusIptv2ManagementUcEngine { |
| 97 | log.error("eventBus 消费异常 ==>> {}",e.getMessage()); | 100 | log.error("eventBus 消费异常 ==>> {}",e.getMessage()); |
| 98 | 101 | ||
| 99 | // TODO使用slf4j记录日志 | 102 | // TODO使用slf4j记录日志 |
| 100 | if (MapUtils.isNotEmpty(error)) { | 103 | /*if (MapUtils.isNotEmpty(error)) { |
| 101 | String errorStart = this.error.get("start"); | 104 | String errorStart = this.error.get("start"); |
| 102 | 105 | ||
| 103 | if (errorStart.equalsIgnoreCase("true")) { | 106 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -107,7 +110,7 @@ public class UcEventBusIptv2ManagementUcEngine { | ... | @@ -107,7 +110,7 @@ public class UcEventBusIptv2ManagementUcEngine { |
| 107 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 110 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 108 | } | 111 | } |
| 109 | 112 | ||
| 110 | } | 113 | }*/ |
| 111 | 114 | ||
| 112 | } | 115 | } |
| 113 | log.info("eventBusConsumer ====>>>> end"); | 116 | log.info("eventBusConsumer ====>>>> end"); | ... | ... |
| ... | @@ -29,8 +29,8 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -29,8 +29,8 @@ public class UcGatewayIptv2IptvConsumer { |
| 29 | @Autowired | 29 | @Autowired |
| 30 | RestTemplateClient restTemplateClient; | 30 | RestTemplateClient restTemplateClient; |
| 31 | 31 | ||
| 32 | @Value("#{rabbitMqErrorLogConfig.getUcgError()}") | 32 | /*@Value("#{rabbitMqErrorLogConfig.getUcgError()}") |
| 33 | private Map<String, String> error; | 33 | private Map<String, String> error;*/ |
| 34 | 34 | ||
| 35 | /** | 35 | /** |
| 36 | * 事件 | 36 | * 事件 |
| ... | @@ -39,10 +39,13 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -39,10 +39,13 @@ public class UcGatewayIptv2IptvConsumer { |
| 39 | * @author Hongyan Wang | 39 | * @author Hongyan Wang |
| 40 | * @date 2021/9/7 11:26 上午 | 40 | * @date 2021/9/7 11:26 上午 |
| 41 | */ | 41 | */ |
| 42 | @RabbitHandler | 42 | /*@RabbitHandler |
| 43 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgEventQueue()}", | 43 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgEventQueue()}", |
| 44 | containerFactory = "#{rabbitMqSourceConfig.getUcgEventSource()}", | 44 | containerFactory = "#{rabbitMqSourceConfig.getUcgEventSource()}", |
| 45 | autoStartup = "#{rabbitMqSourceConfig.getUcgEventStartUp()}", | 45 | autoStartup = "#{rabbitMqSourceConfig.getUcgEventStartUp()}", |
| 46 | ackMode = "AUTO")*/ | ||
| 47 | @RabbitHandler | ||
| 48 | @RabbitListener(queues = "#{rabbitMqConfig.getUcgEventQueue()}", | ||
| 46 | ackMode = "AUTO") | 49 | ackMode = "AUTO") |
| 47 | public void eventConsumer(Channel channel, Message message, String content) throws IOException { | 50 | public void eventConsumer(Channel channel, Message message, String content) throws IOException { |
| 48 | log.info(" eventConsumer receive dataSync msg , content is : {} ", content); | 51 | log.info(" eventConsumer receive dataSync msg , content is : {} ", content); |
| ... | @@ -60,7 +63,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -60,7 +63,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 60 | 63 | ||
| 61 | log.error("普通权益事件处理异常, ==>> {}", e.getMessage()); | 64 | log.error("普通权益事件处理异常, ==>> {}", e.getMessage()); |
| 62 | 65 | ||
| 63 | if (MapUtils.isNotEmpty(error)) { | 66 | /*if (MapUtils.isNotEmpty(error)) { |
| 64 | String errorStart = this.error.get("start"); | 67 | String errorStart = this.error.get("start"); |
| 65 | 68 | ||
| 66 | if (StringUtils.isEmpty(errorStart) || errorStart.equalsIgnoreCase("true")) { | 69 | if (StringUtils.isEmpty(errorStart) || errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -70,9 +73,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -70,9 +73,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 70 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 73 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 71 | } | 74 | } |
| 72 | 75 | ||
| 73 | } | 76 | }*/ |
| 74 | |||
| 75 | |||
| 76 | } | 77 | } |
| 77 | log.info("ucEventConsumer ====>>>> end"); | 78 | log.info("ucEventConsumer ====>>>> end"); |
| 78 | } | 79 | } |
| ... | @@ -83,10 +84,13 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -83,10 +84,13 @@ public class UcGatewayIptv2IptvConsumer { |
| 83 | * @description 删除全部收藏记录 | 84 | * @description 删除全部收藏记录 |
| 84 | * @param content 消息内容 | 85 | * @param content 消息内容 |
| 85 | */ | 86 | */ |
| 86 | @RabbitHandler | 87 | /*@RabbitHandler |
| 87 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getGrowthReportQueue()}", | 88 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getGrowthReportQueue()}", |
| 88 | containerFactory = "#{rabbitMqSourceConfig.getGrowthReportSource()}", | 89 | containerFactory = "#{rabbitMqSourceConfig.getGrowthReportSource()}", |
| 89 | autoStartup = "#{rabbitMqSourceConfig.getGrowthReportStartUp()}", | 90 | autoStartup = "#{rabbitMqSourceConfig.getGrowthReportStartUp()}", |
| 91 | ackMode = "AUTO")*/ | ||
| 92 | @RabbitHandler | ||
| 93 | @RabbitListener(queues = "#{rabbitMqConfig.getGrowthReportQueue()}", | ||
| 90 | ackMode = "AUTO") | 94 | ackMode = "AUTO") |
| 91 | public void dealGrowthReport(Channel channel, Message message, String content) throws IOException { | 95 | public void dealGrowthReport(Channel channel, Message message, String content) throws IOException { |
| 92 | log.info("receive dealGrowthReport add message, content {}", content); | 96 | log.info("receive dealGrowthReport add message, content {}", content); |
| ... | @@ -96,8 +100,8 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -96,8 +100,8 @@ public class UcGatewayIptv2IptvConsumer { |
| 96 | JSONObject jsonObject = JSON.parseObject(content, JSONObject.class); | 100 | JSONObject jsonObject = JSON.parseObject(content, JSONObject.class); |
| 97 | if (Objects.nonNull(content)) { | 101 | if (Objects.nonNull(content)) { |
| 98 | Object msgData = jsonObject.get("msgData"); | 102 | Object msgData = jsonObject.get("msgData"); |
| 99 | JSONObject response = this.restTemplateClient.saveGrowthReport(JSON.toJSONString(msgData)); | 103 | Boolean response = this.restTemplateClient.saveGrowthReport(JSON.toJSONString(msgData)); |
| 100 | if (Objects.isNull(response)) { | 104 | if (!response) { |
| 101 | log.error("同步大屏成长报告失败,uce接口响应超时"); | 105 | log.error("同步大屏成长报告失败,uce接口响应超时"); |
| 102 | } | 106 | } |
| 103 | } | 107 | } |
| ... | @@ -105,7 +109,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -105,7 +109,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 105 | } catch (Exception e) { | 109 | } catch (Exception e) { |
| 106 | log.error("同步大屏成长报告失败,cause ==>> {}", e.getMessage()); | 110 | log.error("同步大屏成长报告失败,cause ==>> {}", e.getMessage()); |
| 107 | 111 | ||
| 108 | if (MapUtils.isNotEmpty(error)) { | 112 | /*if (MapUtils.isNotEmpty(error)) { |
| 109 | String errorStart = this.error.get("start"); | 113 | String errorStart = this.error.get("start"); |
| 110 | 114 | ||
| 111 | if (errorStart.equalsIgnoreCase("true")) { | 115 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -115,7 +119,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -115,7 +119,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 115 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 119 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 116 | } | 120 | } |
| 117 | 121 | ||
| 118 | } | 122 | }*/ |
| 119 | } | 123 | } |
| 120 | } | 124 | } |
| 121 | 125 | ||
| ... | @@ -124,10 +128,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -124,10 +128,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 124 | * @param content 消息内容 | 128 | * @param content 消息内容 |
| 125 | */ | 129 | */ |
| 126 | @RabbitHandler | 130 | @RabbitHandler |
| 127 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueue()}", | 131 | @RabbitListener(queues = "#{rabbitMqConfig.getUcgCollectionQueue()}", ackMode = "AUTO") |
| 128 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", | ||
| 129 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", | ||
| 130 | ackMode = "AUTO") | ||
| 131 | public void collectionConsumer(Channel channel, Message message, String content) throws IOException { | 132 | public void collectionConsumer(Channel channel, Message message, String content) throws IOException { |
| 132 | log.info("receive UserCollection add message, content {}", content); | 133 | log.info("receive UserCollection add message, content {}", content); |
| 133 | 134 | ||
| ... | @@ -160,7 +161,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -160,7 +161,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 160 | 161 | ||
| 161 | log.error("收藏事件处理异常,cause ==>> {}", e.getMessage()); | 162 | log.error("收藏事件处理异常,cause ==>> {}", e.getMessage()); |
| 162 | 163 | ||
| 163 | if (MapUtils.isNotEmpty(error)) { | 164 | /*if (MapUtils.isNotEmpty(error)) { |
| 164 | String errorStart = this.error.get("start"); | 165 | String errorStart = this.error.get("start"); |
| 165 | 166 | ||
| 166 | if (errorStart.equalsIgnoreCase("true")) { | 167 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -170,7 +171,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -170,7 +171,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 170 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 171 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 171 | } | 172 | } |
| 172 | 173 | ||
| 173 | } | 174 | }*/ |
| 174 | 175 | ||
| 175 | } | 176 | } |
| 176 | } | 177 | } |
| ... | @@ -179,11 +180,13 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -179,11 +180,13 @@ public class UcGatewayIptv2IptvConsumer { |
| 179 | * @description 处理观影记录 | 180 | * @description 处理观影记录 |
| 180 | * @param content 消息内容 | 181 | * @param content 消息内容 |
| 181 | */ | 182 | */ |
| 182 | @RabbitHandler | 183 | /*@RabbitHandler |
| 183 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getViewRecordQueue()}", | 184 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getViewRecordQueue()}", |
| 184 | containerFactory = "#{rabbitMqSourceConfig.getViewRecordSource()}", | 185 | containerFactory = "#{rabbitMqSourceConfig.getViewRecordSource()}", |
| 185 | autoStartup = "#{rabbitMqSourceConfig.getViewRecordStartUp()}", | 186 | autoStartup = "#{rabbitMqSourceConfig.getViewRecordStartUp()}", |
| 186 | ackMode = "AUTO") | 187 | ackMode = "AUTO")*/ |
| 188 | @RabbitHandler | ||
| 189 | @RabbitListener(queues = "#{rabbitMqConfig.getViewRecordQueue()}", ackMode = "AUTO") | ||
| 187 | public void viewRecordConsumer(Channel channel, Message message, String content) throws IOException { | 190 | public void viewRecordConsumer(Channel channel, Message message, String content) throws IOException { |
| 188 | log.info("viewRecordConsumer receive ViewRecord add message, content {}", content); | 191 | log.info("viewRecordConsumer receive ViewRecord add message, content {}", content); |
| 189 | 192 | ||
| ... | @@ -206,7 +209,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -206,7 +209,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 206 | } catch (Exception e) { | 209 | } catch (Exception e) { |
| 207 | log.error("观影事件处理异常,cause ==>> {}", e.getMessage()); | 210 | log.error("观影事件处理异常,cause ==>> {}", e.getMessage()); |
| 208 | 211 | ||
| 209 | if (MapUtils.isNotEmpty(error)) { | 212 | /*if (MapUtils.isNotEmpty(error)) { |
| 210 | String errorStart = this.error.get("start"); | 213 | String errorStart = this.error.get("start"); |
| 211 | 214 | ||
| 212 | if (errorStart.equalsIgnoreCase("true")) { | 215 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -216,7 +219,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -216,7 +219,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 216 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 219 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 217 | } | 220 | } |
| 218 | 221 | ||
| 219 | } | 222 | }*/ |
| 220 | 223 | ||
| 221 | 224 | ||
| 222 | } | 225 | } |
| ... | @@ -227,10 +230,13 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -227,10 +230,13 @@ public class UcGatewayIptv2IptvConsumer { |
| 227 | * @description 添加收藏记录 | 230 | * @description 添加收藏记录 |
| 228 | * @param content 消息内容 | 231 | * @param content 消息内容 |
| 229 | */ | 232 | */ |
| 230 | @RabbitHandler | 233 | /*@RabbitHandler |
| 231 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueueAdd()}", | 234 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueueAdd()}", |
| 232 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", | 235 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", |
| 233 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", | 236 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", |
| 237 | ackMode = "AUTO")*/ | ||
| 238 | @RabbitHandler | ||
| 239 | @RabbitListener(queues = "#{rabbitMqConfig.getUcgCollectionQueueAdd()}", | ||
| 234 | ackMode = "AUTO") | 240 | ackMode = "AUTO") |
| 235 | public void collectionConsumerAdd(Channel channel, Message message, String content) throws IOException { | 241 | public void collectionConsumerAdd(Channel channel, Message message, String content) throws IOException { |
| 236 | log.info("receive collectionConsumerAdd add message, content {}", content); | 242 | log.info("receive collectionConsumerAdd add message, content {}", content); |
| ... | @@ -265,7 +271,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -265,7 +271,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 265 | 271 | ||
| 266 | log.error("添加收藏记录事件处理异常,cause ==>> {}", e.getMessage()); | 272 | log.error("添加收藏记录事件处理异常,cause ==>> {}", e.getMessage()); |
| 267 | 273 | ||
| 268 | if (MapUtils.isNotEmpty(error)) { | 274 | /*if (MapUtils.isNotEmpty(error)) { |
| 269 | String errorStart = this.error.get("start"); | 275 | String errorStart = this.error.get("start"); |
| 270 | 276 | ||
| 271 | if (errorStart.equalsIgnoreCase("true")) { | 277 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -275,7 +281,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -275,7 +281,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 275 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 281 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 276 | } | 282 | } |
| 277 | 283 | ||
| 278 | } | 284 | }*/ |
| 279 | 285 | ||
| 280 | } | 286 | } |
| 281 | } | 287 | } |
| ... | @@ -284,11 +290,13 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -284,11 +290,13 @@ public class UcGatewayIptv2IptvConsumer { |
| 284 | * @description 删除收藏记录 | 290 | * @description 删除收藏记录 |
| 285 | * @param content 消息内容 | 291 | * @param content 消息内容 |
| 286 | */ | 292 | */ |
| 287 | @RabbitHandler | 293 | /* @RabbitHandler |
| 288 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueueDelete()}", | 294 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueueDelete()}", |
| 289 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", | 295 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", |
| 290 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", | 296 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", |
| 291 | ackMode = "AUTO") | 297 | ackMode = "AUTO")*/ |
| 298 | @RabbitHandler | ||
| 299 | @RabbitListener(queues = "#{rabbitMqConfig.getUcgCollectionQueueDelete()}", ackMode = "AUTO") | ||
| 292 | public void collectionConsumerDelete(Channel channel, Message message, String content) throws IOException { | 300 | public void collectionConsumerDelete(Channel channel, Message message, String content) throws IOException { |
| 293 | log.info("receive collectionConsumerDelete add message, content {}", content); | 301 | log.info("receive collectionConsumerDelete add message, content {}", content); |
| 294 | 302 | ||
| ... | @@ -320,7 +328,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -320,7 +328,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 320 | 328 | ||
| 321 | log.error("删除收藏记录事件处理异常,cause ==>> {}", e.getMessage()); | 329 | log.error("删除收藏记录事件处理异常,cause ==>> {}", e.getMessage()); |
| 322 | 330 | ||
| 323 | if (MapUtils.isNotEmpty(error)) { | 331 | /* if (MapUtils.isNotEmpty(error)) { |
| 324 | String errorStart = this.error.get("start"); | 332 | String errorStart = this.error.get("start"); |
| 325 | 333 | ||
| 326 | if (errorStart.equalsIgnoreCase("true")) { | 334 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -330,7 +338,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -330,7 +338,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 330 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 338 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 331 | } | 339 | } |
| 332 | 340 | ||
| 333 | } | 341 | }*/ |
| 334 | 342 | ||
| 335 | 343 | ||
| 336 | } | 344 | } |
| ... | @@ -340,11 +348,14 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -340,11 +348,14 @@ public class UcGatewayIptv2IptvConsumer { |
| 340 | * @description 删除全部收藏记录 | 348 | * @description 删除全部收藏记录 |
| 341 | * @param content 消息内容 | 349 | * @param content 消息内容 |
| 342 | */ | 350 | */ |
| 343 | @RabbitHandler | 351 | /*@RabbitHandler |
| 344 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueueDeleteAll()}", | 352 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getUcgCollectionQueueDeleteAll()}", |
| 345 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", | 353 | containerFactory = "#{rabbitMqSourceConfig.getUcgCollectionSource()}", |
| 346 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", | 354 | autoStartup = "#{rabbitMqSourceConfig.getUcgCollectionStartUp()}", |
| 347 | ackMode = "MANUAL") | 355 | ackMode = "MANUAL")*/ |
| 356 | @RabbitHandler | ||
| 357 | @RabbitListener(queues = "#{rabbitMqConfig.getUcgCollectionQueueDeleteAll()}", | ||
| 358 | ackMode = "AUTO") | ||
| 348 | public void collectionConsumerDeleteAll(Channel channel, Message message, String content) throws IOException { | 359 | public void collectionConsumerDeleteAll(Channel channel, Message message, String content) throws IOException { |
| 349 | log.info("receive collectionConsumerDeleteAll add message, content {}", content); | 360 | log.info("receive collectionConsumerDeleteAll add message, content {}", content); |
| 350 | 361 | ||
| ... | @@ -376,7 +387,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -376,7 +387,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 376 | } catch (Exception e) { | 387 | } catch (Exception e) { |
| 377 | log.error("删除全部收藏记录事件处理异常,cause ==>> {}", e.getMessage()); | 388 | log.error("删除全部收藏记录事件处理异常,cause ==>> {}", e.getMessage()); |
| 378 | 389 | ||
| 379 | if (MapUtils.isNotEmpty(error)) { | 390 | /*if (MapUtils.isNotEmpty(error)) { |
| 380 | String errorStart = this.error.get("start"); | 391 | String errorStart = this.error.get("start"); |
| 381 | 392 | ||
| 382 | if (errorStart.equalsIgnoreCase("true")) { | 393 | if (errorStart.equalsIgnoreCase("true")) { |
| ... | @@ -386,7 +397,7 @@ public class UcGatewayIptv2IptvConsumer { | ... | @@ -386,7 +397,7 @@ public class UcGatewayIptv2IptvConsumer { |
| 386 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 397 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 387 | } | 398 | } |
| 388 | 399 | ||
| 389 | } | 400 | }*/ |
| 390 | } | 401 | } |
| 391 | } | 402 | } |
| 392 | 403 | ... | ... |
| ... | @@ -29,10 +29,8 @@ public class WeiXinEventConsumer { | ... | @@ -29,10 +29,8 @@ public class WeiXinEventConsumer { |
| 29 | @Autowired | 29 | @Autowired |
| 30 | private RestTemplateClient restTemplateClient; | 30 | private RestTemplateClient restTemplateClient; |
| 31 | 31 | ||
| 32 | private static final String QR_CODE_URL = "QR_CODE_URL_"; | 32 | /*@Value("#{rabbitMqErrorLogConfig.getWechatError()}") |
| 33 | 33 | private Map<String, String> error;*/ | |
| 34 | @Value("#{rabbitMqErrorLogConfig.getWechatError()}") | ||
| 35 | private Map<String, String> error; | ||
| 36 | 34 | ||
| 37 | 35 | ||
| 38 | /** | 36 | /** |
| ... | @@ -44,11 +42,12 @@ public class WeiXinEventConsumer { | ... | @@ -44,11 +42,12 @@ public class WeiXinEventConsumer { |
| 44 | * } | 42 | * } |
| 45 | * @param content | 43 | * @param content |
| 46 | */ | 44 | */ |
| 47 | @RabbitHandler | 45 | /*@RabbitHandler |
| 48 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getWechatQueue()}", | 46 | @RabbitListener(queues = "#{rabbitMqSourceConfig.getWechatQueue()}", |
| 49 | containerFactory = "#{rabbitMqSourceConfig.getWechatSource()}", | 47 | containerFactory = "#{rabbitMqSourceConfig.getWechatSource()}", |
| 50 | autoStartup = "#{rabbitMqSourceConfig.getWechatStartUp()}", ackMode = "AUTO") | 48 | autoStartup = "#{rabbitMqSourceConfig.getWechatStartUp()}", ackMode = "AUTO")*/ |
| 51 | @Transactional | 49 | @RabbitHandler |
| 50 | @RabbitListener(queues = "#{rabbitMqConfig.getWechatQueue()}", ackMode = "AUTO") | ||
| 52 | public void subOrUnSubEvent(Channel channel, Message message, String content) throws IOException { | 51 | public void subOrUnSubEvent(Channel channel, Message message, String content) throws IOException { |
| 53 | try { | 52 | try { |
| 54 | log.info("receive wxu subOrUnSub message, content {}", content); | 53 | log.info("receive wxu subOrUnSub message, content {}", content); |
| ... | @@ -92,7 +91,7 @@ public class WeiXinEventConsumer { | ... | @@ -92,7 +91,7 @@ public class WeiXinEventConsumer { |
| 92 | } catch (Exception e) { | 91 | } catch (Exception e) { |
| 93 | log.error("WXSubscribeConsumer || subOrUnSub msg error || {} || {}", content, e.getMessage()); | 92 | log.error("WXSubscribeConsumer || subOrUnSub msg error || {} || {}", content, e.getMessage()); |
| 94 | 93 | ||
| 95 | channel.basicReject(message.getMessageProperties().getDeliveryTag(), false); | 94 | /*channel.basicReject(message.getMessageProperties().getDeliveryTag(), false); |
| 96 | 95 | ||
| 97 | if (MapUtils.isNotEmpty(error)) { | 96 | if (MapUtils.isNotEmpty(error)) { |
| 98 | String errorStart = this.error.get("start"); | 97 | String errorStart = this.error.get("start"); |
| ... | @@ -104,9 +103,8 @@ public class WeiXinEventConsumer { | ... | @@ -104,9 +103,8 @@ public class WeiXinEventConsumer { |
| 104 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); | 103 | FileUtil.writeStringToFile2(filePath1, content, e.getMessage()); |
| 105 | } | 104 | } |
| 106 | 105 | ||
| 107 | } | 106 | }*/ |
| 108 | 107 | ||
| 109 | e.printStackTrace(); | ||
| 110 | log.info("ucEventConsumer ====>>>> end"); | 108 | log.info("ucEventConsumer ====>>>> end"); |
| 111 | } | 109 | } |
| 112 | 110 | ... | ... |
| ... | @@ -2,11 +2,9 @@ package com.topdraw.resttemplate; | ... | @@ -2,11 +2,9 @@ package com.topdraw.resttemplate; |
| 2 | 2 | ||
| 3 | import com.alibaba.fastjson.JSON; | 3 | import com.alibaba.fastjson.JSON; |
| 4 | import com.alibaba.fastjson.JSONObject; | 4 | import com.alibaba.fastjson.JSONObject; |
| 5 | import com.topdraw.config.ResponseStatus; | 5 | import com.topdraw.business.ResponseStatus; |
| 6 | import com.topdraw.mq.consumer.UcEventBusIptv2ManagementUcEngine; | ||
| 7 | import com.topdraw.mq.domain.DataSyncMsg; | 6 | import com.topdraw.mq.domain.DataSyncMsg; |
| 8 | import com.topdraw.mq.domain.SubscribeBean; | 7 | import com.topdraw.mq.domain.SubscribeBean; |
| 9 | import com.topdraw.util.Base64Util; | ||
| 10 | import lombok.extern.slf4j.Slf4j; | 8 | import lombok.extern.slf4j.Slf4j; |
| 11 | import org.springframework.beans.factory.annotation.Autowired; | 9 | import org.springframework.beans.factory.annotation.Autowired; |
| 12 | import org.springframework.core.env.Environment; | 10 | import org.springframework.core.env.Environment; |
| ... | @@ -155,7 +153,7 @@ public class RestTemplateClient { | ... | @@ -155,7 +153,7 @@ public class RestTemplateClient { |
| 155 | return null; | 153 | return null; |
| 156 | } | 154 | } |
| 157 | 155 | ||
| 158 | public JSONObject saveGrowthReport(String content) { | 156 | public boolean saveGrowthReport(String content) { |
| 159 | try { | 157 | try { |
| 160 | String url = BASE_URL + "/uce/userOperation/saveGrowthReport"; | 158 | String url = BASE_URL + "/uce/userOperation/saveGrowthReport"; |
| 161 | String encode = Base64Utils.encodeToString(content.getBytes()); | 159 | String encode = Base64Utils.encodeToString(content.getBytes()); |
| ... | @@ -163,13 +161,13 @@ public class RestTemplateClient { | ... | @@ -163,13 +161,13 @@ public class RestTemplateClient { |
| 163 | ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, encode, String.class); | 161 | ResponseEntity<String> responseEntity = restTemplate.postForEntity(url, encode, String.class); |
| 164 | log.info("response ==>> {}", responseEntity); | 162 | log.info("response ==>> {}", responseEntity); |
| 165 | 163 | ||
| 166 | return getParseResponseResult(responseEntity); | 164 | return getParseResponseResultBoolean(responseEntity); |
| 167 | 165 | ||
| 168 | } catch (Exception e) { | 166 | } catch (Exception e) { |
| 169 | log.error("删除所有观影记录(ApiUti.deleteAllCollection)信息时出现异常,cause ==>> {}", e.getMessage()); | 167 | log.error("保存成长报告(ApiUti.saveGrowthReport)信息时出现异常,cause ==>> {}", e.getMessage()); |
| 170 | } | 168 | } |
| 171 | 169 | ||
| 172 | return null; | 170 | return false; |
| 173 | } | 171 | } |
| 174 | 172 | ||
| 175 | public JSONObject dealViewRecord(String content) { | 173 | public JSONObject dealViewRecord(String content) { |
| ... | @@ -194,6 +192,25 @@ public class RestTemplateClient { | ... | @@ -194,6 +192,25 @@ public class RestTemplateClient { |
| 194 | * @param responseEntity | 192 | * @param responseEntity |
| 195 | * @return | 193 | * @return |
| 196 | */ | 194 | */ |
| 195 | private static Boolean getParseResponseResultBoolean(ResponseEntity<String> responseEntity) { | ||
| 196 | |||
| 197 | Boolean resultSet = null; | ||
| 198 | if (responseEntity.getStatusCode().is2xxSuccessful()) { | ||
| 199 | String entityBody = responseEntity.getBody(); | ||
| 200 | JSONObject jsonObject = JSONObject.parseObject(entityBody); | ||
| 201 | if (jsonObject.getInteger("businessCode").equals(ResponseStatus.OK)) { | ||
| 202 | resultSet = jsonObject.getJSONArray("resultSet").getBoolean(0); | ||
| 203 | } | ||
| 204 | } | ||
| 205 | log.info("result ==>> {}", resultSet); | ||
| 206 | return resultSet; | ||
| 207 | } | ||
| 208 | |||
| 209 | /** | ||
| 210 | * | ||
| 211 | * @param responseEntity | ||
| 212 | * @return | ||
| 213 | */ | ||
| 197 | private static JSONObject getParseResponseResult(ResponseEntity<String> responseEntity) { | 214 | private static JSONObject getParseResponseResult(ResponseEntity<String> responseEntity) { |
| 198 | 215 | ||
| 199 | JSONObject resultSet = null; | 216 | JSONObject resultSet = null; | ... | ... |
| 1 | package com.topdraw.util; | ||
| 2 | |||
| 3 | public class WeChatConstants { | ||
| 4 | |||
| 5 | public static String HTTPS_AUTHORIZE_WITH_SNSAPI_USERINFO = "https://open.weixin.qq.com/connect/oauth2/authorize?appid=APPID&redirect_uri=REDIRECT_URI&response_type=code&scope=snsapi_userinfo&state=STATE#wechat_redirect"; | ||
| 6 | |||
| 7 | public static final String HTTPS_TOKEN = "https://api.weixin.qq.com/cgi-bin/token"; | ||
| 8 | |||
| 9 | public static final String HTTPS_TICKET_GETTICKET = "https://api.weixin.qq.com/cgi-bin/ticket/getticket"; | ||
| 10 | |||
| 11 | public static final String HTTPS_SNS_OAUTH2_ACCESS_TOKEN = "https://api.weixin.qq.com/sns/oauth2/access_token"; | ||
| 12 | |||
| 13 | public static final String HTTPS_SNS_USERINFO = "https://api.weixin.qq.com/sns/userinfo"; | ||
| 14 | |||
| 15 | public static final String CODE2SESSION = "https://api.weixin.qq.com/sns/jscode2session?appid=APPID&secret=SECRET&js_code=JSCODE&grant_type=authorization_code"; | ||
| 16 | |||
| 17 | /** | ||
| 18 | * 把媒体文件上传到微信服务器。目前仅支持图片。用于发送客服消息或被动回复用户消息。 | ||
| 19 | */ | ||
| 20 | public static String UPLOAD_URL = "https://api.weixin.qq.com/cgi-bin/media/upload?access_token={0}&type=image"; | ||
| 21 | |||
| 22 | /** | ||
| 23 | * 获取客服消息内的临时素材。即下载临时的多媒体文件。 | ||
| 24 | */ | ||
| 25 | public static String GET_MEDIA = "https://api.weixin.qq.com/cgi-bin/media/get?access_token={0}&media_id={1}"; | ||
| 26 | |||
| 27 | /** | ||
| 28 | * 用于向微信服务端申请二维码的url | ||
| 29 | */ | ||
| 30 | public static String URL_QR_CODE = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token={0}"; | ||
| 31 | |||
| 32 | /** | ||
| 33 | * 用于聊天时向用户发送消息的url | ||
| 34 | */ | ||
| 35 | public static String CUSTOM_SEND_URL = "https://api.weixin.qq.com/cgi-bin/message/custom/send?access_token={0}"; | ||
| 36 | |||
| 37 | /** | ||
| 38 | * 发送小程序订阅消息 | ||
| 39 | */ | ||
| 40 | public static final String SUBSCRIBE_SEND_URL = "https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token={0}"; | ||
| 41 | |||
| 42 | /** | ||
| 43 | * 生成带参数二维码 | ||
| 44 | */ | ||
| 45 | public static final String QR_CODE_URL = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={0}"; | ||
| 46 | |||
| 47 | /** | ||
| 48 | * 获取用户基本信息 | ||
| 49 | */ | ||
| 50 | public static final String GET_USER_INFO = "https://api.weixin.qq.com/cgi-bin/user/info?access_token={0}&openid={1}&lang=zh_CN"; | ||
| 51 | |||
| 52 | |||
| 53 | // 批量获取关注者列表 | ||
| 54 | public static final String GET_USER_LIST = "https://api.weixin.qq.com/cgi-bin/user/get?access_token={0}&next_openid={1}"; | ||
| 55 | |||
| 56 | /** | ||
| 57 | * 成功 | ||
| 58 | */ | ||
| 59 | public static String SUCCESS = "SUCCESS"; | ||
| 60 | |||
| 61 | /** | ||
| 62 | * 微信系统错误 | ||
| 63 | */ | ||
| 64 | public static String SYSTEMERROR = "SYSTEMERROR"; | ||
| 65 | |||
| 66 | /** | ||
| 67 | * 失败 (注意:微信有的接口返回的失败用FAIL字符串表示,有的接口用FAILED表示) | ||
| 68 | */ | ||
| 69 | public static String FAIL = "FAIL"; | ||
| 70 | |||
| 71 | /** | ||
| 72 | * 微信企业付款到个人失败 (注意:微信有的接口返回的失败用FAIL字符串表示,有的接口用FAILED表示) | ||
| 73 | */ | ||
| 74 | public static String FAILED = "FAILED"; | ||
| 75 | |||
| 76 | public static String ACCESS_TOKEN = "access_token"; | ||
| 77 | |||
| 78 | public static String ERR_CODE = "errcode"; | ||
| 79 | |||
| 80 | /** | ||
| 81 | * 微信请求时,返回ACCESS_TOKEN错误码 | ||
| 82 | */ | ||
| 83 | public static final String ACCESS_TOKEN_INVALID_CODE = "40001"; | ||
| 84 | |||
| 85 | |||
| 86 | /** | ||
| 87 | * 文本消息 | ||
| 88 | */ | ||
| 89 | public static String MSG_TYPE_TEXT = "text"; | ||
| 90 | |||
| 91 | public static String MSG_TYPE_MINIPROGRAMPAGE = "miniprogrampage"; | ||
| 92 | |||
| 93 | public static String MSG_TYPE_LINK = "link"; | ||
| 94 | |||
| 95 | public static String MSG_TYPE_IMAGE = "image"; | ||
| 96 | |||
| 97 | /** | ||
| 98 | * 事件消息 | ||
| 99 | */ | ||
| 100 | public static String MSG_TYPE_EVENT = "event"; | ||
| 101 | |||
| 102 | |||
| 103 | /** | ||
| 104 | * 二维码类型,临时的整型参数值 | ||
| 105 | */ | ||
| 106 | public static String QR_SCENE = "QR_SCENE"; | ||
| 107 | |||
| 108 | /** | ||
| 109 | * 二维码类型,临时的字符串参数值 | ||
| 110 | */ | ||
| 111 | public static String QR_STR_SCENE = "QR_STR_SCENE"; | ||
| 112 | |||
| 113 | /** | ||
| 114 | * 二维码类型,永久的整型参数值 | ||
| 115 | */ | ||
| 116 | public static String QR_LIMIT_SCENE = "QR_LIMIT_SCENE"; | ||
| 117 | |||
| 118 | /** | ||
| 119 | * 二维码类型,永久的字符串参数值 | ||
| 120 | */ | ||
| 121 | public static String QR_LIMIT_STR_SCENE = "QR_LIMIT_STR_SCENE"; | ||
| 122 | |||
| 123 | |||
| 124 | /******** 事件推送事件类型BEGIN********/ | ||
| 125 | |||
| 126 | /** | ||
| 127 | * 取消订阅 | ||
| 128 | */ | ||
| 129 | public static final String EVENT_UNSUBSCRIBE = "unsubscribe"; | ||
| 130 | |||
| 131 | |||
| 132 | /** | ||
| 133 | * 订阅 | ||
| 134 | */ | ||
| 135 | public static final String EVENT_SUBSCRIBE = "subscribe"; | ||
| 136 | |||
| 137 | /** | ||
| 138 | * 扫描带参数二维码事件,用户已关注时的事件推送 | ||
| 139 | */ | ||
| 140 | public static final String EVENT_SCAN = "SCAN"; | ||
| 141 | |||
| 142 | /** | ||
| 143 | * 上报地理位置事件 | ||
| 144 | */ | ||
| 145 | public static final String EVENT_LOCATION = "LOCATION"; | ||
| 146 | |||
| 147 | /** | ||
| 148 | * 自定义菜单事件 | ||
| 149 | */ | ||
| 150 | public static final String EVENT_CLICK = "CLICK"; | ||
| 151 | |||
| 152 | /******** 事件推送事件类型END********/ | ||
| 153 | |||
| 154 | |||
| 155 | /** | ||
| 156 | * 微信ACCESS_TOKEN缓存KEY | ||
| 157 | */ | ||
| 158 | public static final String TOKEN_KEY = "GLOBAL_WX_ACCESS_TOKEN_"; | ||
| 159 | |||
| 160 | |||
| 161 | /** | ||
| 162 | * 微信临时素材缓存KEY | ||
| 163 | */ | ||
| 164 | public static final String WEIXIN_MEDIA_KEY = "WEIXIN_MEDIA_KEY_"; | ||
| 165 | |||
| 166 | // 微信应用类型 小程序 服务号 订阅号 | ||
| 167 | // 小程序 | ||
| 168 | public static final String WX_APPLET = "applet"; | ||
| 169 | // 服务号 | ||
| 170 | public static final String WX_SERVICE = "service"; | ||
| 171 | // 订阅号 | ||
| 172 | public static final String WX_SUBSCRIPTION = "subscription"; | ||
| 173 | |||
| 174 | |||
| 175 | } |
| 1 | spring: | ||
| 2 | # 数据源 | ||
| 3 | datasource: | ||
| 4 | url: jdbc:log4jdbc:mysql://122.112.214.149:3306/tj_user_iptv?serverTimezone=Asia/Shanghai&characterEncoding=utf8&useSSL=false | ||
| 5 | username: root | ||
| 6 | password: root | ||
| 7 | # 驱动程序 | ||
| 8 | driverClassName: net.sf.log4jdbc.sql.jdbcapi.DriverSpy | ||
| 9 | # Druid | ||
| 10 | type: com.alibaba.druid.pool.DruidDataSource | ||
| 11 | druid: | ||
| 12 | # 初始化配置 | ||
| 13 | initial-size: 3 | ||
| 14 | # 最小连接数 | ||
| 15 | min-idle: 3 | ||
| 16 | # 最大连接数 | ||
| 17 | max-active: 15 | ||
| 18 | # 获取连接超时时间 | ||
| 19 | max-wait: 5000 | ||
| 20 | # 连接有效性检测时间 | ||
| 21 | time-between-eviction-runs-millis: 90000 | ||
| 22 | # 最大空闲时间 | ||
| 23 | min-evictable-idle-time-millis: 1800000 | ||
| 24 | test-while-idle: true | ||
| 25 | test-on-borrow: false | ||
| 26 | test-on-return: false | ||
| 27 | validation-query: select 1 | ||
| 28 | # 配置监控统计拦截的filters | ||
| 29 | filters: stat | ||
| 30 | stat-view-servlet: | ||
| 31 | url-pattern: /druid/* | ||
| 32 | reset-enable: false | ||
| 33 | # 过滤器 | ||
| 34 | web-stat-filter: | ||
| 35 | url-pattern: /* | ||
| 36 | exclusions: "*.js,*.gif,*.jpg,*.bmp,*.png,*.css,*.ico,/druid/*" | ||
| 37 | |||
| 38 | # jpa | ||
| 39 | jpa: | ||
| 40 | properties: | ||
| 41 | hibernate: | ||
| 42 | # 数据库类型 | ||
| 43 | dialect: org.hibernate.dialect.MySQL5InnoDBDialect | ||
| 44 | hibernate: | ||
| 45 | # 生产环境设置成 none,避免程序运行时自动更新数据库结构 | ||
| 46 | ddl-auto: none | ||
| 47 | open-in-view: true | ||
| 48 | |||
| 49 | # redis | ||
| 50 | redis: | ||
| 51 | #数据库索引 | ||
| 52 | database: 0 | ||
| 53 | host: 122.112.214.149 | ||
| 54 | port: 6379 | ||
| 55 | password: redis123 | ||
| 56 | #连接超时时间 | ||
| 57 | timeout: 5000 | ||
| 58 | |||
| 59 | |||
| 60 | ###########################################自定义属性################################################################# | ||
| 61 | # 多mq配置 | ||
| 62 | mutil-mq: | ||
| 63 | # 服务侧 | ||
| 64 | service: | ||
| 65 | # ip | ||
| 66 | host: 122.112.214.149 | ||
| 67 | # host: 139.196.145.150 | ||
| 68 | # 端口 | ||
| 69 | port: 5672 | ||
| 70 | # 用户名 | ||
| 71 | username: guest | ||
| 72 | # username: admin | ||
| 73 | # 密码 | ||
| 74 | password: guest | ||
| 75 | # password: Topdraw1qaz | ||
| 76 | # 虚拟空间 | ||
| 77 | virtual-host: member_center_chongshu | ||
| 78 | publisher-confirms: true #如果对异步消息需要回调必须设置为true | ||
| 79 | |||
| 80 | # 管理侧 | ||
| 81 | management: | ||
| 82 | # host: 122.112.214.149 # rabbitmq的连接地址 | ||
| 83 | host: 122.112.214.149 # rabbitmq的连接地址 | ||
| 84 | port: 5672 # rabbitmq的连接端口号 | ||
| 85 | virtual-host: member_center # rabbitmq的虚拟host | ||
| 86 | username: guest # rabbitmq的用户名 | ||
| 87 | password: guest # rabbitmq的密码 | ||
| 88 | # username: admin # rabbitmq的用户名 | ||
| 89 | # password: Topdraw1qaz # rabbitmq的密码 | ||
| 90 | publisher-confirms: true #如果对异步消息需要回调必须设置为true | ||
| 91 | |||
| 92 | # 服务属性 | ||
| 93 | service: | ||
| 94 | mq: | ||
| 95 | list: | ||
| 96 | - source: event | ||
| 97 | exchange: event.exchange | ||
| 98 | queue: event.queue | ||
| 99 | exchange-type: direct | ||
| 100 | routing-key: | ||
| 101 | active: service | ||
| 102 | - source: collection | ||
| 103 | exchange: collection.exchange | ||
| 104 | queue: collection.queue | ||
| 105 | exchange-type: direct | ||
| 106 | routing-key: | ||
| 107 | active: service | ||
| 108 | - source: viewRecord | ||
| 109 | exchange: viewRecord.exchange | ||
| 110 | queue: viewRecord.queue | ||
| 111 | exchange-type: direct | ||
| 112 | routing-key: | ||
| 113 | active: service | ||
| 114 | - source: eventBus | ||
| 115 | exchange: uc.eventbus | ||
| 116 | queue: uc.eventbus | ||
| 117 | exchange-type: topic | ||
| 118 | routing-key: uc.eventbus.*.topic | ||
| 119 | active: service | ||
| 120 | - source: uce | ||
| 121 | exchange: uce.exchange | ||
| 122 | queue: uce.queue | ||
| 123 | exchange-type: direct | ||
| 124 | routing-key: | ||
| 125 | active: management | ||
| 126 | - source: wechat | ||
| 127 | exchange: weixin.exchange.direct | ||
| 128 | queue: weixin.subOrUnSub.queue | ||
| 129 | exchange-type: direct | ||
| 130 | routing-key: | ||
| 131 | active: | ||
| 132 | error: | ||
| 133 | logs: | ||
| 134 | list: | ||
| 135 | - type: eventBus | ||
| 136 | filePath: /logs/mq/eventBus/ | ||
| 137 | fileName: error | ||
| 138 | start: on | ||
| 139 | - type: ucg | ||
| 140 | filePath: /logs/mq/ucg/ | ||
| 141 | fileName: error | ||
| 142 | start: on | ||
| 143 | - type: uce | ||
| 144 | filePath: /logs/mq/uce/ | ||
| 145 | fileName: error | ||
| 146 | start: on | ||
| 147 | - type: wechat | ||
| 148 | filePath: /logs/mq/wechat/ | ||
| 149 | fileName: error | ||
| 150 | start: on | ||
| 151 | |||
| 152 | api: | ||
| 153 | baseUrl: http://127.0.0.1:8447 | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| ... | @@ -60,131 +60,35 @@ spring: | ... | @@ -60,131 +60,35 @@ spring: |
| 60 | #连接超时时间 | 60 | #连接超时时间 |
| 61 | timeout: 5000 | 61 | timeout: 5000 |
| 62 | 62 | ||
| 63 | 63 | rabbitmq: | |
| 64 | ###########################################自定义属性################################################################# | ||
| 65 | # 多mq配置 | ||
| 66 | mutil-mq: | ||
| 67 | # 服务侧 | ||
| 68 | service: | ||
| 69 | # ip | ||
| 70 | host: 122.112.214.149 | 64 | host: 122.112.214.149 |
| 71 | # host: 139.196.145.150 | ||
| 72 | # 端口 | ||
| 73 | port: 5672 | 65 | port: 5672 |
| 74 | # 用户名 | 66 | virtual-host: member_center_small_sichuan |
| 75 | username: guest | 67 | username: guest |
| 76 | # username: admin | ||
| 77 | # 密码 | ||
| 78 | password: guest | 68 | password: guest |
| 79 | # password: Topdraw1qaz | ||
| 80 | # 虚拟空间 | ||
| 81 | virtual-host: member_center_iptv_sichuan | ||
| 82 | # virtual-host: member_center_small_sichuan | ||
| 83 | publisher-confirms: true #如果对异步消息需要回调必须设置为true | ||
| 84 | |||
| 85 | # 管理侧 | ||
| 86 | management: | ||
| 87 | # host: 122.112.214.149 # rabbitmq的连接地址 | ||
| 88 | host: 122.112.214.149 # rabbitmq的连接地址 | ||
| 89 | port: 5672 # rabbitmq的连接端口号 | ||
| 90 | virtual-host: member_center_small_sichuan # rabbitmq的虚拟host | ||
| 91 | # virtual-host: member_center_small_chongshu # rabbitmq的虚拟host | ||
| 92 | username: guest # rabbitmq的用户名 | ||
| 93 | password: guest # rabbitmq的密码 | ||
| 94 | # username: admin # rabbitmq的用户名 | ||
| 95 | # password: Topdraw1qaz # rabbitmq的密码 | ||
| 96 | publisher-confirms: true #如果对异步消息需要回调必须设置为true | ||
| 97 | |||
| 98 | # 服务属性 | ||
| 99 | service: | ||
| 100 | mq: | ||
| 101 | list: | ||
| 102 | - source: growthReport | ||
| 103 | exchange: growthReport.exchange | ||
| 104 | queue: growthReport.queue | ||
| 105 | exchange-type: direct | ||
| 106 | routing-key: | ||
| 107 | active: service | ||
| 108 | - source: event | ||
| 109 | exchange: event.exchange | ||
| 110 | queue: event.queue | ||
| 111 | exchange-type: direct | ||
| 112 | routing-key: | ||
| 113 | active: service | ||
| 114 | - source: collection | ||
| 115 | exchange: exchange.collection | ||
| 116 | queue: collection.queue | ||
| 117 | exchange-type: direct | ||
| 118 | routing-key: | ||
| 119 | active: service | ||
| 120 | - source: collection | ||
| 121 | exchange: userCenter_exchange | ||
| 122 | queue: queue.collection.add | ||
| 123 | exchange-type: direct | ||
| 124 | routing-key: route.UserCollection.add | ||
| 125 | active: service | ||
| 126 | - source: collection | ||
| 127 | exchange: userCenter_exchange | ||
| 128 | queue: queue.collection.delete | ||
| 129 | exchange-type: direct | ||
| 130 | routing-key: route.UserCollection.delete | ||
| 131 | active: service | ||
| 132 | - source: collection | ||
| 133 | exchange: userCenter_exchange | ||
| 134 | queue: queue.collection.deleteall | ||
| 135 | exchange-type: direct | ||
| 136 | routing-key: route.UserCollection.deleteall | ||
| 137 | active: service | ||
| 138 | |||
| 139 | # - source: viewRecord | ||
| 140 | # exchange: viewRecord.exchange | ||
| 141 | # queue: viewRecord.queue | ||
| 142 | # exchange-type: direct | ||
| 143 | # routing-key: | ||
| 144 | # active: service | ||
| 145 | - source: eventBus | ||
| 146 | exchange: uc.eventbus | ||
| 147 | queue: uc.eventbus | ||
| 148 | exchange-type: topic | ||
| 149 | routing-key: uc.eventbus.*.topic | ||
| 150 | active: service | ||
| 151 | - source: uce | ||
| 152 | exchange: uce.exchange | ||
| 153 | queue: uce.queue | ||
| 154 | exchange-type: direct | ||
| 155 | routing-key: | ||
| 156 | active: management | ||
| 157 | - source: uce | ||
| 158 | exchange: exchange.MemberInfoSync | ||
| 159 | queue: queue.MemberInfoSync | ||
| 160 | exchange-type: direct | ||
| 161 | routing-key: | ||
| 162 | active: management | ||
| 163 | # - source: wechat | ||
| 164 | # exchange: weixin.subOrUnSub.direct | ||
| 165 | # queue: weixin.subOrUnSub.queue | ||
| 166 | # exchange-type: direct | ||
| 167 | # routing-key: | ||
| 168 | # active: active | ||
| 169 | error: | ||
| 170 | logs: | ||
| 171 | list: | ||
| 172 | - type: eventBus | ||
| 173 | filePath: /logs/mq/eventBus/ | ||
| 174 | fileName: error | ||
| 175 | start: on | ||
| 176 | - type: ucg | ||
| 177 | filePath: /logs/mq/ucg/ | ||
| 178 | fileName: error | ||
| 179 | start: on | ||
| 180 | - type: uce | ||
| 181 | filePath: /logs/mq/uce/ | ||
| 182 | fileName: error | ||
| 183 | start: on | ||
| 184 | - type: wechat | ||
| 185 | filePath: /logs/mq/wechat/ | ||
| 186 | fileName: error | ||
| 187 | start: on | ||
| 188 | |||
| 189 | api: | ||
| 190 | baseUrl: http://127.0.0.1:8447 | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 69 | publisher-confirms: true | ||
| 70 | listener: | ||
| 71 | direct: | ||
| 72 | auto-startup: false | ||
| 73 | uce: | ||
| 74 | queue: uce.queue | ||
| 75 | memberInfo: | ||
| 76 | queue: queue.MemberInfoSync | ||
| 77 | event: | ||
| 78 | queue: event.queue | ||
| 79 | collection: | ||
| 80 | queue: collection.queue | ||
| 81 | addCollection: | ||
| 82 | queue: collection.queue | ||
| 83 | deleteCollection: | ||
| 84 | queue: collection.queue | ||
| 85 | deleteAllCollection: | ||
| 86 | queue: collection.queue | ||
| 87 | viewRecord: | ||
| 88 | queue: viewRecord.queue | ||
| 89 | eventBus: | ||
| 90 | queue: uc.eventbus | ||
| 91 | wechat: | ||
| 92 | queue: weixin.subOrUnSub.queue | ||
| 93 | growthReport: | ||
| 94 | queue: growthReport.queue | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| 1 | # 服务器 | ||
| 2 | server: | 1 | server: |
| 3 | # 服务端口号 | 2 | # >>> |
| 4 | port: 8448 | 3 | port: 8448 |
| 5 | 4 | ||
| 6 | spring: | 5 | spring: |
| 7 | # 服务 | ||
| 8 | application: | 6 | application: |
| 9 | # 服务名 | ||
| 10 | name: uc-consumer | 7 | name: uc-consumer |
| 11 | # 配置文件 | ||
| 12 | profiles: | 8 | profiles: |
| 13 | # 启动具体的配置文件 | ||
| 14 | active: dev | 9 | active: dev |
| 15 | 10 | ||
| 11 | # 第三方接口 | ||
| 12 | api: | ||
| 13 | baseUrl: http://127.0.0.1:8447 | ||
| 16 | 14 | ||
| 17 | 15 | ... | ... |
-
Please register or sign in to post a comment