From 25a0ba7b2706db3c5ee546da3e0e7c909777b890 Mon Sep 17 00:00:00 2001
From: liusheng <337615773@qq.com>
Date: 星期三, 29 七月 2026 15:37:32 +0800
Subject: [PATCH] 1,患者过滤状态修改(之前只支持发送之前的过滤,现在支持发送之后的过滤,如果任务发送后,外链不能再打开) 2.在出入院表新增入院申请单字段 3.采集入院数据时,同时要采集importanceFlagCode emergencyLevelCode 4.外链的发送,也要查询子任务状态,如果是不执行,也不能再发送
---
smartor/src/main/java/com/smartor/domain/DTO/PatMedInhospDTO.java | 543 ++++++++++++++++++++++++++++++++++++
smartor/src/main/java/com/smartor/service/impl/ServiceSLTDHealthcareRecordServiceImpl.java | 91 ++++++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java | 22 +
smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java | 3
smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java | 20
ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java | 26 +
smartor/src/main/java/com/smartor/service/IPatMedInhospService.java | 3
smartor/src/main/java/com/smartor/domain/PatMedInhospVO.java | 39 ++
smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java | 23 +
smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml | 54 +++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java | 13
smartor/src/main/java/com/smartor/domain/PatMedInhosp.java | 32 ++
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java | 3
smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java | 8
14 files changed, 843 insertions(+), 37 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
index 6e53314..6a16085 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/common/SmsController.java
@@ -12,12 +12,10 @@
import com.ruoyi.common.utils.sms.smsUtils;
import com.smartor.common.MtSubmitSmUtil;
import com.smartor.common.ShiyiSmsUtil;
-import com.smartor.domain.ServiceOutPath;
-import com.smartor.domain.ShiyiSmsRequest;
-import com.smartor.domain.ShiyiSmsResponse;
-import com.smartor.domain.smsVO;
+import com.smartor.domain.*;
import com.smartor.mapper.UtilsMapper;
import com.smartor.service.IServiceOutPathService;
+import com.smartor.service.IServiceSubtaskService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -71,6 +69,8 @@
@Autowired
private IServiceOutPathService iServiceOutPathService;
+ @Autowired
+ private IServiceSubtaskService iServiceSubtaskService;
@Value("${spring.profiles.active}")
private String active;
@@ -106,6 +106,12 @@
@PostMapping("/send")
public AjaxResult sendAsk(@RequestBody smsVO vo) throws UnsupportedEncodingException {
String content = "";
+ if (StringUtils.isNotEmpty(vo.getSubId())) {
+ ServiceSubtask serviceSubtask = iServiceSubtaskService.selectServiceSubtaskById(Long.valueOf(vo.getSubId()));
+ if (serviceSubtask.getSendstate() == 4L) content = "璇ヤ换鍔′笉鎵ц";
+ return AjaxResult.error(content);
+ }
+
if (StringUtils.isNotEmpty(vo.getTaskId()) && StringUtils.isNotEmpty(vo.getPatId()) && StringUtils.isNotEmpty(vo.getSubId())) {
RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
String taskId = rsaPublicKeyExample.encryptedData(vo.getTaskId().toString(), pub_key);
@@ -193,8 +199,13 @@
*/
@ApiOperation("寰俊鍙戦��")
@PostMapping("/sendChat")
- public AjaxResult sendChat(@RequestBody smsVO vo) throws UnsupportedEncodingException {
+ public AjaxResult sendChat(@RequestBody smsVO vo) {
String sendMsg = "";
+ if (StringUtils.isNotEmpty(vo.getSubId())) {
+ ServiceSubtask serviceSubtask = iServiceSubtaskService.selectServiceSubtaskById(Long.valueOf(vo.getSubId()));
+ if (serviceSubtask.getSendstate() == 4L) sendMsg = "璇ヤ换鍔′笉鎵ц";
+ return AjaxResult.error(sendMsg);
+ }
if (StringUtils.isNotEmpty(vo.getTaskId()) && StringUtils.isNotEmpty(vo.getPatId()) && StringUtils.isNotEmpty(vo.getSubId())) {
RSAPublicKeyExample rsaPublicKeyExample = new RSAPublicKeyExample();
String taskId = rsaPublicKeyExample.encryptedData(vo.getTaskId().toString(), pub_key);
@@ -246,6 +257,11 @@
serviceOutPath.setUrl(url);
iServiceOutPathService.insertServiceOutPath(serviceOutPath);
}
+ if (StringUtils.isNotEmpty(vo.getSubId())) {
+ ServiceSubtask serviceSubtask = iServiceSubtaskService.selectServiceSubtaskById(Long.valueOf(vo.getSubId()));
+ if (serviceSubtask.getSendstate() == 4L) content = "璇ヤ换鍔′笉鎵ц";
+ }
+
return AjaxResult.success(content);
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
index 49f7537..e29195d 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/PatMedInhospController.java
@@ -12,6 +12,7 @@
import com.ruoyi.common.utils.PageUtils;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.system.service.ISysConfigService;
+import com.smartor.domain.DTO.PatMedInhospDTO;
import com.smartor.domain.PatMedInhosp;
import com.smartor.domain.PatMedInhospVO;
import com.smartor.domain.PatMedReq;
@@ -79,6 +80,27 @@
}
/**
+ * 鏌ヨ鎮h�呬綇闄㈣褰曢�氳繃鍏ラ櫌鐢宠鍗曚俊鎭�
+ */
+ @ApiOperation("鏌ヨ鎮h�呬綇闄㈣褰曢�氳繃鍏ラ櫌鐢宠鍗曚俊鎭�")
+ //@PreAuthorize("@ss.hasPermi('smartor:patinhosp:list')")
+ @AddOrgId(field = "orgid", paramIndex = 0, campusField = "campusid")
+ @PostMapping("/selectPatMedInhospByApplication")
+ public TableDataInfo selectPatMedInhospByApplication(@RequestBody PatMedInhosp patMedInhosp) {
+ PageUtils.startPageByPost(patMedInhosp.getPageNum(), patMedInhosp.getPageSize());
+ SysUser user = getLoginUser().getUser();
+ patMedInhosp.setOrgid(user.getOrgid());
+ List<PatMedInhospDTO> list = patMedInhospService.selectPatMedInhospByApplication(patMedInhosp);
+ long count = PageUtils.count(new ISelect() {
+ @Override
+ public void doSelect() {
+ patMedInhospService.selectPatMedInhospByApplication(patMedInhosp);
+ }
+ });
+ return getDataTable2(count, list);
+ }
+
+ /**
* 鍑洪櫌銆侀棬璇婁汉鏁板拰闅忚閲忕粺璁★紙鍛紝鏈堬紝骞达級
*/
@ApiOperation("鍑洪櫌銆侀棬璇婁汉鏁板拰闅忚閲忕粺璁★紙鍛紝鏈堬紝骞达級")
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
index 9b7d92d..4e18fcc 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/smartor/ServiceSubtaskController.java
@@ -952,12 +952,6 @@
return AjaxResult.success(serviceSubtaskService.scanGenerateSubtask(serviceTask));
}
-
- @PostMapping("/test")
- public void test() {
- ryTask.dealOutHospInfo();
- }
-
@PostMapping("/syncMedInhospForShiyi")
public void syncMedInhospForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) {
collectHISService.syncMedInhosp(startTime, endTime);
@@ -967,12 +961,5 @@
public void syncMedOperForShiyi(@RequestParam("startTime") String startTime, @RequestParam("endTime") String endTime) {
collectHISService.syncOper(startTime, endTime);
}
-
- @PostMapping("/qwenLLMTest")
- public int qwenLLMTest(@RequestParam("voiceText") String questionText, @RequestParam("voiceText") String voiceText, @RequestParam("value") String value, @RequestParam("regexText") String regexText) {
- int result = ryTask.qwenLLMTest(questionText, voiceText, value, regexText);
- return result;
- }
-
}
diff --git a/smartor/src/main/java/com/smartor/domain/DTO/PatMedInhospDTO.java b/smartor/src/main/java/com/smartor/domain/DTO/PatMedInhospDTO.java
new file mode 100644
index 0000000..3277e05
--- /dev/null
+++ b/smartor/src/main/java/com/smartor/domain/DTO/PatMedInhospDTO.java
@@ -0,0 +1,543 @@
+package com.smartor.domain.DTO;
+
+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;
+import java.util.List;
+
+/**
+ * 鎮h�呬綇闄㈣褰曞璞¤繑鍙� pat_med_inhosp
+ *
+ * @author smartor
+ * @date 2023-03-04
+ */
+@ApiModel(value = "PatMedInhospDTO", description = "鎮h�呬綇闄㈣褰曞璞¤繑鍙�")
+@Data
+public class PatMedInhospDTO extends BaseEntity {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 鑷ID
+ */
+ @ApiModelProperty(value = "鑷ID")
+ private Long inhospid;
+
+ /**
+ * 鎬у埆
+ */
+ @ApiModelProperty(value = "鎬у埆 1鐢� 2濂�")
+ private Long sex;
+
+ /**
+ * 浣忛櫌鍙�
+ */
+ @ApiModelProperty(value = "浣忛櫌鍙�")
+ private String inhospno;
+
+ /**
+ * 娴佹按鍙�
+ */
+ @ApiModelProperty(value = "娴佹按鍙�")
+ private String serialnum;
+
+ /**
+ * 鎶ゅ+ID
+ */
+ @ApiModelProperty(value = "鎶ゅ+ID")
+ private String nurseId;
+
+ /**
+ * 鎶ゅ+濮撳悕
+ */
+ @ApiModelProperty(value = "鎶ゅ+濮撳悕")
+ private String nurseName;
+
+ /**
+ * 鍖婚櫌鍚嶇О
+ */
+ @ApiModelProperty(value = "鍖婚櫌鍚嶇О")
+ @Excel(name = " 鍖婚櫌鍚嶇О ")
+ private String hospitalname;
+
+ /**
+ * 鍖婚櫌缂栧彿
+ */
+ @ApiModelProperty(value = "鍖婚櫌缂栧彿")
+ private String hospitalcode;
+
+ /**
+ * 闄㈠尯缂栧彿
+ */
+ @ApiModelProperty(value = "闄㈠尯缂栧彿")
+ private String hospitaldistrictcode;
+
+ /**
+ * 闄㈠尯缂栧彿闆嗗悎
+ */
+ @ApiModelProperty(value = "闄㈠尯缂栧彿闆嗗悎")
+ private List<String> hospitaldistrictcodeList;
+
+ /**
+ * 闄㈠尯鍚嶇О
+ */
+ @ApiModelProperty(value = "闄㈠尯鍚嶇О")
+ @Excel(name = " 闄㈠尯鍚嶇О ")
+ private String hospitaldistrictname;
+
+ /**
+ * 鍏ラ櫌璇婃柇ICD鍊�
+ */
+ @ApiModelProperty(value = "鍏ラ櫌璇婃柇ICD鍊�")
+ private String icd10code;
+
+ /**
+ * 鍏ラ櫌璇婃柇鍚嶇О
+ */
+ @ApiModelProperty(value = "鍏ラ櫌璇婃柇鍚嶇О")
+ private String diagname;
+
+ /**
+ * 鍏ラ櫌鏃堕棿
+ */
+ @ApiModelProperty(value = "鍏ラ櫌鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = " 鍏ラ櫌鏃堕棿 ", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date starttime;
+
+ /**
+ * 鍑洪櫌鏃堕棿
+ */
+ @ApiModelProperty(value = "鍑洪櫌鏃堕棿")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = " 鍑洪櫌鏃堕棿 ", width = 30, dateFormat = "yyyy-MM-dd")
+ private Date endtime;
+
+ /**
+ * 鍏ラ櫌绉戝浠g爜
+ */
+ @ApiModelProperty(value = "鍏ラ櫌绉戝浠g爜")
+ private String deptcode;
+ /**
+ * 鍏ラ櫌绉戝浠g爜
+ */
+ @ApiModelProperty(value = "鍏ラ櫌绉戝浠g爜闆嗗悎")
+ private List<String> deptcodeList;
+
+ /**
+ * 鍏ラ櫌绉戝鍚嶇О
+ */
+ @ApiModelProperty(value = "鍏ラ櫌绉戝鍚嶇О")
+ private String deptname;
+
+ /**
+ * 鎴块棿鍙�
+ */
+ @ApiModelProperty(value = "鎴块棿鍙�")
+ private String roomno;
+
+ /**
+ * 搴婁綅鍙�
+ */
+ @ApiModelProperty(value = "搴婁綅鍙�")
+ @Excel(name = " 搴婁綅鍙� ")
+ private String bedNo;
+
+ /**
+ * 鏈烘瀯ID
+ */
+ @ApiModelProperty(value = "鏈烘瀯ID")
+ @Excel(name = " 鏈烘瀯ID ")
+ private String orgid;
+
+ /**
+ * 鍒犻櫎鏍囪
+ */
+ @ApiModelProperty(value = "鍒犻櫎鏍囪")
+ private String delFlag;
+
+ /**
+ * 涓婁紶鏍囪
+ */
+ @ApiModelProperty(value = "涓婁紶鏍囪")
+ private Long isupload;
+
+ /**
+ * 涓婁紶鏃堕棿
+ */
+ @ApiModelProperty(value = "涓婁紶鏃堕棿")
+ private Date uploadTime;
+
+ /**
+ * 妗fID
+ */
+ @ApiModelProperty(value = "妗fID")
+ private Long patid;
+
+ /**
+ * 鍑洪櫌璇婃柇
+ */
+ @ApiModelProperty(value = "鍑洪櫌璇婃柇")
+ @Excel(name = " 鍑洪櫌璇婃柇 ")
+ private String leavediagname;
+
+ /**
+ * 鍑洪櫌璇婃柇ICD鍊�
+ */
+ @ApiModelProperty(value = "鍑洪櫌璇婃柇ICD鍊�")
+ private String leaveicd10code;
+
+ /**
+ * 鍖荤敓宸ュ彿
+ */
+ @ApiModelProperty(value = "鍖荤敓宸ュ彿")
+ private String drcode;
+
+ /**
+ * 鍖荤敓鍚嶇О
+ */
+ @ApiModelProperty(value = "鍖荤敓鍚嶇О")
+ @Excel(name = " 鍖荤敓鍚嶇О ")
+ private String drname;
+
+ /**
+ * 鏄惁鐢熸垚鏂规鐘舵��;0棰勫叆闄� 1鐢熸垚鍏ラ櫌 2鐢熸垚鍑洪櫌 9鏃犲尮閰嶆柟妗� 3鐢熸垚鍏ラ櫌鎾ら攢 4鐢熸垚鍑洪櫌鎾ら攢
+ */
+ @ApiModelProperty(value = "鏄惁鐢熸垚鏂规鐘舵��;0棰勫叆闄� 1鐢熸垚鍏ラ櫌 2鐢熸垚鍑洪櫌 9鏃犲尮閰嶆柟妗� 3鐢熸垚鍏ラ櫌鎾ら攢 4鐢熸垚鍑洪櫌鎾ら攢")
+ private Long schemestatus;
+
+ /**
+ * 鏄惁鐢熸垚閫氱敤鏂规鐘舵��;0鏈敓鎴� 1鐢熸垚 9鏃犲尮閰嶆柟妗�
+ */
+ @ApiModelProperty(value = "鏄惁鐢熸垚閫氱敤鏂规鐘舵��;0鏈敓鎴� 1鐢熸垚 9鏃犲尮閰嶆柟妗�")
+ private Long generalschemestatus;
+
+ /**
+ * 鍑洪櫌绉戝浠g爜
+ */
+ @ApiModelProperty(value = "鍑洪櫌绉戝浠g爜")
+ private String leaveldeptcode;
+
+ /**
+ * 鍑洪櫌绉戝鍚嶇О
+ */
+ @ApiModelProperty(value = "鍑洪櫌绉戝鍚嶇О")
+ @Excel(name = " 鍑洪櫌绉戝鍚嶇О ")
+ private String leaveldeptname;
+
+ /**
+ * 鐥呭尯ID
+ */
+ @ApiModelProperty(value = "鐥呭尯ID")
+ private String hospitaldistrictid;
+
+ /**
+ * 鍑洪櫌鐥呭尯缂栧彿
+ */
+ @ApiModelProperty(value = "鍑洪櫌鐥呭尯缂栧彿")
+ private String leavehospitaldistrictcode;
+
+ /**
+ * 鍑洪櫌鐥呭尯鍚嶇О
+ */
+ @ApiModelProperty(value = "鍑洪櫌鐥呭尯鍚嶇О")
+ @Excel(name = " 鍑洪櫌鐥呭尯鍚嶇О ")
+ private String leavehospitaldistrictname;
+
+ /**
+ * 鍑洪櫌鐥呭尯ID
+ */
+ @ApiModelProperty(value = "鍑洪櫌鐥呭尯ID")
+ private String leavehospitaldistrictid;
+
+ /**
+ * 鍏ラ櫌绉戝ID
+ */
+ @ApiModelProperty(value = "鍏ラ櫌绉戝ID")
+ private String deptid;
+
+ /**
+ * 鍑洪櫌绉戝ID
+ */
+ @ApiModelProperty(value = "鍑洪櫌绉戝ID")
+ private String leaveldeptid;
+
+ /**
+ * 鏂规鐘舵�佹搷浣滄椂闂�
+ */
+ @ApiModelProperty(value = "鏂规鐘舵�佹搷浣滄椂闂�")
+ private Date schemetime;
+
+ /**
+ * 鎮h�呭鍚�
+ */
+ @ApiModelProperty(value = "鎮h�呭鍚�")
+ private String patname;
+
+ /**
+ * 鎮h�呯紪鍙�
+ */
+ @ApiModelProperty(value = "鎮h�呯紪鍙�")
+ private String patno;
+
+ /**
+ * 浣忛櫌鏍囪瘑锛� 0锛氬湪闄� 1锛氬嚭闄� 2锛氳浆绉�
+ */
+ @ApiModelProperty(value = "浣忛櫌鏍囪瘑锛� 0锛氬湪闄� 1锛氬嚭闄� 2锛氳浆绉� 3寰呭叆闄�")
+ private String inhospstate;
+
+ /**
+ * 绉戝闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊
+ */
+ @ApiModelProperty(value = "闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊鎴愬姛 2澶勭悊澶辫触 ")
+ private String deptcheckFlag;
+ /**
+ * 鐥呭尯闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊
+ */
+ @ApiModelProperty(value = "鐥呭尯闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊鎴愬姛 2澶勭悊澶辫触 ")
+ private String wardcheckFlag;
+ /**
+ * 鐤剧梾闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊
+ */
+ @ApiModelProperty(value = "鐤剧梾闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊鎴愬姛 2澶勭悊澶辫触 ")
+ private String diagcheckFlag;
+
+ /**
+ * 鍏ラ櫌绉戝闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊
+ */
+ @ApiModelProperty(value = "鍏ラ櫌绉戝闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊鎴愬姛 2澶勭悊澶辫触 ")
+ private String inDeptcheckFlag;
+
+ /**
+ * 鍏ラ櫌鐥呭尯闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊
+ */
+ @ApiModelProperty(value = "鍏ラ櫌鐥呭尯闀挎湡浠诲姟锛屾槸鍚﹀鐞嗭細0鏈鐞� 1澶勭悊鎴愬姛 2澶勭悊澶辫触 ")
+ private String inWardcheckFlag;
+
+ /**
+ * 骞撮緞
+ */
+ @ApiModelProperty(value = "骞撮緞")
+ private String age;
+
+ /**
+ * 鎵嬫満鍙�
+ */
+ @ApiModelProperty(value = "鎵嬫満鍙�")
+ private String telcode;
+
+ /**
+ * 闀挎湡浠诲姟鍘熷洜
+ */
+ @ApiModelProperty(value = "闀挎湡浠诲姟鍘熷洜")
+ private String longTaskReason;
+
+
+ /**
+ * pageNum
+ */
+ @ApiModelProperty("pageNum")
+ private Integer pageNum;
+
+ /**
+ * pageSize
+ */
+ @ApiModelProperty("pageSize")
+ private Integer pageSize;
+
+ /**
+ * pageNum
+ */
+ @ApiModelProperty("pn")
+ private Integer pn;
+
+ /**
+ * pageSize
+ */
+ @ApiModelProperty("ps")
+ private Integer ps;
+ /**
+ * 鍑洪櫌鏂瑰紡搴忓彿
+ */
+ @ApiModelProperty("鍑洪櫌鏂瑰紡搴忓彿")
+ @Excel(name = "鍑洪櫌鏂瑰紡搴忓彿")
+ private String outWayId;
+
+ /**
+ * 鍑洪櫌鏂瑰紡鍚嶇О
+ */
+ @ApiModelProperty("鍑洪櫌鏂瑰紡鍚嶇О")
+ @Excel(name = "鍑洪櫌鏂瑰紡鍚嶇О")
+ private String outWayName;
+ /**
+ * 鍑哄叆闄㈡爣璇�
+ */
+ @ApiModelProperty("鍑哄叆闄㈡爣璇嗭細0鍏ラ櫌 1鍑洪櫌 2 杞 3 棰勫叆闄�")
+ private Integer cry;
+
+ /**
+ * 鍑洪櫌鐥呭尯缂栧彿
+ */
+ @ApiModelProperty(value = "鍑洪櫌鐥呭尯缂栧彿闆嗗悎")
+ private List<String> leavehospitaldistrictcodes;
+
+ /**
+ * 鍑洪櫌绉戝浠g爜闆嗗悎
+ */
+ @ApiModelProperty(value = "鍑洪櫌绉戝浠g爜闆嗗悎")
+ private List<String> leaveldeptcodes;
+
+ /**
+ * 寮�濮嬪嚭闄㈡棩鏈�
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = " ", width = 30, dateFormat = "yyyy-MM-dd")
+ @ApiModelProperty(value = "寮�濮嬪嚭闄㈡棩鏈�")
+ private Date startOutHospTime;
+
+ /**
+ * 缁撴潫鍑洪櫌鏃ユ湡
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = " ", width = 30, dateFormat = "yyyy-MM-dd")
+ @ApiModelProperty(value = "缁撴潫鍑洪櫌鏃ユ湡")
+ private Date endOutHospTime;
+
+ /**
+ * 寮�濮嬪叆闄㈡棩鏈�
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = " ", width = 30, dateFormat = "yyyy-MM-dd")
+ @ApiModelProperty(value = "寮�濮嬪叆闄㈡棩鏈�")
+ private Date startInHospTime;
+
+ /**
+ * 缁撴潫鍏ラ櫌鏃ユ湡
+ */
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Excel(name = " ", width = 30, dateFormat = "yyyy-MM-dd")
+ @ApiModelProperty(value = "缁撴潫鍏ラ櫌鏃ユ湡")
+ private Date endInHospTime;
+
+ @ApiModelProperty(value = "鏄惁澶栭儴瀵煎叆锛�0涓嶆槸 1鏄�")
+ private Integer outImport = 0;
+
+
+ @ApiModelProperty(value = "鏌ヨ绫诲瀷锛�1鍏ㄩ儴 2鍑洪櫌 3鍏ラ櫌 4闂ㄨ瘖 5澶栭儴鎮h�� ")
+ private Integer queryType = 1;
+
+ @ApiModelProperty(value = "鏈烘瀯ID")
+ private String guid;
+
+ @ApiModelProperty(value = "鎿嶄綔浜�")
+ private String operator;
+
+ @ApiModelProperty(value = "鎿嶄綔浜篒D")
+ private String operatorId;
+
+ @ApiModelProperty(value = "鏍囩鍚�")
+ private String tagname;
+
+ @ApiModelProperty(value = "闅忚鏍囪瘑锛�0涓嶉渶瑕侊紝1瑕�")
+ private String fuflag;
+
+ @ApiModelProperty(value = "闅忚鏃ユ湡")
+ @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+ private Date fudate;
+
+ @ApiModelProperty(value = "闅忚鍛ㄦ湡寤鸿")
+ private String fuperiod;
+
+ @ApiModelProperty(value = "闅忚绫诲瀷缂栫爜")
+ private String futypecode;
+
+ @ApiModelProperty(value = "闅忚绫诲瀷鍚嶇О")
+ private String futypedesc;
+
+ @ApiModelProperty(value = "闅忚澶嶈瘖鎸囧")
+ private String fuadvice;
+
+ @ApiModelProperty(value = "涓撶梾闅忚寤鸿")
+ private String fuspecialadvice;
+
+ /**
+ * 璇佷欢鍙风爜
+ */
+ @ApiModelProperty("璇佷欢鍙风爜")
+ @Excel(name = " 璇佷欢鍙风爜 ")
+ private String idcardno;
+
+ /**
+ * 缁忕鍖荤敓
+ */
+ @ApiModelProperty("缁忕鍖荤敓")
+ @Excel(name = " 缁忕鍖荤敓 ")
+ private String managementDoctor;
+
+ /**
+ * 缁忕鍖荤敓
+ */
+ @ApiModelProperty("缁忕鍖荤敓")
+ @Excel(name = " 缁忕鍖荤敓 ")
+ private String managementDoctorCode;
+
+ @ApiModelProperty(value = "鏈�鍚庡紑濮嬫椂闂�")
+ private String lastStartTime;
+
+ @ApiModelProperty(value = "鏈�鍚庣粨鏉熸椂闂�")
+ private String lastEndTime;
+
+ /**
+ * 鏈烘瀯ID
+ */
+ @ApiModelProperty("闄㈠尯")
+ @Excel(name = " 闄㈠尯 ")
+ private String campusid;
+
+ /**
+ * 灏辫瘖鏉ユ簮ID
+ */
+ @ApiModelProperty("灏辫瘖鏉ユ簮ID")
+ @Excel(name = " 灏辫瘖鏉ユ簮ID ")
+ private String encounterSourceId;
+
+ /**
+ * 閲嶈鎬ф爣璁扮紪鐮�
+ * 鏋氫妇绫诲瀷锛欼mportFlagEnum
+ * FH0165.98 - 鐗圭害浜哄憳
+ * FH0165.99 - 绂讳紤浜哄憳
+ * FH0165.03 - 鏃�
+ * FH0165.02 - 鏃ラ棿璇婄枟
+ * FH0165.01 - 鏃ラ棿鎵嬫湳
+ */
+ @ApiModelProperty(value = "閲嶈鎬ф爣璁扮紪鐮�", example = "FH0165.01")
+ @Excel(name = " 閲嶈鎬ф爣璁扮紪鐮� ")
+ private String importanceFlagCode;
+
+ /**
+ * 绱ф�ョ▼搴︾紪鐮�
+ * 鏋氫妇绫诲瀷锛欵mergencyLevelEnum
+ * FH0164.01 - 鐩爣
+ * FH0164.02 - 鎬ュ嵄閲�
+ * FH0164.03 - 鎷╂湡
+ * FH0164.04 - 鍩虹
+ */
+ @ApiModelProperty(value = "绱ф�ョ▼搴︾紪鐮�", example = "FH0164.01")
+ @Excel(name = " 绱ф�ョ▼搴︾紪鐮� ")
+ private String emergencyLevelCode;
+
+ @ApiModelProperty(value = "鏄惁瀹f暀杩�")
+ @Excel(name = " 鏄惁瀹f暀瀹屾垚:0 鏈鏁� 1 宸插鏁� ")
+ private String finishFlag = "0";
+
+ /**
+ * '婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛�
+ */
+ @ApiModelProperty("'婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛�")
+ @Excel(name = " '婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛� ")
+ private String inhospMydFlag;
+}
diff --git a/smartor/src/main/java/com/smartor/domain/PatMedInhosp.java b/smartor/src/main/java/com/smartor/domain/PatMedInhosp.java
index 8dbfa4d..0bba67d 100644
--- a/smartor/src/main/java/com/smartor/domain/PatMedInhosp.java
+++ b/smartor/src/main/java/com/smartor/domain/PatMedInhosp.java
@@ -501,6 +501,38 @@
private String campusid;
/**
+ * 灏辫瘖鏉ユ簮ID
+ */
+ @ApiModelProperty("灏辫瘖鏉ユ簮ID")
+ @Excel(name = " 灏辫瘖鏉ユ簮ID ")
+ private String encounterSourceId;
+
+ /**
+ * 閲嶈鎬ф爣璁扮紪鐮�
+ * 鏋氫妇绫诲瀷锛欼mportFlagEnum
+ * FH0165.98 - 鐗圭害浜哄憳
+ * FH0165.99 - 绂讳紤浜哄憳
+ * FH0165.03 - 鏃�
+ * FH0165.02 - 鏃ラ棿璇婄枟
+ * FH0165.01 - 鏃ラ棿鎵嬫湳
+ */
+ @ApiModelProperty(value = "閲嶈鎬ф爣璁扮紪鐮�", example = "FH0165.01")
+ @Excel(name = " 閲嶈鎬ф爣璁扮紪鐮� ")
+ private String importanceFlagCode;
+
+ /**
+ * 绱ф�ョ▼搴︾紪鐮�
+ * 鏋氫妇绫诲瀷锛欵mergencyLevelEnum
+ * FH0164.01 - 鐩爣
+ * FH0164.02 - 鎬ュ嵄閲�
+ * FH0164.03 - 鎷╂湡
+ * FH0164.04 - 鍩虹
+ */
+ @ApiModelProperty(value = "绱ф�ョ▼搴︾紪鐮�", example = "FH0164.01")
+ @Excel(name = " 绱ф�ョ▼搴︾紪鐮� ")
+ private String emergencyLevelCode;
+
+ /**
* '婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛�
*/
@ApiModelProperty("'婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛�")
diff --git a/smartor/src/main/java/com/smartor/domain/PatMedInhospVO.java b/smartor/src/main/java/com/smartor/domain/PatMedInhospVO.java
index 08ce3c5..0d2fa40 100644
--- a/smartor/src/main/java/com/smartor/domain/PatMedInhospVO.java
+++ b/smartor/src/main/java/com/smartor/domain/PatMedInhospVO.java
@@ -396,5 +396,44 @@
@ApiModelProperty("闄㈠尯")
@Excel(name = " 闄㈠尯 ")
private String campusid;
+
+ /**
+ * 灏辫瘖鏉ユ簮ID
+ */
+ @ApiModelProperty("灏辫瘖鏉ユ簮ID")
+ @Excel(name = " 灏辫瘖鏉ユ簮ID ")
+ private String encounterSourceId;
+
+ /**
+ * 閲嶈鎬ф爣璁扮紪鐮�
+ * 鏋氫妇绫诲瀷锛欼mportFlagEnum
+ * FH0165.98 - 鐗圭害浜哄憳
+ * FH0165.99 - 绂讳紤浜哄憳
+ * FH0165.03 - 鏃�
+ * FH0165.02 - 鏃ラ棿璇婄枟
+ * FH0165.01 - 鏃ラ棿鎵嬫湳
+ */
+ @ApiModelProperty(value = "閲嶈鎬ф爣璁扮紪鐮�", example = "FH0165.01")
+ @Excel(name = " 閲嶈鎬ф爣璁扮紪鐮� ")
+ private String importanceFlagCode;
+
+ /**
+ * 绱ф�ョ▼搴︾紪鐮�
+ * 鏋氫妇绫诲瀷锛欵mergencyLevelEnum
+ * FH0164.01 - 鐩爣
+ * FH0164.02 - 鎬ュ嵄閲�
+ * FH0164.03 - 鎷╂湡
+ * FH0164.04 - 鍩虹
+ */
+ @ApiModelProperty(value = "绱ф�ョ▼搴︾紪鐮�", example = "FH0164.01")
+ @Excel(name = " 绱ф�ョ▼搴︾紪鐮� ")
+ private String emergencyLevelCode;
+
+ /**
+ * '婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛�
+ */
+ @ApiModelProperty("'婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛�")
+ @Excel(name = " '婊℃剰搴︽爣璇嗭細0鏈仛婊″害 1浣忛櫌婊″害搴� 2鍑洪櫌婊℃剰搴� 锛堝鏋滄棦瑕佸仛浣忛櫌锛屽張瑕佸仛鍑洪櫌锛屽垯鐢ㄢ��,鈥濆垎鍓诧紝渚嬪1,2锛� ")
+ private String inhospMydFlag;
}
diff --git a/smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java b/smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java
index 9ed805b..629ae54 100644
--- a/smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java
+++ b/smartor/src/main/java/com/smartor/domain/ServiceSLTDInhospResDTO.java
@@ -211,6 +211,9 @@
@ApiModelProperty(value = "鐥呭巻鏂囦欢鐘舵��")
private Integer medicalRecordFileStatus;
+ @ApiModelProperty(value = "灏辫瘖鏉ユ簮ID")
+ private String encounterSourceId;
+
@ApiModelProperty(value = "涓昏鍑洪櫌璇婃柇")
private ServiceSLTDDiagnosisResDTO mainDischargeDiagnosis;
diff --git a/smartor/src/main/java/com/smartor/service/IPatMedInhospService.java b/smartor/src/main/java/com/smartor/service/IPatMedInhospService.java
index 1bfc516..51e8aad 100644
--- a/smartor/src/main/java/com/smartor/service/IPatMedInhospService.java
+++ b/smartor/src/main/java/com/smartor/service/IPatMedInhospService.java
@@ -3,6 +3,7 @@
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.page.TableDataInfo;
import com.smartor.domain.*;
+import com.smartor.domain.DTO.PatMedInhospDTO;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
@@ -33,6 +34,8 @@
*/
public List<PatMedInhosp> selectPatMedInhospList(PatMedInhosp patMedInhosp);
+ public List<PatMedInhospDTO> selectPatMedInhospByApplication(PatMedInhosp patMedInhosp);
+
/**
* 鍑洪櫌銆侀棬璇婁汉鏁板拰闅忚閲忕粺璁★紙鍛紝鏈堬紝骞达級
*/
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 ad67157..29181f7 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatArchiveServiceImpl.java
@@ -164,23 +164,23 @@
patArchiveVO.setIsoperation(2);
patArchiveMapper.updatePatArchive(patArchive);
if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1")) {
- //涓嶉渶瑕佹湇鍔′簡锛岄渶瑕侀�氳繃patid鍜宻endstate=2鎴栬�卻endstate=1鍘绘煡璇竴涓嬶紝service_subtask閲屾槸鍚︽湁姝e湪鎵ц鐨勪换鍔★紝鏈夌殑璇濓紝绔嬪嵆鍋滀簡
+ //涓嶉渶瑕佹湇鍔′簡锛岄渶瑕侀�氳繃patid鍜宻endstate=1,2,3,5,7鍘绘煡璇竴涓嬶紝service_subtask閲屾槸鍚︽湁姝e湪鎵ц鐨勪换鍔★紝鏈夌殑璇濓紝绔嬪嵆鍋滀簡
+ List<Long> list = Arrays.asList(1L, 2L, 3L, 5L, 7L);
+ List<ServiceSubtask> serviceSubtaskList = new ArrayList<>();
ServiceSubtaskEntity serviceSubtaskVO = new ServiceSubtaskEntity();
serviceSubtaskVO.setPatid(patArchive.getId());
- serviceSubtaskVO.setSendstate(2L);
- List<ServiceSubtask> serviceSubtaskList = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
- serviceSubtaskVO.setSendstate(1L);
- List<ServiceSubtask> serviceSubtaskList1 = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
- if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
- if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList.addAll(serviceSubtaskList1);
- } else {
- if (CollectionUtils.isNotEmpty(serviceSubtaskList1)) serviceSubtaskList = serviceSubtaskList1;
+ for (Long ss : list) {
+ serviceSubtaskVO.setSendstate(ss);
+ List<ServiceSubtask> serviceSubtasks = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtaskVO);
+ serviceSubtaskList.addAll(serviceSubtasks);
}
//鍘籸edis涓紝鏌ヨ鏄惁鏈塻ubid锛屾湁鐨勮瘽绉婚櫎cache-exist
if (CollectionUtils.isNotEmpty(serviceSubtaskList)) {
for (ServiceSubtask serviceSubtask : serviceSubtaskList) {
log.info("闇�瑕佺Щ闄ょ殑subId涓猴細{}", serviceSubtask.getId().toString());
- serviceSubtaskMapper.deleteServiceSubtaskById(serviceSubtask.getId());
+ serviceSubtask.setSendstate(4L);
+ serviceSubtask.setRemark(patArchiveVO.getNotrequiredreason());
+ serviceSubtaskMapper.updateServiceSubtask(serviceSubtask);
redisCache.removeElementFromList("cache-exist", serviceSubtask.getId().toString());
redisCache.removeElementFromList("cache-0", serviceSubtask.getId().toString());
redisCache.removeElementFromList("cache-1", serviceSubtask.getId().toString());
diff --git a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
index 1477f7a..a8c7e00 100644
--- a/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/PatMedInhospServiceImpl.java
@@ -10,6 +10,7 @@
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.common.utils.StringUtils;
import com.smartor.domain.*;
+import com.smartor.domain.DTO.PatMedInhospDTO;
import com.smartor.domain.entity.ServiceSubtaskEntity;
import com.smartor.mapper.*;
import com.smartor.service.IPatMedInhospService;
@@ -110,6 +111,24 @@
patMedInhosp1.setTagname(tagname);
}
return patMedInhospList;
+ }
+
+ @Override
+ public List<PatMedInhospDTO> selectPatMedInhospByApplication(PatMedInhosp patMedInhosp) {
+ List<PatMedInhosp> patMedInhosps = selectPatMedInhospList(patMedInhosp);
+ if (!org.springframework.util.CollectionUtils.isEmpty(patMedInhosps)) {
+ return null;
+ }
+ List<PatMedInhospDTO> patMedInhospDTOList = DtoConversionUtils.sourceToTarget(patMedInhosps, PatMedInhospDTO.class);
+ for (PatMedInhospDTO pmd : patMedInhospDTOList) {
+ ServiceSubtaskEntity serviceSubtask = new ServiceSubtaskEntity();
+ serviceSubtask.setServiceType("4");
+ serviceSubtask.setInhospid(pmd.getInhospid());
+ List<ServiceSubtask> serviceSubtasks = serviceSubtaskMapper.selectServiceSubtaskList(serviceSubtask);
+ if (CollectionUtils.isNotEmpty(serviceSubtasks)) pmd.setFinishFlag("1");
+ }
+
+ return patMedInhospDTOList;
}
@Override
@@ -811,10 +830,10 @@
if (ObjectUtils.isEmpty(serviceSubtask)) {
return;
}
- if(StringUtils.isNotEmpty(patMedOperationItem.getDeptcode())){
+ if (StringUtils.isNotEmpty(patMedOperationItem.getDeptcode())) {
serviceSubtask.setVisitDeptCode(patMedOperationItem.getDeptcode());
serviceSubtask.setVisitDeptName(patMedOperationItem.getDeptname());
- }else {
+ } else {
serviceSubtask.setVisitDeptCode(patMedOperationItem.getHospitaldistrictcode());
serviceSubtask.setVisitDeptName(patMedOperationItem.getHospitaldistrictname());
}
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSLTDHealthcareRecordServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSLTDHealthcareRecordServiceImpl.java
index 2ada147..82c4094 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSLTDHealthcareRecordServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSLTDHealthcareRecordServiceImpl.java
@@ -9,6 +9,8 @@
import com.ruoyi.common.core.domain.entity.SysUserDept;
import com.ruoyi.common.core.domain.entity.SysUserRole;
import com.ruoyi.common.utils.StringUtils;
+import com.smartor.common.enums.EmergencyLevelEnum;
+import com.smartor.common.enums.ImportFlagEnum;
import com.ruoyi.common.utils.http.HttpUtils;
import com.smartor.common.DistinctByProperty;
import com.smartor.domain.*;
@@ -795,7 +797,6 @@
patMedInhosp.setInhospno(dto.getHealthcareRecordNo());
patMedInhosp.setFuflag("1");
-
if (StringUtils.isNotEmpty(patArchive.getNotrequiredFlag()) && patArchive.getNotrequiredFlag().equals("1"))
patMedInhosp.setFuflag("0");
if ("0".equals(cry)) {
@@ -840,6 +841,13 @@
setDischargeInfo(patMedInhosp, dto);
} else {
setAdmissionInfo(patMedInhosp, dto);
+ patMedInhosp.setEncounterSourceId(dto.getEncounterSourceId() == null ? "" : dto.getEncounterSourceId());
+ if (StringUtils.isNotEmpty(dto.getEncounterSourceId())) {
+ //鏍规嵁 encounterSourceId 鑾峰彇 importanceFlagCode emergencyLevelCode
+ Map<String, String> applyInfo = hospitalizedApply(dto.getEncounterSourceId(), dto.getOrgId());
+ patMedInhosp.setImportanceFlagCode(applyInfo.get("importanceFlagCode"));
+ patMedInhosp.setEmergencyLevelCode(applyInfo.get("emergencyLevelCode"));
+ }
}
patMedInhosp.setDrname(dto.getDoctorName());
@@ -884,6 +892,86 @@
patMedInhosp.setHospitaldistrictid("" + dto.getAreaId());
patMedInhosp.setHospitaldistrictcode("" + dto.getAreaId());
patMedInhosp.setHospitaldistrictname(dto.getAreaName());
+ }
+
+ /**
+ * 鏍规嵁鍏ラ櫌鐢宠鍗旾D鏌ヨ鍏ラ櫌鐢宠鍗曡鎯�
+ * 鍙彁鍙� importanceFlagCode锛坕mportanceFlagCodeList閫楀彿鎷兼帴锛夊拰 emergencyLevelCode 涓や釜鍊�
+ */
+ private Map<String, String> hospitalizedApply(String encounterSourceId, String orgid) {
+ Map<String, String> applyInfo = new HashMap<>();
+ Map<String, String> headers = buildRequestHeaders();
+ log.info("闄㈢敵璇峰崟ID鏌ヨ鍏ラ櫌鐢宠鍗曪細{},appKey:{}", sltdPubPath + "/sf/hospitalizedApply/query", APP_KEY);
+ //璁剧疆鍏ュ弬
+ Map<String, Object> requestParams = new HashMap<>();
+ requestParams.put("applyId", encounterSourceId);
+ requestParams.put("orgId", orgid);
+
+ String result = null;
+ if (StringUtils.isNotEmpty(encounterSourceId) && StringUtils.isNotEmpty(orgid))
+ result = HttpUtils.sendPostByHeader(sltdPubPath + "/sf/hospitalizedApply/query", new Gson().toJson(requestParams), headers);
+
+ if (StringUtils.isEmpty(result)) {
+ log.error("銆恏ospitalizedApply銆戞帴鍙h繑鍥炰负绌猴紝applyId={}", encounterSourceId);
+ return applyInfo;
+ }
+ try {
+ Gson gson = new Gson();
+ Type mapType = new TypeToken<Map<String, Object>>() {
+ }.getType();
+ Map<String, Object> responseMap = gson.fromJson(result, mapType);
+ Object dataObj = responseMap == null ? null : responseMap.get("data");
+ if (dataObj instanceof Map) {
+ Map<String, Object> data = (Map<String, Object>) dataObj;
+ //閲嶈鎬ф爣璁扮紪鐮侊紝鎺ュ彛杩斿洖鏄暟缁勶紝闇�瑕佽浆鎹负瀛楀吀鍚嶇О
+ Object importanceFlagCodeListObj = data.get("importanceFlagCodeList");
+ if (importanceFlagCodeListObj instanceof List) {
+ List<?> importanceFlagCodeList = (List<?>) importanceFlagCodeListObj;
+ // 杩囨护鎺� null 鍊�
+ List<String> nonNullList = importanceFlagCodeList.stream()
+ .filter(Objects::nonNull)
+ .map(Object::toString)
+ .filter(StringUtils::isNotEmpty)
+ .collect(Collectors.toList());
+
+ if (!nonNullList.isEmpty()) {
+ String importanceFlagLabel;
+ if (nonNullList.size() == 1) {
+ // 鍙湁涓�涓�硷紝鐩存帴閫氳繃鏋氫妇鑾峰彇鎻忚堪
+ importanceFlagLabel = ImportFlagEnum.getDescByCode(nonNullList.get(0));
+ } else {
+ // 澶氫釜鍊硷紝鐢ㄩ�楀彿鎷兼帴鏋氫妇鎻忚堪
+ StringBuilder labelBuilder = new StringBuilder();
+ for (String code : nonNullList) {
+ String label = ImportFlagEnum.getDescByCode(code);
+ if (StringUtils.isNotEmpty(label)) {
+ labelBuilder.append(label).append(",");
+ }
+ }
+ importanceFlagLabel = StringUtils.stripEnd(labelBuilder.toString(), ",");
+ }
+
+ if (StringUtils.isNotEmpty(importanceFlagLabel)) {
+ applyInfo.put("importanceFlagCode", importanceFlagLabel);
+ }
+ }
+ }
+ //绱ф�ョ▼搴︾紪鐮侊紝閫氳繃鏋氫妇杞崲鎻忚堪
+ Object emergencyLevelCodeObj = data.get("emergencyLevelCode");
+ if (emergencyLevelCodeObj != null) {
+ String emergencyLevelLabel = EmergencyLevelEnum.getDescByCode(emergencyLevelCodeObj.toString());
+ if (StringUtils.isNotEmpty(emergencyLevelLabel)) {
+ applyInfo.put("emergencyLevelCode", emergencyLevelLabel);
+ }
+ }
+ } else {
+ log.error("銆恏ospitalizedApply銆戞帴鍙h繑鍥瀌ata涓嶆槸瀵硅薄锛宎pplyId={}锛宺esult锛歿}", encounterSourceId, result);
+ }
+ } catch (Exception e) {
+ log.error("銆恏ospitalizedApply銆戣В鏋愬叆闄㈢敵璇峰崟璇︽儏澶辫触锛宎pplyId={}", encounterSourceId, e);
+ }
+ log.info("銆恏ospitalizedApply銆慳pplyId={}锛宨mportanceFlagCode={}锛宔mergencyLevelCode={}", encounterSourceId, applyInfo.get("importanceFlagCode"), applyInfo.get("emergencyLevelCode"));
+ return applyInfo;
}
/**
@@ -1076,6 +1164,7 @@
dto.setCostCategoryCode(getStringValue(dataItem, "costCategoryCode"));
dto.setCostNatureName(getStringValue(dataItem, "costNatureName"));
dto.setCostNatureCode(getStringValue(dataItem, "costNatureCode"));
+ dto.setEncounterSourceId(getStringValue(dataItem, "encounterSourceId"));
dto.setFurtherConsultationStatus(getIntegerValue(dataItem, "furtherConsultationStatus"));
Object mainDiagObj = dataItem.get("mainDischargeDiagnosis");
if (mainDiagObj instanceof Map) {
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
index 7699e68..11124d2 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskAnswerServiceImpl.java
@@ -5,6 +5,7 @@
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.ruoyi.common.core.redis.RedisCache;
+import com.ruoyi.common.exception.base.BaseException;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.DtoConversionUtils;
import com.ruoyi.common.utils.RSAPublicKeyExample;
@@ -738,6 +739,13 @@
public Map<String, Object> selectPatQuestionResult(ServiceSubTaskQueryReq serviceSubTaskQueryReq) {
log.info("selectPatQuesTionResult鐨勫叆鍙備负锛歿}", serviceSubTaskQueryReq);
Map<String, Object> map = new HashMap<>();
+ if (serviceSubTaskQueryReq.getSubId() != null) {
+ ServiceSubtask serviceSubtask = serviceSubtaskMapper.selectServiceSubtaskById(serviceSubTaskQueryReq.getSubId());
+ if (serviceSubtask.getSendstate() == 4L) {
+ log.info("鎮h�呭瓙浠诲姟ID涓猴細{}锛岀姸鎬佷负锛歿}", serviceSubTaskQueryReq.getSubId(), serviceSubtask.getSendstate());
+ throw new BaseException("璇ヤ换鍔′笉鎵ц");
+ }
+ }
//鑾峰彇鏈鐨勯棶绛旂粨鏋�
Map<String, Object> scriptInfoByCondition = serviceTaskService.getScriptInfoByCondition(serviceSubTaskQueryReq.getTaskid(), serviceSubTaskQueryReq.getPatid(), serviceSubTaskQueryReq.getIsFinish(), serviceSubTaskQueryReq.getPatfrom(), serviceSubTaskQueryReq.getSubId());
diff --git a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
index dffe37f..95d1918 100644
--- a/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
+++ b/smartor/src/main/java/com/smartor/service/impl/ServiceSubtaskServiceImpl.java
@@ -6,7 +6,6 @@
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
-import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.core.redis.RedisCache;
import com.ruoyi.common.dx.MessageSend;
@@ -18,7 +17,6 @@
import com.ruoyi.system.domain.SysConfig;
import com.ruoyi.system.mapper.SysConfigMapper;
import com.ruoyi.system.service.ISysConfigService;
-import com.smartor.common.DeepSeekApi;
import com.smartor.common.FtpService;
import com.smartor.common.MtSubmitSmUtil;
import com.smartor.config.PhoneUtils;
@@ -33,7 +31,6 @@
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.ObjectUtils;
-import org.apache.ibatis.annotations.Param;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
diff --git a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
index b176b00..7ac873f 100644
--- a/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
+++ b/smartor/src/main/resources/mapper/smartor/PatMedInhospMapper.xml
@@ -76,10 +76,16 @@
<result property="managementDoctorCode" column="management_doctor_code"/>
<result property="campusid" column="campusid"/>
<result property="inhospMydFlag" column="inhosp_myd_flag"/>
+ <result property="encounterSourceId" column="encounter_source_id"/>
+ <result property="importanceFlagCode" column="importance_flag_code"/>
+ <result property="emergencyLevelCode" column="emergency_level_code"/>
</resultMap>
<sql id="selectPatMedInhospVo">
select inhospid,
+ encounter_source_id,
+ importance_flag_code,
+ emergency_level_code,
patname,
inhosp_myd_flag,
campusid,
@@ -216,6 +222,9 @@
b.fuadvice,
b.fuspecialadvice,
b.inhosp_myd_flag,
+ b.encounter_source_id,
+ b.importance_flag_code,
+ b.emergency_level_code,
a.idcardno
FROM
pat_med_inhosp b
@@ -261,6 +270,9 @@
<if test="inDeptcheckFlag != null ">and b.in_deptcheck_flag = #{inDeptcheckFlag}</if>
<if test="inWardcheckFlag != null ">and b.in_wardcheck_flag = #{inWardcheckFlag}</if>
<if test="diagcheckFlag != null ">and b.diagcheck_flag = #{diagcheckFlag}</if>
+ <if test="encounterSourceId != null ">and b.encounter_source_id = #{encounterSourceId}</if>
+ <if test="importanceFlagCode != null ">and b.importance_flag_code = #{importanceFlagCode}</if>
+ <if test="emergencyLevelCode != null ">and b.emergency_level_code = #{emergencyLevelCode}</if>
<if test="cry != null and cry == 0 ">and b.endtime is null</if>
<if test="cry != null and cry == 1 ">and b.inhospstate=1</if>
<if test="cry != null and cry == 2 ">and b.inhospstate=2</if>
@@ -342,6 +354,9 @@
select
b.inhospid,
b.nurse_id,
+ b.encounter_source_id,
+ b.importance_flag_code,
+ b.emergency_level_code,
b.nurse_name,
b.patname,
b.management_doctor,
@@ -410,6 +425,15 @@
<if test="orgid != null and orgid != ''">
and orgid = #{orgid}
</if>
+ <if test="encounterSourceId != null and encounterSourceId != ''">
+ and b.encounter_source_id = #{encounterSourceId}
+ </if>
+ <if test="importanceFlagCode != null and importanceFlagCode != ''">
+ and b.importance_flag_code = #{importanceFlagCode}
+ </if>
+ <if test="emergencyLevelCode != null and emergencyLevelCode != ''">
+ and b.emergency_level_code = #{emergencyLevelCode}
+ </if>
<if test="serialnum != null and serialnum != ''">
and b.serialnum = #{serialnum}
</if>
@@ -421,6 +445,9 @@
select CONCAT( a.age, a.age_unit ) AS age,
a.telcode as telcode,
b.inhospid,
+ b.encounter_source_id,
+ b.importance_flag_code,
+ b.emergency_level_code,
b.management_doctor,
b.management_doctor_code,
b.patname,
@@ -494,6 +521,15 @@
and a.id = b.patid
AND a.idcardno != ''
<if test="inhospMydFlag != null ">and b.inhosp_myd_flag = #{inhospMydFlag}</if>
+ <if test="encounterSourceId != null and encounterSourceId != ''">
+ and b.encounter_source_id = #{encounterSourceId}
+ </if>
+ <if test="importanceFlagCode != null and importanceFlagCode != ''">
+ and b.importance_flag_code = #{importanceFlagCode}
+ </if>
+ <if test="emergencyLevelCode != null and emergencyLevelCode != ''">
+ and b.emergency_level_code = #{emergencyLevelCode}
+ </if>
<if test="orgid != null and orgid != ''">
and a.orgid = #{orgid}
</if>
@@ -626,6 +662,9 @@
<if test="managementDoctor != null ">and management_doctor = #{managementDoctor}</if>
<if test="managementDoctorCode != null ">and management_doctor_code = #{managementDoctorCode}</if>
<if test="campusid != null ">and campusid = #{campusid}</if>
+ <if test="importanceFlagCode != null ">and importance_flag_code = #{importanceFlagCode}</if>
+ <if test="emergencyLevelCode != null ">and emergency_level_code = #{emergencyLevelCode}</if>
+ <if test="encounterSourceId != null ">and encounter_source_id = #{encounterSourceId}</if>
</select>
@@ -699,6 +738,9 @@
<if test="managementDoctorCode != null ">management_doctor_code,</if>
<if test="campusid != null ">campusid,</if>
<if test="inhospMydFlag != null ">inhosp_myd_flag,</if>
+ <if test="importanceFlagCode != null ">importance_flag_code,</if>
+ <if test="emergencyLevelCode != null ">emergency_level_code,</if>
+ <if test="encounterSourceId != null ">encounter_source_id,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="serialnum != null">#{serialnum},</if>
@@ -766,7 +808,9 @@
<if test="managementDoctor != null ">#{managementDoctor},</if>
<if test="managementDoctorCode != null ">#{managementDoctorCode},</if>
<if test="campusid != null ">#{campusid},</if>
- <if test="inhospMydFlag != null ">#{inhospMydFlag},</if>
+ <if test="importanceFlagCode != null ">#{importanceFlagCode},</if>
+ <if test="emergencyLevelCode != null ">#{emergencyLevelCode},</if>
+ <if test="encounterSourceId != null ">#{encounterSourceId},</if>
</trim>
</insert>
@@ -785,7 +829,7 @@
nurse_id, nurse_name, out_way_id, out_way_name, guid,
operator, operator_id, inhospno, remark,
fuflag, fudate, fuperiod, futypecode, futypedesc, fuadvice, fuspecialadvice, management_doctor,
- management_doctor_doctor,campusid, inhosp_myd_flag
+ management_doctor_doctor,campusid, inhosp_myd_flag, importance_flag_code, emergency_level_code, encounter_source_id
)
values
<foreach collection="list" item="item" separator=",">
@@ -807,7 +851,8 @@
#{item.nurseId}, #{item.nurseName}, #{item.outWayId}, #{item.outWayName}, #{item.guid},
#{item.operator}, #{item.operatorId}, #{item.inhospno}, #{item.remark},
#{item.fuflag}, #{item.fudate}, #{item.fuperiod}, #{item.futypecode}, #{item.futypedesc}, #{item.fuadvice},
- #{item.fuspecialadvice}, #{item.managementDoctor}, #{item.managementDoctorCode}, #{item.campusid}, #{item.inhospMydFlag}
+ #{item.fuspecialadvice}, #{item.managementDoctor}, #{item.managementDoctorCode}, #{item.campusid}, #{item.inhospMydFlag},
+ #{item.importanceFlagCode}, #{item.emergencyLevelCode}, #{item.encounterSourceId}
)
</foreach>
</insert>
@@ -881,6 +926,9 @@
<if test="managementDoctorCode != null ">management_doctor_code = #{managementDoctorCode},</if>
<if test="campusid != null ">campusid = #{campusid},</if>
<if test="inhospMydFlag != null ">inhosp_myd_flag = #{inhospMydFlag},</if>
+ <if test="importanceFlagCode != null ">importance_flag_code = #{importanceFlagCode},</if>
+ <if test="emergencyLevelCode != null ">emergency_level_code = #{emergencyLevelCode},</if>
+ <if test="encounterSourceId != null ">encounter_source_id = #{encounterSourceId},</if>
</trim>
where inhospid = #{inhospid}
</update>
--
Gitblit v1.9.3