1.优化部分程序,清理警告信息
Showing
18 changed files
with
361 additions
and
611 deletions
1 | package com.topdraw.business.module.member.viphistory.rest; | ||
2 | |||
3 | import com.topdraw.business.module.member.viphistory.domain.MemberVipHistory; | ||
4 | import com.topdraw.business.process.service.member.MemberOperationService; | ||
5 | import com.topdraw.common.ResultInfo; | ||
6 | import io.swagger.annotations.Api; | ||
7 | import io.swagger.annotations.ApiOperation; | ||
8 | import org.springframework.beans.factory.annotation.Autowired; | ||
9 | import org.springframework.validation.annotation.Validated; | ||
10 | import org.springframework.web.bind.annotation.*; | ||
11 | |||
12 | /** | ||
13 | * @author luerlong | ||
14 | * @date 2021-12-10 | ||
15 | */ | ||
16 | @Api(tags = "会员vip历史管理") | ||
17 | @RestController | ||
18 | @RequestMapping("/uce/memberVipHistory") | ||
19 | public class MemberVipHistoryController { | ||
20 | |||
21 | @Autowired | ||
22 | private MemberOperationService memberOperationService; | ||
23 | |||
24 | @PostMapping | ||
25 | @ApiOperation("新增MemberVipHistory") | ||
26 | public ResultInfo create(@Validated @RequestBody MemberVipHistory resources) { | ||
27 | this.memberOperationService.createVipHistory(resources); | ||
28 | return ResultInfo.success(); | ||
29 | } | ||
30 | |||
31 | } |
... | @@ -24,7 +24,7 @@ public interface MemberVipHistoryService { | ... | @@ -24,7 +24,7 @@ public interface MemberVipHistoryService { |
24 | * | 24 | * |
25 | * @param resources | 25 | * @param resources |
26 | */ | 26 | */ |
27 | void create(MemberVipHistory resources); | 27 | MemberVipHistoryDTO create(MemberVipHistory resources); |
28 | 28 | ||
29 | /** | 29 | /** |
30 | * | 30 | * | ... | ... |
... | @@ -52,15 +52,14 @@ public class MemberVipHistoryServiceImpl implements MemberVipHistoryService { | ... | @@ -52,15 +52,14 @@ public class MemberVipHistoryServiceImpl implements MemberVipHistoryService { |
52 | 52 | ||
53 | @Override | 53 | @Override |
54 | @Transactional(rollbackFor = Exception.class) | 54 | @Transactional(rollbackFor = Exception.class) |
55 | @AsyncMqSend | 55 | public MemberVipHistoryDTO create(MemberVipHistory resources) { |
56 | public void create(MemberVipHistory resources) { | ||
57 | log.info("MemberVipHistoryServiceImpl ==>> MemberVipHistoryServiceImpl ==>> param ==>> [{}]",resources); | 56 | log.info("MemberVipHistoryServiceImpl ==>> MemberVipHistoryServiceImpl ==>> param ==>> [{}]",resources); |
58 | MemberDTO memberDTO = this.checkMember(resources); | 57 | MemberDTO memberDTO = this.checkMember(resources); |
59 | 58 | ||
60 | MemberVipHistory memberVipHistory = MemberVipHistoryBuilder.build(resources); | 59 | MemberVipHistory memberVipHistory = MemberVipHistoryBuilder.build(resources); |
61 | MemberVipHistory vipHistory = this.memberVipHistoryRepository.save(memberVipHistory); | 60 | MemberVipHistory vipHistory = this.memberVipHistoryRepository.save(memberVipHistory); |
62 | vipHistory.setMemberCode(memberDTO.getCode()); | 61 | vipHistory.setMemberCode(memberDTO.getCode()); |
63 | 62 | return this.memberVipHistoryMapper.toDto(vipHistory); | |
64 | } | 63 | } |
65 | 64 | ||
66 | @Override | 65 | @Override | ... | ... |
1 | package com.topdraw.business.module.rights.constant; | ||
2 | |||
3 | /** | ||
4 | * @author : | ||
5 | * @description: | ||
6 | * @function : | ||
7 | * @date :Created in 2022/6/18 16:06 | ||
8 | * @version: : | ||
9 | * @modified By: | ||
10 | * @since : modified in 2022/6/18 16:06 | ||
11 | */ | ||
12 | public interface RightTypeConstants { | ||
13 | |||
14 | // 优惠券 | ||
15 | int DISCOUNT_COUPON = 1; | ||
16 | // 观影券 | ||
17 | int VIEW_COUPON= 2; | ||
18 | // 参加活动 | ||
19 | int JOIN_ACTIVITY = 3; | ||
20 | // 积分商品 | ||
21 | int POINTS_GOODS = 4; | ||
22 | // IPTV产品包 | ||
23 | int IPTV_PRODUCT = 5; | ||
24 | // IPTV观影权益 | ||
25 | int IPTV_VIEW = 6; | ||
26 | |||
27 | } |
1 | package com.topdraw.business.module.task.template.constant; | ||
2 | |||
3 | /** | ||
4 | * @author : | ||
5 | * @description: | ||
6 | * @function : | ||
7 | * @date :Created in 2022/6/18 14:30 | ||
8 | * @version: : | ||
9 | * @modified By: | ||
10 | * @since : modified in 2022/6/18 14:30 | ||
11 | */ | ||
12 | public interface TaskEventType { | ||
13 | //类型 1:登录;2:观影;3:参加活动;4:订购;5:优享会员;6:签到;7:完成设置; | ||
14 | // 8:播放记录;10:跨屏绑定;11:积分转移;30:积分兑换商品;98:系统操作;99:其他 | ||
15 | int LOGIN = 1; | ||
16 | int VIEW = 2; | ||
17 | int ACTIVITY = 3; | ||
18 | int ORDER = 4; | ||
19 | int MEMBER_PRIORITY = 5; | ||
20 | int SIGN = 6; | ||
21 | int COMPLETE_INFO = 7; | ||
22 | int PLAY = 8; | ||
23 | int BINDING = 10; | ||
24 | int POINTS_TRANS = 11; | ||
25 | int POINTS_EXCHANGE_GOODS = 30; | ||
26 | int SYSTEM_OPERATE = 98; | ||
27 | int OHHER = 99; | ||
28 | |||
29 | } |
... | @@ -2,25 +2,20 @@ package com.topdraw.business.process.rest; | ... | @@ -2,25 +2,20 @@ package com.topdraw.business.process.rest; |
2 | 2 | ||
3 | import com.topdraw.annotation.AnonymousAccess; | 3 | import com.topdraw.annotation.AnonymousAccess; |
4 | import com.topdraw.business.module.common.validated.UpdateGroup; | 4 | import com.topdraw.business.module.common.validated.UpdateGroup; |
5 | import com.topdraw.business.module.member.domain.Member; | ||
6 | import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; | 5 | import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; |
7 | import com.topdraw.business.module.member.service.dto.MemberDTO; | 6 | import com.topdraw.business.module.member.service.dto.MemberDTO; |
8 | import com.topdraw.business.process.domian.member.MemberOperationBean; | 7 | import com.topdraw.business.process.domian.member.MemberOperationBean; |
9 | import com.topdraw.business.process.domian.weixin.BuyVipBean; | ||
10 | import com.topdraw.business.process.service.member.MemberOperationService; | 8 | import com.topdraw.business.process.service.member.MemberOperationService; |
11 | import com.topdraw.common.IResultInfo; | 9 | import com.topdraw.common.IResultInfo; |
12 | import com.topdraw.common.ResultInfo; | 10 | import com.topdraw.common.ResultInfo; |
13 | import com.topdraw.exception.BadRequestException; | ||
14 | import io.swagger.annotations.Api; | 11 | import io.swagger.annotations.Api; |
15 | import io.swagger.annotations.ApiOperation; | 12 | import io.swagger.annotations.ApiOperation; |
16 | import lombok.extern.slf4j.Slf4j; | 13 | import lombok.extern.slf4j.Slf4j; |
17 | import org.apache.commons.lang3.StringUtils; | 14 | import org.apache.commons.lang3.StringUtils; |
18 | import org.springframework.beans.BeanUtils; | ||
19 | import org.springframework.beans.factory.annotation.Autowired; | 15 | import org.springframework.beans.factory.annotation.Autowired; |
20 | import org.springframework.validation.annotation.Validated; | 16 | import org.springframework.validation.annotation.Validated; |
21 | import org.springframework.web.bind.annotation.*; | 17 | import org.springframework.web.bind.annotation.*; |
22 | 18 | ||
23 | import java.sql.Timestamp; | ||
24 | import java.util.Objects; | 19 | import java.util.Objects; |
25 | 20 | ||
26 | @Api("会员处理") | 21 | @Api("会员处理") |
... | @@ -38,21 +33,11 @@ public class MemberOperationController { | ... | @@ -38,21 +33,11 @@ public class MemberOperationController { |
38 | @AnonymousAccess | 33 | @AnonymousAccess |
39 | public ResultInfo updateVipByMemberId(@Validated(value = {UpdateGroup.class}) @RequestBody MemberOperationBean resources) { | 34 | public ResultInfo updateVipByMemberId(@Validated(value = {UpdateGroup.class}) @RequestBody MemberOperationBean resources) { |
40 | log.info("member ==>> doUpdateVipByCode ==>> param ==>> [{}]",resources); | 35 | log.info("member ==>> doUpdateVipByCode ==>> param ==>> [{}]",resources); |
41 | Integer vip = resources.getVip(); | ||
42 | Timestamp vipExpireTime = resources.getVipExpireTime(); | ||
43 | Long memberId = resources.getMemberId(); | 36 | Long memberId = resources.getMemberId(); |
44 | MemberDTO memberDTO = this.memberOperationService.findById(memberId); | 37 | MemberDTO memberDTO = this.memberOperationService.findById(memberId); |
38 | resources.setMemberCode(memberDTO.getCode()); | ||
45 | 39 | ||
46 | Member member = new Member(); | 40 | return this.updateVipByMemberCode(resources); |
47 | BeanUtils.copyProperties(memberDTO, member); | ||
48 | if (Objects.nonNull(vip)) { | ||
49 | member.setVip(vip); | ||
50 | } | ||
51 | if (Objects.nonNull(vipExpireTime)) { | ||
52 | member.setVipExpireTime(vipExpireTime); | ||
53 | } | ||
54 | this.memberOperationService.doUpdateMemberVipAndVipExpireTime(member); | ||
55 | return ResultInfo.success(); | ||
56 | } | 41 | } |
57 | 42 | ||
58 | @RequestMapping(value = "/updateVipByMemberCode") | 43 | @RequestMapping(value = "/updateVipByMemberCode") |
... | @@ -71,28 +56,9 @@ public class MemberOperationController { | ... | @@ -71,28 +56,9 @@ public class MemberOperationController { |
71 | log.error("参数错误,vip为空或者小于0 , vip ==>> {}", vip); | 56 | log.error("参数错误,vip为空或者小于0 , vip ==>> {}", vip); |
72 | return ResultInfo.failure("参数错误,vip为空或者小于0"); | 57 | return ResultInfo.failure("参数错误,vip为空或者小于0"); |
73 | } | 58 | } |
74 | Timestamp vipExpireTime = resources.getVipExpireTime(); | ||
75 | |||
76 | |||
77 | Member member = new Member(); | ||
78 | member.setCode(memberCode); | ||
79 | member.setVip(vip); | ||
80 | member.setVipExpireTime(vipExpireTime); | ||
81 | |||
82 | MemberDTO memberDTO = this.memberOperationService.doUpdateMemberVipAndVipExpireTime(member); | ||
83 | this.createVipHistory(memberDTO.getId(), memberDTO.getCode(), vip, vipExpireTime); | ||
84 | |||
85 | return ResultInfo.success(); | ||
86 | } | ||
87 | 59 | ||
88 | 60 | MemberDTO memberDTO = this.memberOperationService.doUpdateVipByMemberCode(resources); | |
89 | private void createVipHistory(Long memberId, String code, Integer vip , Timestamp vipExpireTime){ | 61 | return ResultInfo.success(memberDTO); |
90 | BuyVipBean buyVipBean = new BuyVipBean(); | ||
91 | buyVipBean.setMemberId(memberId); | ||
92 | buyVipBean.setMemberCode(code); | ||
93 | buyVipBean.setVip(vip); | ||
94 | buyVipBean.setVipExpireTime(vipExpireTime); | ||
95 | this.memberOperationService.buyVipByMemberId(buyVipBean); | ||
96 | } | 62 | } |
97 | 63 | ||
98 | 64 | ||
... | @@ -104,27 +70,6 @@ public class MemberOperationController { | ... | @@ -104,27 +70,6 @@ public class MemberOperationController { |
104 | MemberProfileDTO memberProfileDTO = this.memberOperationService.getMemberProfileAndCheckVip(memberId, appId); | 70 | MemberProfileDTO memberProfileDTO = this.memberOperationService.getMemberProfileAndCheckVip(memberId, appId); |
105 | return ResultInfo.success(memberProfileDTO); | 71 | return ResultInfo.success(memberProfileDTO); |
106 | } | 72 | } |
107 | |||
108 | @PutMapping("/buyVip") | ||
109 | @ApiOperation("购买vip") | ||
110 | @AnonymousAccess | ||
111 | @Deprecated | ||
112 | public ResultInfo buyVip(@RequestBody BuyVipBean buyVipBean) { | ||
113 | |||
114 | /* // 小程序账户id | ||
115 | Long id = buyVipBean.getId(); | ||
116 | if (Objects.isNull(id)) | ||
117 | throw new BadRequestException("参数异常: id is null !"); | ||
118 | |||
119 | // vip等级 | ||
120 | Integer vip = buyVipBean.getVip(); | ||
121 | if (Objects.isNull(vip) || vip <= 0) | ||
122 | throw new BadRequestException("vip 等级有误"); | ||
123 | |||
124 | MemberDTO memberDTO = this.memberOperationService.buyVip(buyVipBean); | ||
125 | return ResultInfo.success(memberDTO);*/ | ||
126 | return null; | ||
127 | } | ||
128 | } | 73 | } |
129 | 74 | ||
130 | 75 | ... | ... |
... | @@ -61,23 +61,26 @@ public class PointsOperationController { | ... | @@ -61,23 +61,26 @@ public class PointsOperationController { |
61 | @AnonymousAccess | 61 | @AnonymousAccess |
62 | public ResultInfo addPoints(@Validated @RequestBody TempPoints tempPoints) { | 62 | public ResultInfo addPoints(@Validated @RequestBody TempPoints tempPoints) { |
63 | log.info("手动发放积分,参数 ==>>{} ", tempPoints); | 63 | log.info("手动发放积分,参数 ==>>{} ", tempPoints); |
64 | |||
64 | Long memberId = tempPoints.getMemberId(); | 65 | Long memberId = tempPoints.getMemberId(); |
65 | if (Objects.isNull(memberId)) { | 66 | if (Objects.isNull(memberId)) { |
66 | log.error("积分发放失败,参数错误,会员id 不存在"); | 67 | log.error("积分发放失败,参数错误,会员id 不存在"); |
67 | return ResultInfo.failure("积分发放失败,参数错误"); | 68 | return ResultInfo.failure("积分发放失败,参数错误"); |
68 | } | 69 | } |
70 | |||
69 | Long points = tempPoints.getPoints(); | 71 | Long points = tempPoints.getPoints(); |
70 | if (Objects.isNull(points) || points <= 0L) { | 72 | if (Objects.isNull(points) || points <= 0L) { |
71 | log.error("积分发放失败,参数错误,积分不存在或者积分小于0"); | 73 | log.error("积分发放失败,参数错误,积分不存在或者积分小于0"); |
72 | return ResultInfo.failure("积分发放失败,参数错误"); | 74 | return ResultInfo.failure("积分发放失败,参数错误"); |
73 | } | 75 | } |
76 | |||
74 | MemberDTO memberDTO = this.memberService.findById(memberId); | 77 | MemberDTO memberDTO = this.memberService.findById(memberId); |
75 | if (Objects.nonNull(memberDTO)) { | 78 | if (Objects.nonNull(memberDTO.getId())) { |
76 | String code = memberDTO.getCode(); | ||
77 | tempPoints.setMemberCode(code); | ||
78 | tempPoints.setMemberId(memberDTO.getId()); | 79 | tempPoints.setMemberId(memberDTO.getId()); |
80 | tempPoints.setMemberCode(memberDTO.getCode()); | ||
79 | this.pointsOperationService.grantPointsByManualByTempPoints(tempPoints); | 81 | this.pointsOperationService.grantPointsByManualByTempPoints(tempPoints); |
80 | } | 82 | } |
83 | |||
81 | return ResultInfo.success(); | 84 | return ResultInfo.success(); |
82 | } | 85 | } |
83 | 86 | ... | ... |
... | @@ -14,6 +14,7 @@ import com.topdraw.business.module.user.iptv.domain.UserTv; | ... | @@ -14,6 +14,7 @@ import com.topdraw.business.module.user.iptv.domain.UserTv; |
14 | import com.topdraw.business.module.user.iptv.service.dto.UserTvDTO; | 14 | import com.topdraw.business.module.user.iptv.service.dto.UserTvDTO; |
15 | import com.topdraw.business.module.user.weixin.domain.UserWeixin; | 15 | import com.topdraw.business.module.user.weixin.domain.UserWeixin; |
16 | import com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO; | 16 | import com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO; |
17 | import com.topdraw.business.process.domian.member.MemberOperationBean; | ||
17 | import com.topdraw.business.process.domian.weixin.*; | 18 | import com.topdraw.business.process.domian.weixin.*; |
18 | import com.topdraw.business.process.service.UserOperationService; | 19 | import com.topdraw.business.process.service.UserOperationService; |
19 | import com.topdraw.business.process.service.member.MemberOperationService; | 20 | import com.topdraw.business.process.service.member.MemberOperationService; |
... | @@ -89,30 +90,14 @@ public class UserOperationController { | ... | @@ -89,30 +90,14 @@ public class UserOperationController { |
89 | Long memberId = userWeixinDTO.getMemberId(); | 90 | Long memberId = userWeixinDTO.getMemberId(); |
90 | MemberDTO memberDTO = this.memberService.findById(memberId); | 91 | MemberDTO memberDTO = this.memberService.findById(memberId); |
91 | 92 | ||
92 | Member member = new Member(); | 93 | MemberOperationBean memberOperationBean = new MemberOperationBean(); |
93 | member.setId(memberDTO.getId()); | 94 | memberOperationBean.setMemberCode(memberDTO.getCode()); |
94 | member.setCode(memberDTO.getCode()); | 95 | memberOperationBean.setVip(vip); |
95 | if (Objects.nonNull(vip)) { | 96 | memberOperationBean.setVipExpireTime(vipExpireTime); |
96 | member.setVip(vip); | ||
97 | } | ||
98 | if (Objects.nonNull(vipExpireTime)) { | ||
99 | member.setVipExpireTime(vipExpireTime); | ||
100 | } | ||
101 | |||
102 | this.memberOperationService.doUpdateMemberVipAndVipExpireTime(member); | ||
103 | |||
104 | this.createVipHistory(userId, vip, vipExpireTime); | ||
105 | |||
106 | return ResultInfo.success(); | ||
107 | } | ||
108 | 97 | ||
98 | MemberDTO memberDTO1 = this.memberOperationService.doUpdateVipByMemberCode(memberOperationBean); | ||
109 | 99 | ||
110 | private void createVipHistory(Long weixinUserId, Integer vip , Timestamp vipExpireTime){ | 100 | return ResultInfo.success(memberDTO1); |
111 | BuyVipBean buyVipBean = new BuyVipBean(); | ||
112 | buyVipBean.setId(weixinUserId); | ||
113 | buyVipBean.setVip(vip); | ||
114 | buyVipBean.setVipExpireTime(vipExpireTime); | ||
115 | this.memberOperationService.buyVipByUserId(buyVipBean); | ||
116 | } | 101 | } |
117 | 102 | ||
118 | @PostMapping(value = "/createWeixinUserAndCreateMember") | 103 | @PostMapping(value = "/createWeixinUserAndCreateMember") | ... | ... |
... | @@ -160,10 +160,4 @@ public interface UserOperationService { | ... | @@ -160,10 +160,4 @@ public interface UserOperationService { |
160 | */ | 160 | */ |
161 | UserTvDTO updateUserTv(UserTv resources); | 161 | UserTvDTO updateUserTv(UserTv resources); |
162 | 162 | ||
163 | /** | ||
164 | * 修改大屏账号vis_user_id | ||
165 | * @param resources | ||
166 | * @return | ||
167 | */ | ||
168 | UserTvDTO updateUserTvVisUserId(UserTv resources); | ||
169 | } | 163 | } | ... | ... |
... | @@ -90,6 +90,7 @@ public class PointsOperationServiceImpl implements PointsOperationService { | ... | @@ -90,6 +90,7 @@ public class PointsOperationServiceImpl implements PointsOperationService { |
90 | if (Objects.isNull(expireTime)){ | 90 | if (Objects.isNull(expireTime)){ |
91 | tempPoints.setExpireTime(TimestampUtil.localDateTime2Timestamp(DateUtil.getLastDateTimeSecondYear())); | 91 | tempPoints.setExpireTime(TimestampUtil.localDateTime2Timestamp(DateUtil.getLastDateTimeSecondYear())); |
92 | } | 92 | } |
93 | |||
93 | this.refresh(tempPoints); | 94 | this.refresh(tempPoints); |
94 | } | 95 | } |
95 | 96 | ... | ... |
... | @@ -54,7 +54,6 @@ import org.springframework.data.domain.Sort; | ... | @@ -54,7 +54,6 @@ import org.springframework.data.domain.Sort; |
54 | import org.springframework.stereotype.Service; | 54 | import org.springframework.stereotype.Service; |
55 | import org.springframework.transaction.annotation.Propagation; | 55 | import org.springframework.transaction.annotation.Propagation; |
56 | import org.springframework.transaction.annotation.Transactional; | 56 | import org.springframework.transaction.annotation.Transactional; |
57 | import org.springframework.util.Assert; | ||
58 | import org.springframework.util.Base64Utils; | 57 | import org.springframework.util.Base64Utils; |
59 | import org.springframework.util.CollectionUtils; | 58 | import org.springframework.util.CollectionUtils; |
60 | 59 | ||
... | @@ -95,7 +94,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -95,7 +94,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
95 | /** 取消关注 */ | 94 | /** 取消关注 */ |
96 | private static final Integer UNSUBSCRIBE_STATUS = 0; | 95 | private static final Integer UNSUBSCRIBE_STATUS = 0; |
97 | private static final Integer SUBSCRIBE_STATUS = 1; | 96 | private static final Integer SUBSCRIBE_STATUS = 1; |
98 | 97 | // 服务域 0:电信 1:联通 2:移动 3:其他 | |
99 | private static final Integer[] PLATFORM_LIST = new Integer[]{0,1,2,3}; | 98 | private static final Integer[] PLATFORM_LIST = new Integer[]{0,1,2,3}; |
100 | 99 | ||
101 | @Value("${uc.app.h5AppId:wxca962918dfeed88c}") | 100 | @Value("${uc.app.h5AppId:wxca962918dfeed88c}") |
... | @@ -104,26 +103,6 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -104,26 +103,6 @@ public class UserOperationServiceImpl implements UserOperationService { |
104 | @Value("${uc.app.appletAppid:wxc57d42de3d351cec}") | 103 | @Value("${uc.app.appletAppid:wxc57d42de3d351cec}") |
105 | private String appletAppid; | 104 | private String appletAppid; |
106 | 105 | ||
107 | |||
108 | @AsyncMqSend | ||
109 | public void asyncMemberAndUserWeixin4Iptv(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {} | ||
110 | @AsyncMqSend | ||
111 | public void asyncMemberAndUserTv4Iptv(MemberAndUserTvDTO memberAndUserTv) {} | ||
112 | @AsyncMqSend | ||
113 | public void asyncWeixin(UserWeixinDTO weixinDTO) {} | ||
114 | @AsyncMqSend | ||
115 | public void asyncUserTv(UserTvDTO userTvDTO) {} | ||
116 | @AsyncMqSend | ||
117 | public void asyncUserTvChangeMainAccount(UserTvDTO userTvDTO) {} | ||
118 | @AsyncMqSend | ||
119 | public void asyncAppletBind(MemberAndUserTvDTO memberAndUserTvDTO) {} | ||
120 | @AsyncMqSend | ||
121 | public void asyncUnbind(MemberAndUserTvDTO memberAndUserTvDTO) {} | ||
122 | @AsyncMqSend | ||
123 | public void asyncUnsubscribe(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {} | ||
124 | @AsyncMqSend | ||
125 | public void asyncSubscribe(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {} | ||
126 | |||
127 | /** | 106 | /** |
128 | * 创建大屏账户同时创建会员 | 107 | * 创建大屏账户同时创建会员 |
129 | * | 108 | * |
... | @@ -134,8 +113,6 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -134,8 +113,6 @@ public class UserOperationServiceImpl implements UserOperationService { |
134 | @Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) | 113 | @Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class) |
135 | public UserTvDTO createTvUserAndMember(UserTv resources) { | 114 | public UserTvDTO createTvUserAndMember(UserTv resources) { |
136 | 115 | ||
137 | boolean flag = true; | ||
138 | |||
139 | // 大屏账户 | 116 | // 大屏账户 |
140 | String platformAccount = resources.getPlatformAccount(); | 117 | String platformAccount = resources.getPlatformAccount(); |
141 | 118 | ||
... | @@ -144,10 +121,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -144,10 +121,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
144 | // 无账号 | 121 | // 无账号 |
145 | if (Objects.isNull(userTvDTO)) { | 122 | if (Objects.isNull(userTvDTO)) { |
146 | 123 | ||
147 | String platformAccountEncode = platformAccount; | 124 | String platformAccountEncode = Base64Utils.encodeToString(platformAccount.getBytes()); |
148 | if (flag) { | 125 | |
149 | platformAccountEncode = Base64Utils.encodeToString(platformAccount.getBytes()); | ||
150 | } | ||
151 | // x_member | 126 | // x_member |
152 | Member member = | 127 | Member member = |
153 | MemberBuilder.build(LocalConstants.MEMBER_PLATFORM_TYPE_VIS, | 128 | MemberBuilder.build(LocalConstants.MEMBER_PLATFORM_TYPE_VIS, |
... | @@ -204,7 +179,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -204,7 +179,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
204 | 179 | ||
205 | /** | 180 | /** |
206 | * 创建小屏账户同时创建会员 | 181 | * 创建小屏账户同时创建会员 |
207 | * @param resources | 182 | * @param resources 微信信息 |
208 | * @return UserWeixinDTO | 183 | * @return UserWeixinDTO |
209 | */ | 184 | */ |
210 | @Override | 185 | @Override |
... | @@ -239,7 +214,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -239,7 +214,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
239 | if (Objects.nonNull(_userWeixinDTO.getMemberId())) { | 214 | if (Objects.nonNull(_userWeixinDTO.getMemberId())) { |
240 | 215 | ||
241 | // 有其他账号的话,将此账号与对应的会员进行绑定 | 216 | // 有其他账号的话,将此账号与对应的会员进行绑定 |
242 | MemberDTO memberDTO = this.findMemberById(_userWeixinDTO.getMemberId()); | 217 | MemberDTO memberDTO = this.memberService.findById(_userWeixinDTO.getMemberId()); |
243 | userWeixinDTO.setMemberId(memberDTO.getId()); | 218 | userWeixinDTO.setMemberId(memberDTO.getId()); |
244 | userWeixinDTO.setMemberCode(memberDTO.getCode()); | 219 | userWeixinDTO.setMemberCode(memberDTO.getCode()); |
245 | if (StringUtils.isBlank(userWeixinDTO.getUnionid())) { | 220 | if (StringUtils.isBlank(userWeixinDTO.getUnionid())) { |
... | @@ -247,17 +222,15 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -247,17 +222,15 @@ public class UserOperationServiceImpl implements UserOperationService { |
247 | } | 222 | } |
248 | UserWeixin userWeixin = new UserWeixin(); | 223 | UserWeixin userWeixin = new UserWeixin(); |
249 | BeanUtils.copyProperties(userWeixinDTO, userWeixin); | 224 | BeanUtils.copyProperties(userWeixinDTO, userWeixin); |
250 | UserWeixinDTO _userWeixinDTO1 = this.updateWeixin(userWeixin); | 225 | return this.updateWeixin(userWeixin); |
251 | return _userWeixinDTO1; | ||
252 | 226 | ||
253 | } else { | 227 | } else { |
254 | 228 | ||
255 | // 有其他账号但都无会员,新建会员并将此账号绑定新建的这个会员 | 229 | // 有其他账号但都无会员,新建会员并将此账号绑定新建的这个会员 |
256 | Member _member = | 230 | Member member = MemberBuilder.build(LocalConstants.MEMBER_PLATFORM_TYPE_WEIXIN, |
257 | MemberBuilder.build(LocalConstants.MEMBER_PLATFORM_TYPE_WEIXIN, | ||
258 | headimgurl, nickname, vip, sex); | 231 | headimgurl, nickname, vip, sex); |
259 | 232 | ||
260 | MemberDTO memberDTO = this.createMember(_member); | 233 | MemberDTO memberDTO = this.createMember(member); |
261 | 234 | ||
262 | if (Objects.nonNull(memberDTO)) { | 235 | if (Objects.nonNull(memberDTO)) { |
263 | userWeixinDTO.setMemberId(memberDTO.getId()); | 236 | userWeixinDTO.setMemberId(memberDTO.getId()); |
... | @@ -267,8 +240,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -267,8 +240,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
267 | } | 240 | } |
268 | UserWeixin userWeixin = new UserWeixin(); | 241 | UserWeixin userWeixin = new UserWeixin(); |
269 | BeanUtils.copyProperties(userWeixinDTO, userWeixin); | 242 | BeanUtils.copyProperties(userWeixinDTO, userWeixin); |
270 | UserWeixinDTO _userWeixinDTO1 = this.updateWeixin(userWeixin); | 243 | return this.updateWeixin(userWeixin); |
271 | return _userWeixinDTO1; | ||
272 | 244 | ||
273 | } | 245 | } |
274 | 246 | ||
... | @@ -277,11 +249,11 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -277,11 +249,11 @@ public class UserOperationServiceImpl implements UserOperationService { |
277 | } else { | 249 | } else { |
278 | 250 | ||
279 | // 该账号存在但无其他账号,新建会员 | 251 | // 该账号存在但无其他账号,新建会员 |
280 | Member _member = | 252 | Member member = |
281 | MemberBuilder.build(LocalConstants.MEMBER_PLATFORM_TYPE_WEIXIN, | 253 | MemberBuilder.build(LocalConstants.MEMBER_PLATFORM_TYPE_WEIXIN, |
282 | headimgurl, nickname, vip, sex); | 254 | headimgurl, nickname, vip, sex); |
283 | 255 | ||
284 | MemberDTO memberDTO = this.createMember(_member); | 256 | MemberDTO memberDTO = this.createMember(member); |
285 | 257 | ||
286 | if (Objects.nonNull(memberDTO)) { | 258 | if (Objects.nonNull(memberDTO)) { |
287 | userWeixinDTO.setMemberId(memberDTO.getId()); | 259 | userWeixinDTO.setMemberId(memberDTO.getId()); |
... | @@ -291,8 +263,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -291,8 +263,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
291 | } | 263 | } |
292 | UserWeixin userWeixin = new UserWeixin(); | 264 | UserWeixin userWeixin = new UserWeixin(); |
293 | BeanUtils.copyProperties(userWeixinDTO, userWeixin); | 265 | BeanUtils.copyProperties(userWeixinDTO, userWeixin); |
294 | UserWeixinDTO _userWeixinDTO1 = this.updateWeixin(userWeixin); | 266 | return this.updateWeixin(userWeixin); |
295 | return _userWeixinDTO1; | ||
296 | 267 | ||
297 | } | 268 | } |
298 | 269 | ||
... | @@ -374,11 +345,10 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -374,11 +345,10 @@ public class UserOperationServiceImpl implements UserOperationService { |
374 | return userWeixinDTO; | 345 | return userWeixinDTO; |
375 | } | 346 | } |
376 | 347 | ||
377 | |||
378 | /** | 348 | /** |
379 | * 服务号登录 | 349 | * 服务号登录 |
380 | * @param resources | 350 | * @param resources 微信信息 |
381 | * @return | 351 | * @return UserWeixinDTO |
382 | */ | 352 | */ |
383 | @Override | 353 | @Override |
384 | public UserWeixinDTO serviceLogin(UserWeixin resources) { | 354 | public UserWeixinDTO serviceLogin(UserWeixin resources) { |
... | @@ -387,14 +357,13 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -387,14 +357,13 @@ public class UserOperationServiceImpl implements UserOperationService { |
387 | UserWeixinDTO userWeixinDTO = this.createWeixinUserAndMember(resources); | 357 | UserWeixinDTO userWeixinDTO = this.createWeixinUserAndMember(resources); |
388 | 358 | ||
389 | // 为了保证返回的同一用户 | 359 | // 为了保证返回的同一用户 |
390 | UserWeixinDTO userWeixinDTO_0 = this.getFirstId(userWeixinDTO); | 360 | return this.getFirstId(userWeixinDTO); |
391 | return userWeixinDTO_0; | ||
392 | } | 361 | } |
393 | 362 | ||
394 | /** | 363 | /** |
395 | * 小程序登录 | 364 | * 小程序登录 |
396 | * @param resources | 365 | * @param resources 微信 |
397 | * @return | 366 | * @return UserWeixinDTO |
398 | */ | 367 | */ |
399 | @Override | 368 | @Override |
400 | @Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false, rollbackFor = Exception.class) | 369 | @Transactional(propagation = Propagation.REQUIRES_NEW, readOnly = false, rollbackFor = Exception.class) |
... | @@ -404,8 +373,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -404,8 +373,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
404 | UserWeixinDTO userWeixinDTO = this.createWeixinUserAndMember(resources); | 373 | UserWeixinDTO userWeixinDTO = this.createWeixinUserAndMember(resources); |
405 | 374 | ||
406 | // 为了保证返回的同一用户 | 375 | // 为了保证返回的同一用户 |
407 | UserWeixinDTO userWeixinDTO_0 = this.getFirstId(userWeixinDTO); | 376 | return this.getFirstId(userWeixinDTO); |
408 | return userWeixinDTO_0; | ||
409 | } | 377 | } |
410 | 378 | ||
411 | /** | 379 | /** |
... | @@ -417,8 +385,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -417,8 +385,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
417 | * 2). 大屏账户保存小屏会员的code | 385 | * 2). 大屏账户保存小屏会员的code |
418 | * 3). 小屏会员中保存大屏的id | 386 | * 3). 小屏会员中保存大屏的id |
419 | * @description 大小屏绑定,大屏账户保存小屏会员编码 | 387 | * @description 大小屏绑定,大屏账户保存小屏会员编码 |
420 | * @param resources | 388 | * @param resources 关注信息 |
421 | * @return | 389 | * @return boolean |
422 | */ | 390 | */ |
423 | @Override | 391 | @Override |
424 | public boolean subscribe(SubscribeBean resources) { | 392 | public boolean subscribe(SubscribeBean resources) { |
... | @@ -431,13 +399,15 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -431,13 +399,15 @@ public class UserOperationServiceImpl implements UserOperationService { |
431 | // 小屏账户 | 399 | // 小屏账户 |
432 | UserWeixinDTO userWeixinDTO = this.userWeixinService.findFirstByUnionIdAndAppIdAndOpenId(unionId, appId, openId); | 400 | UserWeixinDTO userWeixinDTO = this.userWeixinService.findFirstByUnionIdAndAppIdAndOpenId(unionId, appId, openId); |
433 | 401 | ||
434 | MemberDTO memberDTO = null; | 402 | MemberDTO memberDTO; |
435 | if (Objects.isNull(userWeixinDTO.getId()) || StringUtils.isBlank(userWeixinDTO.getUnionid()) || | 403 | if (Objects.isNull(userWeixinDTO.getId()) || StringUtils.isBlank(userWeixinDTO.getUnionid()) || |
436 | Objects.isNull(userWeixinDTO.getMemberId())) { | 404 | Objects.isNull(userWeixinDTO.getMemberId())) { |
437 | 405 | ||
438 | UserWeixin userWeixin = new UserWeixin(); | 406 | UserWeixin userWeixin = new UserWeixin(); |
439 | BeanUtils.copyProperties(resources, userWeixin); | 407 | BeanUtils.copyProperties(resources, userWeixin); |
440 | userWeixin.setStatus(SUBSCRIBE_STATUS); | 408 | userWeixin.setStatus(SUBSCRIBE_STATUS); |
409 | userWeixin.setNickname(nickname); | ||
410 | userWeixin.setHeadimgurl(headImgUrl); | ||
441 | 411 | ||
442 | // 创建小屏账户同时创建会员 | 412 | // 创建小屏账户同时创建会员 |
443 | userWeixinDTO = this.createWeixinUserAndMember(userWeixin, 1); | 413 | userWeixinDTO = this.createWeixinUserAndMember(userWeixin, 1); |
... | @@ -502,9 +472,9 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -502,9 +472,9 @@ public class UserOperationServiceImpl implements UserOperationService { |
502 | 472 | ||
503 | /** | 473 | /** |
504 | * | 474 | * |
505 | * @param memberDTO | 475 | * @param memberDTO 会员 |
506 | * @param subscribe | 476 | * @param subscribe 关注状态 |
507 | * @param sourceInfo | 477 | * @param sourceInfo 来源描述 |
508 | */ | 478 | */ |
509 | private void saveWechatSubscribeRecord(MemberDTO memberDTO, String sourceInfo, int subscribe) { | 479 | private void saveWechatSubscribeRecord(MemberDTO memberDTO, String sourceInfo, int subscribe) { |
510 | 480 | ||
... | @@ -550,8 +520,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -550,8 +520,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
550 | 520 | ||
551 | /** | 521 | /** |
552 | * 微信公众号取消关注 | 522 | * 微信公众号取消关注 |
553 | * @param resources | 523 | * @param resources 参数 |
554 | * @return | 524 | * @return boolean |
555 | */ | 525 | */ |
556 | @Override | 526 | @Override |
557 | public boolean unsubscribe(SubscribeBean resources) { | 527 | public boolean unsubscribe(SubscribeBean resources) { |
... | @@ -607,8 +577,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -607,8 +577,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
607 | try { | 577 | try { |
608 | if (StringUtils.isNotBlank(headimgurl)) { | 578 | if (StringUtils.isNotBlank(headimgurl)) { |
609 | String headimgurlDecode = URLDecoder.decode(headimgurl, "UTF-8"); | 579 | String headimgurlDecode = URLDecoder.decode(headimgurl, "UTF-8"); |
610 | String image = RestTemplateClient.netImage(headimgurlDecode); | 580 | return RestTemplateClient.netImage(headimgurlDecode); |
611 | return image; | ||
612 | } | 581 | } |
613 | } catch (Exception e) { | 582 | } catch (Exception e) { |
614 | log.info("头像解析失败!!!"); | 583 | log.info("头像解析失败!!!"); |
... | @@ -620,8 +589,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -620,8 +589,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
620 | 589 | ||
621 | /** | 590 | /** |
622 | * 更新大屏信息,同时判断是否已经关注,如果关注了则不跳转H5页面 | 591 | * 更新大屏信息,同时判断是否已经关注,如果关注了则不跳转H5页面 |
623 | * @param data | 592 | * @param data 参数 |
624 | * @return | 593 | * @return UserWeixinDTO |
625 | */ | 594 | */ |
626 | @Override | 595 | @Override |
627 | public UserWeixinDTO saveUserInfo(String data) { | 596 | public UserWeixinDTO saveUserInfo(String data) { |
... | @@ -631,7 +600,6 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -631,7 +600,6 @@ public class UserOperationServiceImpl implements UserOperationService { |
631 | JSONObject json = JSONObject.parseObject(data); | 600 | JSONObject json = JSONObject.parseObject(data); |
632 | String unionId = json.getString("unionid"); | 601 | String unionId = json.getString("unionid"); |
633 | // 订阅号appid | 602 | // 订阅号appid |
634 | // String appId = json.getString("dyAppid"); | ||
635 | String appId = json.getString("appid"); | 603 | String appId = json.getString("appid"); |
636 | 604 | ||
637 | try { | 605 | try { |
... | @@ -661,8 +629,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -661,8 +629,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
661 | 629 | ||
662 | // 若未传dyAppId。不走下面的流程 | 630 | // 若未传dyAppId。不走下面的流程 |
663 | if (StrUtil.isNotBlank(appId)) { | 631 | if (StrUtil.isNotBlank(appId)) { |
664 | UserWeixinDTO userWeixinDTO = this.findUserWeiXinByUnionIdAndAppId(unionId,appId); | 632 | return this.findUserWeiXinByUnionIdAndAppId(unionId,appId); |
665 | return userWeixinDTO; | ||
666 | } | 633 | } |
667 | 634 | ||
668 | } catch (Exception e) { | 635 | } catch (Exception e) { |
... | @@ -674,7 +641,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -674,7 +641,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
674 | 641 | ||
675 | /** | 642 | /** |
676 | * 大屏更换主账号 | 643 | * 大屏更换主账号 |
677 | * @param resources | 644 | * @param resources 大屏账号信息 |
645 | * @return boolean | ||
678 | */ | 646 | */ |
679 | @Override | 647 | @Override |
680 | public boolean changeMainAccount(UserTv resources) { | 648 | public boolean changeMainAccount(UserTv resources) { |
... | @@ -697,7 +665,6 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -697,7 +665,6 @@ public class UserOperationServiceImpl implements UserOperationService { |
697 | } | 665 | } |
698 | 666 | ||
699 | // 设置主会员 | 667 | // 设置主会员 |
700 | // UserTvDTO _userTvDTO = this.bondPriorityMember(userTvDTO, memberCode, "manual"); | ||
701 | UserTv userTv = new UserTv(); | 668 | UserTv userTv = new UserTv(); |
702 | userTv.setId(userTvDTO.getId()); | 669 | userTv.setId(userTvDTO.getId()); |
703 | userTv.setPriorityMemberCode(memberCode); | 670 | userTv.setPriorityMemberCode(memberCode); |
... | @@ -710,7 +677,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -710,7 +677,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
710 | 677 | ||
711 | /** | 678 | /** |
712 | * 大屏解绑 | 679 | * 大屏解绑 |
713 | * @param resources | 680 | * @param resources 大屏解绑参数 |
681 | * @return boolean | ||
714 | */ | 682 | */ |
715 | @Override | 683 | @Override |
716 | public boolean tvUnbind(TvUnBindBean resources) { | 684 | public boolean tvUnbind(TvUnBindBean resources) { |
... | @@ -1029,25 +997,24 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1029,25 +997,24 @@ public class UserOperationServiceImpl implements UserOperationService { |
1029 | memberDTO.setPlatformAccount(platformAccount); | 997 | memberDTO.setPlatformAccount(platformAccount); |
1030 | // 同步至iptv | 998 | // 同步至iptv |
1031 | ((UserOperationServiceImpl)AopContext.currentProxy()) | 999 | ((UserOperationServiceImpl)AopContext.currentProxy()) |
1032 | .asyncAppletBind(new MemberAndUserTvDTO(memberDTO, userTvDTO)); | 1000 | .asyncMinaBind(new MemberAndUserTvDTO(memberDTO, userTvDTO)); |
1033 | 1001 | ||
1034 | return true; | 1002 | return true; |
1035 | } | 1003 | } |
1036 | 1004 | ||
1037 | /** | 1005 | /** |
1038 | * | 1006 | * |
1039 | * @param memberDTO | 1007 | * @param resource 会员信息 |
1040 | * @param platformAccount | 1008 | * @param platformAccount 大屏账号 |
1041 | * @return | 1009 | * @return UserTvDTO |
1042 | */ | 1010 | */ |
1043 | @Override | 1011 | @Override |
1044 | public UserTvDTO bind(MemberDTO memberDTO, String platformAccount) { | 1012 | public UserTvDTO bind(MemberDTO resource, String platformAccount) { |
1045 | log.info("bind start"); | 1013 | log.info("bind start"); |
1046 | MemberDTO memberDTO1 = this.memberService.findByCode(memberDTO.getCode()); | 1014 | MemberDTO memberDTO = this.memberService.findByCode(resource.getCode()); |
1047 | log.info("查询会员信息 ==>> {}", memberDTO1); | 1015 | log.info("查询会员信息 ==>> {}", memberDTO); |
1048 | if (Objects.nonNull(memberDTO1.getUserIptvId())) { | 1016 | if (Objects.nonNull(memberDTO.getUserIptvId())) { |
1049 | UserTvDTO userTvDTO = this.userTvService.findById(memberDTO1.getUserIptvId()); | 1017 | return this.userTvService.findById(memberDTO.getUserIptvId()); |
1050 | return userTvDTO; | ||
1051 | } | 1018 | } |
1052 | 1019 | ||
1053 | // 大屏账户 | 1020 | // 大屏账户 |
... | @@ -1057,9 +1024,17 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1057,9 +1024,17 @@ public class UserOperationServiceImpl implements UserOperationService { |
1057 | throw new BadRequestException(GlobeExceptionMsg.IPTV_IS_NULL); | 1024 | throw new BadRequestException(GlobeExceptionMsg.IPTV_IS_NULL); |
1058 | } | 1025 | } |
1059 | 1026 | ||
1060 | // mq同步数据时使用 | 1027 | // 大屏是否绑定主账号,如果绑定了主账户则不操作大屏账户表 |
1061 | memberDTO.setPlatformAccount(platformAccount); | 1028 | String priorityMemberCode = userTvDTO.getPriorityMemberCode(); |
1029 | if (StringUtils.isBlank(priorityMemberCode)) { | ||
1030 | UserTv userTv = new UserTv(); | ||
1031 | userTv.setId(userTvDTO.getId()); | ||
1032 | userTv.setPriorityMemberCode(memberDTO.getCode()); | ||
1033 | |||
1034 | userTvDTO = this.userTvService.doUpdatePriorityMemberCode(userTv); | ||
1035 | } | ||
1062 | 1036 | ||
1037 | Member member = new Member(); | ||
1063 | // 构建小屏会员对象,绑定user_iptv_id字段 | 1038 | // 构建小屏会员对象,绑定user_iptv_id字段 |
1064 | String platform = userTvDTO.getPlatform(); | 1039 | String platform = userTvDTO.getPlatform(); |
1065 | // 绑定IPTV平台 0:未知;1:电信;2:移动;3:联通 | 1040 | // 绑定IPTV平台 0:未知;1:电信;2:移动;3:联通 |
... | @@ -1076,172 +1051,46 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1076,172 +1051,46 @@ public class UserOperationServiceImpl implements UserOperationService { |
1076 | if (UserConstant.platform_dx.contains(platform)) { | 1051 | if (UserConstant.platform_dx.contains(platform)) { |
1077 | bindIptvPlatformType = PLATFORM_LIST[1]; | 1052 | bindIptvPlatformType = PLATFORM_LIST[1]; |
1078 | } | 1053 | } |
1079 | memberDTO.setUserIptvId(userTvDTO.getId()); | 1054 | member.setUserIptvId(userTvDTO.getId()); |
1080 | memberDTO.setBindIptvTime(TimestampUtil.now()); | 1055 | member.setBindIptvTime(TimestampUtil.now()); |
1081 | memberDTO.setBindIptvPlatformType(bindIptvPlatformType); | 1056 | member.setBindIptvPlatformType(bindIptvPlatformType); |
1082 | memberDTO.setPlatformAccount(platformAccount); | 1057 | member.setPlatformAccount(platformAccount); |
1083 | 1058 | ||
1084 | // 大屏是否绑定主账号,如果绑定了主账户则不操作大屏账户表 | ||
1085 | UserTvDTO _userTvDTO = this.bondPriorityMember(userTvDTO, memberDTO.getCode(), "auto"); | ||
1086 | if (Objects.isNull(_userTvDTO)) { | ||
1087 | _userTvDTO = userTvDTO; | ||
1088 | } | ||
1089 | // 修改会员 | 1059 | // 修改会员 |
1090 | MemberDTO _memberDTO = this.doUpdateMemberByMemberDTO(memberDTO); | 1060 | memberDTO = this.memberService.doUpdateMemberUserIptvIdAndBindIptvPlatformAndBindIptvTime(member); |
1091 | |||
1092 | _memberDTO.setPlatformAccount(platformAccount); | ||
1093 | 1061 | ||
1062 | memberDTO.setPlatformAccount(platformAccount); | ||
1094 | 1063 | ||
1095 | log.info("发送到大屏侧的消息对象 会员信息 ==>> {} || 账号信息 ==>> {}", _memberDTO , _userTvDTO); | 1064 | log.info("发送到大屏侧的消息对象 会员信息 ==>> {} || 账号信息 ==>> {}", memberDTO , userTvDTO); |
1096 | // 同步至iptv | 1065 | // 同步至iptv |
1097 | ((UserOperationServiceImpl)AopContext.currentProxy()).asyncAppletBind(new MemberAndUserTvDTO(_memberDTO, _userTvDTO)); | 1066 | ((UserOperationServiceImpl)AopContext.currentProxy()).asyncMinaBind(new MemberAndUserTvDTO(memberDTO, userTvDTO)); |
1098 | 1067 | ||
1099 | return null; | 1068 | return userTvDTO; |
1100 | } | 1069 | } |
1101 | 1070 | ||
1102 | /** | 1071 | /** |
1103 | * | 1072 | * |
1104 | * @param unionid | 1073 | * @param unionId 身份唯一标识 |
1105 | * @param appId | 1074 | * @param appId 应用标识 |
1106 | * @return | 1075 | * @return UserWeixinDTO |
1107 | */ | ||
1108 | private UserWeixinDTO findUserWeiXinByUnionIdAndAppId(String unionid, String appId) { | ||
1109 | return this.userWeixinService.findFirstByUnionidAndAppid(unionid,appId); | ||
1110 | } | ||
1111 | |||
1112 | /** | ||
1113 | * 修改会员vip状态 | ||
1114 | */ | ||
1115 | private MemberDTO doUpdateMemberVip(MemberDTO memberDTO,Integer vip1) { | ||
1116 | if (memberDTO != null) { | ||
1117 | Integer vip = memberDTO.getVip(); | ||
1118 | vip = (vip == null ? 0 : vip); | ||
1119 | // 未购买付费会员 | ||
1120 | if (vip <= 1) { | ||
1121 | |||
1122 | memberDTO.setVip(vip1); | ||
1123 | |||
1124 | Member member = new Member(); | ||
1125 | member.setId(memberDTO.getId()); | ||
1126 | member.setCode(memberDTO.getCode()); | ||
1127 | member.setVipExpireTime(null); | ||
1128 | // this.memberService.update(member); | ||
1129 | this.memberService.doUpdateMemberVipAndVipExpireTime(member); | ||
1130 | |||
1131 | return memberDTO; | ||
1132 | } | ||
1133 | } | ||
1134 | |||
1135 | return null; | ||
1136 | } | ||
1137 | |||
1138 | /** | ||
1139 | * 获取小屏会员 | ||
1140 | * @param userWeixinDTO | ||
1141 | * @return | ||
1142 | */ | ||
1143 | private MemberDTO findMemberByUserWeixinDTO(UserWeixinDTO userWeixinDTO) { | ||
1144 | Long memberId = userWeixinDTO.getMemberId(); | ||
1145 | if (Objects.nonNull(memberId)) { | ||
1146 | MemberDTO memberDTO = this.findMemberById(memberId); | ||
1147 | return memberDTO; | ||
1148 | } | ||
1149 | return null; | ||
1150 | } | ||
1151 | |||
1152 | /** | ||
1153 | * 修改微信公众号关注状态 | ||
1154 | * @param status 0:取消关注 1:关注 | ||
1155 | */ | ||
1156 | private UserWeixinDTO doUpdateUserWeiXinStatus(String appId, String openId, Integer status) { | ||
1157 | |||
1158 | UserWeixinDTO userWeixinDTO = this.userWeixinService.findFirstByAppIdAndOpenId(appId, openId); | ||
1159 | |||
1160 | if (Objects.nonNull(userWeixinDTO.getId())) { | ||
1161 | |||
1162 | UserWeixin userWeixin = new UserWeixin(); | ||
1163 | userWeixin.setId(userWeixinDTO.getId()); | ||
1164 | userWeixin.setStatus(status); | ||
1165 | userWeixinDTO = this.userWeixinService.doUpdateWeixinStatus(userWeixin); | ||
1166 | return userWeixinDTO; | ||
1167 | } | ||
1168 | |||
1169 | return userWeixinDTO; | ||
1170 | |||
1171 | } | ||
1172 | |||
1173 | /** | ||
1174 | * 修改微信公众号关注状态 | ||
1175 | * @param status 0:取消关注 1:关注 | ||
1176 | */ | 1076 | */ |
1177 | public UserWeixinDTO doUpdateUserWeiXinStatus(UserWeixinDTO userWeixinDTO, Integer status) { | 1077 | private UserWeixinDTO findUserWeiXinByUnionIdAndAppId(String unionId, String appId) { |
1178 | 1078 | return this.userWeixinService.findFirstByUnionidAndAppid(unionId, appId); | |
1179 | userWeixinDTO.setStatus(status); | ||
1180 | |||
1181 | UserWeixin userWeixin = new UserWeixin(); | ||
1182 | BeanUtils.copyProperties(userWeixinDTO,userWeixin); | ||
1183 | |||
1184 | this.userWeixinService.update(userWeixin); | ||
1185 | |||
1186 | return userWeixinDTO; | ||
1187 | |||
1188 | } | 1079 | } |
1189 | 1080 | ||
1190 | /** | 1081 | /** |
1191 | * 获取会员 | 1082 | * 获取会员 |
1192 | * @param memberId | 1083 | * @param memberId 会员id |
1193 | * @return | 1084 | * @return MemberDTO |
1194 | */ | 1085 | */ |
1195 | private MemberDTO findMemberById(Long memberId) { | 1086 | private MemberDTO findMemberById(Long memberId) { |
1196 | MemberDTO memberDTO = this.memberService.findById(memberId); | 1087 | return this.memberService.findById(memberId); |
1197 | return memberDTO; | ||
1198 | } | ||
1199 | |||
1200 | /** | ||
1201 | * 获取小屏会员 | ||
1202 | * @param appId | ||
1203 | * @param openId | ||
1204 | * @return | ||
1205 | */ | ||
1206 | private MemberDTO findMemberByAppIdAndOpenId(String appId, String openId) { | ||
1207 | UserWeixinDTO userWeixinDTO = this.userWeixinService.findFirstByAppIdAndOpenId(appId,openId); | ||
1208 | if (Objects.nonNull(userWeixinDTO)) { | ||
1209 | Long memberId = userWeixinDTO.getMemberId(); | ||
1210 | return this.findMemberById(memberId); | ||
1211 | } | ||
1212 | return null; | ||
1213 | } | ||
1214 | |||
1215 | /** | ||
1216 | * 设置主会员 | ||
1217 | * @description 检查大屏账户有没有绑定小屏会员,如果没有绑定就将当前会员的code保存到大屏账户中 | ||
1218 | * @param userTvDTO | ||
1219 | * @param memberCode | ||
1220 | * @param auto manual:手动 auto:自动 | ||
1221 | */ | ||
1222 | private UserTvDTO bondPriorityMember(UserTvDTO userTvDTO, String memberCode, String auto) { | ||
1223 | |||
1224 | if (auto.equalsIgnoreCase("auto")) { | ||
1225 | // 主账户 | ||
1226 | String priorityMemberCode = userTvDTO.getPriorityMemberCode(); | ||
1227 | if (StringUtils.isNotEmpty(priorityMemberCode)) { | ||
1228 | return null; | ||
1229 | } | ||
1230 | } | ||
1231 | |||
1232 | userTvDTO.setPriorityMemberCode(memberCode); | ||
1233 | |||
1234 | UserTv userTv = new UserTv(); | ||
1235 | BeanUtils.copyProperties(userTvDTO, userTv); | ||
1236 | UserTvDTO _userTvDTO = this.updateUserTvUnsyncIptv(userTv); | ||
1237 | |||
1238 | return _userTvDTO; | ||
1239 | } | 1088 | } |
1240 | 1089 | ||
1241 | /** | 1090 | /** |
1242 | * | 1091 | * |
1243 | * @param userTv | 1092 | * @param userTv 大屏账号 |
1244 | * @return | 1093 | * @return UserTvDTO |
1245 | */ | 1094 | */ |
1246 | private UserTvDTO updateUserTvUnsyncIptv(UserTv userTv){ | 1095 | private UserTvDTO updateUserTvUnsyncIptv(UserTv userTv){ |
1247 | return this.userTvService.update(userTv); | 1096 | return this.userTvService.update(userTv); |
... | @@ -1316,37 +1165,15 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1316,37 +1165,15 @@ public class UserOperationServiceImpl implements UserOperationService { |
1316 | userTv.setPlatform(userTvDTO.getPlatformAccount()); | 1165 | userTv.setPlatform(userTvDTO.getPlatformAccount()); |
1317 | userTv.setPriorityMemberCode(bindMemberCode); | 1166 | userTv.setPriorityMemberCode(bindMemberCode); |
1318 | // 绑定新的主账号 | 1167 | // 绑定新的主账号 |
1319 | UserTvDTO _userTvDTO = this.userTvService.doUpdatePriorityMemberCode(userTv); | 1168 | return this.userTvService.doUpdatePriorityMemberCode(userTv); |
1320 | |||
1321 | return _userTvDTO; | ||
1322 | 1169 | ||
1323 | } | 1170 | } |
1324 | } | 1171 | } |
1325 | 1172 | ||
1326 | /** | 1173 | /** |
1327 | * 修改会员 | ||
1328 | * @param memberDTO | ||
1329 | */ | ||
1330 | private MemberDTO doUpdateMemberByMemberDTO(MemberDTO memberDTO){ | ||
1331 | Member member = new Member(); | ||
1332 | BeanUtils.copyProperties(memberDTO,member); | ||
1333 | member.setUpdateTime(TimestampUtil.now()); | ||
1334 | log.info("doUpdateMemberByMemberDTO=====?>>member ==>> [{}]",member); | ||
1335 | return this.doUpdateMember(member); | ||
1336 | } | ||
1337 | |||
1338 | /** | ||
1339 | * 修改会员 | ||
1340 | * @param member | ||
1341 | */ | ||
1342 | private MemberDTO doUpdateMember(Member member){ | ||
1343 | return this.memberService.update(member); | ||
1344 | } | ||
1345 | |||
1346 | /** | ||
1347 | * | 1174 | * |
1348 | * @param unionId | 1175 | * @param unionId 身份标识 |
1349 | * @return | 1176 | * @return UserWeixinDTO |
1350 | */ | 1177 | */ |
1351 | private UserWeixinDTO findFirstByUnionId(String unionId) { | 1178 | private UserWeixinDTO findFirstByUnionId(String unionId) { |
1352 | return this.userWeixinService.findFirstByUnionId(unionId); | 1179 | return this.userWeixinService.findFirstByUnionId(unionId); |
... | @@ -1355,7 +1182,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1355,7 +1182,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
1355 | /** | 1182 | /** |
1356 | * 同一用户有多个微信APP的情况下展示同一个账户信息 | 1183 | * 同一用户有多个微信APP的情况下展示同一个账户信息 |
1357 | * 原则:那个先创建就用那个id | 1184 | * 原则:那个先创建就用那个id |
1358 | * @param userWeixinDTO | 1185 | * @param userWeixinDTO 微信信息 |
1359 | */ | 1186 | */ |
1360 | private UserWeixinDTO getFirstId(UserWeixinDTO userWeixinDTO) { | 1187 | private UserWeixinDTO getFirstId(UserWeixinDTO userWeixinDTO) { |
1361 | String unionid = userWeixinDTO.getUnionid(); | 1188 | String unionid = userWeixinDTO.getUnionid(); |
... | @@ -1402,9 +1229,9 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1402,9 +1229,9 @@ public class UserOperationServiceImpl implements UserOperationService { |
1402 | 1229 | ||
1403 | /** | 1230 | /** |
1404 | * 获取小屏账户 | 1231 | * 获取小屏账户 |
1405 | * @param appId | 1232 | * @param appId 应用标识 |
1406 | * @param openId | 1233 | * @param openId 应用唯一标识 |
1407 | * @return | 1234 | * @return UserWeixinDTO |
1408 | */ | 1235 | */ |
1409 | private UserWeixinDTO findFirstByAppIdAndOpenId(String appId, String openId) { | 1236 | private UserWeixinDTO findFirstByAppIdAndOpenId(String appId, String openId) { |
1410 | return this.userWeixinService.findFirstByAppIdAndOpenId(appId, openId); | 1237 | return this.userWeixinService.findFirstByAppIdAndOpenId(appId, openId); |
... | @@ -1412,8 +1239,8 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1412,8 +1239,8 @@ public class UserOperationServiceImpl implements UserOperationService { |
1412 | 1239 | ||
1413 | /** | 1240 | /** |
1414 | * | 1241 | * |
1415 | * @param member | 1242 | * @param member 会员信息 |
1416 | * @return | 1243 | * @return MemberDTO |
1417 | */ | 1244 | */ |
1418 | private MemberDTO createMember(Member member){ | 1245 | private MemberDTO createMember(Member member){ |
1419 | return this.memberService.create(member); | 1246 | return this.memberService.create(member); |
... | @@ -1421,53 +1248,49 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1421,53 +1248,49 @@ public class UserOperationServiceImpl implements UserOperationService { |
1421 | 1248 | ||
1422 | /** | 1249 | /** |
1423 | * | 1250 | * |
1424 | * @param resources | 1251 | * @param resources 大屏账号信息 |
1425 | * @param memberId | 1252 | * @param memberId 会员id |
1426 | * @return | 1253 | * @return UserTvDTO |
1427 | */ | 1254 | */ |
1428 | private UserTvDTO createTvUser(UserTv resources, Long memberId, String memberCode){ | 1255 | private UserTvDTO createTvUser(UserTv resources, Long memberId, String memberCode){ |
1429 | 1256 | ||
1430 | resources.setMemberId(memberId); | 1257 | resources.setMemberId(memberId); |
1431 | resources.setMemberCode(memberCode); | 1258 | resources.setMemberCode(memberCode); |
1432 | UserTvDTO userTvDTO = this.userTvService.create(resources); | 1259 | return this.userTvService.create(resources); |
1433 | return userTvDTO; | ||
1434 | } | 1260 | } |
1435 | 1261 | ||
1436 | /** | 1262 | /** |
1437 | * | 1263 | * |
1438 | * @param resource | 1264 | * @param resource 微信信息 |
1439 | * @param memberId | 1265 | * @param memberId 会员id |
1440 | * @param memberCode | 1266 | * @param memberCode 会员code |
1441 | * @return | 1267 | * @return UserWeixinDTO |
1442 | */ | 1268 | */ |
1443 | private UserWeixinDTO createWeixinUser(UserWeixin resource, Long memberId, String memberCode){ | 1269 | private UserWeixinDTO createWeixinUser(UserWeixin resource, Long memberId, String memberCode){ |
1444 | if (Objects.nonNull(memberId)) resource.setMemberId(memberId); | 1270 | if (Objects.nonNull(memberId)) resource.setMemberId(memberId); |
1445 | if (StringUtils.isNotBlank(memberCode)) resource.setMemberCode(memberCode); | 1271 | if (StringUtils.isNotBlank(memberCode)) resource.setMemberCode(memberCode); |
1446 | 1272 | ||
1447 | UserWeixinDTO userWeixinDTO = this.userWeixinService.create(resource); | 1273 | return this.userWeixinService.create(resource); |
1448 | |||
1449 | return userWeixinDTO; | ||
1450 | } | 1274 | } |
1451 | 1275 | ||
1452 | /** | 1276 | /** |
1453 | * | 1277 | * |
1454 | * @param memberDTO | 1278 | * @param memberDTO 会员信息 |
1455 | * @return | 1279 | * @return UserTvDTO |
1456 | */ | 1280 | */ |
1457 | @Override | 1281 | @Override |
1458 | public UserTvDTO checkBind(MemberDTO memberDTO) { | 1282 | public UserTvDTO checkBind(MemberDTO memberDTO) { |
1459 | MemberDTO memberDTO1 = this.memberService.findByCode(memberDTO.getCode()); | 1283 | MemberDTO memberDTO1 = this.memberService.findByCode(memberDTO.getCode()); |
1460 | if (Objects.nonNull(memberDTO1.getUserIptvId())) { | 1284 | if (Objects.nonNull(memberDTO1.getUserIptvId())) { |
1461 | UserTvDTO userTvDTO = this.userTvService.findById(memberDTO1.getUserIptvId()); | 1285 | return this.userTvService.findById(memberDTO1.getUserIptvId()); |
1462 | return userTvDTO; | ||
1463 | } | 1286 | } |
1464 | return null; | 1287 | return null; |
1465 | } | 1288 | } |
1466 | 1289 | ||
1467 | /** | 1290 | /** |
1468 | * | 1291 | * |
1469 | * @param platformAccount | 1292 | * @param platformAccount 大屏账号 |
1470 | * @return | 1293 | * @return UserTvDTO |
1471 | */ | 1294 | */ |
1472 | @Override | 1295 | @Override |
1473 | public UserTvDTO findByPlatformAccount(String platformAccount) { | 1296 | public UserTvDTO findByPlatformAccount(String platformAccount) { |
... | @@ -1495,8 +1318,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1495,8 +1318,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
1495 | return false; | 1318 | return false; |
1496 | } | 1319 | } |
1497 | 1320 | ||
1498 | boolean b = this.tvUnbindAndSetNewPriorityMemberCode(memberDTO, userTvDTO); | 1321 | return this.tvUnbindAndSetNewPriorityMemberCode(memberDTO, userTvDTO); |
1499 | return b; | ||
1500 | } | 1322 | } |
1501 | 1323 | ||
1502 | private boolean tvUnbindAndSetNewPriorityMemberCode(MemberDTO memberDTO, UserTvDTO userTvDTO) { | 1324 | private boolean tvUnbindAndSetNewPriorityMemberCode(MemberDTO memberDTO, UserTvDTO userTvDTO) { |
... | @@ -1559,8 +1381,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1559,8 +1381,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
1559 | 1381 | ||
1560 | @Override | 1382 | @Override |
1561 | public UserWeixinDTO findById(Long userId) { | 1383 | public UserWeixinDTO findById(Long userId) { |
1562 | UserWeixinDTO userWeixinDTO = this.userWeixinService.findById(userId); | 1384 | return this.userWeixinService.findById(userId); |
1563 | return userWeixinDTO; | ||
1564 | } | 1385 | } |
1565 | 1386 | ||
1566 | @Override | 1387 | @Override |
... | @@ -1580,7 +1401,7 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1580,7 +1401,7 @@ public class UserOperationServiceImpl implements UserOperationService { |
1580 | Long memberId = userTvDTO.getMemberId(); | 1401 | Long memberId = userTvDTO.getMemberId(); |
1581 | if (Objects.nonNull(memberId)) { | 1402 | if (Objects.nonNull(memberId)) { |
1582 | MemberDTO memberDTO = this.memberService.findById(memberId); | 1403 | MemberDTO memberDTO = this.memberService.findById(memberId); |
1583 | resources.setMemberCode(memberDTO.getCode()); | 1404 | userTvDTO.setMemberCode(memberDTO.getCode()); |
1584 | } | 1405 | } |
1585 | // 同步至iptv | 1406 | // 同步至iptv |
1586 | ((UserOperationServiceImpl)AopContext.currentProxy()).asyncUserTv(userTvDTO); | 1407 | ((UserOperationServiceImpl)AopContext.currentProxy()).asyncUserTv(userTvDTO); |
... | @@ -1588,19 +1409,24 @@ public class UserOperationServiceImpl implements UserOperationService { | ... | @@ -1588,19 +1409,24 @@ public class UserOperationServiceImpl implements UserOperationService { |
1588 | } | 1409 | } |
1589 | 1410 | ||
1590 | 1411 | ||
1591 | @Override | ||
1592 | public UserTvDTO updateUserTvVisUserId(UserTv resources) { | ||
1593 | 1412 | ||
1594 | UserTvDTO userTvDTO = this.userTvService.update(resources); | 1413 | @AsyncMqSend |
1595 | Long memberId = userTvDTO.getMemberId(); | 1414 | public void asyncMemberAndUserWeixin4Iptv(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {} |
1596 | 1415 | @AsyncMqSend | |
1597 | if (Objects.nonNull(memberId)) { | 1416 | public void asyncMemberAndUserTv4Iptv(MemberAndUserTvDTO memberAndUserTv) {} |
1598 | MemberDTO memberDTO = this.memberService.findById(memberId); | 1417 | @AsyncMqSend |
1599 | resources.setMemberCode(memberDTO.getCode()); | 1418 | public void asyncWeixin(UserWeixinDTO weixinDTO) {} |
1600 | } | 1419 | @AsyncMqSend |
1420 | public void asyncUserTv(UserTvDTO userTvDTO) {} | ||
1421 | @AsyncMqSend | ||
1422 | public void asyncUserTvChangeMainAccount(UserTvDTO userTvDTO) {} | ||
1423 | @AsyncMqSend | ||
1424 | public void asyncMinaBind(MemberAndUserTvDTO memberAndUserTvDTO) {} | ||
1425 | @AsyncMqSend | ||
1426 | public void asyncUnbind(MemberAndUserTvDTO memberAndUserTvDTO) {} | ||
1427 | @AsyncMqSend | ||
1428 | public void asyncUnsubscribe(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {} | ||
1429 | @AsyncMqSend | ||
1430 | public void asyncSubscribe(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {} | ||
1601 | 1431 | ||
1602 | // 同步至iptv | ||
1603 | ((UserOperationServiceImpl)AopContext.currentProxy()).asyncUserTv(userTvDTO); | ||
1604 | return userTvDTO; | ||
1605 | } | ||
1606 | } | 1432 | } | ... | ... |
... | @@ -9,13 +9,12 @@ import com.topdraw.business.module.member.service.MemberService; | ... | @@ -9,13 +9,12 @@ import com.topdraw.business.module.member.service.MemberService; |
9 | import com.topdraw.business.module.member.service.dto.MemberDTO; | 9 | import com.topdraw.business.module.member.service.dto.MemberDTO; |
10 | import com.topdraw.business.module.member.viphistory.domain.MemberVipHistory; | 10 | import com.topdraw.business.module.member.viphistory.domain.MemberVipHistory; |
11 | import com.topdraw.business.module.member.viphistory.service.MemberVipHistoryService; | 11 | import com.topdraw.business.module.member.viphistory.service.MemberVipHistoryService; |
12 | import com.topdraw.business.module.user.weixin.domain.UserWeixin; | 12 | import com.topdraw.business.module.member.viphistory.service.dto.MemberVipHistoryDTO; |
13 | import com.topdraw.business.module.user.weixin.service.UserWeixinService; | 13 | import com.topdraw.business.module.user.weixin.service.UserWeixinService; |
14 | import com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO; | 14 | import com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO; |
15 | import com.topdraw.business.process.domian.weixin.BuyVipBean; | 15 | import com.topdraw.business.process.domian.member.MemberOperationBean; |
16 | import com.topdraw.business.process.service.member.MemberOperationService; | 16 | import com.topdraw.business.process.service.member.MemberOperationService; |
17 | import com.topdraw.config.RedisKeyConstants; | 17 | import com.topdraw.config.RedisKeyConstants; |
18 | import com.topdraw.exception.EntityNotFoundException; | ||
19 | import com.topdraw.util.TimestampUtil; | 18 | import com.topdraw.util.TimestampUtil; |
20 | import lombok.extern.slf4j.Slf4j; | 19 | import lombok.extern.slf4j.Slf4j; |
21 | import org.springframework.aop.framework.AopContext; | 20 | import org.springframework.aop.framework.AopContext; |
... | @@ -27,7 +26,6 @@ import org.springframework.stereotype.Service; | ... | @@ -27,7 +26,6 @@ import org.springframework.stereotype.Service; |
27 | import org.springframework.util.Assert; | 26 | import org.springframework.util.Assert; |
28 | 27 | ||
29 | import java.sql.Timestamp; | 28 | import java.sql.Timestamp; |
30 | import java.time.LocalDateTime; | ||
31 | import java.util.Objects; | 29 | import java.util.Objects; |
32 | 30 | ||
33 | @Service | 31 | @Service |
... | @@ -45,81 +43,17 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -45,81 +43,17 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
45 | @Autowired | 43 | @Autowired |
46 | private MemberVipHistoryService memberVipHistoryService; | 44 | private MemberVipHistoryService memberVipHistoryService; |
47 | 45 | ||
48 | |||
49 | |||
50 | @AsyncMqSend | 46 | @AsyncMqSend |
51 | public void asyncUpdateMemberVip(MemberDTO memberDTO) {} | 47 | public void asyncUpdateMemberVipAndVipExpireTime(MemberDTO memberDTO) {} |
52 | |||
53 | @Override | ||
54 | public MemberDTO buyVipByUserId(BuyVipBean resources) { | ||
55 | // 小程序账户id | ||
56 | Long id = resources.getId(); | ||
57 | // 查询微信账户 | ||
58 | UserWeixinDTO userWeixin = this.findWeiXinById(id); | ||
59 | Long memberId = userWeixin.getMemberId(); | ||
60 | resources.setMemberId(memberId); | ||
61 | return this.buyVipByMemberId(resources); | ||
62 | } | ||
63 | |||
64 | @Override | ||
65 | public MemberDTO buyVipByMemberId(BuyVipBean resources) { | ||
66 | |||
67 | Timestamp vipExpireTime1 = resources.getVipExpireTime(); | ||
68 | Integer vip1 = resources.getVip(); | ||
69 | |||
70 | Long memberId = resources.getMemberId(); | ||
71 | // | ||
72 | MemberDTO memberDTO = this.findById(memberId); | ||
73 | String memberCode = memberDTO.getCode(); | ||
74 | Integer vip = memberDTO.getVip(); | ||
75 | |||
76 | // | ||
77 | Timestamp vipExpireTime = memberDTO.getVipExpireTime(); | ||
78 | if (Objects.nonNull(vipExpireTime1)) { | ||
79 | vipExpireTime = vipExpireTime1; | ||
80 | } | ||
81 | |||
82 | //判断之前有没有买过,没买过,失效时间为一年后; | ||
83 | if (Objects.isNull(vipExpireTime1)) { | ||
84 | if (ObjectUtil.isNull(vipExpireTime)) { | ||
85 | LocalDateTime now = LocalDateTime.now(); | ||
86 | vipExpireTime = TimestampUtil.localDateTime2Timestamp(now.plusYears(1L)); | ||
87 | } else { | ||
88 | LocalDateTime localDateTime = TimestampUtil.timestamp2LocalDateTime(vipExpireTime).plusYears(1L); | ||
89 | vipExpireTime = TimestampUtil.localDateTime2Timestamp(localDateTime); | ||
90 | } | ||
91 | |||
92 | } | ||
93 | |||
94 | |||
95 | Member member = new Member(); | ||
96 | member.setVip(vip1); | ||
97 | member.setVipExpireTime(vipExpireTime); | ||
98 | |||
99 | this.doUpdateMemberVipAndVipExpireTime(member); | ||
100 | 48 | ||
101 | MemberVipHistory memberVipHistory = new MemberVipHistory(); | 49 | @AsyncMqSend |
102 | memberVipHistory.setMemberId(memberId).setVip(vip1).setBeforeVip(vip); | 50 | public void asyncCreateMemberVipHistory(MemberVipHistoryDTO memberVipHistoryDTO) {} |
103 | if (ObjectUtil.equal(vip1,vip)) { | ||
104 | memberVipHistory.setStatus(1); | ||
105 | } | ||
106 | memberVipHistory.setMemberCode(memberCode); | ||
107 | memberVipHistory.setVipExpireTime(member.getVipExpireTime()); | ||
108 | this.createVipHistory(memberVipHistory); | ||
109 | 51 | ||
110 | return memberDTO; | ||
111 | } | ||
112 | |||
113 | @Override | ||
114 | public void createVipHistory(MemberVipHistory memberVipHistory){ | ||
115 | this.memberVipHistoryService.create(memberVipHistory); | ||
116 | } | ||
117 | 52 | ||
118 | @AsyncMqSend | 53 | @AsyncMqSend |
119 | @Override | 54 | @Override |
120 | public MemberDTO update(Member resources) { | 55 | public MemberDTO update(Member resources) { |
121 | MemberDTO memberDTO = this.memberService.update(resources); | 56 | return this.memberService.update(resources); |
122 | return memberDTO; | ||
123 | } | 57 | } |
124 | 58 | ||
125 | @Override | 59 | @Override |
... | @@ -127,22 +61,6 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -127,22 +61,6 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
127 | return this.memberService.findByCode(code); | 61 | return this.memberService.findByCode(code); |
128 | } | 62 | } |
129 | 63 | ||
130 | private UserWeixinDTO findWeiXinById(Long id) { | ||
131 | UserWeixinDTO userWeixinDTO = this.userWeixinService.findById(id); | ||
132 | if (Objects.isNull(userWeixinDTO)) { | ||
133 | throw new EntityNotFoundException(UserWeixin.class, "id", userWeixinDTO.getId().toString()); | ||
134 | } | ||
135 | |||
136 | return userWeixinDTO; | ||
137 | } | ||
138 | |||
139 | @Override | ||
140 | public MemberDTO doUpdateMember(Member resources) { | ||
141 | Long id = resources.getId(); | ||
142 | Assert.notNull(id,"ERROR MSG: MemberOperationServiceImpl -> doUpdateMemberInfo -> id not be null!!"); | ||
143 | return this.update(resources); | ||
144 | } | ||
145 | |||
146 | @Override | 64 | @Override |
147 | public MemberDTO doInsertMember(Member resources) { | 65 | public MemberDTO doInsertMember(Member resources) { |
148 | return this.memberService.create(resources); | 66 | return this.memberService.create(resources); |
... | @@ -159,7 +77,6 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -159,7 +77,6 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
159 | return this.memberService.doUpdateMemberExpAndLevel(resources); | 77 | return this.memberService.doUpdateMemberExpAndLevel(resources); |
160 | } | 78 | } |
161 | 79 | ||
162 | |||
163 | @Override | 80 | @Override |
164 | public MemberDTO doUpdateMemberPoints(Member resources) { | 81 | public MemberDTO doUpdateMemberPoints(Member resources) { |
165 | return this.memberService.doUpdateMemberPoints(resources); | 82 | return this.memberService.doUpdateMemberPoints(resources); |
... | @@ -174,23 +91,56 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -174,23 +91,56 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
174 | 91 | ||
175 | @Override | 92 | @Override |
176 | // @CachePut(cacheNames = RedisKeyConstants.cacheMemberById, key = "#member.id") | 93 | // @CachePut(cacheNames = RedisKeyConstants.cacheMemberById, key = "#member.id") |
177 | public MemberDTO doUpdateMemberVipAndVipExpireTime(Member member) { | 94 | public MemberDTO doUpdateMemberVipAndVipExpireTime(Member resource) { |
178 | MemberDTO memberDTO1 = this.memberService.findByCode(member.getCode()); | 95 | MemberDTO memberDTO1 = this.memberService.findByCode(resource.getCode()); |
96 | |||
97 | Member member = new Member(); | ||
98 | member.setId(memberDTO1.getId()); | ||
99 | member.setCode(memberDTO1.getCode()); | ||
100 | member.setVip(resource.getVip()); | ||
101 | member.setVipExpireTime(resource.getVipExpireTime()); | ||
102 | MemberDTO memberDTO = this.memberService.doUpdateMemberVipAndVipExpireTime(member); | ||
103 | |||
104 | ((MemberOperationServiceImpl) AopContext.currentProxy()).asyncUpdateMemberVipAndVipExpireTime(memberDTO); | ||
179 | 105 | ||
180 | Member member1 = new Member(); | 106 | return memberDTO; |
181 | member1.setId(memberDTO1.getId()); | 107 | } |
182 | member1.setCode(memberDTO1.getCode()); | ||
183 | member1.setVip(member.getVip()); | ||
184 | member1.setVipExpireTime(member.getVipExpireTime()); | ||
185 | MemberDTO memberDTO_ = this.memberService.doUpdateMemberVipAndVipExpireTime(member1); | ||
186 | 108 | ||
187 | ((MemberOperationServiceImpl) AopContext.currentProxy()).asyncUpdateMemberVip(memberDTO_); | 109 | @Override |
110 | public MemberDTO doUpdateVipByMemberCode(MemberOperationBean resources) { | ||
111 | Integer nowVip = resources.getVip(); | ||
112 | Long memberId = resources.getMemberId(); | ||
113 | Timestamp vipExpireTime = resources.getVipExpireTime(); | ||
114 | |||
115 | MemberDTO memberDTO = this.memberService.findById(memberId); | ||
116 | |||
117 | String memberCode = memberDTO.getCode(); | ||
118 | Integer vip = memberDTO.getVip(); | ||
119 | |||
120 | Member member = new Member(); | ||
121 | member.setId(memberDTO.getId()); | ||
122 | member.setCode(memberCode); | ||
123 | member.setVip(vip); | ||
124 | member.setVipExpireTime(vipExpireTime); | ||
125 | |||
126 | MemberDTO memberDTO_ = this.memberService.doUpdateMemberVipAndVipExpireTime(member); | ||
127 | |||
128 | ((MemberOperationServiceImpl) AopContext.currentProxy()).asyncUpdateMemberVipAndVipExpireTime(memberDTO_); | ||
129 | |||
130 | MemberVipHistory memberVipHistory = new MemberVipHistory(); | ||
131 | memberVipHistory.setMemberId(memberId).setVip(nowVip).setBeforeVip(vip); | ||
132 | memberVipHistory.setMemberCode(memberCode); | ||
133 | memberVipHistory.setVipExpireTime(vipExpireTime); | ||
134 | MemberVipHistoryDTO memberVipHistoryDTO = this.memberVipHistoryService.create(memberVipHistory); | ||
135 | |||
136 | ((MemberOperationServiceImpl) AopContext.currentProxy()).asyncCreateMemberVipHistory(memberVipHistoryDTO); | ||
188 | 137 | ||
189 | return memberDTO_; | 138 | return memberDTO_; |
190 | } | 139 | } |
191 | 140 | ||
141 | |||
192 | @Override | 142 | @Override |
193 | public MemberProfileDTO getMemberProfileAndCheckVip(Long memberId, String appid) { | 143 | public MemberProfileDTO getMemberProfileAndCheckVip(Long memberId, String appId) { |
194 | 144 | ||
195 | // 会员加密信息 | 145 | // 会员加密信息 |
196 | MemberProfileDTO memberProfileDTO_0 = this.findMemberProfileByMemberId(memberId); | 146 | MemberProfileDTO memberProfileDTO_0 = this.findMemberProfileByMemberId(memberId); |
... | @@ -199,13 +149,11 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -199,13 +149,11 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
199 | MemberDTO memberDTO = this.findById(memberId); | 149 | MemberDTO memberDTO = this.findById(memberId); |
200 | 150 | ||
201 | // 初始化会员加密信息 | 151 | // 初始化会员加密信息 |
202 | MemberProfileDTO memberProfileDTO_1 = this.configMemberProfile(memberProfileDTO_0,memberDTO,appid); | 152 | return this.configMemberProfile(memberProfileDTO_0, memberDTO, appId); |
203 | |||
204 | return memberProfileDTO_1; | ||
205 | } | 153 | } |
206 | 154 | ||
207 | 155 | ||
208 | private MemberProfileDTO configMemberProfile(MemberProfileDTO memberProfileDTO_0, MemberDTO memberDTO, String appid) { | 156 | private MemberProfileDTO configMemberProfile(MemberProfileDTO memberProfileDTO_0, MemberDTO memberDTO, String appId) { |
209 | 157 | ||
210 | if (Objects.isNull(memberProfileDTO_0)) return memberProfileDTO_0; | 158 | if (Objects.isNull(memberProfileDTO_0)) return memberProfileDTO_0; |
211 | 159 | ||
... | @@ -217,11 +165,11 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -217,11 +165,11 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
217 | // 过期时间 | 165 | // 过期时间 |
218 | Timestamp vipExpireTime = memberDTO.getVipExpireTime(); | 166 | Timestamp vipExpireTime = memberDTO.getVipExpireTime(); |
219 | 167 | ||
220 | Long timeLong = 0L; | 168 | long timeLong = 0L; |
221 | if (ObjectUtil.isNotNull(vipExpireTime)) { | 169 | if (ObjectUtil.isNotNull(vipExpireTime)) { |
222 | 170 | ||
223 | // 检查vip | 171 | // 检查vip |
224 | MemberDTO memberDTO1 = this.checkVipStatus(memberDTO,vipExpireTime,appid); | 172 | MemberDTO memberDTO1 = this.checkVipStatus(memberDTO, vipExpireTime, appId); |
225 | 173 | ||
226 | // 更新会员信息 | 174 | // 更新会员信息 |
227 | Member member = new Member(); | 175 | Member member = new Member(); |
... | @@ -259,10 +207,10 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -259,10 +207,10 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
259 | * 1.当前vip如果过期则查看是否有vip历史变动 | 207 | * 1.当前vip如果过期则查看是否有vip历史变动 |
260 | * 2.如果vip变动历史有记录则获取vip变动记录 | 208 | * 2.如果vip变动历史有记录则获取vip变动记录 |
261 | * 3.如果vip没有记录则查看是否关注了公众号 | 209 | * 3.如果vip没有记录则查看是否关注了公众号 |
262 | * @param vipExpireTime | 210 | * @param vipExpireTime 过期时间 |
263 | * @return | 211 | * @return MemberDTO |
264 | */ | 212 | */ |
265 | private MemberDTO checkVipStatus(MemberDTO memberDTO,Timestamp vipExpireTime, String appid) { | 213 | private MemberDTO checkVipStatus(MemberDTO memberDTO,Timestamp vipExpireTime, String appId) { |
266 | 214 | ||
267 | Long memberId = memberDTO.getId(); | 215 | Long memberId = memberDTO.getId(); |
268 | Timestamp nowTime = TimestampUtil.now(); | 216 | Timestamp nowTime = TimestampUtil.now(); |
... | @@ -271,16 +219,16 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -271,16 +219,16 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
271 | if (nowTime.compareTo(vipExpireTime) >= 0 ) { | 219 | if (nowTime.compareTo(vipExpireTime) >= 0 ) { |
272 | 220 | ||
273 | Integer vip = 0; | 221 | Integer vip = 0; |
274 | Timestamp vipExpireTime1 = memberDTO.getVipExpireTime(); | 222 | Timestamp vipExpireTime1; |
275 | 223 | ||
276 | //查询小于失效时间的那条记录 查不到 取微信表里 关注状态 | 224 | //查询小于失效时间的那条记录 查不到 取微信表里 关注状态 |
277 | MemberVipHistory memberVipHistory = this.memberVipHistoryService.findByTime(memberId, nowTime); | 225 | MemberVipHistory memberVipHistory = this.memberVipHistoryService.findByTime(memberId, nowTime); |
278 | 226 | ||
279 | if (ObjectUtil.isNull(memberVipHistory.getId())) { | 227 | if (ObjectUtil.isNull(memberVipHistory.getId())) { |
280 | 228 | ||
281 | UserWeixinDTO userWeixin = this.userWeixinService.findFirstByMemberIdAndAppid(memberId, appid); | 229 | UserWeixinDTO userWeiXin = this.userWeixinService.findFirstByMemberIdAndAppid(memberId, appId); |
282 | // 微信公众号关注的状态 0:未关注 1:关注 | 230 | // 微信公众号关注的状态 0:未关注 1:关注 |
283 | Integer status = userWeixin.getStatus(); | 231 | Integer status = userWeiXin.getStatus(); |
284 | 232 | ||
285 | if (status != 1) vip = 0; else vip = 1; | 233 | if (status != 1) vip = 0; else vip = 1; |
286 | vipExpireTime1 = null; | 234 | vipExpireTime1 = null; |
... | @@ -300,8 +248,8 @@ public class MemberOperationServiceImpl implements MemberOperationService { | ... | @@ -300,8 +248,8 @@ public class MemberOperationServiceImpl implements MemberOperationService { |
300 | 248 | ||
301 | /** | 249 | /** |
302 | * 查询会员加密信息 | 250 | * 查询会员加密信息 |
303 | * @param memberId | 251 | * @param memberId 会员id |
304 | * @return | 252 | * @return MemberProfileDTO |
305 | */ | 253 | */ |
306 | private MemberProfileDTO findMemberProfileByMemberId(Long memberId) { | 254 | private MemberProfileDTO findMemberProfileByMemberId(Long memberId) { |
307 | return this.memberProfileService.findByMemberId(memberId); | 255 | return this.memberProfileService.findByMemberId(memberId); | ... | ... |
... | @@ -11,13 +11,11 @@ import com.topdraw.business.process.service.dto.MemberProfileAndMemberDTO; | ... | @@ -11,13 +11,11 @@ import com.topdraw.business.process.service.dto.MemberProfileAndMemberDTO; |
11 | import com.topdraw.business.process.service.member.MemberProfileOperationService; | 11 | import com.topdraw.business.process.service.member.MemberProfileOperationService; |
12 | import com.topdraw.exception.EntityExistException; | 12 | import com.topdraw.exception.EntityExistException; |
13 | import com.topdraw.exception.EntityNotFoundException; | 13 | import com.topdraw.exception.EntityNotFoundException; |
14 | import org.apache.commons.lang3.StringUtils; | ||
15 | import org.springframework.aop.framework.AopContext; | 14 | import org.springframework.aop.framework.AopContext; |
16 | import org.springframework.beans.BeanUtils; | 15 | import org.springframework.beans.BeanUtils; |
17 | import org.springframework.beans.factory.annotation.Autowired; | 16 | import org.springframework.beans.factory.annotation.Autowired; |
18 | import org.springframework.stereotype.Service; | 17 | import org.springframework.stereotype.Service; |
19 | 18 | ||
20 | import javax.validation.constraints.NotNull; | ||
21 | import java.util.Objects; | 19 | import java.util.Objects; |
22 | 20 | ||
23 | 21 | ||
... | @@ -39,25 +37,16 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation | ... | @@ -39,25 +37,16 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation |
39 | private MemberService memberService; | 37 | private MemberService memberService; |
40 | 38 | ||
41 | @AsyncMqSend | 39 | @AsyncMqSend |
42 | public void asyncMemberProfile(MemberProfileDTO memberProfileDTO){} | 40 | public void asyncUpdateMemberProfileAndSyncMember(MemberProfileAndMemberDTO memberProfileAndMemberDTO){} |
43 | @AsyncMqSend | 41 | @AsyncMqSend |
44 | public void asyncMemberProfileAndMember(MemberProfileAndMemberDTO memberProfileAndMemberDTO){} | 42 | public void asyncCreateMemberProfileAndSyncMember(MemberProfileDTO memberProfileDTO) {} |
45 | @AsyncMqSend | ||
46 | public void asyncCreateMemberProfile(MemberProfileDTO memberProfileDTO) {} | ||
47 | |||
48 | @Override | ||
49 | public MemberProfileDTO update(MemberProfile resources) { | ||
50 | MemberProfileDTO memberProfileDTO = this.memberProfileService.update(resources); | ||
51 | memberProfileDTO.setMemberCode(resources.getMemberCode()); | ||
52 | ((MemberProfileOperationServiceImpl) AopContext.currentProxy()).asyncMemberProfile(memberProfileDTO); | ||
53 | return memberProfileDTO; | ||
54 | } | ||
55 | 43 | ||
56 | @Override | 44 | @Override |
57 | public MemberProfileDTO updateMemberProfileAndMember(MemberProfile resources) { | 45 | public MemberProfileDTO updateMemberProfileAndMember(MemberProfile resources) { |
58 | Long id = resources.getId(); | 46 | Long id = resources.getId(); |
59 | MemberProfileDTO _memberProfile = this.memberProfileService.findById(id); | 47 | MemberProfileDTO memberProfile = this.memberProfileService.findById(id); |
60 | Long memberId = _memberProfile.getMemberId(); | 48 | |
49 | Long memberId = memberProfile.getMemberId(); | ||
61 | resources.setMemberId(memberId); | 50 | resources.setMemberId(memberId); |
62 | 51 | ||
63 | MemberDTO memberDTO = this.memberService.checkMember(resources.getMemberId(), resources.getMemberCode()); | 52 | MemberDTO memberDTO = this.memberService.checkMember(resources.getMemberId(), resources.getMemberCode()); |
... | @@ -68,7 +57,7 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation | ... | @@ -68,7 +57,7 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation |
68 | memberProfileDTO.setMemberCode(memberDTO.getCode()); | 57 | memberProfileDTO.setMemberCode(memberDTO.getCode()); |
69 | 58 | ||
70 | ((MemberProfileOperationServiceImpl)AopContext.currentProxy()) | 59 | ((MemberProfileOperationServiceImpl)AopContext.currentProxy()) |
71 | .asyncMemberProfileAndMember(new MemberProfileAndMemberDTO(memberProfileDTO, memberDTO)); | 60 | .asyncUpdateMemberProfileAndSyncMember(new MemberProfileAndMemberDTO(memberProfileDTO, memberDTO)); |
72 | 61 | ||
73 | return memberProfileDTO; | 62 | return memberProfileDTO; |
74 | } | 63 | } |
... | @@ -88,7 +77,7 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation | ... | @@ -88,7 +77,7 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation |
88 | 77 | ||
89 | this.createMemberProfileAndSyncMember(memberProfileDTO, memberDTO); | 78 | this.createMemberProfileAndSyncMember(memberProfileDTO, memberDTO); |
90 | 79 | ||
91 | ((MemberProfileOperationServiceImpl) AopContext.currentProxy()).asyncCreateMemberProfile(memberProfileDTO); | 80 | ((MemberProfileOperationServiceImpl) AopContext.currentProxy()).asyncCreateMemberProfileAndSyncMember(memberProfileDTO); |
92 | 81 | ||
93 | } else { | 82 | } else { |
94 | 83 | ||
... | @@ -112,13 +101,11 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation | ... | @@ -112,13 +101,11 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation |
112 | 101 | ||
113 | private void syncMember(MemberProfileDTO memberProfileDTO, MemberDTO memberDTO) { | 102 | private void syncMember(MemberProfileDTO memberProfileDTO, MemberDTO memberDTO) { |
114 | Member member = new Member(); | 103 | Member member = new Member(); |
115 | |||
116 | member.setId(memberDTO.getId()); | 104 | member.setId(memberDTO.getId()); |
117 | member.setCode(memberDTO.getCode()); | 105 | member.setCode(memberDTO.getCode()); |
118 | member.setAvatarUrl(memberProfileDTO.getAvatarUrl()); | 106 | member.setAvatarUrl(memberProfileDTO.getAvatarUrl()); |
119 | member.setNickname(memberProfileDTO.getRealname()); | 107 | member.setNickname(memberProfileDTO.getRealname()); |
120 | member.setGender(memberProfileDTO.getGender()); | 108 | member.setGender(memberProfileDTO.getGender()); |
121 | // this.memberService.update(member); | ||
122 | this.memberService.doUpdateMemberAvatarUrlAndNicknameAndGender(member); | 109 | this.memberService.doUpdateMemberAvatarUrlAndNicknameAndGender(member); |
123 | } | 110 | } |
124 | 111 | ... | ... |
... | @@ -4,6 +4,7 @@ import com.topdraw.business.module.member.domain.Member; | ... | @@ -4,6 +4,7 @@ import com.topdraw.business.module.member.domain.Member; |
4 | import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; | 4 | import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; |
5 | import com.topdraw.business.module.member.service.dto.MemberDTO; | 5 | import com.topdraw.business.module.member.service.dto.MemberDTO; |
6 | import com.topdraw.business.module.member.viphistory.domain.MemberVipHistory; | 6 | import com.topdraw.business.module.member.viphistory.domain.MemberVipHistory; |
7 | import com.topdraw.business.process.domian.member.MemberOperationBean; | ||
7 | import com.topdraw.business.process.domian.weixin.BuyVipBean; | 8 | import com.topdraw.business.process.domian.weixin.BuyVipBean; |
8 | 9 | ||
9 | public interface MemberOperationService { | 10 | public interface MemberOperationService { |
... | @@ -31,26 +32,6 @@ public interface MemberOperationService { | ... | @@ -31,26 +32,6 @@ public interface MemberOperationService { |
31 | MemberProfileDTO getMemberProfileAndCheckVip(Long memberId, String appid); | 32 | MemberProfileDTO getMemberProfileAndCheckVip(Long memberId, String appid); |
32 | 33 | ||
33 | /** | 34 | /** |
34 | * | ||
35 | * @param resources | ||
36 | * @return | ||
37 | */ | ||
38 | MemberDTO buyVipByUserId(BuyVipBean resources); | ||
39 | |||
40 | /** | ||
41 | * | ||
42 | * @param resources | ||
43 | * @return | ||
44 | */ | ||
45 | MemberDTO buyVipByMemberId(BuyVipBean resources); | ||
46 | |||
47 | /** | ||
48 | * | ||
49 | * @param memberVipHistory | ||
50 | */ | ||
51 | void createVipHistory(MemberVipHistory memberVipHistory); | ||
52 | |||
53 | /** | ||
54 | * 修改会员 | 35 | * 修改会员 |
55 | * @param resources | 36 | * @param resources |
56 | */ | 37 | */ |
... | @@ -60,12 +41,6 @@ public interface MemberOperationService { | ... | @@ -60,12 +41,6 @@ public interface MemberOperationService { |
60 | * | 41 | * |
61 | * @param resources | 42 | * @param resources |
62 | */ | 43 | */ |
63 | MemberDTO doUpdateMember(Member resources); | ||
64 | |||
65 | /** | ||
66 | * | ||
67 | * @param resources | ||
68 | */ | ||
69 | MemberDTO doInsertMember(Member resources); | 44 | MemberDTO doInsertMember(Member resources); |
70 | 45 | ||
71 | /** | 46 | /** |
... | @@ -91,4 +66,10 @@ public interface MemberOperationService { | ... | @@ -91,4 +66,10 @@ public interface MemberOperationService { |
91 | * @param member | 66 | * @param member |
92 | */ | 67 | */ |
93 | MemberDTO doUpdateMemberVipAndVipExpireTime(Member member); | 68 | MemberDTO doUpdateMemberVipAndVipExpireTime(Member member); |
69 | |||
70 | /** | ||
71 | * | ||
72 | * @param resources | ||
73 | */ | ||
74 | MemberDTO doUpdateVipByMemberCode(MemberOperationBean resources); | ||
94 | } | 75 | } | ... | ... |
... | @@ -6,12 +6,6 @@ import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; | ... | @@ -6,12 +6,6 @@ import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO; |
6 | public interface MemberProfileOperationService { | 6 | public interface MemberProfileOperationService { |
7 | 7 | ||
8 | /** | 8 | /** |
9 | * 修改 | ||
10 | * @param resources | ||
11 | */ | ||
12 | MemberProfileDTO update(MemberProfile resources); | ||
13 | |||
14 | /** | ||
15 | * 修改会员属性并同步会员信息 | 9 | * 修改会员属性并同步会员信息 |
16 | * @param resources | 10 | * @param resources |
17 | */ | 11 | */ | ... | ... |
1 | package com.topdraw.config; | ||
2 | |||
3 | /** | ||
4 | * @author : | ||
5 | * @description:\ | ||
6 | * @function : | ||
7 | * @date :Created in 2022/6/18 13:25 | ||
8 | * @version: : | ||
9 | * @modified By: | ||
10 | * @since : modified in 2022/6/18 13:25 | ||
11 | */ | ||
12 | public interface RedisKeyConstants { | ||
13 | |||
14 | String cacheMemberById = "uce::member::id"; | ||
15 | String updateCacheMemberById = "uce::updateMember::id"; | ||
16 | |||
17 | String updateCachePointsByMemberId = "uce::updatePoints::memberId"; | ||
18 | String updateCacheExpByMemberId = "uce::updateExp::memberId"; | ||
19 | String updateCacheCouponByMemberId = "uce::updateCoupon::memberId"; | ||
20 | |||
21 | String cacheUserTvByPlatformAccount = "uce::userTv::platformAccount"; | ||
22 | String cacheTaskProcessByMemberId = "uce::taskProcess::memberId"; | ||
23 | String cacheTaskByTaskTemplateId = "uce::task::taskTemplateId"; | ||
24 | } |
1 | package com.topdraw.config; | ||
2 | |||
3 | |||
4 | import com.fasterxml.jackson.annotation.JsonAutoDetect; | ||
5 | import com.fasterxml.jackson.annotation.PropertyAccessor; | ||
6 | import com.fasterxml.jackson.databind.ObjectMapper; | ||
7 | import lombok.extern.slf4j.Slf4j; | ||
8 | import org.springframework.beans.factory.annotation.Autowired; | ||
9 | import org.springframework.cache.annotation.CachingConfigurerSupport; | ||
10 | import org.springframework.context.annotation.Bean; | ||
11 | import org.springframework.context.annotation.Configuration; | ||
12 | import org.springframework.context.annotation.Primary; | ||
13 | import org.springframework.data.redis.cache.RedisCacheConfiguration; | ||
14 | import org.springframework.data.redis.cache.RedisCacheManager; | ||
15 | import org.springframework.data.redis.connection.RedisConnectionFactory; | ||
16 | import org.springframework.data.redis.core.RedisTemplate; | ||
17 | import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer; | ||
18 | |||
19 | import java.time.Duration; | ||
20 | import java.util.HashSet; | ||
21 | import java.util.Set; | ||
22 | import java.util.concurrent.ConcurrentHashMap; | ||
23 | |||
24 | /** | ||
25 | * @author : | ||
26 | * @description: | ||
27 | * @function : | ||
28 | * @date :Created in 2022/6/19 16:30 | ||
29 | * @version: : | ||
30 | * @modified By: | ||
31 | * @since : modified in 2022/6/19 16:30 | ||
32 | */ | ||
33 | @Slf4j | ||
34 | @Configuration | ||
35 | public class UceRedisConfig { | ||
36 | |||
37 | @Autowired | ||
38 | private RedisConfig redisConfig; | ||
39 | @Autowired | ||
40 | private RedisConnectionFactory redisConnectionFactory; | ||
41 | |||
42 | @Bean(value = "uceRedisTemplate") | ||
43 | public RedisTemplate<Object, Object> uceRedisTemplate() { | ||
44 | return redisConfig.redisTemplate(redisConnectionFactory); | ||
45 | } | ||
46 | /** | ||
47 | * 自定义缓存管理器 | ||
48 | */ | ||
49 | @Bean(value = "uceCacheManagemer") | ||
50 | @Primary | ||
51 | public RedisCacheManager cacheManager(RedisConnectionFactory factory) { | ||
52 | RedisCacheConfiguration config = RedisCacheConfiguration.defaultCacheConfig(); | ||
53 | Set<String> cacheNames = new HashSet<>(); | ||
54 | // cacheNames.add("car"); | ||
55 | // cacheNames.add(RedisKeyConstants.cacheTaskByEvent); | ||
56 | cacheNames.add(RedisKeyConstants.cacheTaskProcessByMemberId); | ||
57 | ConcurrentHashMap<String, RedisCacheConfiguration> configMap = new ConcurrentHashMap<>(); | ||
58 | // configMap.put("car", config.entryTtl(Duration.ofMinutes(6L))); | ||
59 | configMap.put(RedisKeyConstants.cacheTaskProcessByMemberId, config.entryTtl(Duration.ofDays(1))); | ||
60 | // configMap.put(RedisKeyConstants.cacheTaskByEvent, config); | ||
61 | |||
62 | //需要先初始化缓存名称,再初始化其它的配置。 | ||
63 | RedisCacheManager cacheManager = RedisCacheManager.builder(factory). | ||
64 | initialCacheNames(cacheNames).withInitialCacheConfigurations(configMap).build(); | ||
65 | return cacheManager; | ||
66 | } | ||
67 | } |
... | @@ -23,35 +23,6 @@ public class MemberOperationServiceTest extends BaseTest { | ... | @@ -23,35 +23,6 @@ public class MemberOperationServiceTest extends BaseTest { |
23 | } | 23 | } |
24 | 24 | ||
25 | @Test | 25 | @Test |
26 | public void doUpdateMemberInfo() { | ||
27 | Member member = new Member(); | ||
28 | member.setId(2L); | ||
29 | member.setCode(String.valueOf(IdWorker.generator())); | ||
30 | member.setType(1); | ||
31 | member.setStatus(1); | ||
32 | member.setNickname("nickname"); | ||
33 | member.setDescription("description"); | ||
34 | member.setGender(1); | ||
35 | member.setBirthday("birthday"); | ||
36 | member.setAvatarUrl("avatarUrl"); | ||
37 | member.setGroups("groups"); | ||
38 | member.setTags("tags"); | ||
39 | member.setVip(1); | ||
40 | member.setLevel(1); | ||
41 | member.setExp(10L); | ||
42 | member.setPoints(5L); | ||
43 | member.setDuePoints(0L); | ||
44 | member.setCouponAmount(1L); | ||
45 | member.setDueCouponAmount(0L); | ||
46 | member.setUserIptvId(1L); | ||
47 | member.setBindIptvPlatformType(0); | ||
48 | member.setUpdateTime(TimestampUtil.now()); | ||
49 | String s = JSONObject.toJSONString(member); | ||
50 | |||
51 | this.memberOperationService.doUpdateMember(member); | ||
52 | } | ||
53 | |||
54 | @Test | ||
55 | public void doInsertMember() { | 26 | public void doInsertMember() { |
56 | Member member = new Member(); | 27 | Member member = new Member(); |
57 | member.setCode(String.valueOf(IdWorker.generator())); | 28 | member.setCode(String.valueOf(IdWorker.generator())); | ... | ... |
-
Please register or sign in to post a comment