user_checks.go 1.7 KB

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