Commit d3574919653d874b2660bf15769b305bee978f04

Authored by liquanyu
1 parent a9697bc83a

服务

Showing 2 changed files with 26 additions and 10 deletions

platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceFacade.java View file @ d357491
... ... @@ -385,6 +385,7 @@
385 385 public void setServiceRecordAdd(PatientService pser, Patients patients)
386 386 {
387 387  
  388 + Date currentDate = new Date();
388 389 if (pser.getPerType() != null && pser.getPerType() == 2) {//儿童
389 390 return;
390 391 }
391 392  
392 393  
393 394  
394 395  
395 396  
396 397  
397 398  
... ... @@ -396,33 +397,33 @@
396 397 if (serviceWeek != null)
397 398 {
398 399  
399   - Date endTime = DateUtil.addWeek(new Date(), serviceWeek);
  400 + Date endTime = DateUtil.addWeek(currentDate, serviceWeek);
400 401 if (endTime.getTime() > DateUtil.addWeek(lastMenses, 42).getTime())
401 402 {
402 403 endTime = DateUtil.addWeek(lastMenses, 42);
403 404 }
404   - Integer endWeek = DateUtil.getWeek(lastMenses, new Date()) + serviceWeek;
  405 + Integer endWeek = DateUtil.getWeek(lastMenses, currentDate) + serviceWeek;
405 406 endWeek = endWeek > 42 ? 42 : endWeek;
406 407  
407   - pser.setSerStartTime(new Date());
  408 + pser.setSerStartTime(currentDate);
408 409 pser.setSerEndTime(endTime);
409   - pser.setSerStartWeek(DateUtil.getWeek(lastMenses, new Date()));
  410 + pser.setSerStartWeek(DateUtil.getWeek(lastMenses, currentDate));
410 411 pser.setSerEndWeek(endWeek);
411 412 }
412 413 if (doctorService != null)
413 414 {
414   - Date endTime = DateUtil.addWeek(new Date(), doctorService);
  415 + Date endTime = DateUtil.addWeek(currentDate, doctorService);
415 416 if (endTime.getTime() > DateUtil.addWeek(lastMenses, 42).getTime())
416 417 {
417 418 endTime = DateUtil.addWeek(lastMenses, 42);
418 419 }
419 420  
420   - Integer endWeek = DateUtil.getWeek(lastMenses, new Date()) + doctorService;
  421 + Integer endWeek = DateUtil.getWeek(lastMenses, currentDate) + doctorService;
421 422 endWeek = endWeek > 42 ? 42 : endWeek;
422 423  
423   - pser.setDocStartTime(new Date());
  424 + pser.setDocStartTime(currentDate);
424 425 pser.setDocEndTime(endTime);
425   - pser.setDocStartWeek(DateUtil.getWeek(lastMenses, new Date()));
  426 + pser.setDocStartWeek(DateUtil.getWeek(lastMenses, currentDate));
426 427 pser.setDocEndWeek(endWeek);
427 428 }
428 429 }
429 430  
430 431  
... ... @@ -437,17 +438,24 @@
437 438 {
438 439 if (serviceWeek != null)
439 440 {
440   - if (pser.getSerEndTime().getTime() > new Date().getTime())
  441 + //未过期
  442 + if (pser.getSerEndTime() != null && pser.getSerEndTime().getTime() > new Date().getTime())
441 443 {
442 444  
443 445 Date startTime = pser.getSerStartTime();
444 446 Date endTime = DateUtil.addWeek(pser.getSerEndTime(), serviceWeek);
  447 + if (endTime.getTime() > DateUtil.addWeek(lastMenses, 42).getTime())
  448 + {
  449 + endTime = DateUtil.addWeek(lastMenses, 42);
  450 + }
445 451  
446 452 pser.setSerStartTime(startTime);
447 453 pser.setSerEndTime(endTime);
448 454  
449 455 Integer startWeek = DateUtil.getWeek(lastMenses, startTime);
450 456 Integer endWeek = DateUtil.getWeek(lastMenses, pser.getSerEndTime()) + serviceWeek;
  457 + endWeek = endWeek > 42 ? 42 : endWeek;
  458 +
451 459 pser.setSerStartWeek(startWeek);
452 460 pser.setSerEndWeek(endWeek);
453 461 }
454 462  
... ... @@ -462,9 +470,13 @@
462 470  
463 471 if (doctorService != null)
464 472 {
465   - if (pser.getDocEndTime().getTime() > new Date().getTime())
  473 + if (pser.getDocEndTime() != null && pser.getDocEndTime().getTime() > new Date().getTime())
466 474 {
467 475 Date endTime = DateUtil.addWeek(pser.getDocEndTime(),doctorService);
  476 + if (endTime.getTime() > DateUtil.addWeek(lastMenses, 42).getTime())
  477 + {
  478 + endTime = DateUtil.addWeek(lastMenses, 42);
  479 + }
468 480 Date startTime = pser.getSerStartTime();
469 481  
470 482 pser.setDocEndTime(endTime);
... ... @@ -472,6 +484,7 @@
472 484  
473 485 Integer startWeek = DateUtil.getWeek(lastMenses, startTime);
474 486 Integer endWeek = DateUtil.getWeek(lastMenses, pser.getDocEndTime()) + doctorService;
  487 + endWeek = endWeek > 42 ? 42 : endWeek;
475 488 pser.setDocStartWeek(startWeek);
476 489 pser.setDocEndWeek(endWeek);
477 490 }
platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/PatientServiceSysFacade.java View file @ d357491
... ... @@ -110,6 +110,9 @@
110 110 //操作时间
111 111 ps.setUpdateDate(new Date());
112 112  
  113 +
  114 + ps.setServiceWeek(patientService.getServiceWeek());
  115 + ps.setDoctorWeek(patientService.getDoctorWeek());
113 116 patientServiceFacade.setServiceRecordUpdate(ps, patients);
114 117  
115 118 patientServiceService.updatePatientService(ps);