fusenapi/model/fsproductmodelmodel_gen.go
laodaming 32cd46a14a fix
2023-06-05 18:32:14 +08:00

109 lines
4.9 KiB
Go
Executable File
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// Code generated by goctl. DO NOT EDIT.
package model
import (
"context"
"database/sql"
"fmt"
"strings"
"github.com/zeromicro/go-zero/core/stores/builder"
"github.com/zeromicro/go-zero/core/stores/sqlc"
"github.com/zeromicro/go-zero/core/stores/sqlx"
"github.com/zeromicro/go-zero/core/stringx"
)
var (
fsProductModelFieldNames = builder.RawFieldNames(&FsProductModel{})
fsProductModelRows = strings.Join(fsProductModelFieldNames, ",")
fsProductModelRowsExpectAutoSet = strings.Join(stringx.Remove(fsProductModelFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
fsProductModelRowsWithPlaceHolder = strings.Join(stringx.Remove(fsProductModelFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
)
type (
fsProductModelModel interface {
Insert(ctx context.Context, data *FsProductModel) (sql.Result, error)
FindOne(ctx context.Context, id int64) (*FsProductModel, error)
Update(ctx context.Context, data *FsProductModel) error
Delete(ctx context.Context, id int64) error
ListBySizeIdsTag(ctx context.Context, sizeIds []string, tag int) ([]FsProductModel, error)
}
defaultFsProductModelModel struct {
conn sqlx.SqlConn
table string
}
FsProductModel struct {
Id int64 `db:"id"`
ProductId sql.NullInt64 `db:"product_id"` // 产品ID
Tag int64 `db:"tag"` // 类别1模型2配件3场景
Title string `db:"title"` // 标题
Name string `db:"name"` // 详情页展示名称
ModelInfo string `db:"model_info"` // 模型详情
MaterialId int64 `db:"material_id"` // 材质ID
SizeId int64 `db:"size_id"` // 尺寸ID
Sort int64 `db:"sort"` // 排序
Light sql.NullInt64 `db:"light"` // 灯光组
LightList sql.NullString `db:"light_list"` // 灯光备选项
PartId sql.NullInt64 `db:"part_id"` // 配件选项id配件就是模型的id
PartList sql.NullString `db:"part_list"` // 配件备选项
Status int64 `db:"status"` // 状态位 显示 删除
Ctime int64 `db:"ctime"` // 添加时间
OptionTemplate sql.NullInt64 `db:"option_template"` // 配件绑定的公共模板
Price int64 `db:"price"` // 仅配件用,配件的价格, 单位:美分
Sku string `db:"sku"` // sku
}
)
func newFsProductModelModel(conn sqlx.SqlConn) *defaultFsProductModelModel {
return &defaultFsProductModelModel{
conn: conn,
table: "`fs_product_model`",
}
}
func (m *defaultFsProductModelModel) Delete(ctx context.Context, id int64) error {
query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
_, err := m.conn.ExecCtx(ctx, query, id)
return err
}
func (m *defaultFsProductModelModel) FindOne(ctx context.Context, id int64) (*FsProductModel, error) {
query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", fsProductModelRows, m.table)
var resp FsProductModel
err := m.conn.QueryRowCtx(ctx, &resp, query, id)
switch err {
case nil:
return &resp, nil
case sqlc.ErrNotFound:
return nil, ErrNotFound
default:
return nil, err
}
}
func (m *defaultFsProductModelModel) Insert(ctx context.Context, data *FsProductModel) (sql.Result, error) {
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, fsProductModelRowsExpectAutoSet)
ret, err := m.conn.ExecCtx(ctx, query, data.ProductId, data.Tag, data.Title, data.Name, data.ModelInfo, data.MaterialId, data.SizeId, data.Sort, data.Light, data.LightList, data.PartId, data.PartList, data.Status, data.Ctime, data.OptionTemplate, data.Price, data.Sku)
return ret, err
}
func (m *defaultFsProductModelModel) Update(ctx context.Context, data *FsProductModel) error {
query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, fsProductModelRowsWithPlaceHolder)
_, err := m.conn.ExecCtx(ctx, query, data.ProductId, data.Tag, data.Title, data.Name, data.ModelInfo, data.MaterialId, data.SizeId, data.Sort, data.Light, data.LightList, data.PartId, data.PartList, data.Status, data.Ctime, data.OptionTemplate, data.Price, data.Sku, data.Id)
return err
}
func (m *defaultFsProductModelModel) ListBySizeIdsTag(ctx context.Context, sizeIds []string, tag int) (resp []FsProductModel, err error) {
query := fmt.Sprintf("select %s from %s where `size_id` in (?) and `tag` = ?", fsProductModelRows, m.table)
err = m.conn.QueryRowsCtx(ctx, &resp, query, strings.Join(sizeIds, ","), tag)
if err != nil {
return nil, err
}
return
}
func (m *defaultFsProductModelModel) tableName() string {
return m.table
}