Commit 9c38b950 9c38b950d7efa2dac101eee64a73031f7d51bbe2 by xianghan

1.修改绑定的逻辑实现

1 parent 28189ec9
......@@ -3,7 +3,10 @@ package com.topdraw.business.module.member.repository;
import com.topdraw.business.module.member.domain.Member;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Optional;
......@@ -18,4 +21,8 @@ public interface MemberRepository extends JpaRepository<Member, Long>, JpaSpecif
List<Member> findByUserIptvId(Long id);
Optional<Member> findByIdOrCode(Long id, String code);
@Modifying
@Query(value = "UPDATE `uc_user_tv` SET `user_iptv_id` = ?2, `update_time` = ?3 WHERE `id` = ?1", nativeQuery = true)
void updateUserIptvIdById(Long id, Long userIptvId, LocalDateTime now);
}
......
......@@ -3,6 +3,7 @@ package com.topdraw.business.module.member.service;
import com.topdraw.business.module.member.domain.Member;
import com.topdraw.business.module.member.service.dto.MemberDTO;
import java.time.LocalDateTime;
import java.util.List;
/**
......@@ -83,4 +84,6 @@ public interface MemberService {
void unbind(Member resources);
void updateUserIptvIdById(Long id, Long userIptvId, LocalDateTime now);
}
......
......@@ -22,6 +22,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.List;
import java.util.Objects;
......@@ -171,6 +172,12 @@ public class MemberServiceImpl implements MemberService {
@Override
@Transactional(rollbackFor = Exception.class)
public void updateUserIptvIdById(Long id, Long userIptvId, LocalDateTime now) {
this.memberRepository.updateUserIptvIdById(id, userIptvId, now);
}
@Override
@Transactional(rollbackFor = Exception.class)
public MemberDTO update(Member resources) {
log.info("MemberServiceImpl ==>> update ==>> resources ==>> [{}]" , resources);
......
......@@ -3,7 +3,10 @@ package com.topdraw.business.module.user.iptv.repository;
import com.topdraw.business.module.user.iptv.domain.UserTv;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import java.time.LocalDateTime;
import java.util.Optional;
/**
......@@ -18,4 +21,7 @@ public interface UserTvRepository extends JpaRepository<UserTv, Long>, JpaSpecif
Optional<UserTv> findByMemberId(Long memberId);
@Modifying
@Query(value = "UPDATE `uc_user_tv` SET `vis_user_id` = ?2, `update_time` = ?3 WHERE `id` = ?1", nativeQuery = true)
Integer updateUserTvVisUserId(Long id, Long visUserId, LocalDateTime now);
}
......
......@@ -80,4 +80,12 @@ public interface UserTvService {
*/
MemberDTO findMemberByPlatformAccount(String platformAccount);
/**
*
* @param resources
* @return
*/
UserTvDTO asyncUpdateUserTvVisUserId(UserTv resources);
}
......
......@@ -7,10 +7,13 @@ import com.topdraw.business.module.user.iptv.repository.UserTvRepository;
import com.topdraw.business.module.user.iptv.service.UserTvService;
import com.topdraw.business.module.user.iptv.service.dto.UserTvDTO;
import com.topdraw.business.module.user.iptv.service.mapper.UserTvMapper;
import com.topdraw.exception.BadRequestException;
import com.topdraw.exception.EntityNotFoundException;
import com.topdraw.exception.GlobeExceptionMsg;
import com.topdraw.utils.ValidationUtil;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.aop.framework.AopContext;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.EmptyResultDataAccessException;
......@@ -20,6 +23,7 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import javax.validation.constraints.NotNull;
import java.time.LocalDateTime;
import java.util.Objects;
import java.util.Optional;
......@@ -29,6 +33,7 @@ import java.util.Optional;
*/
@Service
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
@Slf4j
public class UserTvServiceImpl implements UserTvService {
......@@ -66,6 +71,34 @@ public class UserTvServiceImpl implements UserTvService {
throw new EntityNotFoundException(UserTvDTO.class,"platformAccount", GlobeExceptionMsg.IPTV_IS_NULL);
}
@Override
@Transactional(rollbackFor = Exception.class)
public UserTvDTO asyncUpdateUserTvVisUserId(UserTv resources) {
log.info("UserTvServiceImpl ==> updateUserTvVisUserId ==>> param ==> {}",resources);
if (StringUtils.isBlank(resources.getPlatformAccount())){
throw new BadRequestException(GlobeExceptionMsg.IPTV_PLATFORM_ACCOUNT_IS_NULL);
}
if (Objects.isNull(resources.getVisUserId())){
throw new BadRequestException(GlobeExceptionMsg.VIS_USER_ID_IS_NULL);
}
UserTvDTO userTvDTO = this.findByPlatformAccount(resources.getPlatformAccount());
if (Objects.nonNull(userTvDTO.getId())) {
this.userTvRepository.updateUserTvVisUserId(userTvDTO.getId(), resources.getVisUserId(), LocalDateTime.now());
} else {
log.error("修改大屏账号vis_user_id字段异常,请检查");
}
return null;
}
private MemberDTO findMemberByMemberCode(String memberCode) {
return this.memberService.findByCode(memberCode);
}
......
......@@ -23,6 +23,7 @@ import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.time.LocalDateTime;
import java.util.Objects;
@Service
......@@ -184,7 +185,8 @@ public class UserOperationServiceImpl implements UserOperationService {
MemberDTO _memberDTO = this.memberService.findByCode(code);
memberDTO.setUserIptvId(_userTvDTO.getId());
this.updateMember(_memberDTO, memberDTO);
this.memberService.updateUserIptvIdById(_memberDTO.getId(), _userTvDTO.getId(), LocalDateTime.now());
//this.updateMember(_memberDTO, memberDTO);
} else {
......
......@@ -78,8 +78,8 @@ mutil-mq:
password: guest
# password: Topdraw1qaz
# 虚拟空间
# virtual-host: member_center_iptv_sichuan
virtual-host: member_center_small_sichuan
virtual-host: member_center_iptv_sichuan
# virtual-host: member_center_small_sichuan
publisher-confirms: true #如果对异步消息需要回调必须设置为true
# 管理侧
......@@ -143,17 +143,17 @@ service:
# routing-key: uc.eventbus.*.topic
# active: service
- source: uce
exchange: uc.direct
queue: uc.route.key.direct.event.bbb
exchange: uce.exchange
queue: uce.queue
exchange-type: direct
routing-key:
active: service
active: management
- source: uce
exchange: exchange.MemberInfoSync
queue: queue.MemberInfoSync
exchange-type: direct
routing-key:
active: service
active: management
# - source: wechat
# exchange: weixin.subOrUnSub.direct
# queue: weixin.subOrUnSub.queue
......