cbcustomermodel_gen.go 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. // Code generated by goctl. DO NOT EDIT.
  2. package model
  3. import (
  4. "context"
  5. "database/sql"
  6. "fmt"
  7. "strings"
  8. "time"
  9. "github.com/zeromicro/go-zero/core/stores/builder"
  10. "github.com/zeromicro/go-zero/core/stores/sqlc"
  11. "github.com/zeromicro/go-zero/core/stores/sqlx"
  12. "github.com/zeromicro/go-zero/core/stringx"
  13. )
  14. var (
  15. cbCustomerFieldNames = builder.RawFieldNames(&CbCustomer{})
  16. cbCustomerRows = strings.Join(cbCustomerFieldNames, ",")
  17. cbCustomerRowsExpectAutoSet = strings.Join(stringx.Remove(cbCustomerFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
  18. cbCustomerRowsWithPlaceHolder = strings.Join(stringx.Remove(cbCustomerFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
  19. )
  20. type (
  21. cbCustomerModel interface {
  22. Insert(ctx context.Context, data *CbCustomer) (sql.Result, error)
  23. FindOne(ctx context.Context, id int64) (*CbCustomer, error)
  24. Update(ctx context.Context, data *CbCustomer) error
  25. Delete(ctx context.Context, id int64) error
  26. }
  27. defaultCbCustomerModel struct {
  28. conn sqlx.SqlConn
  29. table string
  30. }
  31. CbCustomer struct {
  32. Id int64 `db:"id"`
  33. OpenKfid string `db:"open_kfid"` // 客服ID
  34. ExternalUserid string `db:"external_userid"` // 微信客户的external_userid
  35. Nickname string `db:"nickname"` // 昵称
  36. Avatar string `db:"avatar"` // 图片
  37. Gender int64 `db:"gender"` // 性别
  38. ServiceState int64 `db:"service_state"` // 会话状态:0未处理,1由智能助手接待,2待接入池排队中,3由人工接待,4已结束/未开始
  39. CreatedAt time.Time `db:"created_at"`
  40. UpdatedAt time.Time `db:"updated_at"`
  41. }
  42. )
  43. func newCbCustomerModel(conn sqlx.SqlConn) *defaultCbCustomerModel {
  44. return &defaultCbCustomerModel{
  45. conn: conn,
  46. table: "`cb_customer`",
  47. }
  48. }
  49. func (m *defaultCbCustomerModel) withSession(session sqlx.Session) *defaultCbCustomerModel {
  50. return &defaultCbCustomerModel{
  51. conn: sqlx.NewSqlConnFromSession(session),
  52. table: "`cb_customer`",
  53. }
  54. }
  55. func (m *defaultCbCustomerModel) Delete(ctx context.Context, id int64) error {
  56. query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
  57. _, err := m.conn.ExecCtx(ctx, query, id)
  58. return err
  59. }
  60. func (m *defaultCbCustomerModel) FindOne(ctx context.Context, id int64) (*CbCustomer, error) {
  61. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", cbCustomerRows, m.table)
  62. var resp CbCustomer
  63. err := m.conn.QueryRowCtx(ctx, &resp, query, id)
  64. switch err {
  65. case nil:
  66. return &resp, nil
  67. case sqlc.ErrNotFound:
  68. return nil, ErrNotFound
  69. default:
  70. return nil, err
  71. }
  72. }
  73. func (m *defaultCbCustomerModel) Insert(ctx context.Context, data *CbCustomer) (sql.Result, error) {
  74. query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?)", m.table, cbCustomerRowsExpectAutoSet)
  75. ret, err := m.conn.ExecCtx(ctx, query, data.OpenKfid, data.ExternalUserid, data.Nickname, data.Avatar, data.Gender, data.ServiceState)
  76. return ret, err
  77. }
  78. func (m *defaultCbCustomerModel) Update(ctx context.Context, data *CbCustomer) error {
  79. query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, cbCustomerRowsWithPlaceHolder)
  80. _, err := m.conn.ExecCtx(ctx, query, data.OpenKfid, data.ExternalUserid, data.Nickname, data.Avatar, data.Gender, data.ServiceState, data.Id)
  81. return err
  82. }
  83. func (m *defaultCbCustomerModel) tableName() string {
  84. return m.table
  85. }