package jnpf.controller;
|
|
import jnpf.base.ActionResult;
|
import jnpf.dmsEntity.storage.vo.DmsFileUploadVO;
|
import jnpf.fileStorage.dms.DmsFileStorageService;
|
import lombok.RequiredArgsConstructor;
|
import org.springframework.http.MediaType;
|
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestPart;
|
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.multipart.MultipartFile;
|
|
import java.time.LocalDate;
|
import java.util.UUID;
|
|
@RestController
|
@RequestMapping("/Dms")
|
@RequiredArgsConstructor
|
public class DmsFileUploadController {
|
private final DmsFileStorageService fileStorageService;
|
|
@PostMapping(value = "/Uploader", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
public ActionResult<DmsFileUploadVO> upload(@RequestParam("folderId") UUID folderId,
|
@RequestParam("sourceId") String sourceId,
|
@RequestParam("documentNo") String documentNo,
|
@RequestParam("documentName") String documentName,
|
@RequestParam("documentType") String documentType,
|
@RequestParam("responsibleDeptId") String responsibleDeptId,
|
@RequestParam("versionLabel") String versionLabel,
|
@RequestParam("preparedBy") String preparedBy,
|
@RequestParam("preparedOn")
|
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE)
|
LocalDate preparedOn,
|
@RequestPart("file") MultipartFile file) {
|
return ActionResult.success(fileStorageService.upload(folderId, sourceId, documentNo,
|
documentName, documentType, responsibleDeptId, versionLabel, preparedBy,
|
preparedOn, file));
|
}
|
|
@PostMapping(value = "/Revisions", consumes = MediaType.MULTIPART_FORM_DATA_VALUE)
|
public ActionResult<DmsFileUploadVO> revise(
|
@RequestParam("documentId") UUID documentId,
|
@RequestParam("baseFileVersionId") UUID baseFileVersionId,
|
@RequestParam("sourceId") String sourceId,
|
@RequestParam("versionLabel") String versionLabel,
|
@RequestParam("preparedBy") String preparedBy,
|
@RequestParam("preparedOn")
|
@DateTimeFormat(iso = DateTimeFormat.ISO.DATE) LocalDate preparedOn,
|
@RequestParam("revisionReason") String revisionReason,
|
@RequestPart("file") MultipartFile file) {
|
return ActionResult.success(fileStorageService.revise(documentId, baseFileVersionId,
|
sourceId, versionLabel, preparedBy, preparedOn, revisionReason, file));
|
}
|
}
|