Files
novatask/internal/model/nh_task_nft_stake_reward_model_gen.go
2024-12-31 20:39:02 +08:00

112 lines
4.4 KiB
Go
Executable File

// Code generated by goctl. DO NOT EDIT.
// versions:
// goctl version: 1.7.3
package model
import (
"context"
"database/sql"
"fmt"
"strings"
"time"
"github.com/zeromicro/go-zero/core/stores/builder"
"github.com/zeromicro/go-zero/core/stores/sqlx"
"github.com/zeromicro/go-zero/core/stringx"
"github.com/shopspring/decimal"
)
var (
nhTaskNftStakeRewardFieldNames = builder.RawFieldNames(&NhTaskNftStakeReward{})
nhTaskNftStakeRewardRows = strings.Join(nhTaskNftStakeRewardFieldNames, ",")
nhTaskNftStakeRewardRowsExpectAutoSet = strings.Join(stringx.Remove(nhTaskNftStakeRewardFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
nhTaskNftStakeRewardRowsWithPlaceHolder = strings.Join(stringx.Remove(nhTaskNftStakeRewardFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
)
type (
nhTaskNftStakeRewardModel interface {
Insert(ctx context.Context, data *NhTaskNftStakeReward) (sql.Result, error)
FindOne(ctx context.Context, id uint) (*NhTaskNftStakeReward, error)
FindOneByUidAwardSeq(ctx context.Context, uid uint, awardSeq int) (*NhTaskNftStakeReward, error)
Update(ctx context.Context, data *NhTaskNftStakeReward) error
Delete(ctx context.Context, id uint) error
}
defaultNhTaskNftStakeRewardModel struct {
conn sqlx.SqlConn
table string
}
NhTaskNftStakeReward struct {
Id uint `db:"id"`
Uid uint `db:"uid"` // 用户钱包
AwardSeq int `db:"award_seq"` // 派奖序列号
PledgeOutput decimal.Decimal `db:"pledge_output"` // 质押产出代币
RandomCoefficient float64 `db:"random_coefficient"` // 随机系数
OccupyPercent int `db:"occupy_percent"` // 占领百分比
Reward decimal.Decimal `db:"reward"` // 奖励金额
Sent int8 `db:"sent"` // 是否已发放
CreatedAt time.Time `db:"created_at"` // 创建时间
UpdatedAt time.Time `db:"updated_at"` // 修改时间
}
)
func newNhTaskNftStakeRewardModel(conn sqlx.SqlConn) *defaultNhTaskNftStakeRewardModel {
return &defaultNhTaskNftStakeRewardModel{
conn: conn,
table: "`nh_task_nft_stake_reward`",
}
}
func (m *defaultNhTaskNftStakeRewardModel) Delete(ctx context.Context, id uint) error {
query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
_, err := m.conn.ExecCtx(ctx, query, id)
return err
}
func (m *defaultNhTaskNftStakeRewardModel) FindOne(ctx context.Context, id uint) (*NhTaskNftStakeReward, error) {
query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", nhTaskNftStakeRewardRows, m.table)
var resp NhTaskNftStakeReward
err := m.conn.QueryRowCtx(ctx, &resp, query, id)
switch err {
case nil:
return &resp, nil
case sqlx.ErrNotFound:
return nil, ErrNotFound
default:
return nil, err
}
}
func (m *defaultNhTaskNftStakeRewardModel) FindOneByUidAwardSeq(ctx context.Context, uid uint, awardSeq int) (*NhTaskNftStakeReward, error) {
var resp NhTaskNftStakeReward
query := fmt.Sprintf("select %s from %s where `uid` = ? and `award_seq` = ? limit 1", nhTaskNftStakeRewardRows, m.table)
err := m.conn.QueryRowCtx(ctx, &resp, query, uid, awardSeq)
switch err {
case nil:
return &resp, nil
case sqlx.ErrNotFound:
return nil, ErrNotFound
default:
return nil, err
}
}
func (m *defaultNhTaskNftStakeRewardModel) Insert(ctx context.Context, data *NhTaskNftStakeReward) (sql.Result, error) {
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?)", m.table, nhTaskNftStakeRewardRowsExpectAutoSet)
ret, err := m.conn.ExecCtx(ctx, query, data.Uid, data.AwardSeq, data.PledgeOutput, data.RandomCoefficient, data.OccupyPercent, data.Reward, data.Sent)
return ret, err
}
func (m *defaultNhTaskNftStakeRewardModel) Update(ctx context.Context, newData *NhTaskNftStakeReward) error {
query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, nhTaskNftStakeRewardRowsWithPlaceHolder)
_, err := m.conn.ExecCtx(ctx, query, newData.Uid, newData.AwardSeq, newData.PledgeOutput, newData.RandomCoefficient, newData.OccupyPercent, newData.Reward, newData.Sent, newData.Id)
return err
}
func (m *defaultNhTaskNftStakeRewardModel) tableName() string {
return m.table
}