From f9a1451e6a4223d8f9747e884a0feff16d4d77ba Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=AE=87=E5=AE=99=E7=9A=AE=E7=9A=AE=E5=A8=83?=
<2964346877@qq.com>
Date: Thu, 16 Mar 2023 16:48:56 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E6=96=B0=E5=A2=9E=E6=8E=A5?=
=?UTF-8?q?=E5=8F=A3?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../server/collection/entity/TBasic.java | 3 +-
.../collection/mapper/TBasicMapper.java | 6 +
.../collection/service/ITBasicService.java | 3 +
.../service/impl/TBasicServiceImpl.java | 95 +++++++-
.../collection/webservice/BasicService.java | 12 +-
.../collection/webservice/IDeptServer.java | 3 +
.../collection/webservice/IUserServer.java | 3 +
.../collection/webservice/ReceiveServer.java | 5 +
.../webservice/impl/BasicServiceImpl.java | 205 +++++++++++++++++-
.../webservice/impl/DeptServerImpl.java | 1 -
.../webservice/impl/ReceiveServerImpl.java | 6 +-
.../webservice/impl/UserServerImpl.java | 1 -
src/main/resources/mapper/TBasicMapper.xml | 78 ++++++-
13 files changed, 397 insertions(+), 24 deletions(-)
diff --git a/src/main/java/com/docus/server/collection/entity/TBasic.java b/src/main/java/com/docus/server/collection/entity/TBasic.java
index 3654b9e..b7aec63 100644
--- a/src/main/java/com/docus/server/collection/entity/TBasic.java
+++ b/src/main/java/com/docus/server/collection/entity/TBasic.java
@@ -26,8 +26,7 @@ public class TBasic implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "病案主键")
- @TableId(value = "patient_id", type = IdType.ASSIGN_ID)
- private Long patientId;
+ private String patientId;
@ApiModelProperty(value = "住院次数")
private Integer admissTimes;
diff --git a/src/main/java/com/docus/server/collection/mapper/TBasicMapper.java b/src/main/java/com/docus/server/collection/mapper/TBasicMapper.java
index 3657297..3c48018 100644
--- a/src/main/java/com/docus/server/collection/mapper/TBasicMapper.java
+++ b/src/main/java/com/docus/server/collection/mapper/TBasicMapper.java
@@ -18,8 +18,14 @@ public interface TBasicMapper{
Integer selectOne(@Param("jzh") String jzh);
+ String getPatientId(@Param("jzh") String jzh);
+
Integer insert(@Param("tBasic") TBasic tBasic);
Integer insertExtend(@Param("tBasicExtend") TBasicExtend tBasicExtend);
+ Integer update(@Param("tBasic") TBasic tBasic);
+
+ Integer updateExtend(@Param("tBasicExtend") TBasicExtend tBasicExtend);
+
}
diff --git a/src/main/java/com/docus/server/collection/service/ITBasicService.java b/src/main/java/com/docus/server/collection/service/ITBasicService.java
index 076970c..4010d52 100644
--- a/src/main/java/com/docus/server/collection/service/ITBasicService.java
+++ b/src/main/java/com/docus/server/collection/service/ITBasicService.java
@@ -5,4 +5,7 @@ import com.docus.server.collection.dto.TBasicDto;
public interface ITBasicService {
public void setTBasic(TBasicDto dto) throws Exception;
+
+ public void updateTBasic(TBasicDto dto) throws Exception;
+
}
diff --git a/src/main/java/com/docus/server/collection/service/impl/TBasicServiceImpl.java b/src/main/java/com/docus/server/collection/service/impl/TBasicServiceImpl.java
index f9cca9d..69c28fa 100644
--- a/src/main/java/com/docus/server/collection/service/impl/TBasicServiceImpl.java
+++ b/src/main/java/com/docus/server/collection/service/impl/TBasicServiceImpl.java
@@ -43,16 +43,23 @@ public class TBasicServiceImpl implements ITBasicService {
Long patientId = idService.getDateSeq();
//数据类型转化,格式处理
- Date admissDate = Func.parseDate(tBasicDto.getAdmissDate(), DateUtil.PATTERN_DATETIME_MINI);
- Date disDate = Func.parseDate(tBasicDto.getDisDate(), DateUtil.PATTERN_DATETIME_MINI);
+ Date admissDate=null;
+ if(Func.isNotEmpty(tBasicDto.getAdmissDate())){
+ admissDate = Func.parseDate(tBasicDto.getAdmissDate(), DateUtil.PATTERN_DATETIME_MINI);
+ }
+ Date disDate=null;
+ if(Func.isNotEmpty(tBasicDto.getDisDate())){
+ disDate = Func.parseDate(tBasicDto.getDisDate(), DateUtil.PATTERN_DATETIME_MINI);
+ }
String admissTimesStr = tBasicDto.getAdmissTimes();
Integer admissTimes=null;
if(NumberUtil.isInteger(admissTimesStr)){
admissTimes=Integer.parseInt(admissTimesStr);
}
String ageStr = tBasicDto.getAge();
- ageStr =ageStr.substring(0,ageStr.length()-1);
- System.out.println(ageStr);
+ if(Func.isNotEmpty(ageStr)){
+ ageStr =ageStr.substring(0,ageStr.length()-1);
+ }
Integer age=null;
if(NumberUtil.isInteger(ageStr)){
age=Integer.parseInt(ageStr);
@@ -74,7 +81,7 @@ public class TBasicServiceImpl implements ITBasicService {
//组装数据
TBasic tBasic=new TBasic();
- tBasic.setPatientId(patientId);
+ tBasic.setPatientId(patientId.toString());
tBasic.setJzh(tBasicDto.getJzh());
tBasic.setInpatientNo(tBasicDto.getInpatientNo());
tBasic.setAdmissTimes(admissTimes);
@@ -102,6 +109,84 @@ public class TBasicServiceImpl implements ITBasicService {
tBasicMapper.insert(tBasic);
tBasicMapper.insertExtend(tBasicExtend);
}
+
+ @Override
+ @Transactional
+ public void updateTBasic(TBasicDto tBasicDto) throws Exception {
+ //判断jzh是否存在
+ String patientId = tBasicMapper.getPatientId(tBasicDto.getJzh());
+ if (Func.isEmpty(patientId)) {
+ setTBasic(tBasicDto);
+ return;
+ }
+ //数据类型转化,格式处理
+ Date admissDate=null;
+ if(Func.isNotEmpty(tBasicDto.getAdmissDate())){
+ admissDate = Func.parseDate(tBasicDto.getAdmissDate(), DateUtil.PATTERN_DATETIME_MINI);
+ }
+ Date disDate=null;
+ if(Func.isNotEmpty(tBasicDto.getDisDate())){
+ disDate = Func.parseDate(tBasicDto.getDisDate(), DateUtil.PATTERN_DATETIME_MINI);
+ }
+ String admissTimesStr = tBasicDto.getAdmissTimes();
+ Integer admissTimes=null;
+ if(NumberUtil.isInteger(admissTimesStr)){
+ admissTimes=Integer.parseInt(admissTimesStr);
+ }
+ String ageStr = tBasicDto.getAge();
+ if(Func.isNotEmpty(ageStr)){
+ ageStr =ageStr.substring(0,ageStr.length()-1);
+ }
+ Integer age=null;
+ if(NumberUtil.isInteger(ageStr)){
+ age=Integer.parseInt(ageStr);
+ }
+ String sexName=tBasicDto.getSexName();
+ if(sexName.length()>1){
+ sexName=sexName.substring(0,1);
+ }
+ String admissDaysStr = tBasicDto.getAdmissDays();
+ Integer admissDays=null;
+ if(NumberUtil.isInteger(admissDaysStr)){
+ admissDays=Integer.parseInt(admissDaysStr);
+ }
+ String isDeadStr = tBasicDto.getIsDead();
+ Integer isDead=0;
+ if("死亡".equals(isDeadStr)){
+ isDead=1;
+ }
+
+ //组装数据
+ TBasic tBasic=new TBasic();
+
+ tBasic.setJzh(tBasicDto.getJzh());
+ tBasic.setPatientId(patientId);
+ tBasic.setInpatientNo(tBasicDto.getInpatientNo());
+ tBasic.setAdmissTimes(admissTimes);
+ tBasic.setName(tBasicDto.getName());
+ tBasic.setAdmissDate(admissDate);
+ tBasic.setDisDate(disDate);
+ tBasic.setAdmissDeptName(tBasicDto.getAdmissDeptName());
+ tBasic.setDisDeptName(tBasicDto.getDisDeptName());
+ tBasic.setAttendingName(tBasicDto.getAttendingName());
+ tBasic.setAge(age);
+ tBasic.setSex(tBasicDto.getSex());
+ tBasic.setIdCard(tBasicDto.getIdCard());
+ tBasic.setDisDept(tBasicDto.getDisDept());
+ tBasic.setSexName(sexName);
+ tBasic.setBedNum(tBasicDto.getBedNum());
+ tBasic.setAdmissDays(admissDays);
+ tBasic.setIsDead(isDead);
+
+ TBasicExtend tBasicExtend=new TBasicExtend();
+ tBasicExtend.setPatientId(patientId);
+ tBasicExtend.setWardCode(tBasicDto.getWardCode());
+ tBasicExtend.setWardName(tBasicDto.getWardName());
+
+ //持久化
+ tBasicMapper.update(tBasic);
+ tBasicMapper.updateExtend(tBasicExtend);
+ }
}
diff --git a/src/main/java/com/docus/server/collection/webservice/BasicService.java b/src/main/java/com/docus/server/collection/webservice/BasicService.java
index 9221f59..b921002 100644
--- a/src/main/java/com/docus/server/collection/webservice/BasicService.java
+++ b/src/main/java/com/docus/server/collection/webservice/BasicService.java
@@ -1,6 +1,16 @@
package com.docus.server.collection.webservice;
-public interface BasicService {
+import javax.jws.WebService;
+@WebService
+public interface BasicService {
+ /**
+ * @description新增基础数据
+ */
public String setTBasic(String str);
+
+ /**
+ * @description更新基础数据
+ */
+ public String updateTBasic(String str);
}
diff --git a/src/main/java/com/docus/server/collection/webservice/IDeptServer.java b/src/main/java/com/docus/server/collection/webservice/IDeptServer.java
index ba73900..e58c088 100644
--- a/src/main/java/com/docus/server/collection/webservice/IDeptServer.java
+++ b/src/main/java/com/docus/server/collection/webservice/IDeptServer.java
@@ -1,9 +1,12 @@
package com.docus.server.collection.webservice;
+import javax.jws.WebService;
+
/**
* @author Fang Ruichuan
* @date 2022-11-14 19:03
*/
+@WebService
public interface IDeptServer {
/**
* 科室信息接收,进行操作
diff --git a/src/main/java/com/docus/server/collection/webservice/IUserServer.java b/src/main/java/com/docus/server/collection/webservice/IUserServer.java
index 23a75af..21f8c49 100644
--- a/src/main/java/com/docus/server/collection/webservice/IUserServer.java
+++ b/src/main/java/com/docus/server/collection/webservice/IUserServer.java
@@ -2,10 +2,13 @@ package com.docus.server.collection.webservice;
import com.docus.server.collection.dto.UserDto;
+import javax.jws.WebService;
+
/**
* @author Fang Ruichuan
* @date 2022-11-14 19:03
*/
+@WebService
public interface IUserServer {
/**
* 用户信息接收,进行操作
diff --git a/src/main/java/com/docus/server/collection/webservice/ReceiveServer.java b/src/main/java/com/docus/server/collection/webservice/ReceiveServer.java
index b0e5fc9..41f7ff4 100644
--- a/src/main/java/com/docus/server/collection/webservice/ReceiveServer.java
+++ b/src/main/java/com/docus/server/collection/webservice/ReceiveServer.java
@@ -1,9 +1,13 @@
package com.docus.server.collection.webservice;
+import javax.jws.WebService;
+
/**
* @author Fang Ruichuan
* @date 2022-11-14 19:03
*/
+
+@WebService
public interface ReceiveServer {
/**
* 科室信息接收,进行操作
@@ -14,6 +18,7 @@ public interface ReceiveServer {
String setTBasic(String str);
+ String updateTBasic(String str);
/**
* 用户信息接收,进行操作
* @param receiveUser 接收到的用户参数
diff --git a/src/main/java/com/docus/server/collection/webservice/impl/BasicServiceImpl.java b/src/main/java/com/docus/server/collection/webservice/impl/BasicServiceImpl.java
index 5b00768..5357d7e 100644
--- a/src/main/java/com/docus/server/collection/webservice/impl/BasicServiceImpl.java
+++ b/src/main/java/com/docus/server/collection/webservice/impl/BasicServiceImpl.java
@@ -22,7 +22,6 @@ import javax.jws.WebService;
* @Version: 1.0
*/
@Service
-@WebService
@Slf4j
public class BasicServiceImpl implements BasicService {
@@ -37,7 +36,7 @@ public class BasicServiceImpl implements BasicService {
//解析xml
TBasicDto tBasicDto = null;
try {
- tBasicDto=getTBasicDto(body);
+ tBasicDto=getNewTBasicDto(body);
//持久化
tBasicService.setTBasic(tBasicDto);
}catch (Exception e){
@@ -48,8 +47,28 @@ public class BasicServiceImpl implements BasicService {
return Result.success(tBasicDto.getSerialId(),tBasicDto.getReceive(),tBasicDto.getSend());
}
+ @Override
+ public String updateTBasic(String body) {
+ if (Func.isEmpty(body)) {
+ return Result.failed(null,"参数为空",null,null);
+ }
+ //解析xml
+ TBasicDto tBasicDto = null;
+ try {
+ tBasicDto=getUpdateTBasicDto(body);
+ //持久化
+ tBasicService.updateTBasic(tBasicDto);
+ }catch (Exception e){
+ e.printStackTrace();
+ log.error(e.getMessage(), e);
+ return Result.failed(tBasicDto.getSerialId(),e.getMessage(),tBasicDto.getReceive(),tBasicDto.getSend());
+ }
+ return Result.success(tBasicDto.getSerialId(),tBasicDto.getReceive(),tBasicDto.getSend());
+
+ }
+
- public TBasicDto getTBasicDto(String str) {
+ public TBasicDto getNewTBasicDto(String str) {
XmlUtil xml=XmlUtil.of(str);
//id-消息流水号
String serialId=null;
@@ -125,37 +144,37 @@ public class BasicServiceImpl implements BasicService {
}
//年龄
String age=null;
- Node ageNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/age[@unit='岁']/@value");
+ Node ageNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/age[@unit='岁']/@value");
if(Func.isNotEmpty(ageNode)){
age=ageNode.getNodeValue();
}
//性别
String sex=null;
- Node sexNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/administrativeGenderCode/@code");
+ Node sexNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/administrativeGenderCode/@code");
if(Func.isNotEmpty(sexNode)){
sex=sexNode.getNodeValue();
}
//身份证号
String idCard=null;
- Node idCardNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/id/item/@extension");
+ Node idCardNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/id/item/@extension");
if(Func.isNotEmpty(idCardNode)){
idCard=idCardNode.getNodeValue();
}
//出院科室
String disDept=null;
- Node disDeptCardNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
+ Node disDeptCardNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
if(Func.isNotEmpty(disDeptCardNode)){
disDept=disDeptCardNode.getNodeValue();
}
//性别名称
String sexName=null;
- Node sexNameNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/administrativeGenderCode/@displayName");
+ Node sexNameNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/administrativeGenderCode/@displayName");
if(Func.isNotEmpty(sexNameNode)){
sexName=sexNameNode.getNodeValue();
}
//床位号
String bedNum=null;
- Node bedNumNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
+ Node bedNumNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
if(Func.isNotEmpty(bedNumNode)){
bedNum=bedNumNode.getNodeValue();
}
@@ -173,13 +192,176 @@ public class BasicServiceImpl implements BasicService {
}
//病区编号
String wardCode=null;
- Node wardCodeNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
+ Node wardCodeNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
+ if(Func.isNotEmpty(wardCodeNode)){
+ wardCode=wardCodeNode.getNodeValue();
+ }
+ //病区名称
+ String wardName=null;
+ Node wardNameNode = xml.getNode("/PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/name");
+ if(Func.isNotEmpty(wardNameNode)){
+ wardName=wardNameNode.getTextContent();
+ }
+
+
+ //设置dto
+ TBasicDto dto=new TBasicDto();
+ dto.setSerialId(serialId);
+ dto.setSend(send);
+ dto.setReceive(receive);
+ dto.setInpatientNo(inpatientNo);
+ dto.setName(name);
+ dto.setJzh(jzh);
+ dto.setAdmissDeptName(admissDeptName);
+ dto.setDisDeptName(disDeptName);
+ dto.setAdmissDate(admissDate);
+ dto.setDisDate(disDate);
+ dto.setAdmissTimes(admissTimes);
+ dto.setAttendingName(attendingName);
+ dto.setAge(age);
+ dto.setSex(sex);
+ dto.setIdCard(idCard);
+ dto.setDisDept(disDept);
+ dto.setSexName(sexName);
+ dto.setBedNum(bedNum);
+ dto.setIsDead(isDead);
+ dto.setAdmissDays(admissDays);
+ dto.setWardCode(wardCode);
+ dto.setWardName(wardName);
+ return dto;
+ }
+
+ public TBasicDto getUpdateTBasicDto(String str) {
+ XmlUtil xml=XmlUtil.of(str);
+ //id-消息流水号
+ String serialId=null;
+ Node serialIdNode = xml.getNode("/PRPA_HIP0033/id/@extension");
+ if(Func.isNotEmpty(serialIdNode)){
+ serialId=serialIdNode.getNodeValue();
+ }
+ //接受方
+ String receive=null;
+ Node receiveNode = xml.getNode("/PRPA_HIP0033/receiver/device/id/item/@extension");
+ if(Func.isNotEmpty(receiveNode)){
+ receive=receiveNode.getNodeValue();
+ }
+ //发送方
+ String send=null;
+ Node sendNode = xml.getNode("/PRPA_HIP0033/sender/device/id/item/@extension");
+ if(Func.isNotEmpty(sendNode)){
+ send=sendNode.getNodeValue();
+ }
+ //住院流水号
+ String jzh=null;
+ Node jzhNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/item/@extension");
+ if(Func.isNotEmpty(jzhNode)){
+ jzh=jzhNode.getNodeValue();
+ }
+ //住院号标识
+ String inpatientNo=null;
+ Node inpatientNoNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/id/item/@extension");
+ if(Func.isNotEmpty(inpatientNoNode)){
+ inpatientNo=inpatientNoNode.getNodeValue();
+ }
+ //住院次数[]
+ String admissTimes=null;
+ Node admissTimesNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/lengthOfStayQuantity[@unit='次']/@value");
+ if(Func.isNotEmpty(admissTimesNode)){
+ admissTimes=admissTimesNode.getNodeValue();
+ }
+ //姓名
+ String name=null;
+ Node nameNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/name/item/part/@value");
+ if(Func.isNotEmpty(nameNode)){
+ name=nameNode.getNodeValue();
+ }
+ //入院日期时间
+ String admissDate=null;
+ Node admissDateNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/effectiveTime/low/@value");
+ if(Func.isNotEmpty(admissDateNode)){
+ admissDate=admissDateNode.getNodeValue();
+ }
+ //出院日期时间
+ String disDate=null;
+ Node disDateNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/effectiveTime/high/@value");
+ if(Func.isNotEmpty(disDateNode)){
+ disDate=disDateNode.getNodeValue();
+ }
+ //入院诊断科室名称[]
+ String admissDeptName=null;
+ Node admissDeptNameNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/component[@displayName='入院诊断']/section/entry[@displayName='入院诊断-西医条目']/observation/performer/assignedEntity/representedOrganization/name");
+ if(Func.isNotEmpty(admissDeptNameNode)){
+ admissDeptNameNode.getTextContent();
+ }
+ //出院诊断科室名称[]
+ String disDeptName=null;
+ Node disDeptNameNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/component[@displayName='出院诊断']/section/entry[@displayName='出院诊断-西医条目']/observation/performer/assignedEntity/representedOrganization/name");
+ if(Func.isNotEmpty(disDeptNameNode)){
+ disDeptName=disDeptNameNode.getTextContent();
+ }
+ //主治医师[]
+ String attendingName=null;
+ Node attendingNameNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/authenticator[@displayName='主治医师']/assignedEntity/assignedPerson/name");
+ if(Func.isNotEmpty(attendingNameNode)){
+ attendingName=attendingNameNode.getTextContent();
+ }
+ //年龄
+ String age=null;
+ Node ageNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/age[@unit='岁']/@value");
+ if(Func.isNotEmpty(ageNode)){
+ age=ageNode.getNodeValue();
+ }
+ //性别
+ String sex=null;
+ Node sexNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/administrativeGenderCode/@code");
+ if(Func.isNotEmpty(sexNode)){
+ sex=sexNode.getNodeValue();
+ }
+ //身份证号
+ String idCard=null;
+ Node idCardNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/id/item/@extension");
+ if(Func.isNotEmpty(idCardNode)){
+ idCard=idCardNode.getNodeValue();
+ }
+ //出院科室
+ String disDept=null;
+ Node disDeptCardNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
+ if(Func.isNotEmpty(disDeptCardNode)){
+ disDept=disDeptCardNode.getNodeValue();
+ }
+ //性别名称
+ String sexName=null;
+ Node sexNameNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/subject/patient/patientPerson/administrativeGenderCode/@displayName");
+ if(Func.isNotEmpty(sexNameNode)){
+ sexName=sexNameNode.getNodeValue();
+ }
+ //床位号
+ String bedNum=null;
+ Node bedNumNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
+ if(Func.isNotEmpty(bedNumNode)){
+ bedNum=bedNumNode.getNodeValue();
+ }
+ //住院天数数[]
+ String admissDays=null;
+ Node admissDaysNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/lengthOfStayQuantity[@unit='天']/@value");
+ if(Func.isNotEmpty(admissDaysNode)){
+ admissDays=admissDaysNode.getNodeValue();
+ }
+ //是否死亡[]
+ String isDead=null;
+ Node isDeadNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/component[@displayName='出院诊断']/section/entry[@displayName='出院情况']/observation/value");
+ if(Func.isNotEmpty(isDeadNode)){
+ isDead=isDeadNode.getTextContent();
+ }
+ //病区编号
+ String wardCode=null;
+ Node wardCodeNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/id/@extension");
if(Func.isNotEmpty(wardCodeNode)){
wardCode=wardCodeNode.getNodeValue();
}
//病区名称
String wardName=null;
- Node wardNameNode = xml.getNode("//PRPA_HIP0032/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/name");
+ Node wardNameNode = xml.getNode("/PRPA_HIP0033/controlActProcess/subject/encounterEvent/componentOf/encompassingEncounter/location/healthCareFacility/serviceProviderOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/asOrganizationPartOf/wholeOrganization/name");
if(Func.isNotEmpty(wardNameNode)){
wardName=wardNameNode.getTextContent();
}
@@ -211,5 +393,6 @@ public class BasicServiceImpl implements BasicService {
dto.setWardName(wardName);
return dto;
}
+
}
diff --git a/src/main/java/com/docus/server/collection/webservice/impl/DeptServerImpl.java b/src/main/java/com/docus/server/collection/webservice/impl/DeptServerImpl.java
index 049467f..cb0180d 100644
--- a/src/main/java/com/docus/server/collection/webservice/impl/DeptServerImpl.java
+++ b/src/main/java/com/docus/server/collection/webservice/impl/DeptServerImpl.java
@@ -21,7 +21,6 @@ import java.util.Date;
* @date 2023年2月25日21:56:33
*/
@Service
-@WebService
@Slf4j
public class DeptServerImpl implements IDeptServer {
diff --git a/src/main/java/com/docus/server/collection/webservice/impl/ReceiveServerImpl.java b/src/main/java/com/docus/server/collection/webservice/impl/ReceiveServerImpl.java
index 0524566..b0191c2 100644
--- a/src/main/java/com/docus/server/collection/webservice/impl/ReceiveServerImpl.java
+++ b/src/main/java/com/docus/server/collection/webservice/impl/ReceiveServerImpl.java
@@ -19,7 +19,6 @@ import javax.jws.WebService;
* @Version: 1.0
*/
@Service
-@WebService
@Slf4j
public class ReceiveServerImpl implements ReceiveServer {
@Resource
@@ -40,6 +39,11 @@ public class ReceiveServerImpl implements ReceiveServer {
return basicService.setTBasic(str);
}
+ @Override
+ public String updateTBasic(String str) {
+ return basicService.updateTBasic(str);
+ }
+
@Override
public String userModify(String receiveUser) {
return userServer.userModify(receiveUser);
diff --git a/src/main/java/com/docus/server/collection/webservice/impl/UserServerImpl.java b/src/main/java/com/docus/server/collection/webservice/impl/UserServerImpl.java
index d7b6fb1..a407bdf 100644
--- a/src/main/java/com/docus/server/collection/webservice/impl/UserServerImpl.java
+++ b/src/main/java/com/docus/server/collection/webservice/impl/UserServerImpl.java
@@ -21,7 +21,6 @@ import java.util.Date;
* @date 2023年2月25日21:56:33
*/
@Service
-@WebService
@Slf4j
public class UserServerImpl implements IUserServer {
diff --git a/src/main/resources/mapper/TBasicMapper.xml b/src/main/resources/mapper/TBasicMapper.xml
index 08b34c6..302fa9f 100644
--- a/src/main/resources/mapper/TBasicMapper.xml
+++ b/src/main/resources/mapper/TBasicMapper.xml
@@ -7,8 +7,10 @@
INSERT INTO `docus_medicalrecord`.`t_basic`
(`admiss_days`,`is_dead`,`sex_name`,`bed_num`,`age`,`sex`,`id_card`,`dis_dept`,`patient_id`, `admiss_times`, `inpatient_no`,`name`, `admiss_date`, `admiss_dept_name`, `dis_date`, `dis_dept_name`,`attending_name`,`jzh`)
VALUES
- (#{tBasic.admissDays},#{tBasic.isDead},#{tBasic.sexName},#{tBasic.bedNum},#{tBasic.age},#{tBasic.sex},#{tBasic.idCard},#{tBasic.disDept},#{tBasic.patientId},#{tBasic.admissTimes},#{tBasic.inpatientNo},#{tBasic.name},
- #{tBasic.admissDate},#{tBasic.admissDeptName},#{tBasic.disDate},#{tBasic.disDeptName},#{tBasic.attendingName},#{tBasic.jzh})
+ (#{tBasic.admissDays},#{tBasic.isDead},#{tBasic.sexName},#{tBasic.bedNum},#{tBasic.age},#{tBasic.sex},#{tBasic.idCard},
+ #{tBasic.disDept},#{tBasic.patientId},#{tBasic.admissTimes},#{tBasic.inpatientNo},
+ #{tBasic.name},#{tBasic.admissDate},#{tBasic.admissDeptName},#{tBasic.disDate},#{tBasic.disDeptName},
+ #{tBasic.attendingName},#{tBasic.jzh})
INSERT INTO `docus_medicalrecord`.`t_basic_extend`
@@ -17,7 +19,79 @@
(#{tBasicExtend.patientId},#{tBasicExtend.wardCode},#{tBasicExtend.wardName})
+
+ UPDATE `docus_medicalrecord`.`t_basic`
+
+
+ `admiss_days`=#{tBasic.admissDays},
+
+
+ `is_dead`=#{tBasic.isDead},
+
+
+ `sex_name`=#{tBasic.sexName},
+
+
+ `bed_num`=#{tBasic.bedNum},
+
+
+ `age`=#{tBasic.age},
+
+
+ `sex`=#{tBasic.sex},
+
+
+ `id_card`=#{tBasic.idCard},
+
+
+ `dis_dept`=#{tBasic.disDept},
+
+
+ `admiss_times`=#{tBasic.admissTimes},
+
+
+ `inpatient_no`=#{tBasic.inpatientNo},
+
+
+ `name`=#{tBasic.name},
+
+
+ `admiss_date`=#{tBasic.admissDate},
+
+
+ `admiss_dept_name`=#{tBasic.admissDeptName},
+
+
+ `dis_date`=#{tBasic.disDate},
+
+
+ `dis_dept_name`=#{tBasic.disDeptName},
+
+
+ `attending_name`=#{tBasic.attendingName},
+
+
+ WHERE `patient_id`=#{tBasic.patientId,jdbcType=VARCHAR};
+
+
+
+ UPDATE `docus_medicalrecord`.`t_basic_extend`
+
+
+ `ward_code`=#{tBasicExtend.wardCode},
+
+
+ `ward_name`=#{tBasicExtend.wardName},
+
+
+ WHERE `patient_id`=#{tBasicExtend.patientId};
+
+
+
+