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.

computeclustermodel_gen.go 3.7 kB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. // Code generated by goctl. DO NOT EDIT.
  2. package models
  3. import (
  4. "context"
  5. "database/sql"
  6. "fmt"
  7. "strings"
  8. "github.com/zeromicro/go-zero/core/stores/builder"
  9. "github.com/zeromicro/go-zero/core/stores/sqlc"
  10. "github.com/zeromicro/go-zero/core/stores/sqlx"
  11. "github.com/zeromicro/go-zero/core/stringx"
  12. )
  13. var (
  14. computeClusterFieldNames = builder.RawFieldNames(&ComputeCluster{})
  15. computeClusterRows = strings.Join(computeClusterFieldNames, ",")
  16. computeClusterRowsExpectAutoSet = strings.Join(stringx.Remove(computeClusterFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
  17. computeClusterRowsWithPlaceHolder = strings.Join(stringx.Remove(computeClusterFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
  18. )
  19. type (
  20. computeClusterModel interface {
  21. Insert(ctx context.Context, data *ComputeCluster) (sql.Result, error)
  22. FindOne(ctx context.Context, id int64) (*ComputeCluster, error)
  23. Update(ctx context.Context, data *ComputeCluster) error
  24. Delete(ctx context.Context, id int64) error
  25. }
  26. defaultComputeClusterModel struct {
  27. conn sqlx.SqlConn
  28. table string
  29. }
  30. ComputeCluster struct {
  31. Id int64 `db:"id"` // 集群id
  32. Name sql.NullString `db:"name"` // 集群名
  33. Type sql.NullString `db:"type"` // 集群类型
  34. CenterId sql.NullInt64 `db:"center_id"` // 数据中心id
  35. CenterName sql.NullString `db:"center_name"` // 数据中心名称
  36. JcceDomainId sql.NullInt64 `db:"jcce_domain_id"` // JCCE侧域ID
  37. JcceDomainName sql.NullString `db:"jcce_domain_name"` // JCCE侧域名
  38. Longitude sql.NullFloat64 `db:"longitude"` // 经度
  39. Latitude sql.NullFloat64 `db:"latitude"` // 纬度
  40. Description sql.NullString `db:"description"` // 描述
  41. }
  42. )
  43. func newComputeClusterModel(conn sqlx.SqlConn) *defaultComputeClusterModel {
  44. return &defaultComputeClusterModel{
  45. conn: conn,
  46. table: "`compute_cluster`",
  47. }
  48. }
  49. func (m *defaultComputeClusterModel) Delete(ctx context.Context, id int64) error {
  50. query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
  51. _, err := m.conn.ExecCtx(ctx, query, id)
  52. return err
  53. }
  54. func (m *defaultComputeClusterModel) FindOne(ctx context.Context, id int64) (*ComputeCluster, error) {
  55. query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", computeClusterRows, m.table)
  56. var resp ComputeCluster
  57. err := m.conn.QueryRowCtx(ctx, &resp, query, id)
  58. switch err {
  59. case nil:
  60. return &resp, nil
  61. case sqlc.ErrNotFound:
  62. return nil, ErrNotFound
  63. default:
  64. return nil, err
  65. }
  66. }
  67. func (m *defaultComputeClusterModel) Insert(ctx context.Context, data *ComputeCluster) (sql.Result, error) {
  68. query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, computeClusterRowsExpectAutoSet)
  69. ret, err := m.conn.ExecCtx(ctx, query, data.Name, data.Type, data.CenterId, data.CenterName, data.JcceDomainId, data.JcceDomainName, data.Longitude, data.Latitude, data.Description)
  70. return ret, err
  71. }
  72. func (m *defaultComputeClusterModel) Update(ctx context.Context, data *ComputeCluster) error {
  73. query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, computeClusterRowsWithPlaceHolder)
  74. _, err := m.conn.ExecCtx(ctx, query, data.Name, data.Type, data.CenterId, data.CenterName, data.JcceDomainId, data.JcceDomainName, data.Longitude, data.Latitude, data.Description, data.Id)
  75. return err
  76. }
  77. func (m *defaultComputeClusterModel) tableName() string {
  78. return m.table
  79. }

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.