package handler import ( "chatplus/core" "chatplus/store/model" "chatplus/store/vo" "chatplus/utils" "chatplus/utils/resp" "github.com/gin-gonic/gin" "gorm.io/gorm" ) type ProductHandler struct { BaseHandler db *gorm.DB } func NewProductHandler(app *core.AppServer, db *gorm.DB) *ProductHandler { h := ProductHandler{db: db} h.App = app return &h } // List 模型列表 func (h *ProductHandler) List(c *gin.Context) { var items []model.Product var list = make([]vo.Product, 0) res := h.db.Where("enabled", true).Order("sort_num ASC").Find(&items) if res.Error == nil { for _, item := range items { var product vo.Product err := utils.CopyObject(item, &product) if err == nil { product.Id = item.Id product.CreatedAt = item.CreatedAt.Unix() product.UpdatedAt = item.UpdatedAt.Unix() list = append(list, product) } else { logger.Error(err) } } } resp.SUCCESS(c, list) }