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 5eeb0cd36..dfd1268ab 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 @@ -58,7 +58,7 @@ public enum ErrorCodeEnum { LINE_ID_IS_NOT_EXIST(500001, "线索信息不存在!", null), - WORK_FLOW_STAGE_PASS_ERROR(500002, "通过错误,非对应阶段!", null), + WORK_FLOW_STAGE_PASS_ERROR(500002, "审核失败,非对应阶段!", null), PARTNER_USER_NOT_EXIST(500003, "加盟商用户信息不存在!", null), ZONE_NOT_EXIST(500004, "战区不存在!", null), PARTNER_BASEINFO_NOT_EXIST(500005, "基本信息不存在!", null), diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/AuditPassRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/AuditPassRequest.java index 7d27afc76..23e851ec2 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/AuditPassRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/AuditPassRequest.java @@ -17,6 +17,9 @@ public class AuditPassRequest { @ApiModelProperty("线索ID") private Long lineId; + @ApiModelProperty("线索子阶段") + private Integer workflowSubStage; + @ApiModelProperty("证明文件与凭证") private List certifyFile; diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRejectRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRejectRequest.java index e918ad283..97cdfaae0 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRejectRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRejectRequest.java @@ -17,6 +17,9 @@ public class AuditRejectRequest { @ApiModelProperty("线索ID") private Long lineId; + @ApiModelProperty("线索子阶段") + private Integer workflowSubStage; + @ApiModelProperty("公开拒绝原因") private String rejectPublicReason; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineFlowService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineFlowService.java index 39da9e0fa..f16795635 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineFlowService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LineFlowService.java @@ -6,6 +6,8 @@ import com.cool.store.dao.LineInfoDAO; import com.cool.store.entity.LineAuditInfoDO; import com.cool.store.entity.LineInfoDO; import com.cool.store.enums.AuditResultTypeEnum; +import com.cool.store.enums.ErrorCodeEnum; +import com.cool.store.exception.ServiceException; import com.cool.store.request.AuditPassRequest; import com.cool.store.request.AuditRejectRequest; import org.springframework.stereotype.Service; @@ -28,11 +30,14 @@ public abstract class LineFlowService { /** * 审核通过 - * @param lineInfo * @param request * @return */ - public Boolean auditPass(LineInfoDO lineInfo, AuditPassRequest request){ + public Boolean auditPass(AuditPassRequest request){ + LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); + if(!lineInfo.getWorkflowSubStage().equals(request.getWorkflowSubStage())){ + throw new ServiceException(ErrorCodeEnum.WORK_FLOW_STAGE_PASS_ERROR); + } String partnerId = lineInfo.getPartnerId(); LineAuditInfoDO auditInfo = new LineAuditInfoDO(); auditInfo.setLineId(request.getLineId()); @@ -46,11 +51,14 @@ public abstract class LineFlowService { /** * 审核拒绝 - * @param lineInfo * @param request * @return */ - public Boolean auditReject(LineInfoDO lineInfo, AuditRejectRequest request){ + public Boolean auditReject(AuditRejectRequest request){ + LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); + if(!lineInfo.getWorkflowSubStage().equals(request.getWorkflowSubStage())){ + throw new ServiceException(ErrorCodeEnum.WORK_FLOW_STAGE_PASS_ERROR); + } String partnerId = lineInfo.getPartnerId(); LineAuditInfoDO auditInfo = new LineAuditInfoDO(); auditInfo.setLineId(request.getLineId()); @@ -65,11 +73,14 @@ public abstract class LineFlowService { /** * 结束跟进 - * @param lineInfo * @param request * @return */ - public Boolean auditClose(LineInfoDO lineInfo, AuditRejectRequest request){ + public Boolean auditClose(AuditRejectRequest request){ + LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); + if(!lineInfo.getWorkflowSubStage().equals(request.getWorkflowSubStage())){ + throw new ServiceException(ErrorCodeEnum.WORK_FLOW_STAGE_PASS_ERROR); + } String partnerId = lineInfo.getPartnerId(); LineAuditInfoDO auditInfo = new LineAuditInfoDO(); auditInfo.setLineId(request.getLineId()); diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/LineAuditController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/LineAuditController.java index 61f7d534e..3fb94a16a 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/LineAuditController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/LineAuditController.java @@ -30,38 +30,32 @@ import javax.annotation.Resource; public class LineAuditController { private LineFlowService lineFlowService; - @Resource - private LineInfoDAO lineInfoDAO; @Autowired private ApplicationContext applicationContext; @ApiOperation("审核通过") @PostMapping("/pass") public ResponseResult auditPass(@RequestBody AuditPassRequest request){ - LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); - initLineFlowService(lineInfo); - return ResponseResult.success(lineFlowService.auditPass(lineInfo, request)); + initLineFlowService(request.getWorkflowSubStage()); + return ResponseResult.success(lineFlowService.auditPass(request)); } @ApiOperation("审核拒绝") @PostMapping("/reject") public ResponseResult auditReject(@RequestBody AuditRejectRequest request){ - LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); - initLineFlowService(lineInfo); - return ResponseResult.success(lineFlowService.auditReject(lineInfo, request)); + initLineFlowService(request.getWorkflowSubStage()); + return ResponseResult.success(lineFlowService.auditReject(request)); } @ApiOperation("结束跟进") @PostMapping("/close") public ResponseResult auditClose(@RequestBody AuditRejectRequest request){ - LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); - initLineFlowService(lineInfo); - return ResponseResult.success(lineFlowService.auditClose(lineInfo, request)); + initLineFlowService(request.getWorkflowSubStage()); + return ResponseResult.success(lineFlowService.auditClose(request)); } - private void initLineFlowService(LineInfoDO lineInfo){ - Integer workflowSubStage = lineInfo.getWorkflowSubStage(); + private void initLineFlowService(Integer workflowSubStage){ if(workflowSubStage == 1){ this.lineFlowService = (LineFlowService)applicationContext.getBean(LineInterviewServiceImpl.class); }else{