diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/assist/DiagnoseAssit.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/assist/DiagnoseAssit.java
index 3be53ab..50e5033 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/assist/DiagnoseAssit.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/assist/DiagnoseAssit.java
@@ -197,7 +197,7 @@ public class DiagnoseAssit implements Serializable {
* 阴道清洁度
*/
@TableField(value="VAGINA_YDQJD")
- private Integer vaginaYdqjd;
+ private String vaginaYdqjd;
/**
* B超描述
*/
@@ -497,11 +497,11 @@ public class DiagnoseAssit implements Serializable {
this.vaginaOtherTxt = vaginaOtherTxt;
}
- public Integer getVaginaYdqjd() {
+ public String getVaginaYdqjd() {
return vaginaYdqjd;
}
- public void setVaginaYdqjd(Integer vaginaYdqjd) {
+ public void setVaginaYdqjd(String vaginaYdqjd) {
this.vaginaYdqjd = vaginaYdqjd;
}
@@ -545,5 +545,4 @@ public class DiagnoseAssit implements Serializable {
this.childKgj = childKgj;
}
-
}
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/history/HistoryMaps.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/history/HistoryMaps.java
index 9e63973..01d5dba 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/history/HistoryMaps.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/entity/history/HistoryMaps.java
@@ -17,6 +17,9 @@ import java.io.Serializable;
public class HistoryMaps implements Serializable {
private static final long serialVersionUID = 1L;
+ //关联目标类型:1产检、2妇女建档
+ public static final int TARGET_TYPE_EXAM = 1;
+ public static final int TARGET_TYPE_WOMAN_RECORD = 2;
/**
*
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 182f2f8..fbd143a 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
@@ -17,6 +17,7 @@ import com.lyms.hospital.entity.diagnose.DiagnoseInfo;
import com.lyms.hospital.entity.history.HistoryMaps;
import com.lyms.hospital.service.assist.DiagnoseAssitService;
import com.lyms.hospital.service.diagnose.DiagnoseInfoService;
+import com.lyms.hospital.service.history.HistoryMapsService;
import com.lyms.util.StrUtils;
/**
@@ -34,6 +35,8 @@ public class DiagnoseInfoServiceImpl extends ServiceImpl {
* @param list
* 创建人:方承
* 创建时间:2017年3月31日
- * 修改人:
- * 修改时间:
+ * 修改人:xujiahong
+ * 修改时间:2017年4月28日
+ *
*/
- public void insertHistoryMapsList(Serializable womanid,List list);
+ public void insertHistoryMapsList(String targetId,Integer targetType,List list);
}
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 2c86dbd..34a8469 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
@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
+import org.springframework.util.StringUtils;
import java.io.Serializable;
import java.util.List;
@@ -28,8 +29,11 @@ public class HistoryMapsServiceImpl extends ServiceImpl list) {
- delete(new EntityWrapper().where("woman_id={0}", womanid));
+ public void insertHistoryMapsList(String targetId,Integer targetType,List list) {
+ if(StringUtils.isEmpty(targetId) && targetType!=null){
+ return;
+ }
+ delete(new EntityWrapper().where("targetId={0}", targetId).and("targetType={0}", targetType));
insertBatch(list);
}
}
diff --git a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanRecordServiceImpl.java b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanRecordServiceImpl.java
index bc4558a..8e2f2ee 100644
--- a/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanRecordServiceImpl.java
+++ b/parent/hospital.mac/src/main/java/com/lyms/hospital/service/woman/impl/WomanRecordServiceImpl.java
@@ -63,7 +63,8 @@ public class WomanRecordServiceImpl extends ServiceImpl HistoryMapsList) {
womanPersonService.insertOrUpdate(womanRecord);
- historyMapsService.insertHistoryMapsList(womanRecord.getId(), HistoryMapsList);
+ //妇女建档插入病史信息
+ historyMapsService.insertHistoryMapsList(womanRecord.getId(),HistoryMaps.TARGET_TYPE_WOMAN_RECORD, HistoryMapsList);
return updateById(womanRecord);
}
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/controller/CommonApiController.java b/parent/hospital.web/src/main/java/com/lyms/hospital/controller/CommonApiController.java
index d95c7af..076c3a8 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/controller/CommonApiController.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/controller/CommonApiController.java
@@ -26,9 +26,9 @@ import com.lyms.web.controller.BaseController;
* 公用接口-前端控制器
*
*
- * -查询病史配置
- * -查询省市区数据
- * -查询字典数据
+ * []查询病史配置
+ * 查询省市区数据
+ * 查询字典数据
*
* @author xujiahong
* @since 2017-04-21
@@ -42,6 +42,14 @@ public class CommonApiController extends BaseController {
@Autowired
private HistorySourceService historySourceService;
+ /**
+ * @Description:查询病史配置
+ * @return
+ * 创建人:xujiahong
+ * 创建时间:2017年4月28日
+ * 修改人:
+ * 修改时间:
+ */
@RequestMapping(value = "/queryHistorySource", method = RequestMethod.GET)
@ResponseBody
public AjaxResult queryHistorySource() {
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 7b7d0e6..97e8f1c 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
@@ -14,11 +14,18 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;
+import com.lyms.hospital.entity.assist.DiagnoseAssit;
+import com.lyms.hospital.entity.diagnose.DiagnoseInfo;
+import com.lyms.hospital.entity.history.HistoryMaps;
import com.lyms.hospital.entity.woman.WomanFetationRecord;
import com.lyms.hospital.request.exam.ExamAddRequest;
+import com.lyms.hospital.response.keymap.DiagnoseAssistKeymap;
+import com.lyms.hospital.response.keymap.WomanExamKeymap;
+import com.lyms.hospital.service.assist.DiagnoseAssitService;
import com.lyms.hospital.service.diagnose.DiagnoseInfoService;
import com.lyms.hospital.service.woman.WomanFetationRecordService;
import com.lyms.hospital.util.HospitalUtil;
+import com.lyms.hospital.util.trans.XjhMapUtil;
import com.lyms.util.DateUtil;
import com.lyms.web.bean.AjaxResult;
import com.lyms.web.controller.BaseController;
@@ -27,7 +34,9 @@ import com.lyms.web.controller.BaseController;
* 孕妇产检 前端控制器
*
* [--]依据cardNo或vcCardNo查询孕妇产检记录
- * 保存初诊数据
+ * [--]保存初诊数据
+ * 保存复诊数据
+ * 查询某条记录的详细信息,用于表单填写
*
* @author xujiahong
*
@@ -40,6 +49,34 @@ public class WomanExamController extends BaseController {
private WomanFetationRecordService fetationService;
@Autowired
private DiagnoseInfoService infoService;
+ @Autowired
+ private DiagnoseAssitService assistService;
+
+ /**
+ * @Description:查询某条记录的详细信息,用于表单填写
+ * @param id
+ * @param type
+ * @return
+ * 创建人:xujiahong
+ * 创建时间:2017年4月28日
+ * 修改人:
+ * 修改时间:
+ */
+ @RequestMapping(value = "/antex", method = RequestMethod.GET)
+ @ResponseBody
+ public AjaxResult selectExamForm(String id,Integer type){
+ /*
+ * 产检基础信息
+ * 产检辅助信息
+ * 病史列表
+ * 胎儿列表
+ * 诊断列表
+ */
+ DiagnoseInfo info = infoService.selectById(id);//产检基础信息
+
+
+ return AjaxResult.returnFail();
+ }
/**
* @Description:保存初诊数据
@@ -50,18 +87,55 @@ public class WomanExamController extends BaseController {
* 修改人:
* 修改时间:
*/
+ @SuppressWarnings({ "unchecked", "rawtypes" })
@RequestMapping(value = "/antex", method = RequestMethod.POST)
@ResponseBody
- public AjaxResult saveExam(@RequestBody ExamAddRequest request){
+ public AjaxResult saveFirstExam(@RequestBody ExamAddRequest request){
/*
* (1)保存产检基本信息
- *
* (2)批量保存病史信息
* (3)保存辅助检查信息
- * 多个胎儿信息
- *
+ * 多个胎儿信息 TODO
+ * 多个诊断信息 TODO
*/
- return AjaxResult.returnFail();
+ /*
+ * 对象转换
+ */
+ Map infoMap = XjhMapUtil.transBean2FormatAliasMap(
+ request, XjhMapUtil.getKeyMap(WomanExamKeymap.original, WomanExamKeymap.alias)
+ );
+ Map assistMap = XjhMapUtil.transBean2FormatAliasMap(
+ request, XjhMapUtil.getKeyMap(DiagnoseAssistKeymap.original, DiagnoseAssistKeymap.alias)
+ );
+ DiagnoseInfo info = (DiagnoseInfo) XjhMapUtil.transMap2FormatBean(infoMap, new DiagnoseInfo());
+ info.setWomanId(request.getParentId());//孕妇档案ID
+ info.setPersonId(request.getPid());//女性居民ID
+ //血压
+ Map bp = request.getBp();
+ if(bp!=null){
+ String[] original = {"ssy","szy"};
+ String[] alias = {"bloodShrink","bloodDiastole",};
+ info = (DiagnoseInfo) XjhMapUtil.transMap2AliasBean(bp, info,
+ XjhMapUtil.getKeyMap(original, alias));
+ }
+
+ DiagnoseAssit assist = (DiagnoseAssit) XjhMapUtil.transMap2FormatBean(assistMap,new DiagnoseAssit());
+ //其他老版本结构数据补录
+ //阴道分泌物
+ Map ydfmw = request.getYdfmw();
+ if(ydfmw!=null){
+ String[] original = {"ydqjd","dc","jsjmj","qt","qtText"};
+ String[] alias = {"vaginaYdqjd","vaginaDc","vaginaJsjmj","vaginaOther","vaginaOtherTxt"};
+ assist = (DiagnoseAssit) XjhMapUtil.transMap2AliasBean(ydfmw, assist,
+ XjhMapUtil.getKeyMap(original, alias));
+ }
+
+
+
+ List historyList = request.getHistoryList();
+ //保存初诊信息CollectionUtil
+ String result = infoService.saveFirstExam(info, assist, historyList);
+ return "success".equals(result)?AjaxResult.returnSuccess():AjaxResult.returnFail(result);
}
/**
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 17ff699..4934261 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
@@ -5,6 +5,7 @@ import java.util.Map;
import org.hibernate.validator.constraints.NotEmpty;
+import com.lyms.hospital.entity.history.HistoryMaps;
import com.lyms.hospital.util.Form;
import com.lyms.hospital.util.FormParam;
@@ -199,8 +200,28 @@ public class ExamAddRequest{
private Integer abortionZR;
//人工流产
private Integer abortionRG;
-
- public String getBarCode() {
+
+
+
+ /**
+ * 病史列表
+ */
+ private List historyList;
+
+
+
+
+
+
+ public List getHistoryList() {
+ return historyList;
+ }
+
+ public void setHistoryList(List historyList) {
+ this.historyList = historyList;
+ }
+
+ public String getBarCode() {
return barCode;
}
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 09f7635..5e03e5c 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
@@ -75,7 +75,7 @@ public class DiagnoseAssistKeymap {
// "vaginaJsjmj",//
// "vaginaOther",//
// "vaginaOtherTxt",//
- "vaginaYdqjd",//
+// "vaginaYdqjd",//
//影像检查 1
"imageBultrasound",//
@@ -132,7 +132,6 @@ public class DiagnoseAssistKeymap {
//阴道分泌物 5
// "ydfmw",//Map 字段
- "ydqjd",//阴道清洁度
//影像检查 1
"bChao",//
diff --git a/parent/hospital.web/src/main/java/com/lyms/hospital/util/trans/XjhMapUtil.java b/parent/hospital.web/src/main/java/com/lyms/hospital/util/trans/XjhMapUtil.java
index c290b26..b7c8c7a 100644
--- a/parent/hospital.web/src/main/java/com/lyms/hospital/util/trans/XjhMapUtil.java
+++ b/parent/hospital.web/src/main/java/com/lyms/hospital/util/trans/XjhMapUtil.java
@@ -77,6 +77,28 @@ public class XjhMapUtil {
}
return obj;
}
+
+ public static Object transMap2AliasBean(Map map, Object obj, HashMap keyMap) {
+ if(map==null || obj==null || keyMap==null){
+ return null;
+ }
+ try {
+ BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass());
+ PropertyDescriptor[] propertyDescriptors = beanInfo.getPropertyDescriptors();
+ for (PropertyDescriptor property : propertyDescriptors) {
+ String field = property.getName();
+ if (keyMap.containsKey(field)) {
+ Object value = map.get(keyMap.get(field));
+ invokeIgnoreType(property,value,obj);
+ }
+ }
+ } catch (Exception e) {
+ System.err.println("映射"+obj.getClass().getName()+"对象时发生错误");
+ System.err.println("transMap2Bean Error " + e);
+ e.printStackTrace();
+ }
+ return obj;
+ }
// 自动处理时间字段和对应的字符串字段(Str结尾)
public static Object transMap2FormatBean(Map map, Object obj) {
@@ -188,7 +210,7 @@ public class XjhMapUtil {
// 得到property对应的getter方法
Method getter = property.getReadMethod();
Object value = getter.invoke(obj);
- if (keyMap.get(field) != null) {
+ if (keyMap.containsKey(field)) {
map.put(keyMap.get(field), value);
}
}