Commit 64abfab0 64abfab0c14b3398fad19e2e611a294f09adab49 by xianghan

1.优化

1 parent 24873c9d
Showing 19 changed files with 249 additions and 223 deletions
......@@ -26,7 +26,7 @@ public class MemberAddress extends AsyncMqModule implements Serializable {
/** 主键 */
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
......
......@@ -10,4 +10,6 @@ import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
*/
public interface MemberAddressRepository extends JpaRepository<MemberAddress, Long>, JpaSpecificationExecutor<MemberAddress> {
MemberAddress findByMemberIdAndSequence(Long memberId, Integer sequence);
}
......
......@@ -33,4 +33,12 @@ public interface MemberAddressService {
* @param resources
*/
void delete(Long resources);
/**
*
* @param memberId
* @param sequence
* @return
*/
MemberAddressDTO findByMemberIdAndSequence(Long memberId, Integer sequence);
}
......
......@@ -13,6 +13,9 @@ import java.time.LocalDateTime;
@Data
public class MemberAddressDTO implements Serializable {
/** 会员code */
private String memberCode;
/** 主键 */
private Long id;
......
......@@ -46,9 +46,7 @@ public class MemberAddressServiceImpl implements MemberAddressService {
@Transactional(rollbackFor = Exception.class)
public MemberAddressDTO create(MemberAddress resources) {
log.info("MemberAddressServiceImpl ==>> create ==>> param ==>> [{}]",resources);
MemberDTO memberDTO = this.checkMember(resources);
MemberAddress _memberAddress = MemberAddressBuilder.build(resources, memberDTO.getId(), memberDTO.getCode());
MemberAddress memberAddress = this.memberAddressRepository.save(_memberAddress);
MemberAddress memberAddress = this.memberAddressRepository.save(resources);
log.info("MemberAddressServiceImpl ==>> create ==>> result ==>> [{}]",resources);
MemberAddressDTO memberAddressDTO = new MemberAddressDTO();
......@@ -63,9 +61,6 @@ public class MemberAddressServiceImpl implements MemberAddressService {
log.info("MemberAddressServiceImpl ==>> update ==>> param ==>> [{}]",resources);
Assert.notNull(resources.getId(),"id can't be null");
try {
MemberDTO memberDTO = this.checkMember(resources);
resources.setMemberCode(memberDTO.getCode());
MemberAddress _memberAddress = this.memberAddressRepository.findById(resources.getId()).orElseGet(MemberAddress::new);
ValidationUtil.isNull( _memberAddress.getId(),"MemberAddress","id",resources.getId());
_memberAddress.copy(resources);
......@@ -92,6 +87,12 @@ public class MemberAddressServiceImpl implements MemberAddressService {
this.memberAddressRepository.delete(MemberAddress);
}
@Override
public MemberAddressDTO findByMemberIdAndSequence(Long memberId, Integer sequence) {
MemberAddress memberAddress = this.memberAddressRepository.findByMemberIdAndSequence(memberId, sequence);
return this.memberAddressMapper.toDto(memberAddress);
}
/**
* 检查会员
* @param memberAddress
......
......@@ -35,7 +35,7 @@ public class Member implements Serializable {
/** 主键 */
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
@NotNull(message = "id can't be null!!",groups = {UpdateGroup.class})
private Long id;
......
......@@ -13,6 +13,9 @@ import java.sql.Timestamp;
@Data
public class MemberProfileDTO implements Serializable {
/** 会员code */
private String memberCode;
/** 主键 */
private Long id;
......
......@@ -108,17 +108,18 @@ public class MemberProfileServiceImpl implements MemberProfileService {
log.info("MemberProfileServiceImpl ==>> update ==>> resources ===>> [{}]",resources);
// 检查会员是否存在
this.checkMember(resources);
MemberDTO memberDTO = this.checkMember(resources);
// 真实姓名(加密)
String realName = resources.getRealname();
if (StringUtils.isNotBlank(realName)) {
resources.setRealname(Base64Util.encode(realName));
}
MemberProfile memberProfile = new MemberProfile();
BeanUtils.copyProperties(resources,memberProfile);
MemberProfile _memberProfile = this.memberProfileRepository.save(memberProfile);
MemberProfileDTO _memberProfileDTO = this.findByMemberId(memberDTO.getId());
resources.setMemberId(_memberProfileDTO.getMemberId());
resources.setId(_memberProfileDTO.getId());
resources.setCreateTime(_memberProfileDTO.getCreateTime());
MemberProfile _memberProfile = this.memberProfileRepository.save(resources);
MemberProfileDTO memberProfileDTO = new MemberProfileDTO();
BeanUtils.copyProperties(_memberProfile,memberProfileDTO);
......
......@@ -29,7 +29,7 @@ public class MemberRelatedInfo extends AsyncMqModule implements Serializable {
/** ID */
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
@NotNull(message = "id can't be null" , groups = {UpdateGroup.class})
private Long id;
......
......@@ -101,15 +101,15 @@ public class MemberServiceImpl implements MemberService {
public MemberDTO create(Member resources) {
Member member = MemberBuilder.build(resources);
Long memberId = this.save(member);
Member _member = this.save(member);
if (Objects.nonNull(memberId)) {
MemberProfile memberProfile = MemberProfileBuilder.build(member);
if (Objects.nonNull(_member.getId())) {
MemberProfile memberProfile = MemberProfileBuilder.build(_member);
// 保存会员属性
this.memberProfileService.create(memberProfile);
}
return this.memberMapper.toDto(member);
return this.memberMapper.toDto(_member);
}
......@@ -130,14 +130,12 @@ public class MemberServiceImpl implements MemberService {
log.info("MemberServiceImpl ==>> update ==>> resources ==>> [{}]" , resources);
try {
MemberDTO memberDTO = this.checkMember(resources);
resources.setId(memberDTO.getId());
resources.setCode(memberDTO.getCode());
resources.setCreateTime(memberDTO.getCreateTime());
Member _member = this.save(resources);
return this.memberMapper.toDto(_member);
Member member = new Member();
BeanUtils.copyProperties(memberDTO,member);
member.copy(resources);
this.save(member);
return this.memberMapper.toDto(member);
} catch (Exception e) {
e.printStackTrace();
throw e;
......@@ -145,24 +143,22 @@ public class MemberServiceImpl implements MemberService {
}
public Long save(Member member){
this.memberRepository.save(member);
return member.getId();
public Member save(Member member){
return this.memberRepository.save(member);
}
@Override
@Transactional(rollbackFor = Exception.class)
public MemberDTO doUpdateMemberPoints(Member resources) {
try {
//this.redisUtils.doLock("member::update::code" + resources.getCode());
Member member = this.memberRepository.findById(resources.getId()).orElseGet(Member::new);
ValidationUtil.isNull(member.getId(), "Member", "id", resources.getId());
member.copy(resources);
this.save(member);
Member _member = this.save(member);
return this.memberMapper.toDto(member);
return this.memberMapper.toDto(_member);
} catch (Exception e) {
e.printStackTrace();
......
......@@ -27,7 +27,7 @@ public class MemberVipHistory extends AsyncMqModule implements Serializable {
// 主键
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE)
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
......
......@@ -37,7 +37,7 @@ public class UserTv extends AsyncMqModule implements Serializable {
/** ID */
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "id")
private Long id;
......
package com.topdraw.business.process.service.dto;
import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO;
import com.topdraw.business.module.member.service.dto.MemberDTO;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author :
* @description:
* @function :
* @date :Created in 2022/3/23 9:48
* @version: :
* @modified By:
* @since : modified in 2022/3/23 9:48
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class MemberProfileAndMemberDTO implements Serializable {
private MemberProfileDTO memberProfileDTO;
private MemberDTO memberDTO;
}
......@@ -14,12 +14,15 @@ import com.topdraw.business.process.service.UserOperationService;
import com.topdraw.business.process.service.dto.MemberAndUserTvDTO;
import com.topdraw.business.process.service.dto.MemberAndWeixinUserDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.Objects;
@Service
@Slf4j
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
......@@ -32,45 +35,122 @@ public class UserOperationServiceImpl implements UserOperationService {
@Autowired
private UserWeixinService userWeixinService;
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
@Transactional(propagation = Propagation.SUPPORTS, rollbackFor = Exception.class)
public void asyncMemberAndUserWeixin4Iptv(MemberAndWeixinUserDTO memberAndWeixinUserDTO) {
this.saveMember(memberAndWeixinUserDTO.getMemberDTO());
this.saveWeixin(memberAndWeixinUserDTO.getUserWeixinDTO());
}
UserWeixinDTO userWeixinDTO = memberAndWeixinUserDTO.getUserWeixinDTO();
String openid = userWeixinDTO.getOpenid();
String unionid = userWeixinDTO.getUnionid();
String appid = userWeixinDTO.getAppid();
UserWeixinDTO _userWeixinDTO = this.userWeixinService.findFirstByUnionIdAndAppIdAndOpenId(unionid, appid, openid);
if (Objects.isNull(_userWeixinDTO.getId())) {
// 检查会员是否存在
UserWeixinDTO _userWeixinDTO1 = this.userWeixinService.findFirstByUnionId(unionid);
if (Objects.nonNull(_userWeixinDTO1.getId())) {
// 会员已存在
Long memberId = _userWeixinDTO1.getMemberId();
userWeixinDTO.setMemberId(memberId);
this.createWeixin(userWeixinDTO);
} else {
MemberDTO memberDTO = memberAndWeixinUserDTO.getMemberDTO();
MemberDTO _memberDTO = this.createMember(memberDTO);
userWeixinDTO.setMemberId(_memberDTO.getId());
this.createWeixin(userWeixinDTO);
}
}
private void saveMember(MemberDTO memberDTO){
Member member = new Member();
BeanUtils.copyProperties(memberDTO, member);
this.memberService.create(member);
}
@Transactional(propagation = Propagation.SUPPORTS, readOnly = true, rollbackFor = Exception.class)
@Transactional(propagation = Propagation.SUPPORTS, rollbackFor = Exception.class)
public void asyncMemberAndUserTv4Iptv(MemberAndUserTvDTO memberAndUserTvDTO) {
this.saveMember(memberAndUserTvDTO.getMemberDTO());
this.saveUserTv(memberAndUserTvDTO.getUserTvDTO());
UserTvDTO userTvDTO = memberAndUserTvDTO.getUserTvDTO();
String platformAccount = userTvDTO.getPlatformAccount();
UserTvDTO _userTvDTO = this.userTvService.findByPlatformAccount(platformAccount);
if (Objects.isNull(_userTvDTO)) {
// 创建大屏会员
MemberDTO memberDTO = this.createMember(memberAndUserTvDTO.getMemberDTO());
userTvDTO.setMemberId(memberDTO.getId());
// 创建大屏账号
this.createUserTv(userTvDTO);
}
}
@Transactional(propagation = Propagation.SUPPORTS, rollbackFor = Exception.class)
public void asyncWeixin(UserWeixinDTO userWeixinDTO) {
String openid = userWeixinDTO.getOpenid();
String unionid = userWeixinDTO.getUnionid();
String appid = userWeixinDTO.getAppid();
UserWeixinDTO _userWeixinDTO = this.userWeixinService.findFirstByUnionIdAndAppIdAndOpenId(unionid, appid, openid);
if (Objects.nonNull(_userWeixinDTO)) {
userWeixinDTO.setId(_userWeixinDTO.getId());
this.updateWeixin(userWeixinDTO);
}
}
@Transactional(propagation = Propagation.SUPPORTS, rollbackFor = Exception.class)
public void asyncUserTv(UserTvDTO userTvDTO) {
String platformAccount = userTvDTO.getPlatformAccount();
UserTvDTO _userTvDTO = this.userTvService.findByPlatformAccount(platformAccount);
if (Objects.nonNull(_userTvDTO)) {
Long id = _userTvDTO.getId();
userTvDTO.setId(id);
this.updateUserTv(userTvDTO);
}
}
public void asyncWeixin(UserWeixinDTO weixinDTO) {
this.saveWeixin(weixinDTO);
@Transactional(propagation = Propagation.SUPPORTS, rollbackFor = Exception.class)
public void asyncMember(MemberDTO memberDTO) {
String code = memberDTO.getCode();
if (StringUtils.isNotBlank(code)) {
MemberDTO _memberDTO = this.memberService.findByCode(code);
if (Objects.nonNull(_memberDTO)) {
Long id = _memberDTO.getId();
memberDTO.setId(id);
this.updateMember(memberDTO);
}
}
}
private MemberDTO createMember(MemberDTO memberDTO){
Member member = new Member();
BeanUtils.copyProperties(memberDTO, member);
return this.memberService.create(member);
}
private MemberDTO updateMember(MemberDTO memberDTO){
Member member = new Member();
BeanUtils.copyProperties(memberDTO, member);
return this.memberService.update(member);
}
private void saveWeixin(UserWeixinDTO weixinDTO){
private void createWeixin(UserWeixinDTO weixinDTO){
UserWeixin userWeixin = new UserWeixin();
BeanUtils.copyProperties(weixinDTO, userWeixin);
this.userWeixinService.create(userWeixin);
}
public void asyncUserTv(UserTvDTO userTvDTO) {
this.saveUserTv(userTvDTO);
private void updateWeixin(UserWeixinDTO weixinDTO){
UserWeixin userWeixin = new UserWeixin();
BeanUtils.copyProperties(weixinDTO, userWeixin);
this.userWeixinService.update(userWeixin);
}
private void saveUserTv(UserTvDTO userTvDTO){
private void createUserTv(UserTvDTO userTvDTO){
UserTv userTv = new UserTv();
BeanUtils.copyProperties(userTvDTO, userTv);
this.userTvService.create(userTv);
}
public void asyncMember(MemberDTO memberDTO) {
this.saveMember(memberDTO);
private void updateUserTv(UserTvDTO userTvDTO){
UserTv userTv = new UserTv();
BeanUtils.copyProperties(userTvDTO, userTv);
this.userTvService.update(userTv);
}
}
......
......@@ -3,13 +3,18 @@ package com.topdraw.business.process.service.impl.member;
import com.topdraw.business.module.member.address.domain.MemberAddress;
import com.topdraw.business.module.member.address.service.MemberAddressService;
import com.topdraw.business.module.member.address.service.dto.MemberAddressDTO;
import com.topdraw.business.module.member.service.MemberService;
import com.topdraw.business.module.member.service.dto.MemberDTO;
import com.topdraw.business.process.service.member.MemberAddressOperationService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;
import java.util.Objects;
/**
* @author XiangHan
* @date 2021-10-22
......@@ -21,31 +26,48 @@ public class MemberAddressOperationServiceImpl implements MemberAddressOperation
@Autowired
private MemberAddressService memberAddressService;
@Override
public MemberAddressDTO findById(Long id) {
return this.memberAddressService.findById(id);
}
@Autowired
private MemberService memberService;
@Override
@Transactional(rollbackFor = Exception.class)
public MemberAddressDTO create(MemberAddress resources) {
log.info("MemberAddressOperationServiceImpl ==>> create ==>> param ==>> [{}]",resources);
return this.memberAddressService.create(resources);
public void asyncDeleteMemberAddress(MemberAddressDTO memberAddressDTO){
String memberCode = memberAddressDTO.getMemberCode();
MemberDTO memberDTO = this.memberService.findByCode(memberCode);
MemberAddressDTO _memberAddressDTO =
this.memberAddressService.findByMemberIdAndSequence(memberDTO.getId(), memberAddressDTO.getSequence());
if (Objects.nonNull(_memberAddressDTO)) {
this.memberAddressService.delete(_memberAddressDTO.getId());
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public MemberAddressDTO update(MemberAddress resources) {
log.info("MemberAddressOperationServiceImpl ==>> update ==>> param ==>> [{}]",resources);
public void asyncMemberAddress(MemberAddressDTO memberAddressDTO){
MemberDTO memberDTO = this.memberService.findByCode(memberAddressDTO.getMemberCode());
MemberAddressDTO _memberAddressDTO = this.memberAddressService.findByMemberIdAndSequence(memberDTO.getId(),
memberAddressDTO.getSequence());
if (Objects.nonNull(_memberAddressDTO)) {
return this.memberAddressService.update(resources);
memberAddressDTO.setId(_memberAddressDTO.getId());
memberAddressDTO.setMemberId(memberDTO.getId());
this.updateMemberAddress(memberAddressDTO);
} else {
memberAddressDTO.setId(null);
memberAddressDTO.setMemberId(memberDTO.getId());
this.createMemberAddress(memberAddressDTO);
}
}
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(Long id) {
this.memberAddressService.delete(id);
public void createMemberAddress(MemberAddressDTO memberAddressDTO){
MemberAddress memberAddress = new MemberAddress();
BeanUtils.copyProperties(memberAddressDTO, memberAddress);
this.memberAddressService.create(memberAddress);
}
public void updateMemberAddress(MemberAddressDTO memberAddressDTO){
MemberAddress memberAddress = new MemberAddress();
BeanUtils.copyProperties(memberAddressDTO, memberAddress);
this.memberAddressService.update(memberAddress);
}
}
......
......@@ -2,23 +2,17 @@ package com.topdraw.business.process.service.impl.member;
import cn.hutool.core.util.ObjectUtil;
import com.topdraw.business.module.member.domain.Member;
import com.topdraw.business.module.member.profile.service.MemberProfileService;
import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO;
import com.topdraw.business.module.member.service.MemberService;
import com.topdraw.business.module.member.service.dto.MemberDTO;
import com.topdraw.business.module.member.viphistory.domain.MemberVipHistory;
import com.topdraw.business.module.member.viphistory.service.MemberVipHistoryService;
import com.topdraw.business.module.user.weixin.domain.UserWeixin;
import com.topdraw.business.module.user.weixin.service.UserWeixinService;
import com.topdraw.business.module.user.weixin.service.dto.UserWeixinDTO;
import com.topdraw.business.process.domian.weixin.BuyVipBean;
import com.topdraw.business.process.service.member.MemberOperationService;
import com.topdraw.business.process.service.member.MemberProfileOperationService;
import com.topdraw.exception.EntityNotFoundException;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheConfig;
import org.springframework.cache.annotation.CachePut;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor;
import org.springframework.stereotype.Service;
import org.springframework.util.Assert;
......@@ -28,13 +22,13 @@ import java.time.ZoneOffset;
import java.util.Objects;
@Service
@CacheConfig(cacheNames = "member")
//@CacheConfig(cacheNames = "member")
public class MemberOperationServiceImpl implements MemberOperationService {
@Autowired
private MemberService memberService;
@Autowired
private MemberProfileOperationService memberProfileOperationService;
private MemberProfileService memberProfileService;
@Autowired
private MemberVipHistoryService memberVipHistoryService;
@Autowired
......@@ -58,7 +52,7 @@ public class MemberOperationServiceImpl implements MemberOperationService {
this.memberVipHistoryService.create(memberVipHistory);
}
@CachePut(key = "#resources.id")
// @CachePut(key = "#resources.id")
@Override
public MemberDTO update(Member resources) {
MemberDTO memberDTO = this.memberService.update(resources);
......@@ -216,6 +210,6 @@ public class MemberOperationServiceImpl implements MemberOperationService {
* @return
*/
private MemberProfileDTO findMemberProfileByMemberId(Long memberId) {
return this.memberProfileOperationService.findByMemberId(memberId);
return this.memberProfileService.findByMemberId(memberId);
}
}
......
......@@ -4,9 +4,12 @@ import com.topdraw.business.module.member.domain.Member;
import com.topdraw.business.module.member.profile.domain.MemberProfile;
import com.topdraw.business.module.member.profile.service.MemberProfileService;
import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO;
import com.topdraw.business.module.member.service.MemberService;
import com.topdraw.business.module.member.service.dto.MemberDTO;
import com.topdraw.business.process.service.dto.MemberProfileAndMemberDTO;
import com.topdraw.business.process.service.member.MemberOperationService;
import com.topdraw.business.process.service.member.MemberProfileOperationService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;
......@@ -27,62 +30,40 @@ public class MemberProfileOperationServiceImpl implements MemberProfileOperation
private MemberProfileService memberProfileService;
@Autowired
private MemberOperationService memberOperationService;
@Autowired
private MemberService memberService;
@Override
public MemberProfileDTO findById(Long id) {
return this.memberProfileService.findById(id);
}
@Override
public MemberProfile create(MemberProfile resources) {
return this.memberProfileService.create(resources);
}
@Override
public MemberProfile createDefault(MemberProfile resources) {
return this.memberProfileService.createDefault(resources);
}
@Override
public MemberProfile createDefault(Member resources) {
return this.memberProfileService.createDefault(resources);
public MemberProfileDTO asyncMemberProfile(MemberProfileDTO memberProfileDTO){
String memberCode = memberProfileDTO.getMemberCode();
MemberDTO memberDTO = this.memberService.findByCode(memberCode);
Long memberId = memberDTO.getId();
MemberProfileDTO _memberProfileDTO = this.memberProfileService.findByMemberId(memberId);
memberProfileDTO.setId(_memberProfileDTO.getId());
memberProfileDTO.setMemberId(memberId);
return this.updateMemberProfile(memberProfileDTO);
}
@Override
public MemberProfile createDefaultByMemberId(Long resources) {
return this.memberProfileService.createDefaultByMemberId(resources);
private MemberProfileDTO updateMemberProfile(MemberProfileDTO memberProfileDTO) {
MemberProfile memberProfile = new MemberProfile();
BeanUtils.copyProperties(memberProfileDTO, memberProfile);
return this.memberProfileService.update(memberProfile);
}
@Override
public MemberProfileDTO update(MemberProfile resources) {
return this.memberProfileService.update(resources);
}
@Override
public void delete(Long id) {
this.memberProfileService.delete(id);
}
public void asyncMemberProfileAndMember(MemberProfileAndMemberDTO resources) {
MemberProfileDTO memberProfileDTO = resources.getMemberProfileDTO();
MemberProfileDTO _memberProfileDTO = this.asyncMemberProfile(memberProfileDTO);
@Override
public MemberProfileDTO findByMemberId(Long memberId) {
return this.memberProfileService.findByMemberId(memberId);
}
MemberDTO memberDTO = resources.getMemberDTO();
memberDTO.setId(_memberProfileDTO.getMemberId());
memberDTO.setNickname(_memberProfileDTO.getRealname());
memberDTO.setGender(_memberProfileDTO.getGender());
memberDTO.setBirthday(_memberProfileDTO.getBirthday());
memberDTO.setAvatarUrl(_memberProfileDTO.getAvatarUrl());
@Override
public MemberProfileDTO findByMemberCode(String memberCode) {
return this.memberProfileService.findByMemberCode(memberCode);
Member member = new Member();
BeanUtils.copyProperties(memberDTO,member);
this.memberService.update(member);
}
@Override
public MemberProfileDTO updateMemberProfileAndMember(MemberProfile resources) {
String memberCode = resources.getMemberCode();
MemberDTO memberDTO = null;
if (StringUtils.isEmpty(memberCode)) {
Long memberId = resources.getMemberId();
memberDTO = this.memberOperationService.findById(memberId);
resources.setMemberCode(memberDTO.getCode());
}
return this.memberProfileService.updateMemberProfileAndMember(resources, memberDTO);
}
}
......
......@@ -5,29 +5,6 @@ import com.topdraw.business.module.member.address.service.dto.MemberAddressDTO;
public interface MemberAddressOperationService {
/**
* 根据ID查询
* @param resources ID
* @return MemberAddressDTO
*/
MemberAddressDTO findById(Long resources);
/**
* 保存会员地址
* @param resources
*/
MemberAddressDTO create(MemberAddress resources);
/**
* 修改会员地址
* @param resources
*/
MemberAddressDTO update(MemberAddress resources);
/**
* 通过id删除
* @param resources
*/
void delete(Long resources);
}
......
package com.topdraw.business.process.service.member;
import com.topdraw.business.module.member.domain.Member;
import com.topdraw.business.module.member.profile.domain.MemberProfile;
import com.topdraw.business.module.member.profile.service.dto.MemberProfileDTO;
public interface MemberProfileOperationService {
/**
* 根据ID查询
* @param id ID
* @return MemberProfileDTO
*/
MemberProfileDTO findById(Long id);
/**
* 保存
* @param resources 会员基本信息
* @return
*/
MemberProfile create(MemberProfile resources);
/**
* 默认属性
* @param resources
* @return
*/
MemberProfile createDefault(MemberProfile resources);
/**
* 通过会员创建默认属性
* @param resources
* @return
*/
MemberProfile createDefault(Member resources);
/**
* 通过会员id创建默认属性
* @param resources
* @return
*/
MemberProfile createDefaultByMemberId(Long resources);
/**
* 修改
* @param resources
*/
MemberProfileDTO update(MemberProfile resources);
/**
* 删除
* @param id
*/
void delete(Long id);
/**
* 通过会员id查询
* @param memberId
* @return
*/
MemberProfileDTO findByMemberId(Long memberId);
/**
* 通过会员code查询
* @param memberCode
* @return
*/
MemberProfileDTO findByMemberCode(String memberCode);
/**
* 修改会员属性并同步会员信息
* @param resources
*/
MemberProfileDTO updateMemberProfileAndMember(MemberProfile resources);
}
......