Commit e09db63deb94bebc03a483787e7b0c37dc2dbf73

Authored by wtt
1 parent 3647ce6b0d

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 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