Merge remote-tracking branch 'origin/cc_20230520_partner' into cc_20230520_partner
This commit is contained in:
@@ -76,5 +76,17 @@ public class JobHandler {
|
||||
}
|
||||
}
|
||||
|
||||
@XxlJob("approvalReminder")
|
||||
public void approvalReminder(){
|
||||
try {
|
||||
log.info("审批即将超时提醒开始");
|
||||
hyPartnerInterviewPlanService.approvalReminder();
|
||||
log.info("审批即将超时提醒结束");
|
||||
XxlJobHelper.handleSuccess();
|
||||
}catch (Exception e){
|
||||
log.error("审批即将超时提醒定时任务异常",e);
|
||||
XxlJobHelper.log("审批即将超时提醒定时任务异常"+e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,6 +4,7 @@ import com.cool.store.dto.content.ContentAddDto;
|
||||
import com.cool.store.dto.content.ContentQueryListDto;
|
||||
import com.cool.store.dto.content.ContentUpdateDto;
|
||||
import com.cool.store.entity.HyContentInfoDO;
|
||||
import com.cool.store.exception.ApiException;
|
||||
import com.cool.store.vo.HyContentInfoVO;
|
||||
|
||||
import java.util.List;
|
||||
@@ -15,7 +16,7 @@ public interface ContentService {
|
||||
* @param dto
|
||||
* @return contentId 新增动态id
|
||||
*/
|
||||
String addNews(ContentAddDto dto);
|
||||
String addNews(ContentAddDto dto) throws ApiException;
|
||||
|
||||
/**
|
||||
* 删除动态
|
||||
@@ -41,4 +42,9 @@ public interface ContentService {
|
||||
*/
|
||||
HyContentInfoDO queryContentInfo(String contentId);
|
||||
|
||||
/**
|
||||
* 标题是否重复
|
||||
*/
|
||||
Boolean queryTitles(String title);
|
||||
|
||||
}
|
||||
|
||||
@@ -62,4 +62,5 @@ public interface HyPartnerInterviewPlanService {
|
||||
* @return
|
||||
*/
|
||||
void updateAbsentInterview() throws ApiException;
|
||||
void approvalReminder() throws ApiException;
|
||||
}
|
||||
|
||||
@@ -72,14 +72,14 @@ public class CommonServiceImpl implements CommonService {
|
||||
if(partnerCertificationInfoDO != null){
|
||||
intentionContractNo = partnerCertificationInfoDO.getIntentionContractNo();
|
||||
}
|
||||
return getInterviewTips(partnerLineId, OperateTypeEnum.FINISH_INTERVIEW, "发起加盟商资质审核|"+intentionContractNo);
|
||||
return getInterviewTips(partnerLineId, OperateTypeEnum.FINISH_INTERVIEW, "发起加盟商资质审核 | "+intentionContractNo);
|
||||
}else if (workflowStage.equals(WorkflowStageEnum.INTERVIEW.getCode()) && workflowStatus.equals(WorkflowStatusEnum.INTERVIEW_6.getCode())) {
|
||||
HyPartnerCertificationInfoDO partnerCertificationInfoDO = hyPartnerCertificationInfoMapper.selectByPartnerLineId(partnerLineId);
|
||||
String intentionContractNo = null;
|
||||
if(partnerCertificationInfoDO != null){
|
||||
intentionContractNo = partnerCertificationInfoDO.getIntentionContractNo();
|
||||
}
|
||||
return getInterviewTips(partnerLineId, OperateTypeEnum.FINISH_INTERVIEW, "审核通过|"+intentionContractNo);
|
||||
return getInterviewTips(partnerLineId, OperateTypeEnum.FINISH_INTERVIEW, "审核通过 | "+intentionContractNo);
|
||||
}
|
||||
|
||||
return null;
|
||||
|
||||
@@ -1,13 +1,18 @@
|
||||
package com.cool.store.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.constants.RedisConstant;
|
||||
import com.cool.store.dao.ContentDAO;
|
||||
import com.cool.store.dto.content.ContentAddDto;
|
||||
import com.cool.store.dto.content.ContentQueryListDto;
|
||||
import com.cool.store.dto.content.ContentUpdateDto;
|
||||
import com.cool.store.entity.HyContentInfoDO;
|
||||
import com.cool.store.enums.ErrorCodeEnum;
|
||||
import com.cool.store.exception.ApiException;
|
||||
import com.cool.store.mapper.HyContentInfoMapper;
|
||||
import com.cool.store.service.ContentService;
|
||||
import com.cool.store.utils.RedisUtilPool;
|
||||
import com.cool.store.vo.HyContentInfoVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -23,13 +28,21 @@ public class ContentServiceImpl implements ContentService {
|
||||
@Autowired
|
||||
private HyContentInfoMapper contentInfoMapper;
|
||||
|
||||
@Autowired
|
||||
private RedisUtilPool redisUtilPool;
|
||||
|
||||
/**
|
||||
*
|
||||
* @param dto
|
||||
* @return contentId 新增动态id
|
||||
*/
|
||||
@Override
|
||||
public String addNews(ContentAddDto dto) {
|
||||
public String addNews(ContentAddDto dto) throws ApiException {
|
||||
//增加不允许重复标题的逻辑
|
||||
Boolean isDuplicated = contentInfoMapper.whetherTitleDuplicated(dto.getContentTitle());
|
||||
if (isDuplicated) {
|
||||
throw new ApiException(ErrorCodeEnum.DATA_CONVERT_ERROR);
|
||||
}
|
||||
HyContentInfoDO hyContentInfoDO = new HyContentInfoDO();
|
||||
BeanUtil.copyProperties(dto, hyContentInfoDO);
|
||||
hyContentInfoDO.setUpdateUserId(dto.getCreateUserId());
|
||||
@@ -62,7 +75,7 @@ public class ContentServiceImpl implements ContentService {
|
||||
*/
|
||||
@Override
|
||||
public List<HyContentInfoVO> queryContentList(ContentQueryListDto dto) {
|
||||
return contentInfoMapper.queryContentList(dto);
|
||||
return contentInfoMapper.queryContentListForB(dto);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -75,4 +88,18 @@ public class ContentServiceImpl implements ContentService {
|
||||
return contentInfoMapper.queryContentInfo(contentId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 标题是否重复
|
||||
*/
|
||||
@Override
|
||||
public Boolean queryTitles(String title) {
|
||||
List<String> titles = (List<String>) JSONObject.parseObject(redisUtilPool.getString(RedisConstant.CONTENT_TITLES), List.class);
|
||||
if (titles != null && titles.size() != 0) {
|
||||
return titles.contains(title);
|
||||
}
|
||||
titles = contentInfoMapper.queryTitles();
|
||||
redisUtilPool.setString(RedisConstant.CONTENT_TITLES, JSONObject.toJSONString(titles), 60);
|
||||
return titles.contains(title);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -167,6 +167,9 @@ public class EcSyncServiceImpl implements EcSyncService {
|
||||
if (StringUtil.isEmpty(partnerLine.getInvestmentManager())) {
|
||||
if (StringUtil.isNotEmpty(resultLine.getInvestmentManager())) {
|
||||
resultLine.setId(partnerLine.getId()).setUpdateTime(new Date());
|
||||
//沪姨合伙人线索存在黑名单,EC该线索分配跟进人同步到沪姨合伙人但线索状态不变,还存在黑名单中
|
||||
resultLine.setLineStatus(partnerLine.getLineStatus().intValue()==LineStatusEnum.BLACKLIST.getCode().intValue()
|
||||
?LineStatusEnum.BLACKLIST.getCode():resultLine.getLineStatus());
|
||||
hyPartnerLineInfoDAO.updateByPrimaryKeySelective(resultLine);
|
||||
}
|
||||
}else {
|
||||
|
||||
@@ -194,8 +194,9 @@ public class FlowServiceImpl implements FlowService {
|
||||
//更新面试状态
|
||||
interviewDAO.updateInterviewWorkflowStatus(request.getInterviewPlanId(), WorkflowStatusEnum.INTERVIEW_5);
|
||||
hyPartnerInterviewDO.setUpdateTime(new Date());
|
||||
//获取当前操作人
|
||||
//注意将 hyPartnerInterviewDO 的 status 设置为 null,否则又会修改回 4
|
||||
hyPartnerInterviewDO.setStatus(null);
|
||||
//获取当前操作人并添加面试总结/记录信息
|
||||
LoginUserInfo operator = CurrentUserHolder.getUser();
|
||||
hyPartnerInterviewDO.setRecorder(operator.getUserId());
|
||||
hyPartnerInterviewDO.setRecordTime(new Date());
|
||||
|
||||
@@ -221,6 +221,16 @@ public class HyPartnerInterviewPlanServiceImpl implements HyPartnerInterviewPlan
|
||||
handleOverTimeInterview(interviewBaseInfoList,"超时未面试");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void approvalReminder() throws ApiException {
|
||||
//查询即将超时但未审批的面试
|
||||
HyPartnerInterviewPlanDO hyPartnerInterviewPlanDO = new HyPartnerInterviewPlanDO();
|
||||
hyPartnerInterviewPlanDO.setDeleted(Boolean.FALSE);
|
||||
hyPartnerInterviewPlanDO.setApplicationApproved(0);
|
||||
// hyPartnerInterviewPlanDO.setStartTime();
|
||||
List<HyPartnerInterviewPlanDO> hyPartnerInterviewPlanDOS = hyPartnerInterviewPlanMapper.selectBySelective(hyPartnerInterviewPlanDO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 统一处理面试超时情况,包括超时未预约和超时未面试
|
||||
* @param interviewBaseInfoList
|
||||
|
||||
@@ -587,6 +587,8 @@ public class InterviewServiceImpl implements InterviewService {
|
||||
//根据加盟商用户ID查询面试官ID
|
||||
HyPartnerInterviewPlanDO hyPartnerInterviewPlanDO = new HyPartnerInterviewPlanDO();
|
||||
hyPartnerInterviewPlanDO.setPartnerId(partnerId);
|
||||
hyPartnerInterviewPlanDO.setPartnerLineId(Long.valueOf(lineId));
|
||||
hyPartnerInterviewPlanDO.setDeleted(false);
|
||||
List<HyPartnerInterviewPlanDO> hyPartnerInterviewPlanDOS = hyPartnerInterviewPlanMapper.selectBySelective(hyPartnerInterviewPlanDO);
|
||||
//如果查询结果为空,则去线索中获取招商经理,面试官只有两个阶段,一个是在第一次申请时不存在面试安排直接取招商经理,第二个时面试信息中可修改面试官信息,这个时候以面试信息中为准
|
||||
if (CollectionUtils.isEmpty(hyPartnerInterviewPlanDOS)) {
|
||||
|
||||
@@ -109,7 +109,7 @@ public class InterviewWorkFlowService extends WorkFlowBaseService {
|
||||
}
|
||||
Integer status = interviewInfo.getStatus();
|
||||
Date now = new Date();
|
||||
if (status == Integer.parseInt(WorkflowStatusEnum.INTERVIEW_2.getCode()) ||
|
||||
if (status == Integer.parseInt(WorkflowStatusEnum.INTERVIEW_3.getCode()) ||
|
||||
(interviewInfo.getRoomStatus()!=null && String.valueOf(RoomStatus.OPEN.getCode()).equals(interviewInfo.getRoomStatus())) ||
|
||||
(DateUtil.compare(DateUtil.parse(interviewInfo.getStartTime()), now) <= 0
|
||||
&& DateUtil.compare(DateUtil.parse(interviewInfo.getEndTime()), now) >= 0)) {
|
||||
|
||||
Reference in New Issue
Block a user