From 459aa78c84cf552ebea6ef056d978c2531d71ac8 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 06 三月 2026 17:14:27 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java |   85 +++++++++++++++++++++++++-----------------
 1 files changed, 50 insertions(+), 35 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 ef2e27a..c24c121 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
@@ -25,6 +25,8 @@
 import com.ruoyi.system.domain.SysConfig;
 import com.ruoyi.system.service.ISysConfigService;
 import com.smartor.domain.*;
+import com.smartor.domain.VO.ServiceSubtaskVO;
+import com.smartor.domain.entity.ServiceSubtaskEntity;
 import com.smartor.mapper.PatMedInhospMapper;
 import com.smartor.mapper.PatMedOuthospMapper;
 import com.smartor.service.IServiceSubtaskRecordService;
@@ -86,26 +88,27 @@
      * 鏌ヨ鎮h�呴殢璁夸俊鎭�
      */
     @ApiOperation("鏌ヨ鎮h�呴殢璁夸俊鎭�")
-    //@PreAuthorize("@ss.hasPermi('system:taskcall:list')")
-//    @Cacheable(value = "patItem", key = "T(org.springframework.util.DigestUtils).md5DigestAsHex(#serviceSubtaskVO.toString().getBytes())", unless = "#result == null or #result.isEmpty()")
     @PostMapping("/patItem")
     public Map<String, Object> patItem(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
-        if (serviceSubtaskVO.getLeavehospitaldistrictcodes() != null && serviceSubtaskVO.getLeavehospitaldistrictcodes().size() > 10) {
-            throw new BaseException("鐥呭尯鏌ヨ鏁版嵁涓嶈兘瓒呰繃10涓�");
-        }
-        if (serviceSubtaskVO.getLeaveldeptcodes() != null && serviceSubtaskVO.getLeaveldeptcodes().size() > 10) {
-            throw new BaseException("绉戝鏌ヨ鏁版嵁涓嶈兘瓒呰繃10涓�");
-        }
+//        if (serviceSubtaskVO.getLeavehospitaldistrictcodes() != null && serviceSubtaskVO.getLeavehospitaldistrictcodes().size() > 10) {
+//            throw new BaseException("鐥呭尯鏌ヨ鏁伴噺涓嶈兘瓒呰繃10涓�");
+//        }
+//        if (serviceSubtaskVO.getLeaveldeptcodes() != null && serviceSubtaskVO.getLeaveldeptcodes().size() > 10) {
+//            throw new BaseException("绉戝鏌ヨ鏁伴噺涓嶈兘瓒呰繃10涓�");
+//        }
 
         serviceSubtaskVO.setPageNum(PageUtils.getOffset(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize()));
-        List<ServiceSubtask> serviceSubtaskList = null;
+        List<ServiceSubtaskRes> serviceSubtaskList = null;
         LoginUser loginUser = getLoginUser();
         SysUser user = loginUser.getUser();
         serviceSubtaskVO.setOrgid(user.getOrgid());
+        ServiceSubtaskEntity serviceSubtaskEntity = null;
         if (serviceSubtaskVO != null) {
-            serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskVO);
+            serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+            serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+            serviceSubtaskList = serviceSubtaskService.patItem(serviceSubtaskEntity);
         }
-        for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
+        for (ServiceSubtaskRes serviceSubtask : serviceSubtaskList) {
             ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
             serviceSubtaskRecord.setSubtaskId(serviceSubtask.getId());
             serviceSubtaskRecord.setOrgid(serviceSubtask.getOrgid());
@@ -118,14 +121,14 @@
         }
 
 //      patItemCount 璋冪敤redisCache璁板綍缁熻鏁版嵁
-        Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
+        Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskEntity);
         map.put("serviceSubtaskList", serviceSubtaskList);
         List<Map<String, Object>> list = new ArrayList<>();
         list.add(map);
 
         serviceSubtaskVO.setPageNum(null);
         serviceSubtaskVO.setPageSize(null);
-        List<ServiceSubtask> serviceSubtasks = serviceSubtaskService.patItem(serviceSubtaskVO);
+        List<ServiceSubtaskRes> serviceSubtasks = serviceSubtaskService.patItem(serviceSubtaskEntity);
 
         return getDataTable3(CollectionUtils.isNotEmpty(serviceSubtasks) ? serviceSubtasks.size() : 0L, list);
     }
@@ -138,6 +141,10 @@
     @PostMapping("/patItemCount")
     public Map<String, Object> patItemCount(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
         Map<String, Object> map = new HashMap<>();
+
+        ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+        serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+
         // 閫氳繃redis璁板綍缁撴灉
         Map<String, Object> redisMap = new HashMap<>();
         LoginUser loginUser = getLoginUser();
@@ -153,11 +160,11 @@
             redisMap = redisCache.getCacheObject(userId + "patItemCount");
             //璁板綍鏄惁鏈夊彲鐢ㄧ紦瀛�
             Boolean redisFlag = false;
-            ServiceSubtaskVO oldCondition = null;
+            ServiceSubtaskEntity oldCondition = null;
             if (MapUtils.isNotEmpty(redisMap)) {
-                oldCondition = (ServiceSubtaskVO) redisMap.get("searchCondition");
+                oldCondition = (ServiceSubtaskEntity) redisMap.get("searchCondition");
                 // 姣旇緝鏌ヨ鏉′欢鏄惁涓�鑷�
-                if (ObjectUtils.isNotEmpty(oldCondition) && isSameCondition(oldCondition, serviceSubtaskVO)) {
+                if (ObjectUtils.isNotEmpty(oldCondition) && isSameCondition(oldCondition, serviceSubtaskEntity)) {
                     // 鏉′欢涓�鑷达紝浣跨敤缂撳瓨
                     redisFlag = true;
                     map = redisMap;
@@ -167,8 +174,8 @@
 
             // 濡傛灉娌℃湁缂撳瓨鎴栬�呮潯浠朵笉涓�鑷达紝閲嶆柊鏌ヨ
             if (!redisFlag) {
-                map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
-                map.put("searchCondition", serviceSubtaskVO);
+                map = serviceSubtaskService.patItemCount(serviceSubtaskEntity);
+                map.put("searchCondition", serviceSubtaskEntity);
                 redisCache.setCacheObject(userId + "patItemCount", map, 120, TimeUnit.MINUTES);
             }
         }
@@ -181,7 +188,7 @@
      * 姣旇緝涓や釜ServiceSubtaskVO鐨勬煡璇㈡潯浠舵槸鍚︿竴鑷�
      * 浣跨敤鍙嶅皠姣旇緝鎵�鏈夊瓧娈碉紝鎺掗櫎鍒嗛〉鍙傛暟鍜屾棤鍏冲瓧娈�
      */
-    private boolean isSameCondition(ServiceSubtaskVO oldCondition, ServiceSubtaskVO newCondition) {
+    private boolean isSameCondition(ServiceSubtaskEntity oldCondition, ServiceSubtaskEntity newCondition) {
         // 浣跨敤ReflectUtils鐨勯�氱敤鏂规硶姣旇緝锛屾帓闄ゅ垎椤靛弬鏁扮瓑鏃犲叧瀛楁
         return ReflectUtils.equalsAllFields(oldCondition, newCondition,
                 // 鎺掗櫎鐨勫瓧娈碉細鍒嗛〉鍙傛暟銆佸簭鍒楀寲ID銆佹椂闂存埑绛�
@@ -195,8 +202,8 @@
     //@PreAuthorize("@ss.hasPermi('system:taskcall:export')")
     @Log(title = "鍗曚竴浠诲姟锛堥殢璁垮鏁欙級", businessType = BusinessType.EXPORT)
     @PostMapping("/patItemExport")
-    public void patItemExport(HttpServletResponse response, ServiceSubtaskVO serviceSubtaskVO) {
-        List<ServiceSubtask> serviceSubtaskList = null;
+    public void patItemExport(HttpServletResponse response, ServiceSubtaskEntity serviceSubtaskVO) {
+        List<ServiceSubtaskRes> serviceSubtaskList = null;
         if (serviceSubtaskVO != null) {
             if (serviceSubtaskVO.getPageNum() != null && serviceSubtaskVO.getPageSize() != null)
                 PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
@@ -225,9 +232,12 @@
     @PostMapping("/patItemByCondition")
     public TableDataInfo patItemByCondition(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
         List<ServiceSubtask> serviceSubtaskList = null;
-        if (serviceSubtaskVO != null) {
-            PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
-            serviceSubtaskList = serviceSubtaskService.patItem2(serviceSubtaskVO);
+        ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+        serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+        if (serviceSubtaskEntity != null) {
+            PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
+
+            serviceSubtaskList = serviceSubtaskService.patItem2(serviceSubtaskEntity);
         }
         for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
             ServiceSubtaskRecord serviceSubtaskRecord = new ServiceSubtaskRecord();
@@ -237,7 +247,7 @@
         }
 //      patItemCount 璋冪敤redisCache璁板綍缁熻鏁版嵁
 //      Map<String, Object> map = patItemCount(serviceSubtaskVO);
-        Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskVO);
+        Map<String, Object> map = serviceSubtaskService.patItemCount(serviceSubtaskEntity);
 
         map.put("serviceSubtaskList", serviceSubtaskList);
         List<Map<String, Object>> list = new ArrayList<>();
@@ -248,7 +258,7 @@
             public void doSelect() {
                 serviceSubtaskVO.setPageNum(null);
                 serviceSubtaskVO.setPageSize(null);
-                serviceSubtaskService.patItem2(serviceSubtaskVO);
+                serviceSubtaskService.patItem2(serviceSubtaskEntity);
             }
         });
         return getDataTable2(total, list);
@@ -261,7 +271,7 @@
     @Log(title = "鍗曚竴浠诲姟锛堥殢璁垮鏁欙級", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     public void export(HttpServletResponse response, ServiceSubtask serviceSubtask) {
-        ServiceSubtaskVO serviceSubtaskVO = DtoConversionUtils.sourceToTarget(serviceSubtask, ServiceSubtaskVO.class);
+        ServiceSubtaskEntity serviceSubtaskVO = DtoConversionUtils.sourceToTarget(serviceSubtask, ServiceSubtaskEntity.class);
         List<ServiceSubtask> list = serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO);
         ExcelUtil<ServiceSubtask> util = new ExcelUtil<ServiceSubtask>(ServiceSubtask.class);
         util.exportExcel(response, list, "鍗曚竴浠诲姟锛堥殢璁匡級鏁版嵁");
@@ -274,9 +284,11 @@
     @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
     @PostMapping("/querySubtaskList")
     public AjaxResult querySubtaskList(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
-        PageUtils.startPageByPost(serviceSubtaskVO.getPageNum(), serviceSubtaskVO.getPageSize());
-        serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO);
-        return success(serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskVO));
+        ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+        serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+        PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
+        serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskEntity);
+        return success(serviceSubtaskService.selectServiceSubtaskList(serviceSubtaskEntity));
     }
 
 
@@ -287,9 +299,11 @@
     @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));
+        ServiceSubtaskEntity serviceSubtaskEntity = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtaskEntity.class);
+        serviceSubtaskEntity.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
+        PageUtils.startPageByPost(serviceSubtaskEntity.getPageNum(), serviceSubtaskEntity.getPageSize());
+        serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskEntity);
+        return getDataTable(serviceSubtaskService.selectServiceSubtaskListAgain(serviceSubtaskEntity));
     }
 
 
@@ -402,9 +416,10 @@
     @ApiOperation("鏍规嵁鏉′欢鏌ヨ浠诲姟淇℃伅")
     @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
     @PostMapping("/queryTaskByCondition")
-    public AjaxResult queryTaskByCondition(@RequestBody ServiceSubtaskVO ivrTaskcallVO) {
+    public AjaxResult queryTaskByCondition(@RequestBody ServiceSubtaskVO serviceSubtaskVO) {
         //鏍规嵁鍏ュ弬鏌ヨ淇℃伅
-        ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(ivrTaskcallVO, ServiceSubtask.class);
+        ServiceSubtask serviceSubtask = DtoConversionUtils.sourceToTarget(serviceSubtaskVO, ServiceSubtask.class);
+        serviceSubtask.setContinueContent(ObjectUtils.isNotEmpty(serviceSubtaskVO.getContinueContent()) ? serviceSubtaskVO.getContinueContent().toString() : null);
         ServiceTaskVO ivrTaskVO = serviceSubtaskService.queryTaskByCondition(serviceSubtask);
         return success(ivrTaskVO);
     }

--
Gitblit v1.9.3