This commit is contained in:
2025-04-14 15:28:51 +08:00
parent f100427f8b
commit 371b89ee8d
93 changed files with 3757 additions and 1038 deletions

View File

@@ -2,68 +2,41 @@ package system
import (
"context"
"time"
"management/internal/db/model/dto"
db "management/internal/db/sqlc"
systemmodel "management/internal/erpserver/model/system"
"management/internal/erpserver/store"
)
type LoginLogBiz interface {
Create(ctx context.Context, arg *db.CreateSysUserLoginLogParams) error
List(ctx context.Context, q dto.SearchDto) ([]*db.SysUserLoginLog, int64, error)
Create(ctx context.Context, obj *systemmodel.LoginLog) error
List(ctx context.Context, q dto.SearchDto) ([]*systemmodel.LoginLog, int64, error)
}
type loginLogBiz struct {
store db.Store
database store.IStore
store db.Store
}
var _ LoginLogBiz = (*loginLogBiz)(nil)
func NewLoginLog(store db.Store) *loginLogBiz {
func NewLoginLog(database store.IStore, store db.Store) *loginLogBiz {
return &loginLogBiz{
store: store,
database: database,
store: store,
}
}
func (b *loginLogBiz) Create(ctx context.Context, arg *db.CreateSysUserLoginLogParams) error {
return b.store.CreateSysUserLoginLog(ctx, arg)
func (b *loginLogBiz) Create(ctx context.Context, obj *systemmodel.LoginLog) error {
return b.database.LoginLog().Create(ctx, obj)
}
func (b *loginLogBiz) List(ctx context.Context, q dto.SearchDto) ([]*db.SysUserLoginLog, int64, error) {
start, err := time.ParseInLocation(time.DateTime, q.SearchTimeBegin, time.Local)
if err != nil {
return nil, 0, err
}
end, err := time.ParseInLocation(time.DateTime, q.SearchTimeEnd, time.Local)
func (b *loginLogBiz) List(ctx context.Context, q dto.SearchDto) ([]*systemmodel.LoginLog, int64, error) {
res, count, err := b.database.LoginLog().List(ctx, q)
if err != nil {
return nil, 0, err
}
countArg := &db.CountSysUserLoginLogConditionParams{
StartAt: start,
EndAt: end,
Email: q.SearchEmail,
Username: q.SearchName,
}
dataArg := &db.ListSysUserLoginLogConditionParams{
StartAt: start,
EndAt: end,
Email: q.SearchEmail,
Username: q.SearchName,
Skip: (int32(q.Page) - 1) * int32(q.Rows),
Size: int32(q.Rows),
}
count, err := b.store.CountSysUserLoginLogCondition(ctx, countArg)
if err != nil {
return nil, 0, err
}
logs, err := b.store.ListSysUserLoginLogCondition(ctx, dataArg)
if err != nil {
return nil, 0, err
}
return logs, count, nil
return res, count, nil
}