12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- // 自动生成模板SysOperationRecord
- package dao
- import (
- "time"
- "server/global"
- )
- // 如果含有time.Time 请自行import time包
- type SysOperationRecord struct {
- global.GVA_MODEL
- Ip string `json:"ip" form:"ip" gorm:"column:ip;comment:请求ip"` // 请求ip
- Method string `json:"method" form:"method" gorm:"column:method;comment:请求方法"` // 请求方法
- Path string `json:"path" form:"path" gorm:"column:path;comment:请求路径"` // 请求路径
- Status int `json:"status" form:"status" gorm:"column:status;comment:请求状态"` // 请求状态
- Latency time.Duration `json:"latency" form:"latency" gorm:"column:latency;comment:延迟" swaggertype:"string"` // 延迟
- Agent string `json:"agent" form:"agent" gorm:"type:text;column:agent;comment:代理"` // 代理
- ErrorMessage string `json:"error_message" form:"error_message" gorm:"column:error_message;comment:错误信息"` // 错误信息
- Body string `json:"body" form:"body" gorm:"type:text;column:body;comment:请求Body"` // 请求Body
- Resp string `json:"resp" form:"resp" gorm:"type:text;column:resp;comment:响应Body"` // 响应Body
- UserID int `json:"user_id" form:"user_id" gorm:"column:user_id;comment:用户id"` // 用户id
- User SysUser `json:"user"`
- }
- // TODO:操作查询
- // GetSysOperationRecord 根据id获取单条操作记录
- func GetSysOperationRecord(id uint) (sysOperationRecord SysOperationRecord, err error) {
- err = global.GVA_DB.Where("id = ?", id).First(&sysOperationRecord).Error
- return
- }
- // GetSysOperationRecordInfoList 分页获取操作记录列表
- func (sor SysOperationRecord) GetSysOperationRecordInfoList(limit, offset int) (sysOperationRecords []SysOperationRecord, total int64, err error) {
- // 创建db
- db := global.GVA_DB.Model(&SysOperationRecord{})
- // 如果有条件搜索 下方会自动创建搜索语句
- if sor.Method != "" {
- db = db.Where("method = ?", sor.Method)
- }
- if sor.Path != "" {
- db = db.Where("path LIKE ?", "%"+sor.Path+"%")
- }
- if sor.Status != 0 {
- db = db.Where("status = ?", sor.Status)
- }
- err = db.Count(&total).Error
- if err != nil {
- return
- }
- err = db.Order("id desc").Limit(limit).Offset(offset).Preload("User").Find(&sysOperationRecords).Error
- return sysOperationRecords, total, err
- }
- // TODO:操作新增
- func (sor SysOperationRecord) CreateSysOperationRecord() error {
- return global.GVA_DB.Create(&sor).Error
- }
- // TODO:操作修改
- // TODO:操作删除
- // DeleteSysOperationRecordByIds 删除操作记录按id
- func DeleteSysOperationRecordByIds(ids []int) (err error) {
- err = global.GVA_DB.Delete(&[]SysOperationRecord{}, "id in (?)", ids).Error
- return err
- }
- // DeleteSysOperationRecord 删除操作记录
- func (sor SysOperationRecord) DeleteSysOperationRecord() (err error) {
- err = global.GVA_DB.Delete(&sor).Error
- return err
- }
|