diff --git a/src/main/java/com/docus/server/message/busservice/impl/SdBusinessServiceImpl.java b/src/main/java/com/docus/server/message/busservice/impl/SdBusinessServiceImpl.java
index e3e1ed8..8771100 100644
--- a/src/main/java/com/docus/server/message/busservice/impl/SdBusinessServiceImpl.java
+++ b/src/main/java/com/docus/server/message/busservice/impl/SdBusinessServiceImpl.java
@@ -123,6 +123,7 @@ public class SdBusinessServiceImpl implements SdBusinessService {
tBasicMapper.insertOrUpdateNurseSubmitTime(patientIds.get(0), nurseSubmitDTO.getSubmitTime());
tBasicMapper.insertOrUpdateNurseFileCount(patientIds.get(0), nurseSubmitDTO.getFilesCount());
+ tBasicMapper.insertOrUpdateNurse(patientIds.get(0), nurseSubmitDTO.getQcNurse(),nurseSubmitDTO.getDutyNurse());
log.info("补偿护理任务 patientIds:{} collectId:{}", patientIds, taskConfig.getCollectorIds());
compensateTask(patientIds, taskConfig.getCollectorIds());
return new MessageResponse(ResultCode.SUCCESS.getCode(), success());
diff --git a/src/main/java/com/docus/server/message/converters/WsNurseSubmitMessageConvert.java b/src/main/java/com/docus/server/message/converters/WsNurseSubmitMessageConvert.java
index 056e831..6691588 100644
--- a/src/main/java/com/docus/server/message/converters/WsNurseSubmitMessageConvert.java
+++ b/src/main/java/com/docus/server/message/converters/WsNurseSubmitMessageConvert.java
@@ -16,6 +16,10 @@ public class WsNurseSubmitMessageConvert {
String name=null;
Date submitTime=null;
Integer fileCount=null;
+ // 质控护士
+ String qcNurse;
+ // 责任护士
+ String dutyNurse;
XmlUtil xmlUtil = XmlUtil.of(str);
@@ -63,6 +67,22 @@ public class WsNurseSubmitMessageConvert {
throw new BaseException("解析 提交时间 出错!");
}
+ try {
+ // 提交时间
+ Node qcNurseNode = xmlUtil.getNode("/Request/Msg/QC_NURSE");
+ qcNurse = qcNurseNode.getTextContent();
+ } catch (Exception ex) {
+ throw new BaseException("解析 质控护士 出错!");
+ }
+
+ try {
+ // 提交时间
+ Node dutyNurseNode = xmlUtil.getNode("/Request/Msg/DUTY_NURSE");
+ dutyNurse = dutyNurseNode.getTextContent();
+ } catch (Exception ex) {
+ throw new BaseException("解析 责任护士 出错!");
+ }
+
WsNurseSubmitDTO nurseSubmitDTO = new WsNurseSubmitDTO();
nurseSubmitDTO.setInHospNo(inHospNo);
nurseSubmitDTO.setVisitNo(visitNo);
@@ -70,6 +90,8 @@ public class WsNurseSubmitMessageConvert {
nurseSubmitDTO.setName(name);
nurseSubmitDTO.setInHospIndexNo(inHospIndexNo);
nurseSubmitDTO.setSubmitTime(submitTime);
+ nurseSubmitDTO.setQcNurse(qcNurse);
+ nurseSubmitDTO.setDutyNurse(dutyNurse);
return nurseSubmitDTO;
}
diff --git a/src/main/java/com/docus/server/message/dto/WsNurseSubmitDTO.java b/src/main/java/com/docus/server/message/dto/WsNurseSubmitDTO.java
index 67363fc..2735b1c 100644
--- a/src/main/java/com/docus/server/message/dto/WsNurseSubmitDTO.java
+++ b/src/main/java/com/docus/server/message/dto/WsNurseSubmitDTO.java
@@ -18,4 +18,8 @@ public class WsNurseSubmitDTO {
private Date submitTime;
// 文件数量
private Integer filesCount;
+ // 质控护士
+ private String qcNurse;
+ // 责任护士
+ private String dutyNurse;
}
\ No newline at end of file
diff --git a/src/main/java/com/docus/server/message/mapper/TBasicMapper.java b/src/main/java/com/docus/server/message/mapper/TBasicMapper.java
index a0b9695..133fe65 100644
--- a/src/main/java/com/docus/server/message/mapper/TBasicMapper.java
+++ b/src/main/java/com/docus/server/message/mapper/TBasicMapper.java
@@ -38,6 +38,17 @@ public interface TBasicMapper {
*/
int insertOrUpdateNurseFileCount(@Param("patientId") String patientId, @Param("fileCount") Integer fileCount);
+
+ /**
+ * 更新质控护士和责任护士
+ *
+ * @param patientId 病案主键
+ * @param qcNurse 质控护士
+ * @param dutyNurse 责任护士
+ * @return database操作行
+ */
+ int insertOrUpdateNurse(@Param("patientId") String patientId, @Param("qcNurse") String qcNurse, @Param("dutyNurse") String dutyNurse);
+
/**
* 根据病案主键查询出院病案的数量,一般用于判断病案是否出院
*
@@ -48,34 +59,39 @@ public interface TBasicMapper {
/**
* 更新出院时间
+ *
* @param patientId 病案主键
- * @param disDate 出院时间
+ * @param disDate 出院时间
* @return database操作行
*/
- int updateDisDateTime(@Param("patientId") String patientId,@Param("disDate") String disDate);
+ int updateDisDateTime(@Param("patientId") String patientId, @Param("disDate") String disDate);
/**
* 更新基础信息,是否重症患者
+ *
* @param inpatientNo 病案号
* @param admissTimes 住院次数
- * @param state 状态 1是,0否
+ * @param state 状态 1是,0否
* @return 数据库操作行
*/
int updIcuRecordState(@Param("inpatientNo") String inpatientNo, @Param("admissTimes") Integer admissTimes, @Param("state") int state);
/**
* 根据病案主键和来源,统计未作废的文件数量
+ *
* @param patientId 病案主键
- * @param source 系统/采集来源
+ * @param source 系统/采集来源
* @return 未作废文件数量
*/
int getFileCountByPatientAndSource(@Param("patientId") String patientId, @Param("source") String source);
/**
* 更新电子病历提交状态
- * @param patientId 病案主键
+ *
+ * @param patientId 病案主键
* @param emrSubmitState 提交状态 0 否 1 是
* @return 数据库操作
*/
int updateEmrSubmitState(@Param("patientId") String patientId, @Param("emrSubmitState") int emrSubmitState);
+
}
diff --git a/src/main/resources/mapper/TBasicMapper.xml b/src/main/resources/mapper/TBasicMapper.xml
index 3985244..ca63faf 100644
--- a/src/main/resources/mapper/TBasicMapper.xml
+++ b/src/main/resources/mapper/TBasicMapper.xml
@@ -15,6 +15,10 @@
insert into `docus_medicalrecord`.`t_basic_extend` (patient_id,nurse_file_count) values (#{patientId},#{fileCount})
ON DUPLICATE KEY UPDATE nurse_file_count=#{fileCount}
+
+ insert into `docus_medicalrecord`.`t_basic_extend` (patient_id,qc_nurse,duty_nurse) values (#{patientId},#{qcNurse},${dutyNurse})
+ ON DUPLICATE KEY UPDATE qc_nurse=#{qcNurse},duty_nurse=#{dutyNurse}
+
update `docus_medicalrecord`.`t_basic`
set `dis_date`=#{disDate}