waflog.go 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package admin
  2. import (
  3. "context"
  4. "github.com/go-nunu/nunu-layout-advanced/internal/model"
  5. "github.com/go-nunu/nunu-layout-advanced/internal/repository"
  6. )
  7. type WafLogRepository interface {
  8. GetWafLog(ctx context.Context, id int64) (*model.WafLog, error)
  9. GetWafLogList(ctx context.Context) ([]model.WafLog, error)
  10. AddWafLog(ctx context.Context, log *model.WafLog) error
  11. BatchAddWafLog(ctx context.Context, logs []*model.WafLog) error
  12. }
  13. func NewWafLogRepository(
  14. repository *repository.Repository,
  15. ) WafLogRepository {
  16. return &wafLogRepository{
  17. Repository: repository,
  18. }
  19. }
  20. type wafLogRepository struct {
  21. *repository.Repository
  22. }
  23. func (r *wafLogRepository) GetWafLog(ctx context.Context, id int64) (*model.WafLog, error) {
  24. var res model.WafLog
  25. return &res, r.DBWithName(ctx,"admin").Where("id = ?", id).First(&res).Error
  26. }
  27. func (r *wafLogRepository) GetWafLogList(ctx context.Context) ([]model.WafLog, error) {
  28. var res []model.WafLog
  29. return res, r.DBWithName(ctx,"admin").Find(&res).Error
  30. }
  31. func (r *wafLogRepository) AddWafLog(ctx context.Context, log *model.WafLog) error {
  32. return r.DBWithName(ctx,"admin").Create(log).Error
  33. }
  34. func (r *wafLogRepository) BatchAddWafLog(ctx context.Context, logs []*model.WafLog) error {
  35. if len(logs) == 0 {
  36. return nil
  37. }
  38. return r.DBWithName(ctx, "admin").CreateInBatches(logs, len(logs)).Error
  39. }