请求通话前判断是否被冻结

master
wjt 1 year ago
parent 50f9fc8c2a
commit c61f3b5ec8

@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.date.DateUnit; import cn.hutool.core.date.DateUnit;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import com.baiye.common.CommonLog;
import com.baiye.constant.DefaultNumberConstants; import com.baiye.constant.DefaultNumberConstants;
import com.baiye.feign.SourceClueClient; import com.baiye.feign.SourceClueClient;
import com.baiye.modules.agent.repository.ChannelCustomRepository; import com.baiye.modules.agent.repository.ChannelCustomRepository;
@ -111,6 +112,7 @@ public class ClueBoostServiceImpl implements ClueBoostService {
// 修改线索为冻结 // 修改线索为冻结
sourceClueClient.updateTalkClueFreeze(clueBoost.getClueId(), true); sourceClueClient.updateTalkClueFreeze(clueBoost.getClueId(), true);
clueBoostRepository.save(clueBoostNew); clueBoostRepository.save(clueBoostNew);
CommonLog.info("赔付线索.id=" + clueBoost.getClueId());
redisUtils.del(KEY + clueBoostDTO.getClueId()); redisUtils.del(KEY + clueBoostDTO.getClueId());
return; return;
} }
@ -123,5 +125,4 @@ public class ClueBoostServiceImpl implements ClueBoostService {
redisUtils.set(KEY + clueBoostDTO.getClueId(), clueBoostDTO, 24, TimeUnit.HOURS); redisUtils.set(KEY + clueBoostDTO.getClueId(), clueBoostDTO, 24, TimeUnit.HOURS);
} }
} }
}
}

@ -211,9 +211,9 @@ public class TelephoneCallServiceImpl implements TelephoneCallService {
CommonLog.error("未获取到号码"); CommonLog.error("未获取到号码");
return CommonResponse.createByErrorMessage("未获取到号码"); return CommonResponse.createByErrorMessage("未获取到号码");
} }
if (body.getMemberId() == null) { if (body.getMemberId() == null || body.getIsFreeze()) {
CommonLog.error("线索未分配"); CommonLog.error("线索异常");
return CommonResponse.createByErrorMessage("线索未分配,请刷新后重试"); return CommonResponse.createByErrorMessage("线索异常,请刷新后重试");
} }
telephoneCallReqDTO.setTelB("474" + telephoneCallReqDTO.getDisplay() + body.getNid()); telephoneCallReqDTO.setTelB("474" + telephoneCallReqDTO.getDisplay() + body.getNid());
//请求呼叫 //请求呼叫

@ -1,17 +1,13 @@
package com.baiye.model.dto; package com.baiye.model.dto;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.*;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
/** /**
* @author wjt * @author wjt
* @date 2023/5/19 * @date 2023/5/19
*/ */
@Getter @Data
@Setter
@AllArgsConstructor @AllArgsConstructor
@NoArgsConstructor @NoArgsConstructor
public class CallClueDTO { public class CallClueDTO {
@ -21,4 +17,7 @@ public class CallClueDTO {
@ApiModelProperty(value = "所属组员id") @ApiModelProperty(value = "所属组员id")
private Long memberId; private Long memberId;
@ApiModelProperty(value = "是否冻结")
private Boolean isFreeze;
} }

@ -1,6 +1,7 @@
package com.baiye.module.controller; package com.baiye.module.controller;
import com.baiye.annotation.Inner; import com.baiye.annotation.Inner;
import com.baiye.annotation.Log;
import com.baiye.http.CommonResponse; import com.baiye.http.CommonResponse;
import com.baiye.model.dto.*; import com.baiye.model.dto.*;
import com.baiye.model.vo.ResSourceLabel; import com.baiye.model.vo.ResSourceLabel;
@ -212,6 +213,7 @@ public class ClueController {
@ApiOperation("修改拓客和投流线索的冻结状态") @ApiOperation("修改拓客和投流线索的冻结状态")
@GetMapping("/updateTalkClueFreeze") @GetMapping("/updateTalkClueFreeze")
@Inner(value = false) @Inner(value = false)
@Log("修改线索的冻结状态")
public void updateTalkClueFreeze(@RequestParam("clueId") Long clueId, @RequestParam("isFreeze") Boolean isFreeze) { public void updateTalkClueFreeze(@RequestParam("clueId") Long clueId, @RequestParam("isFreeze") Boolean isFreeze) {
clueService.updateTalkClueFreeze(clueId, isFreeze); clueService.updateTalkClueFreeze(clueId, isFreeze);
} }

@ -568,10 +568,10 @@ public class ClueJpa {
public CallClueDTO queryDetailsByClueType(Long clueId, Integer clueType) { public CallClueDTO queryDetailsByClueType(Long clueId, Integer clueType) {
StringBuilder sql = null; StringBuilder sql = null;
if (Arrays.asList(ClueTypeConstants.SCREEN_TYPE).contains(clueType)) { if (Arrays.asList(ClueTypeConstants.SCREEN_TYPE).contains(clueType)) {
sql = new StringBuilder("select tc.nid as nid ,tcm.member_id as memberId " + sql = new StringBuilder("select tc.nid as nid ,tcm.member_id as memberId " +
"from tb_clue_middle as tcm left join tb_clue as tc on tcm.clue_id =tc.id where tc.id =:clueId "); "from tb_clue_middle as tcm left join tb_clue as tc on tcm.clue_id =tc.id where tc.id =:clueId ");
} else if (Arrays.asList(ClueTypeConstants.TOKER_TYPE).contains(clueType)) { } else if (Arrays.asList(ClueTypeConstants.TOKER_TYPE).contains(clueType)) {
sql = new StringBuilder("select tc.nid as nid ,tcm.member_id as memberId " + sql = new StringBuilder("select tc.nid as nid ,tcm.member_id as memberId ,tcm.is_freeze as isFreeze " +
"from tb_clue_talk as tcm left join tb_clue as tc on tcm.clue_id =tc.id where tc.id =:clueId "); "from tb_clue_talk as tcm left join tb_clue as tc on tcm.clue_id =tc.id where tc.id =:clueId ");
} }
assert sql != null; assert sql != null;
@ -587,6 +587,11 @@ public class ClueJpa {
clueDto.setNid(nid); clueDto.setNid(nid);
BigInteger memberId = (BigInteger) row.get("memberId"); BigInteger memberId = (BigInteger) row.get("memberId");
clueDto.setMemberId(memberId.longValue()); clueDto.setMemberId(memberId.longValue());
if (Arrays.asList(ClueTypeConstants.TOKER_TYPE).contains(clueType)) {
clueDto.setIsFreeze((Boolean) row.get("isFreeze"));
} else {
clueDto.setIsFreeze(false);
}
return clueDto; return clueDto;
} }
return null; return null;

@ -5,6 +5,7 @@ import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baiye.common.CommonLog;
import com.baiye.constant.*; import com.baiye.constant.*;
import com.baiye.enums.ClueStageEnum; import com.baiye.enums.ClueStageEnum;
import com.baiye.exception.BadRequestException; import com.baiye.exception.BadRequestException;
@ -960,6 +961,7 @@ public class ClueServiceImpl implements ClueService {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void updateTalkClueFreeze(Long clueId, Boolean isFreeze) { public void updateTalkClueFreeze(Long clueId, Boolean isFreeze) {
CommonLog.info("赔付线索改为冻结.id=" + clueId);
clueTalkRepository.updateTalkClueFreeze(clueId, isFreeze); clueTalkRepository.updateTalkClueFreeze(clueId, isFreeze);
} }

Loading…
Cancel
Save