diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/DocAnonymousDatabaseApi.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/DocAnonymousDatabaseApi.java index 1073d658..ba36796c 100644 --- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/DocAnonymousDatabaseApi.java +++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/DocAnonymousDatabaseApi.java @@ -3,6 +3,7 @@ package cn.axzo.nanopart.doc.api.anonymous; import javax.validation.Valid; +import cn.axzo.nanopart.doc.api.anonymous.request.AnonymousCreateDirRequest; import org.springframework.cloud.openfeign.FeignClient; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; @@ -17,8 +18,16 @@ import cn.azxo.framework.common.model.CommonResponse; public interface DocAnonymousDatabaseApi { /** - * 创建文件 + * 创建文件夹 * + * @return 文件夹编码, 需要由业务存储 + */ + @PostMapping("/api/anonymous/createDir") + CommonResponse createDir(@RequestBody @Valid AnonymousCreateDirRequest request); + + /** + * 创建文件 + * * @return 文件编码, 需要由业务存储 */ @PostMapping("/api/anonymous/createFile") diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateDirRequest.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateDirRequest.java new file mode 100644 index 00000000..f476985a --- /dev/null +++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateDirRequest.java @@ -0,0 +1,20 @@ + +package cn.axzo.nanopart.doc.api.anonymous.request; + +import com.alibaba.fastjson.JSON; +import lombok.Getter; +import lombok.Setter; + +/** + * @author yanglin + */ +@Setter +@Getter +public class AnonymousCreateDirRequest extends NodeCreateAnonymous { + + @Override + public String toString() { + return JSON.toJSONString(this); + } + +} diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateFileRequest.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateFileRequest.java index 92be9fee..6335554f 100644 --- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateFileRequest.java +++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/AnonymousCreateFileRequest.java @@ -1,6 +1,7 @@ package cn.axzo.nanopart.doc.api.anonymous.request; import cn.axzo.nanopart.doc.api.enums.FileFormat; +import com.alibaba.fastjson.JSON; import lombok.Getter; import lombok.Setter; @@ -19,4 +20,8 @@ public class AnonymousCreateFileRequest extends NodeCreateAnonymous { @NotNull(message = "文件格式不能为空") private FileFormat format; + @Override + public String toString() { + return JSON.toJSONString(this); + } } diff --git a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/NodeCreateAnonymous.java b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/NodeCreateAnonymous.java index eaa2a801..abd284b7 100644 --- a/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/NodeCreateAnonymous.java +++ b/doc/doc-api/src/main/java/cn/axzo/nanopart/doc/api/anonymous/request/NodeCreateAnonymous.java @@ -18,7 +18,7 @@ import lombok.Setter; abstract class NodeCreateAnonymous implements NodeCreate, IndexNodeScope { /** - * 父节点code + * 父节点code, 创建在根目录时可以不传 */ private String parentCode; diff --git a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/anonymous/DocAnonymousDatabaseApiController.java b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/anonymous/DocAnonymousDatabaseApiController.java index 8a3442f8..bd531387 100644 --- a/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/anonymous/DocAnonymousDatabaseApiController.java +++ b/doc/doc-server/src/main/java/cn/axzo/nanopart/doc/file/anonymous/DocAnonymousDatabaseApiController.java @@ -4,6 +4,7 @@ package cn.axzo.nanopart.doc.file.anonymous; import org.springframework.web.bind.annotation.RestController; import cn.axzo.nanopart.doc.api.anonymous.DocAnonymousDatabaseApi; +import cn.axzo.nanopart.doc.api.anonymous.request.AnonymousCreateDirRequest; import cn.axzo.nanopart.doc.api.anonymous.request.AnonymousCreateFileRequest; import cn.axzo.nanopart.doc.api.domain.OssFile; import cn.axzo.nanopart.doc.entity.IndexNode; @@ -22,8 +23,16 @@ public class DocAnonymousDatabaseApiController implements DocAnonymousDatabaseAp private final IndexManager indexManager; + @Override + public CommonResponse createDir(AnonymousCreateDirRequest request) { + log.info("create dir request:{}", request); + IndexNode dirNode = indexManager.createDir(request); + return CommonResponse.success(dirNode.getCode()); + } + @Override public CommonResponse createFile(AnonymousCreateFileRequest request) { + log.info("create file request:{}", request); OssFile ossFile = indexManager.prepareEmptyOssFile(request, request.getFormat()); IndexNode fileNode = indexManager.createFile(request, ossFile); return CommonResponse.success(fileNode.getCode());