From 66a52b9c8b6d0668ff3d7c431e9e17f2c365e3e6 Mon Sep 17 00:00:00 2001
From: zhs <zhs18203887318@163.com>
Date: 星期三, 05 十一月 2025 11:01:10 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java | 168 +++++++++++++++++++++++++++++++++++++++++++++++++++----
1 files changed, 154 insertions(+), 14 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
index 6aba903..2fb4c59 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -2,6 +2,7 @@
import com.github.pagehelper.ISelect;
import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.constant.HttpStatus;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysUser;
@@ -9,15 +10,22 @@
import com.ruoyi.common.core.page.TableDataInfo;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.enums.PreachFormEnum;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.smartor.domain.*;
+import com.smartor.mapper.PatMedInhospMapper;
+import com.smartor.mapper.PatMedOuthospMapper;
import com.smartor.service.IServiceSubtaskRecordService;
import com.smartor.service.IServiceSubtaskService;
+import com.smartor.service.IServiceTaskService;
+import com.sun.org.apache.bcel.internal.generic.NEW;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
+import net.bytebuddy.implementation.bytecode.Throw;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.ObjectUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -25,6 +33,7 @@
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -43,6 +52,9 @@
private IServiceSubtaskService serviceSubtaskService;
@Autowired
+ private IServiceTaskService serviceTaskService;
+
+ @Autowired
private IServiceSubtaskRecordService serviceSubtaskRecordService;
/**
@@ -52,17 +64,24 @@
//@PreAuthorize("@ss.hasPermi('system:taskcall:list')")
@PostMapping("/patItem")
public TableDataInfo patItem(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
+ PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
List<ServiceSubtask> serviceSubtaskList = null;
+ LoginUser loginUser = getLoginUser();
+ SysUser user = loginUser.getUser();
+ serviceSubtaskVO.setOrgid(user.getOrgid());
if (serviceSubtaskVO != null) {
- PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskVO);
}
for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId());
+ serviceSubtaskRecord.setOrgid(serviceSubtask.getOrgid());
if (ObjectUtils.isNotEmpty((serviceSubtask.getTaskid())))
serviceSubtaskRecord.setTaskid(serviceSubtask.getTaskid().toString());
serviceSubtask.setServiceSubtaskRecordList(serviceSubtaskRecordService.selectServiceSubtaskRecordList(serviceSubtaskRecord));
+
+ ServiceTask serviceTask = serviceTaskService.selectServiceTaskByTaskid(serviceSubtask.getTaskid());
+ if (ObjectUtils.isNotEmpty(serviceTask)) serviceSubtask.setPreachform(serviceTask.getPreachform());
}
Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
map.put("serviceSubtaskList", serviceSubtaskList);
@@ -78,8 +97,35 @@
}
});
return getDataTable2(total, list);
-// return getDataTable(serviceSubtaskService.patItem(ivrTaskcall));
}
+
+
+ /**
+ * 瀵煎嚭鍗曚竴浠诲姟锛堥殢璁垮鏁欙級鍒楄〃
+ */
+ //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
+ @Log(title = "鍗曚竴浠诲姟锛堥殢璁垮鏁欙級", businessType = BusinessType.EXPORT)
+ @PostMapping("/patItemExport")
+ public void patItemExport(HttpServletResponse response, ServiceSubtaskVO serviceSubtaskVO) {
+ List<ServiceSubtask> serviceSubtaskList = null;
+ if (serviceSubtaskVO != null) {
+ if (serviceSubtaskVO.getPageNum() != null && serviceSubtaskVO.getPageSize() != null)
+ PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
+ serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskVO);
+ }
+ List<ServiceSubtaskExprot> serviceSubtaskExprots = null;
+ if (!CollectionUtils.isEmpty(serviceSubtaskList)) {
+ serviceSubtaskExprots = DtoConversionUtils.sourceToTarget(serviceSubtaskList, ServiceSubtaskExprot.class);
+ for (ServiceSubtaskExprot serviceSubtaskExprot : serviceSubtaskExprots) {
+ String pf = PreachFormEnum.getDescByCode(serviceSubtaskExprot.getPreachform());
+ serviceSubtaskExprot.setPreachform(pf);
+ }
+
+ }
+ ExcelUtil<ServiceSubtaskExprot> util = new ExcelUtil<ServiceSubtaskExprot>(ServiceSubtaskExprot.class);
+ util.exportExcel(response, serviceSubtaskExprots, "鎮h�呴殢璁夸俊鎭〃鍗�");
+ }
+
/**
* 鏌ヨ鎮h�呴殢璁夸俊鎭�
@@ -129,6 +175,31 @@
}
/**
+ * 闅忚鏁版嵁鏌ヨ
+ */
+ @Log(title = "闅忚鏁版嵁鏌ヨ", businessType = BusinessType.EXPORT)
+ @PostMapping("/querySubtaskList")
+ public AjaxResult querySubtaskList(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
+ PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
+ serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO);
+ return success(serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO));
+ }
+
+
+ /**
+ * 鍐嶆闅忚鏁版嵁鏌ヨ
+ */
+ //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
+ @Log(title = "鍐嶆闅忚鏁版嵁鏌ヨ", businessType = BusinessType.EXPORT)
+ @PostMapping("/querySubtaskListAgain")
+ public TableDataInfo querySubtaskListAgain(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
+ PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
+ serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskVO);
+ return getDataTable(serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskVO));
+ }
+
+
+ /**
* 鑾峰彇鍗曚竴浠诲姟锛堥殢璁匡級璇︾粏淇℃伅
*/
//@PreAuthorize("@ss.hasPermi('system:taskcall:query')")
@@ -145,10 +216,11 @@
@Log(title = "鍗曚竴浠诲姟锛堥殢璁匡級", businessType = BusinessType.INSERT)
@PostMapping("/insertOrUpdateTask")
public AjaxResult insertOrUpdateHeTask(@RequestBody ServiceTaskVO ivrTaskVO) {
- log.error("insertOrUpdateHeTask鐨勫叆鍙備负锛歿}", ivrTaskVO);
+ log.info("insertOrUpdateHeTask鐨勫叆鍙備负锛歿}", ivrTaskVO);
LoginUser loginUser = getLoginUser();
SysUser user = loginUser.getUser();
ivrTaskVO.setCreateBy(user.getNickName());
+ ivrTaskVO.setUpdateBy(user.getNickName());
ivrTaskVO.setOrgid(user.getOrgid());
return success(serviceSubtaskService.insertOrUpdateTask(ivrTaskVO));
}
@@ -156,6 +228,7 @@
@ApiOperation("淇敼瀛愪换鍔�")
@PostMapping("/update")
public AjaxResult update(@RequestBody ServiceSubtask serviceSubtask) {
+ serviceSubtask.setUpdateBy(getLoginUser().getUser().getNickName());
return toAjax(serviceSubtaskService.updateServiceSubtask(serviceSubtask));
}
@@ -165,6 +238,14 @@
SysUser user = getLoginUser().getUser();
if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setOrgid(user.getOrgid());
return toAjax(serviceSubtaskService.insertServiceSubtask(serviceSubtask));
+ }
+
+ @ApiOperation("鎮h�呭啀娆¢殢璁�")
+ @PostMapping("/addSubTaskAgain")
+ public AjaxResult addSubTaskAgain(@RequestBody ServiceSubtask serviceSubtask) {
+ SysUser user = getLoginUser().getUser();
+ if (ObjectUtils.isNotEmpty(user)) serviceSubtask.setOrgid(user.getOrgid());
+ return success(serviceSubtaskService.addSubTaskAgain(serviceSubtask));
}
/**
@@ -192,9 +273,7 @@
@ApiOperation("鐢佃瘽ASR閫氳瘽鍥炶皟(闆ㄧ划)")
@PostMapping("/phoneCallBackYQ")
public PhoneCallBackYQVO phoneCallBackYQ(@RequestBody PhoneCallReqYQVO phoneCallReqYQVO) {
- log.error("鐢佃瘽ASR閫氳瘽鍥炶皟(闆ㄧ划) 锛焮}", phoneCallReqYQVO);
-// SysUser user = getLoginUser().getUser();
-// phoneCallReqYQVO.setOrgid(user.getOrgid());
+ log.info("鐢佃瘽ASR閫氳瘽鍥炶皟(闆ㄧ划) 锛焮}", phoneCallReqYQVO);
PhoneCallBackYQVO phoneCallBackYQVO = serviceSubtaskService.phoneCallBackYQ(phoneCallReqYQVO);
return phoneCallBackYQVO;
}
@@ -205,11 +284,9 @@
@ApiOperation("鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划)")
@PostMapping("/taskPull")
public List<PullTaskVO> taskPull() {
- log.error("鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划)");
+ log.info("鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划)");
List<PullTaskVO> pullTaskVOList = serviceSubtaskService.taskPull();
-// List<PullTaskVO> pullTaskVOList = new ArrayList<>();
-
- log.error("鐢佃瘽浠诲姟鎷夊彇(闆ㄧ划):{}", pullTaskVOList);
+ log.info("鐢佃瘽浠诲姟鎷夊彇鏁版嵁(闆ㄧ划):{}", pullTaskVOList);
return pullTaskVOList;
}
@@ -239,10 +316,7 @@
@ApiOperation("閫氳瘽璁板綍鍥炶皟(闆ㄧ划)")
@PostMapping("/recordAccept")
public AjaxResult recordAccept(@RequestBody PhoneCallRecordVO phoneCallRecordVO) {
- log.error("閫氳瘽璁板綍鍥炶皟(闆ㄧ划):{}", phoneCallRecordVO);
-// return toAjax(serviceSubtaskService.saveQuestionAnswerPhone(serviceSubTaskDetailReq));
-// SysUser user = getLoginUser().getUser();
-// phoneCallRecordVO.setOrgid(user.getOrgid());
+ log.info("閫氳瘽璁板綍鍥炶皟(闆ㄧ划):{}", phoneCallRecordVO);
serviceSubtaskService.recordAccept(phoneCallRecordVO);
return success();
}
@@ -268,4 +342,70 @@
return success(serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq));
}
+ /**
+ * 鑾峰彇闅忚缁熻姣斾緥
+ */
+ @ApiOperation("鑾峰彇闅忚婊℃剰搴︾粺璁�")
+ @PostMapping("/getSfStatisticsJoy")
+ public AjaxResult getSfStatisticsJoy(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) {
+ if (CollectionUtils.isEmpty(serviceSubtaskCountReq.getServiceType())) {
+ return error("鏈嶅姟绫诲瀷涓嶈兘涓虹┖");
+ }
+ return success(serviceSubtaskService.getSfStatisticsJoy(serviceSubtaskCountReq));
+ }
+
+ /**
+ * 闅忚缁熻瀵煎嚭
+ */
+ //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
+ @Log(title = "闅忚缁熻瀵煎嚭锛�", businessType = BusinessType.EXPORT)
+ @PostMapping("/getSfStatisticsExport")
+ public void export(HttpServletResponse response, ServiceSubtaskCountReq serviceSubtaskCountReq) {
+ List<ServiceSubtaskStatistic> sfStatistics = serviceSubtaskService.getSfStatistics(serviceSubtaskCountReq);
+ ExcelUtil<ServiceSubtaskStatistic> util = new ExcelUtil<ServiceSubtaskStatistic>(ServiceSubtaskStatistic.class);
+ util.exportExcel(response, sfStatistics, "闅忚缁熻瀵煎嚭");
+ }
+
+ /**
+ * 闅忚缁熻瀵煎嚭
+ */
+ @ApiOperation("鏈嶅姟缁熻鏌ヨ-鎸夋椂闂寸淮搴︾粺璁″嚭闄�/闂ㄨ瘖闅忚鏁版嵁")
+ @PostMapping("/getServiceStatistics")
+ public AjaxResult getServiceStatistics(@RequestBody ServiceStatisticsRequest serviceStatisticsRequest) {
+ SysUser user = getLoginUser().getUser();
+ serviceStatisticsRequest.setOrgid(user.getOrgid());
+ List<ServiceStatisticsResponse> serviceStatistics = serviceSubtaskService.getServiceStatistics(serviceStatisticsRequest);
+ return success(serviceStatistics);
+ }
+
+
+ /**
+ * 鑾峰彇闅忚缁熻姣斾緥
+ */
+ @ApiOperation("鑾峰彇闅忚婊℃剰搴︽槑缁�")
+ @PostMapping("/getSfStatisticsJoydetails")
+ public AjaxResult getSfStatisticsJoydetails(@RequestBody ServiceSubtaskCountReq serviceSubtaskCountReq) {
+ if (serviceSubtaskCountReq.getLeavehospitaldistrictcodes().size() == 0 && serviceSubtaskCountReq.getDeptcodes().size() == 0) {
+ return error("绉戝鎴栫梾鍖轰笉鑳戒负绌�");
+ }
+ return success(serviceSubtaskService.getSfStatisticsJoydetails(serviceSubtaskCountReq));
+ }
+
+
+ /**
+ * 鍙戦�佺煭淇℃ā鏉�
+ */
+ @ApiOperation("鍙戦�佺煭淇℃ā鏉�")
+ @PostMapping("/sendMsgTemplate")
+ public Map<String, Object> sendMsgTemplate(@RequestBody List<PatArchiveSrmVO> patArchiveSrmVOS) {
+ if (CollectionUtils.isEmpty(patArchiveSrmVOS)) {
+ throw new BaseException("鎮h�呬俊鎭笉鑳戒负绌�");
+ }
+ List<PatArchiveSrmVO> pasList = serviceSubtaskService.sendMsgTemplate(patArchiveSrmVOS);
+ Map<String, Object> map = new HashMap<>();
+ map.put("code", HttpStatus.SUCCESS);
+ map.put("fail", CollectionUtils.isEmpty(pasList) ? null : pasList);
+ return map;
+ }
+
}
--
Gitblit v1.9.3