mkt_student_market_activity_model.go 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. package model
  2. import (
  3. "database/sql"
  4. "fmt"
  5. "strings"
  6. "git.i2edu.net/i2/go-zero/core/stores/cache"
  7. "git.i2edu.net/i2/go-zero/core/stores/sqlc"
  8. "git.i2edu.net/i2/go-zero/core/stores/sqlx"
  9. "git.i2edu.net/i2/go-zero/core/stringx"
  10. "git.i2edu.net/i2/go-zero/tools/goctl/model/sql/builderx"
  11. )
  12. var (
  13. mktStudentMarketActivityFieldNames = builderx.RawFieldNames(&MktStudentMarketActivity{})
  14. mktStudentMarketActivityRows = strings.Join(mktStudentMarketActivityFieldNames, ",")
  15. mktStudentMarketActivityRowsExpectAutoSet = strings.Join(stringx.Remove(mktStudentMarketActivityFieldNames, "`id`", "`create_time`", "`update_time`"), ",")
  16. mktStudentMarketActivityRowsWithPlaceHolder = strings.Join(stringx.Remove(mktStudentMarketActivityFieldNames, "`id`", "`create_time`", "`update_time`"), "=?,") + "=?"
  17. cacheMktStudentMarketActivityIdPrefix = "cache:mktStudentMarketActivity:id:"
  18. )
  19. type (
  20. MktStudentMarketActivityModel interface {
  21. Insert(data MktStudentMarketActivity) (sql.Result, error)
  22. FindOne(id int64) (*MktStudentMarketActivity, error)
  23. Update(data MktStudentMarketActivity) error
  24. Delete(id int64) error
  25. }
  26. defaultMktStudentMarketActivityModel struct {
  27. sqlc.CachedConn
  28. table string
  29. }
  30. MktStudentMarketActivity struct {
  31. Id int64 `db:"id"`
  32. SutId sql.NullInt64 `db:"sut_id"`
  33. MaId sql.NullInt64 `db:"ma_id"`
  34. CreateBy sql.NullString `db:"create_by"`
  35. CreateTime sql.NullTime `db:"create_time"`
  36. LastUpdateBy sql.NullString `db:"last_update_by"`
  37. LastUpdateTime sql.NullTime `db:"last_update_time"`
  38. DelFlag sql.NullInt64 `db:"del_flag"`
  39. }
  40. )
  41. func NewMktStudentMarketActivityModel(conn sqlx.SqlConn, c cache.CacheConf) MktStudentMarketActivityModel {
  42. return &defaultMktStudentMarketActivityModel{
  43. CachedConn: sqlc.NewConn(conn, c),
  44. table: "`mkt_student_market_activity`",
  45. }
  46. }
  47. func (m *defaultMktStudentMarketActivityModel) Insert(data MktStudentMarketActivity) (sql.Result, error) {
  48. query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?)", m.table, mktStudentMarketActivityRowsExpectAutoSet)
  49. ret, err := m.ExecNoCache(query, data.SutId, data.MaId, data.CreateBy, data.LastUpdateBy, data.LastUpdateTime, data.DelFlag)
  50. return ret, err
  51. }
  52. func (m *defaultMktStudentMarketActivityModel) FindOne(id int64) (*MktStudentMarketActivity, error) {
  53. mktStudentMarketActivityIdKey := fmt.Sprintf("%s%v", cacheMktStudentMarketActivityIdPrefix, id)
  54. var resp MktStudentMarketActivity
  55. err := m.QueryRow(&resp, mktStudentMarketActivityIdKey, func(conn sqlx.SqlConn, v interface{}) error {
  56. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", mktStudentMarketActivityRows, m.table)
  57. return conn.QueryRow(v, query, id)
  58. })
  59. switch err {
  60. case nil:
  61. return &resp, nil
  62. case sqlc.ErrNotFound:
  63. return nil, ErrNotFound
  64. default:
  65. return nil, err
  66. }
  67. }
  68. func (m *defaultMktStudentMarketActivityModel) Update(data MktStudentMarketActivity) error {
  69. mktStudentMarketActivityIdKey := fmt.Sprintf("%s%v", cacheMktStudentMarketActivityIdPrefix, data.Id)
  70. _, err := m.Exec(func(conn sqlx.SqlConn) (result sql.Result, err error) {
  71. query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, mktStudentMarketActivityRowsWithPlaceHolder)
  72. return conn.Exec(query, data.SutId, data.MaId, data.CreateBy, data.LastUpdateBy, data.LastUpdateTime, data.DelFlag, data.Id)
  73. }, mktStudentMarketActivityIdKey)
  74. return err
  75. }
  76. func (m *defaultMktStudentMarketActivityModel) Delete(id int64) error {
  77. mktStudentMarketActivityIdKey := fmt.Sprintf("%s%v", cacheMktStudentMarketActivityIdPrefix, id)
  78. _, err := m.Exec(func(conn sqlx.SqlConn) (result sql.Result, err error) {
  79. query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
  80. return conn.Exec(query, id)
  81. }, mktStudentMarketActivityIdKey)
  82. return err
  83. }
  84. func (m *defaultMktStudentMarketActivityModel) formatPrimary(primary interface{}) string {
  85. return fmt.Sprintf("%s%v", cacheMktStudentMarketActivityIdPrefix, primary)
  86. }
  87. func (m *defaultMktStudentMarketActivityModel) queryPrimary(conn sqlx.SqlConn, v, primary interface{}) error {
  88. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", mktStudentMarketActivityRows, m.table)
  89. return conn.QueryRow(v, query, primary)
  90. }