diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IServiceMonitorDao.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IServiceMonitorDao.java new file mode 100644 index 0000000..0abf042 --- /dev/null +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/IServiceMonitorDao.java @@ -0,0 +1,22 @@ +package com.lyms.platform.biz.dal; + +import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.dao.operator.Page; +import com.lyms.platform.pojo.ServiceMonitor; + +import java.util.List; + +public interface IServiceMonitorDao { + + public ServiceMonitor add(ServiceMonitor obj); + + public void update(ServiceMonitor obj, String id); + + public ServiceMonitor getById(String id); + + public int queryCount(MongoQuery query); + + public List query(MongoQuery query); + + public Page findWithPage(MongoQuery query); +} diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/ServiceMonitorImpl.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/ServiceMonitorImpl.java new file mode 100644 index 0000000..9961a31 --- /dev/null +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/dal/impl/ServiceMonitorImpl.java @@ -0,0 +1,48 @@ +package com.lyms.platform.biz.dal.impl; + +import com.lyms.platform.biz.dal.IServiceMonitorDao; +import com.lyms.platform.common.dao.BaseMongoDAOImpl; +import com.lyms.platform.common.dao.operator.MongoCondition; +import com.lyms.platform.common.dao.operator.MongoOper; +import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.dao.operator.Page; +import com.lyms.platform.pojo.ServiceMonitor; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository("serviceMonitorDao") +public class ServiceMonitorImpl extends BaseMongoDAOImpl implements IServiceMonitorDao { + + + @Override + public ServiceMonitor add(ServiceMonitor obj) { + return save(obj); + } + + @Override + public void update(ServiceMonitor obj, String id) { + update(new MongoQuery(new MongoCondition("id", id, MongoOper.IS)).convertToMongoQuery(), obj); + } + + + @Override + public ServiceMonitor getById(String id) { + return findById(id); + } + + @Override + public int queryCount(MongoQuery query) { + return (int) count(query.convertToMongoQuery()); + } + + @Override + public List query(MongoQuery query) { + return find(query.convertToMongoQuery()); + } + + @Override + public Page findWithPage(MongoQuery query) { + return findPage(query.convertToMongoQuery()); + } +} \ No newline at end of file diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/ServiceMonitorService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/ServiceMonitorService.java new file mode 100644 index 0000000..23a29ad --- /dev/null +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/ServiceMonitorService.java @@ -0,0 +1,74 @@ +package com.lyms.platform.biz.service; + +import com.lyms.platform.biz.dal.IServiceMonitorDao; +import com.lyms.platform.common.dao.BaseQuery; +import com.lyms.platform.common.dao.operator.MongoCondition; +import com.lyms.platform.common.dao.operator.MongoOper; +import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.pojo.ServiceMonitor; +import org.apache.commons.lang.ObjectUtils; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * Created by Zhang.Rui on 2016/6/12. + */ +@Service +public class ServiceMonitorService { + @Autowired + private IServiceMonitorDao serviceMonitorDao; + + public void add(ServiceMonitor serviceMonitor) { + serviceMonitor.setYn(YnEnums.YES.getId()); + serviceMonitor.setCreateDate(System.currentTimeMillis()); + serviceMonitorDao.add(serviceMonitor); + } + + public void delete(String id) { + ServiceMonitor serviceMonitor = serviceMonitorDao.getById(id); + if(null != serviceMonitor) { + serviceMonitor.setYn(YnEnums.NO.getId()); + serviceMonitorDao.update(serviceMonitor, id); + } + } + + public List queryByFullName(String fullName) { + MongoCondition mongoCondition = MongoCondition.newInstance(); + + mongoCondition=MongoCondition.newInstance("name", fullName, MongoOper.IS); + mongoCondition = mongoCondition.andCondition(new MongoCondition("yn", YnEnums.YES.getId(), MongoOper.IS)); + MongoQuery mongoQuery = mongoCondition.toMongoQuery(); + + return serviceMonitorDao.query(mongoQuery.addOrder(Sort.Direction.DESC, "createDate")); + } + + public List query(BaseQuery baseQuery) { + MongoCondition mongoCondition = MongoCondition.newInstance(); + + if(StringUtils.isNotBlank(baseQuery.getKeyword())) { + mongoCondition=MongoCondition.newInstance("name", baseQuery.getKeyword(), MongoOper.LIKE); + } + mongoCondition = mongoCondition.andCondition(new MongoCondition("yn", YnEnums.YES.getId(), MongoOper.IS)); + + MongoQuery mongoQuery = mongoCondition.toMongoQuery(); + if(null != baseQuery.getNeed()) { + baseQuery.mysqlBuild((int) serviceMonitorDao.queryCount(mongoQuery)); + mongoQuery.start(baseQuery.getOffset()).end(baseQuery.getLimit()); + } + + return serviceMonitorDao.query(mongoQuery.addOrder(Sort.Direction.DESC, "createDate")); + } + + public ServiceMonitor queryById(String id) { + return serviceMonitorDao.getById(id); + } + + public void update(String id, ServiceMonitor serviceMonitor) { + serviceMonitorDao.update(serviceMonitor, id); + } +} diff --git a/platform-common/src/main/java/com/lyms/platform/common/dao/BaseQuery.java b/platform-common/src/main/java/com/lyms/platform/common/dao/BaseQuery.java index 744dc9c..cf37e79 100644 --- a/platform-common/src/main/java/com/lyms/platform/common/dao/BaseQuery.java +++ b/platform-common/src/main/java/com/lyms/platform/common/dao/BaseQuery.java @@ -8,7 +8,7 @@ import java.util.Date; import java.util.List; public class BaseQuery { - + private String keyword; // 排序 private String sort; // 是否分页 @@ -40,6 +40,13 @@ public class BaseQuery { private Date endTimeStart; private Date endTimeEnd; + public String getKeyword() { + return keyword; + } + + public void setKeyword(String keyword) { + this.keyword = keyword; + } public Date getStartTimeStart() { return startTimeStart; diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/ServiceMonitor.java b/platform-dal/src/main/java/com/lyms/platform/pojo/ServiceMonitor.java new file mode 100644 index 0000000..08b8154 --- /dev/null +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/ServiceMonitor.java @@ -0,0 +1,64 @@ +package com.lyms.platform.pojo; + +import org.springframework.data.mongodb.core.mapping.Document; + +/** + * Created by Zhang.Rui on 2016/6/12. + */ +@Document(collection="lyms_serviceMonitor") +public class ServiceMonitor { + private String id; + private Integer type; // 1短信 2邮箱 + private String name; + private String text; // 多个邮箱或者多个手机号 + private Long createDate; + private Integer yn; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public Integer getYn() { + return yn; + } + + public void setYn(Integer yn) { + this.yn = yn; + } + + public Long getCreateDate() { + return createDate; + } + + public void setCreateDate(Long createDate) { + this.createDate = createDate; + } + + public Integer getType() { + return type; + } + + public void setType(Integer type) { + this.type = type; + } + + public String getName() { + return name; + } + + public void setName(String name) { + this.name = name; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } +} diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ServiceMonitorController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ServiceMonitorController.java new file mode 100644 index 0000000..89049eb --- /dev/null +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/ServiceMonitorController.java @@ -0,0 +1,90 @@ +package com.lyms.platform.operate.web.controller; + +import com.lyms.platform.biz.service.ServiceMonitorService; +import com.lyms.platform.common.annotation.TokenRequired; +import com.lyms.platform.common.constants.ErrorCodeConstants; +import com.lyms.platform.common.dao.BaseQuery; +import com.lyms.platform.common.dao.operator.MongoCondition; +import com.lyms.platform.common.dao.operator.MongoOper; +import com.lyms.platform.common.dao.operator.MongoQuery; +import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.result.BaseListResponse; +import com.lyms.platform.common.result.BaseResponse; +import com.lyms.platform.common.utils.ResultUtils; +import com.lyms.platform.pojo.ServiceMonitor; +import org.apache.commons.lang.StringUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.data.domain.Sort; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestMethod; +import org.springframework.web.bind.annotation.ResponseBody; + +import javax.servlet.http.HttpServletResponse; +import java.util.List; + +/** + * Created by Zhang.Rui on 2016/6/12. + */ +@Controller +public class ServiceMonitorController { + @Autowired + private ServiceMonitorService serviceMonitorService; + + @ResponseBody +// @TokenRequired + @RequestMapping(value = "/serviceMonitor",method = RequestMethod.POST) + public void add(ServiceMonitor serviceMonitor, HttpServletResponse httpServletResponse) { + if(serviceMonitorService.queryByFullName(serviceMonitor.getName()).size() > 0) { + ResultUtils.buildParameterErrorResultAndWrite(httpServletResponse, "名称已存在"); + return; + } + + serviceMonitorService.add(serviceMonitor); + ResultUtils.buildSuccessResultAndWrite(httpServletResponse); + } + + @ResponseBody +// @TokenRequired + @RequestMapping(value = "/serviceMonitor",method = RequestMethod.DELETE) + public void delete(String id, HttpServletResponse httpServletResponse) { + serviceMonitorService.delete(id); + ResultUtils.buildSuccessResultAndWrite(httpServletResponse); + } + + @ResponseBody +// @TokenRequired + @RequestMapping(value = "/serviceMonitor",method = RequestMethod.GET) + public BaseListResponse query(BaseQuery baseQuery) { + baseQuery.setNeed("true"); + + BaseListResponse baseResponse = new BaseListResponse(); + baseResponse.setData(serviceMonitorService.query(baseQuery)); + baseResponse.setPageInfo(baseQuery.getPageInfo()); + baseResponse.setErrorcode(ErrorCodeConstants.SUCCESS); + return baseResponse; + } + + @ResponseBody +// @TokenRequired + @RequestMapping(value = "/serviceMonitor/{id}",method = RequestMethod.PUT) + public void update(ServiceMonitor serviceMonitor,@PathVariable String id, HttpServletResponse httpServletResponse) { + ServiceMonitor serviceMonitor1 = serviceMonitorService.queryById(id); + + if(null != serviceMonitor1) { + if(!serviceMonitor1.getName().equals(serviceMonitor.getName())) { + if(serviceMonitorService.queryByFullName(serviceMonitor.getName()).size() > 0) { + ResultUtils.buildParameterErrorResultAndWrite(httpServletResponse, "名称已存在"); + return; + } + } + + serviceMonitorService.update(id, serviceMonitor); + ResultUtils.buildSuccessResultAndWrite(httpServletResponse); + } + } + + + +}