| | |
| | | continue; |
| | | |
| | | // 从DB查询预约,是否已经存在 |
| | | AppointmentDO appointmentDO = appointmentMapper.getByPatAndCheckTypeAndBookDate(appointmentExtermal.getPatId(), appointmentExtermal.getBookCheckType(), appointmentExtermal.getBookDate()); |
| | | AppointmentDO appointmentDO = appointmentMapper.getByEpisodeIdAndApplyNo(appointmentExtermal.getEpisodeId(), appointmentExtermal.getApplyNo()); |
| | | if (null == appointmentDO) { |
| | | appointmentMapper.insert(appointmentExtermal); |
| | | } else { |
| | |
| | | |
| | | AppointmentDO appointmentDO = BeanUtils.toBean(appointmentExternal, AppointmentDO.class); |
| | | appointmentDO.setApplyNo( appointmentExternal.getReqIdeApplyno() ); |
| | | appointmentDO.setEpisodeId( appointmentExternal.getEpisodeID() ); |
| | | appointmentDO.setPatSrc( getCorrespondingPatientSource(appointmentExternal.getAdmTypeCode()) ); |
| | | appointmentDO.setPatId(appointmentExternal.getPatientID()); // 内容为 身份证号 或 门诊住院号 |
| | | appointmentDO.setPatName(appointmentExternal.getPatName()); |
| | |
| | | appointmentDO.setPatWardDesc(appointmentExternal.getPatLocWardDesc()); |
| | | appointmentDO.setPatMobile(appointmentExternal.getPhone()); |
| | | appointmentDO.setPatBedNo(appointmentExternal.getEnBedno()); |
| | | appointmentDO.setBookId(appointmentExternal.getReqIdeApplyno()); |
| | | appointmentDO.setBookCheckType(getCorrespondingCheckType(appointmentExternal.getPlanDefItemList().getPlanDefItem().getPlanDefItemcode())); |
| | | appointmentDO.setBookTime(DateUtils.ofUTC(appointmentExternal.getReqAuthoredOn())); // 开单时间 |
| | | appointmentDO.setBookSrc( getBookSource(appointmentExternal.getAdmTypeCode()) ); |
| | | appointmentDO.setBookSrc( 0 ); |
| | | |
| | | // 光开单的情况,没有预约时间 |
| | | if (null != appointmentExternal.getReqExtBooktime() ) { |
| | |
| | | appointmentDO.setBookTimeslot((bookStartTime.getHour() * 100 + bookStartTime.getMinute()) * 10000 + bookEndTime.getHour() * 100 + bookEndTime.getMinute()); |
| | | } |
| | | |
| | | appointmentDO.setPaid( 0 ); // TODO |
| | | appointmentDO.setPaid( 0 ); |
| | | |
| | | curAppointDOList.add( appointmentDO ); |
| | | } |
| | |
| | | |
| | | try { |
| | | QueueSaveReqVO queueSaveReqVO = new QueueSaveReqVO(); |
| | | queueSaveReqVO.setApplyNo( appointment.getApplyNo() ); |
| | | queueSaveReqVO.setEpisodeId( appointment.getEpisodeId() ); |
| | | queueSaveReqVO.setAppointId(appointment.getId()); |
| | | queueSaveReqVO.setPatId(appointment.getPatId()); |
| | | queueSaveReqVO.setPatName(appointment.getPatName()); |
| | |
| | | } |
| | | |
| | | return newSeqNo; |
| | | } |
| | | |
| | | private Integer getBookSource(String admTypeCode) { |
| | | if (admTypeCode.equals("AMB")) // 门诊 |
| | | return 1; |
| | | else if (admTypeCode.equals("EMER")) // 急诊 |
| | | return 2; |
| | | else if (admTypeCode.equals("PHY")) // 体检 |
| | | return 3; |
| | | else if (admTypeCode.equals("IMP")) // 住院 |
| | | return 4; |
| | | |
| | | return 1; |
| | | } |
| | | |
| | | private Integer getCorrespondingCheckType(String strPlanDefItemcode) { |
| | |
| | | patDetails.setWardDesc( appointment.getPatWardDesc() ); |
| | | patDetails.setBedNo( appointment.getPatBedNo() ); |
| | | patDetails.setSource( appointment.getPatSrc() ); |
| | | patDetails.setApplyNo( appointment.getApplyNo() ); |
| | | return patDetails; |
| | | } |
| | | } |