package com.lyms.platform.operate.web.request;
import com.lyms.platform.common.base.IBasicRequestConvert;
import com.lyms.platform.common.enums.PatientSerEnums;
import com.lyms.platform.common.enums.ServiceStatusEnums;
import com.lyms.platform.common.enums.ServiceTypeEnums;
import com.lyms.platform.common.enums.YnEnums;
import com.lyms.platform.common.utils.DateUtil;
import com.lyms.platform.operate.web.result.PatientSerResult;
import com.lyms.platform.pojo.BabyModel;
import org.apache.commons.collections.CollectionUtils;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 邮政编码和高危因素没有存储在mongodb
* <p>
* 儿童基本信息请求对象
*/
public class BabyEarBase implements IBasicRequestConvert<BabyModel> {
/**
* 儿童基本信息
*/
private String id;
//儿童建档记录id
private String babyId;
//pid
private String pid;
//儿童名字
private String name;
//性别
private Integer sex;
//儿童身份证号
private String cardNo;
//儿童生日
private String birth;
//民族
private String nation;
//儿童家庭地址
private String provinceId;
//城市id
private String cityId;
//县id
private String areaId;
//镇id
private String streetId;
//详细地址
private String address;
//邮编号码
private String postCode;
//助产机构
private String deliverOrg;
/**
* 母亲基本信息
*/
//母亲姓名
private String mname;
//证件类型ID
private String mcertTypeId;
//证件号
private String mcertNo;
//母亲生日
private String mbirth;
//母亲年龄
private String mAge;
//文化程度ID
private String mLevelId;
//职业类别
private String mproTypeId;
//母亲电话
private String mphone;
/**
* 父亲信息
*/
//父亲姓名
private String fname;
//父亲电话
private String fphone;
//父亲生日
private String fbirth;
//父亲年龄
private String fAge;
//证件号
private String fcertNo;
//证件类型ID
private String fcertTypeId;
//文化程度ID
private String fLevelId;
//职业类别
private String fproTypeId;
/**
* 高危及诊断
*/
//母亲孕期高危因素
private String mHighRiskFactorId;
//母亲孕期高危因素集合
private List mHighRiskFactorList;
//住院号
private String admissNo;
//新生儿出院诊断
private String dischargeDiagnosis;
//听力高危因素
private List dischargeDiagnosisList;
//听力高危因素
private String highRiskCause;
//听力高危因素
private List highRiskCauseList;
/**
* 院内信息
*/
//建档医生
private String createUserId;
//建档时间
private String createTime;
//就诊卡号
private String vcCardNo;
//条码
private String barCode;
//备注
private String remark;
//服务状态
private Integer serviceStatus;
//服务类型
private Integer serviceType;
//滦平儿童档案编号
private String fileCode;
/**
* 服务信息
*/
private List<Map<String,String>> serInfos;
//显示服务信息
private List<PatientSerResult> patientSerResults;
//月龄
private String monthAge;
private Integer dataStatus;
public Integer getDataStatus() {
return dataStatus;
}
public void setDataStatus(Integer dataStatus) {
this.dataStatus = dataStatus;
}
public BabyEarBase(BabyModel babyModel) {
setFileCode(babyModel.getFileCode());
setBabyId(babyModel.getId());
setPid(babyModel.getPid());
setName(babyModel.getName());
setCardNo(babyModel.getCardNo());
setBirth(DateUtil.getyyyy_MM_dd(babyModel.getBirth()));
setMonthAge(DateUtil.getBabyMonthAge(babyModel.getBirth(), new Date()));
setProvinceId(babyModel.getProvinceId());
setCityId(babyModel.getCityId());
setAreaId(babyModel.getAreaId());
setStreetId(babyModel.getStreetId());
setAddress(babyModel.getAddress());
setDeliverOrg(babyModel.getDeliverOrg());
setVcCardNo(babyModel.getVcCardNo());
setServiceType(babyModel.getServiceType());
setServiceStatus(babyModel.getServiceStatus());
setRemark(babyModel.getMremark());
setMname(babyModel.getMname());
setMphone(babyModel.getMphone());
setFcertNo(babyModel.getFcertNo());
setFcertTypeId(babyModel.getFcertTypeId());
setMbirth(DateUtil.getyyyy_MM_dd(babyModel.getMbirth()));
setMproTypeId(babyModel.getMproTypeId());
setMcertNo(babyModel.getMcertNo());
setMcertTypeId(babyModel.getMcertTypeId());
setmLevelId(babyModel.getmLevelId());
if(babyModel.getMbirth()!=null){
setmAge(DateUtil.getAge(babyModel.getMbirth(),babyModel.getBuildDate())+"");
}
if(babyModel.getFbirth()!=null){
setfAge(DateUtil.getAge(babyModel.getFbirth(),babyModel.getBuildDate())+"");
}
setCreateTime(DateUtil.getyyyy_MM_dd(babyModel.getBuildDate()));
setPostCode("");
setSex(babyModel.getSex());
setFname(babyModel.getFname());
setFphone(babyModel.getFphone());
setFbirth(DateUtil.getyyyy_MM_dd(babyModel.getFbirth()));
setfLevelId(babyModel.getfLevelId());
setFproTypeId(babyModel.getFproTypeId());
setHighRiskCause(babyModel.getHighRiskReason());
setCreateUserId(babyModel.getBuildDoctor());
setFileCode(babyModel.getFileCode());
}
@Override
public BabyModel convertToDataModel() {
BabyModel babyModel = new BabyModel();
babyModel.setDeliverOrg(deliverOrg);
babyModel.setMname(mname);
babyModel.setMphone(mphone);
babyModel.setMbirth(DateUtil.parseYMD(mbirth));
babyModel.setMproTypeId(mproTypeId);
babyModel.setMcertNo(mcertNo);
babyModel.setMcertTypeId(mcertTypeId);
babyModel.setmLevelId(mLevelId);
babyModel.setId(babyId);
babyModel.setPid(pid);
babyModel.setMremark(remark);
babyModel.setVcCardNo(vcCardNo);
// babyModel.setServiceType(serviceType);
// babyModel.setServiceStatus(serviceStatus);
//建档开通增值服务,以前数据
if (CollectionUtils.isNotEmpty(serInfos)) {
for (Map<String, String> serInfo : serInfos) {
//标准服务
if (Integer.parseInt(serInfo.get("serType")) == PatientSerEnums.SerTypeEnums.babyBzfw.getId()) {
babyModel.setServiceType(ServiceTypeEnums.STANDARD_SERVICE.getId());
babyModel.setServiceStatus(ServiceStatusEnums.STANDARD_OPEN.getId());
}else if(Integer.parseInt(serInfo.get("serType")) == PatientSerEnums.SerTypeEnums.babyjzzz.getId()){//增值服务:修改为孕期精准指导
babyModel.setServiceType(ServiceTypeEnums.ADD_SERVICE.getId());
babyModel.setServiceStatus(ServiceStatusEnums.ADD_OPEN.getId());
break;
}
}
}
babyModel.setBuildDoctor(createUserId);
babyModel.setBuildDate(DateUtil.parseDate(createTime));
babyModel.setBirth(DateUtil.parseYMD(birth));
babyModel.setCardNo(cardNo);
babyModel.setName(name);
babyModel.setAddress(address);
babyModel.setAreaId(areaId);
babyModel.setProvinceId(provinceId);
babyModel.setCityId(cityId);
babyModel.setStreetId(streetId);
babyModel.setSex(sex);
babyModel.setfLevelId(fLevelId);
babyModel.setFname(fname);
babyModel.setFphone(fphone);
babyModel.setFbirth(DateUtil.parseYMD(fbirth));
babyModel.setFproTypeId(fproTypeId);
babyModel.setFileCode(fileCode);
return babyModel;
}
public BabyEarBase() {
}
public String getFileCode() {
return fileCode;
}
public void setFileCode(String fileCode) {
this.fileCode = fileCode;
}
public List<PatientSerResult> getPatientSerResults() {
return patientSerResults;
}
public void setPatientSerResults(List<PatientSerResult> patientSerResults) {
this.patientSerResults = patientSerResults;
}
public String getmAge() {
return mAge;
}
public void setmAge(String mAge) {
this.mAge = mAge;
}
public String getfAge() {
return fAge;
}
public void setfAge(String fAge) {
this.fAge = fAge;
}
public String getFcertNo() {
return fcertNo;
}
public void setFcertNo(String fcertNo) {
this.fcertNo = fcertNo;
}
public String getFcertTypeId() {
return fcertTypeId;
}
public List getDischargeDiagnosisList() {
return dischargeDiagnosisList;
}
public void setDischargeDiagnosisList(List dischargeDiagnosisList) {
this.dischargeDiagnosisList = dischargeDiagnosisList;
}
public void setFcertTypeId(String fcertTypeId) {
this.fcertTypeId = fcertTypeId;
}
public String getMonthAge() {
return monthAge;
}
public void setMonthAge(String monthAge) {
this.monthAge = monthAge;
}
public String getNation() {
return nation;
}
public void setNation(String nation) {
this.nation = nation;
}
public String getmHighRiskFactorId() {
return mHighRiskFactorId;
}
public void setmHighRiskFactorId(String mHighRiskFactorId) {
this.mHighRiskFactorId = mHighRiskFactorId;
}
public String getAdmissNo() {
return admissNo;
}
public void setAdmissNo(String admissNo) {
this.admissNo = admissNo;
}
public String getDischargeDiagnosis() {
return dischargeDiagnosis;
}
public void setDischargeDiagnosis(String dischargeDiagnosis) {
this.dischargeDiagnosis = dischargeDiagnosis;
}
public String getCreateUserId() {
return createUserId;
}
public void setCreateUserId(String createUserId) {
this.createUserId = createUserId;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public String getVcCardNo() {
return vcCardNo;
}
public void setVcCardNo(String vcCardNo) {
this.vcCardNo = vcCardNo;
}
public String getBarCode() {
return barCode;
}
public void setBarCode(String barCode) {
this.barCode = barCode;
}
public String getRemark() {
return remark;
}
public void setRemark(String remark) {
this.remark = remark;
}
public Integer getServiceStatus() {
return serviceStatus;
}
public void setServiceStatus(Integer serviceStatus) {
this.serviceStatus = serviceStatus;
}
public Integer getServiceType() {
return serviceType;
}
public void setServiceType(Integer serviceType) {
this.serviceType = serviceType;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getBabyId() {
return babyId;
}
public void setBabyId(String babyId) {
this.babyId = babyId;
}
public String getPid() {
return pid;
}
public void setPid(String pid) {
this.pid = pid;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCardNo() {
return cardNo;
}
public void setCardNo(String cardNo) {
this.cardNo = cardNo;
}
public String getBirth() {
return birth;
}
public void setBirth(String birth) {
this.birth = birth;
}
public String getProvinceId() {
return provinceId;
}
public void setProvinceId(String provinceId) {
this.provinceId = provinceId;
}
public String getCityId() {
return cityId;
}
public void setCityId(String cityId) {
this.cityId = cityId;
}
public String getAreaId() {
return areaId;
}
public void setAreaId(String areaId) {
this.areaId = areaId;
}
public String getStreetId() {
return streetId;
}
public void setStreetId(String streetId) {
this.streetId = streetId;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getMname() {
return mname;
}
public void setMname(String mname) {
this.mname = mname;
}
public String getMphone() {
return mphone;
}
public void setMphone(String mphone) {
this.mphone = mphone;
}
public String getMbirth() {
return mbirth;
}
public void setMbirth(String mbirth) {
this.mbirth = mbirth;
}
public String getMproTypeId() {
return mproTypeId;
}
public void setMproTypeId(String mproTypeId) {
this.mproTypeId = mproTypeId;
}
public String getMcertNo() {
return mcertNo;
}
public void setMcertNo(String mcertNo) {
this.mcertNo = mcertNo;
}
public String getMcertTypeId() {
return mcertTypeId;
}
public void setMcertTypeId(String mcertTypeId) {
this.mcertTypeId = mcertTypeId;
}
public String getmLevelId() {
return mLevelId;
}
public List<Map<String, String>> getSerInfos() {
return serInfos;
}
public void setSerInfos(List<Map<String, String>> serInfos) {
this.serInfos = serInfos;
}
public void setmLevelId(String mLevelId) {
this.mLevelId = mLevelId;
}
public String getPostCode() {
return postCode;
}
public void setPostCode(String postCode) {
this.postCode = postCode;
}
public List getmHighRiskFactorList() {
return mHighRiskFactorList;
}
public void setmHighRiskFactorList(List mHighRiskFactorList) {
this.mHighRiskFactorList = mHighRiskFactorList;
}
public List getHighRiskCauseList() {
return highRiskCauseList;
}
public void setHighRiskCauseList(List highRiskCauseList) {
this.highRiskCauseList = highRiskCauseList;
}
public Integer getSex() {
return sex;
}
public void setSex(Integer sex) {
this.sex = sex;
}
public String getFname() {
return fname;
}
public void setFname(String fname) {
this.fname = fname;
}
public String getFphone() {
return fphone;
}
public String getDeliverOrg() {
return deliverOrg;
}
public void setDeliverOrg(String deliverOrg) {
this.deliverOrg = deliverOrg;
}
public void setFphone(String fphone) {
this.fphone = fphone;
}
public String getFbirth() {
return fbirth;
}
public void setFbirth(String fbirth) {
this.fbirth = fbirth;
}
public String getfLevelId() {
return fLevelId;
}
public void setfLevelId(String fLevelId) {
this.fLevelId = fLevelId;
}
public String getFproTypeId() {
return fproTypeId;
}
public void setFproTypeId(String fproTypeId) {
this.fproTypeId = fproTypeId;
}
public String getHighRiskCause() {
return highRiskCause;
}
public void setHighRiskCause(String highRiskCause) {
this.highRiskCause = highRiskCause;
}
//status 状态默认为
// private String status;
}