Merge remote-tracking branch 'origin/cc_20230520_partner' into cc_20230520_partner
This commit is contained in:
@@ -3,6 +3,8 @@ package com.cool.store.mapper;
|
||||
import com.cool.store.entity.HyPartnerTaskInfoLogDO;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
* @date 2023-05-29 03:53
|
||||
@@ -22,4 +24,6 @@ public interface HyPartnerTaskInfoLogMapper {
|
||||
* dateTime:2023-05-29 03:53
|
||||
*/
|
||||
int updateByPrimaryKeySelective(@Param("record") HyPartnerTaskInfoLogDO record);
|
||||
|
||||
List<HyPartnerTaskInfoLogDO> selectByPartnerLineIdAndOperateType(@Param("partnerLineId") String partnerLineId, @Param("operateType") String operateType);
|
||||
}
|
||||
@@ -133,4 +133,13 @@
|
||||
</set>
|
||||
where id = #{record.id}
|
||||
</update>
|
||||
<select id="selectByPartnerLineIdAndOperateType" resultMap="ResultMapWithBLOBs">
|
||||
select
|
||||
<include refid="Base_Column_List"/>,
|
||||
<include refid="Blob_Column_List"/>
|
||||
from hy_partner_task_info_log
|
||||
where partner_line_id = #{partnerLineId}
|
||||
and operate_type = #{operateType}
|
||||
order by create_time desc
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.cool.store.dto.log;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @Author: young.yu
|
||||
* @Date: 2023-06-28 15:32
|
||||
* @Description:
|
||||
*/
|
||||
@Data
|
||||
public class LogFieldDTO {
|
||||
private String code;
|
||||
private String name;
|
||||
private String value;
|
||||
}
|
||||
@@ -22,4 +22,6 @@ public class ApplyBaseInfoVO {
|
||||
@ApiModelProperty("线索状态:0公海线索;1跟进中;2合作中;3黑名单")
|
||||
private Integer lineStatus;
|
||||
|
||||
@ApiModelProperty("线索id")
|
||||
private Long partnerLineId;
|
||||
}
|
||||
|
||||
@@ -69,5 +69,5 @@ public interface InterviewService {
|
||||
|
||||
public void rejectInterviewAndSuspendLine(Long iterviewId,Long interviewPlanId,String certifyFile);
|
||||
|
||||
void getLastUpdateTimeInfo(GetLastUpdateTimeInfoReq request) throws ApiException;
|
||||
String getLastUpdateTimeInfo(GetLastUpdateTimeInfoReq request) throws ApiException;
|
||||
}
|
||||
|
||||
@@ -633,18 +633,23 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
|
||||
public HyPartnerLineInfoDO generateDefaultLineInfo(String partnerId, String wantShopArea, Integer acceptAdjustType) {
|
||||
// 生成一条线索
|
||||
HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoDAO.getByPartnerId(partnerId);
|
||||
Boolean flag = this.assignFollowUser(partnerId, wantShopArea, acceptAdjustType);
|
||||
String investmentManager = null;
|
||||
if (flag){
|
||||
investmentManager = getAssignFollowUser(partnerId, "intent");
|
||||
}
|
||||
if(hyPartnerLineInfoDO == null){
|
||||
hyPartnerLineInfoDO = new HyPartnerLineInfoDO();
|
||||
hyPartnerLineInfoDO.setPartnerId(partnerId);
|
||||
hyPartnerLineInfoDO.setWorkflowStage(WorkflowStageEnum.INTENT.getCode());
|
||||
hyPartnerLineInfoDO.setWorkflowStatus(WorkflowStatusEnum.INTENT_0.getCode());
|
||||
Boolean flag = this.assignFollowUser(hyPartnerLineInfoDO.getPartnerId(), wantShopArea, acceptAdjustType);
|
||||
hyPartnerLineInfoDO.setLineStatus(flag ? LineStatusEnum.PRIVATE_SEAS.getCode() : LineStatusEnum.PUBLIC_SEAS.getCode());
|
||||
if (flag){
|
||||
String investmentManager = getAssignFollowUser(partnerId, "intent");
|
||||
hyPartnerLineInfoDO.setInvestmentManager(investmentManager);
|
||||
}
|
||||
hyPartnerLineInfoDO.setInvestmentManager(investmentManager);
|
||||
hyPartnerLineInfoDAO.insertSelective(hyPartnerLineInfoDO);
|
||||
}else {
|
||||
hyPartnerLineInfoDO.setLineStatus(flag ? LineStatusEnum.PRIVATE_SEAS.getCode() : LineStatusEnum.PUBLIC_SEAS.getCode());
|
||||
hyPartnerLineInfoDO.setInvestmentManager(investmentManager);
|
||||
hyPartnerLineInfoDAO.updateByPrimaryKeySelective(hyPartnerLineInfoDO);
|
||||
}
|
||||
return hyPartnerLineInfoDO;
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.cool.store.context.CurrentUserHolder;
|
||||
import com.cool.store.context.LoginUserInfo;
|
||||
import com.cool.store.context.PartnerUserHolder;
|
||||
@@ -16,10 +17,7 @@ import com.cool.store.dto.calendar.CreateCalendarEventDTO;
|
||||
import com.cool.store.dto.calendar.DeleteCalendarEventDTO;
|
||||
import com.cool.store.dto.calendar.UserCalendarsEventDTO;
|
||||
import com.cool.store.dto.calendar.UserFreeBusyInfoDTO;
|
||||
import com.cool.store.dto.log.EntrustOthersDTO;
|
||||
import com.cool.store.dto.log.LogBasicDTO;
|
||||
import com.cool.store.dto.log.ModifyInterviewTimeDTO;
|
||||
import com.cool.store.dto.log.ReInterviewDTO;
|
||||
import com.cool.store.dto.log.*;
|
||||
import com.cool.store.dto.message.SendCardMessageDTO;
|
||||
import com.cool.store.dto.partner.EnterInterviewDto;
|
||||
import com.cool.store.entity.*;
|
||||
@@ -276,11 +274,11 @@ public class InterviewServiceImpl implements InterviewService {
|
||||
hyPartnerInterviewMapper.updateByPrimaryKeySelective(hyPartnerInterviewDO);
|
||||
|
||||
//记录日志
|
||||
PartnerUserInfoVO operator = PartnerUserHolder.getUser();
|
||||
ModifyInterviewTimeDTO log = ModifyInterviewTimeDTO.builder().operateUserId(operator.getPartnerId()).operateUsername(operator.getUsername())
|
||||
LoginUserInfo operator = CurrentUserHolder.getUser();
|
||||
ModifyInterviewTimeDTO log = ModifyInterviewTimeDTO.builder().mobile(operator.getMobile()).operateUserId(operator.getUserId()).operateUsername(operator.getName())
|
||||
.operateTime(DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC))
|
||||
.beforeInterviewTime(interviewInfo.getStartTime()).afterInterviewTime(request.getNewStartBookingTime()).build();
|
||||
logService.recordPartnerBizLog(operator,interviewInfo.getPartnerLineId(),OperateTypeEnum.MODIFY_INTERVIEW_TIME,log);
|
||||
logService.recordBizLog(operator,interviewInfo.getPartnerLineId(),OperateTypeEnum.MODIFY_INTERVIEW_TIME,log);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -460,7 +458,7 @@ public class InterviewServiceImpl implements InterviewService {
|
||||
|
||||
//记录日志
|
||||
PartnerUserInfoVO operator = PartnerUserHolder.getUser();
|
||||
LogBasicDTO log = LogBasicDTO.builder().operateUserId(operator.getPartnerId()).operateUsername(operator.getUsername()).operateTime(DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC)).build();
|
||||
LogBasicDTO log = LogBasicDTO.builder().operateUserId(operator.getPartnerId()).operateUsername(operator.getUsername()).operateTime(DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC)).mobile(operator.getMobile()).build();
|
||||
logService.recordPartnerBizLog(operator,interviewVO.getPartnerLineId(),OperateTypeEnum.INTERVIEW_APPOINTMENT,log);
|
||||
|
||||
return vo;
|
||||
@@ -632,8 +630,38 @@ public class InterviewServiceImpl implements InterviewService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void getLastUpdateTimeInfo(GetLastUpdateTimeInfoReq request) throws ApiException {
|
||||
|
||||
public String getLastUpdateTimeInfo(GetLastUpdateTimeInfoReq request) throws ApiException {
|
||||
String content = " 修改面试预约时间";
|
||||
String operatorName = null;
|
||||
String operatorMobile = null;
|
||||
String operatorTime = null;
|
||||
List<HyPartnerTaskInfoLogDO> hyPartnerTaskInfoLogDOS = hyPartnerTaskInfoLogMapper.selectByPartnerLineIdAndOperateType(request.getPartnerLineId(), OperateTypeEnum.MODIFY_INTERVIEW_TIME.getCode());
|
||||
if(CollectionUtils.isEmpty(hyPartnerTaskInfoLogDOS)){
|
||||
hyPartnerTaskInfoLogDOS = hyPartnerTaskInfoLogMapper.selectByPartnerLineIdAndOperateType(request.getPartnerLineId(), OperateTypeEnum.INTERVIEW_APPOINTMENT.getCode());
|
||||
if(CollectionUtils.isEmpty(hyPartnerTaskInfoLogDOS)){
|
||||
return null;
|
||||
}
|
||||
content = " 提交面试预约时间";
|
||||
}
|
||||
HyPartnerTaskInfoLogDO hyPartnerTaskInfoLogDO = hyPartnerTaskInfoLogDOS.get(0);
|
||||
String fieldCopy = hyPartnerTaskInfoLogDO.getFieldCopy();
|
||||
List<LogFieldDTO> logFieldDTOS = JSONObject.parseArray(fieldCopy, LogFieldDTO.class);
|
||||
for(LogFieldDTO logFieldDTO:logFieldDTOS){
|
||||
if(OperateLogFieldValueEnum.OPERATE_TIME.getCode().equals(logFieldDTO.getCode())){
|
||||
operatorTime = logFieldDTO.getValue();
|
||||
}
|
||||
if(OperateLogFieldValueEnum.MOBILE.getCode().equals(logFieldDTO.getCode())){
|
||||
operatorMobile = logFieldDTO.getValue();
|
||||
}
|
||||
if(OperateLogFieldValueEnum.OPERATE_USER_NAME.getCode().equals(logFieldDTO.getCode())){
|
||||
operatorName = logFieldDTO.getValue();
|
||||
}
|
||||
}
|
||||
StringBuffer sb = new StringBuffer();
|
||||
sb.append(operatorName)
|
||||
.append(" "+operatorMobile)
|
||||
.append(" 于 ").append(DateUtil.format(DateUtil.parseDateTime(operatorTime),"yyyy/MM/dd HH:mm:ss")).append(content);
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -3,11 +3,14 @@ package com.cool.store.service.impl;
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import com.cool.store.context.PartnerUserHolder;
|
||||
import com.cool.store.dao.HyInterviewDAO;
|
||||
import com.cool.store.dto.log.ModifyInterviewTimeDTO;
|
||||
import com.cool.store.dto.partner.EnterInterviewDto;
|
||||
import com.cool.store.entity.HyPartnerInterviewDO;
|
||||
import com.cool.store.entity.HyPartnerInterviewPlanDO;
|
||||
import com.cool.store.enums.ErrorCodeEnum;
|
||||
import com.cool.store.enums.OperateTypeEnum;
|
||||
import com.cool.store.enums.RoomStatus;
|
||||
import com.cool.store.enums.WorkflowStatusEnum;
|
||||
import com.cool.store.exception.ApiException;
|
||||
@@ -15,11 +18,14 @@ import com.cool.store.exception.ServiceException;
|
||||
import com.cool.store.mapper.HyPartnerInterviewMapper;
|
||||
import com.cool.store.mapper.HyPartnerInterviewPlanMapper;
|
||||
import com.cool.store.request.ModifyInterviewTimeReq;
|
||||
import com.cool.store.service.LogService;
|
||||
import com.cool.store.service.PartnerInterviewService;
|
||||
import com.cool.store.utils.CoolDateUtils;
|
||||
import com.cool.store.utils.TRTCUtils;
|
||||
import com.cool.store.vo.EnterInterviewVO;
|
||||
import com.cool.store.vo.PartnerInterviewInfoVO;
|
||||
import com.cool.store.vo.PartnerPassLetterDetailVO;
|
||||
import com.cool.store.vo.PartnerUserInfoVO;
|
||||
import com.cool.store.vo.interview.InterviewVO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -48,6 +54,9 @@ public class PartnerInterviewServiceImpl implements PartnerInterviewService {
|
||||
@Value("${trtc.secretKey}")
|
||||
private String key;
|
||||
|
||||
@Autowired
|
||||
private LogService logService;
|
||||
|
||||
/**
|
||||
* 加盟商查询面试信息
|
||||
*
|
||||
@@ -175,6 +184,13 @@ public class PartnerInterviewServiceImpl implements PartnerInterviewService {
|
||||
record.setEndTime(Convert.toDate(request.getNewEndBookingTime()));
|
||||
record.setUpdateTime(new Date());
|
||||
interviewPlanMapper.updateByPrimaryKeySelective(record);
|
||||
|
||||
//记录日志
|
||||
PartnerUserInfoVO operator = PartnerUserHolder.getUser();
|
||||
ModifyInterviewTimeDTO log = ModifyInterviewTimeDTO.builder().mobile(operator.getMobile()).operateUserId(operator.getPartnerId()).operateUsername(operator.getUsername())
|
||||
.operateTime(DateUtil.format(new Date(), CoolDateUtils.DATE_FORMAT_SEC))
|
||||
.beforeInterviewTime(interviewInfo.getStartTime()).afterInterviewTime(request.getNewStartBookingTime()).build();
|
||||
logService.recordPartnerBizLog(operator,interviewInfo.getPartnerLineId(), OperateTypeEnum.MODIFY_INTERVIEW_TIME,log);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -112,6 +112,7 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService {
|
||||
if (CollectionUtils.isNotEmpty(hyOpenAreaInfoDOS)) {
|
||||
applyBaseInfoVO.setProvinceHasOpenArea(true);
|
||||
}
|
||||
applyBaseInfoVO.setPartnerLineId(hyPartnerLineInfoDO.getId());
|
||||
applyBaseInfoVO.setLineStatus(hyPartnerLineInfoDO.getLineStatus());
|
||||
String cacheKey = MessageFormat.format(RedisConstant.PARTNER_INTENTINFO_CACHE_KEY, partnerUserInfoRequest.getPartnerId(), hyPartnerLineInfoDO.getId());
|
||||
if (StringUtils.isNotBlank(redisUtilPool.getString(cacheKey))) {
|
||||
|
||||
@@ -97,7 +97,7 @@ public class InterviewController {
|
||||
@PostMapping("/getLastUpdateTimeInfo")
|
||||
@ApiOperation("获取面试最新更新信息")
|
||||
public ResponseResult getLastUpdateTimeInfo(@RequestBody GetLastUpdateTimeInfoReq request) throws ApiException {
|
||||
interviewService.getLastUpdateTimeInfo(request);
|
||||
return ResponseResult.success();
|
||||
String res = interviewService.getLastUpdateTimeInfo(request);
|
||||
return ResponseResult.success(res);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user