init
This commit is contained in:
91
bbs-go/server/internal/services/operate_log_service.go
Normal file
91
bbs-go/server/internal/services/operate_log_service.go
Normal file
@@ -0,0 +1,91 @@
|
||||
package services
|
||||
|
||||
import (
|
||||
"bbs-go/internal/models"
|
||||
"bbs-go/internal/pkg/common"
|
||||
"bbs-go/internal/repositories"
|
||||
"log/slog"
|
||||
"net/http"
|
||||
|
||||
"github.com/mlogclub/simple/common/dates"
|
||||
"github.com/mlogclub/simple/sqls"
|
||||
"github.com/mlogclub/simple/web/params"
|
||||
)
|
||||
|
||||
var OperateLogService = newOperateLogService()
|
||||
|
||||
func newOperateLogService() *operateLogService {
|
||||
return &operateLogService{}
|
||||
}
|
||||
|
||||
type operateLogService struct {
|
||||
}
|
||||
|
||||
func (s *operateLogService) Get(id int64) *models.OperateLog {
|
||||
return repositories.OperateLogRepository.Get(sqls.DB(), id)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Take(where ...interface{}) *models.OperateLog {
|
||||
return repositories.OperateLogRepository.Take(sqls.DB(), where...)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Find(cnd *sqls.Cnd) []models.OperateLog {
|
||||
return repositories.OperateLogRepository.Find(sqls.DB(), cnd)
|
||||
}
|
||||
|
||||
func (s *operateLogService) FindOne(cnd *sqls.Cnd) *models.OperateLog {
|
||||
return repositories.OperateLogRepository.FindOne(sqls.DB(), cnd)
|
||||
}
|
||||
|
||||
func (s *operateLogService) FindPageByParams(params *params.QueryParams) (list []models.OperateLog, paging *sqls.Paging) {
|
||||
return repositories.OperateLogRepository.FindPageByParams(sqls.DB(), params)
|
||||
}
|
||||
|
||||
func (s *operateLogService) FindPageByCnd(cnd *sqls.Cnd) (list []models.OperateLog, paging *sqls.Paging) {
|
||||
return repositories.OperateLogRepository.FindPageByCnd(sqls.DB(), cnd)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Count(cnd *sqls.Cnd) int64 {
|
||||
return repositories.OperateLogRepository.Count(sqls.DB(), cnd)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Create(t *models.OperateLog) error {
|
||||
return repositories.OperateLogRepository.Create(sqls.DB(), t)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Update(t *models.OperateLog) error {
|
||||
return repositories.OperateLogRepository.Update(sqls.DB(), t)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Updates(id int64, columns map[string]interface{}) error {
|
||||
return repositories.OperateLogRepository.Updates(sqls.DB(), id, columns)
|
||||
}
|
||||
|
||||
func (s *operateLogService) UpdateColumn(id int64, name string, value interface{}) error {
|
||||
return repositories.OperateLogRepository.UpdateColumn(sqls.DB(), id, name, value)
|
||||
}
|
||||
|
||||
func (s *operateLogService) Delete(id int64) {
|
||||
repositories.OperateLogRepository.Delete(sqls.DB(), id)
|
||||
}
|
||||
|
||||
func (s *operateLogService) AddOperateLog(userId int64, opType, dataType string, dataId int64,
|
||||
description string, r *http.Request) {
|
||||
|
||||
operateLog := &models.OperateLog{
|
||||
UserId: userId,
|
||||
OpType: opType,
|
||||
DataType: dataType,
|
||||
DataId: dataId,
|
||||
Description: description,
|
||||
CreateTime: dates.NowTimestamp(),
|
||||
}
|
||||
if r != nil {
|
||||
operateLog.Ip = common.GetRequestIP(r)
|
||||
operateLog.UserAgent = common.GetUserAgent(r)
|
||||
operateLog.Referer = r.Header.Get("Referer")
|
||||
}
|
||||
if err := repositories.OperateLogRepository.Create(sqls.DB(), operateLog); err != nil {
|
||||
slog.Error(err.Error(), slog.Any("err", err))
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user