Commit 21cfd07da3ebaa13a653c1586065b1ed9ff02e7a
1 parent
49ea659aac
Exists in
master
and in
6 other branches
结算管理
Showing 1 changed file with 95 additions and 10 deletions
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/HealthChargeFacade.java
View file @
21cfd07
... | ... | @@ -11,15 +11,18 @@ |
11 | 11 | import com.lyms.platform.common.utils.ExcelUtil; |
12 | 12 | import com.lyms.platform.common.utils.StringUtils; |
13 | 13 | import com.lyms.platform.operate.web.request.HealthChargeRequest; |
14 | +import com.lyms.platform.operate.web.service.ITemporaryBloodService; | |
15 | +import com.lyms.platform.operate.web.service.ITemporaryBloodSugarService; | |
16 | +import com.lyms.platform.operate.web.service.TemporaryWeightService; | |
14 | 17 | import com.lyms.platform.permission.service.UsersService; |
15 | -import com.lyms.platform.pojo.ChargeRecordModel; | |
16 | -import com.lyms.platform.pojo.HealthChargeModel; | |
17 | -import com.lyms.platform.pojo.Patients; | |
18 | +import com.lyms.platform.pojo.*; | |
18 | 19 | import com.lyms.platform.query.ChargeRecordQuery; |
19 | 20 | import com.lyms.platform.query.HealthChargeQuery; |
20 | 21 | import org.apache.commons.collections.CollectionUtils; |
21 | 22 | import org.springframework.beans.factory.annotation.Autowired; |
22 | 23 | import org.springframework.data.mongodb.core.MongoTemplate; |
24 | +import org.springframework.data.mongodb.core.query.Criteria; | |
25 | +import org.springframework.data.mongodb.core.query.Query; | |
23 | 26 | import org.springframework.stereotype.Component; |
24 | 27 | |
25 | 28 | import javax.servlet.http.HttpServletResponse; |
... | ... | @@ -27,6 +30,7 @@ |
27 | 30 | import java.util.*; |
28 | 31 | |
29 | 32 | /** |
33 | + * 健康管理结算 | |
30 | 34 | * Created by Administrator on 2019-03-28. |
31 | 35 | */ |
32 | 36 | @Component |
... | ... | @@ -43,6 +47,9 @@ |
43 | 47 | private PatientsService patientsService; |
44 | 48 | |
45 | 49 | @Autowired |
50 | + private MongoTemplate mongoTemplate; | |
51 | + | |
52 | + @Autowired | |
46 | 53 | private UsersService usersService; |
47 | 54 | |
48 | 55 | /** |
... | ... | @@ -154,6 +161,11 @@ |
154 | 161 | return new BaseListResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(listData).setPageInfo(healthChargeQuery.getPageInfo()); |
155 | 162 | } |
156 | 163 | |
164 | + /** | |
165 | + * 返回列表字段 | |
166 | + * @param model | |
167 | + * @return | |
168 | + */ | |
157 | 169 | private Map getData(HealthChargeModel model) |
158 | 170 | { |
159 | 171 | Map map = new HashMap(); |
160 | 172 | |
161 | 173 | |
... | ... | @@ -171,16 +183,92 @@ |
171 | 183 | } |
172 | 184 | else |
173 | 185 | { |
186 | + Integer healthType = model.getHealthType(); | |
187 | + switch (healthType) | |
188 | + { | |
189 | + case 1 : | |
190 | + getTemporaryWeightInfo(map,model.getForeignId(),model.getCreated()); | |
191 | + case 2 : | |
192 | + getTemporaryBloodSugarInfo(map, model.getForeignId(), model.getCreated()); | |
193 | + case 3 : | |
194 | + getTemporaryBloodPressInfo(map, model.getForeignId(), model.getCreated()); | |
195 | + } | |
174 | 196 | |
175 | 197 | } |
176 | - | |
177 | - | |
178 | - map.put("type",model.getType() == 1 ? "标准报告" : "高危报告"); | |
198 | + map.put("status", model.getStatus() == 1 ? "未结算" : "已结算"); | |
199 | + map.put("type", model.getType() == 1 ? "标准报告" : "高危报告"); | |
179 | 200 | map.put("source",model.getSource() == 1 ? "院内" : "临时"); |
180 | 201 | map.put("time", DateUtil.getyyyy_MM_dd(model.getCreated())); |
181 | 202 | return map; |
182 | 203 | } |
183 | 204 | |
205 | + | |
206 | + /** | |
207 | + * 临时体重信息 | |
208 | + * @param map | |
209 | + * @param id | |
210 | + * @param created | |
211 | + */ | |
212 | + private void getTemporaryWeightInfo(Map map,String id,Date created) | |
213 | + { | |
214 | + TemporaryWeightModel temporaryWeightModel = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(id).and("yn").is(YnEnums.YES.getId())), | |
215 | + TemporaryWeightModel.class); | |
216 | + if (temporaryWeightModel != null) | |
217 | + { | |
218 | + setMap(map, temporaryWeightModel.getUserName(), temporaryWeightModel.getAge(), temporaryWeightModel.getLastMenses(), created); | |
219 | + } | |
220 | + } | |
221 | + | |
222 | + /** | |
223 | + * 临时血糖信息 | |
224 | + * @param map | |
225 | + * @param id | |
226 | + * @param created | |
227 | + */ | |
228 | + private void getTemporaryBloodSugarInfo(Map map,String id,Date created) | |
229 | + { | |
230 | + TemporaryBloodSugar temporaryBloodSugar = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(id).and("yn").is(YnEnums.YES.getId())), | |
231 | + TemporaryBloodSugar.class); | |
232 | + if (temporaryBloodSugar != null) | |
233 | + { | |
234 | + setMap(map, temporaryBloodSugar.getUserName(), temporaryBloodSugar.getAge(), temporaryBloodSugar.getLastMenses(), created); | |
235 | + } | |
236 | + } | |
237 | + | |
238 | + /** | |
239 | + * 临时血压信息 | |
240 | + * @param map | |
241 | + * @param id | |
242 | + * @param created | |
243 | + */ | |
244 | + private void getTemporaryBloodPressInfo(Map map,String id,Date created) | |
245 | + { | |
246 | + TemporaryBloodModel temporaryBloodModel = mongoTemplate.findOne(Query.query(Criteria.where("_id").is(id).and("yn").is(YnEnums.YES.getId())), | |
247 | + TemporaryBloodModel.class); | |
248 | + if (temporaryBloodModel != null) | |
249 | + { | |
250 | + setMap(map,temporaryBloodModel.getUserName(),temporaryBloodModel.getAge(),temporaryBloodModel.getLastMenses(), created); | |
251 | + } | |
252 | + } | |
253 | + | |
254 | + private void setMap(Map map,String userName,Integer age,Date lastMenses,Date created) | |
255 | + { | |
256 | + map.put("userName", userName); | |
257 | + map.put("age",age); | |
258 | + map.put("week",DateUtil.getWeekDesc(lastMenses,created)); | |
259 | + } | |
260 | + | |
261 | + /** | |
262 | + * 更新条件查询到的结算状态 | |
263 | + * @param healthType | |
264 | + * @param hospitalId | |
265 | + * @param time | |
266 | + * @param source | |
267 | + * @param status | |
268 | + * @param type | |
269 | + * @param userId | |
270 | + * @return | |
271 | + */ | |
184 | 272 | public BaseResponse setHealthCharged(Integer healthType, String hospitalId, String time, Integer source, Integer status, Integer type, Integer userId) |
185 | 273 | { |
186 | 274 | |
... | ... | @@ -201,7 +289,6 @@ |
201 | 289 | { |
202 | 290 | healthChargeQuery.setCreatedEnd(DateUtil.parseYMDHMS(dates[1] + " 23:59:59")); |
203 | 291 | } |
204 | - | |
205 | 292 | recordModel.setStartDate(DateUtil.parseYMD(dates[0])); |
206 | 293 | recordModel.setEndDate(DateUtil.parseYMD(dates[1])); |
207 | 294 | } |
... | ... | @@ -217,8 +304,6 @@ |
217 | 304 | |
218 | 305 | chargeRecordService.addChargeRecord(recordModel); |
219 | 306 | |
220 | - | |
221 | - | |
222 | 307 | HealthChargeModel model = new HealthChargeModel(); |
223 | 308 | model.setChargeRecordId(recordModel.getId()); |
224 | 309 | model.setStatus(2); |
... | ... | @@ -279,7 +364,6 @@ |
279 | 364 | List<HealthChargeModel> list = healthChargeService.queryHealthChargeList(healthChargeQuery); |
280 | 365 | if (CollectionUtils.isNotEmpty(list)) |
281 | 366 | { |
282 | - | |
283 | 367 | for (HealthChargeModel model : list) |
284 | 368 | { |
285 | 369 | Map map = getData(model); |
... | ... | @@ -293,6 +377,7 @@ |
293 | 377 | cnames.put("age", "年龄"); |
294 | 378 | cnames.put("week", "孕周"); |
295 | 379 | cnames.put("type", "报告类型"); |
380 | + cnames.put("status", "结算状态"); | |
296 | 381 | cnames.put("source", "数据来源"); |
297 | 382 | cnames.put("time", "结款时间"); |
298 | 383 | response.setContentType("application/octet-stream"); |