Commit e09db63deb94bebc03a483787e7b0c37dc2dbf73
1 parent
3647ce6b0d
Exists in
master
and in
6 other branches
update
Showing 3 changed files with 64 additions and 7 deletions
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/RareBloodGroupService.java
- platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/RareBloodGroupServiceImpl.java
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/PuerperaManageController.java
View file @
e09db63
... | ... | @@ -204,14 +204,23 @@ |
204 | 204 | } |
205 | 205 | |
206 | 206 | /** |
207 | - * 稀有血型专病门诊 详情 | |
207 | + * 稀有血型专病门诊 单个孕妇详情列表 | |
208 | 208 | */ |
209 | 209 | @ResponseBody |
210 | - @RequestMapping(value = "/infoListRare", method = RequestMethod.GET) | |
210 | + @RequestMapping(value = "/wxinfoListRare", method = RequestMethod.GET) | |
211 | 211 | public BaseResponse infoListRare(RareBloodGroupModel rareBloodGroupModel, HttpServletRequest request) { |
212 | 212 | return rareBloodGroupService.infoListRare(null, rareBloodGroupModel); |
213 | 213 | } |
214 | 214 | |
215 | + /** | |
216 | + * 稀有血型专病门诊 列表 | |
217 | + */ | |
218 | + @ResponseBody | |
219 | + @RequestMapping(value = "/infoListRare",method = RequestMethod.GET) | |
220 | + @TokenRequired | |
221 | + public BaseResponse list(String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit, HttpServletRequest request) { | |
222 | + return rareBloodGroupService.list( key, vcCardNo, weekStart, weekEnd, age, page, limit, getUserId(request)); | |
223 | + } | |
215 | 224 | |
216 | 225 | /** |
217 | 226 | * 导出孕产妇数据 |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/RareBloodGroupService.java
View file @
e09db63
... | ... | @@ -15,5 +15,8 @@ |
15 | 15 | BaseResponse infoListRare(Integer userId, RareBloodGroupModel rareBloodGroupModel); |
16 | 16 | |
17 | 17 | List<RareBloodGroupModel> queryList(RareQuery rareQuery); |
18 | + | |
19 | + BaseResponse list(String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit, Integer userId); | |
20 | + | |
18 | 21 | } |
platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/RareBloodGroupServiceImpl.java
View file @
e09db63
... | ... | @@ -8,12 +8,15 @@ |
8 | 8 | import com.lyms.platform.common.dao.operator.MongoQuery; |
9 | 9 | import com.lyms.platform.common.enums.YnEnums; |
10 | 10 | import com.lyms.platform.common.result.BaseResponse; |
11 | +import com.lyms.platform.common.result.PageResult; | |
11 | 12 | import com.lyms.platform.common.result.RespBuilder; |
12 | 13 | import com.lyms.platform.common.utils.DateUtil; |
13 | 14 | import com.lyms.platform.common.utils.MongoConvertHelper; |
14 | 15 | import com.lyms.platform.common.utils.ReflectionUtils; |
15 | 16 | import com.lyms.platform.operate.web.facade.AutoMatchFacade; |
17 | +import com.lyms.platform.operate.web.facade.OrganizationGroupsFacade; | |
16 | 18 | import com.lyms.platform.operate.web.service.RareBloodGroupService; |
19 | +import com.lyms.platform.operate.web.utils.MongoUtil; | |
17 | 20 | import com.lyms.platform.pojo.Patients; |
18 | 21 | import com.lyms.platform.pojo.RareBloodGroupModel; |
19 | 22 | import com.lyms.platform.query.RareQuery; |
20 | 23 | |
21 | 24 | |
... | ... | @@ -46,17 +49,21 @@ |
46 | 49 | private MongoTemplate mongoTemplate; |
47 | 50 | @Autowired |
48 | 51 | private PatientsService patientsService; |
52 | + @Autowired | |
53 | + private OrganizationGroupsFacade groupsFacade; | |
54 | + @Autowired | |
55 | + private MongoUtil mongoUtil; | |
49 | 56 | |
50 | 57 | @Override |
51 | 58 | public BaseResponse add(Integer userId, RareBloodGroupModel rareBloodGroupModel) { |
52 | 59 | try { |
53 | 60 | |
54 | - if (userId != null && "1".equals(rareBloodGroupModel.getSource())){ | |
61 | + if (userId != null && "1".equals(rareBloodGroupModel.getSource())) { | |
55 | 62 | String hospitalId = autoMatchFacade.getHospitalId(userId); |
56 | 63 | rareBloodGroupModel.setHospitalId(hospitalId); |
57 | 64 | rareBloodGroupModel.setSource("1"); |
58 | 65 | |
59 | - } else if (userId == null && "2".equals(rareBloodGroupModel.getSource())) { | |
66 | + } else if (userId == null && "2".equals(rareBloodGroupModel.getSource())) { | |
60 | 67 | if (rareBloodGroupModel.getParentId() != null) { |
61 | 68 | Patients pat = patientsService.findOnePatientById(rareBloodGroupModel.getParentId()); |
62 | 69 | if (pat != null) { |
... | ... | @@ -65,7 +72,7 @@ |
65 | 72 | rareBloodGroupModel.setSource("2"); |
66 | 73 | } |
67 | 74 | } |
68 | - }else { | |
75 | + } else { | |
69 | 76 | return new BaseResponse(); |
70 | 77 | } |
71 | 78 | rareBloodGroupModel.setYn(YnEnums.YES.getId()); |
... | ... | @@ -81,7 +88,6 @@ |
81 | 88 | } |
82 | 89 | |
83 | 90 | |
84 | - | |
85 | 91 | @Override |
86 | 92 | public BaseResponse Update(Integer userId, RareBloodGroupModel rareBloodGroupModel) { |
87 | 93 | try { |
... | ... | @@ -107,7 +113,7 @@ |
107 | 113 | List<RareBloodGroupModel> babyDietReportList = null; |
108 | 114 | try { |
109 | 115 | if (rareBloodGroupModel != null && StringUtils.isNotEmpty(rareBloodGroupModel.getPid())) { |
110 | - babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("pid").is(rareBloodGroupModel.getPid()).and("yn").is(YnEnums.YES.getId())), RareBloodGroupModel.class); | |
116 | + babyDietReportList = mongoTemplate.find(Query.query(Criteria.where("pid").is(rareBloodGroupModel.getPid()).and("yn").is(YnEnums.YES.getId()).and("source").is("1")), RareBloodGroupModel.class); | |
111 | 117 | if (babyDietReportList != null) { |
112 | 118 | for (int i = 0; i < babyDietReportList.size(); i++) { |
113 | 119 | RareBloodGroupModel rareBloodGroupModel1 = babyDietReportList.get(i); |
... | ... | @@ -115,6 +121,7 @@ |
115 | 121 | map.put("bloodGroupGenotyping", rareBloodGroupModel1.getBloodGroupGenotyping());//血型基因分型 |
116 | 122 | map.put("bloodGroupAntibody", rareBloodGroupModel1.getBloodGroupAntibody());//血型抗体效价滴度 |
117 | 123 | map.put("inputWeek", rareBloodGroupModel1.getWeek());//录入孕周 |
124 | + map.put("source", rareBloodGroupModel1.getSource()); | |
118 | 125 | Patients p = mongoTemplate.findById(rareBloodGroupModel1.getParentId(), Patients.class); |
119 | 126 | map.put("currentWeek", DateUtil.getWeekDesc(p.getLastMenses(), new Date()));//当前孕周 |
120 | 127 | map.put("username", p.getUsername());//姓名 |
... | ... | @@ -127,6 +134,44 @@ |
127 | 134 | e.printStackTrace(); |
128 | 135 | } |
129 | 136 | return RespBuilder.buildSuccess(list); |
137 | + } | |
138 | + | |
139 | + public BaseResponse list(String key, String vcCardNo, Integer weekStart, Integer weekEnd, Integer age, Integer page, Integer limit, Integer userId) { | |
140 | + | |
141 | + boolean flag = false; | |
142 | + if (com.lyms.platform.common.utils.StringUtils.isNotEmpty(key) || com.lyms.platform.common.utils.StringUtils.isNotEmpty(vcCardNo) || weekEnd != null || weekStart != null || age != null) { | |
143 | + flag = true; | |
144 | + } | |
145 | + List<String> hospitalIds = groupsFacade.findGroupHospital(userId, false); | |
146 | + Criteria criteria = Criteria.where("yn").is(1); | |
147 | + criteria.and("hospitalId").in(hospitalIds); | |
148 | + criteria.and("source").is("2"); | |
149 | + if (flag) { | |
150 | + List<String> pids = mongoUtil.getPidsByCondition2(hospitalIds, key, vcCardNo, weekStart, weekEnd, age); | |
151 | + criteria.and("pid").in(pids); | |
152 | + } | |
153 | + PageResult pageResult = findMongoPage(RareBloodGroupModel.class, Query.query(criteria).with(new Sort(Sort.Direction.DESC, "created")), page, limit); | |
154 | + List<RareBloodGroupModel> rareBloodGroupModels = (List<RareBloodGroupModel>) pageResult.getGrid(); | |
155 | + List<Map<String, Object>> restList = new ArrayList<>(); | |
156 | + | |
157 | + for (RareBloodGroupModel rareBloodGroupModel : rareBloodGroupModels) { | |
158 | + Map<String, Object> map = new HashMap<>(); | |
159 | + Patients p = mongoTemplate.findById(rareBloodGroupModel.getParentId(), Patients.class); | |
160 | + if (p != null) { | |
161 | + map.put("entryTime", DateUtil.getyyyy_MM_dd(rareBloodGroupModel.getCreated()));//录入时间 | |
162 | + map.put("bloodGroupGenotyping", rareBloodGroupModel.getBloodGroupGenotyping());//血型基因分型 | |
163 | + map.put("bloodGroupAntibody", rareBloodGroupModel.getBloodGroupAntibody());//血型抗体效价滴度 | |
164 | + map.put("inputWeek", rareBloodGroupModel.getWeek());//录入孕周 | |
165 | + map.put("source", rareBloodGroupModel.getSource());// 1 孕产系统 2小程序 | |
166 | + map.put("currentWeek", DateUtil.getWeekDesc(p.getLastMenses(), new Date()));//当前孕周 | |
167 | + map.put("username", p.getUsername());//姓名 | |
168 | + map.put("dueDate", DateUtil.getyyyy_MM_dd(p.getDueDate()));//预产期 | |
169 | + | |
170 | + } | |
171 | + restList.add(map); | |
172 | + } | |
173 | + pageResult.setGrid(restList); | |
174 | + return RespBuilder.buildSuccess(pageResult); | |
130 | 175 | } |
131 | 176 | |
132 | 177 |