Commit 46764993b20a6e1c41e22f24b60fe2c52f2f611d

Authored by yangfei
1 parent d54241d1cd

查询号bug修改

Showing 5 changed files with 420 additions and 65 deletions

platform-common/src/main/java/com/lyms/platform/common/result/BaseObjectResponse.java View file @ 4676499
1 1 package com.lyms.platform.common.result;
2 2  
  3 +import com.lyms.platform.common.base.PageInfo;
  4 +
3 5 public class BaseObjectResponse extends BaseResponse {
4 6  
5 7 /**
... ... @@ -8,6 +10,16 @@
8 10 private static final long serialVersionUID = 1L;
9 11  
10 12 private Object data;
  13 +
  14 + private PageInfo pageInfo;
  15 +
  16 + public PageInfo getPageInfo() {
  17 + return pageInfo;
  18 + }
  19 +
  20 + public void setPageInfo(PageInfo pageInfo) {
  21 + this.pageInfo = pageInfo;
  22 + }
11 23  
12 24 public Object getData() {
13 25 return data;
platform-dal/src/main/java/com/lyms/platform/query/AntExChuQuery.java View file @ 4676499
... ... @@ -33,7 +33,16 @@
33 33 private String pid;
34 34 private Date checkTimeStart;
35 35 private Date checkTimeEnd;
  36 + private String checkDoctor;
36 37  
  38 + public String getCheckDoctor() {
  39 + return checkDoctor;
  40 + }
  41 +
  42 + public void setCheckDoctor(String checkDoctor) {
  43 + this.checkDoctor = checkDoctor;
  44 + }
  45 +
37 46 public List<String> getParentIds() {
38 47 return parentIds;
39 48 }
... ... @@ -167,6 +176,9 @@
167 176  
168 177 if (null != hospitalId) {
169 178 condition = condition.and("hospitalId", hospitalId, MongoOper.IS);
  179 + }
  180 + if (null != checkDoctor) {
  181 + condition = condition.and("prodDoctor", checkDoctor, MongoOper.IS);
170 182 }
171 183 if (null != pid) {
172 184 condition = condition.and("pid", pid, MongoOper.IS);
platform-dal/src/main/java/com/lyms/platform/query/AntExQuery.java View file @ 4676499
... ... @@ -30,12 +30,21 @@
30 30 private boolean neStart;
31 31  
32 32 private boolean neEnd;
  33 + private String checkDoctor;
33 34  
34 35 //大于修改时间
35 36 private Date gteModified;
36 37  
37 38 private Date gteCreated;
38 39  
  40 + public String getCheckDoctor() {
  41 + return checkDoctor;
  42 + }
  43 +
  44 + public void setCheckDoctor(String checkDoctor) {
  45 + this.checkDoctor = checkDoctor;
  46 + }
  47 +
39 48 public List<String> getParentIds() {
40 49 return parentIds;
41 50 }
... ... @@ -128,6 +137,9 @@
128 137 }
129 138 if(null!=id){
130 139 condition= condition.and("id",id, MongoOper.IS);
  140 + }
  141 + if(null!=checkDoctor){
  142 + condition= condition.and("checkDoctor",checkDoctor, MongoOper.IS);
131 143 }
132 144  
133 145  
platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/AntexDoctorStatistController.java View file @ 4676499
... ... @@ -2,12 +2,16 @@
2 2  
3 3 import com.lyms.hospitalapi.pojo.ReportModel;
4 4 import com.lyms.platform.biz.service.AntenatalExaminationService;
  5 +import com.lyms.platform.biz.service.BasicConfigService;
  6 +import com.lyms.platform.biz.service.CommonService;
5 7 import com.lyms.platform.biz.service.YunBookbuildingService;
6 8 import com.lyms.platform.common.annotation.TokenRequired;
7 9 import com.lyms.platform.common.base.BaseController;
8 10 import com.lyms.platform.common.base.LoginContext;
  11 +import com.lyms.platform.common.base.PageInfo;
9 12 import com.lyms.platform.common.result.BaseObjectResponse;
10 13 import com.lyms.platform.common.utils.BeanUtils;
  14 +import com.lyms.platform.common.utils.DateUtil;
11 15 import com.lyms.platform.operate.web.facade.AutoMatchFacade;
12 16 import com.lyms.platform.operate.web.result.AntextDoctorPatient;
13 17 import com.lyms.platform.operate.web.result.AntextDoctorResult;
... ... @@ -19,6 +23,7 @@
19 23 import com.lyms.platform.query.AntExChuQuery;
20 24 import com.lyms.platform.query.AntExQuery;
21 25 import com.lyms.platform.query.PatientsQuery;
  26 +import org.apache.commons.collections.CollectionUtils;
22 27 import org.apache.commons.collections.map.HashedMap;
23 28 import org.apache.commons.lang.StringUtils;
24 29 import org.springframework.beans.factory.annotation.Autowired;
25 30  
26 31  
27 32  
28 33  
29 34  
30 35  
31 36  
32 37  
33 38  
34 39  
35 40  
36 41  
37 42  
38 43  
39 44  
40 45  
... ... @@ -47,56 +52,202 @@
47 52 private YunBookbuildingService yunBookbuildingService;
48 53 @Autowired
49 54 private UsersService usersService;
  55 + @Autowired
  56 + private BasicConfigService basicConfigService;
  57 + @Autowired
  58 + private CommonService commonService;
50 59  
  60 +
51 61 /**
52   - * 产检医生统计
  62 + * 产检医生统计详情
53 63 *
54   - * @param startDate 建档开始时间
55   - * @param endDate 建档结束时间
56   - * @param childBirth 统计范围 1=孕妇 3=产妇 不传=全部
  64 + * @param startDate 建档开始时间
  65 + * @param endDate 建档结束时间
  66 + * @param childBirth 统计范围 1=孕妇 3=产妇 不传=全部
  67 + * @param number 产检次数 点的是产检人数的话就传1, 2次(含)以上就传2, 5次(含)以上就传5
  68 + * @param doctorId 医生ID
  69 + * @param currentPage 当前页
  70 + * @param pageSize 每页显示的数量
57 71 * @return
58 72 */
59   - @RequestMapping(method = RequestMethod.GET,value = "/getDoctorStatic")
  73 + @RequestMapping(method = RequestMethod.GET, value = "/doctorStatInfo")
60 74 @ResponseBody
61 75 @TokenRequired
62   - public BaseObjectResponse getDoctorStatic(Date startDate,Date endDate,Integer childBirth ,HttpServletRequest request){
63   - BaseObjectResponse rest = new BaseObjectResponse();
64   -
  76 + public BaseObjectResponse doctorInfo(Date startDate, Date endDate, Integer childBirth, Integer number, String doctorId,
  77 + Integer currentPage, Integer pageSize, HttpServletRequest request) {
65 78 LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
  79 + if(pageSize==null){
  80 + pageSize = 20;
  81 + }
  82 + if(currentPage==null){
  83 + currentPage = 1;
  84 + }
  85 + if(number == null){
  86 + number=1;
  87 + }
  88 +
  89 + //获取患者信息
  90 + List<AntextDoctorPatient> antextDoctorPatient = getPatientList(loginState.getId(), startDate, endDate, childBirth ,doctorId,number);
  91 + //结果数据集合
  92 + Map<String, AntextDoctorPatient> resultInfo = new HashMap<>();
  93 +
  94 + List<String> patientIds = new ArrayList<>();
  95 +
  96 + for (AntextDoctorPatient adp : antextDoctorPatient) {
  97 + if (resultInfo.containsKey(adp.getpId())) {//存在
  98 + AntextDoctorPatient antextDoctorPatient1 = resultInfo.get(adp.getpId());
  99 + antextDoctorPatient1.setCjNum(antextDoctorPatient1.getCjNum() + 1);
  100 + if (StringUtils.isNotEmpty(adp.getRiskFactors())) {//高危风险不为空
  101 + antextDoctorPatient1.setRiskFactors(adp.getRiskFactors());
  102 + }
  103 + if (CollectionUtils.isNotEmpty(adp.getRiskLevelId())) {
  104 + antextDoctorPatient1.setRiskLevelId(adp.getRiskLevelId());
  105 + }
  106 + if (StringUtils.isNotEmpty(adp.getcDueWeek())) {
  107 + antextDoctorPatient1.setcDueWeek(adp.getcDueWeek());
  108 + }
  109 + if (adp.getDueFmDate() != null) {
  110 + antextDoctorPatient1.setDueFmDate(adp.getDueFmDate());
  111 + }
  112 + } else {//不存在
  113 + patientIds.add(adp.getpId());
  114 + adp.setCjNum(1);
  115 + resultInfo.put(adp.getpId(), adp);
  116 + }
  117 + }
  118 + if(CollectionUtils.isNotEmpty(patientIds)){
  119 + getAllPatientList(patientIds, resultInfo);
  120 + }
  121 +
  122 +
  123 + List<AntextDoctorPatient> antextDoctorPatients = new ArrayList<>();
  124 +
  125 + for (Map.Entry<String, AntextDoctorPatient> adp : resultInfo.entrySet()) {
  126 + AntextDoctorPatient antextDoctorPatient1 = adp.getValue();
  127 + if(number==2){//2次及以上
  128 + if(antextDoctorPatient1.getCjNum()>1){
  129 + antextDoctorPatients.add(adp.getValue());
  130 + }
  131 + }else if(number==5){//5次及以上
  132 + if(antextDoctorPatient1.getCjNum()>4){
  133 + antextDoctorPatients.add(adp.getValue());
  134 + }
  135 + }else {
  136 + antextDoctorPatients.add(adp.getValue());
  137 + }
  138 + }
  139 +
  140 + PageInfo pageInfo = new PageInfo();
  141 + pageInfo.setLimit(pageSize);
  142 + pageInfo.setPage(currentPage);
  143 + pageInfo.setCount(resultInfo.size());
  144 +
  145 + int startIndex = pageSize*(currentPage-1);
  146 +
  147 + List<AntextDoctorPatient> resultData = new ArrayList<>();
  148 +
  149 + if(CollectionUtils.isNotEmpty(antextDoctorPatients)&&antextDoctorPatients.size()>startIndex){
  150 + int size = startIndex+pageSize;
  151 + if(antextDoctorPatients.size()<size){
  152 + size = antextDoctorPatients.size();
  153 + }
  154 + for(int i = startIndex;i<size;i++){
  155 + resultData.add(antextDoctorPatients.get(i));
  156 + }
  157 + }
  158 + BaseObjectResponse result = new BaseObjectResponse();
  159 + result.setData(resultData);
  160 + result.setPageInfo(pageInfo);
  161 + return result;
  162 + }
  163 +
  164 + //获取患者全部检测数据
  165 + public void getAllPatientList(List<String> patientId, Map<String, AntextDoctorPatient> resultInfo) {
  166 + //根据patientId集合查询产检表、产检复查表,获取医生id、patientId列表
  167 + AntExChuQuery antExChuQuery = new AntExChuQuery();
  168 + //患者集合
  169 + antExChuQuery.setParentIds(patientId);
  170 + antExChuQuery.setYn(1);
  171 + //初诊集合列表
  172 + List<AntExChuModel> antExChuModels = antExService.queryAntExChu(antExChuQuery);
  173 + AntExQuery antExQuery = new AntExQuery();
  174 + antExQuery.setParentIds(patientId);
  175 + antExQuery.setYn(1);
  176 + //复诊集合列表
  177 + List<AntenatalExaminationModel> antenatalExaminationModels = antExService.queryAntenatalExamination(antExQuery.convertToQuery());
  178 +
  179 + List<AntextDoctorPatient> antextDoctorPatient = new ArrayList<>();
  180 + //添加初诊结果
  181 + for (AntExChuModel ac : antExChuModels) {
  182 + AntextDoctorPatient doctorPatient = resultInfo.get(ac.getParentId());
  183 + doctorPatient.setAllCjNum(doctorPatient.getAllCjNum() + 1);
  184 +
  185 + if (ac.getCheckTime().after(doctorPatient.getCheckTime())) {
  186 + doctorPatient.setCheckTime(ac.getCheckTime());
  187 + doctorPatient.setCheckDoctor(ac.getProdDoctor());
  188 + }
  189 + }
  190 + //添加复诊结果
  191 + for (AntenatalExaminationModel aec : antenatalExaminationModels) {
  192 + AntextDoctorPatient doctorPatient = resultInfo.get(aec.getParentId());
  193 + doctorPatient.setAllCjNum(doctorPatient.getAllCjNum() + 1);
  194 + if (aec.getCheckDate().after(doctorPatient.getCheckTime())) {
  195 + doctorPatient.setCheckTime(aec.getCheckDate());
  196 + doctorPatient.setCheckDoctor(aec.getCheckDoctor());
  197 + }
  198 + }
  199 + }
  200 +
  201 +
  202 + public List<AntextDoctorPatient> getPatientList(Integer userId, Date startDate, Date endDate, Integer childBirth,String doctorId,Integer number) {
  203 +
66 204 //根据当前登录人获取医院id
67   - String hospital = autoMatchFacade.getHospitalId(loginState.getId());
  205 + String hospital = autoMatchFacade.getHospitalId(userId);
68 206 PatientsQuery patientsQuery = new PatientsQuery();
69 207 //医院id
70 208 patientsQuery.setHospitalId(hospital);
71   - if(startDate!=null){
  209 + if (startDate != null) {
72 210 //建档开始时间
73 211 patientsQuery.setBookbuildingDateStart(startDate);
74 212 }
75   - if(endDate!=null){
  213 + if (endDate != null) {
76 214 //建档结束时间
77 215 patientsQuery.setBookbuildingDateEnd(endDate);
78 216 }
79 217 //有效
80 218 patientsQuery.setYn(1);
81   - if(childBirth!=null){
  219 + if (childBirth != null) {
82 220 patientsQuery.setType(childBirth);
83 221 }
84 222 //获取患者集合
85 223 List<Patients> patientss = yunBookbuildingService.queryPregnantWithQuery(patientsQuery);
  224 +
  225 + if(CollectionUtils.isEmpty(patientss)){
  226 + return new ArrayList<>();
  227 + }
86 228 //患者id
87 229 List<String> pIds = new ArrayList<>();
88   - for(Patients ps : patientss){
  230 + Map<String, Patients> patientsMap = new HashMap<>();
  231 + for (Patients ps : patientss) {
89 232 pIds.add(ps.getId());
  233 + patientsMap.put(ps.getId(), ps);
90 234 }
  235 +
91 236 //根据patientId集合查询产检表、产检复查表,获取医生id、patientId列表
92 237 AntExChuQuery antExChuQuery = new AntExChuQuery();
93 238 //患者集合
94 239 antExChuQuery.setParentIds(pIds);
  240 + if(StringUtils.isNotEmpty(doctorId)){
  241 + antExChuQuery.setCheckDoctor(doctorId);
  242 + }
95 243 antExChuQuery.setYn(1);
96 244 antExChuQuery.setHospitalId(hospital);
97 245 //初诊集合列表
98 246 List<AntExChuModel> antExChuModels = antExService.queryAntExChu(antExChuQuery);
99 247 AntExQuery antExQuery = new AntExQuery();
  248 + if(StringUtils.isNotEmpty(doctorId)){
  249 + antExQuery.setCheckDoctor(doctorId);
  250 + }
100 251 antExQuery.setHospitalId(hospital);
101 252 antExQuery.setParentIds(pIds);
102 253 antExQuery.setYn(1);
103 254  
104 255  
105 256  
106 257  
107 258  
... ... @@ -104,21 +255,79 @@
104 255 List<AntenatalExaminationModel> antenatalExaminationModels = antExService.queryAntenatalExamination(antExQuery.convertToQuery());
105 256  
106 257 List<AntextDoctorPatient> antextDoctorPatient = new ArrayList<>();
107   - for(AntExChuModel ac : antExChuModels){
  258 + //添加初诊结果
  259 + for (AntExChuModel ac : antExChuModels) {
108 260 AntextDoctorPatient adp = new AntextDoctorPatient();
109 261 adp.setDoctorId(ac.getProdDoctor());
110   - adp.setpId(ac.getPid());
  262 + adp.setpId(ac.getParentId());
  263 + Patients patients = patientsMap.get(ac.getParentId());
  264 + if (patients.getType() == 1) {//孕妇
  265 + //计算孕周
  266 + adp.setcDueWeek(com.lyms.platform.common.utils.StringUtils.dueWeek(DateUtil.daysBetween(patients.getLastMenses(), new Date())));
  267 + adp.setDueFmDate(patients.getDueDate());
  268 + } else if (patients.getType() == 3) {//3-产妇
  269 + adp.setcDueWeek("已分娩");
  270 + adp.setDueFmDate(patients.getFmDate());
  271 + }
  272 + adp.setCheckTime(ac.getCheckTime());
  273 + adp.setpName(patients.getUsername());
  274 + //高危因数
  275 + adp.setRiskFactors(commonService.resloveFactor(patients.getRiskFactorId()));
  276 + //高危等级颜色
  277 + adp.setRiskLevelId(commonService.findRiskLevel(patients.getRiskLevelId()));
111 278 antextDoctorPatient.add(adp);
112 279 }
113   - for(AntenatalExaminationModel aec : antenatalExaminationModels){
  280 + //添加复诊结果
  281 + for (AntenatalExaminationModel aec : antenatalExaminationModels) {
114 282 AntextDoctorPatient adp = new AntextDoctorPatient();
115 283 adp.setDoctorId(aec.getCheckDoctor());
116   - adp.setpId(aec.getPid());
  284 + adp.setpId(aec.getParentId());
  285 + adp.setCheckTime(aec.getCheckDate());
117 286 antextDoctorPatient.add(adp);
118 287 }
119   - Map<String,AntextDoctorResult> adr1 = new HashMap<>();
  288 + if(number!=null){
  289 + if(number == 2){
  290 + for(AntextDoctorPatient ad :antextDoctorPatient){
  291 + if(ad.getCjNum()<2){
  292 + antextDoctorPatient.remove(ad);
  293 + }
  294 + }
  295 + }else if(number == 5){
  296 + for(AntextDoctorPatient ad :antextDoctorPatient){
  297 + if(ad.getCjNum()<5){
  298 + antextDoctorPatient.remove(ad);
  299 + }
  300 + }
  301 + }
  302 + }
  303 +
  304 +
  305 +
  306 + return antextDoctorPatient;
  307 + }
  308 +
  309 + /**
  310 + * 产检医生统计
  311 + *
  312 + * @param startDate 建档开始时间
  313 + * @param endDate 建档结束时间
  314 + * @param childBirth 统计范围 1=孕妇 3=产妇 不传=全部
  315 + * @return
  316 + */
  317 + @RequestMapping(method = RequestMethod.GET, value = "/getDoctorStatic")
  318 + @ResponseBody
  319 + @TokenRequired
  320 + public BaseObjectResponse getDoctorStatic(Date startDate, Date endDate, Integer childBirth, HttpServletRequest request) {
  321 + BaseObjectResponse rest = new BaseObjectResponse();
  322 +
  323 + LoginContext loginState = (LoginContext) request.getAttribute("loginContext");
  324 +
  325 + //获取患者信息
  326 + List<AntextDoctorPatient> antextDoctorPatient = getPatientList(loginState.getId(), startDate, endDate, childBirth,null,null);
  327 +
  328 + Map<String, AntextDoctorResult> adr1 = new HashMap<>();
120 329 //医生ID+患者ID 用与医生对于产检人数 + 总人数:患者ID
121   - Map<String,Integer> dpm = new HashMap<>();
  330 + Map<String, Integer> dpm = new HashMap<>();
122 331  
123 332 //产检总人数
124 333 int allCount = 0;
125 334  
126 335  
127 336  
128 337  
129 338  
130 339  
131 340  
132 341  
133 342  
... ... @@ -129,40 +338,40 @@
129 338 //产检五次及以上;
130 339 int allFive = 0;
131 340  
132   - for(AntextDoctorPatient adp : antextDoctorPatient){
133   - if(!dpm.containsKey(adp.getpId())){
  341 + for (AntextDoctorPatient adp : antextDoctorPatient) {
  342 + if (!dpm.containsKey(adp.getpId())) {
134 343 allCount++;
135   - dpm.put(adp.getpId(),1);
136   - }else{
137   - Integer cjrc = dpm.get(adp.getpId());
  344 + dpm.put(adp.getpId(), 1);
  345 + } else {
  346 + Integer cjrc = dpm.get(adp.getpId());
138 347 cjrc++;
139   - if(cjrc == 2){
  348 + if (cjrc == 2) {
140 349 allDoub++;
141 350 }
142   - if(cjrc == 5){
  351 + if (cjrc == 5) {
143 352 allFive++;
144 353 }
145   - dpm.put(adp.getpId(),cjrc);
  354 + dpm.put(adp.getpId(), cjrc);
146 355 }
147 356 allCjrc++;
148 357  
149   - if(adr1.containsKey(adp.getDoctorId())){
  358 + if (adr1.containsKey(adp.getDoctorId())) {
150 359 AntextDoctorResult adr = adr1.get(adp.getDoctorId());
151   - if(!dpm.containsKey(adp.getDoctorId()+adp.getpId())){//如果不存在,产检人数加1
152   - adr.setInspectPeople(adr.getInspectPeople()+1);
153   - dpm.put(adp.getDoctorId()+adp.getpId(),1);
154   - }else{//如果存在,则检测测试加一
155   - Integer num = dpm.get(adp.getDoctorId()+adp.getpId());
  360 + if (!dpm.containsKey(adp.getDoctorId() + adp.getpId())) {//如果不存在,产检人数加1
  361 + adr.setInspectPeople(adr.getInspectPeople() + 1);
  362 + dpm.put(adp.getDoctorId() + adp.getpId(), 1);
  363 + } else {//如果存在,则检测测试加一
  364 + Integer num = dpm.get(adp.getDoctorId() + adp.getpId());
156 365 ++num;
157   - if(num == 2){
158   - adr.setTwice(adr.getTwice()+1);
159   - }else if(num==5){
160   - adr.setFiveTimes(adr.getFiveTimes()+1);
  366 + if (num == 2) {
  367 + adr.setTwice(adr.getTwice() + 1);
  368 + } else if (num == 5) {
  369 + adr.setFiveTimes(adr.getFiveTimes() + 1);
161 370 }
162   - dpm.put(adp.getDoctorId()+adp.getpId(),num);
  371 + dpm.put(adp.getDoctorId() + adp.getpId(), num);
163 372 }
164   - adr.setInspectTime(adr.getInspectTime()+1);
165   - }else{
  373 + adr.setInspectTime(adr.getInspectTime() + 1);
  374 + } else {
166 375 AntextDoctorResult adr = new AntextDoctorResult();
167 376 adr.setDoctorId(adp.getDoctorId());
168 377 adr.setInspectPeople(1);
169 378  
170 379  
171 380  
172 381  
173 382  
174 383  
175 384  
176 385  
177 386  
... ... @@ -171,38 +380,38 @@
171 380 adr.setFiveTimes(0);
172 381 adr.setTwiceProportion("");
173 382 adr.setFiveTimeProportion("");
174   - adr1.put(adp.getDoctorId(),adr);
175   - dpm.put(adp.getDoctorId()+adp.getpId(),1);
  383 + adr1.put(adp.getDoctorId(), adr);
  384 + dpm.put(adp.getDoctorId() + adp.getpId(), 1);
176 385 }
177 386 }
178 387  
179   - List<Map<String,Object>> gridList = new ArrayList<>();
  388 + List<Map<String, Object>> gridList = new ArrayList<>();
180 389 //存总计
181 390 gridList.add(new HashedMap());
182 391 //表表图数据
183 392 List<Object> doctorInfo = new ArrayList<>();
184 393  
185   - for(Map.Entry<String,AntextDoctorResult> adr : adr1.entrySet()){
  394 + for (Map.Entry<String, AntextDoctorResult> adr : adr1.entrySet()) {
186 395 // System.out.println(adr.getValue().toString());
187 396 AntextDoctorResult ar = adr.getValue();
188 397  
189   - if(StringUtils.isNotEmpty(ar.getDoctorId())){
190   - Users users = usersService.getUsers(Integer.parseInt(ar.getDoctorId()));
191   - if(users!=null){
  398 + if (StringUtils.isNotEmpty(ar.getDoctorId())) {
  399 + Users users = usersService.getUsers(Integer.parseInt(ar.getDoctorId()));
  400 + if (users != null) {
192 401 ar.setDoctorName(users.getName());
193   - }else{
  402 + } else {
194 403 ar.setDoctorName("产检医生");
195 404 }
196   - }else{
  405 + } else {
197 406 ar.setDoctorName("产检医生");
198 407 }
199   - if(ar.getTwice()>0){
  408 + if (ar.getTwice() > 0) {
200 409 DecimalFormat df = new DecimalFormat("0.0");//格式化小数,不足的补0
201   - ar.setTwiceProportion(df.format((float)ar.getTwice()/ar.getInspectPeople()*100)+"%");
  410 + ar.setTwiceProportion(df.format((float) ar.getTwice() / ar.getInspectPeople() * 100) + "%");
202 411 }
203   - if(ar.getFiveTimes()>0){
  412 + if (ar.getFiveTimes() > 0) {
204 413 DecimalFormat df = new DecimalFormat("0.0");//格式化小数,不足的补0
205   - ar.setFiveTimeProportion(df.format((float)ar.getFiveTimes()/ar.getInspectPeople()*100)+"%");
  414 + ar.setFiveTimeProportion(df.format((float) ar.getFiveTimes() / ar.getInspectPeople() * 100) + "%");
206 415 }
207 416 gridList.add(BeanUtils.objectToObjectMap(ar));
208 417  
209 418  
210 419  
211 420  
212 421  
... ... @@ -224,26 +433,26 @@
224 433 String allDoubBl = "";
225 434 String allFiveBl = "";
226 435  
227   - if(allDoub>0){
  436 + if (allDoub > 0) {
228 437 //两次比例
229   - allDoubBl = df.format((float)allDoub/allCount*100)+"%";
  438 + allDoubBl = df.format((float) allDoub / allCount * 100) + "%";
230 439 }
231   - if(allFive>0){
  440 + if (allFive > 0) {
232 441 //五次比例
233   - allFiveBl = df.format((float)allFive/allCount*100)+"%";
  442 + allFiveBl = df.format((float) allFive / allCount * 100) + "%";
234 443 }
235 444  
236 445 // System.out.println("总人数:"+allCount+",总人次:"+allCjrc+",总2次以上:"+allDoub+",总5次以上:"+allFive+",总两次比例:"+allDoubBl+",总五次比例:"+allFiveBl);
237 446  
238 447 //填充总计数据
239   - Map<String,Object> allMap = gridList.get(0);
240   - allMap.put("doctorName","总计");
241   - allMap.put("inspectTime",allCjrc);
242   - allMap.put("inspectPeople",allCount);
243   - allMap.put("twice",allDoub);
244   - allMap.put("twiceProportion",allDoubBl);
245   - allMap.put("fiveTimes",allFive);
246   - allMap.put("fiveTimeProportion",allFiveBl);
  448 + Map<String, Object> allMap = gridList.get(0);
  449 + allMap.put("doctorName", "总计");
  450 + allMap.put("inspectTime", allCjrc);
  451 + allMap.put("inspectPeople", allCount);
  452 + allMap.put("twice", allDoub);
  453 + allMap.put("twiceProportion", allDoubBl);
  454 + allMap.put("fiveTimes", allFive);
  455 + allMap.put("fiveTimeProportion", allFiveBl);
247 456  
248 457 ReportModel reportModel = new ReportModel();
249 458 reportModel.setDoctorInfo(doctorInfo); /** 医生数据详情 */
platform-operate-api/src/main/java/com/lyms/platform/operate/web/result/AntextDoctorPatient.java View file @ 4676499
1 1 package com.lyms.platform.operate.web.result;
2 2  
  3 +import java.util.Date;
  4 +import java.util.List;
  5 +
3 6 /**
4 7 * @auther yangfei
5 8 * @createTime 2017年07月05日 16时58分
6 9  
... ... @@ -10,7 +13,97 @@
10 13 private String doctorId;
11 14 //患者ID
12 15 private String pId;
  16 + //患者姓名
  17 + private String pName;
  18 + //本院产检次数
  19 + private int cjNum;
  20 + //产检总次数
  21 + private int allCjNum;
  22 + //高危风险
  23 + private String riskFactors;
  24 + //风险等级颜色
  25 + private List riskLevelId;
  26 + //孕周或已分娩
  27 + private String cDueWeek;
  28 + //预产期或分娩日期
  29 + private Date dueFmDate;
  30 + //产检时间
  31 + private Date checkTime;
  32 + //产检医生
  33 + private String checkDoctor;
13 34  
  35 + public Date getCheckTime() {
  36 + return checkTime;
  37 + }
  38 +
  39 + public void setCheckTime(Date checkTime) {
  40 + this.checkTime = checkTime;
  41 + }
  42 +
  43 + public String getCheckDoctor() {
  44 + return checkDoctor;
  45 + }
  46 +
  47 + public void setCheckDoctor(String checkDoctor) {
  48 + this.checkDoctor = checkDoctor;
  49 + }
  50 +
  51 + public int getCjNum() {
  52 + return cjNum;
  53 + }
  54 +
  55 + public int getAllCjNum() {
  56 + return allCjNum;
  57 + }
  58 +
  59 + public void setAllCjNum(int allCjNum) {
  60 + this.allCjNum = allCjNum;
  61 + }
  62 +
  63 + public void setCjNum(int cjNum) {
  64 + this.cjNum = cjNum;
  65 + }
  66 +
  67 + public String getpName() {
  68 + return pName;
  69 + }
  70 +
  71 + public void setpName(String pName) {
  72 + this.pName = pName;
  73 + }
  74 +
  75 + public String getcDueWeek() {
  76 + return cDueWeek;
  77 + }
  78 +
  79 + public void setcDueWeek(String cDueWeek) {
  80 + this.cDueWeek = cDueWeek;
  81 + }
  82 +
  83 + public Date getDueFmDate() {
  84 + return dueFmDate;
  85 + }
  86 +
  87 + public void setDueFmDate(Date dueFmDate) {
  88 + this.dueFmDate = dueFmDate;
  89 + }
  90 +
  91 + public String getRiskFactors() {
  92 + return riskFactors;
  93 + }
  94 +
  95 + public void setRiskFactors(String riskFactors) {
  96 + this.riskFactors = riskFactors;
  97 + }
  98 +
  99 + public List getRiskLevelId() {
  100 + return riskLevelId;
  101 + }
  102 +
  103 + public void setRiskLevelId(List riskLevelId) {
  104 + this.riskLevelId = riskLevelId;
  105 + }
  106 +
14 107 public String getDoctorId() {
15 108 return doctorId;
16 109 }
... ... @@ -25,6 +118,23 @@
25 118  
26 119 public void setpId(String pId) {
27 120 this.pId = pId;
  121 + }
  122 +
  123 + @Override
  124 + public String toString() {
  125 + return "AntextDoctorPatient{" +
  126 + "doctorId='" + doctorId + '\'' +
  127 + ", pId='" + pId + '\'' +
  128 + ", pName='" + pName + '\'' +
  129 + ", cjNum=" + cjNum +
  130 + ", allCjNum=" + allCjNum +
  131 + ", riskFactors='" + riskFactors + '\'' +
  132 + ", riskLevelId=" + riskLevelId +
  133 + ", cDueWeek='" + cDueWeek + '\'' +
  134 + ", dueFmDate=" + dueFmDate +
  135 + ", checkTime=" + checkTime +
  136 + ", checkDoctor='" + checkDoctor + '\'' +
  137 + '}';
28 138 }
29 139 }