You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

storelinkcentermodel_gen.go 5.4 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. // Code generated by goctl. DO NOT EDIT.
  2. package models
  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/cache"
  11. "github.com/zeromicro/go-zero/core/stores/sqlc"
  12. "github.com/zeromicro/go-zero/core/stores/sqlx"
  13. "github.com/zeromicro/go-zero/core/stringx"
  14. )
  15. var (
  16. storelinkCenterFieldNames = builder.RawFieldNames(&StorelinkCenter{})
  17. storelinkCenterRows = strings.Join(storelinkCenterFieldNames, ",")
  18. storelinkCenterRowsExpectAutoSet = strings.Join(stringx.Remove(storelinkCenterFieldNames, "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
  19. storelinkCenterRowsWithPlaceHolder = strings.Join(stringx.Remove(storelinkCenterFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
  20. cachePcmStorelinkCenterIdPrefix = "cache:pcm:storelinkCenter:id:"
  21. )
  22. type (
  23. storelinkCenterModel interface {
  24. Insert(ctx context.Context, data *StorelinkCenter) (sql.Result, error)
  25. FindOne(ctx context.Context, id int64) (*StorelinkCenter, error)
  26. Update(ctx context.Context, data *StorelinkCenter) error
  27. Delete(ctx context.Context, id int64) error
  28. }
  29. defaultStorelinkCenterModel struct {
  30. sqlc.CachedConn
  31. table string
  32. }
  33. StorelinkCenter struct {
  34. Id int64 `db:"id"` // id
  35. Name string `db:"name"` // 名称
  36. Address string `db:"address"` // 集群p端地址
  37. RpcAddress string `db:"rpc_address"` // rpc服务链接地址
  38. Type string `db:"type"` // 类型:1-章鱼;2-modelarts;3-曙光AI
  39. DeletedFlag int64 `db:"deleted_flag"` // 是否删除
  40. CreatedBy sql.NullInt64 `db:"created_by"` // 创建人
  41. CreatedTime time.Time `db:"created_time"` // 创建时间
  42. UpdatedBy sql.NullInt64 `db:"updated_by"` // 更新人
  43. UpdatedTime time.Time `db:"updated_time"` // 更新时间
  44. }
  45. )
  46. func newStorelinkCenterModel(conn sqlx.SqlConn, c cache.CacheConf, opts ...cache.Option) *defaultStorelinkCenterModel {
  47. return &defaultStorelinkCenterModel{
  48. CachedConn: sqlc.NewConn(conn, c, opts...),
  49. table: "`storelink_center`",
  50. }
  51. }
  52. func (m *defaultStorelinkCenterModel) withSession(session sqlx.Session) *defaultStorelinkCenterModel {
  53. return &defaultStorelinkCenterModel{
  54. CachedConn: m.CachedConn.WithSession(session),
  55. table: "`storelink_center`",
  56. }
  57. }
  58. func (m *defaultStorelinkCenterModel) Delete(ctx context.Context, id int64) error {
  59. pcmStorelinkCenterIdKey := fmt.Sprintf("%s%v", cachePcmStorelinkCenterIdPrefix, id)
  60. _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  61. query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
  62. return conn.ExecCtx(ctx, query, id)
  63. }, pcmStorelinkCenterIdKey)
  64. return err
  65. }
  66. func (m *defaultStorelinkCenterModel) FindOne(ctx context.Context, id int64) (*StorelinkCenter, error) {
  67. pcmStorelinkCenterIdKey := fmt.Sprintf("%s%v", cachePcmStorelinkCenterIdPrefix, id)
  68. var resp StorelinkCenter
  69. err := m.QueryRowCtx(ctx, &resp, pcmStorelinkCenterIdKey, func(ctx context.Context, conn sqlx.SqlConn, v any) error {
  70. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", storelinkCenterRows, m.table)
  71. return conn.QueryRowCtx(ctx, v, query, id)
  72. })
  73. switch err {
  74. case nil:
  75. return &resp, nil
  76. case sqlc.ErrNotFound:
  77. return nil, ErrNotFound
  78. default:
  79. return nil, err
  80. }
  81. }
  82. func (m *defaultStorelinkCenterModel) Insert(ctx context.Context, data *StorelinkCenter) (sql.Result, error) {
  83. pcmStorelinkCenterIdKey := fmt.Sprintf("%s%v", cachePcmStorelinkCenterIdPrefix, data.Id)
  84. ret, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  85. query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, storelinkCenterRowsExpectAutoSet)
  86. return conn.ExecCtx(ctx, query, data.Id, data.Name, data.Address, data.RpcAddress, data.Type, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime)
  87. }, pcmStorelinkCenterIdKey)
  88. return ret, err
  89. }
  90. func (m *defaultStorelinkCenterModel) Update(ctx context.Context, data *StorelinkCenter) error {
  91. pcmStorelinkCenterIdKey := fmt.Sprintf("%s%v", cachePcmStorelinkCenterIdPrefix, data.Id)
  92. _, err := m.ExecCtx(ctx, func(ctx context.Context, conn sqlx.SqlConn) (result sql.Result, err error) {
  93. query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, storelinkCenterRowsWithPlaceHolder)
  94. return conn.ExecCtx(ctx, query, data.Name, data.Address, data.RpcAddress, data.Type, data.DeletedFlag, data.CreatedBy, data.CreatedTime, data.UpdatedBy, data.UpdatedTime, data.Id)
  95. }, pcmStorelinkCenterIdKey)
  96. return err
  97. }
  98. func (m *defaultStorelinkCenterModel) formatPrimary(primary any) string {
  99. return fmt.Sprintf("%s%v", cachePcmStorelinkCenterIdPrefix, primary)
  100. }
  101. func (m *defaultStorelinkCenterModel) queryPrimary(ctx context.Context, conn sqlx.SqlConn, v, primary any) error {
  102. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", storelinkCenterRows, m.table)
  103. return conn.QueryRowCtx(ctx, v, query, primary)
  104. }
  105. func (m *defaultStorelinkCenterModel) tableName() string {
  106. return m.table
  107. }

PCM is positioned as Software stack over Cloud, aiming to build the standards and ecology of heterogeneous cloud collaboration for JCC in a non intrusive and autonomous peer-to-peer manner.