Class AttachmentHttpEndpoint
java.lang.Object
io.github.xezzon.zeroweb.attachment.internal.AttachmentHttpEndpoint
附件管理
- Author:
- xezzon
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAttachment(@Valid AddAttachmentReq req, String crc) 新增附件voiddeleteAttachment(@NotBlank String id) 删除附件voidfinishUpload(@NotBlank String id) 文件上传完成后,将其状态变更为已完成getDownloadEndpoint(@NotBlank String id) 获取附件下载地址getUploadEndpoint(@NotBlank String id, @PositiveOrZero @Max(10000L) int partNumber, String crc) 获取附件上传地址getUploadInfo(@NotBlank String id, @NotBlank String checksum, @Positive long fileSize, String crc) 获取附件上传元信息queryByBiz(@NotBlank String bizType, @NotBlank String bizId) 查询表单关联的附件
-
Constructor Details
-
AttachmentHttpEndpoint
依赖注入- Parameters:
attachmentService- 附件服务
-
-
Method Details
-
addAttachment
@PostMapping public UploadInfo addAttachment(@RequestBody @Valid @Valid AddAttachmentReq req, @RequestParam(required=false) String crc) 新增附件- Parameters:
req- 文件信息crc- 文件的 CRC 值。虽然只有 S3 服务需要,但是建议调用接口时必传。- Returns:
- 文件上传元数据
-
getUploadInfo
@GetMapping("/{id}/resume") public UploadInfo getUploadInfo(@PathVariable @NotBlank @NotBlank String id, @RequestParam @NotBlank @NotBlank String checksum, @RequestParam @Positive @Positive long fileSize, @RequestParam(required=false) String crc) 获取附件上传元信息- Parameters:
id- 附件IDchecksum- 附件的内容摘要。与fileSize联合校验续传内容与之前的内容一致。fileSize- 附件的大小。crc- 文件的 CRC 值。虽然只有 S3 服务需要,但是建议调用接口时必传。- Returns:
- 上传元信息
-
getUploadEndpoint
@GetMapping("/{id}/endpoint/upload") public UploadEndpoint getUploadEndpoint(@PathVariable @NotBlank @NotBlank String id, @PositiveOrZero @Max(10000L) @RequestParam(required=false,defaultValue="0") @PositiveOrZero @Max(10000L) int partNumber, @RequestParam(required=false) String crc) 获取附件上传地址- Parameters:
id- 附件IDpartNumber- 分段序号crc- 文件的 CRC 值。虽然只有 S3 服务需要,但是建议调用接口时必传。- Returns:
- 附件上传地址
-
finishUpload
@PutMapping("/{id}/status/done") public void finishUpload(@PathVariable @NotBlank @NotBlank String id) 文件上传完成后,将其状态变更为已完成- Parameters:
id- 附件ID
-
queryByBiz
@GetMapping("/list") public List<Attachment> queryByBiz(@RequestParam @NotBlank @NotBlank String bizType, @RequestParam @NotBlank @NotBlank String bizId) 查询表单关联的附件- Parameters:
bizType- 业务类型bizId- 业务ID- Returns:
- 附件信息集合(不包含下载地址)
-
getDownloadEndpoint
@GetMapping("/{id}/endpoint/download") public DownloadEndpoint getDownloadEndpoint(@PathVariable @NotBlank @NotBlank String id) 获取附件下载地址- Parameters:
id- 附件ID- Returns:
- 附件下载地址
-
deleteAttachment
删除附件- Parameters:
id- 附件ID
-