online-order/domain/product.go

32 lines
854 B
Go
Raw Normal View History

2023-10-27 22:12:56 +00:00
package domain
import (
"github.com/gin-gonic/gin"
"online-order/entity"
)
type ProductRepository interface {
List() ([]*entity.ProductDisplay, error)
Create(p *entity.ProductCreateUpdate) error
GetByID(id int) (*entity.ProductDisplay, error)
SearchProduct(identifier string) (*entity.ProductDisplay, error)
Update(p *entity.ProductCreateUpdate) error
Delete(id int) error
}
type ProductService interface {
List() ([]*entity.ProductDisplay, error)
Create(u *entity.ProductCreateUpdate) error
GetByID(id int) (*entity.ProductDisplay, error)
SearchProduct(identifier string) (*entity.ProductDisplay, error)
Update(u *entity.ProductCreateUpdate) error
Delete(id int) error
}
2023-10-29 23:33:40 +00:00
type ProductController interface {
2023-10-27 22:12:56 +00:00
listProduct(ctx *gin.Context)
getProduct(ctx *gin.Context)
updateProduct(ctx *gin.Context)
deleteProduct(ctx *gin.Context)
}