Skip to content

Commit 66951d7

Browse files
committed
refactor: change boards clone api
1 parent f5ff27c commit 66951d7

File tree

2 files changed

+19
-16
lines changed

2 files changed

+19
-16
lines changed

center/router/router.go

+1-1
Original file line numberDiff line numberDiff line change
@@ -287,7 +287,7 @@ func (rt *Router) Config(r *gin.Engine) {
287287
pages.GET("/busi-group/:id/boards", rt.auth(), rt.user(), rt.perm("/dashboards"), rt.bgro(), rt.boardGets)
288288
pages.POST("/busi-group/:id/boards", rt.auth(), rt.user(), rt.perm("/dashboards/add"), rt.bgrw(), rt.boardAdd)
289289
pages.POST("/busi-group/:id/board/:bid/clone", rt.auth(), rt.user(), rt.perm("/dashboards/add"), rt.bgrw(), rt.boardClone)
290-
pages.POST("/busi-group/:id/boards/clones", rt.auth(), rt.user(), rt.perm("/dashboards/add"), rt.boardBatchClone)
290+
pages.POST("/busi-groups/boards/clones", rt.auth(), rt.user(), rt.perm("/dashboards/add"), rt.boardBatchClone)
291291

292292
pages.GET("/board/:bid", rt.boardGet)
293293
pages.GET("/board/:bid/pure", rt.boardPureGet)

center/router/router_board.go

+18-15
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package router
22

33
import (
4+
"fmt"
45
"net/http"
56
"time"
67

@@ -316,32 +317,34 @@ func (rt *Router) boardClone(c *gin.Context) {
316317

317318
type boardsForm struct {
318319
BoardIds []int64 `json:"board_ids"`
320+
Bgids []int64 `json:"bgids"`
319321
}
320322

321323
func (rt *Router) boardBatchClone(c *gin.Context) {
322324
me := c.MustGet("user").(*models.User)
323-
bgid := ginx.UrlParamInt64(c, "id")
324-
rt.bgrwCheck(c, bgid)
325-
326325
var f boardsForm
327326
ginx.BindJSON(c, &f)
328327

328+
for _, bgid := range f.Bgids {
329+
rt.bgrwCheck(c, bgid)
330+
}
331+
329332
reterr := make(map[string]string, len(f.BoardIds))
330333
lang := c.GetHeader("X-Language")
331-
for _, bid := range f.BoardIds {
332-
bo := rt.Board(bid)
333334

334-
newBoard := bo.Clone(me.Username, bgid)
335-
payload, err := models.BoardPayloadGet(rt.Ctx, bo.Id)
336-
if err != nil {
337-
reterr[newBoard.Name] = i18n.Sprintf(lang, err.Error())
338-
continue
339-
}
335+
for _, bgid := range f.Bgids {
336+
for _, bid := range f.BoardIds {
337+
bo := rt.Board(bid)
338+
newBoard := bo.Clone(me.Username, bgid)
339+
payload, err := models.BoardPayloadGet(rt.Ctx, bo.Id)
340+
if err != nil {
341+
reterr[fmt.Sprintf("%s-%d", newBoard.Name, bgid)] = i18n.Sprintf(lang, err.Error())
342+
continue
343+
}
340344

341-
if err = newBoard.AtomicAdd(rt.Ctx, payload); err != nil {
342-
reterr[newBoard.Name] = i18n.Sprintf(lang, err.Error())
343-
} else {
344-
reterr[newBoard.Name] = ""
345+
if err = newBoard.AtomicAdd(rt.Ctx, payload); err != nil {
346+
reterr[fmt.Sprintf("%s-%d", newBoard.Name, bgid)] = i18n.Sprintf(lang, err.Error())
347+
}
345348
}
346349
}
347350

0 commit comments

Comments
 (0)