34 lines
636 B
Go
34 lines
636 B
Go
package usecase
|
|
|
|
import (
|
|
"context"
|
|
|
|
"git.heldm.com/held/qrcode/internal/app/repository"
|
|
"git.heldm.com/held/qrcode/internal/qrcode/entity"
|
|
"github.com/google/uuid"
|
|
)
|
|
|
|
func GetListQR(c context.Context, user *entity.User) ([]*entity.QR, error) {
|
|
|
|
qrs, err := repository.QR().GetByUserID(c, user.ID())
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return qrs, nil
|
|
}
|
|
|
|
func CreateQR(c context.Context, linkOrigin string, userID uuid.UUID) (*entity.QR, error) {
|
|
|
|
qr, err := entity.NewQR(linkOrigin, userID)
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
if err := repository.QR().Create(c, qr); err != nil {
|
|
return nil, err
|
|
}
|
|
|
|
return qr, nil
|
|
}
|