Merge remote-tracking branch 'origin/cc_20230520_partner' into cc_20230520_partner

This commit is contained in:
俞扬
2023-06-30 11:47:30 +08:00
13 changed files with 94 additions and 38 deletions

View File

@@ -41,7 +41,7 @@ public class ContentServiceImpl implements ContentService {
//增加不允许重复标题的逻辑
Boolean isDuplicated = contentInfoMapper.whetherTitleDuplicated(dto.getContentTitle());
if (isDuplicated) {
throw new ApiException(ErrorCodeEnum.DATA_CONVERT_ERROR);
throw new ApiException(ErrorCodeEnum.CONTENT_DUPLICATED);
}
HyContentInfoDO hyContentInfoDO = new HyContentInfoDO();
BeanUtil.copyProperties(dto, hyContentInfoDO);

View File

@@ -138,7 +138,7 @@ public class FlowServiceImpl implements FlowService {
HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoMapper.selectByPrimaryKeySelective(Long.valueOf(request.getLineId()));
if (!Objects.isNull(hyPartnerLineInfoDO)) {
String investmentManagerId = hyPartnerLineInfoDO.getInvestmentManager();
String developmentDirectorId = hyPartnerLineInfoDO.getDevelopmentDirector();
String developmentDirectorId = request.getDevtDirectorId();
EnterpriseUserDO investmentManager = enterpriseUserDAO.getUserInfoById(investmentManagerId);
EnterpriseUserDO developmentDirector = enterpriseUserDAO.getUserInfoById(developmentDirectorId);
//招商经理信息(客户经理)
@@ -146,7 +146,7 @@ public class FlowServiceImpl implements FlowService {
String jobNumber = investmentManager.getJobnumber();
String mobile = investmentManager.getMobile();
DingdingUserDO dingdingUserDO = dingdingUserMapper.selectDingDingUserByMobile(mobile);
if (Objects.isNull(dingdingUserDO) || Objects.isNull(dingdingUserDO.getUserid())) {
if (Objects.isNull(dingdingUserDO) || StringUtils.isEmpty(dingdingUserDO.getUserid())) {
throw new ServiceException(ErrorCodeEnum.DINGDING_USER_NOT_EXIST);
}
rpcRequest.setDingUserId(dingdingUserDO.getUserid());
@@ -158,7 +158,7 @@ public class FlowServiceImpl implements FlowService {
if (!Objects.isNull(developmentDirector)) {
String mobile = developmentDirector.getMobile();
DingdingUserDO dingdingUserDO = dingdingUserMapper.selectDingDingUserByMobile(mobile);
if (Objects.isNull(dingdingUserDO) || Objects.isNull(dingdingUserDO.getUserid())) {
if (Objects.isNull(dingdingUserDO) || StringUtils.isEmpty(dingdingUserDO.getUserid())) {
throw new ServiceException(ErrorCodeEnum.DINGDING_USER_NOT_EXIST);
}
rpcRequest.getData().setUserSiteDevDingUserId(dingdingUserDO.getUserid());
@@ -217,7 +217,6 @@ public class FlowServiceImpl implements FlowService {
}
@Override
@Transactional
public void qualificationCallback(QualificationCallbackReq request) {
log.info("MDM800审批成功回调request{}", JSONObject.toJSONString(request));
//1. 信息是否完整
@@ -252,6 +251,7 @@ public class FlowServiceImpl implements FlowService {
// TODO pass_reason 暂无
Date passDate = new Date(request.getModifiedTime());
//3. 生成通过函并修改数据库相关信息
//TODO 问题:如果因为 pdf 生成失败或者其他原因导致异常,但是由于 MDM 只是做回调,不对回调是否成功负责,会导致流程信息缺失
genPassLetterAndUpdateDB(partnerName, verifyCity, passDate, interviewId);
// TODO 4. 修改流程状态到下一阶段 4 分配选址开发经理
//审核未通过

View File

@@ -285,6 +285,7 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic
if(Objects.isNull(intentInfoVO.getAcceptAdjustType())){
intentInfoVO.setAcceptAdjustType(userInfoVO.getAcceptAdjustType());
}
intentInfoVO.setWantShopAreaName(userInfoVO.getWantShopAreaName());
return intentInfoVO;
}

View File

@@ -250,6 +250,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED);
}
HyPartnerLineInfoDO line = hyPartnerLineInfoDAO.selectByPrimaryKeySelective(lineId);
Integer lineStatus = line.getLineStatus();
//加入黑名单 阶段回到第一步待提交状态
HyPartnerLineInfoDO hyPartnerLineInfoDO = new HyPartnerLineInfoDO();
hyPartnerLineInfoDO.setId(lineId);
@@ -260,10 +261,13 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
hyPartnerLineInfoDO.setCloseUserId(user.getUserId());
hyPartnerLineInfoDAO.updateByPrimaryKeySelective(hyPartnerLineInfoDO);
CloseFollowRequest closeFollowRequest = new CloseFollowRequest();
closeFollowRequest.setLineId(lineId);
closeFollowRequest.setRejectRealReason(joinReason);
workFlowService.endProcess(WorkflowStageEnum.getWorkflowStageByCode(line.getWorkflowStage()),closeFollowRequest);
//公海线索不需要处理子流程线索
if (!LineStatusEnum.PUBLIC_SEAS.getCode().equals(lineStatus)){
CloseFollowRequest closeFollowRequest = new CloseFollowRequest();
closeFollowRequest.setLineId(lineId);
closeFollowRequest.setRejectRealReason(joinReason);
workFlowService.endProcess(WorkflowStageEnum.getWorkflowStageByCode(line.getWorkflowStage()),closeFollowRequest);
}
//添加日志
LineLogInfo lineLogInfo = new LineLogInfo(line.getPartnerId(), line.getId(), user.getUserId(),

View File

@@ -1,24 +1,29 @@
package com.cool.store.service.impl;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONObject;
import com.cool.store.constants.CommonConstants;
import com.cool.store.constants.RedisConstant;
import com.cool.store.context.PartnerUserHolder;
import com.cool.store.dao.HyOpenAreaInfoDAO;
import com.cool.store.dao.HyPartnerUserInfoDAO;
import com.cool.store.dto.log.UserInfoUpdateDTO;
import com.cool.store.entity.HyOpenAreaInfoDO;
import com.cool.store.entity.HyPartnerLineInfoDO;
import com.cool.store.entity.HyPartnerUserInfoDO;
import com.cool.store.enums.ErrorCodeEnum;
import com.cool.store.enums.OperateTypeEnum;
import com.cool.store.exception.ServiceException;
import com.cool.store.request.PartnerIntentInfoRequest;
import com.cool.store.request.PartnerUserInfoRequest;
import com.cool.store.request.PartnerWantShopInfoRequest;
import com.cool.store.service.HyPartnerBaseInfoService;
import com.cool.store.service.HyPartnerLineInfoService;
import com.cool.store.service.LogService;
import com.cool.store.service.PartnerUserInfoService;
import com.cool.store.utils.CoolDateUtils;
import com.cool.store.utils.RedisUtilPool;
import com.cool.store.vo.ApplyBaseInfoVO;
import com.cool.store.vo.InviteCodeDetailVO;
import com.cool.store.vo.PartnerIntentInfoVO;
import com.cool.store.vo.PartnerUserInfoVO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -27,6 +32,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.text.MessageFormat;
import java.util.Date;
import java.util.List;
import java.util.Objects;
@@ -47,6 +53,8 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService {
HyOpenAreaInfoDAO hyOpenAreaInfoDAO;
@Resource
private RedisUtilPool redisUtilPool;
@Autowired
private LogService logService;
@Override
public HyPartnerUserInfoDO selectByPartnerId(String partnerId) {
@@ -93,6 +101,9 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService {
if (hyPartnerUserInfoDO == null){
throw new ServiceException(ErrorCodeEnum.PARTNER_USER_NOT_EXIST);
}
UserInfoUpdateDTO.UserInfoUpdate beforeUserinfoUpdate = new UserInfoUpdateDTO.UserInfoUpdate(hyPartnerUserInfoDO.getUsername(), hyPartnerUserInfoDO.getMobile(), hyPartnerUserInfoDO.getLiveArea(), hyPartnerUserInfoDO.getWantShopArea(), hyPartnerUserInfoDO.getAcceptAdjustType());
UserInfoUpdateDTO.UserInfoUpdate afterUserinfoUpdate = new UserInfoUpdateDTO.UserInfoUpdate(partnerUserInfoRequest.getUsername(), partnerUserInfoRequest.getMobile(), partnerUserInfoRequest.getLiveArea(), partnerUserInfoRequest.getWantShopArea(), partnerUserInfoRequest.getAcceptAdjustType());
ApplyBaseInfoVO applyBaseInfoVO = new ApplyBaseInfoVO();
fillUserInfoDOByRequest(hyPartnerUserInfoDO, partnerUserInfoRequest);
hyPartnerUserInfoDAO.updateByPrimaryKeySelective(hyPartnerUserInfoDO);
@@ -124,6 +135,12 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService {
redisUtilPool.setString(cacheKey, JSONObject.toJSONString(request), RedisConstant.ONE_DAY_SECONDS);
}
}
//记录日志
PartnerUserInfoVO operator = PartnerUserHolder.getUser();
UserInfoUpdateDTO log = UserInfoUpdateDTO.builder().mobile(operator.getMobile()).operateUserId(operator.getPartnerId()).operateUsername(operator.getUsername())
.operateTime(DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC))
.beforeUserinfoUpdate(beforeUserinfoUpdate).afterUserinfoUpdate(afterUserinfoUpdate).build();
logService.recordPartnerBizLog(operator,hyPartnerLineInfoDO.getId(), OperateTypeEnum.USERINFO_UPDATE,log);
return applyBaseInfoVO;
}