From 56e6e579618a13221e56cd49e72c9ac0904da95c Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期四, 06 十一月 2025 14:01:56 +0800
Subject: [PATCH] 代码提交
---
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 76 +++++++++++++++++++++++++++++---------
1 files changed, 58 insertions(+), 18 deletions(-)
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 a24a473..c82b7cf 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -251,8 +251,6 @@
@Override
public List<ServiceSubtask> patItem(ServiceSubtaskVO serviceSubtaskVO) {
List<ServiceSubtask> selectServiceSubtaskList = this.selectServiceSubtaskList(serviceSubtaskVO);
- //鏍规嵁鍑洪櫌 鏃堕棿鍊掑簭
-// List<ServiceSubtask> sortedServiceSubtaskList = selectServiceSubtaskList.stream().sorted(Comparator.comparing(ServiceSubtask::getEndtime).reversed()).collect(Collectors.toList());
return selectServiceSubtaskList;
}
@@ -269,6 +267,7 @@
@Override
public Map<String, Object> patItemCount(ServiceSubtaskVO serviceSubtaskVO) {
+ serviceSubtaskVO.setSendstate(null);
serviceSubtaskVO.setPageSize(99999999);
serviceSubtaskVO.setPageNum(1);
List<ServiceSubtask> selectServiceSubtaskList = this.selectServiceSubtaskList(serviceSubtaskVO);
@@ -278,18 +277,15 @@
Integer yc = 0;
Integer fssb = 0;
Integer yfs = 0;
- Integer xj = 0;
- Integer dfs = 0;
- Integer ywc = 0;
- Integer ywc2 = 0;
+ Integer blq = 0;
+ Integer dsf = 0;
for (ServiceSubtask serviceSubtask : selectServiceSubtaskList) {
if (serviceSubtask.getSendstate() == 4L) wzx = wzx + 1;
else if (serviceSubtask.getSendstate() != 4L) ysf = ysf + 1;
if (serviceSubtask.getSendstate() == 5L) fssb = fssb + 1;
- if (serviceSubtask.getSendstate() == 3L) yfs = yfs + 1;
- if (serviceSubtask.getSendstate() == 1L) xj = xj + 1;
- if (serviceSubtask.getSendstate() == 2L) dfs = dfs + 1;
- if (serviceSubtask.getSendstate() == 6L) ywc = ywc + 1;
+ if (serviceSubtask.getSendstate() >= 3L || serviceSubtask.getSendstate() == 1L) yfs = yfs + 1;
+ if (serviceSubtask.getSendstate() == 2L) dsf = dsf + 1;
+ if (serviceSubtask.getSendstate() == 1L) blq = blq + 1;
if (StringUtils.isNotEmpty(serviceSubtask.getExcep()) && serviceSubtask.getExcep().equals("1")) yc = yc + 1;
}
map.put("wzx", wzx);
@@ -297,10 +293,9 @@
map.put("yc", yc);
map.put("fssb", fssb);
map.put("yfs", yfs);
- map.put("xj", xj);
- map.put("dfs", dfs);
- map.put("ywc", ywc);
- map.put("yfs2", yfs + ywc);
+ map.put("blq", blq);
+ map.put("dsf", dsf);
+
return map;
}
@@ -444,6 +439,19 @@
return map;
}
+ //鑾峰彇闅忚鏃堕棿
+ Date visitTime = null;
+ List<TaskSendTimeVO> sendTimeslot = serviceTaskVO.getSendTimeslot();
+ if (CollectionUtils.isNotEmpty(sendTimeslot) && sendTimeslot.size() > 0) {
+ String dateString = sendTimeslot.get(0).getBegantime();
+ SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+ try {
+ visitTime = format.parse(dateString);
+ } catch (Exception e) {
+ e.printStackTrace();
+ }
+ }
+
//灏嗕换鍔′俊鎭斁鍒版湇鍔¤〃涓�
ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceTaskVO, ServiceSubtask.class);
serviceSubtask.setTaskid(serviceTask.getTaskid().longValue());
@@ -455,13 +463,12 @@
//灏嗕换鍔′俊鎭柊澧炲埌闅忚鏈嶅姟琛ㄤ腑
serviceSubtask.setSendname(patTaskRelevance.getName());
serviceSubtask.setAge(patTaskRelevance.getAge());
-// serviceSubtask.setLibtemplateid(Long.valueOf(serviceTask.getLibtemplateid()));
serviceSubtask.setSfzh(patTaskRelevance.getIdcardno());
serviceSubtask.setPhone(patTaskRelevance.getTelcode());
serviceSubtask.setAddr(patTaskRelevance.getAddr());
serviceSubtask.setPatid(patTaskRelevance.getPatid());
serviceSubtask.setCreateTime(DateUtils.getNowDate());
- serviceSubtask.setSendstate(1L);
+ serviceSubtask.setSendstate(2L);
if (serviceTaskVO.getLongTask() != null && serviceTaskVO.getLongTask() == 1)
serviceSubtask.setSendstate(2L);
serviceSubtask.setDeptcode(patTaskRelevance.getDeptCode());
@@ -477,7 +484,7 @@
serviceSubtask.setEndtime(patTaskRelevance.getEndtime());
serviceSubtask.setNurseId(patTaskRelevance.getNurseId());
serviceSubtask.setNurseName(patTaskRelevance.getNurseName());
- serviceSubtask.setVisitTime(patTaskRelevance.getVisitTime());
+ serviceSubtask.setVisitTime(visitTime);
if (serviceTask.getSendType() == 2) {
serviceSubtask.setVisitTime(new Date());
}
@@ -601,7 +608,7 @@
if (patTaskRelevance.getIsoperation() == 2) serviceSubtask.setUpdateTime(new Date());
serviceSubtaskMapper.updateServiceSubtaskByCondition(serviceSubtask);
if (patTaskRelevance.getIsoperation() == 1) {
- serviceSubtask.setSendstate(1L);
+ serviceSubtask.setSendstate(2L);
serviceSubtask.setCreateTime(new Date());
serviceSubtaskMapper.insertServiceSubtask(serviceSubtask);
}
@@ -1970,6 +1977,39 @@
return serviceSubtaskStatistics;
}
+ /**
+ * 鏈嶅姟缁熻鏌ヨ - 鎸夋椂闂寸淮搴︾粺璁″嚭闄�/闂ㄨ瘖闅忚鏁版嵁
+ *
+ * @param request 缁熻璇锋眰鍙傛暟
+ * @return 缁熻缁撴灉鍒楄〃
+ */
+ @Override
+ public List<ServiceStatisticsResponse> getServiceStatistics(ServiceStatisticsRequest request) {
+ log.info("getServiceStatistics鐨勫叆鍙備负锛歿}", request);
+
+ // 鍙傛暟鏍¢獙
+ if (request.getStartDate() == null || request.getEndDate() == null) {
+ throw new IllegalArgumentException("寮�濮嬫棩鏈熷拰缁撴潫鏃ユ湡涓嶈兘涓虹┖");
+ }
+
+ if (request.getStartDate().after(request.getEndDate())) {
+ throw new IllegalArgumentException("寮�濮嬫棩鏈熶笉鑳芥櫄浜庣粨鏉熸棩鏈�");
+ }
+
+ // 濡傛灉timeType涓虹┖锛岄粯璁ゆ寜澶╃粺璁�
+ if (com.ruoyi.common.utils.StringUtils.isEmpty(request.getTimeType())) {
+ request.setTimeType("day");
+ }
+
+ List<ServiceStatisticsResponse> result = serviceSubtaskMapper.getServiceStatistics(request);
+
+
+ log.info("getServiceStatistics杩斿洖缁撴灉鏁伴噺锛歿}", result.size());
+ return result;
+ }
+
+
+
private ServiceSubtaskStatistic getStatistic(List<ServiceSubtask> serviceSubtaskList) {
log.error("-------------serviceSubtaskList鐨勫�间负锛歿}", serviceSubtaskList);
ServiceSubtaskStatistic serviceSubtaskStatistic = new ServiceSubtaskStatistic();
--
Gitblit v1.9.3