AddGrade erase any previous grade recorded for the user
continuous-integration/drone/push Build is running Details

This commit is contained in:
nemunaire 2023-03-06 12:31:22 +01:00
parent 51a311f0b9
commit 107b17c11f
1 changed files with 13 additions and 0 deletions

View File

@ -472,6 +472,19 @@ func (u *User) GetMyWorkGrade(w *Work) (g WorkGrade, err error) {
}
func (w *Work) AddGrade(grade WorkGrade) error {
u := User{Id: grade.IdUser}
// Search a previous record
g, err := u.GetMyWorkGrade(w)
if err != nil && err != sql.ErrNoRows {
return err
} else if err == nil {
_, err = g.Delete()
if err != nil {
return err
}
}
return w.AddGrades([]WorkGrade{grade})
}