Commit 323193bb0ab51f42e838680534a000e0ee34a696
1 parent
9aa404f65b
Exists in
master
and in
6 other branches
孕前优生模块
Showing 4 changed files with 339 additions and 13 deletions
- platform-dal/src/main/java/com/lyms/platform/pojo/PreEugenicsBaseModel.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseListRequest.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PreEugenicsBaseListResult.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java
platform-dal/src/main/java/com/lyms/platform/pojo/PreEugenicsBaseModel.java
View file @
323193b
| ... | ... | @@ -104,9 +104,14 @@ |
| 104 | 104 | private String husbandAccountCity; |
| 105 | 105 | |
| 106 | 106 | /** |
| 107 | - * 丈夫户口所在地 县 | |
| 107 | + * 丈夫户口所在地 区 | |
| 108 | 108 | */ |
| 109 | - private String husbandAccountCounty; | |
| 109 | + private String husbandAccountArea; | |
| 110 | + | |
| 111 | + /** | |
| 112 | + * 丈夫户口所在地 街道 | |
| 113 | + */ | |
| 114 | + private String husbandAccountStreet; | |
| 110 | 115 | |
| 111 | 116 | /** |
| 112 | 117 | * 丈夫户口所在地 详细地址 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PreEugenicsBaseListRequest.java
View file @
323193b
| ... | ... | @@ -10,9 +10,128 @@ |
| 10 | 10 | public class PreEugenicsBaseListRequest extends BaseQuery { |
| 11 | 11 | |
| 12 | 12 | /** |
| 13 | - * 身份证 | |
| 13 | + * 丈夫身份证号码/妻子身份证号码 | |
| 14 | 14 | */ |
| 15 | 15 | private String idCardNo; |
| 16 | + | |
| 17 | + /** | |
| 18 | + * 丈夫/妻子手机号 | |
| 19 | + */ | |
| 20 | + private String phone; | |
| 21 | + | |
| 22 | + /** | |
| 23 | + * 丈夫/妻子姓名 | |
| 24 | + */ | |
| 25 | + private String name; | |
| 26 | + | |
| 27 | + /** | |
| 28 | + * 丈夫/妻子编号 | |
| 29 | + */ | |
| 30 | + private String number; | |
| 31 | + | |
| 32 | + /** | |
| 33 | + * 医院 | |
| 34 | + */ | |
| 35 | + private String hospitalId; | |
| 36 | + | |
| 37 | + /** | |
| 38 | + * 创建人 | |
| 39 | + */ | |
| 40 | + private String createUser; | |
| 41 | + | |
| 42 | + /** | |
| 43 | + * 创建时间 | |
| 44 | + */ | |
| 45 | + private String createTime; | |
| 46 | + | |
| 47 | + /** | |
| 48 | + * 丈夫/妻子 现住址/户口所在地 | |
| 49 | + */ | |
| 50 | + private String province; | |
| 51 | + private String city; | |
| 52 | + private String area; | |
| 53 | + private String street; | |
| 54 | + | |
| 55 | + | |
| 56 | + public String getPhone() { | |
| 57 | + return phone; | |
| 58 | + } | |
| 59 | + | |
| 60 | + public void setPhone(String phone) { | |
| 61 | + this.phone = phone; | |
| 62 | + } | |
| 63 | + | |
| 64 | + public String getName() { | |
| 65 | + return name; | |
| 66 | + } | |
| 67 | + | |
| 68 | + public void setName(String name) { | |
| 69 | + this.name = name; | |
| 70 | + } | |
| 71 | + | |
| 72 | + public String getNumber() { | |
| 73 | + return number; | |
| 74 | + } | |
| 75 | + | |
| 76 | + public void setNumber(String number) { | |
| 77 | + this.number = number; | |
| 78 | + } | |
| 79 | + | |
| 80 | + public String getHospitalId() { | |
| 81 | + return hospitalId; | |
| 82 | + } | |
| 83 | + | |
| 84 | + public void setHospitalId(String hospitalId) { | |
| 85 | + this.hospitalId = hospitalId; | |
| 86 | + } | |
| 87 | + | |
| 88 | + public String getCreateUser() { | |
| 89 | + return createUser; | |
| 90 | + } | |
| 91 | + | |
| 92 | + public void setCreateUser(String createUser) { | |
| 93 | + this.createUser = createUser; | |
| 94 | + } | |
| 95 | + | |
| 96 | + public String getCreateTime() { | |
| 97 | + return createTime; | |
| 98 | + } | |
| 99 | + | |
| 100 | + public void setCreateTime(String createTime) { | |
| 101 | + this.createTime = createTime; | |
| 102 | + } | |
| 103 | + | |
| 104 | + public String getProvince() { | |
| 105 | + return province; | |
| 106 | + } | |
| 107 | + | |
| 108 | + public void setProvince(String province) { | |
| 109 | + this.province = province; | |
| 110 | + } | |
| 111 | + | |
| 112 | + public String getCity() { | |
| 113 | + return city; | |
| 114 | + } | |
| 115 | + | |
| 116 | + public void setCity(String city) { | |
| 117 | + this.city = city; | |
| 118 | + } | |
| 119 | + | |
| 120 | + public String getArea() { | |
| 121 | + return area; | |
| 122 | + } | |
| 123 | + | |
| 124 | + public void setArea(String area) { | |
| 125 | + this.area = area; | |
| 126 | + } | |
| 127 | + | |
| 128 | + public String getStreet() { | |
| 129 | + return street; | |
| 130 | + } | |
| 131 | + | |
| 132 | + public void setStreet(String street) { | |
| 133 | + this.street = street; | |
| 134 | + } | |
| 16 | 135 | |
| 17 | 136 | public String getIdCardNo() { |
| 18 | 137 | return idCardNo; |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/PreEugenicsBaseListResult.java
View file @
323193b
| 1 | +package com.lyms.platform.operate.web.result; | |
| 2 | + | |
| 3 | +import com.lyms.platform.pojo.PreEugenicsBaseModel; | |
| 4 | + | |
| 5 | +public class PreEugenicsBaseListResult extends PreEugenicsBaseModel { | |
| 6 | + | |
| 7 | + /** | |
| 8 | + * 丈夫户口所在地 省市区街道详细地址 | |
| 9 | + */ | |
| 10 | + private String husbandAccountAddressStr; | |
| 11 | + | |
| 12 | + /** | |
| 13 | + * 丈夫现住址 省市区街道详细地址 | |
| 14 | + */ | |
| 15 | + private String husbandCurrentAddressStr; | |
| 16 | + | |
| 17 | + /** | |
| 18 | + * 妻子户口所在地 省市区街道详细地址 | |
| 19 | + */ | |
| 20 | + private String wifeAccountAddressStr; | |
| 21 | + | |
| 22 | + /** | |
| 23 | + * 妻子现住地址 省市区街道详细地址 | |
| 24 | + */ | |
| 25 | + private String wifeCurrentAddressStr; | |
| 26 | + | |
| 27 | + public String getHusbandAccountAddressStr() { | |
| 28 | + return husbandAccountAddressStr; | |
| 29 | + } | |
| 30 | + | |
| 31 | + public void setHusbandAccountAddressStr(String husbandAccountAddressStr) { | |
| 32 | + this.husbandAccountAddressStr = husbandAccountAddressStr; | |
| 33 | + } | |
| 34 | + | |
| 35 | + public String getHusbandCurrentAddressStr() { | |
| 36 | + return husbandCurrentAddressStr; | |
| 37 | + } | |
| 38 | + | |
| 39 | + public void setHusbandCurrentAddressStr(String husbandCurrentAddressStr) { | |
| 40 | + this.husbandCurrentAddressStr = husbandCurrentAddressStr; | |
| 41 | + } | |
| 42 | + | |
| 43 | + public String getWifeAccountAddressStr() { | |
| 44 | + return wifeAccountAddressStr; | |
| 45 | + } | |
| 46 | + | |
| 47 | + public void setWifeAccountAddressStr(String wifeAccountAddressStr) { | |
| 48 | + this.wifeAccountAddressStr = wifeAccountAddressStr; | |
| 49 | + } | |
| 50 | + | |
| 51 | + public String getWifeCurrentAddressStr() { | |
| 52 | + return wifeCurrentAddressStr; | |
| 53 | + } | |
| 54 | + | |
| 55 | + public void setWifeCurrentAddressStr(String wifeCurrentAddressStr) { | |
| 56 | + this.wifeCurrentAddressStr = wifeCurrentAddressStr; | |
| 57 | + } | |
| 58 | +} |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/PreEugebicsServiceImpl.java
View file @
323193b
| 1 | 1 | package com.lyms.platform.operate.web.service.impl; |
| 2 | 2 | |
| 3 | +import java.util.Date; | |
| 4 | +import java.util.LinkedList; | |
| 5 | +import java.util.List; | |
| 6 | + | |
| 7 | +import org.springframework.beans.factory.annotation.Autowired; | |
| 8 | +import org.springframework.data.domain.Sort; | |
| 9 | +import org.springframework.data.mongodb.core.MongoTemplate; | |
| 10 | +import org.springframework.data.mongodb.core.query.Criteria; | |
| 11 | +import org.springframework.data.mongodb.core.query.Query; | |
| 12 | +import org.springframework.data.mongodb.core.query.Update; | |
| 13 | +import org.springframework.stereotype.Service; | |
| 14 | + | |
| 3 | 15 | import com.lyms.platform.biz.service.BasicConfigService; |
| 16 | +import com.lyms.platform.common.constants.ErrorCodeConstants; | |
| 4 | 17 | import com.lyms.platform.common.result.BaseListResponse; |
| 5 | 18 | import com.lyms.platform.common.result.BaseResponse; |
| 19 | +import com.lyms.platform.common.result.CommonResult; | |
| 6 | 20 | import com.lyms.platform.common.utils.DateUtil; |
| 21 | +import com.lyms.platform.common.utils.MongoConvertHelper; | |
| 22 | +import com.lyms.platform.common.utils.ReflectionUtils; | |
| 23 | +import com.lyms.platform.common.utils.StringUtils; | |
| 7 | 24 | import com.lyms.platform.operate.web.request.PreEugenicsBaseListRequest; |
| 8 | 25 | import com.lyms.platform.operate.web.request.PreEugenicsBaseRequest; |
| 26 | +import com.lyms.platform.operate.web.result.PreEugenicsBaseListResult; | |
| 9 | 27 | import com.lyms.platform.operate.web.service.IPreEugenicsService; |
| 28 | +import com.lyms.platform.operate.web.utils.CommonsHelper; | |
| 29 | +import com.lyms.platform.pojo.CervicalCancerModel; | |
| 10 | 30 | import com.lyms.platform.pojo.PreEugenicsBaseModel; |
| 11 | 31 | import com.lyms.platform.pojo.ResidentsArchiveModel; |
| 12 | 32 | |
| 13 | -import org.springframework.beans.factory.annotation.Autowired; | |
| 14 | -import org.springframework.data.mongodb.core.MongoTemplate; | |
| 15 | -import org.springframework.data.mongodb.core.query.Criteria; | |
| 16 | -import org.springframework.data.mongodb.core.query.Query; | |
| 17 | -import org.springframework.stereotype.Service; | |
| 18 | - | |
| 19 | 33 | /** |
| 20 | 34 | * 孕前优生实现类 |
| 21 | 35 | * |
| ... | ... | @@ -93,7 +107,9 @@ |
| 93 | 107 | */ |
| 94 | 108 | @Override |
| 95 | 109 | public BaseResponse add(PreEugenicsBaseRequest param) { |
| 96 | - return null; | |
| 110 | + PreEugenicsBaseModel model = param; | |
| 111 | + mongoTemplate.insert(model); | |
| 112 | + return new BaseResponse(); | |
| 97 | 113 | } |
| 98 | 114 | |
| 99 | 115 | /** |
| ... | ... | @@ -104,7 +120,16 @@ |
| 104 | 120 | */ |
| 105 | 121 | @Override |
| 106 | 122 | public BaseResponse edit(PreEugenicsBaseRequest param) { |
| 107 | - return null; | |
| 123 | + PreEugenicsBaseModel model = param; | |
| 124 | + String id = model.getId(); | |
| 125 | + if (StringUtils.isNum(id)) { | |
| 126 | + return new BaseResponse("参数缺失", ErrorCodeConstants.PARAMETER_ERROR); | |
| 127 | + } | |
| 128 | + Query query = Query.query(Criteria.where("id").is(param.getId())); | |
| 129 | + Update update = MongoConvertHelper | |
| 130 | + .convertToNativeUpdate(ReflectionUtils.getUpdateField(param)); | |
| 131 | + mongoTemplate.updateFirst(query, update, PreEugenicsBaseModel.class); | |
| 132 | + return new BaseResponse(); | |
| 108 | 133 | } |
| 109 | 134 | |
| 110 | 135 | /** |
| 111 | 136 | |
| ... | ... | @@ -115,10 +140,118 @@ |
| 115 | 140 | */ |
| 116 | 141 | @Override |
| 117 | 142 | public BaseListResponse listPage(PreEugenicsBaseListRequest param) { |
| 118 | - return null; | |
| 143 | + Query query = new Query(); | |
| 144 | + String idCardNo = param.getIdCardNo(); | |
| 145 | + if (StringUtils.isNotEmpty(idCardNo)) { | |
| 146 | + query.addCriteria(Criteria.where("husbandCardNo").is(idCardNo).orOperator(Criteria.where("wifeCardNo").is(idCardNo))); | |
| 147 | + } | |
| 148 | + String name = param.getName(); | |
| 149 | + if (StringUtils.isNotEmpty(name)) { | |
| 150 | + query.addCriteria(Criteria.where("husbandName").is(name).orOperator(Criteria.where("wifeName").is(name))); | |
| 151 | + } | |
| 152 | + String phone = param.getPhone(); | |
| 153 | + if (StringUtils.isNotEmpty(phone)) { | |
| 154 | + query.addCriteria(Criteria.where("husbandPhone").is(phone).orOperator(Criteria.where("wifePhone").is(phone))); | |
| 155 | + } | |
| 156 | + String number = param.getNumber(); | |
| 157 | + if (StringUtils.isNotEmpty(number)) { | |
| 158 | + query.addCriteria(Criteria.where("husbandNo").is(number).orOperator(Criteria.where("wifeNo").is(number))); | |
| 159 | + } | |
| 160 | + String hospitalId = param.getHospitalId(); | |
| 161 | + if (StringUtils.isNotEmpty(hospitalId)) { | |
| 162 | + query.addCriteria(Criteria.where("hospitalId").is(hospitalId)); | |
| 163 | + } | |
| 164 | + String createUser = param.getCreateUser(); | |
| 165 | + if (StringUtils.isNotEmpty(createUser)) { | |
| 166 | + query.addCriteria(Criteria.where("createUser").is(createUser)); | |
| 167 | + } | |
| 168 | + String createTime = param.getCreateTime(); | |
| 169 | + if (StringUtils.isNotEmpty(createTime)) { | |
| 170 | + Date date = DateUtil.parseYMD(createTime); | |
| 171 | + Date dayFirstSecond = DateUtil.getDayFirstSecond(date); | |
| 172 | + Date dayLastSecond = DateUtil.getDayLastSecond(date); | |
| 173 | + query.addCriteria(Criteria.where("createUser").gte(dayFirstSecond).lte(dayLastSecond)); | |
| 174 | + } | |
| 175 | + | |
| 176 | + String provinceId = param.getProvince(); | |
| 177 | + if (StringUtils.isNotEmpty(provinceId)) { | |
| 178 | + query.addCriteria(Criteria.where("husbandAccountCity").is(provinceId) | |
| 179 | + .orOperator(Criteria.where("husbandCurrentProvince").is(provinceId)) | |
| 180 | + .orOperator(Criteria.where("wifeAccountProvince").is(provinceId)) | |
| 181 | + .orOperator(Criteria.where("wifeCurrentProvince").is(provinceId)) | |
| 182 | + ); | |
| 183 | + String cityId = param.getCity(); | |
| 184 | + if (StringUtils.isNotEmpty(cityId)) { | |
| 185 | + query.addCriteria(Criteria.where("husbandAccountCity").is(cityId) | |
| 186 | + .orOperator(Criteria.where("husbandCurrentCity").is(cityId)) | |
| 187 | + .orOperator(Criteria.where("wifeAccountCity").is(cityId)) | |
| 188 | + .orOperator(Criteria.where("wifeCurrentCity").is(cityId)) | |
| 189 | + ); | |
| 190 | + String areaId = param.getArea(); | |
| 191 | + if (StringUtils.isNotEmpty(areaId)) { | |
| 192 | + query.addCriteria(Criteria.where("husbandAccountArea").is(areaId) | |
| 193 | + .orOperator(Criteria.where("husbandCurrentArea").is(areaId)) | |
| 194 | + .orOperator(Criteria.where("wifeAccountArea").is(areaId)) | |
| 195 | + .orOperator(Criteria.where("wifeCurrentArea").is(areaId)) | |
| 196 | + ); | |
| 197 | + String streetId = param.getStreet(); | |
| 198 | + if (StringUtils.isNotEmpty(streetId)) { | |
| 199 | + query.addCriteria(Criteria.where("husbandAccountStreet").is(streetId) | |
| 200 | + .orOperator(Criteria.where("husbandCurrentStreet").is(streetId)) | |
| 201 | + .orOperator(Criteria.where("wifeAccountStreet").is(streetId)) | |
| 202 | + .orOperator(Criteria.where("wifeCurrentStreet").is(streetId)) | |
| 203 | + ); | |
| 204 | + } | |
| 205 | + } | |
| 206 | + } | |
| 207 | + } | |
| 208 | + query.with(new Sort(Sort.Direction.DESC, "created")); | |
| 209 | + long count = mongoTemplate.count(query, PreEugenicsBaseModel.class); | |
| 210 | + param.mysqlBuild((int) count); | |
| 211 | + query.skip(param.getOffset()).limit(param.getLimit()); | |
| 212 | + List<PreEugenicsBaseListResult> results = new LinkedList<>(); | |
| 213 | + List<PreEugenicsBaseModel> preEugenicsBaseModels = mongoTemplate.find(query, PreEugenicsBaseModel.class); | |
| 214 | + for (PreEugenicsBaseModel model : preEugenicsBaseModels) { | |
| 215 | + PreEugenicsBaseListResult result = getPreEugenicsBaseListResult(model); | |
| 216 | + results.add(result); | |
| 217 | + } | |
| 218 | + BaseListResponse baseListResponse = new BaseListResponse(); | |
| 219 | + baseListResponse.setData(results); | |
| 220 | + baseListResponse.setPageInfo(param.getPageInfo()); | |
| 221 | + return baseListResponse; | |
| 119 | 222 | } |
| 120 | 223 | |
| 121 | 224 | /** |
| 225 | + * 添加 丈夫户口所在地/丈夫现住址/妻子户口所在地/妻子现住地址 省市区街道详细地址 | |
| 226 | + * @param model | |
| 227 | + * @return | |
| 228 | + */ | |
| 229 | + private PreEugenicsBaseListResult getPreEugenicsBaseListResult(PreEugenicsBaseModel model) { | |
| 230 | + PreEugenicsBaseListResult result = (PreEugenicsBaseListResult) model; | |
| 231 | + result.setHusbandAccountAddressStr(CommonsHelper.getResidence(model.getHusbandAccountProvince(), | |
| 232 | + model.getHusbandAccountCity(), | |
| 233 | + model.getHusbandAccountArea(), | |
| 234 | + model.getHusbandAccountStreet(), | |
| 235 | + model.getHusbandAccountAddress(), basicConfigService)); | |
| 236 | + result.setHusbandCurrentAddressStr(CommonsHelper.getResidence(model.getHusbandCurrentProvince(), | |
| 237 | + model.getHusbandCurrentCity(), | |
| 238 | + model.getHusbandCurrentArea(), | |
| 239 | + model.getHusbandCurrentStreet(), | |
| 240 | + model.getHusbandCurrentAddress(), basicConfigService)); | |
| 241 | + result.setWifeAccountAddressStr(CommonsHelper.getResidence(model.getWifeAccountProvince(), | |
| 242 | + model.getWifeAccountCity(), | |
| 243 | + model.getWifeAccountArea(), | |
| 244 | + model.getWifeAccountStreet(), | |
| 245 | + model.getWifeAccountAddress(), basicConfigService)); | |
| 246 | + result.setWifeCurrentAddressStr(CommonsHelper.getResidence(model.getWifeCurrentProvince(), | |
| 247 | + model.getWifeCurrentCity(), | |
| 248 | + model.getWifeCurrentArea(), | |
| 249 | + model.getWifeCurrentStreet(), | |
| 250 | + model.getWifeCurrentAddress(), basicConfigService)); | |
| 251 | + return result; | |
| 252 | + } | |
| 253 | + | |
| 254 | + /** | |
| 122 | 255 | * 单个查询 |
| 123 | 256 | * |
| 124 | 257 | * @param param |
| ... | ... | @@ -126,7 +259,18 @@ |
| 126 | 259 | */ |
| 127 | 260 | @Override |
| 128 | 261 | public BaseResponse detail(PreEugenicsBaseRequest param) { |
| 129 | - return null; | |
| 262 | + String id = param.getId(); | |
| 263 | + if (StringUtils.isNum(id)) { | |
| 264 | + return new BaseResponse(); | |
| 265 | + } | |
| 266 | + PreEugenicsBaseModel model = mongoTemplate.findOne(Query.query(Criteria.where("id").is(id)), PreEugenicsBaseModel.class); | |
| 267 | + PreEugenicsBaseListResult result = new PreEugenicsBaseListResult(); | |
| 268 | + if (model != null) { | |
| 269 | + result = getPreEugenicsBaseListResult(model); | |
| 270 | + } | |
| 271 | + BaseResponse baseResponse = new BaseResponse(); | |
| 272 | + baseResponse.setObject(result); | |
| 273 | + return baseResponse; | |
| 130 | 274 | } |
| 131 | 275 | } |