| | |
| | | package cn.lihu.jh.module.ecg.controller.admin.devrent; |
| | | |
| | | import cn.lihu.jh.framework.common.util.exception.ExceptionUtils; |
| | | import cn.lihu.jh.framework.security.core.util.SecurityFrameworkUtils; |
| | | import cn.lihu.jh.module.ecg.dal.dataobject.devmanage.DeviceDO; |
| | | import cn.lihu.jh.module.ecg.enums.DevStateEnum; |
| | | import cn.lihu.jh.module.ecg.service.devmanage.DeviceService; |
| | | import cn.lihu.jh.module.ecg.service.queue.QueueService; |
| | | import io.swagger.v3.oas.models.security.SecurityScheme; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.validation.annotation.Validated; |
| | |
| | | |
| | | // 常规检查 完成 |
| | | @PostMapping("/routine-finish") |
| | | @Operation(summary = "") |
| | | @Operation(summary = "常规检查完成") |
| | | @PreAuthorize("@ss.hasPermission('ecg:doctor:task')") |
| | | public CommonResult<Long> routineFinish(@Valid @RequestBody RoutineFinishReqVO routineFinishReqVO) { |
| | | CommonResult<Long> result = devRentService.routineFinishOperation(routineFinishReqVO); |
| | | |
| | | // 抢 排队 患者 |
| | | queueService.startHurryUpOneBed(routineFinishReqVO.getRoomId(), routineFinishReqVO.getBedNo()); |
| | | |
| | | // 自动确费 |
| | | try { |
| | | String userNickname = SecurityFrameworkUtils.getLoginUserNickname(); |
| | | String userHisId = SecurityFrameworkUtils.getLoginUserHisId(); |
| | | Long rentId = routineFinishReqVO.getId(); |
| | | devRentService.feeConfirm(rentId, userHisId, userNickname, true); // 故意 不检查返回值 |
| | | } catch (Exception e) { |
| | | log.error("常规检查完成, 自动确费失败", e); |
| | | } |
| | | |
| | | return result; |
| | | } |
| | | |
| | | @PostMapping("/dev-ready") |
| | | @Operation(summary = "设备领用") |
| | | @Operation(summary = "设备领用完成") |
| | | @PreAuthorize("@ss.hasPermission('ecg:doctor:task')") |
| | | public CommonResult<Long> devReady(@Valid @RequestBody DevRentSaveReqVO createReqVO) { |
| | | CommonResult<Long> result = devRentService.readyOperation(createReqVO); |
| | | |
| | | // 抢 排队 患者 |
| | | queueService.startHurryUpOneBed(createReqVO.getRoomId(), createReqVO.getBedNo()); |
| | | |
| | | // 自动确费 |
| | | try { |
| | | String userNickname = SecurityFrameworkUtils.getLoginUserNickname(); |
| | | String userHisId = SecurityFrameworkUtils.getLoginUserHisId(); |
| | | Long rentId = createReqVO.getId(); |
| | | devRentService.feeConfirm(rentId, userHisId, userNickname, true); // 故意 不检查返回值 |
| | | } catch (Exception e) { |
| | | log.error("设备领用完成, 自动确费失败", e); |
| | | } |
| | | |
| | | return result; |
| | | } |
| | | |
| | |
| | | devRentRespVO.setModel( deviceDO.getModel() ); |
| | | return CommonResult.success(devRentRespVO); |
| | | } |
| | | |
| | | // 确费 |
| | | @GetMapping("/fee-confirm") |
| | | @Operation(summary = "确费") |
| | | @PreAuthorize("@ss.hasPermission('ecg:doctor:task')") |
| | | public CommonResult<Integer> feeConfirm(@Valid Long rentId) { |
| | | Long userId = SecurityFrameworkUtils.getLoginUserId(); |
| | | String userNickname = SecurityFrameworkUtils.getLoginUserNickname(); |
| | | String userHisId = SecurityFrameworkUtils.getLoginUserHisId(); |
| | | |
| | | Integer result = devRentService.feeConfirm(rentId, userHisId, userNickname, true); |
| | | if (1 == result) |
| | | return CommonResult.error(result, "确费失败"); |
| | | |
| | | return CommonResult.success(result); |
| | | } |
| | | |
| | | // 取消确费 |
| | | @GetMapping("/fee-cancel") |
| | | @Operation(summary = "取消确费") |
| | | @PreAuthorize("@ss.hasPermission('ecg:doctor:task')") |
| | | public CommonResult<Integer> feeCancel(@Valid Long rentId) { |
| | | Long userId = SecurityFrameworkUtils.getLoginUserId(); |
| | | String userNickname = SecurityFrameworkUtils.getLoginUserNickname(); |
| | | String userHisId = SecurityFrameworkUtils.getLoginUserHisId(); |
| | | |
| | | Integer result = devRentService.feeConfirm(rentId, userHisId, userNickname, false); |
| | | if (1 == result) |
| | | return CommonResult.error(result, "取消确费失败"); |
| | | |
| | | return CommonResult.success(result); |
| | | } |
| | | } |