diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java index 7355cb143..3842663ab 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java @@ -64,6 +64,8 @@ public enum ErrorCodeEnum { LINE_STATUS_NOT_ALLOW_OPERATE(500010, "当前线索状态不允许该操作!", null), TASK_STATUS_NOT_ALLOW_OPERATE(500011, "当前任务状态不允许该操作!", null), DATELINE_BEFORE_NOW(500012, "截止时间不能早于当前时间!", null), + NO_TRANSFER_REQUIRED(500013, "招商经理现有私海线索无需转让,请检查后重试!", null), + NO_BATCH_TRANSFER_REQUIRED(500014, "已选线索包含此招商经理现有私海线索,无需转让,请检查后重试!", null), PARTNER_MOBILE_EXIST(500010, "手机号码已存在,请核实!", null), INTERVIEW_ENTER_FAIL(1021101, "进入面试间失败", null), diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java index 8d3d92380..6bd8b9221 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/HyPartnerLineInfoDAO.java @@ -205,4 +205,11 @@ public class HyPartnerLineInfoDAO { return CollectionUtils.isEmpty(partnerList) ? null : partnerList.get(CommonConstants.ZERO); } + public List getHyPartnerLineInfoList( List lineIds,String investmentManager){ + if (CollectionUtils.isEmpty(lineIds)){ + return new ArrayList<>(); + } + return hyPartnerLineInfoMapper.getHyPartnerLineInfoList(lineIds,investmentManager); + } + } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java index 6c7c4ef90..05c447006 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerLineInfoMapper.java @@ -234,4 +234,13 @@ public interface HyPartnerLineInfoMapper { */ List getPartnerSimpleInfoByLineIds(@Param("partnerLineIds") List partnerLineIds); + + /** + * 根据线索ID与招商经理查询数据 + * @param lineIds + * @param investmentManager + * @return + */ + List getHyPartnerLineInfoList(@Param("lineIds") List lineIds,String investmentManager); + } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml index e9b89e7bc..79e888ecb 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerLineInfoMapper.xml @@ -685,4 +685,20 @@ a.id in #{lineId} + + + \ No newline at end of file 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 c2f8353ed..cb828262f 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 @@ -170,6 +170,10 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED); } HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoDAO.selectByPrimaryKeySelective(request.getLineId()); + //如果招商经理是当前登录用户,则无需转让 + if (request.getUserId().equals(hyPartnerLineInfoDO.getInvestmentManager())){ + throw new ServiceException(ErrorCodeEnum.NO_TRANSFER_REQUIRED); + } hyPartnerLineInfoDAO.updateInvestmentManager(request.getUserId(), Arrays.asList(request.getLineId())); List userIdList = new ArrayList<>(); @@ -213,6 +217,11 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService { if (CollectionUtils.isEmpty(request.getLineIds())||StringUtils.isEmpty(request.getUserId())){ throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED); } + List hyPartnerLineInfoList = hyPartnerLineInfoDAO.getHyPartnerLineInfoList(request.getLineIds(), request.getUserId()); + //如果选中的线索中有线索招商经理已经是被装让的招商经理,则不允许批量操作 + if (CollectionUtils.isNotEmpty(hyPartnerLineInfoList)){ + throw new ServiceException(ErrorCodeEnum.NO_BATCH_TRANSFER_REQUIRED); + } for (Long lineId:request.getLineIds()) { TransferInvestmentManagerRequest transferInvestmentManagerRequest = new TransferInvestmentManagerRequest(); transferInvestmentManagerRequest.setUserId(request.getUserId());