github.com/NpoolPlatform/chain-middleware@v0.0.0-20240228100535-eb1bcf896eb9/pkg/db/ent/exchangerate.go (about) 1 // Code generated by ent, DO NOT EDIT. 2 3 package ent 4 5 import ( 6 "encoding/json" 7 "fmt" 8 "strings" 9 10 "entgo.io/ent/dialect/sql" 11 "github.com/NpoolPlatform/chain-middleware/pkg/db/ent/exchangerate" 12 "github.com/google/uuid" 13 "github.com/shopspring/decimal" 14 ) 15 16 // ExchangeRate is the model entity for the ExchangeRate schema. 17 type ExchangeRate struct { 18 config `json:"-"` 19 // ID of the ent. 20 ID uint32 `json:"id,omitempty"` 21 // CreatedAt holds the value of the "created_at" field. 22 CreatedAt uint32 `json:"created_at,omitempty"` 23 // UpdatedAt holds the value of the "updated_at" field. 24 UpdatedAt uint32 `json:"updated_at,omitempty"` 25 // DeletedAt holds the value of the "deleted_at" field. 26 DeletedAt uint32 `json:"deleted_at,omitempty"` 27 // EntID holds the value of the "ent_id" field. 28 EntID uuid.UUID `json:"ent_id,omitempty"` 29 // AppID holds the value of the "app_id" field. 30 AppID uuid.UUID `json:"app_id,omitempty"` 31 // CoinTypeID holds the value of the "coin_type_id" field. 32 CoinTypeID uuid.UUID `json:"coin_type_id,omitempty"` 33 // MarketValue holds the value of the "market_value" field. 34 MarketValue decimal.Decimal `json:"market_value,omitempty"` 35 // SettleValue holds the value of the "settle_value" field. 36 SettleValue decimal.Decimal `json:"settle_value,omitempty"` 37 // SettlePercent holds the value of the "settle_percent" field. 38 SettlePercent uint32 `json:"settle_percent,omitempty"` 39 // SettleTips holds the value of the "settle_tips" field. 40 SettleTips []string `json:"settle_tips,omitempty"` 41 // Setter holds the value of the "setter" field. 42 Setter uuid.UUID `json:"setter,omitempty"` 43 } 44 45 // scanValues returns the types for scanning values from sql.Rows. 46 func (*ExchangeRate) scanValues(columns []string) ([]interface{}, error) { 47 values := make([]interface{}, len(columns)) 48 for i := range columns { 49 switch columns[i] { 50 case exchangerate.FieldSettleTips: 51 values[i] = new([]byte) 52 case exchangerate.FieldMarketValue, exchangerate.FieldSettleValue: 53 values[i] = new(decimal.Decimal) 54 case exchangerate.FieldID, exchangerate.FieldCreatedAt, exchangerate.FieldUpdatedAt, exchangerate.FieldDeletedAt, exchangerate.FieldSettlePercent: 55 values[i] = new(sql.NullInt64) 56 case exchangerate.FieldEntID, exchangerate.FieldAppID, exchangerate.FieldCoinTypeID, exchangerate.FieldSetter: 57 values[i] = new(uuid.UUID) 58 default: 59 return nil, fmt.Errorf("unexpected column %q for type ExchangeRate", columns[i]) 60 } 61 } 62 return values, nil 63 } 64 65 // assignValues assigns the values that were returned from sql.Rows (after scanning) 66 // to the ExchangeRate fields. 67 func (er *ExchangeRate) assignValues(columns []string, values []interface{}) error { 68 if m, n := len(values), len(columns); m < n { 69 return fmt.Errorf("mismatch number of scan values: %d != %d", m, n) 70 } 71 for i := range columns { 72 switch columns[i] { 73 case exchangerate.FieldID: 74 value, ok := values[i].(*sql.NullInt64) 75 if !ok { 76 return fmt.Errorf("unexpected type %T for field id", value) 77 } 78 er.ID = uint32(value.Int64) 79 case exchangerate.FieldCreatedAt: 80 if value, ok := values[i].(*sql.NullInt64); !ok { 81 return fmt.Errorf("unexpected type %T for field created_at", values[i]) 82 } else if value.Valid { 83 er.CreatedAt = uint32(value.Int64) 84 } 85 case exchangerate.FieldUpdatedAt: 86 if value, ok := values[i].(*sql.NullInt64); !ok { 87 return fmt.Errorf("unexpected type %T for field updated_at", values[i]) 88 } else if value.Valid { 89 er.UpdatedAt = uint32(value.Int64) 90 } 91 case exchangerate.FieldDeletedAt: 92 if value, ok := values[i].(*sql.NullInt64); !ok { 93 return fmt.Errorf("unexpected type %T for field deleted_at", values[i]) 94 } else if value.Valid { 95 er.DeletedAt = uint32(value.Int64) 96 } 97 case exchangerate.FieldEntID: 98 if value, ok := values[i].(*uuid.UUID); !ok { 99 return fmt.Errorf("unexpected type %T for field ent_id", values[i]) 100 } else if value != nil { 101 er.EntID = *value 102 } 103 case exchangerate.FieldAppID: 104 if value, ok := values[i].(*uuid.UUID); !ok { 105 return fmt.Errorf("unexpected type %T for field app_id", values[i]) 106 } else if value != nil { 107 er.AppID = *value 108 } 109 case exchangerate.FieldCoinTypeID: 110 if value, ok := values[i].(*uuid.UUID); !ok { 111 return fmt.Errorf("unexpected type %T for field coin_type_id", values[i]) 112 } else if value != nil { 113 er.CoinTypeID = *value 114 } 115 case exchangerate.FieldMarketValue: 116 if value, ok := values[i].(*decimal.Decimal); !ok { 117 return fmt.Errorf("unexpected type %T for field market_value", values[i]) 118 } else if value != nil { 119 er.MarketValue = *value 120 } 121 case exchangerate.FieldSettleValue: 122 if value, ok := values[i].(*decimal.Decimal); !ok { 123 return fmt.Errorf("unexpected type %T for field settle_value", values[i]) 124 } else if value != nil { 125 er.SettleValue = *value 126 } 127 case exchangerate.FieldSettlePercent: 128 if value, ok := values[i].(*sql.NullInt64); !ok { 129 return fmt.Errorf("unexpected type %T for field settle_percent", values[i]) 130 } else if value.Valid { 131 er.SettlePercent = uint32(value.Int64) 132 } 133 case exchangerate.FieldSettleTips: 134 if value, ok := values[i].(*[]byte); !ok { 135 return fmt.Errorf("unexpected type %T for field settle_tips", values[i]) 136 } else if value != nil && len(*value) > 0 { 137 if err := json.Unmarshal(*value, &er.SettleTips); err != nil { 138 return fmt.Errorf("unmarshal field settle_tips: %w", err) 139 } 140 } 141 case exchangerate.FieldSetter: 142 if value, ok := values[i].(*uuid.UUID); !ok { 143 return fmt.Errorf("unexpected type %T for field setter", values[i]) 144 } else if value != nil { 145 er.Setter = *value 146 } 147 } 148 } 149 return nil 150 } 151 152 // Update returns a builder for updating this ExchangeRate. 153 // Note that you need to call ExchangeRate.Unwrap() before calling this method if this ExchangeRate 154 // was returned from a transaction, and the transaction was committed or rolled back. 155 func (er *ExchangeRate) Update() *ExchangeRateUpdateOne { 156 return (&ExchangeRateClient{config: er.config}).UpdateOne(er) 157 } 158 159 // Unwrap unwraps the ExchangeRate entity that was returned from a transaction after it was closed, 160 // so that all future queries will be executed through the driver which created the transaction. 161 func (er *ExchangeRate) Unwrap() *ExchangeRate { 162 _tx, ok := er.config.driver.(*txDriver) 163 if !ok { 164 panic("ent: ExchangeRate is not a transactional entity") 165 } 166 er.config.driver = _tx.drv 167 return er 168 } 169 170 // String implements the fmt.Stringer. 171 func (er *ExchangeRate) String() string { 172 var builder strings.Builder 173 builder.WriteString("ExchangeRate(") 174 builder.WriteString(fmt.Sprintf("id=%v, ", er.ID)) 175 builder.WriteString("created_at=") 176 builder.WriteString(fmt.Sprintf("%v", er.CreatedAt)) 177 builder.WriteString(", ") 178 builder.WriteString("updated_at=") 179 builder.WriteString(fmt.Sprintf("%v", er.UpdatedAt)) 180 builder.WriteString(", ") 181 builder.WriteString("deleted_at=") 182 builder.WriteString(fmt.Sprintf("%v", er.DeletedAt)) 183 builder.WriteString(", ") 184 builder.WriteString("ent_id=") 185 builder.WriteString(fmt.Sprintf("%v", er.EntID)) 186 builder.WriteString(", ") 187 builder.WriteString("app_id=") 188 builder.WriteString(fmt.Sprintf("%v", er.AppID)) 189 builder.WriteString(", ") 190 builder.WriteString("coin_type_id=") 191 builder.WriteString(fmt.Sprintf("%v", er.CoinTypeID)) 192 builder.WriteString(", ") 193 builder.WriteString("market_value=") 194 builder.WriteString(fmt.Sprintf("%v", er.MarketValue)) 195 builder.WriteString(", ") 196 builder.WriteString("settle_value=") 197 builder.WriteString(fmt.Sprintf("%v", er.SettleValue)) 198 builder.WriteString(", ") 199 builder.WriteString("settle_percent=") 200 builder.WriteString(fmt.Sprintf("%v", er.SettlePercent)) 201 builder.WriteString(", ") 202 builder.WriteString("settle_tips=") 203 builder.WriteString(fmt.Sprintf("%v", er.SettleTips)) 204 builder.WriteString(", ") 205 builder.WriteString("setter=") 206 builder.WriteString(fmt.Sprintf("%v", er.Setter)) 207 builder.WriteByte(')') 208 return builder.String() 209 } 210 211 // ExchangeRates is a parsable slice of ExchangeRate. 212 type ExchangeRates []*ExchangeRate 213 214 func (er ExchangeRates) config(cfg config) { 215 for _i := range er { 216 er[_i].config = cfg 217 } 218 }