highriskList);
}
diff --git a/parent/base.common/src/main/java/com/lyms/base/common/service/conf/impl/DiagnoseMapsServiceImpl.java b/parent/base.common/src/main/java/com/lyms/base/common/service/conf/impl/DiagnoseMapsServiceImpl.java
index af4e7c1..cc42d29 100644
--- a/parent/base.common/src/main/java/com/lyms/base/common/service/conf/impl/DiagnoseMapsServiceImpl.java
+++ b/parent/base.common/src/main/java/com/lyms/base/common/service/conf/impl/DiagnoseMapsServiceImpl.java
@@ -4,11 +4,14 @@ import java.io.Serializable;
import java.util.List;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.lyms.base.common.dao.conf.DiagnoseMapsMapper;
import com.lyms.base.common.entity.conf.DiagnoseMaps;
import com.lyms.base.common.service.conf.DiagnoseMapsService;
+import com.lyms.util.StrUtils;
/**
*
@@ -29,4 +32,20 @@ public class DiagnoseMapsServiceImpl extends ServiceImpl selectByDiagnoseId(Serializable id) {
return baseMapper.selectByDiagnoseId(id);
}
+
+ @Override
+ @Transactional
+ public void deleteAndInsert(String diagnoseId, List diagnoseList) {
+ //delete
+ EntityWrapper ew = new EntityWrapper();
+ ew.where("DIAGNOSE_ID = {0}",diagnoseId);
+ delete(ew);
+ //insert
+ for(int i=0;i
* 高危诊断结果表 服务实现类
@@ -27,4 +32,20 @@ public class HighriskMapsServiceImpl extends ServiceImpl selectByDiagnoseId(Serializable id) {
return baseMapper.selectByDiagnoseId(id);
}
+
+ @Override
+ @Transactional
+ public void deleteAndInsert(String diagnoseId, List highriskList) {
+ //delete
+ EntityWrapper ew = new EntityWrapper();
+ ew.where("DIAGNOSE_ID = {0}",diagnoseId);
+ delete(ew);
+ //insert
+ for(int i=0;i
+
+
@@ -88,12 +90,12 @@
cusHrColorcode,CUS_HR_COLORTEXT AS cusHrColortext,
CUS_HR_NAME AS cusHrName,CUS_HR_GRADE AS
cusHrGrade,HAS_DIAGNOSE AS
- hasDiagnose
+ hasDiagnose,CHIEF_COMPLAINT AS chiefComplaint
- select c.* from (
+ select c.id,c.SOURCE_ID,c.VERSION_ID,c.NAME,c.colorcode,c.colortext,c.grouporder,c.itemorder,c.grade,c.ENABLE from (
select m.* from HIGHRISK_MAPS m where m.DIAGNOSE_ID in (
select id from (
select * from DIAGNOSE_INFO d where d.person_id = #{personId} and d.HAS_HIGHRISK = 1 ORDER BY d.DIAGNOSE_TIME desc limit 0,1
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/childbirth/ChildbirthTaipan.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/childbirth/ChildbirthTaipan.java
index ba3dacb..01a0e27 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/childbirth/ChildbirthTaipan.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/childbirth/ChildbirthTaipan.java
@@ -18,6 +18,10 @@ import java.util.Date;
public class ChildbirthTaipan implements Serializable {
private static final long serialVersionUID = 1L;
+
+ //娩出方式(枚举)1子面2母面
+ public static final int BIRTH_TYPE_SON = 1;
+ public static final int BIRTH_TYPE_MUM = 2;
/**
* ID(胎盘信息表)
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/diagnose/DiagnoseInfo.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/diagnose/DiagnoseInfo.java
index ad70af0..d2b3a10 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/diagnose/DiagnoseInfo.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/diagnose/DiagnoseInfo.java
@@ -215,6 +215,7 @@ public class DiagnoseInfo implements Serializable {
@TableField(value = "DIAGNOSE_TIME")
private Date diagnoseTime;
+
//补充字段 by xujiahong since 2017-04-26======================================
/**
@@ -246,13 +247,17 @@ public class DiagnoseInfo implements Serializable {
* 其他用户自定义高危评分
*/
@TableField(value = "CUS_HR_GRADE")
- private Integer cusHrGrade;
+ private String cusHrGrade;
/**
* 是否存在诊断定义,1有,0没有
*/
@TableField(value = "HAS_DIAGNOSE")
private Integer hasDiagnose;
-
+ /**
+ * 主诉
+ */
+ @TableField(value = "CHIEF_COMPLAINT")
+ private String chiefComplaint;
//格式化字段======================
@@ -605,11 +610,11 @@ public class DiagnoseInfo implements Serializable {
this.cusHrName = cusHrName;
}
- public Integer getCusHrGrade() {
+ public String getCusHrGrade() {
return cusHrGrade;
}
- public void setCusHrGrade(Integer cusHrGrade) {
+ public void setCusHrGrade(String cusHrGrade) {
this.cusHrGrade = cusHrGrade;
}
@@ -636,6 +641,13 @@ public class DiagnoseInfo implements Serializable {
public void setNextinspectTimeStr(String nextinspectTimeStr) {
this.nextinspectTimeStr = nextinspectTimeStr;
}
-
+
+ public String getChiefComplaint() {
+ return chiefComplaint;
+ }
+
+ public void setChiefComplaint(String chiefComplaint) {
+ this.chiefComplaint = chiefComplaint;
+ }
}
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/DiagnoseInfoService.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/DiagnoseInfoService.java
index 6542c7a..dfe1a81 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/DiagnoseInfoService.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/DiagnoseInfoService.java
@@ -4,7 +4,9 @@ import java.io.Serializable;
import java.util.List;
import com.lyms.base.common.entity.conf.DiagnoseConf;
+import com.lyms.base.common.entity.conf.DiagnoseMaps;
import com.lyms.base.common.entity.conf.HighriskConf;
+import com.lyms.base.common.entity.conf.HighriskMaps;
import com.lyms.hospital.entity.assist.DiagnoseAssit;
import com.lyms.hospital.entity.diagnose.DiagnoseInfo;
import com.lyms.hospital.entity.diagnose.DiagnoseTai;
@@ -52,7 +54,7 @@ public interface DiagnoseInfoService extends BaseService {
* 修改时间:
*/
public String saveFirstExam(DiagnoseInfo info, DiagnoseAssit assist, List historyList,
- List taiList);
+ List taiList,List highriskList,List diagnoseList);
/**
* @Description:保存复诊数据
@@ -64,7 +66,7 @@ public interface DiagnoseInfoService extends BaseService {
* 修改人:
* 修改时间:
*/
- public String saveLaterExam(DiagnoseInfo info, List taiList);
+ public String saveLaterExam(DiagnoseInfo info, List taiList,List highriskList,List diagnoseList);
/**
* @Description:根据居民ID获取末次高危
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseInfoServiceImpl.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseInfoServiceImpl.java
index 5e9bc87..0e723af 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseInfoServiceImpl.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseInfoServiceImpl.java
@@ -11,7 +11,11 @@ import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import com.lyms.base.common.entity.conf.DiagnoseConf;
+import com.lyms.base.common.entity.conf.DiagnoseMaps;
import com.lyms.base.common.entity.conf.HighriskConf;
+import com.lyms.base.common.entity.conf.HighriskMaps;
+import com.lyms.base.common.service.conf.DiagnoseMapsService;
+import com.lyms.base.common.service.conf.HighriskMapsService;
import com.lyms.hospital.dao.diagnose.DiagnoseInfoMapper;
import com.lyms.hospital.entity.assist.DiagnoseAssit;
import com.lyms.hospital.entity.diagnose.DiagnoseInfo;
@@ -42,6 +46,10 @@ public class DiagnoseInfoServiceImpl extends ServiceImpl historyList,
- List taiList) {
+ List taiList, List highriskList, List diagnoseList) {
/*
* 基础验证
*/
- if (info == null || assist == null || historyList == null || taiList == null) {
+ if (info == null || assist == null || historyList == null ||
+ taiList == null || highriskList == null || diagnoseList == null) {
return "参数缺失";
}
-
+ return this.saveExam(info, assist, historyList, taiList, highriskList, diagnoseList,DiagnoseInfo.TYPE_FIRST);
+ }
+
+ @Override
+ @Transactional
+ public String saveLaterExam(DiagnoseInfo info, List taiList,List highriskList,List diagnoseList) {
/*
- * (1)保存产检基本信息 (2)保存辅助检查信息 (3)批量保存病史信息(4)批量保存产检胎儿信息
- * (5)保存诊断信息 TODO
+ * 基础验证
*/
- if (StringUtils.isEmpty(info.getId())) {// 新增
- info.setId(StrUtils.uuid());
- info.setType(DiagnoseInfo.TYPE_FIRST);// 诊断类型,2为初诊,3为复诊
- this.insert(info);// 新增产检基本信息
- if (StringUtils.isEmpty(assist.getId())) {
- assist.setId(StrUtils.uuid());
- }
- assist.setDiagnoseId(info.getId());
- assist.setDiagnoseType(DiagnoseAssit.DIAGNOSE_TYPE_BIRTH);// 诊断类型:1婚前检查,2产检,3儿保检查
- diagnoseAssitService.insert(assist);// 新增产检辅助检查
- } else {// 修改
- this.updateById(info);
- diagnoseAssitService.updateById(assist);
+ if (info == null || taiList == null || highriskList== null || diagnoseList==null) {
+ return "参数缺失";
}
- //批量保存病史信息
- historyMapsService.deleteAndInsert(info.getId(), HistoryMaps.TARGET_TYPE_EXAM, historyList);
- //批量保存产检胎儿信息
- diagnoseTaiService.deleteAndInsert(info.getId(), taiList);
- return "success";
+ return this.saveExam(info, null, null, taiList, highriskList, diagnoseList,DiagnoseInfo.TYPE_SECOND);
}
- @Override
- public String saveLaterExam(DiagnoseInfo info, List taiList) {
+ /**
+ * @Description:保存产检(初诊、复诊通用)
+ * @param info
+ * @param taiList
+ * @return
+ * 创建人:xujiahong
+ * 创建时间:2017年5月11日
+ * 修改人:
+ * 修改时间:
+ */
+ @Transactional
+ private String saveExam(DiagnoseInfo info, DiagnoseAssit assist, List historyList,
+ List taiList, List highriskList, List diagnoseList, Integer diagnoseType) {
/*
- * 基础验证
+ * 基础验证(复诊不包括辅助检查和病史)
*/
- if (info == null || taiList == null) {
+ if (info == null || taiList == null || highriskList == null || diagnoseList == null || diagnoseType == null) {
return "参数缺失";
}
-
/*
- * (1)保存产检基本信息 (2)批量保存产检胎儿信息
- * (3)保存诊断信息 TODO
+ * (1)保存产检基本信息 (2)保存辅助检查信息 (3)病史列表(4)胎儿列表(5) 高危列表 (6)诊断列表
*/
if (StringUtils.isEmpty(info.getId())) {// 新增
info.setId(StrUtils.uuid());
- info.setType(DiagnoseInfo.TYPE_SECOND);// 诊断类型,2为初诊,3为复诊
+ info.setType(diagnoseType);// 诊断类型,2为初诊,3为复诊
this.insert(info);// 新增产检基本信息
+ if(assist!=null){
+ if (StringUtils.isEmpty(assist.getId())) {
+ assist.setId(StrUtils.uuid());
+ }
+ assist.setDiagnoseId(info.getId());
+ assist.setDiagnoseType(DiagnoseAssit.DIAGNOSE_TYPE_BIRTH);// 诊断类型:1婚前检查,2产检,3儿保检查
+ diagnoseAssitService.insert(assist);// 新增产检辅助检查
+ }
} else {// 修改
this.updateById(info);
+ if(assist!=null){
+ diagnoseAssitService.updateById(assist);
+ }
+ }
+ //批量保存病史信息
+ if(historyList!=null && !historyList.isEmpty()){
+ historyMapsService.deleteAndInsert(info.getId(), HistoryMaps.TARGET_TYPE_EXAM, historyList);
}
//批量保存产检胎儿信息
- diagnoseTaiService.deleteAndInsert(info.getId(), taiList);
+ if(taiList!=null && !taiList.isEmpty()){
+ diagnoseTaiService.deleteAndInsert(info.getId(), taiList);
+ }
+ //保存高危列表
+ if(highriskList!=null && !highriskList.isEmpty()){
+ highriskMapsService.deleteAndInsert(info.getId(), highriskList);
+ }
+ //保存诊断列表
+ if(diagnoseList!=null && !diagnoseList.isEmpty()){
+ diagnoseMapsService.deleteAndInsert(info.getId(), diagnoseList);
+ }
return "success";
}
-
@Override
public List getLastHighrisk(Serializable personId) {
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseTaiServiceImpl.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseTaiServiceImpl.java
index 5e1ae65..c3b3189 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseTaiServiceImpl.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/diagnose/impl/DiagnoseTaiServiceImpl.java
@@ -6,6 +6,7 @@ import java.util.List;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
@@ -32,6 +33,7 @@ public class DiagnoseTaiServiceImpl extends ServiceImpl list) {
if (StringUtils.isEmpty(examId) || CollectionUtils.isEmpty(list)) {
return;
@@ -45,6 +47,7 @@ public class DiagnoseTaiServiceImpl extends ServiceImpl
*
* 前端页面展示的病史信息
+ * 表单使用的病史信息
*
* @author fangcheng
* @since 2017-03-28
@@ -60,5 +61,17 @@ public interface HistoryMapsService extends BaseService {
* 修改时间:
*/
public Map showHistory(String targetId,Integer targetType);
+
+ /**
+ * @Description:表单使用的病史信息
+ * @param targetId
+ * @param targetType
+ * @return
+ * 创建人:xujiahong
+ * 创建时间:2017年5月10日
+ * 修改人:
+ * 修改时间:
+ */
+ public Map formHistory(String targetId,Integer targetType);
}
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/history/impl/HistoryMapsServiceImpl.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/history/impl/HistoryMapsServiceImpl.java
index 6abc01d..6c95e5b 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/history/impl/HistoryMapsServiceImpl.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/history/impl/HistoryMapsServiceImpl.java
@@ -1,6 +1,7 @@
package com.lyms.hospital.service.history.impl;
import java.io.Serializable;
+import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
@@ -28,7 +29,7 @@ import com.lyms.util.StrUtils;
/**
*
- * 病史信息记录表 服务实现类
+ * 病史信息记录表 服务实现类
*
*
* @author fangcheng
@@ -36,58 +37,58 @@ import com.lyms.util.StrUtils;
*/
@Service
public class HistoryMapsServiceImpl extends ServiceImpl implements HistoryMapsService {
-
+
@Autowired
private DiagnoseInfoService infoService;
@Autowired
private WomanRecordService womanRecordService;
@Autowired
private HistorySourceService historySourceService;
-
- public Integer deleteLogicById(Serializable id){
- return baseMapper.deleteLogicById(id);
+
+ public Integer deleteLogicById(Serializable id) {
+ return baseMapper.deleteLogicById(id);
}
- @Override
- @Transactional
- public void deleteAndInsert(String targetId,Integer targetType,List list) {
- //validate
- if(StringUtils.isEmpty(targetId) || targetType==null || CollectionUtils.isEmpty(list)){
- return;
- }
- String womanPersonId = "";
- if(targetType == HistoryMaps.TARGET_TYPE_EXAM){//孕妇产检
- DiagnoseInfo info = infoService.selectById(targetId);
- if(info!=null){
- womanPersonId = info.getPersonId();
- }else{
- return;
- }
- }else if(targetType == HistoryMaps.TARGET_TYPE_WOMAN_RECORD){//妇女建档
- WomanRecord record = womanRecordService.selectById(targetId);
- if(record!=null){
- womanPersonId = record.getPersonId();
- }else{
- return;
- }
- }else{
- return;
- }
- if("".equals(womanPersonId)){
- return;
- }
- //delete
- delete(new EntityWrapper().where("TARGET_ID={0}", targetId).and("TARGET_TYPE={0}", targetType));
- //insert
- for(int i=0;i list) {
+ // validate
+ if (StringUtils.isEmpty(targetId) || targetType == null || CollectionUtils.isEmpty(list)) {
+ return;
+ }
+ String womanPersonId = "";
+ if (targetType == HistoryMaps.TARGET_TYPE_EXAM) {// 孕妇产检
+ DiagnoseInfo info = infoService.selectById(targetId);
+ if (info != null) {
+ womanPersonId = info.getPersonId();
+ } else {
+ return;
+ }
+ } else if (targetType == HistoryMaps.TARGET_TYPE_WOMAN_RECORD) {// 妇女建档
+ WomanRecord record = womanRecordService.selectById(targetId);
+ if (record != null) {
+ womanPersonId = record.getPersonId();
+ } else {
+ return;
+ }
+ } else {
+ return;
+ }
+ if ("".equals(womanPersonId)) {
+ return;
+ }
+ // delete
+ delete(new EntityWrapper().where("TARGET_ID={0}", targetId).and("TARGET_TYPE={0}", targetType));
+ // insert
+ for (int i = 0; i < list.size(); i++) {
+ HistoryMaps hm = list.get(i);
+ hm.setId(StrUtils.uuid());
+ hm.setWomanPersonId(womanPersonId);// 女性居民ID
+ hm.setTargetId(targetId);
+ hm.setTargetType(targetType);
+ }
+ insertBatch(list);
+ }
@Override
public List getListByTarget(String targetId, Integer targetType) {
@@ -100,47 +101,51 @@ public class HistoryMapsServiceImpl extends ServiceImpl showHistory(String targetId, Integer targetType) {
List sourceList = historySourceService.selectStructureByType();
List mapsList = this.getListByTarget(targetId, targetType);
- if(sourceList==null || sourceList.isEmpty() || mapsList == null || mapsList.isEmpty()
- ){
+ if (sourceList == null || sourceList.isEmpty() || mapsList == null || mapsList.isEmpty()) {
return null;
}
- Set mapsIdSet = new HashSet<>();
- for(HistoryMaps m : mapsList){//实际病史信息
- mapsIdSet.add(m.getId());
+ Set sourceIdSet = new HashSet<>();
+ for (HistoryMaps m : mapsList) {// 实际病史信息
+ sourceIdSet.add(m.getSouceId());
}
- //各种病史
- Map txtMap = new HashMap<>();
- //病史配置信息
- for(HistorySource s1 : sourceList){//1级
+ // 各种病史
+ Map txtMap = new HashMap<>();
+ // 病史配置信息
+ for (HistorySource s1 : sourceList) {// 1级
StringBuffer sb = new StringBuffer();
- List children2 = s1.getChildren();//2级
- if(children2!=null && !children2.isEmpty()){
- for(int i=0;i children2 = s1.getChildren();// 2级
+ if (children2 != null && !children2.isEmpty()) {
+ int firstCode2 = 0;// 2级节点拼接时处理"、"
+ for (int i = 0; i < children2.size(); i++) {// 遍历2级节点
HistorySource s2 = children2.get(i);
- if("JWS".equals(s2.getType())){//既往史是3级结构,特殊处理
- if(i!=0){
+ if ("JWS".equals(s2.getType())) {// 既往史是3级结构,特殊处理
+ if (firstCode2 != 0) {
sb.append("、");
}
sb.append(s2.getName()).append("[");
- List children3 = s2.getChildren();//3级
- if(children3!=null && !children3.isEmpty()){
- for(int j=0;j children3 = s2.getChildren();// 3级
+ if (children3 != null && !children3.isEmpty()) {
+ int firstCode3 = 0;// 3级节点拼接时处理"、"
+ for (int j = 0; j < children3.size(); j++) {
HistorySource s3 = children3.get(j);
- if(j!=0){
+ if (firstCode3 != 0) {
sb.append("、");
}
- if(mapsIdSet.contains(s3.getId())){//该病史项被选中
+ if (sourceIdSet.contains(s3.getId())) {// 该病史项被选中
sb.append(s3.getName());
+ firstCode3++;
}
}
}
sb.append("]");
- }else{//其他病史是2级结构
- if(mapsIdSet.contains(s2.getId())){//该病史项被选中
- if(i!=0){
+ firstCode2++;
+ } else {// 其他病史是2级结构
+ if (sourceIdSet.contains(s2.getId())) {// 该病史项被选中
+ if (firstCode2 != 0) {
sb.append("、");
}
sb.append(s2.getName());
+ firstCode2++;
}
}
}
@@ -148,15 +153,68 @@ public class HistoryMapsServiceImpl extends ServiceImpl data = new HashMap<>();
- data.put("pastHistory", txtMap.get("JWS"));//既往史
- data.put("familyHistory", txtMap.get("JZS"));//家族史
- data.put("personalHistory", txtMap.get("GRS"));//个人史
- data.put("ymjzHistory", txtMap.get("YMJZS"));//疫苗接种史
- data.put("ywgmHistory", txtMap.get("YWGMS"));//药物过敏史
- data.put("fksxHistory", txtMap.get("FKSSS"));//妇科手术史
- data.put("ysfyHistory", txtMap.get("YSFY"));//叶酸服用
- data.put("cestationInfo", txtMap.get("BCRSQK"));//本次妊娠情况
-// data.put("aa", txtMap.get("ZFJKQK"));//丈夫健康情况
+ data.put("pastHistory", txtMap.get("JWS"));// 既往史
+ data.put("familyHistory", txtMap.get("JZS"));// 家族史
+ data.put("personalHistory", txtMap.get("GRS"));// 个人史
+ data.put("ymjzHistory", txtMap.get("YMJZS"));// 疫苗接种史
+ data.put("ywgmHistory", txtMap.get("YWGMS"));// 药物过敏史
+ data.put("fksxHistory", txtMap.get("FKSSS"));// 妇科手术史
+ data.put("ysfyHistory", txtMap.get("YSFY"));// 叶酸服用
+ data.put("cestationInfo", txtMap.get("BCRSQK"));// 本次妊娠情况
+ // data.put("aa", txtMap.get("ZFJKQK"));//丈夫健康情况
return data;
}
+
+ @Override
+ public Map formHistory(String targetId, Integer targetType) {
+ List sourceList = historySourceService.selectStructureByType();
+ List mapsList = this.getListByTarget(targetId, targetType);
+ if (sourceList == null || sourceList.isEmpty() || mapsList == null || mapsList.isEmpty()) {
+ return null;
+ }
+ Map sourceIdMap = new HashMap<>();
+ for (HistoryMaps m : mapsList) {// 实际病史信息
+ sourceIdMap.put(m.getSouceId(),m);
+ }
+ Set sourceIdSet = sourceIdMap.keySet();
+ // 各种病史
+ Map historyInfo = new HashMap<>();
+ // 病史配置信息
+ for (HistorySource s1 : sourceList) {// 遍历1级
+ if(sourceIdSet.contains(s1.getId())){// 选中的病史信息
+ Map map1 = new HashMap<>();
+ map1.put("id", s1.getId());
+ map1.put("yesOrNo", "yes");
+ List children2 = s1.getChildren();// 2级节点列表
+ if(children2!=null && !children2.isEmpty()){
+ for(HistorySource s2 : children2){// 遍历二级
+ Map map2 = new HashMap<>();
+ if(sourceIdSet.contains(s2.getId())){// 选中的病史信息
+ map2.put("checkBox", true);
+ map2.put("proName", s2.getName());
+ HistoryMaps hm = sourceIdMap.get(s2.getId());
+ if(hm!=null && !StringUtils.isEmpty(hm.getOtherTxt())){
+ map2.put("otherText", hm.getOtherTxt());//附带 其他文本的 二级节点
+ }
+ if ("JWS".equals(s1.getType())) {// 既往史特殊处理
+ List children3 = s2.getChildren();// 3级节点列表
+ if(children3!=null && !children3.isEmpty()){
+ List selected = new ArrayList<>();
+ for(HistorySource s3 : children3){
+ if(sourceIdSet.contains(s3.getId())){
+ selected.add(s3.getId());
+ }
+ }
+ map2.put("selected", selected);
+ }
+ }
+ map1.put(s2.getId(), map2);
+ }
+ }
+ }
+ historyInfo.put(s1.getType(), map1);// 构造1级节点
+ }
+ }
+ return historyInfo;
+ }
}
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/WomanFetationRecordService.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/WomanFetationRecordService.java
index 80b18eb..f515e70 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/WomanFetationRecordService.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/WomanFetationRecordService.java
@@ -24,7 +24,7 @@ import com.lyms.web.service.BaseService;
public interface WomanFetationRecordService extends BaseService {
/**
- * @Description:依据cardNo或vcCardNo查询孕妇信息(顶部top)
+ * @Description:依据cardNo或vcCardNo查询孕妇信息(顶部top,公用)
* @param cardNo
* @param vcCardNo
* @return
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanFetationRecordServiceImpl.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanFetationRecordServiceImpl.java
index 73bed43..091df1c 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanFetationRecordServiceImpl.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanFetationRecordServiceImpl.java
@@ -1,6 +1,7 @@
package com.lyms.hospital.service.woman.impl;
import java.io.Serializable;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -15,6 +16,7 @@ import org.springframework.util.StringUtils;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
+import com.lyms.base.common.entity.conf.HighriskConf;
import com.lyms.exception.SystemException;
import com.lyms.hospital.dao.woman.WomanFetationRecordMapper;
import com.lyms.hospital.entity.woman.FetationStages;
@@ -22,6 +24,7 @@ import com.lyms.hospital.entity.woman.WomanFetationRecord;
import com.lyms.hospital.entity.woman.WomanHusband;
import com.lyms.hospital.enums.IfdelEnum;
import com.lyms.hospital.enums.StatusEnum;
+import com.lyms.hospital.service.diagnose.DiagnoseInfoService;
import com.lyms.hospital.service.woman.WomanFetationRecordService;
import com.lyms.hospital.service.woman.WomanHusbandService;
import com.lyms.hospital.service.woman.WomanPersonService;
@@ -48,6 +51,8 @@ public class WomanFetationRecordServiceImpl extends ServiceImpl selectTopFetationInfo(String cardNo, String vcCardNo, String orgId) {
@@ -302,22 +308,38 @@ public class WomanFetationRecordServiceImpl extends ServiceImpl> riskFactor = new ArrayList<>();
+ // 高危因素列表
+ BigDecimal riskScore = new BigDecimal(0);
+ List riskFactor = new ArrayList();
+// List highriskConfList = diagnoseInfoService.getLastHighrisk(dbFetationRecord.getWomanPersonId());
+// if(highriskConfList!=null && !highriskConfList.isEmpty()){
+// for(HighriskConf hc : highriskConfList){
+// Map map = new HashMap<>();
+// map.put("id", hc.getId());
+// map.put("name", hc.getName());
+// map.put("color", hc.getColortext());
+// map.put("code", hc.getColorcode());
+// riskFactor.add(map);
+// if(hc.getGrade()!=null){
+// BigDecimal big = new BigDecimal(hc.getGrade());
+// riskScore = riskScore.add(big);
+// }
+// }
+// }
dataMap.put("riskFactor", riskFactor);//高危因素列表
+ dataMap.put("riskScore", riskScore.toString());// 高危评分
dataMap.put("now", DateUtil.getyyyy_MM_dd(new Date()));
dataMap.put("dbFetationRecord", dbFetationRecord);//调用者可以直接访问详情对象,之后可以remove掉,不传递给前端显示
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/controller/childbirth/ChildbirthController.java b/parent/hospital.web/src/main/java/com/lyms/hospital/controller/childbirth/ChildbirthController.java
index 2a376d4..ccf3446 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/controller/childbirth/ChildbirthController.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/controller/childbirth/ChildbirthController.java
@@ -46,7 +46,7 @@ import com.lyms.web.controller.BaseController;
* 保存分娩记录
* []依据cardNo或vcCardNo查询孕妇分娩记录
*
- * @author xujiahong
+ * @author xujiahong
* @since 2017-03-31
*/
@Controller
@@ -96,7 +96,7 @@ public class ChildbirthController extends BaseController {
data.put("getFmType", FmTypeEnums.getList());
// getDeathCauseEnums 死亡原因
data.put("getDeathCauseEnums", DeathCauseEnums.getList());
- // getCosEnums
+ // getCosEnums 产科并发症
data.put("getCosEnums", CosEnums.getList());
// getCfType 产妇情况
data.put("getCfType", CfEnums.getList());
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/controller/woman/WomanExamController.java b/parent/hospital.web/src/main/java/com/lyms/hospital/controller/woman/WomanExamController.java
index e12fba2..c740e56 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/controller/woman/WomanExamController.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/controller/woman/WomanExamController.java
@@ -1,5 +1,6 @@
package com.lyms.hospital.controller.woman;
+import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashMap;
@@ -16,8 +17,12 @@ import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
+import com.lyms.base.common.entity.conf.DiagnoseMaps;
+import com.lyms.base.common.entity.conf.HighriskMaps;
import com.lyms.base.common.entity.organ.Organizations;
import com.lyms.base.common.entity.user.Users;
+import com.lyms.base.common.service.conf.DiagnoseMapsService;
+import com.lyms.base.common.service.conf.HighriskMapsService;
import com.lyms.base.common.service.organ.OrganizationsService;
import com.lyms.base.common.service.user.UsersService;
import com.lyms.hospital.entity.assist.DiagnoseAssit;
@@ -49,7 +54,7 @@ import com.lyms.web.controller.BaseController;
* 孕妇产检 前端控制器
*
* [--]依据cardNo或vcCardNo查询孕妇产检记录
- * [--]保存初诊数据
+ * []保存初诊数据
* [--]保存复诊数据
* [--]查询某条记录的详细信息,用于表单填写
* [--]产检获取字典数据
@@ -76,6 +81,10 @@ public class WomanExamController extends BaseController {
private UsersService usersService;
@Autowired
private OrganizationsService orgService;
+ @Autowired
+ private HighriskMapsService highriskMapsService;
+ @Autowired
+ private DiagnoseMapsService diagnoseMapsService;
/**
* @Description:初诊查看页面数据
@@ -87,11 +96,12 @@ public class WomanExamController extends BaseController {
* 修改人:
* 修改时间:
*/
+ @SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/findAntExChuData", method = RequestMethod.GET)
@ResponseBody
public AjaxResult selectFirstExamData(String id) {
/*
- * 产检基础信息、产检辅助信息、病史列表、胎儿列表、诊断列表 TODO
+ * 产检基础信息、产检辅助信息、病史列表、胎儿列表、高危列表、诊断列表
*/
DiagnoseInfo info = infoService.selectById(id);// 产检基础信息
if (info == null) {
@@ -106,6 +116,57 @@ public class WomanExamController extends BaseController {
ExamAddRequest result = wrapper.getExamAddRequest();
Map map = XjhMapUtil.transBean2Map(result);// 返回数据
+ /*
+ * 高危和诊断
+ */
+ BigDecimal highriskSocre = new BigDecimal("0");
+ List highriskMapsList = highriskMapsService.selectByDiagnoseId(info.getId());
+ List highrisk = new ArrayList();
+ if (highriskMapsList != null && !highriskMapsList.isEmpty()) {
+ for (HighriskMaps hm : highriskMapsList) {
+ Map m = new HashMap<>();
+ m.put("id", hm.getConfId());//真正的高危配置ID
+ m.put("name", hm.getName());
+ m.put("color", hm.getColortext());
+ m.put("code", hm.getColorcode());
+ highrisk.add(m);
+ if (hm.getGrade() != null) {
+ BigDecimal big = new BigDecimal(hm.getGrade());
+ highriskSocre = highriskSocre.add(big);
+ }
+ }
+ }
+ // 诊断拼接文本供前端显示
+ List diagnoseMapsList = diagnoseMapsService.selectByDiagnoseId(info.getId());
+ String diagnosis = "";
+ if (diagnoseMapsList != null && !diagnoseMapsList.isEmpty()) {
+ for (int i = 0; i < diagnoseMapsList.size(); i++) {
+ DiagnoseMaps dm = diagnoseMapsList.get(i);
+ if (dm != null && dm.getName() != null) {
+ if (i != 0) {
+ diagnosis += "、";
+ }
+ diagnosis += dm.getName();
+ }
+ }
+ }
+ map.put("highrisk", highrisk);
+ map.put("diagnosis", diagnosis);
+ // 自定义高危项(页面中是同一列表)
+ if (info.getHasHighrisk() == 1) {
+ Map m = new HashMap<>();
+ m.put("name", info.getCusHrName());
+ m.put("color", info.getCusHrColortext());
+ m.put("code", info.getCusHrColorcode());
+ highrisk.add(m);
+ }
+ if (info.getCusHrGrade() != null) {
+ BigDecimal big = new BigDecimal(info.getCusHrGrade());
+ highriskSocre = highriskSocre.add(big);
+ }
+ // highriskSocre 高危评分
+ map.put("highriskSocre", highriskSocre.doubleValue());
+
// 孕妇基本信息
map.put("id", womanFetation.getId());
map.put("username", womanFetation.getBaseWomanName());
@@ -121,6 +182,9 @@ public class WomanExamController extends BaseController {
// 产检孕周
map.put("cDueWeek", HospitalUtil.getPregnantWeek(womanFetation.getHospitalCorrectLastMenstruation(),
info.getDiagnoseTime()));
+
+ // 产检日期
+ map.put("checkDate", DateUtil.getyyyy_MM_dd(info.getDiagnoseTime()));
// 产检医生
Users users = usersService.selectById(info.getDoctorId());
if (users != null) {
@@ -170,25 +234,47 @@ public class WomanExamController extends BaseController {
/*
* 辅助检查
*/
- map.put("xhdb", UnitConstants.splice(result.getXhdb(), UnitConstants.GL));
- map.put("bxbjs", UnitConstants.splice(result.getBxbjs(), UnitConstants.TEN_LKG));
- map.put("platelet", UnitConstants.splice(result.getPlatelet(), UnitConstants.TEN_LKG));
+ if (assist != null) {
+ map.put("xhdb", UnitConstants.splice(result.getXhdb(), UnitConstants.GL));
+ map.put("bxbjs", UnitConstants.splice(result.getBxbjs(), UnitConstants.TEN_LKG));
+ map.put("platelet", UnitConstants.splice(result.getPlatelet(), UnitConstants.TEN_LKG));
- map.put("bloodSugar", UnitConstants.splice(result.getBloodSugar(), UnitConstants.MMOLL));
- map.put("xqgbzam", UnitConstants.splice(result.getXqgbzam(), UnitConstants.UL));
- map.put("xqgczam", UnitConstants.splice(result.getXqgczam(), UnitConstants.UL));
- map.put("albumin", UnitConstants.splice(result.getAlbumin(), UnitConstants.GL));
- map.put("totalBilirubin", UnitConstants.splice(result.getTotalBilirubin(), UnitConstants.UMOLL));
- map.put("jhBilirubin", UnitConstants.splice(result.getJhBilirubin(), UnitConstants.UMOLL));
+ map.put("bloodSugar", UnitConstants.splice(result.getBloodSugar(), UnitConstants.MMOLL));
+ map.put("xqgbzam", UnitConstants.splice(result.getXqgbzam(), UnitConstants.UL));
+ map.put("xqgczam", UnitConstants.splice(result.getXqgczam(), UnitConstants.UL));
+ map.put("albumin", UnitConstants.splice(result.getAlbumin(), UnitConstants.GL));
+ map.put("totalBilirubin", UnitConstants.splice(result.getTotalBilirubin(), UnitConstants.UMOLL));
+ map.put("jhBilirubin", UnitConstants.splice(result.getJhBilirubin(), UnitConstants.UMOLL));
- map.put("xqjq", UnitConstants.splice(result.getXqjq(), UnitConstants.UL));
- map.put("xnsd", UnitConstants.splice(result.getXnsd(), UnitConstants.UL));
+ map.put("xqjq", UnitConstants.splice(result.getXqjq(), UnitConstants.UL));
+ map.put("xnsd", UnitConstants.splice(result.getXnsd(), UnitConstants.UL));
+ /*
+ * 阴道
+ */
+ String ydfmw = "";
+ if (assist.getVaginaDc() == 1) {
+ ydfmw += "滴虫、";
+ }
+ if (assist.getVaginaJsjmj() == 1) {
+ ydfmw += "假丝酵母菌、";
+ }
+ if (assist.getVaginaOtherTxt() != null) {
+ ydfmw += assist.getVaginaOtherTxt();
+ }
+ if ("".equals(ydfmw)) {
+ ydfmw = "未见异常";
+ }
+ map.put("ydfmw", ydfmw);
+ map.put("ydqjd", assist.getVaginaYdqjd());
+ }
/*
* 病史信息
*/
Map showHistoryMap = historyMapsService.showHistory(info.getId(), HistoryMaps.TARGET_TYPE_EXAM);// 关联目标类型:1产检、2妇女建档
- map.putAll(showHistoryMap);
+ if (showHistoryMap != null) {
+ map.putAll(showHistoryMap);
+ }
return AjaxResult.returnSuccess(map);
}
@@ -211,8 +297,10 @@ public class WomanExamController extends BaseController {
ExamAddRequestWrapper wrapper = new ExamAddRequestWrapper(request);
DiagnoseInfo info = wrapper.getDiagnoseInfo();
List taiList = wrapper.getDiagnoseTaiList(); // 胎儿信息
- // 保存初诊信息
- String result = infoService.saveLaterExam(info, taiList);
+ List highriskList = wrapper.getHighriskList();// 高危列表
+ List diagnoseList = wrapper.getDiagnoseList();// 诊断列表
+ // 保存复诊信息
+ String result = infoService.saveLaterExam(info, taiList, highriskList, diagnoseList);
return "success".equals(result) ? AjaxResult.returnSuccess() : AjaxResult.returnFail(result);
}
@@ -386,11 +474,12 @@ public class WomanExamController extends BaseController {
* 修改人:
* 修改时间:
*/
+ @SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/antex", method = RequestMethod.GET)
@ResponseBody
public AjaxResult selectExamForm(String id, Integer type) {
/*
- * 产检基础信息、产检辅助信息、病史列表、胎儿列表、诊断列表 TODO
+ * 产检基础信息、产检辅助信息、病史列表、胎儿列表
*/
DiagnoseInfo info = infoService.selectById(id);// 产检基础信息
if (info == null) {
@@ -401,7 +490,89 @@ public class WomanExamController extends BaseController {
HistoryMaps.TARGET_TYPE_EXAM);// 关联目标类型:1产检、2妇女建档
List diagnoseTaiList = diagnoseTaiService.getListByExamId(info.getId());
ExamAddRequestWrapper wrapper = new ExamAddRequestWrapper(info, assist, historyMapsList, diagnoseTaiList);
- return AjaxResult.returnSuccess(wrapper.getExamAddRequest());
+ ExamAddRequest examAddRequest = wrapper.getExamAddRequest();
+
+ /*
+ * 表单特殊处理病史信息
+ */
+ Map historyInfo = historyMapsService.formHistory(info.getId(), HistoryMaps.TARGET_TYPE_EXAM);
+ examAddRequest.setHistoryInfo(historyInfo);
+
+ if(assist!=null){
+ // 处理辅助检查,"yin","ruoyang","yang"字段
+ Map keyMap = new HashMap<>();
+ keyMap.put(DiagnoseAssit.YIN, "yin");
+ keyMap.put(DiagnoseAssit.YANG, "yang");
+ keyMap.put(DiagnoseAssit.RUOYANG, "ruoyang");
+ keyMap.put(null, null);
+ examAddRequest.setBg(keyMap.get(assist.getLiverBg()));// 丙肝
+ examAddRequest.setRh(keyMap.get(assist.getBloodtypeRh()));// RH血型
+ examAddRequest.setYgbmky(keyMap.get(assist.getHepatitisbYgbmky()));// 乙肝表面抗原
+ examAddRequest.setYgbmkt(keyMap.get(assist.getHepatitisbYgbmkt()));// 乙肝表面抗体
+ examAddRequest.setYgeky(keyMap.get(assist.getHepatitisbYgeky()));// 乙肝e抗原
+ examAddRequest.setYgekt(keyMap.get(assist.getHepatitisbYgekt()));// 乙肝e抗体
+ examAddRequest.setYghxkt(keyMap.get(assist.getHepatitisbYghxkt()));// 乙肝核心抗体
+ examAddRequest.setHivkt(keyMap.get(assist.getSyphilisHiv()));// HIV抗体检测
+ examAddRequest.setSyjg(keyMap.get(assist.getSyphilisSyjg()));// 梅毒血清实验结果
+ }
+
+ // 胎儿信息(表单)
+ List> placentas = new ArrayList<>();
+ if (diagnoseTaiList != null && !diagnoseTaiList.isEmpty()) {
+ for (DiagnoseTai tai : diagnoseTaiList) {
+ Map taiMap = new HashMap<>();
+ taiMap.put("heartRate", tai.getHeartRate() == null ? null : Integer.parseInt(tai.getHeartRate()));
+ taiMap.put("fetalPosition", tai.getPosition());
+ taiMap.put("fetalPresentation", tai.getFirstExpose());
+ taiMap.put("join", tai.getIsLink() == null ? null : tai.getIsLink().toString());
+ placentas.add(taiMap);
+ }
+ }
+ examAddRequest.setPlacentas(placentas);
+
+ /*
+ * 高危和诊断
+ */
+ List highriskMapsList = highriskMapsService.selectByDiagnoseId(info.getId());
+ List highrisk = new ArrayList();
+ if (highriskMapsList != null && !highriskMapsList.isEmpty()) {
+ for (HighriskMaps hm : highriskMapsList) {
+ Map map = new HashMap<>();
+ map.put("id", hm.getConfId());//真正的高危配置ID
+ map.put("name", hm.getName());
+ map.put("color", hm.getColortext());
+ map.put("code", hm.getColorcode());
+ highrisk.add(map);
+ }
+ }
+ List diagnoseMapsList = diagnoseMapsService.selectByDiagnoseId(info.getId());
+ List diagnosis = new ArrayList();
+ if (diagnoseMapsList != null && !diagnoseMapsList.isEmpty()) {
+ for (DiagnoseMaps dm : diagnoseMapsList) {
+ Map map = new HashMap<>();
+ map.put("id", dm.getId());
+ map.put("name", dm.getName());
+ map.put("color", dm.getGroupname());
+ map.put("code", dm.getSimpleCode());
+ diagnosis.add(map);
+ }
+ }
+ examAddRequest.setHighrisk(highrisk);
+ examAddRequest.setDiagnosis(diagnosis);
+
+ /*
+ * 自定义高危项(表单中同保存时的结构)
+ */
+ Map otherHighRisk = new HashMap<>();
+ Map fyyse = new HashMap<>();
+ fyyse.put("COLORCODE", info.getCusHrColorcode());
+ fyyse.put("COLORTEXT", info.getCusHrColortext());
+ otherHighRisk.put("fyyse", fyyse);
+ otherHighRisk.put("fxysu", info.getCusHrName());
+ otherHighRisk.put("fxpf", info.getCusHrGrade());
+ examAddRequest.setOtherHighRisk(otherHighRisk);
+
+ return AjaxResult.returnSuccess(examAddRequest);
}
/**
@@ -431,16 +602,23 @@ public class WomanExamController extends BaseController {
}
}
/*
- * (1)保存产检基本信息 (2)保存辅助检查信息 (3)批量保存病史信息(4)多个胎儿信息(5) 多个诊断信息 TODO
+ * (1)保存产检基本信息 (2)保存辅助检查信息 (3)病史列表(4)胎儿列表(5) 高危列表 (6)诊断列表
*/
// 对象转换
ExamAddRequestWrapper wrapper = new ExamAddRequestWrapper(request);
DiagnoseInfo info = wrapper.getDiagnoseInfo();
+
+ Users users = ShiroWebUtils.getCurrentUser();
+ info.setOrgId(users.getOrgId());// 医院ID
+
DiagnoseAssit assist = wrapper.getDiagnoseAssit();
List historyList = wrapper.getHistoryMapsList();// 病史信息
List taiList = wrapper.getDiagnoseTaiList(); // 胎儿信息
+ List highriskList = wrapper.getHighriskList();// 高危列表
+ List diagnoseList = wrapper.getDiagnoseList();// 诊断列表
+
// 保存初诊信息
- String result = infoService.saveFirstExam(info, assist, historyList, taiList);
+ String result = infoService.saveFirstExam(info, assist, historyList, taiList, highriskList, diagnoseList);
return "success".equals(result) ? AjaxResult.returnSuccess() : AjaxResult.returnFail(result);
}
@@ -458,7 +636,7 @@ public class WomanExamController extends BaseController {
@ResponseBody
public AjaxResult selectExamHistory(String cardNo, String vcCardNo) {
/*
- * (1)孕妇档案信息(通过证件号或就诊卡号查询)-根据产检券查询 TODO (2)高危因素列表 TODO (3)产检记录列表 TODO
+ * (1)孕妇档案信息(通过证件号或就诊卡号查询)-根据产检券查询 TODO (2)高危因素列表 (3)产检记录列表
*
*/
// 基本验证
@@ -478,7 +656,7 @@ public class WomanExamController extends BaseController {
}
WomanFetationRecord dbFetationRecord = (WomanFetationRecord) dataMap.get("dbFetationRecord");
- // 产检记录列表 TODO (此处需要查询当前产程中本院和外院的所有产检记录(包括分布建档的),之后对接方承)
+ // 产检记录列表 (此处需要查询当前产程中本院和外院的所有产检记录(讨论说不考虑分布建档的))
List> data = new ArrayList<>(); // data 系前端指定名称
List diagnoseInfoList = infoService.getInfoListByWomanId(dbFetationRecord.getId());
if (!CollectionUtils.isEmpty(diagnoseInfoList)) {
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/request/OldNewWrapper.java b/parent/hospital.web/src/main/java/com/lyms/hospital/request/OldNewWrapper.java
index 72f27b7..73a7183 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/request/OldNewWrapper.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/request/OldNewWrapper.java
@@ -2,10 +2,10 @@ package com.lyms.hospital.request;
public class OldNewWrapper {
- protected String obj2Str(Object obj){
+ public static String obj2Str(Object obj){
return obj==null?null:obj.toString();
}
- protected Integer obj2Int(Object obj){
+ public static Integer obj2Int(Object obj){
return obj==null?null:Integer.parseInt(obj.toString());
}
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequest.java b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequest.java
index 57807a8..e457626 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequest.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequest.java
@@ -25,7 +25,7 @@ public class ChildbirthAddRequest{
//胎盘
private String placenta;
//胎盘信息
- private List placentas;
+ private List> placentas;
//胎盘及新生儿
private List> extPlacentas;
//分娩方式
@@ -258,11 +258,11 @@ public class ChildbirthAddRequest{
this.placenta = placenta;
}
- public List getPlacentas() {
+ public List> getPlacentas() {
return placentas;
}
- public void setPlacentas(List placentas) {
+ public void setPlacentas(List> placentas) {
this.placentas = placentas;
}
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequestWrapper.java b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequestWrapper.java
index 03c9d70..ffdacaf 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequestWrapper.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ChildbirthAddRequestWrapper.java
@@ -1,5 +1,7 @@
package com.lyms.hospital.request.exam;
+import java.util.ArrayList;
+import java.util.HashMap;
import java.util.List;
import java.util.Map;
@@ -15,12 +17,12 @@ import com.lyms.util.DateUtil;
public class ChildbirthAddRequestWrapper extends OldNewWrapper {
- private ChildbirthAddRequest request;
- private ChildbirthInfoVo vo;
- private ChildbirthInfo info;
- private List newbornList;
- private List taipanList;
- private List taiList;
+ private ChildbirthAddRequest request = new ChildbirthAddRequest();
+ private ChildbirthInfoVo vo = new ChildbirthInfoVo();
+ private ChildbirthInfo info = new ChildbirthInfo();
+ private List newbornList = new ArrayList<>();
+ private List taipanList = new ArrayList<>();
+ private List taiList = new ArrayList<>();
public ChildbirthAddRequestWrapper() {
}
@@ -28,92 +30,113 @@ public class ChildbirthAddRequestWrapper extends OldNewWrapper {
@SuppressWarnings("unchecked")
public ChildbirthAddRequestWrapper(ChildbirthAddRequest req) {
this.request = req;
- if(req!=null){
- //快速映射普通字段
- //{ 分娩ID、居民ID、孕妇ID、分娩孕周、胎儿数、胎盘数 }
- //{ (剖宫产)手术原因、 会阴撕裂、缝线针数、产妇情况、造成死亡的原因 }
- //{ 呼吸、脉搏、产后1小时失血量、产后2小时失血量、产后24小时失血量、第三产程+产后2小时失血量 }
- //{ 其他失血原因文本、 分娩医院、接生医生}
- String[] req_map = {
- "id","pid","parentId","dueWeek","tireNumber","placenta",
- "operationCause","siLielevel","needleNum","maternalInfo","deathCause",
- "breath","pulse","oHloseBloodL","tHloseBloodL","rHloseBloodL","sHloseBloodL",
- "deathCauseText","fmHospital","deliverDoctor"
- };
- String[] info_map = {
- "id","personId","womanId","childbirthTimeText","fetusNum","placentaNum",
- "operationReason","perineumSplit","needleNum","womanSituation","otherDeathReasonText",
- "breath","pulse","loseBloodA","loseBloodB","loseBloodC","loseBloodD",
- "loseBloodOtherText","orgId","doctorId"
- };
- Map reqMap = XjhMapUtil.transBean2AliasMap(req, XjhMapUtil.getKeyMap(req_map, info_map));
- info = (ChildbirthInfo) XjhMapUtil.transMap2Bean(reqMap, new ChildbirthInfo());
- //特殊字段设置
- info.setChildbirthTime(DateUtil.parseYMD(req.getDueDate()));//分娩日期
- //分娩方式
- Map deliveryMode = (Map)req.getDeliveryMode();
- if(deliveryMode!=null && !deliveryMode.isEmpty()){
- if(FmTypeEnums.O1.getId().equals(deliveryMode.get("fmfs"))){//剖宫产
- info.setChildbirthType(Integer.parseInt(FmTypeEnums.O1.getId()));
- }else if(FmTypeEnums.O.getId().equals(deliveryMode.get("fmfs"))){//顺产
- if(deliveryMode.get("scfs")!=null){
- info.setChildbirthType(Integer.parseInt(deliveryMode.get("scfs")));
- }
- }
- }
- //产程
- Map prodprocess = (Map)req.getProdprocess();
- if(prodprocess!=null && !prodprocess.isEmpty()){
- Map one = (Map)prodprocess.get("one");
- Map two = (Map)prodprocess.get("two");
- Map three = (Map)prodprocess.get("three");
- info.setProcessFirst(this.getProcessStr(one));
- info.setProcessSecond(this.getProcessStr(two));
- info.setProcessThird(this.getProcessStr(three));
- }
- Map totalprocess = (Map)req.getTotalprocess();
- info.setProcessTotal(this.getProcessStr(totalprocess));
- //会阴情况:1完整,2切开
- String perinealCondition =req.getPerinealCondition();
- if("whole".equals(perinealCondition)){
- info.setPerineumSituation(ChildbirthInfo.PERINEUM_SITUATION_WHOLE);
- }else if("split".equals(perinealCondition)){
- info.setPerineumSituation(ChildbirthInfo.PERINEUM_SITUATION_SPLIT);
- }
- //产后血压
- Map chBp = (Map)req.getChBp();
- if(chBp!=null && !chBp.isEmpty()){
- info.setBloodShrink(this.obj2Int(chBp.get("ssy")));//收缩压
- info.setBloodDiastole(this.obj2Int(chBp.get("szy")));//舒张压
- }
- //产后两小时血压
- Map ch2Bp = (Map)req.getCh2Bp();
- if(ch2Bp!=null && !ch2Bp.isEmpty()){
- info.setBloodShrinkLater(this.obj2Int(ch2Bp.get("ssy")));//收缩压
- info.setBloodDiastoleLater(this.obj2Int(ch2Bp.get("szy")));//舒张压
- }
- //失血原因(枚举)
- Map loseBloodCause = (Map)req.getLoseBloodCause();
- if(loseBloodCause!=null && !loseBloodCause.isEmpty()){
- info.setLoseBloodReason(this.obj2Int(loseBloodCause.get("select")));
- info.setLoseBloodOtherText(this.obj2Str(loseBloodCause.get("other")));
- }
- //产科并发症
-
- //胎儿列表
- //胎盘娩出方式
- //新生儿
-
- }
+ if (req != null) {
+ // 快速映射普通字段
+ // { 分娩ID、居民ID、孕妇ID、分娩孕周、胎儿数、胎盘数 }
+ // { (剖宫产)手术原因、 会阴撕裂、缝线针数、产妇情况、造成死亡的原因 }
+ // { 呼吸、脉搏、产后1小时失血量、产后2小时失血量、产后24小时失血量、第三产程+产后2小时失血量 }
+ // { 其他失血原因文本、 分娩医院、接生医生}
+ String[] req_map = { "id", "pid", "parentId", "dueWeek", "tireNumber", "placenta", "operationCause",
+ "siLielevel", "needleNum", "maternalInfo", "deathCause", "breath", "pulse", "oHloseBloodL",
+ "tHloseBloodL", "rHloseBloodL", "sHloseBloodL", "deathCauseText", "fmHospital", "deliverDoctor" };
+ String[] info_map = { "id", "personId", "womanId", "childbirthTimeText", "fetusNum", "placentaNum",
+ "operationReason", "perineumSplit", "needleNum", "womanSituation", "otherDeathReasonText", "breath",
+ "pulse", "loseBloodA", "loseBloodB", "loseBloodC", "loseBloodD", "loseBloodOtherText", "orgId",
+ "doctorId" };
+ Map reqMap = XjhMapUtil.transBean2AliasMap(req, XjhMapUtil.getKeyMap(req_map, info_map));
+ info = (ChildbirthInfo) XjhMapUtil.transMap2Bean(reqMap, new ChildbirthInfo());
+ // 特殊字段设置
+ info.setChildbirthTime(DateUtil.parseYMD(req.getDueDate()));// 分娩日期
+ // 分娩方式
+ Map deliveryMode = (Map) req.getDeliveryMode();
+ if (deliveryMode != null && !deliveryMode.isEmpty()) {
+ if (FmTypeEnums.O1.getId().equals(deliveryMode.get("fmfs"))) {// 剖宫产
+ info.setChildbirthType(Integer.parseInt(FmTypeEnums.O1.getId()));
+ } else if (FmTypeEnums.O.getId().equals(deliveryMode.get("fmfs"))) {// 顺产
+ if (deliveryMode.get("scfs") != null) {
+ info.setChildbirthType(Integer.parseInt(deliveryMode.get("scfs")));
+ }
+ }
+ }
+ // 产程
+ Map prodprocess = (Map) req.getProdprocess();
+ if (prodprocess != null && !prodprocess.isEmpty()) {
+ Map one = (Map) prodprocess.get("one");
+ Map two = (Map) prodprocess.get("two");
+ Map three = (Map) prodprocess.get("three");
+ info.setProcessFirst(this.getProcessStr(one));
+ info.setProcessSecond(this.getProcessStr(two));
+ info.setProcessThird(this.getProcessStr(three));
+ }
+ Map totalprocess = (Map) req.getTotalprocess();
+ info.setProcessTotal(this.getProcessStr(totalprocess));
+ // 会阴情况:1完整,2切开
+ String perinealCondition = req.getPerinealCondition();
+ if ("whole".equals(perinealCondition)) {
+ info.setPerineumSituation(ChildbirthInfo.PERINEUM_SITUATION_WHOLE);
+ } else if ("split".equals(perinealCondition)) {
+ info.setPerineumSituation(ChildbirthInfo.PERINEUM_SITUATION_SPLIT);
+ }
+ // 产后血压
+ Map chBp = (Map) req.getChBp();
+ if (chBp != null && !chBp.isEmpty()) {
+ info.setBloodShrink(OldNewWrapper.obj2Int(chBp.get("ssy")));// 收缩压
+ info.setBloodDiastole(OldNewWrapper.obj2Int(chBp.get("szy")));// 舒张压
+ }
+ // 产后两小时血压
+ Map ch2Bp = (Map) req.getCh2Bp();
+ if (ch2Bp != null && !ch2Bp.isEmpty()) {
+ info.setBloodShrinkLater(OldNewWrapper.obj2Int(ch2Bp.get("ssy")));// 收缩压
+ info.setBloodDiastoleLater(OldNewWrapper.obj2Int(ch2Bp.get("szy")));// 舒张压
+ }
+ // 失血原因(枚举)
+ Map loseBloodCause = (Map) req.getLoseBloodCause();
+ if (loseBloodCause != null && !loseBloodCause.isEmpty()) {
+ info.setLoseBloodReason(OldNewWrapper.obj2Int(loseBloodCause.get("select")));
+ info.setLoseBloodOtherText(OldNewWrapper.obj2Str(loseBloodCause.get("other")));
+ }
+ // 产科并发症 TODO 需要前端调整结构
+ Map ocs = (Map) req.getOcs();
+
+ // 胎儿列表
+ List> placentas = req.getPlacentas();
+ if(placentas!=null && !placentas.isEmpty()){
+ for(Map map : placentas){
+ ChildbirthTai tai = new ChildbirthTai();
+ tai.setHeartRate(OldNewWrapper.obj2Int(map.get("heartRate")));
+ tai.setFirstExpose(OldNewWrapper.obj2Int(map.get("fetalPresentation")));
+ tai.setPosition(OldNewWrapper.obj2Int(map.get("fetalPosition")));
+ taiList.add(tai);
+ }
+ }
+ // 胎盘娩出方式
+ List> extPlacentas = req.getExtPlacentas();
+ if(extPlacentas!=null && !extPlacentas.isEmpty()){
+ for(Map placenta : extPlacentas){
+ ChildbirthTaipan taipan = new ChildbirthTaipan();
+ taipan.setPlacentaBirthType(OldNewWrapper.obj2Int(placenta.get("tpmcType")));
+ if("muMian".equals(placenta.get("mcType"))){
+ taipan.setBirthType(ChildbirthTaipan.BIRTH_TYPE_MUM);//母面
+ }else{
+ taipan.setBirthType(ChildbirthTaipan.BIRTH_TYPE_SON);//子面
+ }
+ Map tpSize = new HashMap<>();
+// aaaaaaaa TODO
+ }
+ }
+
+ // 新生儿
+
+ }//if (req != null)
}
-
- private String getProcessStr(Map map){
+
+ private String getProcessStr(Map map) {
String str = "";
- if(map!=null && !map.isEmpty()){
- str += map.get("h")==null?"":map.get("h").toString();
+ if (map != null && !map.isEmpty()) {
+ str += map.get("h") == null ? "" : map.get("h").toString();
str += "-";
- str += map.get("m")==null?"":map.get("m").toString();
+ str += map.get("m") == null ? "" : map.get("m").toString();
}
return str;
}
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequest.java b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequest.java
index 7ccd504..2e13839 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequest.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequest.java
@@ -118,7 +118,7 @@ public class ExamAddRequest {
private String gonggao;
// 腹围
private String fuwei;
- // 胎数
+ // 胎数(或是,上次产检的胎数,方便前端回显)
private String tireNumber1;
// 血压
private Map bp;
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequestWrapper.java b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequestWrapper.java
index b456900..adb4a4e 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequestWrapper.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/request/exam/ExamAddRequestWrapper.java
@@ -5,6 +5,8 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import com.lyms.base.common.entity.conf.DiagnoseMaps;
+import com.lyms.base.common.entity.conf.HighriskMaps;
import com.lyms.hospital.entity.assist.DiagnoseAssit;
import com.lyms.hospital.entity.diagnose.DiagnoseInfo;
import com.lyms.hospital.entity.diagnose.DiagnoseTai;
@@ -12,6 +14,7 @@ import com.lyms.hospital.entity.history.HistoryMaps;
import com.lyms.hospital.enums.business.FetalEnums;
import com.lyms.hospital.enums.business.FetalPositionEnums;
import com.lyms.hospital.enums.business.JoinEnums;
+import com.lyms.hospital.request.OldNewWrapper;
import com.lyms.hospital.response.keymap.DiagnoseAssistKeymap;
import com.lyms.hospital.response.keymap.WomanExamKeymap;
import com.lyms.hospital.util.UnitConstants;
@@ -39,76 +42,98 @@ public class ExamAddRequestWrapper {
* 胎儿列表信息
*/
private List diagnoseTaiList = new ArrayList<>();
-
- public ExamAddRequestWrapper(){}
+ /**
+ * 高危列表
+ */
+ private List highriskList = new ArrayList<>();
+ /**
+ * 诊断列表
+ */
+ private List diagnoseList = new ArrayList<>();
- public ExamAddRequestWrapper(DiagnoseInfo info,DiagnoseAssit assist,
- List historyMapsList,List diagnoseTaiList) {
- //List historySourceList
+ public ExamAddRequestWrapper() {
+ }
+
+ public ExamAddRequestWrapper(DiagnoseInfo info, DiagnoseAssit assist, List historyMapsList,
+ List diagnoseTaiList) {
this.diagnoseInfo = info;
+ this.diagnoseTaiList = diagnoseTaiList;
+ // 复诊时或为空
this.diagnoseAssit = assist;
this.historyMapsList = historyMapsList;
- this.diagnoseTaiList = diagnoseTaiList;
-
+
Map infoMap = XjhMapUtil.transBean2FormatAliasMap(info,
XjhMapUtil.getKeyMap(WomanExamKeymap.original, WomanExamKeymap.alias));
Map assistMap = XjhMapUtil.transBean2FormatAliasMap(assist,
- XjhMapUtil.getKeyMap(WomanExamKeymap.original, WomanExamKeymap.alias));
- infoMap.putAll(assistMap);
+ XjhMapUtil.getKeyMap(DiagnoseAssistKeymap.original, DiagnoseAssistKeymap.alias));
+ if (infoMap != null && assistMap != null) {
+ infoMap.putAll(assistMap);
+ }
examAddRequest = (ExamAddRequest) XjhMapUtil.transMap2Bean(infoMap, new ExamAddRequest());
examAddRequest.setParentId(info.getWomanId());// 孕妇档案ID
examAddRequest.setPid(info.getPersonId());// 女性居民
+ examAddRequest.setId(info.getId());// 产检ID
// 血压
Map bp = new HashMap<>();
bp.put("ssy", info.getBloodShrink());
bp.put("szy", info.getBloodDiastole());
examAddRequest.setBp(bp);
- // 处理辅助检查,"yin","ruoyang","yang"字段
- Map keyMap = new HashMap<>();
- keyMap.put(DiagnoseAssit.YIN,"-");
- keyMap.put(DiagnoseAssit.YANG,"+");
- keyMap.put(DiagnoseAssit.RUOYANG,"±");
- keyMap.put(null,null);
- examAddRequest.setBg(keyMap.get(assist.getLiverBg()));//丙肝
- examAddRequest.setRh(keyMap.get(assist.getBloodtypeRh()));//RH血型
- examAddRequest.setYgbmky(keyMap.get(assist.getHepatitisbYgbmky()));//乙肝表面抗原
- examAddRequest.setYgbmkt(keyMap.get(assist.getHepatitisbYgbmkt()));//乙肝表面抗体
- examAddRequest.setYgeky(keyMap.get(assist.getHepatitisbYgeky()));//乙肝e抗原
- examAddRequest.setYgekt(keyMap.get(assist.getHepatitisbYgekt()));//乙肝e抗体
- examAddRequest.setYghxkt(keyMap.get(assist.getHepatitisbYghxkt()));//乙肝核心抗体
- examAddRequest.setHivkt(keyMap.get(assist.getSyphilisHiv()));//HIV抗体检测
- examAddRequest.setSyjg(keyMap.get(assist.getSyphilisSyjg()));//梅毒血清实验结果
- // 阴道分泌物
- Map ydfmw = new HashMap<>();
- ydfmw.put("ydqjd", assist.getVaginaYdqjd());
- ydfmw.put("qtText", assist.getVaginaOtherTxt());
- ydfmw.put("qt", new Integer(1).equals(assist.getVaginaOther()));
- ydfmw.put("jsjmj", new Integer(1).equals(assist.getVaginaJsjmj()));
- ydfmw.put("dc", new Integer(1).equals(assist.getVaginaDc()));
- examAddRequest.setYdfmw(ydfmw);
- // 病史信息
- examAddRequest.setHistoryList(historyMapsList);
- // hHealthInfo 丈夫健康情况(特殊处理)
- Map hHealthInfo = new HashMap<>();
- if(historyMapsList!=null && !historyMapsList.isEmpty()){
- for(HistoryMaps hm : historyMapsList){
- if(HistoryMaps.ZFJKQK.equals(hm.getId())){//丈夫健康情况
- hHealthInfo.put("qt", hm.getOtherTxt());
- hHealthInfo.put("yesOrNo", "yes");
- break;
+
+ if (assist != null) {
+ // 处理辅助检查,"yin","ruoyang","yang"字段
+ Map keyMap = new HashMap<>();
+ keyMap.put(DiagnoseAssit.YIN, "-");
+ keyMap.put(DiagnoseAssit.YANG, "+");
+ keyMap.put(DiagnoseAssit.RUOYANG, "±");
+ keyMap.put(null, null);
+ examAddRequest.setBg(keyMap.get(assist.getLiverBg()));// 丙肝
+ examAddRequest.setRh(keyMap.get(assist.getBloodtypeRh()));// RH血型
+ examAddRequest.setYgbmky(keyMap.get(assist.getHepatitisbYgbmky()));// 乙肝表面抗原
+ examAddRequest.setYgbmkt(keyMap.get(assist.getHepatitisbYgbmkt()));// 乙肝表面抗体
+ examAddRequest.setYgeky(keyMap.get(assist.getHepatitisbYgeky()));// 乙肝e抗原
+ examAddRequest.setYgekt(keyMap.get(assist.getHepatitisbYgekt()));// 乙肝e抗体
+ examAddRequest.setYghxkt(keyMap.get(assist.getHepatitisbYghxkt()));// 乙肝核心抗体
+ examAddRequest.setHivkt(keyMap.get(assist.getSyphilisHiv()));// HIV抗体检测
+ examAddRequest.setSyjg(keyMap.get(assist.getSyphilisSyjg()));// 梅毒血清实验结果
+ // 阴道分泌物
+ Map ydfmw = new HashMap<>();
+ ydfmw.put("ydqjd", assist.getVaginaYdqjd());
+ ydfmw.put("qtText", assist.getVaginaOtherTxt());
+ ydfmw.put("qt", new Integer(1).equals(assist.getVaginaOther()));
+ ydfmw.put("jsjmj", new Integer(1).equals(assist.getVaginaJsjmj()));
+ ydfmw.put("dc", new Integer(1).equals(assist.getVaginaDc()));
+ examAddRequest.setYdfmw(ydfmw);
+ }
+
+ if (historyMapsList != null) {
+ // 病史信息
+ examAddRequest.setHistoryList(historyMapsList);
+ // hHealthInfo 丈夫健康情况(特殊处理)
+ Map hHealthInfo = new HashMap<>();
+ if (historyMapsList != null && !historyMapsList.isEmpty()) {
+ for (HistoryMaps hm : historyMapsList) {
+ if (HistoryMaps.ZFJKQK.equals(hm.getId())) {// 丈夫健康情况
+ hHealthInfo.put("qt", hm.getOtherTxt());
+ hHealthInfo.put("yesOrNo", "yes");
+ break;
+ }
}
}
+ examAddRequest.sethHealthInfo(hHealthInfo);
}
- examAddRequest.sethHealthInfo(hHealthInfo);
+
// 胎儿信息
- List> placentas = new ArrayList<>();
- if(diagnoseTaiList!=null && !diagnoseTaiList.isEmpty()){
- for(DiagnoseTai tai : diagnoseTaiList){
- Map taiMap = new HashMap<>();
- taiMap.put("heartRate", tai.getHeartRate()==null?"":UnitConstants.splice(tai.getHeartRate(), UnitConstants.CIFEN));
- taiMap.put("fetalPosition", tai.getPosition()==null?"":FetalPositionEnums.getTitle(tai.getPosition()));
- taiMap.put("fetalPresentation", tai.getFirstExpose()==null?"":FetalEnums.getTitle(tai.getFirstExpose()));
- taiMap.put("join", tai.getIsLink()==null?"":JoinEnums.getTitle(tai.getIsLink()+""));
+ List> placentas = new ArrayList<>();
+ if (diagnoseTaiList != null && !diagnoseTaiList.isEmpty()) {
+ for (DiagnoseTai tai : diagnoseTaiList) {
+ Map taiMap = new HashMap<>();
+ taiMap.put("heartRate", tai.getHeartRate() == null ? ""
+ : UnitConstants.splice(tai.getHeartRate(), UnitConstants.CIFEN));
+ taiMap.put("fetalPosition",
+ tai.getPosition() == null ? "" : FetalPositionEnums.getTitle(tai.getPosition()));
+ taiMap.put("fetalPresentation",
+ tai.getFirstExpose() == null ? "" : FetalEnums.getTitle(tai.getFirstExpose()));
+ taiMap.put("join", tai.getIsLink() == null ? "" : JoinEnums.getTitle(tai.getIsLink() + ""));
placentas.add(taiMap);
}
}
@@ -127,12 +152,13 @@ public class ExamAddRequestWrapper {
diagnoseInfo = (DiagnoseInfo) XjhMapUtil.transMap2FormatBean(infoMap, new DiagnoseInfo());
diagnoseInfo.setWomanId(request.getParentId());// 孕妇档案ID
diagnoseInfo.setPersonId(request.getPid());// 女性居民
+ diagnoseInfo.setId(request.getId());//诊断ID
diagnoseInfo.setOrgId(null);// 医院ID TODO 来自于token 登录信息
// 血压
Map bp = request.getBp();
if (bp != null) {
String[] original = { "ssy", "szy" };
- String[] alias = { "bloodShrink", "bloodDiastole", };
+ String[] alias = { "bloodShrink", "bloodDiastole" };
diagnoseInfo = (DiagnoseInfo) XjhMapUtil.transMap2AliasBean(bp, diagnoseInfo,
XjhMapUtil.getKeyMap(original, alias));
}
@@ -188,7 +214,10 @@ public class ExamAddRequestWrapper {
}
// 处理2级节点
for (String key2 : map1.keySet()) {
- Map map2 = (Map) historyInfo.get(key2);// 2级节点
+ if ("yesOrNo".equals(key2) || "id".equals(key2)) {
+ continue;
+ }
+ Map map2 = (Map) map1.get(key2);// 2级节点
if (map2 != null) {
String node2_checkBox = map2.get("checkBox").toString();
if ("true".equals(node2_checkBox)) {
@@ -204,8 +233,8 @@ public class ExamAddRequestWrapper {
} else {// 其他病史信息(2级结构)
String node2_text = null;
- if (map2.containsKey("selected") && map2.get("selected") != null) {
- node2_text = map2.get("selected").toString();
+ if (map2.containsKey("otherText") && map2.get("otherText") != null) {
+ node2_text = map2.get("otherText").toString();
}
historyMapsList.add(new HistoryMaps(key2, node2_text));
}
@@ -236,9 +265,41 @@ public class ExamAddRequestWrapper {
diagnoseTaiList.add(tai);
}
}
+
/*
- * 诊断信息 TODO
+ * 处理高危和诊断信息
*/
+ // 高危列表
+ List highrisk = (List) request.getHighrisk();
+ if (highrisk != null && !highrisk.isEmpty()) {
+ for (String confId : highrisk) {
+ HighriskMaps hm = new HighriskMaps();
+ hm.setConfId(confId);
+ highriskList.add(hm);
+ }
+ }
+ // 自定义高危(其他高危)
+ Map otherHighRisk = (Map) request.getOtherHighRisk();
+ if (otherHighRisk != null && !otherHighRisk.isEmpty()) {
+ diagnoseInfo.setHasHighrisk(1);// 表示有自定义高危
+ Map fyyse = (Map) otherHighRisk.get("fyyse");
+ if (fyyse != null) {
+ diagnoseInfo.setCusHrColorcode(OldNewWrapper.obj2Str(fyyse.get("COLORCODE")));
+ diagnoseInfo.setCusHrColortext(OldNewWrapper.obj2Str(fyyse.get("COLORTEXT")));
+ }
+ diagnoseInfo.setCusHrName(OldNewWrapper.obj2Str(otherHighRisk.get("fxysu")));
+ diagnoseInfo.setCusHrGrade(OldNewWrapper.obj2Str(otherHighRisk.get("fxpf")));
+ }
+ // 诊断列表
+ List diagnosis = (List) request.getDiagnosis();
+ if (diagnosis != null && !diagnosis.isEmpty()) {
+ for (String confId : diagnosis) {
+ DiagnoseMaps dm = new DiagnoseMaps();
+ dm.setConfId(confId);
+ diagnoseList.add(dm);
+ }
+ }
+
}
}
@@ -287,4 +348,20 @@ public class ExamAddRequestWrapper {
this.diagnoseTaiList = diagnoseTaiList;
}
+ public List getHighriskList() {
+ return highriskList;
+ }
+
+ public void setHighriskList(List highriskList) {
+ this.highriskList = highriskList;
+ }
+
+ public List getDiagnoseList() {
+ return diagnoseList;
+ }
+
+ public void setDiagnoseList(List diagnoseList) {
+ this.diagnoseList = diagnoseList;
+ }
+
}
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/DiagnoseAssistKeymap.java b/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/DiagnoseAssistKeymap.java
index 5e03e5c..694cbe7 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/DiagnoseAssistKeymap.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/DiagnoseAssistKeymap.java
@@ -53,7 +53,7 @@ public class DiagnoseAssistKeymap {
"liverBdb",//
"liverZdhs",//
"liverZhdhs",//
- "liverBg",//【新字段】丙肝
+ "liverBg",//
//乙肝五项 5
"hepatitisbYgbmky",//
@@ -113,7 +113,7 @@ public class DiagnoseAssistKeymap {
"albumin",//
"totalBilirubin",//
"jhBilirubin",//
- "liverBg",//【新字段】丙肝
+ "bg",//
//乙肝五项 5
"ygbmky",//
@@ -127,7 +127,7 @@ public class DiagnoseAssistKeymap {
"xnsd",//
//梅毒血清实验 2
- "mdxqsy",//
+ "syjg",//
"hivkt",//
//阴道分泌物 5
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/WomanExamKeymap.java b/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/WomanExamKeymap.java
index d429f8c..4179316 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/WomanExamKeymap.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/response/keymap/WomanExamKeymap.java
@@ -88,6 +88,7 @@ public class WomanExamKeymap {
"disposeSuggest",//
"guideSuggest",//
+ "chiefComplaint"//主诉
};
@@ -133,7 +134,7 @@ public class WomanExamKeymap {
//产科检查(3)宫高,腹围,胎数
"gonggao",//
"fuwei",//
- "tireNumber1",//
+ "tireNumber",//
//高危评分(5)
// "highriskSocre",//高危评分
@@ -142,7 +143,8 @@ public class WomanExamKeymap {
//诊断指导(2)
"treatOpinion",//处理意见
"guide",//指导意见
-
+
+ "chiefComplaint"//主诉
};