Jelajahi Sumber

:art: 当自定义排序时支持在文档上/下新建同级文档 https://github.com/siyuan-note/siyuan/issues/5098

Liang Ding 3 tahun lalu
induk
melakukan
b40b460f0c
2 mengubah file dengan 16 tambahan dan 3 penghapusan
  1. 8 1
      kernel/api/filetree.go
  2. 8 2
      kernel/model/file.go

+ 8 - 1
kernel/api/filetree.go

@@ -342,8 +342,15 @@ func createDoc(c *gin.Context) {
 	p := arg["path"].(string)
 	title := arg["title"].(string)
 	md := arg["md"].(string)
+	sortsArg := arg["sorts"]
+	var sorts []string
+	if nil != sortsArg {
+		for _, sort := range sortsArg.([]interface{}) {
+			sorts = append(sorts, sort.(string))
+		}
+	}
 
-	err := model.CreateDocByMd(notebook, p, title, md)
+	err := model.CreateDocByMd(notebook, p, title, md, sorts)
 	if nil != err {
 		ret.Code = -1
 		ret.Msg = err.Error()

+ 8 - 2
kernel/model/file.go

@@ -920,7 +920,7 @@ func DuplicateDoc(rootID string) (err error) {
 	return
 }
 
-func CreateDocByMd(boxID, p, title, md string) (err error) {
+func CreateDocByMd(boxID, p, title, md string, sorts []string) (err error) {
 	WaitForWritingFiles()
 
 	box := Conf.Box(boxID)
@@ -930,7 +930,13 @@ func CreateDocByMd(boxID, p, title, md string) (err error) {
 
 	luteEngine := NewLute()
 	dom := luteEngine.Md2BlockDOM(md)
-	return createDoc(box.ID, p, title, dom)
+	err = createDoc(box.ID, p, title, dom)
+	if nil != err {
+		return
+	}
+
+	ChangeFileTreeSort(box.ID, sorts)
+	return
 }
 
 func CreateWithMarkdown(boxID, hPath, md string) (id string, err error) {