From b7adb9e5316030aabfb90a8ff1b43c848aa550ec Mon Sep 17 00:00:00 2001
From: zhaowenxuan <chacca165@163.com>
Date: 星期四, 05 六月 2025 12:37:45 +0800
Subject: [PATCH] 小程序查报告接口增加返回检查综述以及医师建议

---
 ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java |   95 ++++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 85 insertions(+), 10 deletions(-)

diff --git a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java
index d45f941..af53c70 100644
--- a/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java
+++ b/ltkj-admin/src/main/java/com/ltkj/web/controller/system/TjXdPictureController.java
@@ -1,5 +1,9 @@
 package com.ltkj.web.controller.system;
 
+import java.io.IOException;
+import java.nio.file.Files;
+import java.nio.file.Path;
+import java.nio.file.Paths;
 import java.security.Security;
 import java.util.*;
 import java.util.stream.Collectors;
@@ -16,6 +20,7 @@
 import com.ltkj.hosp.domain.*;
 import com.ltkj.hosp.service.*;
 import com.ltkj.hosp.sqlDomain.LtkjExamJcbgd;
+import com.ltkj.hosp.sqlDomain.LtkjExamJcsqd;
 import com.ltkj.hosp.vodomain.CsProVo;
 import com.ltkj.system.service.ISysConfigService;
 import io.swagger.annotations.Api;
@@ -68,6 +73,8 @@
     private LtkjExamJcbgdService jcbgdService;
     @Resource
     private LtkjExamJcsqdService jcsqdService;
+    @Autowired
+    private TjJcycxmService jcycxmService;
     /**
      * 鏌ヨ浣撴蹇冪數鍥剧鐞嗗垪琛�
      */
@@ -315,6 +322,28 @@
         Long deptId = SecurityUtils.getDeptId();
         log.info("褰卞儚妫�鏌ラ瀵嗗害蹇冪數鍥鹃〉闈㈢偣鍑讳綋妫�浜哄憳灞曠ず浣撴椤圭洰鎺ュ彛褰撳墠鐧诲綍浜虹瀹�"+deptId);
         List<CsProVo> list = remarkService.getYxJcXx(tjNumber,deptId.toString());
+        if(null !=list && !list.isEmpty()){
+            for (CsProVo vo : list) {
+                LambdaQueryWrapper<TjXdtgmdjg> wq=new LambdaQueryWrapper<>();
+                wq.eq(TjXdtgmdjg::getTjh,tjNumber);
+                wq.eq(TjXdtgmdjg::getProId,vo.getProId());
+                TjXdtgmdjg xdtgmdjg = xdtgmdjgService.getOne(wq);
+                if(null !=xdtgmdjg){
+                    if(StringUtil.isNotBlank(xdtgmdjg.getUrl())){
+                        Path path = Paths.get(xdtgmdjg.getUrl());
+                        byte[] data = null;
+                        try {
+                            data = Files.readAllBytes(path);
+                        } catch (IOException e) {
+                            throw new RuntimeException(e);
+                        }
+                        String base64 = Base64.getEncoder().encodeToString(data);
+                        if(StringUtil.isNotBlank(base64)) vo.setImageUrl(base64);
+                    }
+                }
+            }
+
+        }
         return AjaxResult.success(list);
     }
 
@@ -324,16 +353,16 @@
     public AjaxResult addYxJcXx(@ApiParam (value = "浣撴鍙�") @RequestParam String tjNumber,
                                 @ApiParam (value = "椤圭洰id") @RequestParam String proId,
                                 @ApiParam (value = "妫�鏌ユ墍瑙�") @RequestParam String jcsj,
-                                @ApiParam (value = "妫�鏌ョ粨璁�") @RequestParam String jcjl) {
+                                @ApiParam (value = "妫�鏌ョ粨璁�") @RequestParam String jcjl,
+                                @ApiParam (value = "鍥剧墖鍦板潃") @RequestParam(required = false) String url) {
         try {
             SysUser user = SecurityUtils.getLoginUser().getUser();
             TjOrder order = orderService.getOrderByTjNum(tjNumber);
             if(null !=order){
                 TjProject project = projectService.getById(proId);
                 if(null !=project){
-                    List<TjProject> projects = projectService.getTjProjectListBySoneId(proId);
                     LambdaQueryWrapper<TjOrderDetail>wq1=new LambdaQueryWrapper<>();
-                    wq1.eq(TjOrderDetail::getProId,projects.get(0).getProParentId());
+                    wq1.eq(TjOrderDetail::getProId,proId);
                     wq1.eq(TjOrderDetail::getOrderId,order.getOrderId());
                     TjOrderDetail detail = detailService.getOne(wq1);
                     if(null !=detail){
@@ -357,6 +386,7 @@
                             xdtgmdjg.setJcjl(jcjl);
                             xdtgmdjg.setCreateBy(user.getNickName());
                             xdtgmdjg.setCreateId(user.getUserId().toString());
+                            if(StringUtil.isNotBlank(url)) xdtgmdjg.setUrl(url);
                             xdtgmdjgService.save(xdtgmdjg);
                             saveTjXdtgmdjgByJcbgd(xdtgmdjg);
                         }
@@ -386,18 +416,45 @@
             jcbgd.setXmdm(xdtgmdjg.getProId());
             jcbgd.setXmmc(xdtgmdjg.getProName());
             jcbgd.setBgNr(xdtgmdjg.getJcsj());
-            jcbgd.setBgUrl("");
+            if(StringUtil.isNotBlank(xdtgmdjg.getUrl())){
+                jcbgd.setBgUrl(xdtgmdjg.getUrl());
+            }else {
+                jcbgd.setBgUrl("");
+            }
             jcbgd.setShysxm(xdtgmdjg.getCreateBy());
             jcbgd.setShysdm(xdtgmdjg.getCreateId());
             jcbgd.setYxzd(xdtgmdjg.getJcjl());
             jcbgd.setYxbx(xdtgmdjg.getJcjl());
             jcbgd.setZdsj(DateUtil.format(date,"yyyy-MM-dd"));
             jcbgd.setJcbw("");
-            jcbgd.setSqsj(DateUtil.format(date,"yyyy-MM-dd"));
             jcbgd.setLx("1");
+            jcbgd.setSqsj(DateUtil.format(date,"yyyy-MM-dd"));
             jcbgd.setCreateTime(date);
             jcbgdService.save(jcbgd);
-            jcsqdService.saveLtkjExamJcsqdxdt(xdtgmdjg.getCardId());
+            jcsqdService.saveXdtLtkjExamJcsqd(xdtgmdjg.getCardId(),jcbgd.getTmh());
+
+            LambdaQueryWrapper<TjJcycxm> wq=new LambdaQueryWrapper<>();
+            wq.eq(TjJcycxm::getTjh,xdtgmdjg.getTjh());
+            wq.eq(TjJcycxm::getProId,xdtgmdjg.getProId());
+            jcycxmService.remove(wq);
+            if(StringUtil.isNotBlank(xdtgmdjg.getJcjl())){
+                String s = "銆倈锛泑;|,|锛�";
+                String[] split = xdtgmdjg.getJcjl().replaceAll("\n", "銆�").split(s);
+                for (String jg : split) {
+                    if(StringUtil.isNotBlank(jg) && !jg.contains("鏈寮傚父")
+                            && !jg.contains("鏈鏄庢樉寮傚父") && !jg.contains("鏈鍗犱綅") && !jg.contains("鏈")
+                            && !jg.contains("鏈鏄庢樉")&& !jg.contains("姝e父")&& !jg.contains("鍙屼晶妞庨棿瀛旀棤鐙獎")){
+                        TjJcycxm jcycxm=new TjJcycxm();
+                        jcycxm.setTjh(xdtgmdjg.getTjh());
+                        jcycxm.setYqid("");
+                        jcycxm.setProId(xdtgmdjg.getProId());
+                        jcycxm.setProName(xdtgmdjg.getProName());
+                        jcycxm.setCreateTime(new Date());
+                        jcycxm.setJcjg(jg);
+                        jcycxmService.save(jcycxm);
+                    }
+                }
+            }
         } catch (Exception e) {
             throw new RuntimeException(e);
         }
@@ -408,7 +465,7 @@
     @ApiOperation (value = "鑾峰彇褰卞儚妫�鏌ラ瀵嗗害蹇冪數鍥剧粨鏋滄帴鍙�")
     @Transactional
     public AjaxResult getYxJcXxJg(@ApiParam (value = "浣撴鍙�") @RequestParam String tjNumber,
-                                @ApiParam (value = "椤圭洰id") @RequestParam String proId) {
+                                  @ApiParam (value = "椤圭洰id") @RequestParam String proId) {
         TjOrder order = orderService.getOrderByTjNum(tjNumber);
         if(null !=order){
             LambdaQueryWrapper<TjXdtgmdjg> wq=new LambdaQueryWrapper<>();
@@ -417,9 +474,27 @@
             TjXdtgmdjg xdtgmdjg = xdtgmdjgService.getOne(wq);
             Map<String,Object>map=new HashMap<>();
             if(null !=xdtgmdjg ){
-             map.put("jcsj",xdtgmdjg.getJcsj());
-             map.put("jcjl",xdtgmdjg.getJcjl());
-             return AjaxResult.success(map);
+                map.put("jcsj",xdtgmdjg.getJcsj());
+                map.put("jcjl",xdtgmdjg.getJcjl());
+                if(StringUtil.isNotBlank(xdtgmdjg.getUrl())){
+                    Path path = Paths.get(xdtgmdjg.getUrl());
+                    byte[] data = null;
+                    try {
+                        data = Files.readAllBytes(path);
+                    } catch (IOException e) {
+                        throw new RuntimeException(e);
+                    }
+                    String base64 = Base64.getEncoder().encodeToString(data);
+                    map.put("tp",base64);
+                }else {
+                    map.put("tp",null);
+                }
+                return AjaxResult.success(map);
+            }else {
+                TjProject tjProject = projectService.getById(proId);
+                map.put("jcsj","");
+                map.put("jcjl",tjProject.getProDefault()==null ? "":tjProject.getProDefault());
+                map.put("tp",null);
             }
             return AjaxResult.success(map);
         }

--
Gitblit v1.8.0