2026-03-02 17:29:43 +03:00
|
|
|
package user
|
|
|
|
|
|
|
|
|
|
import (
|
2026-03-04 17:02:11 +03:00
|
|
|
"github.com/jackc/pgx/v5/pgxpool"
|
2026-04-01 17:49:36 +03:00
|
|
|
"merch-api/internal/common"
|
2026-03-02 17:29:43 +03:00
|
|
|
"merch-api/pkg/utils"
|
|
|
|
|
)
|
|
|
|
|
|
2026-03-20 16:09:12 +03:00
|
|
|
const pkgLogHeader string = "User |"
|
|
|
|
|
|
2026-03-02 17:29:43 +03:00
|
|
|
type Handler struct {
|
|
|
|
|
*service
|
2026-03-20 16:09:12 +03:00
|
|
|
controller *controller
|
2026-03-02 17:29:43 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
type Deps struct {
|
2026-04-01 17:49:36 +03:00
|
|
|
DB *pgxpool.Pool
|
|
|
|
|
Utils utils.Utils
|
|
|
|
|
AuthDP common.AuthDataProvider
|
2026-03-02 17:29:43 +03:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func New(deps Deps) *Handler {
|
|
|
|
|
r := newRepository(deps.DB)
|
2026-04-01 17:49:36 +03:00
|
|
|
s := newService(r, deps.Utils, deps.AuthDP)
|
2026-03-20 16:09:12 +03:00
|
|
|
c := newController(s, deps.Utils)
|
2026-03-02 17:29:43 +03:00
|
|
|
|
|
|
|
|
return &Handler{
|
2026-03-20 16:09:12 +03:00
|
|
|
service: s,
|
|
|
|
|
controller: c,
|
2026-03-02 17:29:43 +03:00
|
|
|
}
|
|
|
|
|
}
|