From 9037207b45c3c5e2b7533a35993c1525ee2fe5f5 Mon Sep 17 00:00:00 2001 From: yangfei Date: Thu, 4 Jan 2018 17:15:33 +0800 Subject: [PATCH] =?UTF-8?q?=E8=87=AA=E5=AE=9A=E4=B9=89=E9=AB=98=E5=8D=B1?= =?UTF-8?q?=E5=9B=A0=E7=B4=A0=E6=95=B0=E6=8D=AE=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../common/enums/HisptialRiskTypeEnum.java | 72 ++++++++++++++++++++++ .../platform/common/enums/RiskDefaultTypeEnum.java | 3 +- .../com/lyms/platform/pojo/HosptialHighRisk.java | 31 +++------- .../web/controller/HosptialHighRiskController.java | 26 +++++++- .../operate/web/facade/HosptialHighRiskFacade.java | 70 +++++++++++++++++++-- 5 files changed, 172 insertions(+), 30 deletions(-) create mode 100644 platform-common/src/main/java/com/lyms/platform/common/enums/HisptialRiskTypeEnum.java diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/HisptialRiskTypeEnum.java b/platform-common/src/main/java/com/lyms/platform/common/enums/HisptialRiskTypeEnum.java new file mode 100644 index 0000000..c4cca64 --- /dev/null +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/HisptialRiskTypeEnum.java @@ -0,0 +1,72 @@ +package com.lyms.platform.common.enums; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * @auther yangfei + * @createTime 2018年01月04日 16时40分 + * @discription + */ +public enum HisptialRiskTypeEnum { + YBFX("315107bd-91fe-42a1-9237-752f3c046a40", "一般风险","risk_yellow"), + JGFX("49a36aea-c5b6-4162-87d2-9eb3c6ec00c2", "较高风险","risk_orange"), + GFX("eb146c03-b19f-4e28-b85f-fda574b2283b", "高风险","risk_red"), + CRB("224b2329-cb82-4da3-a071-8527f8283aab", "传染病","risk_purple"); + private String id; + private String name; + private String color; + + public static String getTitle(String id) { + for (HisptialRiskTypeEnum cfEnums : HisptialRiskTypeEnum.values()) { + if (id.equals(cfEnums.getId())) { + return cfEnums.getName(); + } + } + return ""; + } + public static List getHandlingSuggestionEnums() { + List list = new ArrayList<>(); + for (HisptialRiskTypeEnum e : HisptialRiskTypeEnum.values()) { + Map rootMap = new HashMap(); + rootMap.put("id", e.getId()); + rootMap.put("name", e.getName()); + rootMap.put("color", e.getColor()); + list.add(rootMap); + } + return list; + } + + HisptialRiskTypeEnum(String id, String name, String color) { + this.id = id; + this.name = name; + this.color = color; + } + + public String getId() { + return id; + } + + public String getColor() { + return color; + } + + public void setColor(String color) { + this.color = color; + } + + public void setId(String id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + +} 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 7362900..b69c195 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 @@ -9,8 +9,7 @@ public enum RiskDefaultTypeEnum { Orange("橙色","orange"), Yellow("黄色","yellow"), Red("红色","red"), - Purple("紫色","purple") - ; + Purple("紫色","purple"); private RiskDefaultTypeEnum(String title, String color) { this.color = color; diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/HosptialHighRisk.java b/platform-dal/src/main/java/com/lyms/platform/pojo/HosptialHighRisk.java index 92ec2bd..8cc6f7c 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/HosptialHighRisk.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/HosptialHighRisk.java @@ -15,7 +15,7 @@ public class HosptialHighRisk extends BaseModel { @Id private String id; - //分数 + //评分Id private String code; //名称 private String name; @@ -25,19 +25,24 @@ public class HosptialHighRisk extends BaseModel { private Integer yn; //医院id private String hospitalId; - private String typeId; - //权重 private Integer weight; - private Long createDate; private Long modifiedDate; - + //分数 private Integer score; private String describe; //颜色 private String color; + public String getCode() { + return code; + } + + public void setCode(String code) { + this.code = code; + } + public Integer getWeight() { return weight; } @@ -98,14 +103,6 @@ public class HosptialHighRisk extends BaseModel { this.modifiedDate = modifiedDate; } - public String getTypeId() { - return typeId; - } - - public void setTypeId(String typeId) { - this.typeId = typeId; - } - public Integer getEnable() { return enable; } @@ -131,14 +128,6 @@ public class HosptialHighRisk extends BaseModel { this.id = id; } - public String getCode() { - return code; - } - - public void setCode(String code) { - this.code = code; - } - public Integer getYn() { return yn; } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/HosptialHighRiskController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/HosptialHighRiskController.java index e7bbea7..5c0a660 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/HosptialHighRiskController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/HosptialHighRiskController.java @@ -1,8 +1,11 @@ package com.lyms.platform.operate.web.controller; import com.lyms.platform.common.annotation.TokenRequired; +import com.lyms.platform.common.base.BaseController; import com.lyms.platform.common.base.LoginContext; +import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.StringUtils; import com.lyms.platform.operate.web.facade.HosptialHighRiskFacade; import com.lyms.platform.pojo.HosptialHighRisk; import org.springframework.beans.factory.annotation.Autowired; @@ -19,11 +22,22 @@ import javax.validation.Valid; */ @Controller @RequestMapping("/hospHightRisk") -public class HosptialHighRiskController { +public class HosptialHighRiskController extends BaseController { @Autowired private HosptialHighRiskFacade hosptialHighRiskFacade; /** + * 自定义高危页面初始化数据 + * + * @return + */ + @RequestMapping(method = RequestMethod.GET, value = "/init") + @ResponseBody + public BaseResponse initHosptialHighRisk(){ + return hosptialHighRiskFacade.initHosptialHighRisk(); + } + + /** * 添加自定义高危 * * @param request @@ -34,6 +48,16 @@ public class HosptialHighRiskController { @TokenRequired public BaseResponse addHightRisk(@Valid @RequestBody HosptialHighRisk request, HttpServletRequest httpServletRequest) { LoginContext loginState = (LoginContext) httpServletRequest.getAttribute("loginContext"); + //分数为空 + if(request.getScore()==null||request.getScore()==0){ + return new BaseResponse("请填写高危因数分数", ErrorCodeConstants.PARAMETER_ERROR); + }else if(StringUtils.isEmpty(request.getName())){//高危因数名称为null + return new BaseResponse("请填写高危因数名称", ErrorCodeConstants.PARAMETER_ERROR); + }else if(StringUtils.isEmpty(request.getColor())){//高危因数等级null + return new BaseResponse("请选择高危因数等级", ErrorCodeConstants.PARAMETER_ERROR); + } + + return hosptialHighRiskFacade.addHosptialHighRisk(request, loginState.getId()); } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HosptialHighRiskFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HosptialHighRiskFacade.java index d72fcad..803e656 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HosptialHighRiskFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HosptialHighRiskFacade.java @@ -1,13 +1,20 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.biz.service.HosptialHighRiskService; +import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.enums.HisptialRiskTypeEnum; +import com.lyms.platform.common.enums.RiskDefaultTypeEnum; import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.SystemConfig; import com.lyms.platform.pojo.HosptialHighRisk; import com.lyms.platform.query.HosptialHighRiskQuery; +import org.apache.commons.collections.CollectionUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; +import java.util.HashMap; import java.util.List; +import java.util.Map; /** * @auther yangfei @@ -20,37 +27,88 @@ public class HosptialHighRiskFacade { private HosptialHighRiskService hosptialHighRiskService; @Autowired private AutoMatchFacade autoMatchFacade; + @Autowired + private BasicConfigFacade basicConfigFacade; + + private static Map colorMap = new HashMap<>(); + + static { + colorMap.put("224b2329-cb82-4da3-a071-8527f8283aab", "risk_" + RiskDefaultTypeEnum.getColor("紫色")); + colorMap.put("e637b361-99cf-41eb-84f2-f0dab596e928", "risk_" + RiskDefaultTypeEnum.getColor("绿色")); + colorMap.put("eb146c03-b19f-4e28-b85f-fda574b2283b", "risk_" + RiskDefaultTypeEnum.getColor("红色")); + colorMap.put("49a36aea-c5b6-4162-87d2-9eb3c6ec00c2", "risk_" + RiskDefaultTypeEnum.getColor("橙色")); + colorMap.put("315107bd-91fe-42a1-9237-752f3c046a40", "risk_" + RiskDefaultTypeEnum.getColor("黄色")); + } + + /** + * 页面初始化数据 + * + * @return + */ + public BaseResponse initHosptialHighRisk() { + BaseResponse baseResponse = new BaseResponse(); + Map map = new HashMap<>(); + map.put("gwdj", HisptialRiskTypeEnum.getHandlingSuggestionEnums()); + map.put("gwfz", basicConfigFacade.getBaseicConfigByParentId(SystemConfig.GWFZ)); + baseResponse.setObject(map); + return baseResponse; + } /** * 新增自定义高危 + * * @param hosptialHighRisk * @return */ - public BaseResponse addHosptialHighRisk(HosptialHighRisk hosptialHighRisk, int userId){ - BaseResponse baseResponse = new BaseResponse(); + public BaseResponse addHosptialHighRisk(HosptialHighRisk hosptialHighRisk, int userId) { + + String hospitalId = autoMatchFacade.getHospitalId(userId); - hosptialHighRisk.setHospitalId(hospitalId); - hosptialHighRiskService.addHosptialHighRisk(hosptialHighRisk); + HosptialHighRiskQuery hosptialHighRiskQuery = new HosptialHighRiskQuery(); + hosptialHighRiskQuery.setHospitalId(hospitalId); + hosptialHighRiskQuery.setColor(hosptialHighRisk.getColor()); + hosptialHighRiskQuery.setName(hosptialHighRisk.getName()); + + List hosptialHighRisks = hosptialHighRiskService.queryHosptialHighRisk(hosptialHighRiskQuery); + + BaseResponse baseResponse = new BaseResponse(); + if (CollectionUtils.isEmpty(hosptialHighRisks)) { + hosptialHighRisk.setEnable(1); + hosptialHighRisk.setYn(1); + hosptialHighRisk.setHospitalId(hospitalId); + hosptialHighRiskService.addHosptialHighRisk(hosptialHighRisk); + } else { + baseResponse.setErrorcode(ErrorCodeConstants.DATA_EXIST); + baseResponse.setErrormsg("添加的高危因数名称已经存在,请勿重复添加"); + } return baseResponse; } /** * 根据用户id查询自定义高危 + * * @param userId 当前登录用户id * @return */ - public BaseResponse getHosptialHighRisk(int userId){ + public BaseResponse getHosptialHighRisk(int userId) { BaseResponse baseResponse = new BaseResponse(); String hospitalId = autoMatchFacade.getHospitalId(userId); HosptialHighRiskQuery hosptialHighRiskQuery = new HosptialHighRiskQuery(); hosptialHighRiskQuery.setHospitalId(hospitalId); List hosptialHighRisks = hosptialHighRiskService.queryHosptialHighRisk(hosptialHighRiskQuery); - baseResponse.setObject(hosptialHighRisks); + if (CollectionUtils.isNotEmpty(hosptialHighRisks)) { + for (HosptialHighRisk hr : hosptialHighRisks) { + hr.setColor(colorMap.get(hr.getColor())); + } + baseResponse.setObject(hosptialHighRisks); + } + return baseResponse; } /** * 根据Id,删除自定义高危 + * * @param id * @return */ -- 1.8.3.1