From 57ae7faf87e490576141ff19727057d2f7ad1840 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期五, 02 八月 2024 16:50:06 +0800
Subject: [PATCH] 代码提交

---
 smartor/src/main/java/com/smartor/domain/Icd10Association.java                                   |    2 
 smartor/src/main/java/com/smartor/service/impl/PatMedRegistrationServiceImpl.java                |   97 ++
 smartor/src/main/java/com/smartor/domain/HeLibraryVO.java                                        |    6 
 smartor/src/main/java/com/smartor/domain/PatMedRegistration.java                                 |  147 +++
 smartor/src/main/java/com/smartor/service/impl/PersonWorkbenchServiceImpl.java                   |   35 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/Icd10AssociationController.java       |    4 
 smartor/src/main/java/com/smartor/service/impl/SvyLibTemplateServiceImpl.java                    |   58 +
 smartor/src/main/java/com/smartor/domain/PatSpeciallist.java                                     |  122 ++
 smartor/src/main/java/com/smartor/domain/SvyLibTemplateVO.java                                   |  243 +++++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedRegistrationController.java     |   91 ++
 smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java                        |    9 
 smartor/src/main/resources/mapper/smartor/PatFilterlistMapper.xml                                |  145 +++
 smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java                     |   17 
 smartor/src/main/java/com/smartor/mapper/PatArchiveOutMapper.java                                |    8 
 smartor/src/main/java/com/smartor/mapper/PatFilterlistMapper.java                                |   64 +
 smartor/src/main/java/com/smartor/service/impl/PatSpeciallistServiceImpl.java                    |   97 ++
 smartor/src/main/resources/mapper/smartor/IvrLibaTemplateScriptMapper.xml                        |    8 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateCategoryController.java |    1 
 smartor/src/main/java/com/smartor/mapper/PatMedRegistrationMapper.java                           |   63 +
 smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java                       |    1 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PersonWorkbenchController.java        |   71 +
 smartor/src/main/java/com/smartor/service/IPatArchiveService.java                                |    4 
 smartor/src/main/java/com/smartor/service/IPatSpeciallistService.java                            |   62 +
 smartor/src/main/resources/mapper/smartor/PatSpeciallistMapper.xml                               |  145 +++
 smartor/src/main/resources/mapper/smartor/PatArchiveOutMapper.xml                                |   39 
 smartor/src/main/java/com/smartor/service/ISvyLibTemplateService.java                            |    5 
 smartor/src/main/java/com/smartor/domain/PatFilterlist.java                                      |  123 ++
 smartor/src/main/java/com/smartor/mapper/PatSpeciallistMapper.java                               |   63 +
 smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml                                |    1 
 smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml                                  |    7 
 smartor/src/main/java/com/smartor/service/impl/PatFilterlistServiceImpl.java                     |   97 ++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpeciallistController.java         |   98 ++
 smartor/src/main/java/com/smartor/domain/PerSonWorkbenchDto.java                                 |   28 
 smartor/src/main/resources/mapper/smartor/SvyLibTemplateMapper.xml                               |    2 
 smartor/src/main/java/com/smartor/domain/ServiceTask.java                                        |   11 
 ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java                        |    6 
 smartor/src/main/java/com/smartor/service/IPatMedRegistrationService.java                        |   61 +
 smartor/src/main/java/com/smartor/service/PersonWorkbenchService.java                            |   20 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatFilterlistController.java          |   91 ++
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateController.java         |    9 
 smartor/src/main/java/com/smartor/service/IPatFilterlistService.java                             |   62 +
 ruoyi-admin/src/main/java/com/ruoyi/web/component/DeptUtils.java                                 |   24 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java          |    2 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java             |   35 
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java          |    4 
 smartor/src/main/resources/mapper/smartor/PatMedRegistrationMapper.xml                           |  196 ++++
 46 files changed, 2,426 insertions(+), 58 deletions(-)

diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/component/DeptUtils.java b/ruoyi-admin/src/main/java/com/ruoyi/web/component/DeptUtils.java
new file mode 100644
index 0000000..1bd5f52
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/component/DeptUtils.java
@@ -0,0 +1,24 @@
+package com.ruoyi.web.component;
+
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.model.LoginUser;
+import org.springframework.stereotype.Component;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import static com.ruoyi.common.utils.SecurityUtils.getLoginUser;
+
+@Component
+public class DeptUtils {
+    public static Map<String, String> getDeptAndDocID() {
+        Map<String, String> map = new HashMap<>();
+        LoginUser loginUser = getLoginUser();
+        SysUser user = loginUser.getUser();
+        String detpId = user.getDeptId().toString();
+        String userName = user.getUserName();
+        map.put("deptId", detpId);
+        map.put("userName", userName);
+        return map;
+    }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/Icd10AssociationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/Icd10AssociationController.java
index 229caa0..f458dc1 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/Icd10AssociationController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/Icd10AssociationController.java
@@ -38,7 +38,9 @@
     @PreAuthorize("@ss.hasPermi('system:icd10:list')")
     @PostMapping("/list")
     public TableDataInfo list(@RequestBody Icd10Association icd10Association) {
-        PageUtils.startPageByPost(icd10Association.getPageNum(), icd10Association.getPageSize());
+        if (icd10Association.getIsPage()) {
+            PageUtils.startPageByPost(icd10Association.getPageNum(), icd10Association.getPageSize());
+        }
         List<Icd10Association> list = iIcd10AssociationService.selectIcd10AssociationList(icd10Association);
         return getDataTable(list);
     }
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java
index 722e2bf..0a36625 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java
@@ -39,18 +39,18 @@
 public class PatArchiveController extends BaseController {
     @Autowired
     private IPatArchiveService patArchiveService;
-//
-//    /**
-//     * 鏌ヨ鎮h�呮。妗堝垪琛�
-//     */
-//    @ApiOperation("鏌ヨ鎮h�呮。妗堝垪琛�")
-//    @PreAuthorize("@ss.hasPermi('smartor:patarchive:list')")
-//   @PostMapping("/list")
-//    public TableDataInfo list(@RequestBody PatArchive patArchive) {
-//        startPage();
-//        List<PatArchive> list = patArchiveService.selectPatArchiveList(patArchive);
-//        return getDataTable(list);
-//}
+
+    /**
+     * 鏌ヨ鎮h�呮。妗堝垪琛�
+     */
+    @ApiOperation("鏌ヨ鎮h�呮。妗堝垪琛�")
+    @PreAuthorize("@ss.hasPermi('smartor:patarchive:list')")
+    @PostMapping("/list")
+    public TableDataInfo list(@RequestBody PatArchive patArchive) {
+        startPage();
+        List<PatArchive> list = patArchiveService.selectPatArchiveList(patArchive);
+        return getDataTable(list);
+    }
 
     /**
      * 瀵煎嚭鎮h�呮。妗堝垪琛�
@@ -88,6 +88,17 @@
 //    }
 
     /**
+     * 鏂板鎮h�呮。妗�
+     */
+    @ApiOperation("淇敼鎮h�呮。妗�")
+    @PreAuthorize("@ss.hasPermi('smartor:patarchive:update')")
+    @Log(title = "鎮h�呮。妗�", businessType = BusinessType.UPDATE)
+    @PostMapping("/update")
+    public AjaxResult update(@RequestBody PatArchive patArchive) {
+        return toAjax(patArchiveService.update(patArchive));
+    }
+
+    /**
      * 鏂板鎴栦慨鏀规偅鑰呮。淇℃伅
      */
     @ApiOperation("鏂板鎴栦慨鏀规偅鑰呮。淇℃伅")
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java
index 1250253..edbf9e2 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchivetagController.java
@@ -11,8 +11,6 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.PutMapping;
-import org.springframework.web.bind.annotation.DeleteMapping;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatFilterlistController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatFilterlistController.java
new file mode 100644
index 0000000..3669b44
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatFilterlistController.java
@@ -0,0 +1,91 @@
+package com.ruoyi.web.controller.smartor;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.smartor.domain.PatFilterlist;
+import com.smartor.service.IPatFilterlistService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 鎮h�呰繃婊ゅ悕鍗旵ontroller
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@RestController
+@RequestMapping("/smartor/filterlist")
+public class PatFilterlistController extends BaseController {
+    @Autowired
+    private IPatFilterlistService patFilterlistService;
+
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗曞垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:filterlist:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(PatFilterlist patFilterlist) {
+        startPage();
+        List<PatFilterlist> list = patFilterlistService.selectPatFilterlistList(patFilterlist);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鎮h�呰繃婊ゅ悕鍗曞垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:filterlist:export')")
+    @Log(title = "鎮h�呰繃婊ゅ悕鍗�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, PatFilterlist patFilterlist) {
+        List<PatFilterlist> list = patFilterlistService.selectPatFilterlistList(patFilterlist);
+        ExcelUtil<PatFilterlist> util = new ExcelUtil<PatFilterlist>(PatFilterlist.class);
+        util.exportExcel(response, list, "鎮h�呰繃婊ゅ悕鍗曟暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇鎮h�呰繃婊ゅ悕鍗曡缁嗕俊鎭�
+     */
+    @PreAuthorize("@ss.hasPermi('system:filterlist:query')")
+    @GetMapping(value = "/getInfo/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id) {
+        return success(patFilterlistService.selectPatFilterlistById(id));
+    }
+
+    /**
+     * 鏂板鎮h�呰繃婊ゅ悕鍗�
+     */
+    @PreAuthorize("@ss.hasPermi('system:filterlist:add')")
+    @Log(title = "鎮h�呰繃婊ゅ悕鍗�", businessType = BusinessType.INSERT)
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody PatFilterlist patFilterlist) {
+        return toAjax(patFilterlistService.insertPatFilterlist(patFilterlist));
+    }
+
+    /**
+     * 淇敼鎮h�呰繃婊ゅ悕鍗�
+     */
+    @PreAuthorize("@ss.hasPermi('system:filterlist:edit')")
+    @Log(title = "鎮h�呰繃婊ゅ悕鍗�", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    public AjaxResult edit(@RequestBody PatFilterlist patFilterlist) {
+        return toAjax(patFilterlistService.updatePatFilterlist(patFilterlist));
+    }
+
+    /**
+     * 鍒犻櫎鎮h�呰繃婊ゅ悕鍗�
+     */
+    @PreAuthorize("@ss.hasPermi('system:filterlist:remove')")
+    @Log(title = "鎮h�呰繃婊ゅ悕鍗�", businessType = BusinessType.DELETE)
+    @GetMapping("/remove/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids) {
+        return toAjax(patFilterlistService.deletePatFilterlistByIds(ids));
+    }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java
index c233309..7731e44 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedOuthospController.java
@@ -70,7 +70,7 @@
     @ApiOperation("鑾峰彇鎮h�呴棬璇婅褰曡缁嗕俊鎭�")
     @ApiImplicitParam(name = "getInfo", value = "涓婚敭ID", dataType = "long", dataTypeClass = Long.class)
     @PreAuthorize("@ss.hasPermi('smartor:patouthosp:query')")
-    @GetMapping(value = "/{id}")
+    @GetMapping(value = "getInfo/{id}")
     public AjaxResult getInfo(@PathVariable("id") Long id) {
         return success(patMedOuthospService.selectPatMedOuthospById(id));
     }
@@ -104,7 +104,7 @@
     @PreAuthorize("@ss.hasPermi('smartor:patouthosp:remove')")
     @ApiImplicitParam(name = "remove", value = "涓婚敭ID", dataType = "long", dataTypeClass = Array.class)
     @Log(title = "鎮h�呴棬璇婅褰�", businessType = BusinessType.DELETE)
-    @GetMapping("/{ids}")
+    @GetMapping("/remove/{ids}")
     public AjaxResult remove(@PathVariable Long[] ids) {
         return toAjax(patMedOuthospService.deletePatMedOuthospByIds(ids));
     }
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedRegistrationController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedRegistrationController.java
new file mode 100644
index 0000000..442fec0
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedRegistrationController.java
@@ -0,0 +1,91 @@
+package com.ruoyi.web.controller.smartor;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.smartor.domain.PatMedRegistration;
+import com.smartor.service.IPatMedRegistrationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 鎮h�呮寕鍙疯褰旵ontroller
+ *
+ * @author ruoyi
+ * @date 2024-08-01
+ */
+@RestController
+@RequestMapping("/smartor/registration")
+public class PatMedRegistrationController extends BaseController {
+    @Autowired
+    private IPatMedRegistrationService patMedRegistrationService;
+
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰曞垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:registration:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(PatMedRegistration patMedRegistration) {
+        startPage();
+        List<PatMedRegistration> list = patMedRegistrationService.selectPatMedRegistrationList(patMedRegistration);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭鎮h�呮寕鍙疯褰曞垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:registration:export')")
+    @Log(title = "鎮h�呮寕鍙疯褰�", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, PatMedRegistration patMedRegistration) {
+        List<PatMedRegistration> list = patMedRegistrationService.selectPatMedRegistrationList(patMedRegistration);
+        ExcelUtil<PatMedRegistration> util = new ExcelUtil<PatMedRegistration>(PatMedRegistration.class);
+        util.exportExcel(response, list, "鎮h�呮寕鍙疯褰曟暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇鎮h�呮寕鍙疯褰曡缁嗕俊鎭�
+     */
+    @PreAuthorize("@ss.hasPermi('system:registration:query')")
+    @GetMapping(value = "/getInfo/{registid}")
+    public AjaxResult getInfo(@PathVariable("registid") Long registid) {
+        return success(patMedRegistrationService.selectPatMedRegistrationByRegistid(registid));
+    }
+
+    /**
+     * 鏂板鎮h�呮寕鍙疯褰�
+     */
+    @PreAuthorize("@ss.hasPermi('system:registration:add')")
+    @Log(title = "鎮h�呮寕鍙疯褰�", businessType = BusinessType.INSERT)
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody PatMedRegistration patMedRegistration) {
+        return toAjax(patMedRegistrationService.insertPatMedRegistration(patMedRegistration));
+    }
+
+    /**
+     * 淇敼鎮h�呮寕鍙疯褰�
+     */
+    @PreAuthorize("@ss.hasPermi('system:registration:edit')")
+    @Log(title = "鎮h�呮寕鍙疯褰�", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    public AjaxResult edit(@RequestBody PatMedRegistration patMedRegistration) {
+        return toAjax(patMedRegistrationService.updatePatMedRegistration(patMedRegistration));
+    }
+
+    /**
+     * 鍒犻櫎鎮h�呮寕鍙疯褰�
+     */
+    @PreAuthorize("@ss.hasPermi('system:registration:remove')")
+    @Log(title = "鎮h�呮寕鍙疯褰�", businessType = BusinessType.DELETE)
+    @GetMapping("/remove/{registids}")
+    public AjaxResult remove(@PathVariable Long[] registids) {
+        return toAjax(patMedRegistrationService.deletePatMedRegistrationByRegistids(registids));
+    }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpeciallistController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpeciallistController.java
new file mode 100644
index 0000000..96f8592
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatSpeciallistController.java
@@ -0,0 +1,98 @@
+package com.ruoyi.web.controller.smartor;
+
+import com.ruoyi.common.annotation.Log;
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.domain.AjaxResult;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.smartor.domain.PatSpeciallist;
+import com.smartor.service.IPatSpeciallistService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+
+/**
+ * 涓撶梾鎮h�匔ontroller
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@RestController
+@RequestMapping("/smartor/speciallist")
+public class PatSpeciallistController extends BaseController
+{
+    @Autowired
+    private IPatSpeciallistService patSpeciallistService;
+
+    /**
+     * 鏌ヨ涓撶梾鎮h�呭垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:speciallist:list')")
+    @GetMapping("/list")
+    public TableDataInfo list(PatSpeciallist patSpeciallist)
+    {
+        startPage();
+        List<PatSpeciallist> list = patSpeciallistService.selectPatSpeciallistList(patSpeciallist);
+        return getDataTable(list);
+    }
+
+    /**
+     * 瀵煎嚭涓撶梾鎮h�呭垪琛�
+     */
+    @PreAuthorize("@ss.hasPermi('system:speciallist:export')")
+    @Log(title = "涓撶梾鎮h��", businessType = BusinessType.EXPORT)
+    @PostMapping("/export")
+    public void export(HttpServletResponse response, PatSpeciallist patSpeciallist)
+    {
+        List<PatSpeciallist> list = patSpeciallistService.selectPatSpeciallistList(patSpeciallist);
+        ExcelUtil<PatSpeciallist> util = new ExcelUtil<PatSpeciallist>(PatSpeciallist.class);
+        util.exportExcel(response, list, "涓撶梾鎮h�呮暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇涓撶梾鎮h�呰缁嗕俊鎭�
+     */
+    @PreAuthorize("@ss.hasPermi('system:speciallist:query')")
+    @GetMapping(value = "/getInfo/{id}")
+    public AjaxResult getInfo(@PathVariable("id") Long id)
+    {
+        return success(patSpeciallistService.selectPatSpeciallistById(id));
+    }
+
+    /**
+     * 鏂板涓撶梾鎮h��
+     */
+    @PreAuthorize("@ss.hasPermi('system:speciallist:add')")
+    @Log(title = "涓撶梾鎮h��", businessType = BusinessType.INSERT)
+    @PostMapping("/add")
+    public AjaxResult add(@RequestBody PatSpeciallist patSpeciallist)
+    {
+        return toAjax(patSpeciallistService.insertPatSpeciallist(patSpeciallist));
+    }
+
+    /**
+     * 淇敼涓撶梾鎮h��
+     */
+    @PreAuthorize("@ss.hasPermi('system:speciallist:edit')")
+    @Log(title = "涓撶梾鎮h��", businessType = BusinessType.UPDATE)
+    @PostMapping("/edit")
+    public AjaxResult edit(@RequestBody PatSpeciallist patSpeciallist)
+    {
+        return toAjax(patSpeciallistService.updatePatSpeciallist(patSpeciallist));
+    }
+
+    /**
+     * 鍒犻櫎涓撶梾鎮h��
+     */
+    @PreAuthorize("@ss.hasPermi('system:speciallist:remove')")
+    @Log(title = "涓撶梾鎮h��", businessType = BusinessType.DELETE)
+	@DeleteMapping("/remove/{ids}")
+    public AjaxResult remove(@PathVariable Long[] ids)
+    {
+        return toAjax(patSpeciallistService.deletePatSpeciallistByIds(ids));
+    }
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PersonWorkbenchController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PersonWorkbenchController.java
new file mode 100644
index 0000000..f9bdc1c
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PersonWorkbenchController.java
@@ -0,0 +1,71 @@
+package com.ruoyi.web.controller.smartor;
+
+import com.ruoyi.common.core.controller.BaseController;
+import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.utils.StringUtils;
+import com.ruoyi.web.component.DeptUtils;
+import com.smartor.domain.PerSonWorkbenchDto;
+import com.smartor.service.PersonWorkbenchService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 鏍囩Controller
+ *
+ * @author ruoyi
+ * @date 2023-06-06
+ */
+@Api(description = "涓汉宸ヤ綔鍙�")
+@RestController
+@RequestMapping("/smartor/workbench")
+public class PersonWorkbenchController extends BaseController {
+    @Autowired
+    private PersonWorkbenchService personWorkbenchService;
+
+    /**
+     * 褰撳墠鐧诲綍鐢ㄦ埛鐨勯棬璇娿�佸湪闄€�佸嚭闄㈢梾浜虹殑缁熻鎯呭喌
+     */
+    @ApiOperation("褰撳墠鐧诲綍鐢ㄦ埛鐨勯棬璇娿�佸湪闄€�佸嚭闄㈢梾浜虹殑缁熻鎯呭喌")
+    @GetMapping("/getPatCount")
+    public TableDataInfo getPatCount(@RequestParam("deptIds") String detpIds, @RequestParam("dcCodes") String dcCodes) {
+        //鑾峰彇褰撳墠鐧婚檰浜�
+        Map<String, String> deptAndDocID = DeptUtils.getDeptAndDocID();
+        if (StringUtils.isEmpty(detpIds)) {
+            detpIds = deptAndDocID.get("deptId");
+        }
+        if (StringUtils.isEmpty(dcCodes)) {
+            dcCodes = deptAndDocID.get("userName");
+        }
+
+        List<PerSonWorkbenchDto> patCount = personWorkbenchService.getPatCount(detpIds, dcCodes);
+        return getDataTable(patCount);
+    }
+
+    /**
+     * 褰撳墠鐧诲綍鐢ㄦ埛鐨勯棬璇娿�佸湪闄€�佸嚭闄㈢梾浜虹殑缁熻鎯呭喌
+     */
+    @ApiOperation("褰撳墠鐧诲綍鐢ㄦ埛鐨勯棬璇娿�佸湪闄€�佸嚭闄㈢梾浜虹殑缁熻鎯呭喌")
+    @PreAuthorize("@ss.hasPermi('system:tag:list')")
+    @GetMapping("/getTaskInfo")
+    public TableDataInfo getTaskInfo(@RequestParam("deptIds") String detpIds, @RequestParam("dcCodes") String dcCodes) {
+        //鑾峰彇褰撳墠鐧婚檰浜�
+        Map<String, String> deptAndDocID = DeptUtils.getDeptAndDocID();
+        if (StringUtils.isEmpty(detpIds)) {
+            detpIds = deptAndDocID.get("deptId");
+        }
+        if (StringUtils.isEmpty(dcCodes)) {
+            dcCodes = deptAndDocID.get("userName");
+        }
+
+        List<PerSonWorkbenchDto> patCount = personWorkbenchService.getPatCount(detpIds, dcCodes);
+        return getDataTable(patCount);
+    }
+
+
+}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateCategoryController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateCategoryController.java
index 4d92358..f306dad 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateCategoryController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateCategoryController.java
@@ -38,7 +38,6 @@
     @PreAuthorize("@ss.hasPermi('smartor:category:list')")
     @PostMapping("/list")
     public TableDataInfo list(@RequestBody SvyLibTemplateCategory svyLibTemplateCategory) {
-        startPage();
         List<SvyLibTemplateCategoryVO> list = svyLibTemplateCategoryService.selectSvyLibTemplateCategoryList(svyLibTemplateCategory);
         return getDataTable(list);
     }
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateController.java
index de5a90d..d6dd162 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/SvyLibTemplateController.java
@@ -14,6 +14,7 @@
 import com.smartor.domain.SvyLibScriptTag;
 import com.smartor.domain.SvyLibTemplate;
 import com.smartor.domain.SvyLibTemplateReq;
+import com.smartor.domain.SvyLibTemplateVO;
 import com.smartor.service.ISvyLibTemplateService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -53,7 +54,7 @@
     @PostMapping("/selectSvyLibTemplatelist")
     public TableDataInfo selectSvyLibTemplatelist(@RequestBody SvyLibTemplateReq svyLibTemplateReq) {
         PageUtils.startPageByPost(svyLibTemplateReq.getPageNum(), svyLibTemplateReq.getPageSize());
-        List<SvyLibTemplate> list = svyLibTemplateService.selectSvyLibTemplateList(svyLibTemplateReq);
+        List<SvyLibTemplateVO> list = svyLibTemplateService.selectSvyLibTemplateList(svyLibTemplateReq);
 
         if (CollectionUtils.isNotEmpty(list)) {
             //鑾峰彇total
@@ -97,11 +98,11 @@
     @ApiOperation("鏂板鎴栦慨鏀归棶鍗锋ā鏉夸俊鎭�")
     @PreAuthorize("@ss.hasPermi('system:script:list')")
     @PostMapping("/saveOrUpdateTemplate")
-    public AjaxResult saveOrUpdateTemplate(@RequestBody SvyLibTemplate svyLibTemplate) {
-        if (ObjectUtils.isEmpty(svyLibTemplate)) {
+    public AjaxResult saveOrUpdateTemplate(@RequestBody SvyLibTemplateVO svyLibTemplateVO) {
+        if (ObjectUtils.isEmpty(svyLibTemplateVO)) {
             throw new BaseException("鍏ュ弬涓虹┖锛岃妫�鏌ュ叆鍙�");
         }
-        return success(svyLibTemplateService.saveOrUpdateTemplate(svyLibTemplate));
+        return success(svyLibTemplateService.saveOrUpdateTemplate(svyLibTemplateVO));
     }
 
     /**
diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java b/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java
index f968f1a..96b5602 100644
--- a/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java
+++ b/ruoyi-common/src/main/java/com/ruoyi/common/utils/file/MimeTypeUtils.java
@@ -2,7 +2,7 @@
 
 /**
  * 濯掍綋绫诲瀷宸ュ叿绫�
- * 
+ *
  * @author ruoyi
  */
 public class MimeTypeUtils
@@ -16,7 +16,7 @@
     public static final String IMAGE_BMP = "image/bmp";
 
     public static final String IMAGE_GIF = "image/gif";
-    
+
     public static final String[] IMAGE_EXTENSION = { "bmp", "gif", "jpg", "jpeg", "png" };
 
     public static final String[] FLASH_EXTENSION = { "swf", "flv" };
@@ -33,6 +33,8 @@
             "doc", "docx", "xls", "xlsx", "ppt", "pptx", "html", "htm", "txt",
             // 鍘嬬缉鏂囦欢
             "rar", "zip", "gz", "bz2",
+            //闊抽鏍煎紡
+            "swf", "flv", "mp3", "wav", "wma", "wmv", "mid", "avi", "mpg", "asf", "rm", "rmvb",
             // 瑙嗛鏍煎紡
             "mp4", "avi", "rmvb",
             // pdf
diff --git a/smartor/src/main/java/com/smartor/domain/HeLibraryVO.java b/smartor/src/main/java/com/smartor/domain/HeLibraryVO.java
index 4eec999..3267596 100644
--- a/smartor/src/main/java/com/smartor/domain/HeLibraryVO.java
+++ b/smartor/src/main/java/com/smartor/domain/HeLibraryVO.java
@@ -236,4 +236,10 @@
     @Excel(name = "瀵屾枃鏈�")
     @ApiModelProperty("瀵屾枃鏈�")
     private String richText = "";
+
+    /**
+     * 绫诲瀷锛�1瀹f暀  2閫氱煡
+     */
+    @ApiModelProperty("绫诲瀷锛�1瀹f暀  2閫氱煡")
+    private String hetype;
 }
diff --git a/smartor/src/main/java/com/smartor/domain/Icd10Association.java b/smartor/src/main/java/com/smartor/domain/Icd10Association.java
index f001993..729caf3 100644
--- a/smartor/src/main/java/com/smartor/domain/Icd10Association.java
+++ b/smartor/src/main/java/com/smartor/domain/Icd10Association.java
@@ -120,4 +120,6 @@
     @Excel(name = "pageSize")
     private Integer pageSize;
 
+    @ApiModelProperty(value = "鏄惁鍒嗛〉")
+    private Boolean isPage = true;
 }
diff --git a/smartor/src/main/java/com/smartor/domain/PatFilterlist.java b/smartor/src/main/java/com/smartor/domain/PatFilterlist.java
new file mode 100644
index 0000000..a3beaff
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/PatFilterlist.java
@@ -0,0 +1,123 @@
+package com.smartor.domain;
+
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 鎮h�呰繃婊ゅ悕鍗曞璞� pat_filterlist
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@Data
+@ApiModel(value = "PatFilterlist", description = "鎮h�呰繃婊ゅ悕鍗曞璞� ")
+public class PatFilterlist extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 鑷ID
+     */
+    @ApiModelProperty("涓婚敭")
+    private Long id;
+
+    /**
+     * 鐥呬汉妗fID
+     */
+    @ApiModelProperty("鐥呬汉妗fID")
+    private Long patid;
+
+    /**
+     * 杩囨护绫诲瀷缂栧彿
+     */
+    @ApiModelProperty("杩囨护绫诲瀷缂栧彿")
+    private String filtertype;
+
+    /**
+     * 杩囨护绫诲瀷
+     */
+    @ApiModelProperty("杩囨护绫诲瀷")
+    private String filterdesc;
+
+    /**
+     * 杩囨护鐢宠璇存槑
+     */
+    @ApiModelProperty("杩囨护鐢宠璇存槑")
+    private String filternotes;
+
+    /**
+     * 鐢宠鏃ユ湡
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("鐢宠鏃ユ湡")
+    private Date applyTime;
+
+    /**
+     * 鍒犻櫎鏍囧織锛�0锛氭湭鍒犻櫎 1锛氬凡鍒犻櫎锛�
+     */
+    private String delFlag;
+
+    /**
+     * 瀹℃牳浜�
+     */
+    @ApiModelProperty("瀹℃牳浜�")
+    private Long checkBy;
+
+    /**
+     * 瀹℃牳鐘舵��
+     */
+    @ApiModelProperty("瀹℃牳鐘舵��")
+    private String checkFlag;
+
+    /**
+     * 瀹℃牳鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("瀹℃牳鏃堕棿")
+    private Date checkTime;
+
+    /**
+     * 瀹℃牳鎰忚
+     */
+    @ApiModelProperty("瀹℃牳鎰忚")
+    private String checkdesc;
+
+    /**
+     * 涓婁紶鏍囧織锛�0锛氭湭涓婁紶 1锛氬凡涓婁紶锛�
+     */
+    @ApiModelProperty("涓婁紶鏍囧織")
+    private Long isupload;
+
+    /**
+     * 涓婁紶鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("涓婁紶鏃堕棿")
+    private Date uploadTime;
+
+    /**
+     * 鏈烘瀯ID
+     */
+    @ApiModelProperty("鏈烘瀯ID")
+    private String orgid;
+
+    /**
+     * 鐖禝D
+     */
+    @ApiModelProperty("鐖禝D")
+    private Long pid;
+
+    /**
+     * GUID
+     */
+    @ApiModelProperty("GUID")
+    private String guid;
+
+}
diff --git a/smartor/src/main/java/com/smartor/domain/PatMedRegistration.java b/smartor/src/main/java/com/smartor/domain/PatMedRegistration.java
new file mode 100644
index 0000000..0051f1c
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/PatMedRegistration.java
@@ -0,0 +1,147 @@
+package com.smartor.domain;
+
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 鎮h�呮寕鍙疯褰曞璞� pat_med_registration
+ *
+ * @author ruoyi
+ * @date 2024-08-01
+ */
+@Data
+@ApiModel(value = "PatMedRegistration", description = "鎮h�呮寕鍙疯褰曞璞�")
+public class PatMedRegistration extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 鑷ID
+     */
+    private Long registid;
+
+    /**
+     * 娴佹按琛�
+     */
+    @ApiModelProperty("娴佹按琛�")
+    private String serialnum;
+
+    /**
+     * 妗fID
+     */
+    @ApiModelProperty("妗fID")
+    private Long patid;
+
+    /**
+     * 鍖婚櫌鍚嶇О
+     */
+    @ApiModelProperty("鍖婚櫌鍚嶇О")
+    private String hospitalname;
+
+    /**
+     * 鍖婚櫌缂栧彿
+     */
+    @ApiModelProperty("鍖婚櫌缂栧彿")
+    private String hospitalcode;
+
+    /**
+     * 绉戝浠g爜
+     */
+    @ApiModelProperty("绉戝浠g爜")
+    private String deptcode;
+
+    /**
+     * 绉戝鍚嶇О
+     */
+    @ApiModelProperty("绉戝鍚嶇О")
+    private String deptname;
+
+    /**
+     * 绉戝ID
+     */
+    @ApiModelProperty("绉戝ID")
+    private Long deptid;
+
+    /**
+     * 棰勭害鐘舵��;0.宸查绾� 1.宸插畬鎴� 2.宸插彇娑�
+     */
+    @ApiModelProperty("棰勭害鐘舵��;0.宸查绾� 1.宸插畬鎴� 2.宸插彇娑�")
+    private Long state;
+
+    /**
+     * 棰勭害鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("棰勭害鏃堕棿")
+    private Date appointmenttime;
+
+    /**
+     * 棰勭害鐝埆;1:涓婂崍 2:涓嬪崍 3:鏅氫笂
+     */
+    @ApiModelProperty("棰勭害鐝埆;1:涓婂崍 2:涓嬪崍 3:鏅氫笂")
+    private Long appointmenttimetype;
+
+    /**
+     * 棰勭害鍙锋簮
+     */
+    @ApiModelProperty("棰勭害鍙锋簮")
+    private String appointmentcode;
+
+    /**
+     * 棰勭害鏃舵寮�濮嬫椂闂�
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("棰勭害鏃舵寮�濮嬫椂闂�")
+    private Date appointmentbegintime;
+
+    /**
+     * 棰勭害鏃舵缁撴潫鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("棰勭害鏃舵缁撴潫鏃堕棿")
+    private Date appointmentendtime;
+
+    /**
+     * 鏈烘瀯ID
+     */
+    @ApiModelProperty("鏈烘瀯ID")
+    private String orgid;
+
+    /**
+     * 鍒犻櫎鏍囧織锛�0锛氭湭鍒犻櫎 1锛氬凡鍒犻櫎锛�
+     */
+    private String delFlag;
+
+    /**
+     * 涓婁紶鏍囧織锛�0锛氭湭涓婁紶 1锛氬凡涓婁紶锛�
+     */
+    @ApiModelProperty("涓婁紶鏍囧織")
+    private Long isupload;
+
+    /**
+     * 涓婁紶鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("涓婁紶鏃堕棿")
+    private Date uploadTime;
+
+    /**
+     * 鐖禝D
+     */
+    @ApiModelProperty("鐖禝D")
+    private Long pid;
+
+    /**
+     * GUID
+     */
+    @ApiModelProperty("GUID")
+    private String guid;
+
+}
diff --git a/smartor/src/main/java/com/smartor/domain/PatSpeciallist.java b/smartor/src/main/java/com/smartor/domain/PatSpeciallist.java
new file mode 100644
index 0000000..53330f3
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/PatSpeciallist.java
@@ -0,0 +1,122 @@
+package com.smartor.domain;
+
+import java.util.Date;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.apache.commons.lang3.builder.ToStringBuilder;
+import org.apache.commons.lang3.builder.ToStringStyle;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+
+/**
+ * 涓撶梾鎮h�呭璞� pat_speciallist
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@Data
+@ApiModel(value = "PatSpeciallist", description = "涓撶梾鎮h�呭璞� ")
+public class PatSpeciallist extends BaseEntity {
+    private static final long serialVersionUID = 1L;
+
+    /**
+     * 鑷ID
+     */
+    private Long id;
+
+    /**
+     * 鐥呬汉妗fID
+     */
+    @ApiModelProperty("鐥呬汉妗fID")
+    private Long patid;
+
+    /**
+     * sd锛坰pecialize disease锛� 绫诲瀷缂栧彿
+     */
+    @ApiModelProperty("绫诲瀷缂栧彿")
+    private String sdtype;
+
+    /**
+     * sd锛坰pecialize disease锛� 绫诲瀷
+     */
+    @ApiModelProperty("绫诲瀷鎻忚堪")
+    private String sddesc;
+
+    /**
+     * sd锛坰pecialize disease锛� 鐢宠璇存槑
+     */
+    @ApiModelProperty("鐢宠璇存槑")
+    private String sdnotes;
+
+    /**
+     * 鐢宠鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("鐢宠鏃堕棿")
+    private Date applyTime;
+
+    /**
+     * 鍒犻櫎鏍囧織锛�0锛氭湭鍒犻櫎 1锛氬凡鍒犻櫎锛�
+     */
+    private String delFlag;
+
+    /**
+     * 瀹℃牳浜�
+     */
+    @ApiModelProperty("瀹℃牳浜�")
+    private Long checkBy;
+
+    /**
+     * 瀹℃牳鐘舵��
+     */
+    @ApiModelProperty("瀹℃牳鐘舵��")
+    private String checkFlag;
+
+    /**
+     * 瀹℃牳鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("瀹℃牳鏃堕棿")
+    private Date checkTime;
+
+    /**
+     * 瀹℃牳鎰忚
+     */
+    @ApiModelProperty("瀹℃牳鎰忚")
+    private String checkdesc;
+
+    /**
+     * 涓婁紶鏍囧織锛�0锛氭湭涓婁紶 1锛氬凡涓婁紶锛�
+     */
+    @ApiModelProperty("涓婁紶鏍囧織")
+    private Long uploadFlag;
+
+    /**
+     * 涓婁紶鏃堕棿
+     */
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @ApiModelProperty("涓婁紶鏃堕棿")
+    private Date uploadTime;
+
+    /**
+     * 鏈烘瀯ID
+     */
+    @ApiModelProperty("鏈烘瀯ID")
+    private String orgid;
+
+    /**
+     * 鐖禝D
+     */
+    @ApiModelProperty("鐖禝D")
+    private Long pid;
+
+    /**
+     * GUID
+     */
+    @ApiModelProperty("GUID")
+    private String guid;
+
+}
diff --git a/smartor/src/main/java/com/smartor/domain/PerSonWorkbenchDto.java b/smartor/src/main/java/com/smartor/domain/PerSonWorkbenchDto.java
new file mode 100644
index 0000000..0872b3c
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/PerSonWorkbenchDto.java
@@ -0,0 +1,28 @@
+package com.smartor.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.Date;
+
+/**
+ * 澶栭儴鎮h�呮。妗堝璞� pat_archive_out
+ *
+ * @author ruoyi
+ * @date 2024-04-29
+ */
+@ApiModel(value = "PatArchiveOut", description = "澶栭儴鎮h�呮。妗堝璞�")
+@Data
+public class PerSonWorkbenchDto extends BaseEntity {
+
+    @ApiModelProperty("濮撳悕")
+    private String name;
+
+    @ApiModelProperty("鏁伴噺")
+    private String count;
+
+}
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceTask.java b/smartor/src/main/java/com/smartor/domain/ServiceTask.java
index 850bf5d..f251ef0 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceTask.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceTask.java
@@ -123,6 +123,17 @@
     @ApiModelProperty(value = "娣诲姞鏃堕棿")
     private Date addtime;
 
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "  ", width = 30, dateFormat = "yyyy-MM-dd")
+    @ApiModelProperty(value = "寮�濮嬫椂闂�")
+    private Date beginTime;
+
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = "  ", width = 30, dateFormat = "yyyy-MM-dd")
+    @ApiModelProperty(value = "缁撴潫鏃堕棿")
+    private Date endTime;
+
     /**
      * 瀹℃牳浜篿d
      */
diff --git a/smartor/src/main/java/com/smartor/domain/SvyLibTemplateVO.java b/smartor/src/main/java/com/smartor/domain/SvyLibTemplateVO.java
new file mode 100644
index 0000000..432e949
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/SvyLibTemplateVO.java
@@ -0,0 +1,243 @@
+package com.smartor.domain;
+
+import com.fasterxml.jackson.annotation.JsonFormat;
+import com.ruoyi.common.annotation.Excel;
+import com.ruoyi.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * 闂嵎瀵硅薄 svy_lib_Template
+ *
+ * @author ruoyi
+ * @date 2023-03-02
+ */
+@Data
+@ApiModel(value = "SvyLibTemplate", description = "闂嵎瀵硅薄")
+public class SvyLibTemplateVO extends BaseEntity {
+
+    /**
+     * 鑷ID
+     */
+    @ApiModelProperty(value = "鑷ID")
+    private Long svyid;
+
+    /**
+     * 闂嵎鍒嗙被ID
+     */
+    @ApiModelProperty(value = "闂嵎鍒嗙被ID", required = true)
+    @Excel(name = " 闂嵎鍒嗙被ID ")
+    private Long categoryid;
+
+    /**
+     * 闂嵎浠g爜
+     */
+    @ApiModelProperty(value = "闂嵎浠g爜")
+    @Excel(name = " 闂嵎浠g爜 ")
+    private String svycode;
+
+    /**
+     * 闂嵎鍚嶇О
+     */
+    @ApiModelProperty(value = "闂嵎鍚嶇О", required = true)
+    @Excel(name = " 闂嵎鍚嶇О ")
+    private String svyname;
+
+    /**
+     * 鎻忚堪
+     */
+    @ApiModelProperty(value = "鎻忚堪", required = true)
+    @Excel(name = " 鎻忚堪 ")
+    private String description;
+
+    /**
+     * 闂嵎浠嬬粛
+     */
+    @ApiModelProperty(value = "闂嵎浠嬬粛")
+    @Excel(name = " 闂嵎浠嬬粛 ")
+    private String introduce;
+
+    /**
+     * 闂嵎鎻愮ず
+     */
+    @ApiModelProperty(value = "闂嵎鎻愮ず")
+    @Excel(name = " 闂嵎鎻愮ず ")
+    private String submitprompt;
+
+    /**
+     * 妯℃澘ID
+     */
+    @ApiModelProperty(value = "妯℃澘ID")
+    @Excel(name = " 妯℃澘ID ")
+    private Long templateid;
+
+    /**
+     * 鐗堟湰
+     */
+    @ApiModelProperty(value = "鐗堟湰")
+    @Excel(name = " 鐗堟湰 ")
+    private String version;
+
+    /**
+     * 涓績搴撲唬鐮�
+     */
+    @ApiModelProperty(value = "涓績搴撲唬鐮�")
+    @Excel(name = " 涓績搴撲唬鐮� ")
+    private String centerlibrarycode;
+
+    /**
+     * 涓績搴揑D
+     */
+    @ApiModelProperty(value = "涓績搴揑D")
+    @Excel(name = " 涓績搴揑D ")
+    private Long centerlibraryid;
+
+    /**
+     * 鏄惁鏈湴
+     */
+    @ApiModelProperty(value = "鏄惁鏈湴")
+    @Excel(name = " 鏄惁鏈湴 ")
+    private Long islocal;
+
+    /**
+     * 鏄惁鍚敤
+     */
+    @ApiModelProperty(value = "鏄惁鍚敤")
+    @Excel(name = " 鏄惁鍚敤 ")
+    private String isenable = "0";
+
+    /**
+     * 鏈烘瀯ID
+     */
+    @ApiModelProperty(value = "鏈烘瀯ID")
+    @Excel(name = " 鏈烘瀯ID ")
+    private String orgid;
+
+    /**
+     * 鍒犻櫎鏍囪
+     */
+    @ApiModelProperty(value = "鍒犻櫎鏍囪")
+    private String delFlag;
+
+    /**
+     * 涓婁紶鏍囪
+     */
+    @ApiModelProperty(value = "涓婁紶鏍囪")
+    @Excel(name = " 涓婁紶鏍囪 ")
+    private Long isupload;
+
+
+    /**
+     * 涓婁紶鏃堕棿
+     */
+    @ApiModelProperty(value = "涓婁紶鏃堕棿")
+    @JsonFormat(pattern = "yyyy-MM-dd")
+    @Excel(name = " 涓婁紶鏃堕棿 ", width = 30, dateFormat = "yyyy-MM-dd")
+    private Date uploadTime;
+
+    /**
+     * 鐤剧梾鍚嶇О
+     */
+    @ApiModelProperty(value = "鐤剧梾鍚嶇О")
+    private String icdname;
+
+    /**
+     * 鐤剧梾ID
+     */
+    @ApiModelProperty(value = "鐤剧梾鍏宠仈琛�")
+    private List<Icd10Association> icd10Associations;
+
+    /**
+     * 闂嵎棰樼洰闆嗗悎
+     */
+    @ApiModelProperty(value = "闂嵎棰樼洰闆嗗悎")
+    private List<SvyLibTemplateScript> svyTemplateLibScripts;
+
+    /**
+     * 妯℃澘绉戝鍏宠仈闆嗗悎
+     */
+    @ApiModelProperty(value = "妯℃澘绉戝鍏宠仈闆嗗悎")
+    private List<TempDetpRelevance> tempDetpRelevances = new ArrayList<>();
+
+    /**
+     * 鏄惁瀛樺湪鎿嶄綔锛�1 鏂板 2淇敼 3鍒犻櫎
+     */
+    @ApiModelProperty(value = "鏄惁瀛樺湪鎿嶄綔锛�1 鏂板 2淇敼 3鍒犻櫎")
+    private Integer isoperation;
+
+    /**
+     * 绉戝鍚嶇О
+     */
+    @Excel(name = "绉戝鍚嶇О")
+    @ApiModelProperty("绉戝鍚嶇О")
+    private String deptNames = "";
+
+    /**
+     * 鏍囩淇℃伅
+     */
+    @Excel(name = "鏍囩淇℃伅")
+    @ApiModelProperty("鏍囩淇℃伅")
+    private List<SvyLibTemplateTag> svyLibTemplateTagList;
+
+    /**
+     * 鍏跺畠鐤剧梾
+     */
+    @Excel(name = "鍏跺畠鐤剧梾")
+    @ApiModelProperty("鍏跺畠鐤剧梾")
+    private List<Icd10Association> icd10AssociationList;
+
+    /**
+     * 闄㈠尯
+     */
+    @Excel(name = "闄㈠尯")
+    @ApiModelProperty("闄㈠尯")
+    private String campus = "";
+
+    /**
+     * 閫傜敤鏂瑰紡锛氳皟鏌ヨ〃1锛屾櫤鑳借闊�2銆佷汉宸�3
+     */
+    @Excel(name = "闄㈤�傜敤鏂瑰紡锛氳皟鏌ヨ〃1锛屾櫤鑳借闊�2銆佷汉宸�3鍖�")
+    @ApiModelProperty("閫傜敤鏂瑰紡锛氳皟鏌ヨ〃1锛屾櫤鑳借闊�2銆佷汉宸�3")
+    private String suitway = "";
+
+
+    /**
+     * 鍏跺畠鏁版嵁锛堝瓨鍌ㄥ彉閲忥級
+     */
+    @ApiModelProperty("鍏跺畠鏁版嵁锛堝瓨鍌ㄥ彉閲忥級")
+    private String otherdata = "";
+
+    /**
+     * 闂鎬诲垎鍊�
+     */
+    @ApiModelProperty("闂鎬诲垎鍊�")
+    private String scriptScore;
+
+    /**
+     * 鍊肩被鍨嬶紙1 閫夐」  2 鏂囨湰  3 鏁板�硷級
+     */
+    @ApiModelProperty(value = "鍊肩被鍨嬶紙1 閫夐」  2 鏂囨湰  3 鏁板�硷級")
+    @Excel(name = "鍊肩被鍨�", readConverterExp = "1=閫夐」,2=鏂囨湰,3=鏁板��")
+    private Long valueType;
+
+
+    @ApiModelProperty(value = "鍥炲锛堟寚闂鐨勫洖澶嶏紝缁欓棶绛旈鐢ㄧ殑锛�")
+    private String reply;
+
+    @ApiModelProperty(value = "鍒嗘暟绫诲瀷锛堟暟瀛楋紝瀛楁瘝锛岀瓑绾э級")
+    private String scoreType;
+
+
+    public SvyLibTemplateVO() {
+    }
+
+    public SvyLibTemplateVO(Long svyid, String icdname) {
+        this.svyid = svyid;
+        this.icdname = icdname;
+    }
+}
diff --git a/smartor/src/main/java/com/smartor/mapper/PatArchiveOutMapper.java b/smartor/src/main/java/com/smartor/mapper/PatArchiveOutMapper.java
index c9de4ee..8e1495f 100644
--- a/smartor/src/main/java/com/smartor/mapper/PatArchiveOutMapper.java
+++ b/smartor/src/main/java/com/smartor/mapper/PatArchiveOutMapper.java
@@ -1,9 +1,12 @@
 package com.smartor.mapper;
 
 import com.smartor.domain.PatArchiveOut;
+import com.smartor.domain.PerSonWorkbenchDto;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
+import java.util.Map;
 
 /**
  * 澶栭儴鎮h�呮。妗圡apper鎺ュ彛
@@ -12,8 +15,7 @@
  * @date 2024-04-29
  */
 @Mapper
-public interface PatArchiveOutMapper
-{
+public interface PatArchiveOutMapper {
     /**
      * 鏌ヨ澶栭儴鎮h�呮。妗�
      *
@@ -22,6 +24,8 @@
      */
     public PatArchiveOut selectPatArchiveOutByPatid(Long patid);
 
+    public List<PerSonWorkbenchDto> selectPatArchiveCount(@Param("deptIds") long[] deptIds,@Param("drCodes")  String[] drCodes);
+
     /**
      * 鏌ヨ澶栭儴鎮h�呮。妗堝垪琛�
      *
diff --git a/smartor/src/main/java/com/smartor/mapper/PatFilterlistMapper.java b/smartor/src/main/java/com/smartor/mapper/PatFilterlistMapper.java
new file mode 100644
index 0000000..5814ab7
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/mapper/PatFilterlistMapper.java
@@ -0,0 +1,64 @@
+package com.smartor.mapper;
+
+import com.smartor.domain.PatFilterlist;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 鎮h�呰繃婊ゅ悕鍗昅apper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@Mapper
+public interface PatFilterlistMapper
+{
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param id 鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 鎮h�呰繃婊ゅ悕鍗�
+     */
+    public PatFilterlist selectPatFilterlistById(Long id);
+
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗曞垪琛�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 鎮h�呰繃婊ゅ悕鍗曢泦鍚�
+     */
+    public List<PatFilterlist> selectPatFilterlistList(PatFilterlist patFilterlist);
+
+    /**
+     * 鏂板鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 缁撴灉
+     */
+    public int insertPatFilterlist(PatFilterlist patFilterlist);
+
+    /**
+     * 淇敼鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 缁撴灉
+     */
+    public int updatePatFilterlist(PatFilterlist patFilterlist);
+
+    /**
+     * 鍒犻櫎鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param id 鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 缁撴灉
+     */
+    public int deletePatFilterlistById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deletePatFilterlistByIds(Long[] ids);
+}
diff --git a/smartor/src/main/java/com/smartor/mapper/PatMedRegistrationMapper.java b/smartor/src/main/java/com/smartor/mapper/PatMedRegistrationMapper.java
new file mode 100644
index 0000000..585da34
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/mapper/PatMedRegistrationMapper.java
@@ -0,0 +1,63 @@
+package com.smartor.mapper;
+
+import com.smartor.domain.PatMedRegistration;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 鎮h�呮寕鍙疯褰昅apper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2024-08-01
+ */
+@Mapper
+public interface PatMedRegistrationMapper {
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰�
+     *
+     * @param registid 鎮h�呮寕鍙疯褰曚富閿�
+     * @return 鎮h�呮寕鍙疯褰�
+     */
+    public PatMedRegistration selectPatMedRegistrationByRegistid(Long registid);
+
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰曞垪琛�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 鎮h�呮寕鍙疯褰曢泦鍚�
+     */
+    public List<PatMedRegistration> selectPatMedRegistrationList(PatMedRegistration patMedRegistration);
+
+    /**
+     * 鏂板鎮h�呮寕鍙疯褰�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 缁撴灉
+     */
+    public int insertPatMedRegistration(PatMedRegistration patMedRegistration);
+
+    /**
+     * 淇敼鎮h�呮寕鍙疯褰�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 缁撴灉
+     */
+    public int updatePatMedRegistration(PatMedRegistration patMedRegistration);
+
+    /**
+     * 鍒犻櫎鎮h�呮寕鍙疯褰�
+     *
+     * @param registid 鎮h�呮寕鍙疯褰曚富閿�
+     * @return 缁撴灉
+     */
+    public int deletePatMedRegistrationByRegistid(Long registid);
+
+    /**
+     * 鎵归噺鍒犻櫎鎮h�呮寕鍙疯褰�
+     *
+     * @param registids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deletePatMedRegistrationByRegistids(Long[] registids);
+}
diff --git a/smartor/src/main/java/com/smartor/mapper/PatSpeciallistMapper.java b/smartor/src/main/java/com/smartor/mapper/PatSpeciallistMapper.java
new file mode 100644
index 0000000..a75296b
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/mapper/PatSpeciallistMapper.java
@@ -0,0 +1,63 @@
+package com.smartor.mapper;
+
+import com.smartor.domain.PatSpeciallist;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+/**
+ * 涓撶梾鎮h�匨apper鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@Mapper
+public interface PatSpeciallistMapper {
+    /**
+     * 鏌ヨ涓撶梾鎮h��
+     *
+     * @param id 涓撶梾鎮h�呬富閿�
+     * @return 涓撶梾鎮h��
+     */
+    public PatSpeciallist selectPatSpeciallistById(Long id);
+
+    /**
+     * 鏌ヨ涓撶梾鎮h�呭垪琛�
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 涓撶梾鎮h�呴泦鍚�
+     */
+    public List<PatSpeciallist> selectPatSpeciallistList(PatSpeciallist patSpeciallist);
+
+    /**
+     * 鏂板涓撶梾鎮h��
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 缁撴灉
+     */
+    public int insertPatSpeciallist(PatSpeciallist patSpeciallist);
+
+    /**
+     * 淇敼涓撶梾鎮h��
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 缁撴灉
+     */
+    public int updatePatSpeciallist(PatSpeciallist patSpeciallist);
+
+    /**
+     * 鍒犻櫎涓撶梾鎮h��
+     *
+     * @param id 涓撶梾鎮h�呬富閿�
+     * @return 缁撴灉
+     */
+    public int deletePatSpeciallistById(Long id);
+
+    /**
+     * 鎵归噺鍒犻櫎涓撶梾鎮h��
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎
+     * @return 缁撴灉
+     */
+    public int deletePatSpeciallistByIds(Long[] ids);
+}
diff --git a/smartor/src/main/java/com/smartor/service/IPatArchiveService.java b/smartor/src/main/java/com/smartor/service/IPatArchiveService.java
index 86eea7c..5d5fd83 100644
--- a/smartor/src/main/java/com/smartor/service/IPatArchiveService.java
+++ b/smartor/src/main/java/com/smartor/service/IPatArchiveService.java
@@ -49,6 +49,8 @@
      */
     public Boolean saveOrUpdatePatInfo(PatArchiveVO patArchiveVO);
 
+    public Boolean update(PatArchive patArchive);
+
     /**
      * 鎵归噺鍒犻櫎鎮h�呮。妗�
      *
@@ -89,7 +91,7 @@
 
     public List<PatArchivetagAndPatientInfo> patInfoByTag(List<Long> tagids);
 
-    public List<Object> getUserTreatmentInfo(String pid,String type);
+    public List<Object> getUserTreatmentInfo(String pid, String type);
 
     public List<PatTaskRelevance> getPatientInfo(PatArchiveReq patArchiveReq);
 }
diff --git a/smartor/src/main/java/com/smartor/service/IPatFilterlistService.java b/smartor/src/main/java/com/smartor/service/IPatFilterlistService.java
new file mode 100644
index 0000000..ec5b8cc
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/IPatFilterlistService.java
@@ -0,0 +1,62 @@
+package com.smartor.service;
+
+import com.smartor.domain.PatFilterlist;
+
+import java.util.List;
+
+/**
+ * 鎮h�呰繃婊ゅ悕鍗昐ervice鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+public interface IPatFilterlistService
+{
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param id 鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 鎮h�呰繃婊ゅ悕鍗�
+     */
+    public PatFilterlist selectPatFilterlistById(Long id);
+
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗曞垪琛�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 鎮h�呰繃婊ゅ悕鍗曢泦鍚�
+     */
+    public List<PatFilterlist> selectPatFilterlistList(PatFilterlist patFilterlist);
+
+    /**
+     * 鏂板鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 缁撴灉
+     */
+    public int insertPatFilterlist(PatFilterlist patFilterlist);
+
+    /**
+     * 淇敼鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 缁撴灉
+     */
+    public int updatePatFilterlist(PatFilterlist patFilterlist);
+
+    /**
+     * 鎵归噺鍒犻櫎鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鎮h�呰繃婊ゅ悕鍗曚富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deletePatFilterlistByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎鎮h�呰繃婊ゅ悕鍗曚俊鎭�
+     *
+     * @param id 鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 缁撴灉
+     */
+    public int deletePatFilterlistById(Long id);
+}
diff --git a/smartor/src/main/java/com/smartor/service/IPatMedRegistrationService.java b/smartor/src/main/java/com/smartor/service/IPatMedRegistrationService.java
new file mode 100644
index 0000000..1aae72c
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/IPatMedRegistrationService.java
@@ -0,0 +1,61 @@
+package com.smartor.service;
+
+import com.smartor.domain.PatMedRegistration;
+
+import java.util.List;
+
+/**
+ * 鎮h�呮寕鍙疯褰昐ervice鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2024-08-01
+ */
+public interface IPatMedRegistrationService {
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰�
+     *
+     * @param registid 鎮h�呮寕鍙疯褰曚富閿�
+     * @return 鎮h�呮寕鍙疯褰�
+     */
+    public PatMedRegistration selectPatMedRegistrationByRegistid(Long registid);
+
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰曞垪琛�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 鎮h�呮寕鍙疯褰曢泦鍚�
+     */
+    public List<PatMedRegistration> selectPatMedRegistrationList(PatMedRegistration patMedRegistration);
+
+    /**
+     * 鏂板鎮h�呮寕鍙疯褰�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 缁撴灉
+     */
+    public int insertPatMedRegistration(PatMedRegistration patMedRegistration);
+
+    /**
+     * 淇敼鎮h�呮寕鍙疯褰�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 缁撴灉
+     */
+    public int updatePatMedRegistration(PatMedRegistration patMedRegistration);
+
+    /**
+     * 鎵归噺鍒犻櫎鎮h�呮寕鍙疯褰�
+     *
+     * @param registids 闇�瑕佸垹闄ょ殑鎮h�呮寕鍙疯褰曚富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deletePatMedRegistrationByRegistids(Long[] registids);
+
+    /**
+     * 鍒犻櫎鎮h�呮寕鍙疯褰曚俊鎭�
+     *
+     * @param registid 鎮h�呮寕鍙疯褰曚富閿�
+     * @return 缁撴灉
+     */
+    public int deletePatMedRegistrationByRegistid(Long registid);
+}
diff --git a/smartor/src/main/java/com/smartor/service/IPatSpeciallistService.java b/smartor/src/main/java/com/smartor/service/IPatSpeciallistService.java
new file mode 100644
index 0000000..d31748e
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/IPatSpeciallistService.java
@@ -0,0 +1,62 @@
+package com.smartor.service;
+
+import com.smartor.domain.PatSpeciallist;
+
+import java.util.List;
+
+/**
+ * 涓撶梾鎮h�匰ervice鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+public interface IPatSpeciallistService
+{
+    /**
+     * 鏌ヨ涓撶梾鎮h��
+     *
+     * @param id 涓撶梾鎮h�呬富閿�
+     * @return 涓撶梾鎮h��
+     */
+    public PatSpeciallist selectPatSpeciallistById(Long id);
+
+    /**
+     * 鏌ヨ涓撶梾鎮h�呭垪琛�
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 涓撶梾鎮h�呴泦鍚�
+     */
+    public List<PatSpeciallist> selectPatSpeciallistList(PatSpeciallist patSpeciallist);
+
+    /**
+     * 鏂板涓撶梾鎮h��
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 缁撴灉
+     */
+    public int insertPatSpeciallist(PatSpeciallist patSpeciallist);
+
+    /**
+     * 淇敼涓撶梾鎮h��
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 缁撴灉
+     */
+    public int updatePatSpeciallist(PatSpeciallist patSpeciallist);
+
+    /**
+     * 鎵归噺鍒犻櫎涓撶梾鎮h��
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑涓撶梾鎮h�呬富閿泦鍚�
+     * @return 缁撴灉
+     */
+    public int deletePatSpeciallistByIds(Long[] ids);
+
+    /**
+     * 鍒犻櫎涓撶梾鎮h�呬俊鎭�
+     *
+     * @param id 涓撶梾鎮h�呬富閿�
+     * @return 缁撴灉
+     */
+    public int deletePatSpeciallistById(Long id);
+}
diff --git a/smartor/src/main/java/com/smartor/service/ISvyLibTemplateService.java b/smartor/src/main/java/com/smartor/service/ISvyLibTemplateService.java
index da112dd..a9924be 100644
--- a/smartor/src/main/java/com/smartor/service/ISvyLibTemplateService.java
+++ b/smartor/src/main/java/com/smartor/service/ISvyLibTemplateService.java
@@ -5,6 +5,7 @@
 import com.ruoyi.common.core.domain.AjaxResult;
 import com.smartor.domain.SvyLibTemplate;
 import com.smartor.domain.SvyLibTemplateReq;
+import com.smartor.domain.SvyLibTemplateVO;
 import org.springframework.web.bind.annotation.RequestBody;
 
 /**
@@ -30,7 +31,7 @@
      * @param svyLibTemplateReq 闂嵎
      * @return 闂嵎闆嗗悎
      */
-    public List<SvyLibTemplate> selectSvyLibTemplateList(SvyLibTemplateReq svyLibTemplateReq);
+    public List<SvyLibTemplateVO> selectSvyLibTemplateList(SvyLibTemplateReq svyLibTemplateReq);
 
 //    /**
 //     * 鏂板闂嵎
@@ -46,7 +47,7 @@
      * @param svyLibTemplate
      * @return
      */
-    public Integer saveOrUpdateTemplate(@RequestBody SvyLibTemplate svyLibTemplate);
+    public Integer saveOrUpdateTemplate(SvyLibTemplateVO svyLibTemplateVO);
 
     /**
      * 淇敼闂嵎
diff --git a/smartor/src/main/java/com/smartor/service/PersonWorkbenchService.java b/smartor/src/main/java/com/smartor/service/PersonWorkbenchService.java
new file mode 100644
index 0000000..1e688e6
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/PersonWorkbenchService.java
@@ -0,0 +1,20 @@
+package com.smartor.service;
+
+import com.smartor.domain.BaseTag;
+import com.smartor.domain.PerSonWorkbenchDto;
+
+import java.util.List;
+
+/**
+ * 鏍囩Service鎺ュ彛
+ *
+ * @author ruoyi
+ * @date 2023-06-02
+ */
+public interface PersonWorkbenchService {
+    /**
+     * 褰撳墠鐧诲綍鐢ㄦ埛鐨勯棬璇娿�佸湪闄€�佸嚭闄㈢梾浜虹殑缁熻鎯呭喌
+     */
+    public  List<PerSonWorkbenchDto> getPatCount(String detpId, String drCode);
+
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
index c860b0e..8dbefb7 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -107,6 +107,15 @@
         return null;
     }
 
+    @Override
+    public Boolean update(PatArchive patArchive) {
+        int i = patArchiveMapper.updatePatArchive(patArchive);
+        if (i != 1) {
+            return false;
+        }
+        return true;
+    }
+
     /**
      * 鏂板鎴栦慨鏀规偅鑰呮。淇℃伅
      *
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatFilterlistServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatFilterlistServiceImpl.java
new file mode 100644
index 0000000..874605a
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/impl/PatFilterlistServiceImpl.java
@@ -0,0 +1,97 @@
+package com.smartor.service.impl;
+
+import com.ruoyi.common.utils.DateUtils;
+import com.smartor.domain.PatFilterlist;
+import com.smartor.mapper.PatFilterlistMapper;
+import com.smartor.service.IPatFilterlistService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 鎮h�呰繃婊ゅ悕鍗昐ervice涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@Service
+public class PatFilterlistServiceImpl implements IPatFilterlistService
+{
+    @Autowired
+    private PatFilterlistMapper patFilterlistMapper;
+
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param id 鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 鎮h�呰繃婊ゅ悕鍗�
+     */
+    @Override
+    public PatFilterlist selectPatFilterlistById(Long id)
+    {
+        return patFilterlistMapper.selectPatFilterlistById(id);
+    }
+
+    /**
+     * 鏌ヨ鎮h�呰繃婊ゅ悕鍗曞垪琛�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 鎮h�呰繃婊ゅ悕鍗�
+     */
+    @Override
+    public List<PatFilterlist> selectPatFilterlistList(PatFilterlist patFilterlist)
+    {
+        return patFilterlistMapper.selectPatFilterlistList(patFilterlist);
+    }
+
+    /**
+     * 鏂板鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertPatFilterlist(PatFilterlist patFilterlist)
+    {
+        patFilterlist.setCreateTime(DateUtils.getNowDate());
+        return patFilterlistMapper.insertPatFilterlist(patFilterlist);
+    }
+
+    /**
+     * 淇敼鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param patFilterlist 鎮h�呰繃婊ゅ悕鍗�
+     * @return 缁撴灉
+     */
+    @Override
+    public int updatePatFilterlist(PatFilterlist patFilterlist)
+    {
+        patFilterlist.setUpdateTime(DateUtils.getNowDate());
+        return patFilterlistMapper.updatePatFilterlist(patFilterlist);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鎮h�呰繃婊ゅ悕鍗�
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePatFilterlistByIds(Long[] ids)
+    {
+        return patFilterlistMapper.deletePatFilterlistByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎鎮h�呰繃婊ゅ悕鍗曚俊鎭�
+     *
+     * @param id 鎮h�呰繃婊ゅ悕鍗曚富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePatFilterlistById(Long id)
+    {
+        return patFilterlistMapper.deletePatFilterlistById(id);
+    }
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java
index 062e758..f0f82f9 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatMedOuthospServiceImpl.java
@@ -10,19 +10,19 @@
 
 /**
  * 鎮h�呴棬璇婅褰昐ervice涓氬姟灞傚鐞�
- * 
+ *
  * @author smartor
  * @date 2023-03-04
  */
 @Service
-public class PatMedOuthospServiceImpl implements IPatMedOuthospService 
+public class PatMedOuthospServiceImpl implements IPatMedOuthospService
 {
     @Autowired
     private PatMedOuthospMapper patMedOuthospMapper;
 
     /**
      * 鏌ヨ鎮h�呴棬璇婅褰�
-     * 
+     *
      * @param id 鎮h�呴棬璇婅褰曚富閿�
      * @return 鎮h�呴棬璇婅褰�
      */
@@ -34,7 +34,7 @@
 
     /**
      * 鏌ヨ鎮h�呴棬璇婅褰曞垪琛�
-     * 
+     *
      * @param patMedOuthosp 鎮h�呴棬璇婅褰�
      * @return 鎮h�呴棬璇婅褰�
      */
@@ -46,7 +46,7 @@
 
     /**
      * 鏂板鎮h�呴棬璇婅褰�
-     * 
+     *
      * @param patMedOuthosp 鎮h�呴棬璇婅褰�
      * @return 缁撴灉
      */
@@ -54,12 +54,13 @@
     public int insertPatMedOuthosp(PatMedOuthosp patMedOuthosp)
     {
         patMedOuthosp.setCreateTime(DateUtils.getNowDate());
+        patMedOuthosp.setUpdateTime(DateUtils.getNowDate());
         return patMedOuthospMapper.insertPatMedOuthosp(patMedOuthosp);
     }
 
     /**
      * 淇敼鎮h�呴棬璇婅褰�
-     * 
+     *
      * @param patMedOuthosp 鎮h�呴棬璇婅褰�
      * @return 缁撴灉
      */
@@ -72,7 +73,7 @@
 
     /**
      * 鎵归噺鍒犻櫎鎮h�呴棬璇婅褰�
-     * 
+     *
      * @param ids 闇�瑕佸垹闄ょ殑鎮h�呴棬璇婅褰曚富閿�
      * @return 缁撴灉
      */
@@ -84,7 +85,7 @@
 
     /**
      * 鍒犻櫎鎮h�呴棬璇婅褰曚俊鎭�
-     * 
+     *
      * @param id 鎮h�呴棬璇婅褰曚富閿�
      * @return 缁撴灉
      */
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedRegistrationServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedRegistrationServiceImpl.java
new file mode 100644
index 0000000..f224999
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/impl/PatMedRegistrationServiceImpl.java
@@ -0,0 +1,97 @@
+package com.smartor.service.impl;
+
+import com.ruoyi.common.utils.DateUtils;
+import com.smartor.domain.PatMedRegistration;
+import com.smartor.mapper.PatMedRegistrationMapper;
+import com.smartor.service.IPatMedRegistrationService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 鎮h�呮寕鍙疯褰昐ervice涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2024-08-01
+ */
+@Service
+public class PatMedRegistrationServiceImpl implements IPatMedRegistrationService
+{
+    @Autowired
+    private PatMedRegistrationMapper patMedRegistrationMapper;
+
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰�
+     *
+     * @param registid 鎮h�呮寕鍙疯褰曚富閿�
+     * @return 鎮h�呮寕鍙疯褰�
+     */
+    @Override
+    public PatMedRegistration selectPatMedRegistrationByRegistid(Long registid)
+    {
+        return patMedRegistrationMapper.selectPatMedRegistrationByRegistid(registid);
+    }
+
+    /**
+     * 鏌ヨ鎮h�呮寕鍙疯褰曞垪琛�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 鎮h�呮寕鍙疯褰�
+     */
+    @Override
+    public List<PatMedRegistration> selectPatMedRegistrationList(PatMedRegistration patMedRegistration)
+    {
+        return patMedRegistrationMapper.selectPatMedRegistrationList(patMedRegistration);
+    }
+
+    /**
+     * 鏂板鎮h�呮寕鍙疯褰�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertPatMedRegistration(PatMedRegistration patMedRegistration)
+    {
+        patMedRegistration.setCreateTime(DateUtils.getNowDate());
+        return patMedRegistrationMapper.insertPatMedRegistration(patMedRegistration);
+    }
+
+    /**
+     * 淇敼鎮h�呮寕鍙疯褰�
+     *
+     * @param patMedRegistration 鎮h�呮寕鍙疯褰�
+     * @return 缁撴灉
+     */
+    @Override
+    public int updatePatMedRegistration(PatMedRegistration patMedRegistration)
+    {
+        patMedRegistration.setUpdateTime(DateUtils.getNowDate());
+        return patMedRegistrationMapper.updatePatMedRegistration(patMedRegistration);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎鎮h�呮寕鍙疯褰�
+     *
+     * @param registids 闇�瑕佸垹闄ょ殑鎮h�呮寕鍙疯褰曚富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePatMedRegistrationByRegistids(Long[] registids)
+    {
+        return patMedRegistrationMapper.deletePatMedRegistrationByRegistids(registids);
+    }
+
+    /**
+     * 鍒犻櫎鎮h�呮寕鍙疯褰曚俊鎭�
+     *
+     * @param registid 鎮h�呮寕鍙疯褰曚富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePatMedRegistrationByRegistid(Long registid)
+    {
+        return patMedRegistrationMapper.deletePatMedRegistrationByRegistid(registid);
+    }
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatSpeciallistServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatSpeciallistServiceImpl.java
new file mode 100644
index 0000000..28eb2a3
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/impl/PatSpeciallistServiceImpl.java
@@ -0,0 +1,97 @@
+package com.smartor.service.impl;
+
+import com.ruoyi.common.utils.DateUtils;
+import com.smartor.domain.PatSpeciallist;
+import com.smartor.mapper.PatSpeciallistMapper;
+import com.smartor.service.IPatSpeciallistService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+/**
+ * 涓撶梾鎮h�匰ervice涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2024-08-02
+ */
+@Service
+public class PatSpeciallistServiceImpl implements IPatSpeciallistService
+{
+    @Autowired
+    private PatSpeciallistMapper patSpeciallistMapper;
+
+    /**
+     * 鏌ヨ涓撶梾鎮h��
+     *
+     * @param id 涓撶梾鎮h�呬富閿�
+     * @return 涓撶梾鎮h��
+     */
+    @Override
+    public PatSpeciallist selectPatSpeciallistById(Long id)
+    {
+        return patSpeciallistMapper.selectPatSpeciallistById(id);
+    }
+
+    /**
+     * 鏌ヨ涓撶梾鎮h�呭垪琛�
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 涓撶梾鎮h��
+     */
+    @Override
+    public List<PatSpeciallist> selectPatSpeciallistList(PatSpeciallist patSpeciallist)
+    {
+        return patSpeciallistMapper.selectPatSpeciallistList(patSpeciallist);
+    }
+
+    /**
+     * 鏂板涓撶梾鎮h��
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 缁撴灉
+     */
+    @Override
+    public int insertPatSpeciallist(PatSpeciallist patSpeciallist)
+    {
+        patSpeciallist.setCreateTime(DateUtils.getNowDate());
+        return patSpeciallistMapper.insertPatSpeciallist(patSpeciallist);
+    }
+
+    /**
+     * 淇敼涓撶梾鎮h��
+     *
+     * @param patSpeciallist 涓撶梾鎮h��
+     * @return 缁撴灉
+     */
+    @Override
+    public int updatePatSpeciallist(PatSpeciallist patSpeciallist)
+    {
+        patSpeciallist.setUpdateTime(DateUtils.getNowDate());
+        return patSpeciallistMapper.updatePatSpeciallist(patSpeciallist);
+    }
+
+    /**
+     * 鎵归噺鍒犻櫎涓撶梾鎮h��
+     *
+     * @param ids 闇�瑕佸垹闄ょ殑涓撶梾鎮h�呬富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePatSpeciallistByIds(Long[] ids)
+    {
+        return patSpeciallistMapper.deletePatSpeciallistByIds(ids);
+    }
+
+    /**
+     * 鍒犻櫎涓撶梾鎮h�呬俊鎭�
+     *
+     * @param id 涓撶梾鎮h�呬富閿�
+     * @return 缁撴灉
+     */
+    @Override
+    public int deletePatSpeciallistById(Long id)
+    {
+        return patSpeciallistMapper.deletePatSpeciallistById(id);
+    }
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/PersonWorkbenchServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PersonWorkbenchServiceImpl.java
new file mode 100644
index 0000000..854c5ad
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/service/impl/PersonWorkbenchServiceImpl.java
@@ -0,0 +1,35 @@
+package com.smartor.service.impl;
+
+import com.ruoyi.common.utils.DateUtils;
+import com.smartor.domain.Icd10;
+import com.smartor.domain.PerSonWorkbenchDto;
+import com.smartor.mapper.Icd10Mapper;
+import com.smartor.mapper.PatArchiveOutMapper;
+import com.smartor.service.IIcd10Service;
+import com.smartor.service.PersonWorkbenchService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.Arrays;
+import java.util.List;
+
+/**
+ * 鐤剧梾Service涓氬姟灞傚鐞�
+ *
+ * @author ruoyi
+ * @date 2023-12-21
+ */
+@Service
+public class PersonWorkbenchServiceImpl implements PersonWorkbenchService {
+    @Autowired
+    private PatArchiveOutMapper patArchiveOutMapper;
+
+    @Override
+    public List<PerSonWorkbenchDto> getPatCount(String detpId, String drCode) {
+        long[] deptIds = Arrays.stream(detpId.split(",")).mapToLong(Long::parseLong).toArray();
+        String[] drCodes = drCode.split(",");
+
+        List<PerSonWorkbenchDto> perSonWorkbenchDtos = patArchiveOutMapper.selectPatArchiveCount(deptIds, drCodes);
+        return perSonWorkbenchDtos;
+    }
+}
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
index ef69ced..7e26736 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceTaskServiceImpl.java
@@ -87,6 +87,7 @@
     @Override
     public int insertServiceTask(ServiceTask serviceTask) {
         serviceTask.setCreateTime(DateUtils.getNowDate());
+        serviceTask.setUpdateTime(DateUtils.getNowDate());
         return serviceTaskMapper.insertServiceTask(serviceTask);
     }
 
diff --git a/smartor/src/main/java/com/smartor/service/impl/SvyLibTemplateServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/SvyLibTemplateServiceImpl.java
index e11b3c6..7baac3f 100644
--- a/smartor/src/main/java/com/smartor/service/impl/SvyLibTemplateServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/SvyLibTemplateServiceImpl.java
@@ -1,6 +1,7 @@
 package com.smartor.service.impl;
 
 import com.ruoyi.common.utils.DateUtils;
+import com.ruoyi.common.utils.DtoConversionUtils;
 import com.ruoyi.common.utils.StringUtils;
 import com.smartor.domain.*;
 import com.smartor.mapper.*;
@@ -37,6 +38,8 @@
     private TempDetpRelevanceMapper tempDetpRelevanceMapper;
     @Autowired
     private SvyLibTemplateTagMapper svyLibTemplateTagMapper;
+    @Autowired
+    private Icd10AssociationMapper icd10AssociationMapper;
 
     /**
      * 鏌ヨ闂嵎
@@ -51,7 +54,7 @@
 
     @Override
     public List<SvyLibTemplate> getSviLibTemplate(SvyLibTemplate svyLibTemplate) {
-        SvyLibTemplateReq svyLibTemplateReq=new SvyLibTemplateReq();
+        SvyLibTemplateReq svyLibTemplateReq = new SvyLibTemplateReq();
         svyLibTemplateReq.setSvyid(svyLibTemplate.getSvyid());
         svyLibTemplateReq.setCategoryid(svyLibTemplate.getCategoryid());
         svyLibTemplateReq.setDescription(svyLibTemplate.getDescription());
@@ -65,12 +68,13 @@
      * @return 闂嵎
      */
     @Override
-    public List<SvyLibTemplate> selectSvyLibTemplateList(SvyLibTemplateReq svyLibTemplateReq) {
+    public List<SvyLibTemplateVO> selectSvyLibTemplateList(SvyLibTemplateReq svyLibTemplateReq) {
         List<SvyLibTemplate> svyLibTemplates = svyLibTemplateMapper.selectSvyLibTemplateList(svyLibTemplateReq);
+        List<SvyLibTemplateVO> svyLibTemplateVOS = DtoConversionUtils.sourceToTarget(svyLibTemplates, SvyLibTemplateVO.class);
         //娣诲姞棰樼洰
-        for (int i = 0; i < svyLibTemplates.size(); i++) {
+        for (int i = 0; i < svyLibTemplateVOS.size(); i++) {
             SvyLibTemplateScript svyLibTemplateScript = new SvyLibTemplateScript();
-            svyLibTemplateScript.setSvyid(svyLibTemplates.get(i).getSvyid());
+            svyLibTemplateScript.setSvyid(svyLibTemplateVOS.get(i).getSvyid());
             List<SvyLibTemplateScript> svyLibTemplateScripts = svyLibTemplateScriptMapper.selectSvyLibTemplateScriptList(svyLibTemplateScript);
             //鑾峰彇棰樼洰閫夐」
             a:
@@ -88,48 +92,57 @@
                 }
             }
             //灏嗛鐩斁鍒伴棶鍗峰垪琛ㄤ腑
-            svyLibTemplates.get(i).setSvyTemplateLibScripts(svyLibTemplateScripts);
+            svyLibTemplateVOS.get(i).setSvyTemplateLibScripts(svyLibTemplateScripts);
 
             //鑾峰彇姣忎釜闂嵎瀵瑰簲鐨勭瀹�
             TempDetpRelevance tempDetpRelevance = new TempDetpRelevance();
-            tempDetpRelevance.setTempid(svyLibTemplates.get(i).getSvyid());
+            tempDetpRelevance.setTempid(svyLibTemplateVOS.get(i).getSvyid());
             List<TempDetpRelevance> tempDetpRelevances = tempDetpRelevanceMapper.selectTempDetpRelevanceList(tempDetpRelevance);
-            svyLibTemplates.get(i).setTempDetpRelevances(CollectionUtils.isNotEmpty(tempDetpRelevances) ? tempDetpRelevances : new ArrayList<>());
+            svyLibTemplateVOS.get(i).setTempDetpRelevances(CollectionUtils.isNotEmpty(tempDetpRelevances) ? tempDetpRelevances : new ArrayList<>());
 
             //鑾峰彇鏍囩
             SvyLibTemplateTag svyLibTemplateTag = new SvyLibTemplateTag();
-            svyLibTemplateTag.setTemplateid(svyLibTemplates.get(i).getSvyid());
+            svyLibTemplateTag.setTemplateid(svyLibTemplateVOS.get(i).getSvyid());
             List<SvyLibTemplateTag> svyLibTemplateTags = svyLibTemplateTagMapper.selectSvyLibTemplateTagList(svyLibTemplateTag);
-            svyLibTemplates.get(i).setSvyLibTemplateTagList(svyLibTemplateTags);
+            svyLibTemplateVOS.get(i).setSvyLibTemplateTagList(svyLibTemplateTags);
+
+            //鑾峰彇鐤剧梾
+            Icd10Association icd10Association = new Icd10Association();
+            icd10Association.setType(5L);
+            icd10Association.setOutid(svyLibTemplateVOS.get(i).getSvyid());
+            svyLibTemplateVOS.get(i).setIcd10AssociationList(icd10AssociationMapper.selectIcd10AssociationList(icd10Association));
+
         }
 
         //鍏堝皢鐩稿悓鐨刬d鐨刬cdname,鏁寸悊鍒颁竴鍧�
-        List<SvyLibTemplate> libTemplates = svyLibTemplates.stream().collect(Collectors.groupingBy(SvyLibTemplate::getSvyid, Collectors.mapping(SvyLibTemplate::getIcdname, Collectors.joining(", ")))).entrySet().stream().map(entry -> new SvyLibTemplate(entry.getKey(), entry.getValue())).collect(Collectors.toList());
+        List<SvyLibTemplateVO> libTemplates = svyLibTemplateVOS.stream().collect(Collectors.groupingBy(SvyLibTemplateVO::getSvyid, Collectors.mapping(SvyLibTemplateVO::getIcdname, Collectors.joining(", ")))).entrySet().stream().map(entry -> new SvyLibTemplateVO(entry.getKey(), entry.getValue())).collect(Collectors.toList());
         //涓存椂鍙橀噺锛岀敤鏉ヤ繚瀛樼柧鐥呭悕绉�
         String icdname = null;
         for (int i = 0; i < libTemplates.size(); i++) {
-            for (int j = 0; j < svyLibTemplates.size(); j++) {
-                if (ObjectUtils.isNotEmpty(libTemplates.get(i).getSvyid()) && libTemplates.get(i).getSvyid() == svyLibTemplates.get(j).getSvyid()) {
+            for (int j = 0; j < svyLibTemplateVOS.size(); j++) {
+                if (ObjectUtils.isNotEmpty(libTemplates.get(i).getSvyid()) && libTemplates.get(i).getSvyid() == svyLibTemplateVOS.get(j).getSvyid()) {
                     icdname = libTemplates.get(i).getIcdname();
                     // 灏嗗師鏁版嵁鎷疯礉鍒版暣鐞嗙殑濂界殑瀵硅薄涓�
-                    BeanUtils.copyProperties(svyLibTemplates.get(j), libTemplates.get(i));
+                    BeanUtils.copyProperties(svyLibTemplateVOS.get(j), libTemplates.get(i));
                     //鍐嶅皢鏁寸悊濂界殑鈥滅柧鐥呭悕绉扳�濇浛鎹�
                     libTemplates.get(i).setIcdname(icdname);
                 }
             }
         }
-        return libTemplates;
+
+        return svyLibTemplateVOS;
     }
 
     /**
      * 鏂板鎴栦慨鏀归棶鍗锋ā鏉夸俊鎭�
      *
-     * @param svyLibTemplate
+     * @param svyLibTemplateVO
      * @return
      */
     @Transactional(rollbackFor = Exception.class)
     @Override
-    public Integer saveOrUpdateTemplate(SvyLibTemplate svyLibTemplate) {
+    public Integer saveOrUpdateTemplate(SvyLibTemplateVO svyLibTemplateVO) {
+        SvyLibTemplate svyLibTemplate = DtoConversionUtils.sourceToTarget(svyLibTemplateVO, SvyLibTemplate.class);
         Integer i = null;
         if (svyLibTemplate.getIsoperation() != null && svyLibTemplate.getIsoperation() == 1) {
             //鏂板
@@ -202,6 +215,19 @@
             }
 
         }
+        if (CollectionUtils.isNotEmpty(svyLibTemplateVO.getIcd10AssociationList())) {
+            for (Icd10Association icd10Association : svyLibTemplateVO.getIcd10AssociationList()) {
+                if (icd10Association.getId() == null) {
+                    icd10Association.setType(5L);
+                    icd10Association.setOutid(svyLibTemplate.getSvyid());
+                    icd10AssociationMapper.insertIcd10Association(icd10Association);
+                } else {
+                    icd10Association.setType(5L);
+                    icd10Association.setOutid(svyLibTemplate.getSvyid());
+                    icd10AssociationMapper.updateIcd10Association(icd10Association);
+                }
+            }
+        }
         return i;
     }
 
diff --git a/smartor/src/main/resources/mapper/smartor/IvrLibaTemplateScriptMapper.xml b/smartor/src/main/resources/mapper/smartor/IvrLibaTemplateScriptMapper.xml
index 4f2fa1e..797ff99 100644
--- a/smartor/src/main/resources/mapper/smartor/IvrLibaTemplateScriptMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/IvrLibaTemplateScriptMapper.xml
@@ -260,10 +260,10 @@
             <if test="scriptTopic != null">script_topic = #{scriptTopic},</if>
             <if test="nextScriptno != null">next_scriptno = #{nextScriptno},</if>
             <if test="otherdata != null">otherdata = #{otherdata},</if>
-            <if test="isMust != null  and isMust != ''">is_must = #{isMust}</if>
-            <if test="scriptDesc != null ">script_desc = #{scriptDesc}</if>
-            <if test="scriptType != null ">script_type = #{scriptType}</if>
-            <if test="sort != null ">sort = #{sort}</if>
+            <if test="isMust != null  and isMust != ''">is_must = #{isMust},</if>
+            <if test="scriptDesc != null ">script_desc = #{scriptDesc},</if>
+            <if test="scriptType != null ">script_type = #{scriptType},</if>
+            <if test="sort != null ">sort = #{sort},</if>
             <if test="branchFlag != null  and branchFlag != ''">branch_flag = #{branchFlag},</if>
             <if test="branchNextscriptno != null  and branchNextscriptno != ''">branch_nextscriptno =
                 #{branchNextscriptno},
diff --git a/smartor/src/main/resources/mapper/smartor/PatArchiveOutMapper.xml b/smartor/src/main/resources/mapper/smartor/PatArchiveOutMapper.xml
index 76b9086..ea37b26 100644
--- a/smartor/src/main/resources/mapper/smartor/PatArchiveOutMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatArchiveOutMapper.xml
@@ -112,6 +112,45 @@
         where patid = #{patid}
     </select>
 
+    <select id="selectPatArchiveCount" parameterType="Long" resultType="com.smartor.domain.PerSonWorkbenchDto">
+        select aa.name1 as name, aa.count as count
+        from (
+        SELECT "浣忛櫌" as name1, count(1) as count FROM `pat_med_inhosp`
+        <where>
+            del_flag = 0 and endtime = null
+            <if test="deptIds != null ">and deptId in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="drCodes != null ">and drcode in
+                <foreach collection="drCodes" item="drCode" open="(" separator="," close=")">
+                    #{drCode}
+                </foreach>
+            </if>
+        </where>
+        union
+        select "鍑洪櫌" name1, count(1) as count FROM `pat_med_inhosp`
+        <where>
+            del_flag=0 and endtime != null
+            <if test="deptIds != null ">and deptId in
+                <foreach collection="deptIds" item="deptId" open="(" separator="," close=")">
+                    #{deptId}
+                </foreach>
+            </if>
+            <if test="drCodes != null ">and drcode in
+                <foreach collection="drCodes" item="drCode" open="(" separator="," close=")">
+                    #{drCode}
+                </foreach>
+            </if>
+        </where>
+        union
+        select "闂ㄨ瘖" name1, count(1) as count FROM `pat_med_outhosp`
+        where del_flag=0
+        ) aa
+
+    </select>
+
     <insert id="insertPatArchiveOut" parameterType="com.smartor.domain.PatArchiveOut" useGeneratedKeys="true"
             keyProperty="patid">
         insert into pat_archive_out
diff --git a/smartor/src/main/resources/mapper/smartor/PatFilterlistMapper.xml b/smartor/src/main/resources/mapper/smartor/PatFilterlistMapper.xml
new file mode 100644
index 0000000..ee8d89d
--- /dev/null
+++ b/smartor/src/main/resources/mapper/smartor/PatFilterlistMapper.xml
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.smartor.mapper.PatFilterlistMapper">
+
+    <resultMap type="com.smartor.domain.PatFilterlist" id="PatFilterlistResult">
+        <result property="id"    column="id"    />
+        <result property="patid"    column="patid"    />
+        <result property="filtertype"    column="filtertype"    />
+        <result property="filterdesc"    column="filterdesc"    />
+        <result property="filternotes"    column="filternotes"    />
+        <result property="applyTime"    column="apply_time"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="checkBy"    column="check_by"    />
+        <result property="checkFlag"    column="check_flag"    />
+        <result property="checkTime"    column="check_time"    />
+        <result property="checkdesc"    column="checkdesc"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="isupload"    column="isupload"    />
+        <result property="uploadTime"    column="upload_time"    />
+        <result property="orgid"    column="orgid"    />
+        <result property="pid"    column="pid"    />
+        <result property="guid"    column="guid"    />
+    </resultMap>
+
+    <sql id="selectPatFilterlistVo">
+        select id, patid, filtertype, filterdesc, filternotes, apply_time, del_flag, check_by, check_flag, check_time, checkdesc, update_by, update_time, create_by, create_time, isupload, upload_time, orgid, pid, guid from pat_filterlist
+    </sql>
+
+    <select id="selectPatFilterlistList" parameterType="com.smartor.domain.PatFilterlist" resultMap="PatFilterlistResult">
+        <include refid="selectPatFilterlistVo"/>
+        <where>
+            <if test="patid != null "> and patid = #{patid}</if>
+            <if test="filtertype != null  and filtertype != ''"> and filtertype = #{filtertype}</if>
+            <if test="filterdesc != null  and filterdesc != ''"> and filterdesc = #{filterdesc}</if>
+            <if test="filternotes != null  and filternotes != ''"> and filternotes = #{filternotes}</if>
+            <if test="applyTime != null "> and apply_time = #{applyTime}</if>
+            <if test="checkBy != null "> and check_by = #{checkBy}</if>
+            <if test="checkFlag != null  and checkFlag != ''"> and check_flag = #{checkFlag}</if>
+            <if test="checkTime != null "> and check_time = #{checkTime}</if>
+            <if test="checkdesc != null  and checkdesc != ''"> and checkdesc = #{checkdesc}</if>
+            <if test="isupload != null "> and isupload = #{isupload}</if>
+            <if test="uploadTime != null "> and upload_time = #{uploadTime}</if>
+            <if test="orgid != null  and orgid != ''"> and orgid = #{orgid}</if>
+            <if test="pid != null "> and pid = #{pid}</if>
+            <if test="guid != null  and guid != ''"> and guid = #{guid}</if>
+        </where>
+    </select>
+
+    <select id="selectPatFilterlistById" parameterType="Long" resultMap="PatFilterlistResult">
+        <include refid="selectPatFilterlistVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertPatFilterlist" parameterType="com.smartor.domain.PatFilterlist" useGeneratedKeys="true" keyProperty="id">
+        insert into pat_filterlist
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="patid != null">patid,</if>
+            <if test="filtertype != null">filtertype,</if>
+            <if test="filterdesc != null">filterdesc,</if>
+            <if test="filternotes != null">filternotes,</if>
+            <if test="applyTime != null">apply_time,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="checkBy != null">check_by,</if>
+            <if test="checkFlag != null">check_flag,</if>
+            <if test="checkTime != null">check_time,</if>
+            <if test="checkdesc != null">checkdesc,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="isupload != null">isupload,</if>
+            <if test="uploadTime != null">upload_time,</if>
+            <if test="orgid != null">orgid,</if>
+            <if test="pid != null">pid,</if>
+            <if test="guid != null">guid,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="patid != null">#{patid},</if>
+            <if test="filtertype != null">#{filtertype},</if>
+            <if test="filterdesc != null">#{filterdesc},</if>
+            <if test="filternotes != null">#{filternotes},</if>
+            <if test="applyTime != null">#{applyTime},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="checkBy != null">#{checkBy},</if>
+            <if test="checkFlag != null">#{checkFlag},</if>
+            <if test="checkTime != null">#{checkTime},</if>
+            <if test="checkdesc != null">#{checkdesc},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="isupload != null">#{isupload},</if>
+            <if test="uploadTime != null">#{uploadTime},</if>
+            <if test="orgid != null">#{orgid},</if>
+            <if test="pid != null">#{pid},</if>
+            <if test="guid != null">#{guid},</if>
+         </trim>
+    </insert>
+
+    <update id="updatePatFilterlist" parameterType="com.smartor.domain.PatFilterlist">
+        update pat_filterlist
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="patid != null">patid = #{patid},</if>
+            <if test="filtertype != null">filtertype = #{filtertype},</if>
+            <if test="filterdesc != null">filterdesc = #{filterdesc},</if>
+            <if test="filternotes != null">filternotes = #{filternotes},</if>
+            <if test="applyTime != null">apply_time = #{applyTime},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="checkBy != null">check_by = #{checkBy},</if>
+            <if test="checkFlag != null">check_flag = #{checkFlag},</if>
+            <if test="checkTime != null">check_time = #{checkTime},</if>
+            <if test="checkdesc != null">checkdesc = #{checkdesc},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="isupload != null">isupload = #{isupload},</if>
+            <if test="uploadTime != null">upload_time = #{uploadTime},</if>
+            <if test="orgid != null">orgid = #{orgid},</if>
+            <if test="pid != null">pid = #{pid},</if>
+            <if test="guid != null">guid = #{guid},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <update id="deletePatFilterlistById" parameterType="Long">
+        update pat_filterlist
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="delFlag != null">del_flag =1,</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deletePatFilterlistByIds" parameterType="String">
+        delete from pat_filterlist where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
index f1e83f3..688dfaf 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedOuthospMapper.xml
@@ -78,6 +78,7 @@
             <if test="orgid != null  and orgid != ''">and orgid = #{orgid}</if>
             <if test="outhospno != null  and outhospno != ''">and outhospno = #{outhospno}</if>
         </where>
+        order by update_time desc
     </select>
 
     <select id="selectPatMedOuthospById" parameterType="Long" resultMap="PatMedOuthospResult">
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedRegistrationMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedRegistrationMapper.xml
new file mode 100644
index 0000000..66d4f3b
--- /dev/null
+++ b/smartor/src/main/resources/mapper/smartor/PatMedRegistrationMapper.xml
@@ -0,0 +1,196 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.smartor.mapper.PatMedRegistrationMapper">
+
+    <resultMap type="com.smartor.domain.PatMedRegistration" id="PatMedRegistrationResult">
+        <result property="registid" column="registid"/>
+        <result property="serialnum" column="serialnum"/>
+        <result property="patid" column="patid"/>
+        <result property="hospitalname" column="hospitalname"/>
+        <result property="hospitalcode" column="hospitalcode"/>
+        <result property="deptcode" column="deptcode"/>
+        <result property="deptname" column="deptname"/>
+        <result property="deptid" column="deptid"/>
+        <result property="state" column="state"/>
+        <result property="appointmenttime" column="appointmenttime"/>
+        <result property="appointmenttimetype" column="appointmenttimetype"/>
+        <result property="appointmentcode" column="appointmentcode"/>
+        <result property="appointmentbegintime" column="appointmentbegintime"/>
+        <result property="appointmentendtime" column="appointmentendtime"/>
+        <result property="orgid" column="orgid"/>
+        <result property="delFlag" column="del_flag"/>
+        <result property="updateBy" column="update_by"/>
+        <result property="updateTime" column="update_time"/>
+        <result property="createBy" column="create_by"/>
+        <result property="createTime" column="create_time"/>
+        <result property="isupload" column="isupload"/>
+        <result property="uploadTime" column="upload_time"/>
+        <result property="pid" column="pid"/>
+        <result property="guid" column="guid"/>
+    </resultMap>
+
+    <sql id="selectPatMedRegistrationVo">
+        select registid,
+               serialnum,
+               patid,
+               hospitalname,
+               hospitalcode,
+               deptcode,
+               deptname,
+               deptid,
+               state,
+               appointmenttime,
+               appointmenttimetype,
+               appointmentcode,
+               appointmentbegintime,
+               appointmentendtime,
+               orgid,
+               del_flag,
+               update_by,
+               update_time,
+               create_by,
+               create_time,
+               isupload,
+               upload_time,
+               pid,
+               guid
+        from pat_med_registration
+    </sql>
+
+    <select id="selectPatMedRegistrationList" parameterType="com.smartor.domain.PatMedRegistration"
+            resultMap="PatMedRegistrationResult">
+        <include refid="selectPatMedRegistrationVo"/>
+        <where>
+            <if test="serialnum != null  and serialnum != ''">and serialnum = #{serialnum}</if>
+            <if test="patid != null ">and patid = #{patid}</if>
+            <if test="hospitalname != null  and hospitalname != ''">and hospitalname like concat('%', #{hospitalname},
+                '%')
+            </if>
+            <if test="hospitalcode != null  and hospitalcode != ''">and hospitalcode = #{hospitalcode}</if>
+            <if test="deptcode != null  and deptcode != ''">and deptcode = #{deptcode}</if>
+            <if test="deptname != null  and deptname != ''">and deptname like concat('%', #{deptname}, '%')</if>
+            <if test="deptid != null ">and deptid = #{deptid}</if>
+            <if test="state != null ">and state = #{state}</if>
+            <if test="appointmenttime != null ">and appointmenttime = #{appointmenttime}</if>
+            <if test="appointmenttimetype != null ">and appointmenttimetype = #{appointmenttimetype}</if>
+            <if test="appointmentcode != null  and appointmentcode != ''">and appointmentcode = #{appointmentcode}</if>
+            <if test="appointmentbegintime != null ">and appointmentbegintime = #{appointmentbegintime}</if>
+            <if test="appointmentendtime != null ">and appointmentendtime = #{appointmentendtime}</if>
+            <if test="orgid != null  and orgid != ''">and orgid = #{orgid}</if>
+            <if test="isupload != null ">and isupload = #{isupload}</if>
+            <if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
+            <if test="pid != null ">and pid = #{pid}</if>
+            <if test="guid != null  and guid != ''">and guid = #{guid}</if>
+        </where>
+    </select>
+
+    <select id="selectPatMedRegistrationByRegistid" parameterType="Long" resultMap="PatMedRegistrationResult">
+        <include refid="selectPatMedRegistrationVo"/>
+        where registid = #{registid}
+    </select>
+
+    <insert id="insertPatMedRegistration" parameterType="com.smartor.domain.PatMedRegistration">
+        insert into pat_med_registration
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="registid != null">registid,</if>
+            <if test="serialnum != null">serialnum,</if>
+            <if test="patid != null">patid,</if>
+            <if test="hospitalname != null">hospitalname,</if>
+            <if test="hospitalcode != null">hospitalcode,</if>
+            <if test="deptcode != null">deptcode,</if>
+            <if test="deptname != null">deptname,</if>
+            <if test="deptid != null">deptid,</if>
+            <if test="state != null">state,</if>
+            <if test="appointmenttime != null">appointmenttime,</if>
+            <if test="appointmenttimetype != null">appointmenttimetype,</if>
+            <if test="appointmentcode != null">appointmentcode,</if>
+            <if test="appointmentbegintime != null">appointmentbegintime,</if>
+            <if test="appointmentendtime != null">appointmentendtime,</if>
+            <if test="orgid != null">orgid,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="isupload != null">isupload,</if>
+            <if test="uploadTime != null">upload_time,</if>
+            <if test="pid != null">pid,</if>
+            <if test="guid != null">guid,</if>
+        </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="registid != null">#{registid},</if>
+            <if test="serialnum != null">#{serialnum},</if>
+            <if test="patid != null">#{patid},</if>
+            <if test="hospitalname != null">#{hospitalname},</if>
+            <if test="hospitalcode != null">#{hospitalcode},</if>
+            <if test="deptcode != null">#{deptcode},</if>
+            <if test="deptname != null">#{deptname},</if>
+            <if test="deptid != null">#{deptid},</if>
+            <if test="state != null">#{state},</if>
+            <if test="appointmenttime != null">#{appointmenttime},</if>
+            <if test="appointmenttimetype != null">#{appointmenttimetype},</if>
+            <if test="appointmentcode != null">#{appointmentcode},</if>
+            <if test="appointmentbegintime != null">#{appointmentbegintime},</if>
+            <if test="appointmentendtime != null">#{appointmentendtime},</if>
+            <if test="orgid != null">#{orgid},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="isupload != null">#{isupload},</if>
+            <if test="uploadTime != null">#{uploadTime},</if>
+            <if test="pid != null">#{pid},</if>
+            <if test="guid != null">#{guid},</if>
+        </trim>
+    </insert>
+
+    <update id="updatePatMedRegistration" parameterType="com.smartor.domain.PatMedRegistration">
+        update pat_med_registration
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="serialnum != null">serialnum = #{serialnum},</if>
+            <if test="patid != null">patid = #{patid},</if>
+            <if test="hospitalname != null">hospitalname = #{hospitalname},</if>
+            <if test="hospitalcode != null">hospitalcode = #{hospitalcode},</if>
+            <if test="deptcode != null">deptcode = #{deptcode},</if>
+            <if test="deptname != null">deptname = #{deptname},</if>
+            <if test="deptid != null">deptid = #{deptid},</if>
+            <if test="state != null">state = #{state},</if>
+            <if test="appointmenttime != null">appointmenttime = #{appointmenttime},</if>
+            <if test="appointmenttimetype != null">appointmenttimetype = #{appointmenttimetype},</if>
+            <if test="appointmentcode != null">appointmentcode = #{appointmentcode},</if>
+            <if test="appointmentbegintime != null">appointmentbegintime = #{appointmentbegintime},</if>
+            <if test="appointmentendtime != null">appointmentendtime = #{appointmentendtime},</if>
+            <if test="orgid != null">orgid = #{orgid},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="isupload != null">isupload = #{isupload},</if>
+            <if test="uploadTime != null">upload_time = #{uploadTime},</if>
+            <if test="pid != null">pid = #{pid},</if>
+            <if test="guid != null">guid = #{guid},</if>
+        </trim>
+        where registid = #{registid}
+    </update>
+
+    <delete id="deletePatMedRegistrationByRegistid" parameterType="Long">
+        delete
+        from pat_med_registration
+        where registid = #{registid}
+    </delete>
+
+    <update id="deletePatMedRegistrationByRegistids" parameterType="Long">
+        update pat_med_registration
+        <trim prefix="SET" suffixOverrides=",">
+            del_flag =1
+        </trim>
+        where registid in
+        <foreach item="registid" collection="array" open="(" separator="," close=")">
+            #{registid}
+        </foreach>
+    </update>
+</mapper>
diff --git a/smartor/src/main/resources/mapper/smartor/PatSpeciallistMapper.xml b/smartor/src/main/resources/mapper/smartor/PatSpeciallistMapper.xml
new file mode 100644
index 0000000..187b28d
--- /dev/null
+++ b/smartor/src/main/resources/mapper/smartor/PatSpeciallistMapper.xml
@@ -0,0 +1,145 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<!DOCTYPE mapper
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.smartor.mapper.PatSpeciallistMapper">
+
+    <resultMap type="com.smartor.domain.PatSpeciallist" id="PatSpeciallistResult">
+        <result property="id"    column="id"    />
+        <result property="patid"    column="patid"    />
+        <result property="sdtype"    column="sdtype"    />
+        <result property="sddesc"    column="sddesc"    />
+        <result property="sdnotes"    column="sdnotes"    />
+        <result property="applyTime"    column="apply_time"    />
+        <result property="delFlag"    column="del_flag"    />
+        <result property="checkBy"    column="check_by"    />
+        <result property="checkFlag"    column="check_flag"    />
+        <result property="checkTime"    column="check_time"    />
+        <result property="checkdesc"    column="checkdesc"    />
+        <result property="updateBy"    column="update_by"    />
+        <result property="updateTime"    column="update_time"    />
+        <result property="createBy"    column="create_by"    />
+        <result property="createTime"    column="create_time"    />
+        <result property="uploadFlag"    column="upload_flag"    />
+        <result property="uploadTime"    column="upload_time"    />
+        <result property="orgid"    column="orgid"    />
+        <result property="pid"    column="pid"    />
+        <result property="guid"    column="guid"    />
+    </resultMap>
+
+    <sql id="selectPatSpeciallistVo">
+        select id, patid, sdtype, sddesc, sdnotes, apply_time, del_flag, check_by, check_flag, check_time, checkdesc, update_by, update_time, create_by, create_time, upload_flag, upload_time, orgid, pid, guid from pat_speciallist
+    </sql>
+
+    <select id="selectPatSpeciallistList" parameterType="com.smartor.domain.PatSpeciallist" resultMap="PatSpeciallistResult">
+        <include refid="selectPatSpeciallistVo"/>
+        <where>
+            <if test="patid != null "> and patid = #{patid}</if>
+            <if test="sdtype != null  and sdtype != ''"> and sdtype = #{sdtype}</if>
+            <if test="sddesc != null  and sddesc != ''"> and sddesc = #{sddesc}</if>
+            <if test="sdnotes != null  and sdnotes != ''"> and sdnotes = #{sdnotes}</if>
+            <if test="applyTime != null "> and apply_time = #{applyTime}</if>
+            <if test="checkBy != null "> and check_by = #{checkBy}</if>
+            <if test="checkFlag != null  and checkFlag != ''"> and check_flag = #{checkFlag}</if>
+            <if test="checkTime != null "> and check_time = #{checkTime}</if>
+            <if test="checkdesc != null  and checkdesc != ''"> and checkdesc = #{checkdesc}</if>
+            <if test="uploadFlag != null "> and upload_flag = #{uploadFlag}</if>
+            <if test="uploadTime != null "> and upload_time = #{uploadTime}</if>
+            <if test="orgid != null  and orgid != ''"> and orgid = #{orgid}</if>
+            <if test="pid != null "> and pid = #{pid}</if>
+            <if test="guid != null  and guid != ''"> and guid = #{guid}</if>
+        </where>
+    </select>
+
+    <select id="selectPatSpeciallistById" parameterType="Long" resultMap="PatSpeciallistResult">
+        <include refid="selectPatSpeciallistVo"/>
+        where id = #{id}
+    </select>
+
+    <insert id="insertPatSpeciallist" parameterType="com.smartor.domain.PatSpeciallist" useGeneratedKeys="true" keyProperty="id">
+        insert into pat_speciallist
+        <trim prefix="(" suffix=")" suffixOverrides=",">
+            <if test="patid != null">patid,</if>
+            <if test="sdtype != null">sdtype,</if>
+            <if test="sddesc != null">sddesc,</if>
+            <if test="sdnotes != null">sdnotes,</if>
+            <if test="applyTime != null">apply_time,</if>
+            <if test="delFlag != null">del_flag,</if>
+            <if test="checkBy != null">check_by,</if>
+            <if test="checkFlag != null">check_flag,</if>
+            <if test="checkTime != null">check_time,</if>
+            <if test="checkdesc != null">checkdesc,</if>
+            <if test="updateBy != null">update_by,</if>
+            <if test="updateTime != null">update_time,</if>
+            <if test="createBy != null">create_by,</if>
+            <if test="createTime != null">create_time,</if>
+            <if test="uploadFlag != null">upload_flag,</if>
+            <if test="uploadTime != null">upload_time,</if>
+            <if test="orgid != null">orgid,</if>
+            <if test="pid != null">pid,</if>
+            <if test="guid != null">guid,</if>
+         </trim>
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
+            <if test="patid != null">#{patid},</if>
+            <if test="sdtype != null">#{sdtype},</if>
+            <if test="sddesc != null">#{sddesc},</if>
+            <if test="sdnotes != null">#{sdnotes},</if>
+            <if test="applyTime != null">#{applyTime},</if>
+            <if test="delFlag != null">#{delFlag},</if>
+            <if test="checkBy != null">#{checkBy},</if>
+            <if test="checkFlag != null">#{checkFlag},</if>
+            <if test="checkTime != null">#{checkTime},</if>
+            <if test="checkdesc != null">#{checkdesc},</if>
+            <if test="updateBy != null">#{updateBy},</if>
+            <if test="updateTime != null">#{updateTime},</if>
+            <if test="createBy != null">#{createBy},</if>
+            <if test="createTime != null">#{createTime},</if>
+            <if test="uploadFlag != null">#{uploadFlag},</if>
+            <if test="uploadTime != null">#{uploadTime},</if>
+            <if test="orgid != null">#{orgid},</if>
+            <if test="pid != null">#{pid},</if>
+            <if test="guid != null">#{guid},</if>
+         </trim>
+    </insert>
+
+    <update id="updatePatSpeciallist" parameterType="com.smartor.domain.PatSpeciallist">
+        update pat_speciallist
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="patid != null">patid = #{patid},</if>
+            <if test="sdtype != null">sdtype = #{sdtype},</if>
+            <if test="sddesc != null">sddesc = #{sddesc},</if>
+            <if test="sdnotes != null">sdnotes = #{sdnotes},</if>
+            <if test="applyTime != null">apply_time = #{applyTime},</if>
+            <if test="delFlag != null">del_flag = #{delFlag},</if>
+            <if test="checkBy != null">check_by = #{checkBy},</if>
+            <if test="checkFlag != null">check_flag = #{checkFlag},</if>
+            <if test="checkTime != null">check_time = #{checkTime},</if>
+            <if test="checkdesc != null">checkdesc = #{checkdesc},</if>
+            <if test="updateBy != null">update_by = #{updateBy},</if>
+            <if test="updateTime != null">update_time = #{updateTime},</if>
+            <if test="createBy != null">create_by = #{createBy},</if>
+            <if test="createTime != null">create_time = #{createTime},</if>
+            <if test="uploadFlag != null">upload_flag = #{uploadFlag},</if>
+            <if test="uploadTime != null">upload_time = #{uploadTime},</if>
+            <if test="orgid != null">orgid = #{orgid},</if>
+            <if test="pid != null">pid = #{pid},</if>
+            <if test="guid != null">guid = #{guid},</if>
+        </trim>
+        where id = #{id}
+    </update>
+
+    <delete id="deletePatSpeciallistById" parameterType="Long">
+        update pat_speciallist
+        <trim prefix="SET" suffixOverrides=",">
+            <if test="delFlag != null">del_flag =1,</if>
+        </trim>
+        where id = #{id}
+    </delete>
+
+    <delete id="deletePatSpeciallistByIds" parameterType="String">
+        delete from pat_speciallist where id in
+        <foreach item="id" collection="array" open="(" separator="," close=")">
+            #{id}
+        </foreach>
+    </delete>
+</mapper>
diff --git a/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml b/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml
index 4ea6872..de30297 100644
--- a/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/ServiceTaskMapper.xml
@@ -112,6 +112,11 @@
             <if test="checktime != null ">and checktime = #{checktime}</if>
             <if test="type != null  and type != ''">and type = #{type}</if>
             <if test="typename != null  and typename != ''">and typename like concat('%', #{typename}, '%')</if>
+            <if test="bgeinTime != null ">and date_format(update_time,'%y%m%d') &gt;= date_format(#{endTime},'%y%m%d')
+            </if>
+            <if test="endTime != null ">and date_format(update_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+            </if>
+
             <if test="deptcode != null  and deptcode != ''">and deptcode = #{deptcode}</if>
             <if test="isupload != null ">and isupload = #{isupload}</if>
             <if test="uploadTime != null ">and upload_time = #{uploadTime}</if>
@@ -119,6 +124,8 @@
             <if test="hospType != null  and hospType != ''">and hosp_type = #{hospType}</if>
             <if test="libtemplateid != null ">and libtemplateid = #{libtemplateid}</if>
             <if test="libtemplatename != null  and libtemplatename != ''">and libtemplatename = #{libtemplatename}</if>
+            <if test="createBy != null  and createBy != ''">and create_by = #{createBy}</if>
+            <if test="sendState != null  ">and send_state = #{sendState}</if>
         </where>
         order by update_time desc,taskid desc
     </select>
diff --git a/smartor/src/main/resources/mapper/smartor/SvyLibTemplateMapper.xml b/smartor/src/main/resources/mapper/smartor/SvyLibTemplateMapper.xml
index cc840d2..58fa041 100644
--- a/smartor/src/main/resources/mapper/smartor/SvyLibTemplateMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/SvyLibTemplateMapper.xml
@@ -113,7 +113,7 @@
             <if test="categoryid != null ">and a.categoryid = #{categoryid}</if>
             <if test="svyid != null ">and a.svyid = #{svyid}</if>
             <if test="svyname != null  and svyname != ''">and a.svyname like concat('%', #{svyname}, '%')</if>
-            <if test="description != null  and description != ''">and a.icdname like concat('%', #{description}, '%')
+            <if test="description != null  and description != ''">and  b.icd10name like concat('%', #{description}, '%')
             </if>
         </where>
         order by a.create_time desc

--
Gitblit v1.9.3