package domain import ( "github.com/gin-gonic/gin" "online-order/entity" ) type DomainRepository interface { List() ([]*entity.DomainDisplay, error) Create(p *entity.DomainCreateUpdate) error GetByID(id int) (*entity.DomainDisplay, error) GetByDomain(d string) (*entity.DomainDisplay, error) Update(p *entity.DomainCreateUpdate) error Delete(id int) error } type DomainService interface { List() ([]*entity.DomainDisplay, error) Create(u *entity.DomainCreateUpdate) error GetByID(id int) (*entity.DomainDisplay, error) GetByDomain(d string) (*entity.DomainDisplay, error) Update(u *entity.DomainCreateUpdate) error Delete(id int) error } type DomainController interface { listDomain(ctx *gin.Context) getDomain(ctx *gin.Context) updateDomain(ctx *gin.Context) deleteDomain(ctx *gin.Context) }