From fbbcc35440cd915756eef4ccb7445e36d94c48c3 Mon Sep 17 00:00:00 2001 From: baohanddd Date: Fri, 12 Aug 2016 16:07:36 +0800 Subject: [PATCH] add risk enum color --- .../com/lyms/platform/permission/model/Users.java | 9 + .../src/main/resources/mainOrm/Users.xml | 1 + .../platform/common/enums/RiskDefaultTypeEnum.java | 14 + .../java/com/lyms/platform/pojo/BasicConfig.java | 9 + .../com/lyms/platform/data/pojo/ExtPatients.java | 41 ++ .../data/service/DataImportTaskService.java | 24 +- .../service/impl/DataImportTaskServiceImpl.java | 420 ++++++++++++++++++++- .../mommybaby/earlydata/model/RiskColorEnum.java | 36 +- .../mommybaby/earlydata/model/RiskDetails.java | 114 ++++++ .../src/main/resources/earlyOrm/Plat.xml | 2 +- .../operate/web/facade/BasicConfigFacade.java | 4 + 11 files changed, 654 insertions(+), 20 deletions(-) create mode 100644 platform-data-api/src/main/java/com/lyms/platform/data/pojo/ExtPatients.java create mode 100644 platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskDetails.java diff --git a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/Users.java b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/Users.java index 137b88d..3a023b0 100644 --- a/platform-biz-service/src/main/java/com/lyms/platform/permission/model/Users.java +++ b/platform-biz-service/src/main/java/com/lyms/platform/permission/model/Users.java @@ -24,6 +24,15 @@ public class Users { private Date lastLoginTime; private Integer zhiChenId; private String zhiChen; + private String employeeId; + + public String getEmployeeId() { + return employeeId; + } + + public void setEmployeeId(String employeeId) { + this.employeeId = employeeId; + } public String getZhiChen() { return zhiChen; diff --git a/platform-biz-service/src/main/resources/mainOrm/Users.xml b/platform-biz-service/src/main/resources/mainOrm/Users.xml index ed509a6..d4d3f37 100644 --- a/platform-biz-service/src/main/resources/mainOrm/Users.xml +++ b/platform-biz-service/src/main/resources/mainOrm/Users.xml @@ -22,6 +22,7 @@ + diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/RiskDefaultTypeEnum.java b/platform-common/src/main/java/com/lyms/platform/common/enums/RiskDefaultTypeEnum.java index 9d65e7c..7362900 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/enums/RiskDefaultTypeEnum.java +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/RiskDefaultTypeEnum.java @@ -1,5 +1,7 @@ package com.lyms.platform.common.enums; +import org.apache.commons.lang.StringUtils; + /** * Created by Administrator on 2016/6/22 0022. */ @@ -15,6 +17,18 @@ public enum RiskDefaultTypeEnum { this.title = title; } + public static String getColor(String title) { + if (StringUtils.isBlank(title)) { + return ""; + } + for (RiskDefaultTypeEnum e:RiskDefaultTypeEnum.values()) { + if (title.startsWith(e.getTitle())) { + return e.getColor(); + } + } + return "green"; + } + private String title; private String color; diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/BasicConfig.java b/platform-dal/src/main/java/com/lyms/platform/pojo/BasicConfig.java index 8294fe5..a9c7536 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/BasicConfig.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/BasicConfig.java @@ -35,6 +35,15 @@ public class BasicConfig extends BaseModel { private Integer score; private String describe; + private String color; + + public String getColor() { + return color; + } + + public void setColor(String color) { + this.color = color; + } public Integer getScore() { return score; diff --git a/platform-data-api/src/main/java/com/lyms/platform/data/pojo/ExtPatients.java b/platform-data-api/src/main/java/com/lyms/platform/data/pojo/ExtPatients.java new file mode 100644 index 0000000..022517c --- /dev/null +++ b/platform-data-api/src/main/java/com/lyms/platform/data/pojo/ExtPatients.java @@ -0,0 +1,41 @@ +package com.lyms.platform.data.pojo; + +import com.lyms.platform.pojo.AntenatalExaminationModel; +import com.lyms.platform.pojo.Patients; +import com.lymsh.mommybaby.earlydata.model.RiskDetails; + +import java.util.List; + +/** + * Created by Administrator on 2016/8/11 0011. + */ +public class ExtPatients extends Patients { + + private List reportsList; + private List riskDetailsList; + private List doctorUserIdList; + + public List getDoctorUserIdList() { + return doctorUserIdList; + } + + public void setDoctorUserIdList(List doctorUserIdList) { + this.doctorUserIdList = doctorUserIdList; + } + + public List getReportsList() { + return reportsList; + } + + public void setReportsList(List reportsList) { + this.reportsList = reportsList; + } + + public List getRiskDetailsList() { + return riskDetailsList; + } + + public void setRiskDetailsList(List riskDetailsList) { + this.riskDetailsList = riskDetailsList; + } +} diff --git a/platform-data-api/src/main/java/com/lyms/platform/data/service/DataImportTaskService.java b/platform-data-api/src/main/java/com/lyms/platform/data/service/DataImportTaskService.java index 7c9e9b8..1d3326f 100644 --- a/platform-data-api/src/main/java/com/lyms/platform/data/service/DataImportTaskService.java +++ b/platform-data-api/src/main/java/com/lyms/platform/data/service/DataImportTaskService.java @@ -43,19 +43,35 @@ public interface DataImportTaskService { public void updateAssayByHospital(String hospitalForeignId, Integer hospitalId, Date startTime); /** - * 增量同步检产妇 + * 增量同步产妇 */ - public void updatePatients(); + public void updatePuerpera(); /** * 全量同步产妇 */ - public void fullUpdatePatients(); + public void fullUpdatePuerpera(); /** * 按医院同步产妇 */ - public void updatePatientsByHospital(String hospitalForeignId, Integer hospitalId, Date startTime); + public void updatePuerperaByHospital(String hospitalForeignId, Integer hospitalId, Date startTime); + + /** + * 增量同步孕妇 + */ + public void updateGravida(); + + /** + * 全量同步孕妇 + */ + public void fullUpdateGravida(); + + /** + * 按医院同步孕妇 + */ + public void updateGravidaByHospital(String hospitalForeignId, Integer hospitalId, Date startTime); + /** * 增量同步新生儿 diff --git a/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/DataImportTaskServiceImpl.java b/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/DataImportTaskServiceImpl.java index 8e32500..f5d0574 100644 --- a/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/DataImportTaskServiceImpl.java +++ b/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/DataImportTaskServiceImpl.java @@ -6,17 +6,20 @@ import com.lyms.platform.common.enums.PermissionTypeEnums; import com.lyms.platform.common.enums.UserTypeEnum; import com.lyms.platform.common.enums.VisitStatusEnums; import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.utils.DateUtil; +import com.lyms.platform.common.utils.JsonUtil; import com.lyms.platform.common.utils.LogUtil; import com.lyms.platform.common.utils.LoginUtil; +import com.lyms.platform.data.pojo.ExtPatients; import com.lyms.platform.data.service.DataImportTaskService; import com.lyms.platform.permission.model.*; import com.lyms.platform.permission.service.*; import com.lyms.platform.pojo.*; import com.lyms.platform.query.BabyModelQuery; import com.lyms.platform.query.PatientsQuery; +import com.lymsh.mommybaby.earlydata.dao.MommyMapper; import com.lymsh.mommybaby.earlydata.dao.PlatMapper; -import com.lymsh.mommybaby.earlydata.model.PlatDataContent; -import com.lymsh.mommybaby.earlydata.model.PlatDataType; +import com.lymsh.mommybaby.earlydata.model.*; import org.apache.commons.collections.CollectionUtils; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.math.NumberUtils; @@ -60,6 +63,10 @@ public class DataImportTaskServiceImpl implements DataImportTaskService { @Autowired private PlatMapper platMapper; + + @Autowired + private MommyMapper mommyMapper; + @Autowired private CommunityConfigService communityConfigService; @@ -292,6 +299,7 @@ public class DataImportTaskServiceImpl implements DataImportTaskService { if (StringUtils.isBlank(users.getForeignId()) || !map.get("U_ID").toString().equals(users.getForeignId())) { users = new Users(); users.setForeignId(map.get("U_ID").toString()); + users.setEmployeeId(map.get("E_ID").toString()); departments.getUsersMap().put(users.getForeignId(), users); users.setPublishId(0); users.setPublishName("system"); @@ -427,17 +435,17 @@ public class DataImportTaskServiceImpl implements DataImportTaskService { /** - * 每5分钟同步一次(早六点到晚九点) + * 每17分钟同步一次(早六点到晚九点) */ @Override - public void updatePatients() { + public void updatePuerpera() { Date startTime = new DateTime().minusMinutes(10).toDate(); OrganizationQuery query = new OrganizationQuery(); query.setYn(YnEnums.YES.getId()); List list = organizationService.queryOrganization(query); for (Organization organization : list) { if (StringUtils.isNotBlank(organization.getForeignId())) { - updatePatientsByHospital(organization.getForeignId(), organization.getId(), null); + updatePuerperaByHospital(organization.getForeignId(), organization.getId(), null); } } } @@ -446,12 +454,12 @@ public class DataImportTaskServiceImpl implements DataImportTaskService { * 每天晚上9点55同步一次 */ @Override - public void fullUpdatePatients() { - updatePatientsByHospital(null, null, null); + public void fullUpdatePuerpera() { + updatePuerperaByHospital(null, null, null); } @Override - public void updatePatientsByHospital(String hospitalForeignId, Integer hospitalId, Date startTime) { + public void updatePuerperaByHospital(String hospitalForeignId, Integer hospitalId, Date startTime) { try { List pidList = new ArrayList<>(); List list = platMapper.selectAllPuerperaByHospitalId(hospitalForeignId, startTime); @@ -684,7 +692,7 @@ public class DataImportTaskServiceImpl implements DataImportTaskService { } /** - * 每5分钟同步一次(早六点到晚九点) + * 每13分钟同步一次(早六点到晚九点) */ @Override public void updateNewBorns() { @@ -711,4 +719,398 @@ public class DataImportTaskServiceImpl implements DataImportTaskService { public void updateNewBornsByHospital(String hospitalForeignId, Integer hospitalId, Date startTime) { } + + /** + * 每9分钟同步一次,(早六点到晚九点) + */ + @Override + public void updateGravida() { + Date startTime = new DateTime().minusMinutes(10).toDate(); + OrganizationQuery query = new OrganizationQuery(); + query.setYn(YnEnums.YES.getId()); + List list = organizationService.queryOrganization(query); + for (Organization organization : list) { + if (StringUtils.isNotBlank(organization.getForeignId())) { + updateGravidaByHospital(organization.getForeignId(), organization.getId(), null); + } + } + } + + @Override + public void fullUpdateGravida() { + updateGravidaByHospital(null, null, null); + } + + private Map selectDcIdNameMap(String tableName) { + OracleCommonQuery query = new OracleCommonQuery(null, null, null); + query.setTableName(tableName); + List list = mommyMapper.selectDcIdName(query); + Map map = new HashMap<>(); + for (PlatDataContent dc:list) { + if (StringUtils.isNotBlank(dc.getDcId()) && StringUtils.isNotBlank(dc.getDcName())) { + map.put(dc.getDcId(), dc.getDcName()); + } + } + return map; + } + + @Override + public void updateGravidaByHospital(String hospitalForeignId, Integer hospitalId, Date startTime) { +// try { +// List list = platMapper.selectAllByHospitalId(hospitalForeignId, startTime); +// if (list != null && list.size() > 0) { +// List guideList = mommyMapper.selectGuideTheWomen(null); +// Map guideMap = new HashMap<>(); +// for (PlatDataContent guide : guideList) { +// if (StringUtils.isNotBlank(guide.getDcId()) && StringUtils.isNotBlank(guide.getDcName()) && guide.getWeek() != null) { +// if (guideMap.get(guide.getWeek()) == null) { +// guideMap.put(guide.getWeek(), new StringBuffer()); +// } +// guideMap.get(guide.getWeek()).append(guide.getDcId() + ":" + guide.getDcName()); +// guideMap.get(guide.getWeek()).append("\n"); +// } +// } +//// Map factorsMap = highRiskFactorsService.queryIdMap(); +// +// Map> doctorIdMap = new HashMap<>(); +// UsersQuery usersQuery = new UsersQuery(); +// usersQuery.setOrgId(hospitalId); +// List doctorUsersList1 = usersService.queryUsers(usersQuery); +// for (Users doctorUsers : doctorUsersList1) { +// if (StringUtils.isNotBlank(doctorUsers.getEmployeeId())) { +// if (doctorIdMap.get(doctorUsers.getEmployeeId()) == null) { +// doctorIdMap.put(doctorUsers.getEmployeeId(), new ArrayList()); +// } +// doctorIdMap.get(doctorUsers.getEmployeeId()).add(doctorUsers.getId()); +// } +// } +// +// // 衔接 v_link +// Map vlinkMap = selectDcIdNameMap("v_link"); +// // 胎方位 V_FOETUSPOSITION +// Map vfoetusPositionMap = selectDcIdNameMap("V_FOETUSPOSITION"); +// // 胎先露 V_LEAK +// Map vleakMap = selectDcIdNameMap("V_LEAK"); +// +// Map riskDetailsMap = new HashMap<>(); +// Map reportsMap = new HashMap<>(); +// List factorIdList = new ArrayList<>(); +// List groupIdList = new ArrayList<>(); +// List doctorUserIdList = new ArrayList<>(); +// ExtPatients cpatients = new ExtPatients(); +// for (Map map : list) { +// try { +// if (map.get("P_NAME") == null || map.get("P_MOBILEPHONE") == null || map.get("P_ID") == null) { +// continue; +// } +// if (StringUtils.isBlank(cpatients.getForeignId()) || !map.get("P_ID").toString().equals(cpatients.getForeignId())) { +// if (riskDetailsMap.size() > 0) { +// List riskDetailsList = new ArrayList<>(); +// riskDetailsList.addAll(riskDetailsMap.values()); +// cpatients.setRiskDetailsList(riskDetailsList); +// } +// if (reportsMap.size() > 0) { +// List reportsList = new ArrayList<>(); +// reportsList.addAll(reportsMap.values()); +// cpatients.setReportsList(reportsList); +// } +// cpatients.setDoctorUserIdList(doctorUserIdList); +// StringBuilder factorIdStr = new StringBuilder(","); +// StringBuilder groupIdStr = new StringBuilder(","); +// for (Integer i : factorIdList) { +// factorIdStr.append(i).append(","); +// } +// for (Integer i : groupIdList) { +// groupIdStr.append(i).append(","); +// } +// cpatients.setRiskFactorId(factorIdList); +// cpatients.setRiskGroupId(groupIdStr.toString()); +// savePatient(cpatients); +// +// // init new patient +// doctorUserIdList = new ArrayList<>(); +// riskDetailsMap = new HashMap<>(); +// reportsMap = new HashMap<>(); +// factorIdList = new ArrayList<>(); +// groupIdList = new ArrayList<>(); +// cpatients = new ExtPatients(); +// +// cpatients.setHospitalForeignId(map.get("P_HOSPITALID").toString()); +// cpatients.setForeignId(map.get("P_ID").toString()); +// cpatients.setUsername(map.get("P_NAME").toString()); +// cpatients.setPhone(map.get("P_MOBILEPHONE").toString()); +// cpatients.setBirth((Date) map.get("P_BIRTHDAY")); +// Object osex = map.get("P_SEX"); +// if (osex != null && osex.equals(0)) { +// cpatients.setGender(2); +// } else { +// cpatients.setGender(1); +// } +// cpatients.setPublishId(0); +// cpatients.setPublishName("system"); +// Object oisvalid = map.get("P_ISVALID"); +// if (oisvalid == null) { +// cpatients.setYn(YnEnum.no.getId()); +// } else { +// try { +// if (Integer.valueOf(oisvalid.toString()) == 1) { +// cpatients.setYn(YnEnum.yes.getId()); +// } else { +// cpatients.setYn(YnEnum.no.getId()); +// } +// } catch (Exception e) { +// cpatients.setYn(YnEnum.no.getId()); +// } +// } +// cpatients.setForeignSubId(map.get("P_NO").toString()); +// cpatients.setType(1); // 孕妇 +// cpatients.setLastMenses((Date) map.get("P_LASTMENSTRUALPERIOD")); +// BigDecimal vip = (BigDecimal) map.get("P_ISVIP"); +// cpatients.setVip(vip == null ? null : vip.intValue()); +// BigDecimal servicetype = (BigDecimal) map.get("P_SERVICETYPE"); +// cpatients.setServiceType(servicetype == null ? null : servicetype.intValue()); +// if (cpatients.getLastMenses() != null) { +// DateTime dt = new DateTime(cpatients.getLastMenses()); +// dt = dt.plusMonths(9); +// dt = dt.plusDays(7); +// cpatients.setDueDate(dt.toDate()); +// } +// // 如果末次月经为空,视为脏数据,设置为删除状态 +// if (cpatients.getLastMenses() == null) { +// cpatients.setYn(YnEnum.no.getId()); +// } +// +// if (map.get("P_OPERUSER") != null) { +// List tempIdList = doctorIdMap.get(map.get("P_OPERUSER").toString()); +// if (tempIdList != null && tempIdList.size() > 0) { +// for (Integer id : tempIdList) { +// if (!doctorUserIdList.contains(id)) { +// doctorUserIdList.add(id); +// } +// } +// } +// } +// if (map.get("P_FILINGOPER") != null) { +// List tempIdList = doctorIdMap.get(map.get("P_FILINGOPER").toString()); +// if (tempIdList != null && tempIdList.size() > 0) { +// for (Integer id : tempIdList) { +// if (!doctorUserIdList.contains(id)) { +// doctorUserIdList.add(id); +// } +// } +// } +// } +// +// if ("已分娩".equals(map.get("PI_AGEMONTH"))) { +// cpatients.setType(3); // 已分娩 +// } +// +// Object vcolorname = map.get("V_ME_COLORNAME"); +// if (vcolorname != null) { +// String[] colors = vcolorname.toString().split(","); +// Integer crisis = 0; +// for (String color : colors) { +// crisis = crisis | RiskColorEnum.getId(color); +// } +// Risks risks = new Risks(); +// risks.setCrisis(crisis); +// risks.setReason((String) map.get("V_DC_NAME")); +// risks.setTitle(risks.getReason()); +// risks.setYn(YnEnum.yes.getId()); +// risks.setPublishId(0); +// risks.setPublishName("system"); +// cpatients.setRisks(risks); +// +// Warnings warnings = new Warnings(); +// warnings.setYn(YnEnum.yes.getId()); +// BigDecimal fenshu = (BigDecimal) map.get("V_FENSHU"); +// warnings.setScore(fenshu == null ? null : fenshu.intValue()); +// warnings.setPublishId(0); +// warnings.setPublishName("system"); +// warnings.setLevel(crisis); +// warnings.setFactor(risks.getTitle()); +// if (cpatients.getLastMenses() != null) { +// StringBuffer sb = guideMap.get(DateUtil.getWeek(cpatients.getLastMenses())); +// warnings.setGuide(sb == null ? null : sb.toString()); +// } +// cpatients.setWarnings(warnings); +// } +// +// } +// +// // risk detail +// if (map.get("ME_COLORNAME") != null && map.get("DC_NAME") != null && !"健康".equals(map.get("DC_NAME"))) { +// if (riskDetailsMap.get(map.get("DC_NAME").toString()) == null && cpatients.getRisks() != null +// && cpatients.getRisks().getTitle() != null && cpatients.getRisks().getTitle().contains(map.get("DC_NAME").toString())) { +// RiskDetails details = new RiskDetails(); +// details.setYn(YnEnum.yes.getId()); +// details.setPublishId(0); +// details.setPublishName("system"); +// details.setTitle(map.get("DC_NAME").toString()); +// details.setScore(map.get("DC_NO") == null ? null : Integer.valueOf(map.get("DC_NO").toString())); +// details.setCrisis(RiskColorEnum.getId(map.get("ME_COLORNAME").toString())); +// riskDetailsMap.put(details.getTitle(), details); +// HighRiskFactors factors = factorsMap.get(details.getTitle()); +// if (factors != null) { +// factorIdList.add(factors.getId()); +// groupIdList.add(factors.getGroupId()); +// } +// } +// } +// +// +// // report +// if (!reportsMap.containsKey(map.get("fe_id"))) { +// MommyMultiMap mmm = buildReportTable(map, "MOMMY_FIRSTEXAMINE"); +// List contentList = new ArrayList(); +// for (String name : mmm.getFilterMap().keySet()) { +// String v = mmm.getFilterMap().get(name); +// if (name.startsWith("衔接")) { +// v = vlinkMap.get(v); +// } else if (name.startsWith("胎方位")) { +// v = vfoetusPositionMap.get(v); +// } else if (name.startsWith("胎先露")) { +// v = vleakMap.get(v); +// } +// KVObject kv = new KVObject(name, v); +// contentList.add(kv); +// } +// Reports report = new Reports(); +// report.setType(1); +// report.setCheckType(CheckTypeEnum.chanjian.getId()); +// report.setPhysicalTime((Date) mmm.getRealMap().get("FE_MEDICALDATA")); +// Hospitals hospitals = hospitalsService.getHospitals(mmm.getFullMap().get("fe_hospitalid")); +// if (hospitals != null) { +// report.setHospitalName(hospitals.getTitle()); +// } +// report.setRealName(cpatients.getUsername()); +// report.setResult(JsonUtil.array2JsonString(contentList)); +// report.setForeignId(mmm.getFullMap().get("fe_id")); +// report.setPublishId(0); +// report.setPublishName("system"); +// report.setYn(YnEnum.yes.getId()); +// report.setAge(cpatients.getAge()); +// report.setWeeks(DateUtil.getWeek(cpatients.getLastMenses(), report.getPhysicalTime())); +// report.setEmployeeId(mmm.getFullMap().get("fe_doctor")); +// if (StringUtils.isNotBlank(report.getEmployeeId()) && doctorIdMap.containsKey(report.getEmployeeId())) { +// List tempIdList = doctorIdMap.get(report.getEmployeeId()); +// if (tempIdList != null && tempIdList.size() > 0) { +// for (Integer id : tempIdList) { +// if (!doctorUserIdList.contains(id)) { +// doctorUserIdList.add(id); +// } +// } +// } +// } +// MmbbDoctorUsers mdu = getMmbbDoctorUsers(mmm.getFullMap().get("fe_doctor")); +// if (mdu != null) { +// report.setPublishName(mdu.getEName()); +// report.setHospitalName(mdu.getEHospitalname()); +// report.setDoctorName(mdu.getEName()); +// } +// report.setNextCheckTime(mmm.getRealMap().get("FE_ORDERNEXT") == null ? null : (Date) mmm.getRealMap().get("FE_ORDERNEXT")); +// report.setUh(mmm.getFullMap().get("fe_uterusheight")); +// report.setW(mmm.getFullMap().get("fe_weight")); +// report.setAp(mmm.getFullMap().get("fe_abgirth")); +// reportsMap.put(report.getForeignId(), report); +// } +// if (!reportsMap.containsKey(map.get("er_id"))) { +// MommyMultiMap mmm = buildReportTable(map, "MOMMY_EXAMINERESULT"); +// List contentList = new ArrayList(); +// for (String name : mmm.getFilterMap().keySet()) { +// String v = mmm.getFilterMap().get(name); +// if (name.startsWith("衔接")) { +// v = vlinkMap.get(v); +// } else if (name.startsWith("胎方位")) { +// v = vfoetusPositionMap.get(v); +// } else if (name.startsWith("胎先露")) { +// v = vleakMap.get(v); +// } +// KVObject kv = new KVObject(name, v); +// contentList.add(kv); +// } +// Reports report = new Reports(); +// report.setPatientId(cpatients.getId()); +// report.setType(1); +// report.setCheckType(CheckTypeEnum.chanjian.getId()); +// report.setPhysicalTime((Date) mmm.getRealMap().get("ER_CHECKDATE")); +// report.setRealName(cpatients.getUsername()); +// report.setResult(JsonUtil.array2JsonString(contentList)); +// report.setForeignId(mmm.getFullMap().get("er_id")); +// report.setPublishId(0); +// report.setPublishName("system"); +// report.setYn(YnEnum.yes.getId()); +// report.setAge(cpatients.getAge()); +// report.setWeeks(DateUtil.getWeek(cpatients.getLastMenses(), report.getPhysicalTime())); +// report.setEmployeeId(mmm.getFullMap().get("er_creator")); +// if (StringUtils.isNotBlank(report.getEmployeeId()) && doctorIdMap.containsKey(report.getEmployeeId())) { +// List tempIdList = doctorIdMap.get(report.getEmployeeId()); +// if (tempIdList != null && tempIdList.size() > 0) { +// for (Integer id : tempIdList) { +// if (!doctorUserIdList.contains(id)) { +// doctorUserIdList.add(id); +// } +// } +// } +// } +// MmbbDoctorUsers mdu = getMmbbDoctorUsers(mmm.getFullMap().get("er_creator")); +// if (mdu != null) { +// report.setPublishName(mdu.getEName()); +// report.setHospitalName(mdu.getEHospitalname()); +// report.setDoctorName(mdu.getEName()); +// } +// report.setNextCheckTime(mmm.getRealMap().get("ER_NEXTDATE") == null ? null : (Date) mmm.getRealMap().get("ER_NEXTDATE")); +// report.setUh(mmm.getFullMap().get("er_uterusheight")); +// report.setW(mmm.getFullMap().get("er_weight")); +// report.setAp(mmm.getFullMap().get("er_circumference")); +// reportsMap.put(report.getForeignId(), report); +// } +// +// +// } catch (Exception ee) { +// ee.printStackTrace(); +// LogUtil.taskError(JsonUtil.obj2JsonString(map) + " -- " + JsonUtil.obj2JsonString(cpatients), ee); +// +// // init new patient +// doctorUserIdList = new ArrayList<>(); +// riskDetailsMap = new HashMap<>(); +// reportsMap = new HashMap<>(); +// factorIdList = new HashSet<>(); +// groupIdList = new HashSet<>(); +// cpatients = new ExtPatients(); +// } +// } +// if (StringUtils.isNotBlank(cpatients.getForeignId())) { +// if (riskDetailsMap.size() > 0) { +// List riskDetailsList = new ArrayList<>(); +// riskDetailsList.addAll(riskDetailsMap.values()); +// cpatients.setRiskDetailsList(riskDetailsList); +// } +// if (reportsMap.size() > 0) { +// List reportsList = new ArrayList<>(); +// reportsList.addAll(reportsMap.values()); +// cpatients.setReportsList(reportsList); +// } +// cpatients.setDoctorUserIdList(doctorUserIdList); +// StringBuilder factorIdStr = new StringBuilder(","); +// StringBuilder groupIdStr = new StringBuilder(","); +// for (Integer i : factorIdList) { +// factorIdStr.append(i).append(","); +// } +// for (Integer i : groupIdList) { +// groupIdStr.append(i).append(","); +// } +// cpatients.setRiskFactorId(factorIdStr.toString()); +// cpatients.setRiskGroupId(groupIdStr.toString()); +// savePatient(cpatients); +// } +// } else { +// LogUtil.taskInfo("hospitalId:"+hospitalForeignId+" has no data!"); +// } +// } catch (Exception e) { +// e.printStackTrace(); +// LogUtil.taskError(e.getMessage(), e); +// } +// + } } diff --git a/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskColorEnum.java b/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskColorEnum.java index 5c1101d..4320067 100644 --- a/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskColorEnum.java +++ b/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskColorEnum.java @@ -1,5 +1,7 @@ package com.lymsh.mommybaby.earlydata.model; +import org.apache.commons.lang.StringUtils; + /** * Created by riecard on 15/11/13. * 橙,黄,红,紫,绿 @@ -7,16 +9,17 @@ package com.lymsh.mommybaby.earlydata.model; */ public enum RiskColorEnum { - Orange(1,"Orange"), - Yellow(2,"Yellow"), - Red(4,"Red"), - Purple(8,"Purple"), - Green(16,"Green") + Orange(1,"Orange", "橙色"), + Yellow(2,"Yellow", "黄色"), + Red(4,"Red", "红色"), + Purple(8,"Purple", "紫色"), + Green(16,"Green", "绿色") ; - private RiskColorEnum(Integer id, String title) { + private RiskColorEnum(Integer id, String title, String color) { this.id = id; this.title = title; + this.color = color; } public static String getTitle(Integer id) { @@ -28,6 +31,18 @@ public enum RiskColorEnum { return ""; } + public static String getTitle(String color) { + if (StringUtils.isBlank(color)) { + return null; + } + for (RiskColorEnum e: RiskColorEnum.values()) { + if (color.startsWith(e.getColor())) { + return e.getTitle(); + } + } + return null; + } + public static Integer getLevel(Integer total) { if (total == null) { return 0; @@ -65,6 +80,15 @@ public enum RiskColorEnum { } private Integer id; private String title; + private String color; + + public String getColor() { + return color; + } + + public void setColor(String color) { + this.color = color; + } public Integer getId() { return id; diff --git a/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskDetails.java b/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskDetails.java new file mode 100644 index 0000000..1f9d958 --- /dev/null +++ b/platform-mommyData/src/main/java/com/lymsh/mommybaby/earlydata/model/RiskDetails.java @@ -0,0 +1,114 @@ +package com.lymsh.mommybaby.earlydata.model; + +import java.util.Date; + +public class RiskDetails { + private Integer patientId; + private String title; + private String reason; + private Integer crisis; + private Integer publishId; + private String publishName; + private Integer yn; + private Date modified; + private Date created; + private Integer score; + + public Integer getScore() { + return score; + } + + public void setScore(Integer score) { + this.score = score; + } + + public Integer getPatientId() { + return patientId; + } + + + public void setPatientId(Integer patientId) { + this.patientId = patientId; + + } + + public String getTitle() { + return title; + } + + + public void setTitle(String title) { + this.title = title; + + } + + public String getReason() { + return reason; + } + + + public void setReason(String reason) { + this.reason = reason; + + } + + public Integer getCrisis() { + return crisis; + } + + + public void setCrisis(Integer crisis) { + this.crisis = crisis; + + } + + public Integer getPublishId() { + return publishId; + } + + + public void setPublishId(Integer publishId) { + this.publishId = publishId; + + } + + public String getPublishName() { + return publishName; + } + + + public void setPublishName(String publishName) { + this.publishName = publishName; + + } + + public Integer getYn() { + return yn; + } + + + public void setYn(Integer yn) { + this.yn = yn; + + } + + public Date getModified() { + return modified; + } + + + public void setModified(Date modified) { + this.modified = modified; + + } + + public Date getCreated() { + return created; + } + + + public void setCreated(Date created) { + this.created = created; + + } +} \ No newline at end of file diff --git a/platform-mommyData/src/main/resources/earlyOrm/Plat.xml b/platform-mommyData/src/main/resources/earlyOrm/Plat.xml index b15d91e..3fa3f2c 100644 --- a/platform-mommyData/src/main/resources/earlyOrm/Plat.xml +++ b/platform-mommyData/src/main/resources/earlyOrm/Plat.xml @@ -219,7 +219,7 @@ where mp.p_platpatientid = ppt.p_id and card.vc_patientno = mp.p_no and mp.p_hospitalid is not null and ppt.p_id is not null and mp.p_no is not null and ppt.p_name is not null and mp.P_MOBILEPHONE is not null - and ( floor((sysdate - P_LASTMENSTRUALPERIOD+1)/7) > 41 or ( SELECT COUNT(0) FROM mommy_pregDeliveryrecord pp WHERE pp.PDR_PATIENTID =mp.p_platpatientid)>0 ) + and ( floor((sysdate - P_LASTMENSTRUALPERIOD+1)/7) > 41 or ( SELECT COUNT(1) FROM mommy_pregDeliveryrecord pp WHERE pp.PDR_PATIENTID =mp.p_platpatientid)>0 ) and mp.p_hospitalid = #{hospitalId} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java index f40f6cf..78ff79e 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/BasicConfigFacade.java @@ -3,6 +3,7 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.biz.service.BasicConfigService; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.enums.ConfigTypeEnums; +import com.lyms.platform.common.enums.RiskDefaultTypeEnum; import com.lyms.platform.common.enums.YnEnums; import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; @@ -210,6 +211,9 @@ public class BasicConfigFacade { basicConfigQuery.setParentId(basicConfig.getId()); List basicConfigs2 = basicConfigService.queryBasicConfig(basicConfigQuery); if (CollectionUtils.isNotEmpty(basicConfigs2)) { + for (BasicConfig bc:basicConfigs2) { + bc.setColor("risk_"+ RiskDefaultTypeEnum.getColor(basicConfig.getName())); + } basicConfigs1.addAll(basicConfigs2); } } -- 1.8.3.1