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

This commit is contained in:
zhangchenbiao
2023-06-30 16:56:54 +08:00
34 changed files with 454 additions and 69 deletions

View File

@@ -63,19 +63,6 @@ public class JobHandler {
}
}
// @XxlJob("updateAbsentInterview")
// public void updateAbsentInterview(){
// try {
// log.info("面试缺席定时任务开始");
// hyPartnerInterviewPlanService.updateAbsentInterview();
// log.info("面试缺席定时任务结束");
// XxlJobHelper.handleSuccess();
// }catch (Exception e){
// log.error("面试缺席定时任务异常",e);
// XxlJobHelper.log("面试缺席定时任务异常"+e.getMessage());
// }
// }
@XxlJob("approvalReminder")
public void approvalReminder(){
try {

View File

@@ -0,0 +1,18 @@
package com.cool.store.service;
/**
* @Author suzhuhong
* @Date 2023/6/30 15:02
* @Version 1.0
*/
public interface HyPhoneLocationService {
/**
* 处理手机号归属地
* @param phoneNumber
* @return
*/
void handleHyPhoneAddress(String phoneNumber);
}

View File

@@ -69,4 +69,6 @@ public interface InterviewService {
public void rejectInterviewAndSuspendLine(Long iterviewId,Long interviewPlanId,String certifyFile);
public String generateFeiShuInterviewMsg(String partnerName, String partnerMobile, String interviewTime);
}

View File

@@ -42,18 +42,9 @@ import java.util.Random;
@Service
public class AliyunServiceImpl implements AliyunService {
@Resource
RedisUtilPool redisUtilPool;
@Resource
RedisConstantUtil redisConstantUtil;
@Override
public DescribePhoneNumberDTO getPhoneNumberAttribute(String phoneNumber) {
try {
String phone = redisUtilPool.getString(redisConstantUtil.getPhoneNumber(phoneNumber));
if (StringUtils.isNotEmpty(phone)){
return JSONObject.parseObject(phone, DescribePhoneNumberDTO.class);
}
Config config = new Config();
//todo zcb ak sk替换
config.accessKeyId = "LTAI5t9RaXvABZbHvoXjDFJ1";
@@ -69,8 +60,6 @@ public class AliyunServiceImpl implements AliyunService {
log.error("错误信息:" , response.body.message + "");
throw new ServiceException(ErrorCodeEnum.GET_PHONENUMBER_INFO_ERROR);
}
//保存到redis
redisUtilPool.setString(redisConstantUtil.getPhoneNumber(phoneNumber),JSONObject.toJSONString(response.body.data));
return JSONObject.parseObject(JSONObject.toJSONString(response.body.data), DescribePhoneNumberDTO.class);
} catch (Exception e) {
log.error("获取手机号异常:", e);

View File

@@ -55,7 +55,8 @@ public class CommonServiceImpl implements CommonService {
String workflowStage = hyPartnerLineInfoDO.getWorkflowStage();
String workflowStatus = hyPartnerLineInfoDO.getWorkflowStatus();
Long partnerLineId = hyPartnerLineInfoDO.getId();
if (workflowStage.equals(WorkflowStageEnum.INTERVIEW.getCode()) && workflowStatus.equals(WorkflowStatusEnum.INTERVIEW_2.getCode())) {
if ((workflowStage.equals(WorkflowStageEnum.RESERVATION.getCode()) && workflowStatus.equals(WorkflowStatusEnum.RESERVATION_1.getCode()))||
(workflowStage.equals(WorkflowStageEnum.INTERVIEW.getCode()) && workflowStatus.equals(WorkflowStatusEnum.INTERVIEW_2.getCode()))) {
return getInterviewTips(partnerLineId, OperateTypeEnum.INTERVIEW_APPOINTMENT, "提交面试预约时间");
} else if (workflowStage.equals(WorkflowStageEnum.INTERVIEW.getCode()) && workflowStatus.equals(WorkflowStatusEnum.INTERVIEW_3.getCode())) {
String tips = getInterviewTips(partnerLineId, OperateTypeEnum.MODIFY_INTERVIEW_TIME, "");

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);
//招商经理信息(客户经理)

View File

@@ -20,6 +20,7 @@ import com.cool.store.request.AddTagsRequest;
import com.cool.store.request.PartnerBaseInfoRequest;
import com.cool.store.service.HyPartnerBaseInfoService;
import com.cool.store.service.HyPartnerLineInfoService;
import com.cool.store.service.HyPhoneLocationService;
import com.cool.store.utils.RedisUtilPool;
import com.cool.store.vo.PartnerBaseInfoVO;
import com.cool.store.vo.PartnerUserInfoVO;
@@ -59,6 +60,8 @@ public class HyPartnerBaseInfoServiceImpl implements HyPartnerBaseInfoService {
@Resource
HyPartnerTaskInfoLogDAO hyPartnerTaskInfoLogDAO;
@Resource
HyPhoneLocationService hyPhoneLocationService;
@Override
@@ -80,6 +83,8 @@ public class HyPartnerBaseInfoServiceImpl implements HyPartnerBaseInfoService {
public Boolean submitPartnerBaseInfo(PartnerBaseInfoRequest request, PartnerUserInfoVO currentUser) {
log.info("HyPartnerBaseInfoServiceImpl#submitPartnerBaseInfo request:{}", JSONObject.toJSONString(request));
//处理手机号
hyPhoneLocationService.handleHyPhoneAddress(request.getMobile());
String cacheKey = MessageFormat.format(RedisConstant.PARTNER_BASEINFO_CACHE_KEY, request.getPartnerId(), request.getPartnerLineId());
if(!request.getSubmitFlag()){
// 自动保存时

View File

@@ -21,6 +21,7 @@ import com.cool.store.request.PartnerIntentInfoRequest;
import com.cool.store.request.PartnerWantShopInfoRequest;
import com.cool.store.service.HyPartnerIntentInfoService;
import com.cool.store.service.HyPartnerLineInfoService;
import com.cool.store.service.HyPhoneLocationService;
import com.cool.store.utils.RedisUtilPool;
import com.cool.store.utils.StringUtil;
import com.cool.store.vo.PartnerIntentApplyInfoVO;
@@ -66,6 +67,8 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic
HyOpenAreaInfoDAO hyOpenAreaInfoDAO;
@Resource
HyPartnerLineInfoService hyPartnerLineInfoService;
@Resource
HyPhoneLocationService hyPhoneLocationService;
@Override
public PageInfo<PartnerIntentApplyInfoVO> getPartnerIntentApplyList(String userId, String type, Integer pageSize, Integer pageNumber) {
@@ -92,9 +95,11 @@ public class HyPartnerIntentInfoServiceImpl implements HyPartnerIntentInfoServic
partnerIntentApplyInfo.setList(resultList);
return partnerIntentApplyInfo;
}
@Override
public Boolean updatePartnerIntentInfo(BaseUserInfoRequest baseUserInfoRequest) {
//处理手机号
hyPhoneLocationService.handleHyPhoneAddress(baseUserInfoRequest.getMobile());
HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(String.valueOf(baseUserInfoRequest.getPartnerId()));
if (hyPartnerUserInfoDO==null){
throw new ServiceException(ErrorCodeEnum.PARTNER_USER_NOT_EXIST);

View File

@@ -3,12 +3,16 @@ package com.cool.store.service.impl;
import cn.hutool.core.date.DateUtil;
import com.cool.store.constants.CommonConstants;
import com.cool.store.dao.*;
import com.cool.store.dto.message.RemindInterviewMsgDTO;
import com.cool.store.dto.message.SendCardMessageDTO;
import com.cool.store.dto.partner.PartnerInterviewInfoDTO;
import com.cool.store.entity.*;
import com.cool.store.enums.MessageTypeEnum;
import com.cool.store.enums.RoomStatus;
import com.cool.store.enums.WorkflowStageEnum;
import com.cool.store.enums.WorkflowStatusEnum;
import com.cool.store.exception.ApiException;
import com.cool.store.http.ISVHttpRequest;
import com.cool.store.mapper.HyPartnerInterviewMapper;
import com.cool.store.mapper.HyPartnerInterviewPlanMapper;
import com.cool.store.mapper.HyPartnerLineInfoMapper;
@@ -16,15 +20,18 @@ import com.cool.store.request.CloseFollowRequest;
import com.cool.store.request.GetInterviewListReq;
import com.cool.store.service.HyPartnerInterviewPlanService;
import com.cool.store.service.HyPartnerLineInfoService;
import com.cool.store.service.InterviewService;
import com.cool.store.utils.CoolDateUtils;
import com.cool.store.vo.InterviewDetailInfoVO;
import com.cool.store.vo.PartnerInterviewInfoVO;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -40,6 +47,7 @@ import java.util.stream.Collectors;
* @Date 2023/6/8 19:32
* @Version 1.0
*/
@Slf4j
@Service
public class HyPartnerInterviewPlanServiceImpl implements HyPartnerInterviewPlanService {
@@ -68,8 +76,15 @@ public class HyPartnerInterviewPlanServiceImpl implements HyPartnerInterviewPlan
@Resource
EnterpriseUserDAO enterpriseUserDAO;
@Autowired
private InterviewService interviewService;
@Value("${feishu.notice.link.url:null}")
private String linkUrl;
@Autowired
private ISVHttpRequest isvHttpRequest;
@Override
public List<InterviewDetailInfoVO> getInterviewPlanList(String userId,Date dateTime) {
String currentDay = DateUtil.format(dateTime, CoolDateUtils.DATE_FORMAT_DAY);
@@ -227,11 +242,28 @@ public class HyPartnerInterviewPlanServiceImpl implements HyPartnerInterviewPlan
@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);
Date startTime = new Date();
Date endTime = DateUtil.offsetMinute(startTime,30);
List<RemindInterviewMsgDTO> remindInterviewMsgDTOS = hyPartnerInterviewPlanMapper.selectRemindInterviewPlan(startTime, endTime, WorkflowStageEnum.RESERVATION.getCode(), WorkflowStatusEnum.RESERVATION_1.getCode());
if(CollectionUtils.isEmpty(remindInterviewMsgDTOS)){
return;
}
//发送消息
remindInterviewMsgDTOS.stream().forEach(interviewMsgDTO->{
try {
List<String> userIds = new ArrayList<>();
userIds.add(interviewMsgDTO.getInterviewerId());
SendCardMessageDTO sendCardMessageDTO = new SendCardMessageDTO();
sendCardMessageDTO.setUserIds(userIds);
sendCardMessageDTO.setMessageType(MessageTypeEnum.SCHEDULE_REMINDER);
sendCardMessageDTO.setMessageUrl(linkUrl);
sendCardMessageDTO.setTitle("面试预约申请");
sendCardMessageDTO.setContent(interviewService.generateFeiShuInterviewMsg(interviewMsgDTO.getPartnerName(), interviewMsgDTO.getPartnerMobile(), interviewMsgDTO.getStartTime()));
isvHttpRequest.sendFeiShuCardMessage(sendCardMessageDTO);
} catch (ApiException e) {
log.error("发送面试提醒消息失败",e);
}
});
}
/**

View File

@@ -101,10 +101,6 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
partnerLineInfoAndBaseInfoVO.setPassUserName(userInfo.getName());
partnerLineInfoAndBaseInfoVO.setPassUserMobile(userInfo.getMobile());
}
if (StringUtils.isNotEmpty(partnerLineInfoAndBaseInfoVO.getPartnerUserPhone())){
DescribePhoneNumberDTO phoneNumberAttribute = aliyunService.getPhoneNumberAttribute(partnerLineInfoAndBaseInfoVO.getPartnerUserPhone());
partnerLineInfoAndBaseInfoVO.setPhoneAddress(phoneNumberAttribute!=null? phoneNumberAttribute.getProvince() + " " + phoneNumberAttribute.getCity():"");
}
if (StringUtils.isNotEmpty(partnerLineInfoAndBaseInfoDTO.getWantShopArea())){
HyOpenAreaInfoDO hyOpenAreaInfoDO = hyOpenAreaInfoDAO.selectById(Long.valueOf(partnerLineInfoAndBaseInfoDTO.getWantShopArea()));
partnerLineInfoAndBaseInfoVO.setWantShopAreaName(hyOpenAreaInfoDO.getAreaPath().replace("/"," "));
@@ -235,9 +231,6 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
BlackListVO blackListVO = convertPartnerBlackListDTOToVo(x);
blackListVO.setCloseUserPhone(userPhoneMap.get(x.getCloseUserId()));
blackListVO.setCloseUserName(userPhoneMap.get(x.getCloseUserId()));
if (StringUtils.isNotEmpty(x.getMobile())){
blackListVO.setPhoneAddress(aliyunService.getPhoneNumberAttribute(x.getMobile()).getCity());
}
result.add(blackListVO);
});
blackListDTOPageInfo.setList(result);
@@ -452,8 +445,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
publicSeaLineListVo.setCreateTime(DateUtil.format(x.getCreateTime(),CoolDateUtils.DATE_FORMAT_SEC_2));
publicSeaLineListVo.setPartnerUserName(x.getUserName());
publicSeaLineListVo.setPartnerUserPhone(x.getMobile());
DescribePhoneNumberDTO phoneNumberAttribute = aliyunService.getPhoneNumberAttribute(x.getMobile());
publicSeaLineListVo.setPhoneAddress(phoneNumberAttribute.getCity());
publicSeaLineListVo.setPhoneAddress(x.getPhoneAddress());
publicSeaLineListVo.setWantShopArea(x.getWantShopArea());
publicSeaLineListVo.setUpdateTime(DateUtil.format(x.getUpdateTime(),CoolDateUtils.DATE_FORMAT_SEC_2));
publicSeaLineListVo.setId(x.getLineId());
@@ -709,6 +701,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
blackListVO.setCloseTime(closeTime);
blackListVO.setJoinBlackReason(partnerBlackListDTO.getJoinBlackReason());
blackListVO.setCloseUserId(partnerBlackListDTO.getCloseUserId());
blackListVO.setPhoneAddress(partnerBlackListDTO.getPhoneAddress());
blackListVO.setCloseUserPhone(partnerBlackListDTO.getCloseUserId());
return blackListVO;
}
@@ -733,6 +726,7 @@ public class HyPartnerLineInfoServiceImpl implements HyPartnerLineInfoService {
partnerLineInfoAndBaseInfoVO.setWorkflowStage(partnerLineInfoAndBaseInfoDTO.getWorkflowStage());
partnerLineInfoAndBaseInfoVO.setWorkflowStatus(partnerLineInfoAndBaseInfoDTO.getWorkflowStatus());
partnerLineInfoAndBaseInfoVO.setPassCause(partnerLineInfoAndBaseInfoDTO.getPassCause());
partnerLineInfoAndBaseInfoVO.setPhoneAddress(partnerLineInfoAndBaseInfoVO.getPhoneAddress());
partnerLineInfoAndBaseInfoVO.setLineStatus(partnerLineInfoAndBaseInfoDTO.getLineStatus());
partnerLineInfoAndBaseInfoVO.setInvestmentManagerPhone(partnerLineInfoAndBaseInfoDTO.getInvestmentManagerPhone());
partnerLineInfoAndBaseInfoVO.setPartnerUserPhone(partnerLineInfoAndBaseInfoDTO.getPartnerUserPhone());

View File

@@ -0,0 +1,45 @@
package com.cool.store.service.impl;
import com.cool.store.dao.HyPhoneLocationDAO;
import com.cool.store.dto.partner.DescribePhoneNumberDTO;
import com.cool.store.dto.wx.PhoneInfoDTO;
import com.cool.store.entity.HyPhoneLocationDO;
import com.cool.store.mapper.HyPhoneLocationMapper;
import com.cool.store.service.AliyunService;
import com.cool.store.service.HyPhoneLocationService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
/**
* @Author suzhuhong
* @Date 2023/6/30 15:04
* @Version 1.0
*/
@Service
@Slf4j
public class HyPhoneLocationServiceImpl implements HyPhoneLocationService {
@Resource
HyPhoneLocationDAO hyPhoneLocationDAO;
@Resource
AliyunService aliyunService;
@Override
public void handleHyPhoneAddress(String phoneNumber) {
long start = System.currentTimeMillis();
if (StringUtils.isEmpty(phoneNumber)){
return;
}
HyPhoneLocationDO hyPhoneLocationDO = hyPhoneLocationDAO.selectByPhoneNumber(phoneNumber);
if (hyPhoneLocationDO==null){
DescribePhoneNumberDTO phoneNumberAttribute = aliyunService.getPhoneNumberAttribute(phoneNumber);
HyPhoneLocationDO hy = new HyPhoneLocationDO();
hy.setPhoneNumber(phoneNumber);
hy.setPhoneAddress(String.format("%s %s", phoneNumberAttribute.getProvince(), phoneNumberAttribute.getCity()));
hyPhoneLocationDAO.insertSelective(hy);
}
log.info("秒:{}",(System.currentTimeMillis()-start)/1000);
}
}

View File

@@ -570,12 +570,13 @@ public class InterviewServiceImpl implements InterviewService {
// hyPartnerLineInfoService.closeOrPassFollow(request.getOperatorId(),closeFollowRequest);
// }
@Override
public String generateFeiShuInterviewMsg(String partnerName, String partnerMobile, String interviewTime){
//"您有一个【面试预约申请】待处理预约人【姓名】手机号【13xxxxxxxxx】预约面试时间【YYYY年MM月DD日 hh:mm】请及时处理】"
StringBuffer sb = new StringBuffer();
sb.append("您有一个【面试预约申请】待处理,预约人")
sb.append("您有一个【面试预约申请】待处理,预约人 ")
.append(partnerName)
.append("手机号")
.append(" 手机号 ")
.append(partnerMobile)
.append(",预约面试时间")
.append(DateUtil.format(DateUtil.parse(interviewTime), "yyyy年MM月dd日 HH:mm"));

View File

@@ -1,24 +1,26 @@
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.PartnerUserInfoService;
import com.cool.store.service.*;
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 +29,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 +50,10 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService {
HyOpenAreaInfoDAO hyOpenAreaInfoDAO;
@Resource
private RedisUtilPool redisUtilPool;
@Autowired
private LogService logService;
@Resource
HyPhoneLocationService hyPhoneLocationService;
@Override
public HyPartnerUserInfoDO selectByPartnerId(String partnerId) {
@@ -93,6 +100,11 @@ public class PartnerUserInfoServiceImpl implements PartnerUserInfoService {
if (hyPartnerUserInfoDO == null){
throw new ServiceException(ErrorCodeEnum.PARTNER_USER_NOT_EXIST);
}
//处理手机号
hyPhoneLocationService.handleHyPhoneAddress(partnerUserInfoRequest.getMobile());
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 +136,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;
}

View File

@@ -26,6 +26,11 @@ public class TRTCVideoServiceImpl implements TRTCVideoService {
@Override
public void handleVideoCallBack(VideoCallBackDTO videoCallBackDTO) {
//防重
Boolean hasVideoUrl = interviewMapper.hasVideoUrls(videoCallBackDTO.getEventInfo().getPayload().getTencentVod().getVideoUrl());
if (hasVideoUrl) {
return;
}
//将视频播放地址拼接到对应的面试信息字段中
String videoUrl = videoCallBackDTO.getEventInfo().getPayload().getTencentVod().getVideoUrl();
String roomId = videoCallBackDTO.getEventInfo().getRoomId();

View File

@@ -17,6 +17,7 @@ import com.cool.store.enums.UserPlatformTypeEnum;
import com.cool.store.exception.ServiceException;
import com.cool.store.http.WechatRest;
import com.cool.store.request.MobileUpdateRequest;
import com.cool.store.service.HyPhoneLocationService;
import com.cool.store.service.WechatMiniAppService;
import com.cool.store.utils.AesUtil;
import com.cool.store.utils.RedisUtilPool;
@@ -55,6 +56,8 @@ public class WechatMiniAppServiceImpl implements WechatMiniAppService {
HyOpenAreaInfoDAO hyOpenAreaInfoDAO;
@Resource
HyPartnerBaseInfoDAO hyPartnerBaseInfoDAO;
@Resource
HyPhoneLocationService hyPhoneLocationService;
@Value("${weixin.appId}")
private String wxAppId;
@@ -134,6 +137,8 @@ public class WechatMiniAppServiceImpl implements WechatMiniAppService {
// 获取手机号码
PhoneInfoDTO phoneInfoDTO = wechatRest.getUserPhoneNumber(mobileCode, accessToken);
if(phoneInfoDTO != null && phoneInfoDTO.getPhoneInfo() != null && StringUtils.isNotBlank(phoneInfoDTO.getPhoneInfo().getPhoneNumber())){
//处理手机号归属地
hyPhoneLocationService.handleHyPhoneAddress(phoneInfoDTO.getPhoneInfo().getPhoneNumber());
return phoneInfoDTO.getPhoneInfo().getPhoneNumber();
}
return null;
@@ -152,6 +157,8 @@ public class WechatMiniAppServiceImpl implements WechatMiniAppService {
PhoneInfoDTO phoneInfoDTO = wechatRest.getUserPhoneNumber(request.getMobileCode(), accessToken);
if(phoneInfoDTO != null && phoneInfoDTO.getPhoneInfo() != null && StringUtils.isNotBlank(phoneInfoDTO.getPhoneInfo().getPhoneNumber())){
newMobile = phoneInfoDTO.getPhoneInfo().getPhoneNumber();
//处理手机号归属地
hyPhoneLocationService.handleHyPhoneAddress(newMobile);
if(newMobile.equals(oldUserInfo.getMobile())){
return newMobile;
}