diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/param/CommunityQuery.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/param/CommunityQuery.java index 307251e..eaf525b 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/param/CommunityQuery.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/param/CommunityQuery.java @@ -8,15 +8,8 @@ import com.lyms.platform.common.dao.BaseQuery; public class CommunityQuery extends BaseQuery { private String keyword; private String id; - private String level; - public String getLevel() { - return level; - } - public void setLevel(String level) { - this.level = level; - } public String getId() { return id; diff --git a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/CommunityConfigService.java b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/CommunityConfigService.java index e721201..0ebcbc3 100644 --- a/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/CommunityConfigService.java +++ b/platform-biz-patient-service/src/main/java/com/lyms/platform/biz/service/CommunityConfigService.java @@ -46,12 +46,8 @@ public class CommunityConfigService { mongoCondition = mongoCondition.orCondition(new MongoCondition[]{new MongoCondition("name", communityQuery.getKeyword(), MongoOper.LIKE), new MongoCondition("gxxq", communityQuery.getKeyword(), MongoOper.LIKE)}); } mongoCondition.and("yn", YnEnums.YES.getId(), MongoOper.IS); - if(null != communityQuery.getLevel() && communityQuery.getLevel().equals("3")) { - mongoCondition = mongoCondition.andCondition(new MongoCondition("areaId", communityQuery.getId(), MongoOper.IS)); - } else if(null != communityQuery.getLevel() && communityQuery.getLevel().equals("2")) { - mongoCondition = mongoCondition.andCondition(new MongoCondition("cityId", communityQuery.getId(), MongoOper.IS)); - } else if(null != communityQuery.getLevel() && communityQuery.getLevel().equals("1")) { - mongoCondition = mongoCondition.andCondition(new MongoCondition("provinceId", communityQuery.getId(), MongoOper.IS)); + if(null != communityQuery.getId() ) { + mongoCondition = mongoCondition.andCondition(new MongoCondition("areas", communityQuery.getId(), MongoOper.IS)); } MongoQuery mongoQuery = mongoCondition.toMongoQuery(); diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/CommunityConfig.java b/platform-dal/src/main/java/com/lyms/platform/pojo/CommunityConfig.java index d685e62..3a409c9 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/CommunityConfig.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/CommunityConfig.java @@ -4,6 +4,7 @@ import com.lyms.platform.common.enums.YnEnums; import org.springframework.data.mongodb.core.mapping.Document; import java.util.List; +import java.util.Map; /** * Created by Zhang.Rui on 2016/3/18. @@ -15,33 +16,23 @@ public class CommunityConfig { private String name; private Integer yn; private String gxxq; //管辖小区 - private Integer provinceId; - private Integer cityId; - private Integer areaId; + private List areas; + private String areaNames; - - public Integer getProvinceId() { - return provinceId; - } - - public void setProvinceId(Integer provinceId) { - this.provinceId = provinceId; - } - - public Integer getCityId() { - return cityId; + public String getAreaNames() { + return areaNames; } - public void setCityId(Integer cityId) { - this.cityId = cityId; + public void setAreaNames(String areaNames) { + this.areaNames = areaNames; } - public Integer getAreaId() { - return areaId; + public List getAreas() { + return areas; } - public void setAreaId(Integer areaId) { - this.areaId = areaId; + public void setAreas(List areas) { + this.areas = areas; } public String getGxxq() { diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CommunityConfigController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CommunityConfigController.java index de00fd1..acea8b3 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CommunityConfigController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/CommunityConfigController.java @@ -1,5 +1,7 @@ package com.lyms.platform.operate.web.controller; +import java.util.ArrayList; +import java.util.Collections; import java.util.List; import javax.validation.Valid; @@ -10,6 +12,7 @@ import com.lyms.platform.biz.service.PatientsService; import com.lyms.platform.common.annotation.TokenRequired; import com.lyms.platform.common.base.BaseController; import com.lyms.platform.common.enums.YnEnums; +import com.lyms.platform.common.utils.SystemConfig; import com.lyms.platform.operate.web.facade.PuerperaManagerFacade; import com.lyms.platform.operate.web.request.PuerperaManagerQueryRequest; import com.lyms.platform.operate.web.result.FrontEndResult; @@ -98,12 +101,25 @@ public class CommunityConfigController extends RestController { @ResponseBody @TokenRequired public FrontEndResult queryCommunity(CommunityQuery communityQuery) { - List communityConfigList = communityConfigService.queryCommunity(communityQuery); BasicConfig config = basicConfigService.getOneBasicConfigById(communityQuery.getId()); - if(null == config) { + if(null != communityQuery.getId() && null == config) { return FrontEndResult.ini(ErrorCodeConstants.PARAMETER_ERROR, "address ID error"); } + List communityConfigList = communityConfigService.queryCommunity(communityQuery); if(null != communityConfigList) { + for(CommunityConfig communityConfig : communityConfigList) { + String areaNames = ""; + for(String s : communityConfig.getAreas()) { + config = basicConfigService.getOneBasicConfigById(s); + if(null != config) { + areaNames += config.getName() + ", "; + } + } + if(2 < areaNames.length()) { + communityConfig.setAreaNames(areaNames.substring(0, areaNames.length()-2)); + } + } + return FrontEndResult.ini().setData(communityConfigList).setPageInfo(communityQuery.getPageInfo()).setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("查询成功"); } return FrontEndResult.ini(ErrorCodeConstants.NO_DATA, "没有数据"); @@ -118,13 +134,22 @@ public class CommunityConfigController extends RestController { @TokenRequired public BaseResponse appendArea(@RequestBody @Valid CommunityConfigRequest communityConfigRequest) { CommunityConfig communityConfig = null; + BasicConfig basicConfig = null; + List areaIds = new ArrayList<>(); for(String tmp : communityConfigRequest.getNames()) { + areaIds = new ArrayList<>(); communityConfig = new CommunityConfig(); communityConfig.setYn(YnEnums.YES.getId()); communityConfig.setName(tmp); - communityConfig.setProvinceId(communityConfigRequest.getProvinceId()); - communityConfig.setCityId(communityConfigRequest.getCityId()); - communityConfig.setAreaId(communityConfigRequest.getAreaId()); + basicConfig = basicConfigService.getOneBasicConfigById(communityConfigRequest.getAreaId()); + while(null != basicConfig ) { + areaIds.add(basicConfig.getId()); + if(SystemConfig.CHINA_BASIC_ID.equals(basicConfig.getParentId())) break; + basicConfig = basicConfigService.getOneBasicConfigById(basicConfig.getParentId()); + } + Collections.reverse(areaIds); + communityConfig.setAreas(areaIds); + communityConfigService.appendCommunity(communityConfig); } return new BaseResponse() diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommunityConfigRequest.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommunityConfigRequest.java index 4bd0dca..ba861b2 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommunityConfigRequest.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/CommunityConfigRequest.java @@ -3,6 +3,7 @@ package com.lyms.platform.operate.web.request; import com.lyms.platform.common.core.annotation.form.Form; import javax.validation.constraints.NotNull; +import java.util.Map; /** * Created by Zhang.Rui on 2016/3/18. @@ -11,43 +12,26 @@ import javax.validation.constraints.NotNull; public class CommunityConfigRequest { private String id; - private Integer provinceId; - private Integer cityId; - private Integer areaId; + private String areaId; @NotNull(message = "添加内容不能为空") private String[] names; - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public Integer getProvinceId() { - return provinceId; - } - - public void setProvinceId(Integer provinceId) { - this.provinceId = provinceId; + public String getAreaId() { + return areaId; } - public Integer getCityId() { - return cityId; + public void setAreaId(String areaId) { + this.areaId = areaId; } - public void setCityId(Integer cityId) { - this.cityId = cityId; + public String getId() { + return id; } - public Integer getAreaId() { - return areaId; + public void setId(String id) { + this.id = id; } - public void setAreaId(Integer areaId) { - this.areaId = areaId; - } public String[] getNames() { return names;