package jnpf.elnController;
|
|
import cn.dev33.satoken.same.SaSameUtil;
|
import jnpf.base.ActionResult;
|
import jnpf.eln.RecordFreezeApi;
|
import jnpf.eln.RecordFreezeCheckBatch;
|
import jnpf.eln.RecordFreezeCheckRequest;
|
import jnpf.eln.RecordFreezeReleaseRequest;
|
import jnpf.elnService.ElnRecordFreezeCheckService;
|
import jnpf.util.NoDataSourceBind;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
/** LIMS 到 ELN 的内部冻结门禁,租户由请求体显式携带。 */
|
@RestController
|
@RequestMapping("/Internal/eln/recordFreeze")
|
public class ElnRecordFreezeInternalController implements RecordFreezeApi {
|
private final ElnRecordFreezeCheckService freezeCheckService;
|
|
public ElnRecordFreezeInternalController(ElnRecordFreezeCheckService freezeCheckService) {
|
this.freezeCheckService = freezeCheckService;
|
}
|
|
@Override
|
@PostMapping("/prepare")
|
@NoDataSourceBind
|
public ActionResult<RecordFreezeCheckBatch> prepare(@RequestBody RecordFreezeCheckRequest request) {
|
SaSameUtil.checkCurrentRequestToken();
|
return ActionResult.success(freezeCheckService.prepare(request));
|
}
|
|
@Override
|
@PostMapping("/release")
|
@NoDataSourceBind
|
public ActionResult<Boolean> release(@RequestBody RecordFreezeReleaseRequest request) {
|
SaSameUtil.checkCurrentRequestToken();
|
return ActionResult.success(freezeCheckService.release(request));
|
}
|
}
|