package jnpf.dmsController.permission;
|
|
import cn.dev33.satoken.same.SaSameUtil;
|
import jakarta.validation.Valid;
|
import jnpf.base.ActionResult;
|
import jnpf.dmsEntity.permission.form.DocumentCreateForm;
|
import jnpf.dmsEntity.permission.form.FileVersionCreateForm;
|
import jnpf.dmsEntity.permission.form.FolderCreateForm;
|
import jnpf.dmsEntity.permission.vo.DmsPermissionResourceVO;
|
import jnpf.dmsEntity.storage.form.DmsFileRevisionRegisterForm;
|
import jnpf.dmsEntity.storage.form.DmsFileUploadRegisterForm;
|
import jnpf.dmsEntity.storage.vo.DmsFileUploadVO;
|
import jnpf.dmsPermission.DmsTrustedServiceGuard;
|
import jnpf.dmsService.DmsFileRevisionService;
|
import jnpf.dmsService.DmsFileUploadService;
|
import jnpf.dmsService.DmsResourceService;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestHeader;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RestController;
|
|
@RestController
|
@RequestMapping("/Internal/dms")
|
@RequiredArgsConstructor
|
public class DmsInternalResourceController {
|
private final DmsTrustedServiceGuard trustedServiceGuard;
|
private final DmsResourceService resourceService;
|
private final DmsFileUploadService fileUploadService;
|
private final DmsFileRevisionService fileRevisionService;
|
|
@PostMapping("/folders")
|
public ActionResult<DmsPermissionResourceVO> createFolder(
|
@RequestHeader(value = "X-DMS-Service-Id", required = false) String serviceId,
|
@RequestBody @Valid FolderCreateForm form) {
|
SaSameUtil.checkCurrentRequestToken();
|
String trustedServiceId = trustedServiceGuard.requireAllowed(serviceId);
|
return ActionResult.success(resourceService.createFolder(form, trustedServiceId));
|
}
|
|
@PostMapping("/documents")
|
public ActionResult<DmsPermissionResourceVO> createDocument(
|
@RequestHeader(value = "X-DMS-Service-Id", required = false) String serviceId,
|
@RequestBody @Valid DocumentCreateForm form) {
|
SaSameUtil.checkCurrentRequestToken();
|
String trustedServiceId = trustedServiceGuard.requireAllowed(serviceId);
|
return ActionResult.success(resourceService.createDocument(form, trustedServiceId));
|
}
|
|
@PostMapping("/file-versions")
|
public ActionResult<DmsPermissionResourceVO> createFileVersion(
|
@RequestHeader(value = "X-DMS-Service-Id", required = false) String serviceId,
|
@RequestBody @Valid FileVersionCreateForm form) {
|
SaSameUtil.checkCurrentRequestToken();
|
String trustedServiceId = trustedServiceGuard.requireAllowed(serviceId);
|
return ActionResult.success(resourceService.createFileVersion(form, trustedServiceId));
|
}
|
|
@PostMapping("/uploads")
|
public ActionResult<DmsFileUploadVO> registerUpload(
|
@RequestHeader(value = "X-DMS-Service-Id", required = false) String serviceId,
|
@RequestBody @Valid DmsFileUploadRegisterForm form) {
|
SaSameUtil.checkCurrentRequestToken();
|
String trustedServiceId = trustedServiceGuard.requireAllowed(serviceId);
|
return ActionResult.success(fileUploadService.register(form, trustedServiceId));
|
}
|
|
@PostMapping("/revisions")
|
public ActionResult<DmsFileUploadVO> registerRevision(
|
@RequestHeader(value = "X-DMS-Service-Id", required = false) String serviceId,
|
@RequestBody @Valid DmsFileRevisionRegisterForm form) {
|
SaSameUtil.checkCurrentRequestToken();
|
String trustedServiceId = trustedServiceGuard.requireAllowed(serviceId);
|
return ActionResult.success(fileRevisionService.register(form, trustedServiceId));
|
}
|
}
|