diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/OperationLogTypeEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/OperationLogTypeEnum.java index 03b391002..54ed24023 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/OperationLogTypeEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/OperationLogTypeEnum.java @@ -7,8 +7,9 @@ package com.cool.store.enums; */ public enum OperationLogTypeEnum { - TRANSFER_INVESTMENT_MANAGER(1, "转让招商经理"), - ENTRUST_INTERVIEW(2, "委托面试"); + TRANSFER_INVESTMENT_MANAGER(1, "转让招商经理_线索"), + ENTRUST_INTERVIEW(2, "委托面试"), + TRANSFER_INVESTMENT_MANAGER_3(3, "转让招商经理_加盟商"); private final int code; private final String description; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineServiceImpl.java index 13e8a6ee7..d8a1e0b48 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineServiceImpl.java @@ -233,7 +233,7 @@ public class LineServiceImpl implements LineService { List lineIds = lineInfoDOS.stream().filter(lineInfoDO -> lineInfoDO.getId() != null).map(LineInfoDO::getId).collect(Collectors.toList()); List signingBaseInfoDOS = intentAgreementMapper.selectByLineIds(lineIds); - Map dateMap = signingBaseInfoDOS.stream().collect(Collectors.toMap(SigningBaseInfoDO::getId, SigningBaseInfoDO::getCreateTime)); + Map dateMap = signingBaseInfoDOS.stream().collect(Collectors.toMap(SigningBaseInfoDO::getLineId, SigningBaseInfoDO::getCreateTime)); List result = new ArrayList<>(); lineInfoDOS.forEach(x->{ @@ -280,13 +280,21 @@ public class LineServiceImpl implements LineService { if (lineInfo.getLineStatus().equals(LineStatusEnum.PUBLIC_SEAS.getCode())){ throw new ServiceException(ErrorCodeEnum.NOT_IN_PUBLIC_SEA); } + if (lineInfo.getInvestmentManager().equals(changeInvestmentRequest.getInvestmentManagerId())){ + throw new ServiceException(ErrorCodeEnum.NO_TRANSFER_REQUIRED); + } + //如果线索招商经理为空 直接分配 如果不为空 且线索在公海 说明线索被结束 需要重置ID 生成一条新的线索 lineInfo.setLineStatus(LineStatusEnum.PRIVATE_SEAS.getCode()); lineInfo.setInvestmentManager(changeInvestmentRequest.getInvestmentManagerId()); lineInfoDAO.updateLineInfo(lineInfo); if (transferFlag){ //添加日志 - transferLogService.addLog(lineInfo,userInfo.getUserId(),changeInvestmentRequest.getInvestmentManagerId(), OperationLogTypeEnum.TRANSFER_INVESTMENT_MANAGER); + OperationLogTypeEnum operationLogTypeEnum = OperationLogTypeEnum.TRANSFER_INVESTMENT_MANAGER; + if (lineInfo.getJoinStatus()!=0){ + operationLogTypeEnum = OperationLogTypeEnum.TRANSFER_INVESTMENT_MANAGER_3; + } + transferLogService.addLog(lineInfo,userInfo.getUserId(),changeInvestmentRequest.getInvestmentManagerId(),operationLogTypeEnum); } return Boolean.TRUE; }