package jnpf.dms; import jnpf.base.ActionResult; import jnpf.dmsEntity.permission.form.DocumentCreateForm; import jnpf.dmsEntity.download.form.DmsWorkflowDownloadAuthorizeForm; import jnpf.dmsEntity.download.vo.DmsWorkflowDownloadAuthorizationVO; import jnpf.dmsEntity.print.form.DmsWorkflowPrintAuthorizeForm; import jnpf.dmsEntity.print.form.DmsWorkflowPrintFilesGrantForm; import jnpf.dmsEntity.print.vo.DmsWorkflowPrintAuthorizationVO; import jnpf.dmsEntity.print.vo.DmsWorkflowPrintFilesGrantResultVO; import jnpf.dmsEntity.permission.form.FileVersionCreateForm; import jnpf.dmsEntity.permission.form.FolderCreateForm; import jnpf.dmsEntity.permission.form.DmsPersonalFolderBorrowForm; import jnpf.dmsEntity.permission.form.DmsPersonalFolderDownloadForm; import jnpf.dmsEntity.permission.vo.DmsPersonalFolderAddResultVO; import jnpf.dmsEntity.permission.vo.DmsPermissionResourceVO; import jnpf.dmsEntity.storage.form.DmsFileLifecycleUpdateForm; import jnpf.dmsEntity.storage.form.DmsFileRevisionRegisterForm; import jnpf.dmsEntity.storage.form.DmsFileUploadRegisterForm; import jnpf.dmsEntity.storage.form.DmsWorkflowFilePrepareForm; import jnpf.dmsEntity.storage.vo.DmsWorkflowFilePrepareVO; import jnpf.dmsEntity.storage.form.DmsApprovedRegistrationCallback; import jnpf.dmsEntity.storage.approval.DmsApprovedBatch; import jnpf.dmsEntity.storage.form.DmsWorkflowFileActivateForm; import jnpf.dmsEntity.storage.form.DmsWorkflowRevisionRegisterForm; import jnpf.dmsEntity.storage.vo.DmsFileLifecycleUpdateVO; import jnpf.dmsEntity.storage.vo.DmsFileUploadVO; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestHeader; @FeignClient(name = "jnpf-dms", path = "/Internal/dms") public interface DmsResourceApi { @PostMapping("/file-versions/lifecycle") ActionResult updateFileLifecycle( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DmsFileLifecycleUpdateForm form); /** * Saves the document-version relationships and per-file READ grants * approved by a borrowing workflow. A missing file validity means permanent access. * Repeating the same request is idempotent. */ @PostMapping("/personal-folders/borrow/files") ActionResult addBorrowedFilesToPersonalFolder( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DmsPersonalFolderBorrowForm form); /** * Saves document-version snapshots and per-file DOWNLOAD grants approved by a workflow. * A missing file validity means permanent access. Repeating the request is idempotent. */ @PostMapping("/personal-folders/download/files") ActionResult addDownloadedFilesToPersonalFolder( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DmsPersonalFolderDownloadForm form); @PostMapping("/workflow-prints/authorize") ActionResult authorizeWorkflowPrint( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestHeader(value = "X-Audit-Biz-Sign", required = false) String auditBizSign, @RequestBody DmsWorkflowPrintAuthorizeForm form); @PostMapping("/workflow-prints/files") ActionResult grantWorkflowPrintFiles( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DmsWorkflowPrintFilesGrantForm form); @PostMapping("/workflow-downloads/authorize") ActionResult authorizeWorkflowDownload( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestHeader(value = "X-Audit-Biz-Sign", required = false) String auditBizSign, @RequestBody DmsWorkflowDownloadAuthorizeForm form); @PostMapping("/workflow-files/uploads") ActionResult registerWorkflowUpload( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestHeader(value = "X-Audit-Biz-Sign", required = false) String auditBizSign, @RequestBody DmsApprovedRegistrationCallback form); @PostMapping("/workflow-files/revisions") ActionResult registerWorkflowRevision( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestHeader(value = "X-Audit-Biz-Sign", required = false) String auditBizSign, @RequestBody DmsWorkflowRevisionRegisterForm form); @PostMapping("/folders") ActionResult createFolder( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody FolderCreateForm form); @PostMapping("/documents") ActionResult createDocument( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DocumentCreateForm form); @PostMapping("/file-versions") ActionResult createFileVersion( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody FileVersionCreateForm form); @PostMapping("/uploads") ActionResult registerUpload( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestHeader(value = "X-Audit-Biz-Sign", required = false) String auditBizSign, @RequestBody DmsFileUploadRegisterForm form); @PostMapping("/revisions") ActionResult registerRevision( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestHeader(value = "X-Audit-Biz-Sign", required = false) String auditBizSign, @RequestBody DmsFileRevisionRegisterForm form); @PostMapping("/workflow-files/prepare") ActionResult prepareWorkflowFile( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DmsWorkflowFilePrepareForm form); @PostMapping("/workflow-files/activate") ActionResult activateWorkflowFile( @RequestHeader("X-DMS-Service-Id") String serviceId, @RequestBody DmsWorkflowFileActivateForm form); }