New route to delete grades
This commit is contained in:
parent
6f9b83ef24
commit
706e786190
5 changed files with 107 additions and 5 deletions
25
works.go
25
works.go
|
@ -192,6 +192,15 @@ func declareAPIAdminWorksRoutes(router *gin.RouterGroup) {
|
|||
|
||||
c.JSON(http.StatusOK, true)
|
||||
})
|
||||
|
||||
gradesRoutes := worksRoutes.Group("/grades/:gid")
|
||||
gradesRoutes.Use(gradeHandler)
|
||||
gradesRoutes.DELETE("", func(c *gin.Context) {
|
||||
g := c.MustGet("grade").(*WorkGrade)
|
||||
|
||||
g.Delete()
|
||||
c.JSON(http.StatusOK, true)
|
||||
})
|
||||
}
|
||||
|
||||
func declareAPIAuthWorksRoutes(router *gin.RouterGroup) {
|
||||
|
@ -387,6 +396,16 @@ type WorkGrade struct {
|
|||
Comment string `json:"comment,omitempty"`
|
||||
}
|
||||
|
||||
func (g WorkGrade) Delete() (int64, error) {
|
||||
if res, err := DBExec("DELETE FROM user_work_grades WHERE id_gradation = ?", g.Id); err != nil {
|
||||
return 0, err
|
||||
} else if nb, err := res.RowsAffected(); err != nil {
|
||||
return 0, err
|
||||
} else {
|
||||
return nb, err
|
||||
}
|
||||
}
|
||||
|
||||
func (w *Work) GetGrades(cnd string, param ...interface{}) (grades []WorkGrade, err error) {
|
||||
param = append([]interface{}{w.Id}, param...)
|
||||
|
||||
|
@ -410,6 +429,12 @@ func (w *Work) GetGrades(cnd string, param ...interface{}) (grades []WorkGrade,
|
|||
}
|
||||
}
|
||||
|
||||
func (w *Work) GetGrade(id int64) (g *WorkGrade, err error) {
|
||||
g = new(WorkGrade)
|
||||
err = DBQueryRow("SELECT G.id_gradation, G.id_user, U.login, G.id_work, G.date, G.grade, G.comment FROM user_work_grades G INNER JOIN users U ON U.id_user = G.id_user WHERE id_work = ? AND id_gradation = ?", w.Id, id).Scan(&g.Id, &g.IdUser, &g.Login, &g.IdWork, &g.Date, &g.Grade, &g.Comment)
|
||||
return
|
||||
}
|
||||
|
||||
func (u *User) GetMyWorkGrade(w *Work) (g WorkGrade, err error) {
|
||||
err = DBQueryRow("SELECT id_gradation, id_user, id_work, date, grade, comment FROM user_work_grades WHERE id_work = ? AND id_user = ? ORDER BY date DESC LIMIT 1", w.Id, u.Id).Scan(&g.Id, &g.IdUser, &g.IdWork, &g.Date, &g.Grade, &g.Comment)
|
||||
return
|
||||
|
|
Reference in a new issue