check.go 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package models
  2. import (
  3. "errors"
  4. "zhiyuan/pkg/db"
  5. )
  6. type Check struct {
  7. ID int `json:"id"`
  8. CourseId int `json:"course_id"`
  9. AdminId int `json:"admin_id"`
  10. Total int `json:"total"`
  11. Progress int `json:"progress"`
  12. Right int `json:"right"`
  13. State int `json:"state"`
  14. CreatedAt int `json:"created_at"`
  15. UpdatedAt int `json:"updated_at"`
  16. }
  17. func (Check) TableName() string {
  18. return "zy_check"
  19. }
  20. func (a Check) GetOne(where map[string]interface{}, fields []string, retVal interface{}) (*Check, error) {
  21. if retVal == nil {
  22. var check *Check
  23. err := db.GetOne(a.TableName(), where, fields, &check)
  24. return check, err
  25. } else {
  26. err := db.GetOne(a.TableName(), where, fields, retVal)
  27. return nil, err
  28. }
  29. }
  30. func (a Check) GetMulti(where map[string]interface{}, fields []string, retVal interface{}) ([]*Check, error) {
  31. if retVal == nil {
  32. var check []*Check
  33. err := db.GetMulti(a.TableName(), where, fields, &check)
  34. return check, err
  35. } else {
  36. err := db.GetMulti(a.TableName(), where, fields, retVal)
  37. return nil, err
  38. }
  39. }
  40. func (a Check) GetOneRaw(where map[string]string, param map[string]interface{}, retVal interface{}) (*Check, error) {
  41. check, err := a.GetMultiRaw(where, param, retVal)
  42. if err != nil {
  43. return nil, err
  44. }
  45. if len(check) == 0 {
  46. return nil, errors.New("empty record2")
  47. }
  48. return check[0], nil
  49. }
  50. func (a Check) GetMultiRaw(where map[string]string, param map[string]interface{}, retVal interface{}) ([]*Check, error) {
  51. field := "SELECT * FROM zy_check "
  52. if retVal == nil {
  53. var check []*Check
  54. err := db.GetMultiRaw(field, where, param, &check)
  55. return check, err
  56. } else {
  57. err := db.GetMultiRaw(field, where, param, retVal)
  58. return nil, err
  59. }
  60. }