diff --git a/platform-dal/src/main/java/com/lyms/platform/pojo/TemporaryWeightModel.java b/platform-dal/src/main/java/com/lyms/platform/pojo/TemporaryWeightModel.java index cda4803..6630d24 100644 --- a/platform-dal/src/main/java/com/lyms/platform/pojo/TemporaryWeightModel.java +++ b/platform-dal/src/main/java/com/lyms/platform/pojo/TemporaryWeightModel.java @@ -51,6 +51,15 @@ public class TemporaryWeightModel extends BaseModel { //高危补充说明 private List otherRisk; + private String doctorName; + + public String getDoctorName() { + return doctorName; + } + + public void setDoctorName(String doctorName) { + this.doctorName = doctorName; + } public String getHighriskDesc() { return highriskDesc; diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TemporaryWeightController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TemporaryWeightController.java index 388ffd6..6023f89 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TemporaryWeightController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/TemporaryWeightController.java @@ -3,6 +3,7 @@ package com.lyms.platform.operate.web.controller; import com.lyms.platform.common.annotation.TokenRequired; import com.lyms.platform.common.base.BaseController; +import com.lyms.platform.common.base.LoginContext; import com.lyms.platform.common.constants.ErrorCodeConstants; import com.lyms.platform.common.result.BaseObjectResponse; import com.lyms.platform.common.result.BaseResponse; @@ -10,6 +11,7 @@ import com.lyms.platform.operate.web.service.TemporaryWeightService; import com.lyms.platform.pojo.TemporaryWeightModel; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; +import org.springframework.util.Assert; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; @@ -26,7 +28,7 @@ public class TemporaryWeightController extends BaseController { @TokenRequired @ResponseBody public BaseResponse addTemporaryWeight(@Valid @RequestBody TemporaryWeightModel temporaryWeightModel, HttpServletRequest request) { - return temporaryWeightService.addTemporaryWeight(temporaryWeightModel); + return temporaryWeightService.addTemporaryWeight(temporaryWeightModel, getUserId(request)); } @RequestMapping(value = "/update", method = RequestMethod.PUT) @@ -52,8 +54,8 @@ public class TemporaryWeightController extends BaseController { @RequestMapping(value = "/queryAll", method = RequestMethod.GET) @TokenRequired @ResponseBody - public BaseResponse queryAll(String key, Integer stateWeek, Integer endWeek, Integer age, Integer page, Integer limit) { - return temporaryWeightService.queryAll(key, stateWeek, endWeek, age, page, limit); + public BaseResponse queryAll(String key, Integer stateWeek, Integer endWeek, Integer age, Integer page, Integer limit, HttpServletRequest request) { + return temporaryWeightService.queryAll(key, stateWeek, endWeek, age, page, limit, getUserId(request)); } @ResponseBody @@ -98,4 +100,9 @@ public class TemporaryWeightController extends BaseController { return temporaryWeightService.report(id, getUserId(request), rid); } + protected Integer getUserId(HttpServletRequest request) { + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + Assert.notNull(loginState, "未登录"); + return loginState.getId(); + } } diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TemporaryWeightService.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TemporaryWeightService.java index e8acfaa..2b7eb5a 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TemporaryWeightService.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/TemporaryWeightService.java @@ -6,7 +6,7 @@ import org.springframework.data.mongodb.core.query.Query; public interface TemporaryWeightService extends IBaseService { - BaseResponse addTemporaryWeight(TemporaryWeightModel weightModel); + BaseResponse addTemporaryWeight(TemporaryWeightModel weightModel, Integer userId); void updateTemporaryWeight(Query query, TemporaryWeightModel weightModel); @@ -14,7 +14,7 @@ public interface TemporaryWeightService extends IBaseService { BaseResponse queryOne(String phone); - BaseResponse queryAll(String key, Integer stateWeek, Integer endWeek, Integer age, Integer page, Integer limit); + BaseResponse queryAll(String key, Integer stateWeek, Integer endWeek, Integer age, Integer page, Integer limit, Integer userId); BaseResponse info(String phone); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryWeightServiceImpl.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryWeightServiceImpl.java index ddf7b9c..6c78a14 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryWeightServiceImpl.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/service/impl/TemporaryWeightServiceImpl.java @@ -18,7 +18,9 @@ import com.lyms.platform.operate.web.utils.CollectionUtils; import com.lyms.platform.operate.web.utils.MathUtil; import com.lyms.platform.operate.web.utils.ReportConfig; import com.lyms.platform.permission.model.Organization; +import com.lyms.platform.permission.model.Users; import com.lyms.platform.permission.service.OrganizationService; +import com.lyms.platform.permission.service.UsersService; import com.lyms.platform.pojo.*; import org.apache.commons.collections.MapUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -55,9 +57,11 @@ public class TemporaryWeightServiceImpl extends BaseServiceImpl implements Tempo @Autowired private BasicConfigService basicConfigService; + @Autowired + private UsersService usersService; @Override - public BaseResponse addTemporaryWeight(TemporaryWeightModel weightModel) { + public BaseResponse addTemporaryWeight(TemporaryWeightModel weightModel, Integer userId) { if (StringUtils.isNotEmpty(weightModel.getPhone())) { TemporaryWeightModel temporaryWeightModel = mongoTemplate.findOne(Query.query(Criteria.where("phone").is(weightModel.getPhone())), TemporaryWeightModel.class); if (temporaryWeightModel != null) { @@ -70,6 +74,8 @@ public class TemporaryWeightServiceImpl extends BaseServiceImpl implements Tempo weightModel.setYn(1); weightModel.setModified(new Date()); weightModel.setCreated(new Date()); + Users users = usersService.getUsers(userId); + weightModel.setDoctorName(users.getAccount()); Map dayWeights = new LinkedHashMap<>(); List> dayWeights2 = new ArrayList<>(); /* if (MapUtils.isNotEmpty(temporaryWeightModel.getDayWeights())) { @@ -107,7 +113,7 @@ public class TemporaryWeightServiceImpl extends BaseServiceImpl implements Tempo } @Override - public BaseResponse queryAll(String key, Integer stateWeek, Integer endWeek, Integer age, Integer page, Integer limit) { + public BaseResponse queryAll(String key, Integer stateWeek, Integer endWeek, Integer age, Integer page, Integer limit, Integer userId) { boolean flag = false; Criteria pCriteria = Criteria.where("yn").ne(0); Criteria criteria = Criteria.where("yn").ne(0); @@ -135,8 +141,31 @@ public class TemporaryWeightServiceImpl extends BaseServiceImpl implements Tempo } criteria.and("_id").in(ids); } + Users users = usersService.getUsers(userId); + System.out.println("=========>" + users.getAccount()); + PageResult pageResult = findMongoPage(TemporaryWeightModel.class, new Query(criteria).with(new Sort(Sort.Direction.DESC, "modified")), page, limit); - return new BaseObjectResponse().setErrorcode(ErrorCodeConstants.SUCCESS).setErrormsg("成功").setData(pageResult); + List patientWeights = (List) pageResult.getGrid(); + List> restMap = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(patientWeights)) { + for (TemporaryWeightModel patientWeight : patientWeights) { + // Patients p = mongoTemplate.findById(patientWeight.getPatientId(), Patients.class); + Map temp = new LinkedHashMap<>(); + temp.put("id", patientWeight.getId()); + temp.put("username", patientWeight.getUserName()); + temp.put("age", patientWeight.getAge()); + temp.put("week", DateUtil.getWeekDesc(patientWeight.getLastMenses(), new Date())); + temp.put("beforeWeight", patientWeight.getBeforeWeight()); + temp.put("beforeHeight", patientWeight.getBeforeHeight()); + temp.put("bim", patientWeight.getBmi()); // 体质指数(BMI)=体重(kg)÷身高^2(m) + temp.put("nowWeight", patientWeight.getNowWeight()); + temp.put("time", DateUtil.getyyyy_MM_dd(patientWeight.getModified())); + temp.put("doctorName", patientWeight.getDoctorName()); + restMap.add(temp); + } + } + pageResult.setGrid(restMap); + return RespBuilder.buildSuccess(pageResult); }