// 排序 // 传入 notebookId => Seq // 为什么要传入userId, 防止修改其它用户的信息 (恶意) // [ok] func (this *NotebookService) SortNotebooks(userId string, notebookId2Seqs map[string]int) bool { if len(notebookId2Seqs) == 0 { return false } for notebookId, seq := range notebookId2Seqs { if !db.UpdateByIdAndUserIdField2(db.Notebooks, bson.ObjectIdHex(notebookId), bson.ObjectIdHex(userId), "Seq", seq) { return false } } return true }
func (this *NotebookService) DragNotebooks(userId string, curNotebookId string, parentNotebookId string, siblings []string) bool { userIdO := bson.ObjectIdHex(userId) ok := false // 如果没parentNotebookId, 则parentNotebookId设空 if parentNotebookId == "" { ok = db.UpdateByIdAndUserIdField2(db.Notebooks, bson.ObjectIdHex(curNotebookId), userIdO, "ParentNotebookId", "") } else { ok = db.UpdateByIdAndUserIdField2(db.Notebooks, bson.ObjectIdHex(curNotebookId), userIdO, "ParentNotebookId", bson.ObjectIdHex(parentNotebookId)) } if !ok { return false } // 排序 for seq, notebookId := range siblings { if !db.UpdateByIdAndUserIdField2(db.Notebooks, bson.ObjectIdHex(notebookId), userIdO, "Seq", seq) { return false } } return true }