From 93aa8cd577e55086bcbb14130baeabde8a507d9d Mon Sep 17 00:00:00 2001 From: yangzhe123 <2824096059@qq.com> Date: Wed, 23 Jul 2025 17:14:40 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E9=A2=84=E8=AD=A6=E7=9A=84?= =?UTF-8?q?=E6=89=B9=E9=87=8F=E5=85=B3=E9=97=AD=E3=80=81=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=EF=BC=88=E6=9F=A5=E5=87=BA?= =?UTF-8?q?=E6=89=80=E6=9C=89=E6=9C=AA=E6=8B=A8=E9=80=9A=E7=94=B5=E8=AF=9D?= =?UTF-8?q?=E7=9A=84=E6=8A=A5=E8=AD=A6=E4=BF=A1=E6=81=AF=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../whdc/controller/AutoCallController.java | 35 ++++++++++++++ .../java/com/whdc/model/dto/CallPutDto.java | 11 +++++ .../com/whdc/model/entity/WarnCallMap.java | 2 +- .../com/whdc/service/AutoCallApiService.java | 46 +++++++++++++++++++ .../com/whdc/service/AutoCallTaskService.java | 14 ++++++ 5 files changed, 107 insertions(+), 1 deletion(-) create mode 100644 src/main/java/com/whdc/model/dto/CallPutDto.java diff --git a/src/main/java/com/whdc/controller/AutoCallController.java b/src/main/java/com/whdc/controller/AutoCallController.java index 51c6944..dff6bfb 100644 --- a/src/main/java/com/whdc/controller/AutoCallController.java +++ b/src/main/java/com/whdc/controller/AutoCallController.java @@ -6,6 +6,7 @@ import com.itextpdf.io.font.PdfEncodings; import com.itextpdf.kernel.font.PdfFont; import com.itextpdf.kernel.font.PdfFontFactory; import com.whdc.model.dto.AutoCallDto; +import com.whdc.model.dto.CallPutDto; import com.whdc.model.entity.AutoCallPerson; import com.whdc.model.entity.AutoCallTask; import com.whdc.model.entity.WarnCallMap; @@ -72,6 +73,24 @@ public class AutoCallController { return ResultJson.ok(autoCallApiService.page(dto)); } + /** + * 查询所有未接通的数据 + * @return + */ + @GetMapping("/listCallIsNotPass") + public ResultJson> listCallIsNotPass() { + return ResultJson.ok(autoCallApiService.listCallIsNotPass()); + } + + /** + * 分页查询所有未接通的数据 + * @return + */ + @GetMapping("/listCallIsNotPassPage") + public ResultJson> listCallIsNotPassPage(@RequestBody AutoCallDto dto) { + return ResultJson.ok(autoCallApiService.listCallIsNotPassPage(dto)); + } + @PostMapping("/page2") public ResultJson> page2(@RequestBody AutoCallDto dto) { return ResultJson.ok(autoCallApiService.page2(dto)); @@ -93,12 +112,28 @@ public class AutoCallController { return ResultJson.ok(true); } + /** + * 根据ID关闭预警 + * @param taskId + * @return + */ @GetMapping("/setCallIsPut") public ResultJson setCallIsPut(@RequestParam("taskId") Integer taskId) { autoCallTaskService.setCallIsPut(taskId); return ResultJson.ok(true); } + /** + * 预警的批量关闭 + * @param dto + * @return + */ + @PostMapping("/setCallIsPutList") + public ResultJson setCallIsPutList(@RequestBody CallPutDto dto) { + autoCallTaskService.setCallIsPutList(dto); + return ResultJson.ok(true); + } + @PostMapping("/exportPdf") public void exportPDF(@RequestBody AutoCallDto dto, HttpServletResponse response, diff --git a/src/main/java/com/whdc/model/dto/CallPutDto.java b/src/main/java/com/whdc/model/dto/CallPutDto.java new file mode 100644 index 0000000..9981214 --- /dev/null +++ b/src/main/java/com/whdc/model/dto/CallPutDto.java @@ -0,0 +1,11 @@ +package com.whdc.model.dto; + + +import lombok.Data; + +import java.util.List; + +@Data +public class CallPutDto { + List taskIds; +} diff --git a/src/main/java/com/whdc/model/entity/WarnCallMap.java b/src/main/java/com/whdc/model/entity/WarnCallMap.java index 2f478ee..7b63acc 100644 --- a/src/main/java/com/whdc/model/entity/WarnCallMap.java +++ b/src/main/java/com/whdc/model/entity/WarnCallMap.java @@ -44,7 +44,7 @@ public class WarnCallMap { @TableField(value = "cust_name") private String custName; //联系人 @TableField(value = "call_is_put") - private Integer callIsPut; //0:接通,1:已接通, default 0 + private Integer callIsPut; //0:未接通,1:已接通, default 0 @TableField(value = "called") private Integer called; //0:未拨打,1:已拨打, default 0 @TableField(value = "err_step") diff --git a/src/main/java/com/whdc/service/AutoCallApiService.java b/src/main/java/com/whdc/service/AutoCallApiService.java index e0d99c2..6994bbc 100644 --- a/src/main/java/com/whdc/service/AutoCallApiService.java +++ b/src/main/java/com/whdc/service/AutoCallApiService.java @@ -19,12 +19,14 @@ import com.itextpdf.layout.properties.TextAlignment; import com.itextpdf.layout.properties.UnitValue; import com.whdc.mapper.*; import com.whdc.model.dto.AutoCallDto; +import com.whdc.model.dto.FindPageDto; import com.whdc.model.entity.AutoCall; import com.whdc.model.entity.AutoCallPerson; import com.whdc.model.entity.AutoCallTask; import com.whdc.model.entity.WarnCallMap; import com.whdc.utils.DateUtils; import lombok.extern.slf4j.Slf4j; +import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; @@ -406,4 +408,48 @@ private void addTableHeader(Table table) { // 无法识别的类型直接返回字符串 return timeObj.toString(); } + + public List listCallIsNotPass() { + QueryWrapper query = new QueryWrapper() + .orderByDesc("id"); + query.in("status", + AutoCallTask.STATUS_ALL_FAIL, + AutoCallTask.STATUS_SHOULD_GENERATE, + AutoCallTask.STATUS_CANCELLED, + AutoCallTask.STATUS_GENERATED + ); + List autoCallTasks = taskMapper.selectList(query); + for (AutoCallTask task : autoCallTasks) { + Integer taskId = task.getId(); + List autoCallPeople = personMapper.selectList( + new QueryWrapper().eq("task_id",taskId) + ); + task.setCallList(autoCallPeople); + } + return autoCallTasks; + } + + public Page listCallIsNotPassPage(AutoCallDto dto) { + QueryWrapper query = new QueryWrapper() + .orderByDesc("id"); + query.in("status", + AutoCallTask.STATUS_ALL_FAIL, + AutoCallTask.STATUS_SHOULD_GENERATE, + AutoCallTask.STATUS_CANCELLED, + AutoCallTask.STATUS_GENERATED + ); + Page pageParam = dto.getPage().getPage(); + Page page = taskMapper.selectPage(pageParam, query); + List records = page.getRecords(); + if(records.size() > 0){ + for (AutoCallTask task : records) { + Integer taskId = task.getId(); + List autoCallPeople = personMapper.selectList( + new QueryWrapper().eq("task_id",taskId) + ); + task.setCallList(autoCallPeople); + } + } + return page; + } } diff --git a/src/main/java/com/whdc/service/AutoCallTaskService.java b/src/main/java/com/whdc/service/AutoCallTaskService.java index 3209006..508ecef 100644 --- a/src/main/java/com/whdc/service/AutoCallTaskService.java +++ b/src/main/java/com/whdc/service/AutoCallTaskService.java @@ -1,7 +1,9 @@ package com.whdc.service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.whdc.mapper.*; +import com.whdc.model.dto.CallPutDto; import com.whdc.model.entity.*; import com.whdc.model.entity.autocall.AICCCallRespDetail; import com.whdc.model.entity.autocall.AICCCallRespWrapper; @@ -491,4 +493,16 @@ public class AutoCallTaskService { private List listWarningResponderByCnnmAndLevelOrderByLevelAsc(String cnnm, List levels) { return warningResponderMapper.listByCnnmAndLevelOrderByLevelAsc(cnnm, levels); } + + @Transactional + public void setCallIsPutList(CallPutDto dto) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.in(WarnCallMap::getId,dto.getTaskIds()); + List warnCallMaps = warnCallMapMapper.selectList(queryWrapper); + for (WarnCallMap warnCallMap : warnCallMaps) { + warnCallMap.setCalled(1);//设置为已接通 + warnCallMap.setCallIsPut(1); + warnCallMapMapper.updateById(warnCallMap); + } + } }