2023-06-12 08:47:48 +00:00
|
|
|
|
package gmodel
|
|
|
|
|
|
2023-06-13 09:47:48 +00:00
|
|
|
|
import (
|
|
|
|
|
"context"
|
|
|
|
|
"gorm.io/gorm"
|
|
|
|
|
)
|
2023-06-12 06:05:35 +00:00
|
|
|
|
|
|
|
|
|
type FsProductModel3d struct {
|
|
|
|
|
Id int64 `gorm:"primary_key" json:"id"`
|
|
|
|
|
ProductId *int64 `gorm:"default:0" json:"product_id"` // 产品ID
|
|
|
|
|
Tag *int64 `gorm:"default:1" json:"tag"` // 类别(1:模型,2:配件,3:场景)
|
|
|
|
|
Title *string `gorm:"default:''" json:"title"` // 标题
|
|
|
|
|
Name *string `gorm:"default:''" json:"name"` // 详情页展示名称
|
|
|
|
|
ModelInfo *string `gorm:"default:''" json:"model_info"` // 模型详情
|
|
|
|
|
MaterialId *int64 `gorm:"default:0" json:"material_id"` // 材质ID
|
|
|
|
|
SizeId *int64 `gorm:"default:0" json:"size_id"` // 尺寸ID
|
|
|
|
|
Sort *int64 `gorm:"default:0" json:"sort"` // 排序
|
|
|
|
|
Light *int64 `gorm:"default:0" json:"light"` // 灯光组
|
|
|
|
|
LightList *string `gorm:"default:''" json:"light_list"` // 灯光备选项
|
|
|
|
|
PartId *int64 `gorm:"default:0" json:"part_id"` // 配件选项id(配件就是模型的id)
|
|
|
|
|
PartList *string `gorm:"default:''" json:"part_list"` // 配件备选项
|
|
|
|
|
Status *int64 `gorm:"default:1" json:"status"` // 状态位 1显示 0删除
|
|
|
|
|
Ctime *int64 `gorm:"default:0" json:"ctime"` // 添加时间
|
|
|
|
|
OptionTemplate *int64 `gorm:"default:0" json:"option_template"` // 配件绑定的公共模板
|
|
|
|
|
Price *int64 `gorm:"default:0" json:"price"` // 仅配件用,配件的价格, 单位:美分
|
|
|
|
|
Sku *string `gorm:"default:''" json:"sku"` // sku
|
|
|
|
|
}
|
2023-06-12 08:47:48 +00:00
|
|
|
|
type FsProductModel3dModel struct {
|
|
|
|
|
db *gorm.DB
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func NewFsProductModel3dModel(db *gorm.DB) *FsProductModel3dModel {
|
|
|
|
|
return &FsProductModel3dModel{db}
|
|
|
|
|
}
|
2023-06-13 09:47:48 +00:00
|
|
|
|
func (d *FsProductModel3dModel) GetAllByIds(ctx context.Context, ids []int64) (resp []FsProductModel3d, err error) {
|
|
|
|
|
if len(ids) == 0 {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
err = d.db.WithContext(ctx).Model(&FsProductModel3d{}).Where("`id` in (?) and `status` = ?", ids, 1).Find(&resp).Error
|
|
|
|
|
if err != nil {
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
func (d *FsProductModel3dModel) GetAllByIdsTag(ctx context.Context, ids []int64, tag int64) (resp []FsProductModel3d, err error) {
|
|
|
|
|
if len(ids) == 0 {
|
|
|
|
|
return
|
|
|
|
|
}
|
|
|
|
|
err = d.db.WithContext(ctx).Model(&FsProductModel3d{}).Where("`id` in (?) and `status` = ? and `tag` = ?", ids, 1, tag).Find(&resp).Error
|
|
|
|
|
if err != nil {
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
return
|
|
|
|
|
}
|