diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java index 42b1a0e7f..2bee53a1a 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/HyPartnerBaseInfoService.java @@ -32,7 +32,7 @@ public interface HyPartnerBaseInfoService { Boolean changeBinding(String idCard, Long lineId, PartnerUserInfoVO currentUser); - HyPartnerBaseInfoDO generateBaseInfo(HyPartnerUserInfoDO hyPartnerUserInfoDO, Long partnerLineId); + HyPartnerBaseInfoDO generateBaseInfo(HyPartnerUserInfoDO hyPartnerUserInfoDO, Long partnerLineId, String userPortrait); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java index 90a16631a..6a03c3041 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerBaseInfoServiceImpl.java @@ -180,7 +180,7 @@ public class HyPartnerBaseInfoServiceImpl implements HyPartnerBaseInfoService { } @Override - public HyPartnerBaseInfoDO generateBaseInfo(HyPartnerUserInfoDO hyPartnerUserInfoDO, Long partnerLineId) { + public HyPartnerBaseInfoDO generateBaseInfo(HyPartnerUserInfoDO hyPartnerUserInfoDO, Long partnerLineId, String userPortrait) { HyPartnerBaseInfoDO hyPartnerBaseInfoDO = hyPartnerBaseInfoDAO.getByPartnerIdAndLineId(hyPartnerUserInfoDO.getPartnerId(), partnerLineId); if(hyPartnerBaseInfoDO == null){ hyPartnerBaseInfoDO = new HyPartnerBaseInfoDO(); @@ -190,6 +190,9 @@ public class HyPartnerBaseInfoServiceImpl implements HyPartnerBaseInfoService { hyPartnerBaseInfoDO.setUsername(hyPartnerUserInfoDO.getUsername()); hyPartnerBaseInfoDO.setStatus(Integer.valueOf(WorkflowStatusEnum.INTENT_0.getCode())); hyPartnerBaseInfoDO.setSex(1); + if(StringUtils.isNotBlank(userPortrait)){ + hyPartnerBaseInfoDO.setUserPortrait(userPortrait); + } hyPartnerBaseInfoDAO.insertSelective(hyPartnerBaseInfoDO); } return hyPartnerBaseInfoDO; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java index 4574ce45e..363e6e647 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerIntentInfoServiceImpl.java @@ -11,6 +11,7 @@ import com.cool.store.entity.HyPartnerIntentInfoDO; import com.cool.store.entity.HyPartnerLineInfoDO; import com.cool.store.entity.HyPartnerUserInfoDO; import com.cool.store.enums.ErrorCodeEnum; +import com.cool.store.enums.LineStatusEnum; import com.cool.store.enums.WorkflowStageEnum; import com.cool.store.enums.WorkflowStatusEnum; import com.cool.store.exception.ServiceException; @@ -19,6 +20,7 @@ import com.cool.store.request.IndustryCognitionInfoRequest; import com.cool.store.request.PartnerIntentInfoRequest; import com.cool.store.request.PartnerWantShopInfoRequest; import com.cool.store.service.HyPartnerIntentInfoService; +import com.cool.store.service.HyPartnerLineInfoService; import com.cool.store.utils.RedisUtilPool; import com.cool.store.utils.StringUtil; import com.cool.store.vo.PartnerIntentApplyInfoVO; @@ -62,6 +64,8 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic private RedisUtilPool redisUtilPool; @Resource HyOpenAreaInfoDAO hyOpenAreaInfoDAO; + @Resource + HyPartnerLineInfoService hyPartnerLineInfoService; @Override public PageInfo getPartnerIntentApplyList(String userId, String type, Integer pageSize, Integer pageNumber) { @@ -147,12 +151,21 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic hyPartnerIntentInfoDAO.updateByPrimaryKeySelective(intentInfoDO); } redisUtilPool.delKey(cacheKey); - if(StringUtils.isNotBlank(request.getWantShopArea())){ - HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(request.getPartnerId()); - hyPartnerUserInfoDO.setWantShopArea(request.getWantShopArea()); + HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(request.getPartnerId()); + if(!request.getWantShopArea().equals(hyPartnerUserInfoDO.getWantShopArea()) || !request.getAcceptAdjustType().equals(hyPartnerUserInfoDO.getAcceptAdjustType())){ hyPartnerUserInfoDO.setLiveArea(request.getLiveArea()); + hyPartnerUserInfoDO.setWantShopArea(request.getWantShopArea()); hyPartnerUserInfoDO.setAcceptAdjustType(request.getAcceptAdjustType()); hyPartnerUserInfoDAO.updateByPrimaryKeySelective(hyPartnerUserInfoDO); + // 更新线索状态和招商经理 + HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoDAO.selectByPrimaryKeySelective(request.getPartnerLineId()); + Boolean flag = hyPartnerLineInfoService.assignFollowUser(request.getPartnerId(), request.getWantShopArea(), request.getAcceptAdjustType()); + hyPartnerLineInfoDO.setLineStatus(flag ? LineStatusEnum.PRIVATE_SEAS.getCode() : LineStatusEnum.PUBLIC_SEAS.getCode()); + if (flag){ + String investmentManager = hyPartnerLineInfoService.getAssignFollowUser(request.getPartnerId(), "intent"); + hyPartnerLineInfoDO.setInvestmentManager(investmentManager); + } + hyPartnerLineInfoDAO.updateByPrimaryKeySelective(hyPartnerLineInfoDO); HyOpenAreaInfoDO hyOpenAreaInfoDO = hyOpenAreaInfoDAO.selectById(Long.valueOf(request.getWantShopArea())); return hyOpenAreaInfoDO != null ? hyOpenAreaInfoDO.getAreaStatus() : null; } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java index 86e9a4ff7..1a707e4c5 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/HyPartnerLineInfoServiceImpl.java @@ -654,7 +654,8 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { // 生成一条新线索 HyPartnerLineInfoDO newLineInfoDO = this.generateDefaultLineInfo(hyPartnerLineInfoDO.getPartnerId(), hyPartnerUserInfoDO.getWantShopArea(), hyPartnerUserInfoDO.getAcceptAdjustType()); // 生成一条意向基本信息 - hyPartnerBaseInfoService.generateBaseInfo(hyPartnerUserInfoDO, newLineInfoDO.getId()); + HyPartnerBaseInfoDO oldBaseInfoDO = hyPartnerBaseInfoDAO.getByPartnerIdAndLineId(hyPartnerUserInfoDO.getPartnerId(), lineId); + hyPartnerBaseInfoService.generateBaseInfo(hyPartnerUserInfoDO, newLineInfoDO.getId(), oldBaseInfoDO.getUserPortrait()); return newLineInfoDO.getId(); } return hyPartnerLineInfoDO.getId(); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java index 3270b200c..09af1c1b3 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PartnerUserInfoServiceImpl.java @@ -99,7 +99,7 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService { // 生成一条线索 HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoService.generateDefaultLineInfo(hyPartnerUserInfoDO.getPartnerId(), partnerUserInfoRequest.getWantShopArea(), partnerUserInfoRequest.getAcceptAdjustType()); // 生成一条意向基本信息 - hyPartnerBaseInfoService.generateBaseInfo(hyPartnerUserInfoDO, hyPartnerLineInfoDO.getId()); + hyPartnerBaseInfoService.generateBaseInfo(hyPartnerUserInfoDO, hyPartnerLineInfoDO.getId(), null); HyOpenAreaInfoDO hyOpenAreaInfoDO = hyOpenAreaInfoDAO.selectById(Long.valueOf(partnerUserInfoRequest.getWantShopArea())); List hyOpenAreaInfoDOS = null; if(hyOpenAreaInfoDO != null){