dockerfiles/anylink/server/admin/api_set_audit.go

80 lines
2.0 KiB
Go
Raw Normal View History

2021-08-26 23:09:52 +08:00
package admin
import (
"net/http"
"strconv"
"github.com/bjdgyc/anylink/dbdata"
2022-11-10 15:53:48 +08:00
"github.com/gocarina/gocsv"
2021-08-26 23:09:52 +08:00
)
func SetAuditList(w http.ResponseWriter, r *http.Request) {
_ = r.ParseForm()
pageS := r.FormValue("page")
page, _ := strconv.Atoi(pageS)
if page < 1 {
page = 1
}
var datas []dbdata.AccessAudit
2022-11-10 15:53:48 +08:00
session := dbdata.GetAuditSession(r.FormValue("search"))
count, err := dbdata.FindAndCount(session, &datas, dbdata.PageSize, page)
2021-08-26 23:09:52 +08:00
if err != nil && !dbdata.CheckErrNotFound(err) {
RespError(w, RespInternalErr, err)
return
}
data := map[string]interface{}{
"count": count,
"page_size": dbdata.PageSize,
"datas": datas,
}
RespSucess(w, data)
}
2022-11-10 15:53:48 +08:00
func SetAuditExport(w http.ResponseWriter, r *http.Request) {
var datas []dbdata.AccessAudit
maxNum := 1000000
session := dbdata.GetAuditSession(r.FormValue("search"))
count, err := dbdata.FindAndCount(session, &datas, maxNum, 0)
if err != nil && !dbdata.CheckErrNotFound(err) {
RespError(w, RespInternalErr, err)
return
}
if count == 0 {
RespError(w, RespParamErr, "你导出的总数量为0条请调整搜索条件再导出")
return
}
if count > int64(maxNum) {
RespError(w, RespParamErr, "你导出的数据量超过100万条请调整搜索条件再导出")
return
}
gocsv.Marshal(datas, w)
}
2023-04-26 22:17:10 +08:00
func UserActLogList(w http.ResponseWriter, r *http.Request) {
_ = r.ParseForm()
pageS := r.FormValue("page")
page, _ := strconv.Atoi(pageS)
if page < 1 {
page = 1
}
var datas []dbdata.UserActLog
session := dbdata.UserActLogIns.GetSession(r.Form)
count, err := dbdata.FindAndCount(session, &datas, dbdata.PageSize, page)
if err != nil && !dbdata.CheckErrNotFound(err) {
RespError(w, RespInternalErr, err)
return
}
data := map[string]interface{}{
"count": count,
"page_size": dbdata.PageSize,
"datas": datas,
"statusOps": dbdata.UserActLogIns.GetStatusOpsWithTag(),
"osOps": dbdata.UserActLogIns.OsOps,
"clientOps": dbdata.UserActLogIns.ClientOps,
}
RespSucess(w, data)
}