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}