jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/controller/admin/appointment/AppointmentController.java
@@ -103,9 +103,9 @@ @Operation(summary = "根据患者编号.获得预约.并内部创建预约") @Parameter(name = "id", description = "编号", required = true, example = "1024") @PreAuthorize("@ss.hasPermission('ecg:appointment:query')") public CommonResult<AppointmentRespVO> queryAndCreateAppointmentByPatId(@RequestParam("patId") String patId) { AppointmentDO appointment = appointmentService.queryAndCreateAppointmentByPatId( patId ); return success(BeanUtils.toBean(appointment, AppointmentRespVO.class)); public CommonResult<List<AppointmentRespVO>> queryAndCreateAppointmentByPatId(@RequestParam("patId") String patId) { List<AppointmentDO> appointmentDOList = appointmentService.queryAndCreateAppointmentByPatId( patId ); return success(BeanUtils.toBean(appointmentDOList, AppointmentRespVO.class)); } @GetMapping("/query-his-by-patient") jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/dal/dataobject/appointment/AppointmentDO.java
@@ -34,6 +34,15 @@ */ @TableId private Long id; /** * 申请编号 */ private String applyNo; /** * 患者来源类型 01问诊 02急诊 03体检 04住院 */ private Integer patSrc; /** * 患者编号 */ jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/appointment/AppointmentService.java
@@ -58,7 +58,7 @@ * @param patId 编号 * @return 预约 */ AppointmentDO queryAndCreateAppointmentByPatId(String patCode); List<AppointmentDO> queryAndCreateAppointmentByPatId(String patCode); /** * 获得预约分页 jh-module-ecg/jh-module-ecg-biz/src/main/java/cn/lihu/jh/module/ecg/service/appointment/AppointmentServiceImpl.java
@@ -114,14 +114,16 @@ } /** * // TODO 尚不支持, 一位患者当天两种检查项目的情况 * @param patCode 编号 : !!! 不一定就是本系统的 患者编号(patID), 根源在于 检查单扫描出来的编号 不一定是 本系统的 患者编号(patID) * @return */ @Override public AppointmentDO queryAndCreateAppointmentByPatId(String patCode) { public List<AppointmentDO> queryAndCreateAppointmentByPatId(String patCode) { // 先从医院平台查询 List<AppointmentDO> appointmentExtermalList = getAppointmentExtermal( patCode ); return appointmentExtermalList; /* 先保留 for ( int appointmentIndex = 0; appointmentIndex < appointmentExtermalList.size(); appointmentIndex++ ) { AppointmentDO appointmentExtermal = appointmentExtermalList.get(appointmentIndex); if (null != appointmentExtermal && null != appointmentExtermal.getBookDate() && appointmentExtermal.getBookDate().isEqual(LocalDate.now())) { @@ -137,6 +139,7 @@ List<AppointmentDO> appointmentDOList = appointmentMapper.getCurrentPatId( patCode ); return 0 == appointmentDOList.size() ? null : appointmentDOList.get(0); */ } @Override @@ -165,6 +168,8 @@ AppointmentExternal appointmentExternal = result.getRow().get( appointIndex ); AppointmentDO appointmentDO = BeanUtils.toBean(appointmentExternal, AppointmentDO.class); appointmentDO.setApplyNo( appointmentExternal.getReqIdeApplyno() ); appointmentDO.setPatSrc( getCorrespondingPatientSource(appointmentExternal.getAdmTypeCode()) ); appointmentDO.setPatId(appointmentExternal.getPatientID()); // 内容为 身份证号 或 门诊住院号 appointmentDO.setPatName(appointmentExternal.getPatName()); appointmentDO.setPatGender(Byte.valueOf(appointmentExternal.getPatgender())); @@ -271,4 +276,17 @@ return 100; } private Integer getCorrespondingPatientSource(String admTypeCode) { if (admTypeCode.equals("AMB")) return 1; else if (admTypeCode.equals("EMER")) return 2; else if (admTypeCode.equals("IMP")) return 3; else if (admTypeCode.equals("PHY")) return 4; return 0; } }