You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

category.go 2.0 kB

2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. package badge
  2. import (
  3. "code.gitea.io/gitea/models"
  4. "code.gitea.io/gitea/modules/log"
  5. "code.gitea.io/gitea/routers/response"
  6. "code.gitea.io/gitea/services/admin/operate_log"
  7. "errors"
  8. )
  9. func GetBadgeCategoryList(opts models.ListOptions) (int64, []*models.BadgeCategory4Show, error) {
  10. total, list, err := models.GetBadgeCategoryListPaging(opts)
  11. if err != nil {
  12. return 0, nil, err
  13. }
  14. if len(list) == 0 {
  15. return 0, nil, nil
  16. }
  17. r := make([]*models.BadgeCategory4Show, len(list))
  18. for i := 0; i < len(list); i++ {
  19. r[i] = list[i].ToShow()
  20. }
  21. return total, r, nil
  22. }
  23. func AddBadgeCategory(m models.BadgeCategory4Show, doer *models.User) *response.BizError {
  24. _, err := models.AddBadgeCategory(m.ToDTO())
  25. if err != nil {
  26. return response.NewBizError(err)
  27. }
  28. operate_log.Log4Add(operate_log.BadgeCategoryOperate, m, doer.ID, "新增了勋章分类")
  29. return nil
  30. }
  31. func EditBadgeCategory(m models.BadgeCategory4Show, doer *models.User) *response.BizError {
  32. if m.ID == 0 {
  33. log.Error(" EditBadgeCategory param error")
  34. return response.NewBizError(errors.New("param error"))
  35. }
  36. old, err := models.GetBadgeCategoryById(m.ID)
  37. if err != nil {
  38. return response.NewBizError(err)
  39. }
  40. _, err = models.UpdateBadgeCategoryById(m.ID, m.ToDTO())
  41. if err != nil {
  42. return response.NewBizError(err)
  43. }
  44. operate_log.Log4Edit(operate_log.BadgeCategoryOperate, old, m.ToDTO(), doer.ID, "修改了勋章分类")
  45. return nil
  46. }
  47. func DelBadgeCategory(id int64, doer *models.User) *response.BizError {
  48. if id == 0 {
  49. log.Error(" DelBadgeCategory param error")
  50. return response.NewBizError(errors.New("param error"))
  51. }
  52. old, err := models.GetBadgeCategoryById(id)
  53. if err != nil {
  54. return response.NewBizError(err)
  55. }
  56. badges, err := models.GetBadgeByCategoryId(id)
  57. if err != nil {
  58. return response.NewBizError(err)
  59. }
  60. if len(badges) > 0 {
  61. return response.CATEGORY_STILL_HAS_BADGES
  62. }
  63. _, err = models.DelBadgeCategory(id)
  64. operate_log.Log4Del(operate_log.BadgeCategoryOperate, old, doer.ID, "删除了勋章分类")
  65. return nil
  66. }