From c4f9c032d2a4fcd57d59846bc208d7d225ba5aa8 Mon Sep 17 00:00:00 2001
From: zhs <zhs18203887318@163.com>
Date: 星期六, 16 八月 2025 15:28:48 +0800
Subject: [PATCH] 0816 zhs
---
ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java | 17 +++++++-
smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java | 9 ++++
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 36 ++++++++++++++----
smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java | 4 ++
4 files changed, 54 insertions(+), 12 deletions(-)
diff --git a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
index 4bb1950..51f383f 100644
--- a/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
+++ b/ruoyi-quartz/src/main/java/com/ruoyi/quartz/task/RyTask.java
@@ -352,10 +352,21 @@
//涓芥按鏈夌殑鍖婚櫌杩樻病娉曞仛闀挎湡浠诲姟闅忚
List<ServiceSubtask> subtaskList2 = new ArrayList<>();
if (visitHosp == 2) {
- for (ServiceSubtask serviceSubtask : subtaskList) {
- Boolean b = VisitSendStateEnum.getDescByCode(serviceSubtask.getOrgid());
- if (b) subtaskList2.add(serviceSubtask);
+ try {
+ for (ServiceSubtask serviceSubtask : subtaskList) {
+ Boolean b = VisitSendStateEnum.getDescByCode(serviceSubtask.getOrgid());
+
+ if (b) subtaskList2.add(serviceSubtask);
+ }
+ } catch (Exception e) {
+ log.error("-------闀挎湡浠诲姟寮傚父涓猴細", e);
+ continue;
}
+// for (ServiceSubtask serviceSubtask : subtaskList) {
+// Boolean b = VisitSendStateEnum.getDescByCode(serviceSubtask.getOrgid());
+//
+// if (b) subtaskList2.add(serviceSubtask);
+// }
subtaskList = subtaskList2;
}
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java
index eccfc8b..74f92f7 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskCountReq.java
@@ -47,4 +47,8 @@
private String visitDeptCode;
private String visitDeptName;
+
+ @ApiModelProperty(value = "鍖荤敓缂栫爜")
+ private String drcode;
+
}
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java
index e3b6883..36ea120 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceSubtaskStatistic.java
@@ -161,9 +161,9 @@
@ApiModelProperty(value = "浜屾鐭俊")
@Excel(name = " 浜屾鐭俊 ")
private Long smsAgain = 0L;
+ @Excel(name = " 浜屾寰俊 ")
@ApiModelProperty(value = "浜屾寰俊")
- @Excel(name = " 浜屾寰俊 ")
private Long weChatAgain = 0L;
@ApiModelProperty(value = "缁撴灉寮傚父")
@@ -172,4 +172,11 @@
@ApiModelProperty(value = "绉戝鐥呭尯")
private Integer statisticaltype;
+
+
+ @ApiModelProperty(value = "鍖荤敓缂栫爜")
+ private String drcode;
+
+ @ApiModelProperty(value = "鍖荤敓濮撳悕")
+ private String drname;
}
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index bc69fb7..010442c 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -2227,14 +2227,25 @@
public List<ServiceSubtaskStatistic> getSfStatistics(ServiceSubtaskCountReq serviceSubtaskCountReq) {
log.error("getSfStatistics鐨勫叆鍙備负锛歿}", serviceSubtaskCountReq);
List<ServiceSubtaskStatistic> serviceSubtaskStatistics = new ArrayList<>();
- //Map<String, List<ServiceSubtask>> collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeavehospitaldistrictname()).orElse("Unknown")));
+ List<ServiceSubtask> rawData = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq);
+
+ // 鏍规嵁鏉′欢杩涜鍒嗙粍
Map<String, List<ServiceSubtask>> collect = new HashMap<>();
+
if (serviceSubtaskCountReq.getLeavehospitaldistrictcodes() != null && serviceSubtaskCountReq.getLeavehospitaldistrictcodes().size() > 0) {
- collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeavehospitaldistrictname()).orElse("Unknown")));
-
+ if (serviceSubtaskCountReq.getDrcode() != null && !serviceSubtaskCountReq.getDrcode().isEmpty()) {
+ collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDrname()).orElse("Unknown")));
+ } else {
+ collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getLeavehospitaldistrictname()).orElse("Unknown")));
+ }
} else if (serviceSubtaskCountReq.getDeptcodes() != null && serviceSubtaskCountReq.getDeptcodes().size() > 0) {
- collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDeptname()).orElse("Unknown")));
+ if (serviceSubtaskCountReq.getDrcode() != null && !serviceSubtaskCountReq.getDrcode().isEmpty()) {
+ collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDrname()).orElse("Unknown")));
+ } else {
+ collect = serviceSubtaskMapper.getSfStatistics(serviceSubtaskCountReq).stream().collect(Collectors.groupingBy(subtask -> Optional.ofNullable(subtask.getDeptname()).orElse("Unknown")));
+ }
}
+
for (List<ServiceSubtask> serviceSubtaskList : collect.values()) {
if (CollectionUtils.isEmpty(serviceSubtaskList)) {
continue;
@@ -2244,11 +2255,18 @@
//鍙婃椂鐜�
ServiceSubtask ss = new ServiceSubtask();
ss.setOrgid(serviceSubtaskList.get(0).getOrgid());
- if (CollectionUtils.isNotEmpty(serviceSubtaskCountReq.getLeavehospitaldistrictcodes())) {
- ss.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
- } else {
- ss.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+
+ // 濡傛灉鏈夊尰鐢熺紪鐮侊紝璁剧疆鍖荤敓缂栫爜鐢ㄤ簬鍙婃椂鐜囨煡璇�
+ if (serviceSubtaskCountReq.getDrcode() != null && !serviceSubtaskCountReq.getDrcode().isEmpty()) {
+ ss.setDrcode(serviceSubtaskList.get(0).getDrcode());
+ }else {
+ if (CollectionUtils.isNotEmpty(serviceSubtaskCountReq.getLeavehospitaldistrictcodes())) {
+ ss.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
+ } else if (CollectionUtils.isNotEmpty(serviceSubtaskCountReq.getDeptcodes())) {
+ ss.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
+ }
}
+
ss.setStarttime(serviceSubtaskCountReq.getStartTime());
ss.setEndtime(serviceSubtaskCountReq.getEndTime());
if (serviceSubtaskCountReq.getEndTime() != null && new Date().before(serviceSubtaskCountReq.getEndTime())) {
@@ -2272,6 +2290,8 @@
serviceSubtaskStatistic.setDeptcode(serviceSubtaskList.get(0).getDeptcode());
serviceSubtaskStatistic.setLeavehospitaldistrictname(serviceSubtaskList.get(0).getLeavehospitaldistrictname());
serviceSubtaskStatistic.setLeavehospitaldistrictcode(serviceSubtaskList.get(0).getLeavehospitaldistrictcode());
+ serviceSubtaskStatistic.setDrcode(serviceSubtaskList.get(0).getDrcode());
+ serviceSubtaskStatistic.setDrname(serviceSubtaskList.get(0).getDrname());
//鍑洪櫌浜烘
serviceSubtaskStatistic.setDischargeCount(serviceSubtaskList.size());
for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
--
Gitblit v1.9.3