From 1ccb709f723a759597dcdc7239d8885cef84d3ce Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 04 十二月 2024 17:56:19 +0800
Subject: [PATCH] 代码提交

---
 ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatArchiveController.java |  207 ++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 160 insertions(+), 47 deletions(-)

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 20ced08..8609d79 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
@@ -1,29 +1,31 @@
-package com.smartor.controller;
+package com.ruoyi.web.controller.smartor;
 
-import java.util.ArrayList;
-import java.util.List;
-import javax.servlet.http.HttpServletResponse;
-
-import com.ruoyi.common.core.domain.entity.SysUser;
-import com.ruoyi.common.core.domain.model.LoginUser;
-import com.smartor.domain.PatUpInfoVO;
-import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.Row;
-import org.apache.poi.ss.usermodel.Sheet;
-import org.apache.poi.ss.usermodel.Workbook;
-import org.apache.poi.xssf.usermodel.XSSFWorkbook;
-import org.springframework.security.access.prepost.PreAuthorize;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.web.bind.annotation.*;
+import com.github.pagehelper.ISelect;
 import com.ruoyi.common.annotation.Log;
 import com.ruoyi.common.core.controller.BaseController;
 import com.ruoyi.common.core.domain.AjaxResult;
-import com.ruoyi.common.enums.BusinessType;
-import com.smartor.domain.PatArchive;
-import com.smartor.service.IPatArchiveService;
-import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.ruoyi.common.core.domain.entity.SysUser;
+import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.core.page.TableDataInfo;
+import com.ruoyi.common.enums.BusinessType;
+import com.ruoyi.common.utils.PageUtils;
+import com.ruoyi.common.utils.poi.ExcelUtil;
+import com.smartor.domain.*;
+import com.smartor.service.IPatArchiveService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiImplicitParams;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.CollectionUtils;
+import org.springframework.web.bind.annotation.*;
 import org.springframework.web.multipart.MultipartFile;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.List;
+import java.util.concurrent.Executor;
+import java.util.concurrent.Executors;
 
 /**
  * 鎮h�呮。妗圕ontroller
@@ -31,6 +33,7 @@
  * @author smartor
  * @date 2023-03-04
  */
+@Api(description = "鎮h�呮。妗�")
 @RestController
 @RequestMapping("/smartor/patarchive")
 public class PatArchiveController extends BaseController {
@@ -40,9 +43,10 @@
     /**
      * 鏌ヨ鎮h�呮。妗堝垪琛�
      */
-    @PreAuthorize("@ss.hasPermi('smartor:patarchive:list')")
-    @GetMapping("/list")
-    public TableDataInfo list(PatArchive patArchive) {
+    @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);
@@ -51,7 +55,8 @@
     /**
      * 瀵煎嚭鎮h�呮。妗堝垪琛�
      */
-    @PreAuthorize("@ss.hasPermi('smartor:patarchive:export')")
+    @ApiOperation("瀵煎嚭鎮h�呮。妗堝垪琛�")
+    //@PreAuthorize("@ss.hasPermi('smartor:patarchive:export')")
     @Log(title = "鎮h�呮。妗�", businessType = BusinessType.EXPORT)
     @PostMapping("/export")
     public void export(HttpServletResponse response, PatArchive patArchive) {
@@ -63,58 +68,166 @@
     /**
      * 鑾峰彇鎮h�呮。妗堣缁嗕俊鎭�
      */
-    @PreAuthorize("@ss.hasPermi('smartor:patarchive:query')")
-    @GetMapping(value = "/{patid}")
-    public AjaxResult getInfo(@PathVariable("patid") Long patid) {
+    @ApiOperation("鑾峰彇鎮h�呮。妗堣缁嗕俊鎭�")
+    //@PreAuthorize("@ss.hasPermi('smartor:patarchive:query')")
+    @GetMapping(value = "/getInfo/{patid}")
+    @ApiImplicitParam(name = "patid", value = "鎮h�卛d")
+    public AjaxResult getInfo(@PathVariable(name = "patid") Long patid) {
         return success(patArchiveService.selectPatArchiveByPatid(patid));
     }
+
+//    /**
+//     * 鏂板鎮h�呮。妗�
+//     */
+//    @ApiOperation("鏂板鎮h�呮。妗�")
+//    //@PreAuthorize("@ss.hasPermi('smartor:patarchive:add')")
+//    @Log(title = "鎮h�呮。妗�", businessType = BusinessType.INSERT)
+//    @PostMapping("/add")
+//    public AjaxResult add(@RequestBody PatArchive patArchive) {
+//        return toAjax(patArchiveService.insertPatArchive(patArchive));
+//    }
 
     /**
      * 鏂板鎮h�呮。妗�
      */
-    @PreAuthorize("@ss.hasPermi('smartor:patarchive:add')")
-    @Log(title = "鎮h�呮。妗�", businessType = BusinessType.INSERT)
-    @PostMapping
-    public AjaxResult add(@RequestBody PatArchive patArchive) {
-        return toAjax(patArchiveService.insertPatArchive(patArchive));
+    @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));
     }
 
     /**
-     * 淇敼鎮h�呮。妗�
+     * 鏂板鎴栦慨鏀规偅鑰呮。淇℃伅
      */
-    @PreAuthorize("@ss.hasPermi('smartor:patarchive:edit')")
+    @ApiOperation("鏂板鎴栦慨鏀规偅鑰呮。淇℃伅")
+    //@PreAuthorize("@ss.hasPermi('smartor:patarchive:edit')")
     @Log(title = "鎮h�呮。妗�", businessType = BusinessType.UPDATE)
-    @PutMapping
-    public AjaxResult edit(@RequestBody PatArchive patArchive) {
-        return toAjax(patArchiveService.updatePatArchive(patArchive));
+    @PostMapping("/saveOrUpdatePatInfo")
+    public AjaxResult saveOrUpdatePatInfo(@RequestBody PatArchiveVO patArchiveVO) {
+        return toAjax(patArchiveService.saveOrUpdatePatInfo(patArchiveVO));
     }
 
     /**
      * 鍒犻櫎鎮h�呮。妗�
      */
-    @PreAuthorize("@ss.hasPermi('smartor:patarchive:remove')")
+    @ApiOperation("鍒犻櫎鎮h�呮。妗�")
+    //@PreAuthorize("@ss.hasPermi('smartor:patarchive:remove')")
     @Log(title = "鎮h�呮。妗�", businessType = BusinessType.DELETE)
-    @DeleteMapping("/{patids}")
+    @GetMapping("/remove/{patids}")
+    @ApiImplicitParam(name = "patids", value = "鎮h�卛d闆嗗悎", dataType = "long", dataTypeClass = Long.class)
     public AjaxResult remove(@PathVariable Long[] patids) {
         return toAjax(patArchiveService.deletePatArchiveByPatids(patids));
     }
 
 
     /**
-     * 鎮h�呮枃浠跺鐞�
+     * 瀵煎叆鎮h�呮枃浠跺鐞�
      *
-     * @param title
      * @param multipartFile
      */
-    @PostMapping("/filehandle")
-    public AjaxResult fileHandle(@RequestParam("multipartFile") MultipartFile multipartFile) {
+    @ApiOperation("瀵煎叆鎮h�呮枃浠跺鐞�")
+    @PostMapping("/importFilehandle")
+    @ApiImplicitParams({@ApiImplicitParam(name = "tags", value = "鏍囩"), @ApiImplicitParam(name = "multipartFile", value = "涓婁紶鏂囦欢")})
+    public AjaxResult importFilehandle(@RequestParam("tags") String tags, @RequestParam("multipartFile") MultipartFile multipartFile) {
+        Executor executor = Executors.newFixedThreadPool(3);
         //鑾峰彇褰撳墠鐧婚檰浜�
         LoginUser loginUser = getLoginUser();
         SysUser user = loginUser.getUser();
-        String userName = user.getUserName();
-
-        PatUpInfoVO patUpInfoVO = patArchiveService.fileHandle(userName, multipartFile);
-
+        PatUpInfoVO patUpInfoVO = patArchiveService.importFilehandle(user, tags, multipartFile);
         return success(patUpInfoVO);
     }
+
+    /**
+     * 瀵煎叆鎮h�呬俊鎭ā鏉�
+     *
+     * @param response
+     */
+    @ApiOperation("鎮h�呬俊鎭鍏ユā鏉�")
+    @PostMapping("/patImportTemplate")
+    public void patImportTemplate(HttpServletResponse response) {
+//        ExcelUtil<PatImportInfoVO> util = new ExcelUtil<PatImportInfoVO>(PatImportInfoVO.class);
+        ExcelUtil<PatArchive> util = new ExcelUtil<PatArchive>(PatArchive.class);
+        util.importTemplateExcel(response, "鎮h�呬俊鎭鍏�");
+    }
+
+    /**
+     * 瀵煎嚭鎮h�呴敊璇俊鎭�
+     *
+     * @param patArchiveList
+     */
+    @ApiOperation("瀵煎嚭鎮h�呴敊璇俊鎭�")
+    @PostMapping(value = "/exportErrPatInfo")
+    public void exportErrPatInfo(HttpServletResponse response, @RequestBody List<PatImportInfoVO> patArchiveList) {
+
+        ExcelUtil<PatImportInfoVO> util = new ExcelUtil<PatImportInfoVO>(PatImportInfoVO.class);
+        util.exportExcel(response, patArchiveList, "瀵煎嚭鎮h�呴敊璇俊鎭�");
+    }
+
+    /**
+     * 鏌ヨ鎮h�呭垪琛�
+     */
+    @ApiOperation("鏌ヨ鎮h�呭垪琛�")
+    @PostMapping("/patInfoByContion")
+    public TableDataInfo patInfoByCondition(@RequestBody PatArchiveReq patArchive) {
+        PageUtils.startPageByPost(patArchive.getPageNum(), patArchive.getPageSize());
+        if (CollectionUtils.isEmpty(patArchive.getLeavehospitaldistrictcodes()) || patArchive.getLeavehospitaldistrictcodes().size() == 0) {
+            patArchive.setLeavehospitaldistrictcodes(null);
+        }
+        if (CollectionUtils.isEmpty(patArchive.getLeaveldeptcodes()) || patArchive.getLeaveldeptcodes().size() == 0) {
+            patArchive.setLeaveldeptcodes(null);
+        }
+        List<PatArchive> patArchives = patArchiveService.patInfoByContion(patArchive);
+        long count = PageUtils.count(new ISelect() {
+            @Override
+            public void doSelect() {
+                patArchiveService.patInfoByContion(patArchive);
+            }
+        });
+        return getDataTable2(count, patArchives);
+    }
+
+
+    /**
+     * 瀵煎嚭鎮h�呭垪琛ㄦ牴鎹潯浠�
+     */
+    @ApiOperation("瀵煎嚭鎮h�呭垪琛ㄦ牴鎹潯浠�")
+    @PostMapping("/exportPatInfo")
+    public void exportPpatInfo(HttpServletResponse response, @RequestBody PatArchiveReq patArchive) {
+        startPage();
+        List<PatArchive> patArchives = patArchiveService.patInfoByContion(patArchive);
+        if (!CollectionUtils.isEmpty(patArchives)) {
+            for (int i = 0; i < patArchives.size(); i++) {
+                patArchives.get(i).setTag(patArchives.get(i).getTagList().toString());
+            }
+        }
+        ExcelUtil<PatArchive> util = new ExcelUtil<PatArchive>(PatArchive.class);
+        util.exportExcel(response, patArchives, "鎮h�呮。妗堟暟鎹�");
+    }
+
+    /**
+     * 鑾峰彇鎮h�呬俊鎭�
+     */
+    @ApiOperation("鑾峰彇鎮h�呬俊鎭�")
+    @PostMapping("/getPatientInfo")
+    public TableDataInfo getPatientInfo(@RequestBody PatArchiveReq patArchiveReq) {
+        PageUtils.startPageByPost(patArchiveReq.getPageNum(), patArchiveReq.getPageSize());
+        if (CollectionUtils.isEmpty(patArchiveReq.getLeavehospitaldistrictcodes()) || patArchiveReq.getLeavehospitaldistrictcodes().size() == 0) {
+            patArchiveReq.setLeavehospitaldistrictcodes(null);
+        }
+        if (CollectionUtils.isEmpty(patArchiveReq.getLeaveldeptcodes()) || patArchiveReq.getLeaveldeptcodes().size() == 0) {
+            patArchiveReq.setLeaveldeptcodes(null);
+        }
+        List<PatArchiveOthreInfo> patientInfo = patArchiveService.getPatientInfo(patArchiveReq);
+        long count = PageUtils.count(new ISelect() {
+            @Override
+            public void doSelect() {
+                patArchiveService.getPatientInfo(patArchiveReq);
+            }
+        });
+        return getDataTable2(count, patientInfo);
+    }
+
+
 }

--
Gitblit v1.9.3