Files
olons_admin/server/internal/controller/admin/sys/product.go
T
2026-10-10 20:56:17 +08:00

53 lines
1.6 KiB
Go

package sys
import (
"context"
"hotgo/api/admin/product"
"hotgo/internal/model/input/sysin"
"hotgo/internal/service"
)
var Product = cProduct{}
type cProduct struct{}
func (c *cProduct) List(ctx context.Context, req *product.ListReq) (res *product.ListRes, err error) {
list, total, err := service.SysProduct().List(ctx, &req.ProductListInp)
if err != nil {
return nil, err
}
if list == nil {
list = []*sysin.ProductListModel{}
}
res = new(product.ListRes)
res.List = list
res.PageRes.Pack(req, total)
return
}
func (c *cProduct) View(ctx context.Context, req *product.ViewReq) (res *product.ViewRes, err error) {
data, err := service.SysProduct().View(ctx, &req.ProductViewInp)
if err == nil {
res = &product.ViewRes{ProductListModel: data}
}
return res, err
}
func (c *cProduct) Edit(ctx context.Context, req *product.EditReq) (res *product.EditRes, err error) {
id, err := service.SysProduct().Edit(ctx, &req.ProductEditInp)
if err == nil {
res = &product.EditRes{Id: id}
}
return res, err
}
func (c *cProduct) Status(ctx context.Context, req *product.StatusReq) (res *product.StatusRes, err error) {
err = service.SysProduct().Status(ctx, &req.ProductStatusInp)
return
}
func (c *cProduct) Recommend(ctx context.Context, req *product.RecommendReq) (res *product.RecommendRes, err error) {
err = service.SysProduct().Recommend(ctx, &req.ProductRecommendInp)
return
}
func (c *cProduct) Delete(ctx context.Context, req *product.DeleteReq) (res *product.DeleteRes, err error) {
err = service.SysProduct().Delete(ctx, &req.ProductDeleteInp)
return
}