|
|
@@ -2,6 +2,7 @@ package com.nb.bus.controller;
|
|
|
|
|
|
import cn.dev33.satoken.SaManager;
|
|
|
import cn.dev33.satoken.annotation.SaCheckPermission;
|
|
|
+import cn.dev33.satoken.annotation.SaMode;
|
|
|
import cn.dev33.satoken.stp.StpLogic;
|
|
|
import cn.hutool.core.collection.CollUtil;
|
|
|
import cn.hutool.core.text.CharSequenceUtil;
|
|
|
@@ -16,7 +17,6 @@ import com.nb.bus.controller.vo.MonitorFinishedVo;
|
|
|
import com.nb.bus.entity.*;
|
|
|
import com.nb.bus.enums.DeviceStatusEnum;
|
|
|
import com.nb.bus.enums.PatientAlarmEnum;
|
|
|
-import com.nb.bus.registry.patient.PatientOperator;
|
|
|
import com.nb.bus.registry.patient.PatientRegistry;
|
|
|
import com.nb.bus.service.*;
|
|
|
import com.nb.bus.service.dto.*;
|
|
|
@@ -53,8 +53,6 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
|
|
|
private final LocalBusClinicService clinicService;
|
|
|
|
|
|
- private final PatientRegistry patientRegistry;
|
|
|
-
|
|
|
private final LocalBusInfusionHistoryService infusionService;
|
|
|
|
|
|
private final LocalBusDeviceManualService manualService;
|
|
|
@@ -62,6 +60,7 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
private final WsPublishUtils wsPublishUtils;
|
|
|
|
|
|
private final LocalBusDeviceService deviceService;
|
|
|
+
|
|
|
@PostMapping("/no_page")
|
|
|
@SaCheckPermission("device:patient:query")
|
|
|
@ApiOperation(value = "输注监控列表",notes = "病人监控管理列表,权限【device:patient:query】")
|
|
|
@@ -205,8 +204,8 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
|
|
|
|
|
|
@PostMapping("/monitor/reset/{clinicId}")
|
|
|
- @SaCheckPermission("device:patient:edit")
|
|
|
- @ApiOperation(value = "病人当前监控时间重启",notes = "当结束临床后有新的输注信息产生,那么病人监控会重新显示,此时监控时间不会重新计算,需先调用该接口,权限标识为【device:patient:edit】")
|
|
|
+ @SaCheckPermission("device:clinic:edit")
|
|
|
+ @ApiOperation(value = "病人当前监控时间重启",notes = "当结束临床后有新的输注信息产生,那么病人监控会重新显示,此时监控时间不会重新计算,需先调用该接口,权限标识为【device:clinic:edit】")
|
|
|
public R<Boolean> reset(@ApiParam("临床id")@PathVariable("clinicId")String clinicId){
|
|
|
log.info("病人当前监控时间重启,【{}】",clinicId);
|
|
|
R<Boolean> result = R.success(clinicService.update(new UpdateWrapper<BusClinicEntity>().lambda().eq(BusClinicEntity::getId, clinicId)
|
|
|
@@ -230,8 +229,8 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
}
|
|
|
|
|
|
@PostMapping("/shift")
|
|
|
- @SaCheckPermission("device:patient:shift")
|
|
|
- @ApiOperation(value = "主泵切换的操作,只切换,不结束",notes = "当出现泵重复状态时,若用户想要进行主泵的切换,调用该接口进行操作,主泵切换完成后,会将副泵自动撤泵,权限标识为【device:patient:shift】")
|
|
|
+ @SaCheckPermission("device:clinic:edit")
|
|
|
+ @ApiOperation(value = "主泵切换的操作,只切换,不结束",notes = "当出现泵重复状态时,若用户想要进行主泵的切换,调用该接口进行操作,主泵切换完成后,会将副泵自动撤泵,权限标识为【device:clinic:edit】")
|
|
|
public R shift(@RequestBody@Validated DeviceShiftConfig shiftConfig){
|
|
|
log.info("主泵切换的操作,【{}】",JSONUtil.toJsonStr(shiftConfig));
|
|
|
patientService.shift(shiftConfig);
|
|
|
@@ -240,8 +239,8 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
}
|
|
|
|
|
|
@PostMapping("/undo")
|
|
|
- @SaCheckPermission("device:patient:undo")
|
|
|
- @ApiOperation(value = "批量撤泵,只撤泵,不切换",notes = "当出现泵重复状态时,若用户想要取消对其他副泵的监控,则调用此接口进行撤泵操作,权限标识为【device:patient:undo】")
|
|
|
+ @SaCheckPermission("device:clinic:edit")
|
|
|
+ @ApiOperation(value = "批量撤泵,只撤泵,不切换",notes = "当出现泵重复状态时,若用户想要取消对其他副泵的监控,则调用此接口进行撤泵操作,权限标识为【device:clinic:edit】")
|
|
|
public R shift(@RequestBody@Validated ManualUndoConfig undoConfig, @RequestAttribute("tenantId")@ApiParam(hidden = true) String tenantId){
|
|
|
log.info("批量撤泵,【{}】",JSONUtil.toJsonStr(undoConfig));
|
|
|
undoConfig.setTenantId(tenantId);
|
|
|
@@ -257,8 +256,8 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
|
|
|
|
|
|
@PostMapping("/monitor")
|
|
|
- @SaCheckPermission("device:patient:query")
|
|
|
- @ApiOperation(value = "查看病人当前监控详情",notes = "查看病人当前监控详情,权限标识为【device:patient:query】")
|
|
|
+ @SaCheckPermission(value = {"device:patient:query","device:manual:query"},mode = SaMode.OR)
|
|
|
+ @ApiOperation(value = "查看病人当前监控详情",notes = "查看病人当前监控详情,权限标识为【device:patient:query】或【device:manual:query】")
|
|
|
public R<PatientMonitorDetailResult> monitor(@RequestBody@Validated MonitorDetailVo vo){
|
|
|
log.info("查看病人监控详情,【{}】", JSONUtil.toJsonStr(vo));
|
|
|
PatientMonitorDetailResult result = new PatientMonitorDetailResult();
|
|
|
@@ -326,15 +325,15 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
|
|
|
|
|
|
@PostMapping("/pull/async")
|
|
|
- @SaCheckPermission("device:patient:pull")
|
|
|
- @ApiOperation(value = "异步更新患者信息,超时时间默认为10s,超时后数据返回继续处理,输注监控",notes = "权限标识为【bus:patient:pull】")
|
|
|
+ @SaCheckPermission("bus:clinic:edit")
|
|
|
+ @ApiOperation(value = "异步更新患者信息,超时时间默认为10s,超时后数据返回继续处理,输注监控",notes = "权限标识为【bus:clinic:edit】")
|
|
|
public DeferredResult<R<BusClinicEntity>> syn(@RequestAttribute("tenantId")@ApiParam(hidden = true) String tenantId, @Validated@RequestBody GetPatientInfoVo vo){
|
|
|
return patientService.getPatientInfoFromHis(tenantId,vo.getPatientCode(),vo.getTimeout(),false);
|
|
|
}
|
|
|
|
|
|
|
|
|
- @SaCheckPermission("device:patient:query")
|
|
|
- @ApiOperation(value = "泵重复绑定数量",notes = "权限标识为【bus:patient:query】")
|
|
|
+ @SaCheckPermission("bus:clinic:edit")
|
|
|
+ @ApiOperation(value = "泵重复绑定数量",notes = "权限标识为【bus:clinic:edit】")
|
|
|
@PostMapping("/_count/repeat")
|
|
|
public R<Integer> repeatCount(){
|
|
|
return R.success(CollUtil.size(patientService.repeatDevice()));
|
|
|
@@ -355,8 +354,8 @@ public class BusPatientController implements BaseQueryController<BusPatientEnti
|
|
|
* @return R
|
|
|
*/
|
|
|
@PostMapping("/pull/sync")
|
|
|
- @SaCheckPermission("device:patient:pull")
|
|
|
- @ApiOperation(value = "同步更新患者信息,超时时间默认为10s,超时后数据返回则不进行处理,无泵更新",notes = "权限标识为【bus:patient:pull】")
|
|
|
+ @SaCheckPermission("bus:clinic:edit")
|
|
|
+ @ApiOperation(value = "同步更新患者信息,超时时间默认为10s,超时后数据返回则不进行处理,无泵更新",notes = "权限标识为【bus:clinic:edit】")
|
|
|
public DeferredResult<R<BusClinicEntity>> async(@RequestAttribute("tenantId")@ApiParam(hidden = true) String tenantId,@Validated @RequestBody GetPatientInfoVo vo){
|
|
|
return patientService.getPatientInfoFromHis(tenantId,vo.getPatientCode(),vo.getTimeout(),true);
|
|
|
}
|