From b799ea30bbbfcd0d67cdaafa06e5a92f537af101 Mon Sep 17 00:00:00 2001 From: liquanyu Date: Mon, 25 Jul 2016 08:45:04 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8C=BB=E9=99=A2=E5=9F=BA=E7=A1=80=E5=88=97?= =?UTF-8?q?=E8=A1=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../platform/common/enums/HospitalStatusEnums.java | 62 ++++++++++++++++++++++ .../platform/data/service/impl/SmsServiceImpl.java | 59 ++++++++++++++++++-- .../operate/web/facade/SmsConfigFacade.java | 11 ++-- 3 files changed, 121 insertions(+), 11 deletions(-) create mode 100644 platform-common/src/main/java/com/lyms/platform/common/enums/HospitalStatusEnums.java diff --git a/platform-common/src/main/java/com/lyms/platform/common/enums/HospitalStatusEnums.java b/platform-common/src/main/java/com/lyms/platform/common/enums/HospitalStatusEnums.java new file mode 100644 index 0000000..a91bcfb --- /dev/null +++ b/platform-common/src/main/java/com/lyms/platform/common/enums/HospitalStatusEnums.java @@ -0,0 +1,62 @@ +package com.lyms.platform.common.enums; + + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * 医院运行状态 + * Created by lqy on 2016/06/27 + */ +public enum HospitalStatusEnums { + + + ZSYX(0,"正式运行"),SYX(1,"试运行"),TZYX(2,"停止运行"); + + HospitalStatusEnums(int id, String name) { + this.id = id; + this.name = name; + + } + private int id; + private String name; + + public int getId() { + return id; + } + + public void setId(int id) { + this.id = id; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public static List getHospitalStatusEnums() { + + List list = new ArrayList<>(); + for (HospitalStatusEnums e : HospitalStatusEnums.values()) { + Map rootMap = new HashMap(); + rootMap.put("id", e.getId()); + rootMap.put("name", e.getName()); + list.add(rootMap); + } + return list; + } + + public static String getNameById(int id){ + for(HospitalStatusEnums enums:values()){ + if(id==enums.getId()){ + return enums.getName(); + } + } + return ""; + } +} diff --git a/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/SmsServiceImpl.java b/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/SmsServiceImpl.java index e8dd20e..4461fc2 100644 --- a/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/SmsServiceImpl.java +++ b/platform-data-api/src/main/java/com/lyms/platform/data/service/impl/SmsServiceImpl.java @@ -12,8 +12,11 @@ import com.lyms.platform.data.pojo.MessageRequest; import com.lyms.platform.data.service.SmsService; import com.lyms.platform.data.util.AmsMessageService; import com.lyms.platform.data.util.SaveMessageService; +import com.lyms.platform.permission.model.Organization; +import com.lyms.platform.permission.model.OrganizationQuery; import com.lyms.platform.permission.model.Users; import com.lyms.platform.permission.model.UsersQuery; +import com.lyms.platform.permission.service.OrganizationService; import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; import com.lyms.platform.query.*; @@ -57,6 +60,8 @@ public class SmsServiceImpl implements SmsService{ @Autowired private PostReviewService postReviewService; + @Autowired + private OrganizationService organizationService; /** * 生成孕妇ams指导短信 @@ -78,10 +83,16 @@ public class SmsServiceImpl implements SmsService{ for(SmsConfigModel config : configs) { String hospitalId = config.getHospitalId(); - if (hospitalId == null) + if (StringUtils.isEmpty(hospitalId)) + { + continue; + } + //判断医院是否运行 + if (!isRunning(hospitalId)) { continue; } + String strService = config.getSmsService(); //判断消息服务是否启动 @@ -140,6 +151,7 @@ public class SmsServiceImpl implements SmsService{ messagePrefix = res == "" ? messagePrefix : res; } + //每周几发送的指导实践 String timeStr = config.getGuideTime(); if (StringUtils.isEmpty(timeStr)) { @@ -279,7 +291,13 @@ public class SmsServiceImpl implements SmsService{ for(SmsConfigModel config : configs) { String hospitalId = config.getHospitalId(); - if (hospitalId == null) + if (StringUtils.isEmpty(hospitalId)) + { + continue; + } + + //判断医院是否运行 + if (!isRunning(hospitalId)) { continue; } @@ -398,7 +416,13 @@ public class SmsServiceImpl implements SmsService{ for(SmsConfigModel config : configs) { String hospitalId = config.getHospitalId(); - if (hospitalId == null) + if (StringUtils.isEmpty(hospitalId)) + { + continue; + } + + //判断医院是否运行 + if (!isRunning(hospitalId)) { continue; } @@ -576,6 +600,12 @@ public class SmsServiceImpl implements SmsService{ continue; } + //判断医院是否运行 + if (!isRunning(hospitalId)) + { + continue; + } + SmsConfigModel config = getSmsConfig(configs,hospitalId); //false 表示该服务没有启动 @@ -1998,7 +2028,7 @@ public class SmsServiceImpl implements SmsService{ { if (StringUtils.isNotEmpty(repalceStr)) { - return repalceStr.replace("{{姓名}}",name); + return repalceStr.replace("{{姓名}}", name); } return repalceStr; } @@ -2136,6 +2166,27 @@ public class SmsServiceImpl implements SmsService{ return false; } + /** + * 判断医院是否运行 + * @return + */ + private boolean isRunning(String hid) + { + OrganizationQuery organizationQuery = new OrganizationQuery(); + organizationQuery.setYn(YnEnums.YES.getId()); + organizationQuery.setId(Integer.parseInt(hid)); + List organizations = organizationService.queryOrganization(organizationQuery); + if (CollectionUtils.isNotEmpty(organizations)) + { + Organization org = organizations.get(0); + if (org != null && org.getStatus() != null && org.getStatus() == HospitalStatusEnums.ZSYX.getId()) + { + return true; + } + } + return false; + } + /** * 获取最后一次高危产检的高危信息 diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java index a3f7d38..f0bf50d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/SmsConfigFacade.java @@ -2,10 +2,7 @@ package com.lyms.platform.operate.web.facade; import com.lyms.platform.biz.service.*; import com.lyms.platform.common.constants.ErrorCodeConstants; -import com.lyms.platform.common.enums.OrganizationTypeEnum; -import com.lyms.platform.common.enums.SmsServiceEnums; -import com.lyms.platform.common.enums.WeekEnums; -import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.enums.*; import com.lyms.platform.common.result.BaseListResponse; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; @@ -554,15 +551,15 @@ public class SmsConfigFacade { if (org.getStatus() != null) { // 0运行 1试运行 2停止 - if (org.getStatus() == 0) + if (org.getStatus() == HospitalStatusEnums.ZSYX.getId()) { statusStr = "正式运行"; } - else if (org.getStatus() == 1) + else if (org.getStatus() == HospitalStatusEnums.SYX.getId()) { statusStr = "试运行"; } - else if (org.getStatus() == 2) { + else if (org.getStatus() == HospitalStatusEnums.TZYX.getId()) { statusStr = "停止运行"; } } -- 1.8.3.1