package gmodel

import (
	"context"
)

func (d *FsProductModel3dModel) FindOne(ctx context.Context, id int64) (resp *FsProductModel3d, err error) {
	err = d.db.WithContext(ctx).Model(&FsProductModel3d{}).Where("`id` = ?  ", id).Find(&resp).Error
	return resp, err
}
func (d *FsProductModel3dModel) GetAllByIds(ctx context.Context, ids []int64, fields ...string) (resp []FsProductModel3d, err error) {
	if len(ids) == 0 {
		return
	}
	db := d.db.WithContext(ctx).Model(&FsProductModel3d{}).Where("`id` in (?) and `status` = ?", ids, 1)
	if len(fields) > 0 {
		db = db.Select(fields[0])
	}
	err = db.Find(&resp).Error
	return resp, err
}
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
	return resp, err
}