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-dao/src/main/resources/mapper/LineInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/LineInfoMapper.xml index 35a093273..0cb0f55ab 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/LineInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/LineInfoMapper.xml @@ -364,6 +364,9 @@ and a.investment_manager = #{userId} + + and a.workflow_sub_stage = #{request.workflowSubStage} + and b.area_path like concat('%',#{wantShopAreaName},'%') @@ -407,7 +410,7 @@ and a.join_status = #{request.joinStatus} - and (a.username like #{request.keyword} or a.mobile like #{request.keyword}) + and (a.username like concat('%',#{request.keyword},'%') or a.mobile like concat('%',#{request.keyword},'%')) and b.area_path like concat('%',#{wantShopAreaName},'%') 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; }