Commit d923495e79b4ca63a7df80d63b68c2c99b5d32d8

Authored by jiangjiazhi

Merge remote-tracking branch 'origin/master'

Showing 10 changed files

platform-dal/src/main/java/com/lyms/platform/pojo/FolicAcid.java View file @ d923495
... ... @@ -26,9 +26,13 @@
26 26 private String highRisk;
27 27  
28 28 /* 发放信息 */
29   - //发放单位
  29 + //发放单位ID
30 30 private String hospitalId;
31   - //发放人
  31 + //发放单位名称
  32 + private String hospitalName;
  33 + //发放人ID
  34 + private String operatorId;
  35 + //发放人名字
32 36 private String operator;
33 37 //领取时间
34 38 private Date drawTime;
... ... @@ -42,6 +46,21 @@
42 46 //有效标识
43 47 private Integer yn;
44 48  
  49 + public String getHospitalName() {
  50 + return hospitalName;
  51 + }
  52 +
  53 + public void setHospitalName(String hospitalName) {
  54 + this.hospitalName = hospitalName;
  55 + }
  56 +
  57 + public String getOperatorId() {
  58 + return operatorId;
  59 + }
  60 +
  61 + public void setOperatorId(String operatorId) {
  62 + this.operatorId = operatorId;
  63 + }
45 64  
46 65 public String getHighRisk() {
47 66 return highRisk;
platform-dal/src/main/java/com/lyms/platform/pojo/PremaritalCheckup.java View file @ d923495
... ... @@ -34,6 +34,8 @@
34 34 private String certificateTypeId;
35 35 //就诊卡号
36 36 private String vcCardNo;
  37 + //性别类型
  38 + private Integer sexType;
37 39  
38 40 /****************** 配偶信息 ********************/
39 41 //配偶姓名
... ... @@ -337,6 +339,14 @@
337 339 private String zhiDaoYiJian;
338 340 //婚检医生
339 341 private String hunJianDoctor;
  342 +
  343 + public Integer getSexType() {
  344 + return sexType;
  345 + }
  346 +
  347 + public void setSexType(Integer sexType) {
  348 + this.sexType = sexType;
  349 + }
340 350  
341 351 public String getBingGan() {
342 352 return bingGan;
platform-dal/src/main/java/com/lyms/platform/query/FolicAcidQuery.java View file @ d923495
... ... @@ -5,10 +5,12 @@
5 5 import com.lyms.platform.common.dao.operator.MongoCondition;
6 6 import com.lyms.platform.common.dao.operator.MongoOper;
7 7 import com.lyms.platform.common.dao.operator.MongoQuery;
  8 +import org.apache.commons.collections.CollectionUtils;
8 9 import org.apache.commons.lang.StringUtils;
9 10 import org.springframework.data.mongodb.core.query.Criteria;
10 11  
11 12 import java.util.Date;
  13 +import java.util.List;
12 14  
13 15 /**
14 16 * Created by Administrator on 2016/12/1 0001.
15 17  
... ... @@ -46,12 +48,18 @@
46 48 //有效标识
47 49 private Integer yn;
48 50  
  51 + //医院id
  52 + private List<String> hospitalList;
  53 +
49 54 @Override
50 55 public MongoQuery convertToQuery() {
51 56 MongoCondition condition = MongoCondition.newInstance();
52 57 if (StringUtils.isNotBlank(id)) {
53 58 condition = condition.and("id", id, MongoOper.IS);
54 59 }
  60 + if(CollectionUtils.isNotEmpty(hospitalList)){
  61 + condition = condition.and("hospitalId", hospitalList, MongoOper.IN);
  62 + }
55 63 if (StringUtils.isNotBlank(parentId)) {
56 64 condition = condition.and("parentId", parentId, MongoOper.IS);
57 65 }
... ... @@ -85,6 +93,14 @@
85 93 condition = condition.andCondition(new MongoCondition(c1));
86 94 }
87 95 return condition.toMongoQuery();
  96 + }
  97 +
  98 + public List<String> getHospitalList() {
  99 + return hospitalList;
  100 + }
  101 +
  102 + public void setHospitalList(List<String> hospitalList) {
  103 + this.hospitalList = hospitalList;
88 104 }
89 105  
90 106 public String getId() {
platform-dal/src/main/java/com/lyms/platform/query/PremaritalCheckupQuery.java View file @ d923495
... ... @@ -45,7 +45,10 @@
45 45 private String hunJianDoctor;
46 46 //医学意见
47 47 private Integer yiXueYiJian;
  48 + //性别类型
  49 + private Integer sexType;
48 50  
  51 +
49 52 @Override
50 53 public MongoQuery convertToQuery() {
51 54 MongoCondition condition = MongoCondition.newInstance();
... ... @@ -70,6 +73,9 @@
70 73 if (yn!=null) {
71 74 condition = condition.and("yn", yn, MongoOper.IS);
72 75 }
  76 + if (sexType!=null) {
  77 + condition = condition.and("sexType", sexType, MongoOper.IS);
  78 + }
73 79 if (publishId!=null) {
74 80 condition = condition.and("publishId", publishId, MongoOper.IS);
75 81 }
... ... @@ -103,6 +109,14 @@
103 109 condition = condition.andCondition(new MongoCondition(c1));
104 110 }
105 111 return condition.toMongoQuery();
  112 + }
  113 +
  114 + public Integer getSexType() {
  115 + return sexType;
  116 + }
  117 +
  118 + public void setSexType(Integer sexType) {
  119 + this.sexType = sexType;
106 120 }
107 121  
108 122 public String getId() {
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/FolicAcidController.java View file @ d923495
... ... @@ -14,6 +14,7 @@
14 14 import org.springframework.web.bind.annotation.*;
15 15  
16 16 import javax.servlet.http.HttpServletRequest;
  17 +import javax.servlet.http.HttpServletResponse;
17 18 import javax.validation.Valid;
18 19  
19 20 /**
... ... @@ -56,15 +57,17 @@
56 57 return folicAcidFacade.queryFolicAcid(folicAcidQueryRequest);
57 58 }
58 59  
59   -// //
60   -// @RequestMapping(value = "/folicAcidExport", method = RequestMethod.GET)
61   -// @ResponseBody
62   -//// @TokenRequired
63   -// public BaseListResponse folicAcidExport(@Valid FolicAcidQueryRequest folicAcidQueryRequest,
64   -// HttpServletRequest request) {
65   -//
66   -// return folicAcidFacade.queryFolicAcid(folicAcidQueryRequest);
67   -// }
  60 + //叶酸数据导出
  61 + @RequestMapping(value = "/folicAcidExport", method = RequestMethod.GET)
  62 + @ResponseBody
  63 + @TokenRequired
  64 + public void folicAcidExport(@Valid FolicAcidQueryRequest folicAcidQueryRequest,
  65 + HttpServletResponse response,
  66 + HttpServletRequest request) {
  67 + //获取当前登录用户ID
  68 + LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
  69 + folicAcidFacade.folicAcidExport(folicAcidQueryRequest,loginState.getId(),response);
  70 + }
68 71  
69 72 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/FolicAcidFacade.java View file @ d923495
1 1 package com.lyms.platform.operate.web.facade;
2 2  
  3 +import com.lyms.platform.biz.service.BasicConfigService;
3 4 import com.lyms.platform.biz.service.FolicAcidService;
4 5 import com.lyms.platform.biz.service.ResidentsArchiveService;
5 6 import com.lyms.platform.common.constants.ErrorCodeConstants;
6 7  
... ... @@ -7,8 +8,10 @@
7 8 import com.lyms.platform.common.result.BaseListResponse;
8 9 import com.lyms.platform.common.result.BaseObjectResponse;
9 10 import com.lyms.platform.common.result.BaseResponse;
  11 +import com.lyms.platform.common.utils.DateUtil;
10 12 import com.lyms.platform.operate.web.request.FolicAcidAddRequest;
11 13 import com.lyms.platform.operate.web.request.FolicAcidQueryRequest;
  14 +import com.lyms.platform.operate.web.utils.CommonsHelper;
12 15 import com.lyms.platform.permission.model.Organization;
13 16 import com.lyms.platform.permission.model.OrganizationQuery;
14 17 import com.lyms.platform.permission.model.Users;
... ... @@ -23,6 +26,8 @@
23 26 import org.springframework.beans.factory.annotation.Autowired;
24 27 import org.springframework.stereotype.Component;
25 28  
  29 +import javax.servlet.http.HttpServletResponse;
  30 +import java.io.OutputStream;
26 31 import java.util.*;
27 32  
28 33 /**
... ... @@ -41,6 +46,8 @@
41 46 private AutoMatchFacade autoMatchFacade;
42 47 @Autowired
43 48 private UsersService usersService;
  49 + @Autowired
  50 + private BasicConfigService basicConfigService;
44 51  
45 52 public BaseResponse addOrUpdateFolicAcid(FolicAcidAddRequest addRequest,Integer userId){
46 53  
47 54  
... ... @@ -104,11 +111,13 @@
104 111  
105 112 FolicAcid folicAcid = new FolicAcid();
106 113 folicAcid.setHospitalId(addRequest.getHospitalId());
  114 + folicAcid.setHospitalName(addRequest.getHospitalName());
107 115 folicAcid.setParentId(parentId);
108 116 folicAcid.setDrawCount(addRequest.getDrawCount());
109 117 folicAcid.setPregnancyType(addRequest.getPregnancyType());
110 118 folicAcid.setPregnancyWeeks(addRequest.getPregnancyWeeks());
111 119 folicAcid.setHighRisk(addRequest.getHighRisk());
  120 + folicAcid.setOperatorId(addRequest.getOperatorId());
112 121 folicAcid.setOperator(addRequest.getOperator());
113 122 folicAcid.setDrawTime(addRequest.getDrawTime());
114 123 folicAcid.setYn(YnEnums.YES.getId());
... ... @@ -160,7 +169,7 @@
160 169 //妇女信息
161 170 archiveMap = new HashMap<>();
162 171 archiveMap.put("certificateNum", archiveModel.getCertificateNum());
163   - archiveMap.put("certificateTypeId", archiveModel.getCertificateTypeId());
  172 + archiveMap.put("certificateTypeId", CommonsHelper.getName1(archiveModel.getCertificateTypeId(),basicConfigService));
164 173 archiveMap.put("username", archiveModel.getUsername());
165 174 archiveMap.put("birthday",archiveModel.getBirthday());
166 175 archiveMap.put("age", archiveModel.getAge());
... ... @@ -179,7 +188,7 @@
179 188  
180 189 public BaseListResponse queryFolicAcid(FolicAcidQueryRequest queryRequest){
181 190  
182   - List<FolicAcid> list = new ArrayList<>();
  191 + List<Map<String,Object>> list = new ArrayList<>();
183 192  
184 193 List<Organization> organizationList = new ArrayList<>();
185 194  
186 195  
187 196  
188 197  
... ... @@ -204,16 +213,48 @@
204 213 organizationQuery.setAreaId(queryRequest.getAreaId());
205 214 organizationList = organizationService.queryHospitals(organizationQuery);
206 215 }
  216 +
  217 + List<String> hospitalIds = new ArrayList<>();
  218 +
207 219 if (CollectionUtils.isNotEmpty(organizationList)){
208 220 for (Organization hospital : organizationList){
209   - folicAcidQuery.setHospitalId(String.valueOf(hospital.getId()));
210   - List<FolicAcid> folicAcidList = folicAcidService.queryFolicAcid(folicAcidQuery);
211   - list.addAll(folicAcidList);
  221 + hospitalIds.add(String.valueOf(hospital.getId()));
212 222 }
213   - }else {
214   - List<FolicAcid> folicAcidList = folicAcidService.queryFolicAcid(folicAcidQuery);
215   - list.addAll(folicAcidList);
  223 + if (CollectionUtils.isNotEmpty(hospitalIds)){
  224 + folicAcidQuery.setHospitalList(hospitalIds);
  225 + }
216 226 }
  227 +
  228 + List<FolicAcid> folicAcidList = folicAcidService.queryFolicAcid(folicAcidQuery);
  229 + if (CollectionUtils.isNotEmpty(folicAcidList)){
  230 + for (FolicAcid data : folicAcidList){
  231 + Map<String,Object> map = new HashMap<>();
  232 + map.put("id",data.getId());
  233 + map.put("id",data.getId());
  234 + ResidentsArchiveModel model = residentsArchiveService.getResident(data.getParentId());
  235 + map.put("username",model.getUsername());
  236 + map.put("certificateNum",model.getCertificateNum());
  237 + map.put("phone",model.getPhone());
  238 + map.put("drawTime", DateUtil.getyyyy_MM_dd(data.getDrawTime()));
  239 + map.put("drawCount", data.getDrawCount());
  240 + if (data.getPregnancyType()!=null){
  241 + if (data.getPregnancyType()==1){
  242 + map.put("drawDate", "孕前");
  243 + }
  244 + if (data.getPregnancyType()==2){
  245 + map.put("drawDate", data.getPregnancyWeeks());
  246 + }
  247 + }
  248 + map.put("highRisk",data.getHighRisk());
  249 + map.put("hospitalName",data.getHospitalName());
  250 + map.put("hospitalId",data.getHospitalId());
  251 + map.put("residence", CommonsHelper.getResidence(model.getProvinceId(), model.getCityId(),
  252 + model.getAreaId(), model.getStreetId(), model.getAddress(), basicConfigService));
  253 + map.put("operatorId", data.getOperatorId());
  254 + map.put("operator", data.getOperator());
  255 + list.add(map);
  256 + }
  257 + }
217 258 BaseListResponse baseListResponse = new BaseListResponse();
218 259 baseListResponse.setErrormsg("成功");
219 260 baseListResponse.setErrorcode(ErrorCodeConstants.SUCCESS);
... ... @@ -223,6 +264,74 @@
223 264 }
224 265  
225 266 //叶酸发放导出
  267 + public void folicAcidExport(FolicAcidQueryRequest queryRequest,Integer userId,HttpServletResponse response){
  268 + OutputStream out = null;
  269 + List<Map<String,Object>> list = new ArrayList<>();
  270 +
  271 + List<Organization> organizationList = new ArrayList<>();
  272 + try {
  273 + FolicAcidQuery query = new FolicAcidQuery();
  274 + query.setYn(YnEnums.YES.getId());
  275 + String hospitalId = autoMatchFacade.getHospitalId(userId);
  276 + query.setHospitalId(hospitalId);
  277 + query.setDrawTimeStart(queryRequest.getDrawTimeStart());
  278 + query.setDrawTimeEnd(queryRequest.getDrawTimeEnd());
  279 + query.setHighRisk(queryRequest.getHighRisk());
  280 +
  281 + //省市区筛选机构
  282 + if (StringUtils.isNotEmpty(queryRequest.getProvinceId()) || StringUtils.isNotEmpty(queryRequest.getCityId()) ||
  283 + StringUtils.isNotEmpty(queryRequest.getAreaId())){
  284 + OrganizationQuery organizationQuery = new OrganizationQuery();
  285 + organizationQuery.setYn(YnEnums.YES.getId());
  286 + organizationQuery.setProvinceId(queryRequest.getProvinceId());
  287 + organizationQuery.setCityId(queryRequest.getCityId());
  288 + organizationQuery.setAreaId(queryRequest.getAreaId());
  289 + organizationList = organizationService.queryHospitals(organizationQuery);
  290 + }
  291 + List<String> hospitalIds = new ArrayList<>();
  292 +
  293 + if (CollectionUtils.isNotEmpty(organizationList)){
  294 + for (Organization hospital : organizationList){
  295 + hospitalIds.add(String.valueOf(hospital.getId()));
  296 + }
  297 + if (CollectionUtils.isNotEmpty(hospitalIds)){
  298 + query.setHospitalList(hospitalIds);
  299 + }
  300 + }
  301 + List<FolicAcid> folicAcidList = folicAcidService.queryFolicAcid(query);
  302 + if (CollectionUtils.isNotEmpty(folicAcidList)){
  303 + for (FolicAcid data : folicAcidList){
  304 + Map<String,Object> map = new HashMap<>();
  305 + if (StringUtils.isNotEmpty(data.getParentId())){
  306 + ResidentsArchiveModel model = residentsArchiveService.getResident(data.getId());
  307 + map.put("certificateNum", model.getCertificateNum());
  308 + map.put("username", model.getUsername());
  309 + map.put("phone", model.getPhone());
  310 + map.put("residence", CommonsHelper.getResidence(model.getProvinceId(), model.getCityId(),
  311 + model.getAreaId(), model.getStreetId(), model.getAddress(), basicConfigService));
  312 + }
  313 + map.put("drawTime", data.getDrawTime());
  314 + map.put("drawCount", data.getDrawCount());
  315 + if (data.getPregnancyType()!=null){
  316 + if (data.getPregnancyType()==1){
  317 + map.put("pregnancyType", "孕前");
  318 + }
  319 + if (data.getPregnancyType()==2){
  320 + map.put("pregnancyType", "孕期");
  321 + }
  322 + }
  323 + map.put("pregnancyWeeks", data.getPregnancyWeeks());
  324 + map.put("highRisk", data.getHighRisk());
  325 + map.put("hospitalName",data.getHospitalName());
  326 + map.put("operator", data.getOperator());
  327 + list.add(map);
  328 + }
  329 + }
  330 + }catch (Exception e){
  331 + e.printStackTrace();
  332 + }
  333 +
  334 + }
226 335  
227 336 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PremaritalCheckupFacade.java View file @ d923495
... ... @@ -11,6 +11,7 @@
11 11 import com.lyms.platform.common.result.BaseListResponse;
12 12 import com.lyms.platform.common.result.BaseObjectResponse;
13 13 import com.lyms.platform.common.utils.DateUtil;
  14 +import com.lyms.platform.common.utils.SystemConfig;
14 15 import com.lyms.platform.operate.web.request.PremaritalCheckupAddRequest;
15 16 import com.lyms.platform.operate.web.request.PremaritalCheckupQueryRequest;
16 17 import com.lyms.platform.operate.web.result.PremaritalCheckupHistoryResult;
... ... @@ -188,6 +189,7 @@
188 189 query.setYiXueYiJian(request.getYiXueYiJian());
189 190 query.setPremaritalUpTimeStart(request.getPremaritalUpTimeStart());
190 191 query.setPremaritalUpTimeEnd(request.getPremaritalUpTimeEnd());
  192 + query.setSexType(request.getSexType());
191 193  
192 194 if (CollectionUtils.isNotEmpty(parentIds)){
193 195 for (String parentId : parentIds){
... ... @@ -265,6 +267,11 @@
265 267 String id = null;
266 268  
267 269 PremaritalCheckup checkup = new PremaritalCheckup();
  270 + if (model.getSex() != null && model.getSex()== SystemConfig.WOMAN_ID){
  271 + checkup.setSexType(1);
  272 + }else {
  273 + checkup.setSexType(2);
  274 + }
268 275  
269 276 /* 配偶信息 */
270 277 if (addRequest.getDeliverStatus()!=null && addRequest.getDeliverStatus()==1){
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/FolicAcidAddRequest.java View file @ d923495
... ... @@ -37,13 +37,32 @@
37 37 private String highRisk;
38 38  
39 39 /* 发放信息 */
40   - //发放单位
  40 + //发放单位ID
41 41 private String hospitalId;
42   - //发放人
  42 + //发放单位名称
  43 + private String hospitalName;
  44 + //发放人ID
  45 + private String operatorId;
  46 + //发放人名字
43 47 private String operator;
44 48 //领取时间
45 49 private Date drawTime;
46 50  
  51 + public String getHospitalName() {
  52 + return hospitalName;
  53 + }
  54 +
  55 + public void setHospitalName(String hospitalName) {
  56 + this.hospitalName = hospitalName;
  57 + }
  58 +
  59 + public String getOperatorId() {
  60 + return operatorId;
  61 + }
  62 +
  63 + public void setOperatorId(String operatorId) {
  64 + this.operatorId = operatorId;
  65 + }
47 66  
48 67 public String getVcCardNo() {
49 68 return vcCardNo;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/request/PremaritalCheckupQueryRequest.java View file @ d923495
... ... @@ -26,6 +26,16 @@
26 26 private Integer yiXueYiJian;
27 27 //医院ID
28 28 private String hospitalId;
  29 + //性别类型
  30 + private Integer sexType;
  31 +
  32 + public Integer getSexType() {
  33 + return sexType;
  34 + }
  35 +
  36 + public void setSexType(Integer sexType) {
  37 + this.sexType = sexType;
  38 + }
29 39  
30 40 public String getHospitalId() {
31 41 return hospitalId;
platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/CommonsHelper.java View file @ d923495
... ... @@ -73,7 +73,7 @@
73 73 }
74 74  
75 75  
76   - private static String getName1(String id, BasicConfigService basicConfigService) {
  76 + public static String getName1(String id, BasicConfigService basicConfigService) {
77 77 BasicConfig basicConfig = basicConfigService.getOneBasicConfigById(id);
78 78 if (basicConfig != null) {
79 79 return basicConfig.getName();