i2bill_acquirer_mkt_qr_model.go 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. package model
  2. import (
  3. "database/sql"
  4. "fmt"
  5. "github.com/xormplus/xorm"
  6. "strings"
  7. "time"
  8. "git.i2edu.net/i2/go-zero/core/stores/sqlc"
  9. "git.i2edu.net/i2/go-zero/core/stores/sqlx"
  10. "git.i2edu.net/i2/go-zero/core/stringx"
  11. "git.i2edu.net/i2/go-zero/tools/goctl/model/sql/builderx"
  12. )
  13. var (
  14. i2billAcquirerMktQrFieldNames = builderx.RawFieldNames(&I2billAcquirerMktQr{})
  15. i2billAcquirerMktQrRows = strings.Join(i2billAcquirerMktQrFieldNames, ",")
  16. i2billAcquirerMktQrRowsExpectAutoSet = strings.Join(stringx.Remove(i2billAcquirerMktQrFieldNames, "`id`", "`create_time`", "`update_time`"), ",")
  17. i2billAcquirerMktQrRowsWithPlaceHolder = strings.Join(stringx.Remove(i2billAcquirerMktQrFieldNames, "`id`", "`create_time`", "`update_time`"), "=?,") + "=?"
  18. )
  19. type (
  20. I2billAcquirerMktQrModel interface {
  21. Insert(data I2billAcquirerMktQr) (sql.Result, error)
  22. FindOne(id int64) (*I2billAcquirerMktQr, error)
  23. Update(data I2billAcquirerMktQr) error
  24. Delete(id int64) error
  25. }
  26. defaultI2billAcquirerMktQrModel struct {
  27. conn sqlx.SqlConn
  28. table string
  29. }
  30. I2billAcquirerMktQr struct {
  31. SchoolId sql.NullInt64 `db:"school_id" json:"school_id"` // 校区id
  32. Qr sql.NullString `db:"qr" json:"qr"` // 二维码url
  33. LastUpdateBy sql.NullInt64 `db:"last_update_by" json:"last_update_by"`
  34. Id int64 `db:"id" json:"id"` // 主键
  35. UserId sql.NullInt64 `db:"user_id" json:"user_id"` // 用户id
  36. ActivityId sql.NullInt64 `db:"activity_id" json:"activity_id"` // 活动id
  37. CreateBy sql.NullInt64 `db:"create_by" json:"create_by"`
  38. LastUpdateTime sql.NullTime `db:"last_update_time" json:"last_update_time"`
  39. QuaoYji sql.NullInt64 `db:"quao_yji" json:"quao_yji"` // 渠道一级
  40. CallType sql.NullInt64 `db:"call_type" json:"call_type"` // 渠道二级
  41. MaType sql.NullInt64 `db:"ma_type" json:"ma_type"` //渠道三级
  42. NetworkDetailId sql.NullInt64 `db:"network_detail_id" json:"network_detail_id"` //渠道四级
  43. DelFlag sql.NullInt64 `db:"del_flag" json:"del_flag"`
  44. CreateTime sql.NullTime `db:"create_time" json:"create_time"`
  45. }
  46. I2billAcquirerMktQrXorm struct {
  47. SchoolId int64 `json:"school_id"`
  48. Qr string `json:"qr"`
  49. LastUpdateBy int64 `json:"last_update_by"`
  50. Id int64 `json:"id"`
  51. UserId int64 `json:"user_id"`
  52. ActivityId int64 `json:"activity_id"`
  53. CreateBy int64 `json:"create_by"`
  54. LastUpdateTime time.Time `json:"last_update_time"`
  55. QuaoYji int64 `json:"quao_yji"` // 渠道一级
  56. CallType int64 `json:"call_type"` // 渠道二级
  57. MaType int64 `json:"ma_type"` //渠道三级
  58. NetworkDetailId int64 `json:"network_detail_id"` //渠道四级
  59. DelFlag int64 `json:"del_flag"`
  60. CreateTime time.Time `json:"create_time"`
  61. }
  62. )
  63. func NewI2billAcquirerMktQrModel(conn sqlx.SqlConn) I2billAcquirerMktQrModel {
  64. return &defaultI2billAcquirerMktQrModel{
  65. conn: conn,
  66. table: "`i2bill_acquirer_mkt_qr`",
  67. }
  68. }
  69. func (m *defaultI2billAcquirerMktQrModel) Insert(data I2billAcquirerMktQr) (sql.Result, error) {
  70. query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, i2billAcquirerMktQrRowsExpectAutoSet)
  71. ret, err := m.conn.Exec(query, data.SchoolId, data.Qr, data.LastUpdateBy, data.UserId, data.ActivityId, data.CreateBy, data.LastUpdateTime, data.QuaoYji, data.CallType, data.MaType, data.NetworkDetailId, data.DelFlag)
  72. return ret, err
  73. }
  74. func (m *defaultI2billAcquirerMktQrModel) FindOne(id int64) (*I2billAcquirerMktQr, error) {
  75. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", i2billAcquirerMktQrRows, m.table)
  76. var resp I2billAcquirerMktQr
  77. err := m.conn.QueryRow(&resp, query, id)
  78. switch err {
  79. case nil:
  80. return &resp, nil
  81. case sqlc.ErrNotFound:
  82. return nil, ErrNotFound
  83. default:
  84. return nil, err
  85. }
  86. }
  87. func (m *defaultI2billAcquirerMktQrModel) Update(data I2billAcquirerMktQr) error {
  88. query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, i2billAcquirerMktQrRowsWithPlaceHolder)
  89. _, err := m.conn.Exec(query, data.SchoolId, data.Qr, data.LastUpdateBy, data.UserId, data.ActivityId, data.CreateBy, data.LastUpdateTime, data.QuaoYji, data.CallType, data.MaType, data.NetworkDetailId, data.DelFlag, data.Id)
  90. return err
  91. }
  92. func (m *defaultI2billAcquirerMktQrModel) Delete(id int64) error {
  93. query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
  94. _, err := m.conn.Exec(query, id)
  95. return err
  96. }
  97. func (t *I2billAcquirerMktQrXorm) TableName() string {
  98. return "i2bill_acquirer_mkt_qr"
  99. }
  100. func GetAcquirerMktQr(userId int64, engine *xorm.Engine) (*I2billAcquirerMktQrXorm, error) {
  101. bean := new(I2billAcquirerMktQrXorm)
  102. _, err := engine.Where("user_id = ? and del_flag = 0", userId).Get(bean)
  103. return bean, err
  104. }