37 lines
770 B
Go
37 lines
770 B
Go
package users
|
|
|
|
import (
|
|
"context"
|
|
"database/sql"
|
|
|
|
"backend/database/models/qvyun/public/model"
|
|
"backend/database/models/qvyun/public/table"
|
|
|
|
"github.com/pkg/errors"
|
|
"github.com/sirupsen/logrus"
|
|
)
|
|
|
|
// @provider:except
|
|
type Service struct {
|
|
db *sql.DB
|
|
log *logrus.Entry `inject:"false"`
|
|
}
|
|
|
|
func (svc *Service) Prepare() error {
|
|
svc.log = logrus.WithField("module", "users.service")
|
|
return nil
|
|
}
|
|
|
|
// List
|
|
func (svc *Service) List(ctx context.Context) ([]model.Users, error) {
|
|
tbl := table.Users
|
|
stmt := tbl.SELECT(tbl.AllColumns)
|
|
svc.log.WithField("method", "List").Debug(stmt.DebugSql())
|
|
|
|
var items []model.Users
|
|
if err := stmt.QueryContext(ctx, svc.db, &items); err != nil {
|
|
return nil, errors.Wrap(err, "failed to query users")
|
|
}
|
|
return items, nil
|
|
}
|