refactor: 重构更新多个文件中的相关调用
This commit is contained in:
@@ -53,7 +53,7 @@ type YamlConfig struct {
|
||||
} `yaml:"listen"`
|
||||
} `yaml:"webServer"`
|
||||
|
||||
Database DbConfig `yaml:"database"`
|
||||
// Database DbConfig `yaml:"database"`
|
||||
|
||||
OMC struct {
|
||||
UriPrefix string `yaml:"uriPrefix"`
|
||||
@@ -139,16 +139,16 @@ type RestParam struct {
|
||||
KeyFile string `yaml:"keyFile"`
|
||||
}
|
||||
|
||||
type DbConfig struct {
|
||||
Type string `yaml:"type"`
|
||||
User string `yaml:"user"`
|
||||
Password string `yaml:"password"`
|
||||
Host string `yaml:"host"`
|
||||
Port string `yaml:"port"`
|
||||
Name string `yaml:"name"`
|
||||
ConnParam string `yaml:"connParam,omitempty"`
|
||||
Backup string `yaml:"backup"`
|
||||
}
|
||||
// type DbConfig struct {
|
||||
// Type string `yaml:"type"`
|
||||
// User string `yaml:"user"`
|
||||
// Password string `yaml:"password"`
|
||||
// Host string `yaml:"host"`
|
||||
// Port string `yaml:"port"`
|
||||
// Name string `yaml:"name"`
|
||||
// ConnParam string `yaml:"connParam,omitempty"`
|
||||
// Backup string `yaml:"backup"`
|
||||
// }
|
||||
|
||||
type AlarmConfig struct {
|
||||
SplitEventAlarm bool `yaml:"splitEventAlarm"`
|
||||
@@ -238,10 +238,10 @@ var YamlConfigInfo YamlConfigFile = YamlConfigFile{
|
||||
// set default value for yaml config
|
||||
func NewYamlConfig() YamlConfig {
|
||||
return YamlConfig{
|
||||
Database: DbConfig{
|
||||
Type: "mysql",
|
||||
ConnParam: "charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=True&interpolateParams=True",
|
||||
},
|
||||
// Database: DbConfig{
|
||||
// Type: "mysql",
|
||||
// ConnParam: "charset=utf8mb4&collation=utf8mb4_general_ci&parseTime=True&interpolateParams=True",
|
||||
// },
|
||||
MML: MMLParam{
|
||||
SizeRow: 200,
|
||||
SizeCol: 120,
|
||||
|
||||
@@ -10,9 +10,8 @@ import (
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
"be.ems/src/framework/constants/token"
|
||||
tokenUtils "be.ems/src/framework/utils/token"
|
||||
"be.ems/src/framework/vo"
|
||||
"be.ems/src/framework/constants"
|
||||
"be.ems/src/framework/token"
|
||||
"github.com/gorilla/mux"
|
||||
"golang.org/x/text/language"
|
||||
)
|
||||
@@ -123,25 +122,25 @@ func SaveUploadedFile(r *http.Request, dst string) error {
|
||||
// Authorization 解析请求头
|
||||
func Authorization(r *http.Request) string {
|
||||
// Query请求查询
|
||||
if authQuery := r.URL.Query().Get(token.ACCESS_TOKEN); authQuery != "" {
|
||||
if authQuery := r.URL.Query().Get(constants.ACCESS_TOKEN); authQuery != "" {
|
||||
return authQuery
|
||||
}
|
||||
// Header请求头
|
||||
if authHeader := r.Header.Get(token.ACCESS_TOKEN); authHeader != "" {
|
||||
if authHeader := r.Header.Get(constants.ACCESS_TOKEN); authHeader != "" {
|
||||
return authHeader
|
||||
}
|
||||
|
||||
// Query请求查询
|
||||
if authQuery := r.URL.Query().Get(token.RESPONSE_FIELD); authQuery != "" {
|
||||
if authQuery := r.URL.Query().Get(constants.ACCESS_TOKEN_QUERY); authQuery != "" {
|
||||
return authQuery
|
||||
}
|
||||
// Header请求头
|
||||
authHeader := r.Header.Get(token.HEADER_KEY)
|
||||
authHeader := r.Header.Get(constants.HEADER_KEY)
|
||||
if authHeader == "" {
|
||||
return ""
|
||||
}
|
||||
// 拆分 Authorization 请求头,提取 JWT 令牌部分
|
||||
arr := strings.Split(authHeader, token.HEADER_PREFIX)
|
||||
arr := strings.Split(authHeader, constants.HEADER_PREFIX)
|
||||
if len(arr) == 2 && arr[1] == "" {
|
||||
return ""
|
||||
}
|
||||
@@ -177,34 +176,34 @@ func AcceptLanguage(r *http.Request) string {
|
||||
type ContextKey string
|
||||
|
||||
// LoginUser 登录用户信息需要Authorize中间件
|
||||
func LoginUser(r *http.Request) (vo.LoginUser, error) {
|
||||
func LoginUser(r *http.Request) (token.TokenInfo, error) {
|
||||
// 获取请求头标识信息
|
||||
tokenStr := Authorization(r)
|
||||
if tokenStr == "" {
|
||||
return vo.LoginUser{}, fmt.Errorf("not token info")
|
||||
return token.TokenInfo{}, fmt.Errorf("not token info")
|
||||
}
|
||||
// 验证令牌
|
||||
claims, err := tokenUtils.Verify(tokenStr)
|
||||
claims, err := token.Verify(tokenStr)
|
||||
if err != nil {
|
||||
return vo.LoginUser{}, fmt.Errorf("token verify fail")
|
||||
return token.TokenInfo{}, fmt.Errorf("token verify fail")
|
||||
}
|
||||
|
||||
// 获取缓存的用户信息
|
||||
loginUser := tokenUtils.LoginUser(claims)
|
||||
if loginUser.UserID == "" {
|
||||
return vo.LoginUser{}, fmt.Errorf("not user info")
|
||||
loginUser := token.Info(claims)
|
||||
if loginUser.UserId <= 0 {
|
||||
return token.TokenInfo{}, fmt.Errorf("not user info")
|
||||
}
|
||||
|
||||
return loginUser, nil
|
||||
}
|
||||
|
||||
// LoginUserToUserID 登录用户信息-用户ID
|
||||
func LoginUserToUserID(r *http.Request) string {
|
||||
func LoginUserToUserID(r *http.Request) int64 {
|
||||
loginUser, err := LoginUser(r)
|
||||
if err != nil {
|
||||
return ""
|
||||
return 0
|
||||
}
|
||||
return loginUser.UserID
|
||||
return loginUser.UserId
|
||||
}
|
||||
|
||||
// LoginUserToUserName 登录用户信息-用户名称
|
||||
|
||||
@@ -1,167 +0,0 @@
|
||||
package dborm
|
||||
|
||||
import (
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"log"
|
||||
"os"
|
||||
"regexp"
|
||||
"time"
|
||||
|
||||
"gorm.io/driver/mysql"
|
||||
"gorm.io/gorm"
|
||||
"gorm.io/gorm/logger"
|
||||
)
|
||||
|
||||
// 数据库连接实例
|
||||
var dbgEngine *gorm.DB
|
||||
|
||||
// 载入连接日志配置
|
||||
func loadLogger() logger.Interface {
|
||||
newLogger := logger.New(
|
||||
log.New(os.Stdout, "[GORM] ", log.LstdFlags), // 将日志输出到控制台
|
||||
logger.Config{
|
||||
SlowThreshold: time.Second, // Slow SQL 阈值
|
||||
LogLevel: logger.Info, // 日志级别 Silent不输出任何日志
|
||||
ParameterizedQueries: false, // 参数化查询SQL 用实际值带入?的执行语句
|
||||
Colorful: false, // 彩色日志输出
|
||||
},
|
||||
)
|
||||
return newLogger
|
||||
}
|
||||
|
||||
// 连接数据库实例
|
||||
func InitGormConnect(dbType, dbUser, dbPassword, dbHost, dbPort, dbName, dbParam, dbLogging any) error {
|
||||
var dialector gorm.Dialector
|
||||
switch dbType {
|
||||
case "mysql":
|
||||
dsn := fmt.Sprintf("%s:%s@tcp(%s:%s)/%s?%s",
|
||||
dbUser,
|
||||
dbPassword,
|
||||
dbHost,
|
||||
dbPort,
|
||||
dbName,
|
||||
dbParam,
|
||||
)
|
||||
dialector = mysql.Open(dsn)
|
||||
default:
|
||||
err := fmt.Errorf("invalid type: %s", dbType)
|
||||
return err
|
||||
}
|
||||
opts := &gorm.Config{}
|
||||
// 是否需要日志输出
|
||||
if dbLogging.(bool) {
|
||||
opts.Logger = loadLogger()
|
||||
}
|
||||
// 创建连接
|
||||
db, err := gorm.Open(dialector, opts)
|
||||
if err != nil {
|
||||
log.Fatalf("failed to open: %s", err)
|
||||
return err
|
||||
}
|
||||
// 获取底层 SQL 数据库连接
|
||||
sqlDB, err := db.DB()
|
||||
if err != nil {
|
||||
log.Fatalf("failed to connect DB pool: %v", err)
|
||||
return err
|
||||
}
|
||||
// 测试数据库连接
|
||||
err = sqlDB.Ping()
|
||||
if err != nil {
|
||||
log.Fatalf("failed to ping database: %v", err)
|
||||
return err
|
||||
}
|
||||
dbgEngine = db
|
||||
return nil
|
||||
}
|
||||
|
||||
// 关闭数据库实例
|
||||
func Close() {
|
||||
sqlDB, err := dbgEngine.DB()
|
||||
if err != nil {
|
||||
log.Fatalf("failed to connect pool: %s", err)
|
||||
}
|
||||
if err := sqlDB.Close(); err != nil {
|
||||
log.Fatalf("failed to close: %s", err)
|
||||
}
|
||||
}
|
||||
|
||||
// default gorm DB
|
||||
func DefaultDB() *gorm.DB {
|
||||
return dbgEngine
|
||||
}
|
||||
|
||||
// get sql DB
|
||||
func GCoreDB() (*sql.DB, error) {
|
||||
return dbgEngine.DB()
|
||||
}
|
||||
|
||||
// RawSQL 原生查询语句
|
||||
func RawSQL(sql string, parameters []any) ([]map[string]any, error) {
|
||||
// 数据源
|
||||
db := DefaultDB()
|
||||
|
||||
// 使用正则表达式替换连续的空白字符为单个空格
|
||||
fmtSql := regexp.MustCompile(`\s+`).ReplaceAllString(sql, " ")
|
||||
|
||||
// logger.Infof("sql=> %v", fmtSql)
|
||||
// logger.Infof("parameters=> %v", parameters)
|
||||
|
||||
// 查询结果
|
||||
var rows []map[string]any
|
||||
res := db.Raw(fmtSql, parameters...).Scan(&rows)
|
||||
if res.Error != nil {
|
||||
return nil, res.Error
|
||||
}
|
||||
return rows, nil
|
||||
}
|
||||
|
||||
// ExecSQL 原生执行语句
|
||||
func ExecSQL(sql string, parameters []any) (int64, error) {
|
||||
// 数据源
|
||||
db := DefaultDB()
|
||||
|
||||
// 使用正则表达式替换连续的空白字符为单个空格
|
||||
fmtSql := regexp.MustCompile(`\s+`).ReplaceAllString(sql, " ")
|
||||
// 执行结果
|
||||
res := db.Exec(fmtSql, parameters...)
|
||||
if res.Error != nil {
|
||||
return 0, res.Error
|
||||
}
|
||||
return res.RowsAffected, nil
|
||||
}
|
||||
|
||||
func CloneTable(srcTable, dstTable string) error {
|
||||
// 获取表 A 的结构信息
|
||||
var columns []gorm.ColumnType
|
||||
dbMigrator := dbgEngine.Migrator()
|
||||
columns, err := dbMigrator.ColumnTypes(srcTable)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to ColumnTypes, %v", err)
|
||||
}
|
||||
|
||||
// 创建表 destination table
|
||||
err = dbMigrator.CreateTable(dstTable)
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to CreateTable, %v", err)
|
||||
}
|
||||
// 复制表 src 的字段到表 dst
|
||||
for _, column := range columns {
|
||||
err = dbMigrator.AddColumn(dstTable, column.Name())
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to AddColumn, %v", err)
|
||||
}
|
||||
}
|
||||
|
||||
// 复制表 src 的主键和索引到表 dst
|
||||
err = dbMigrator.CreateConstraint(dstTable, "PRIMARY")
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to AddColumn, %v", err)
|
||||
}
|
||||
|
||||
err = dbMigrator.CreateConstraint(dstTable, "INDEX")
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to AddColumn, %v", err)
|
||||
}
|
||||
return nil
|
||||
}
|
||||
@@ -518,66 +518,6 @@ type Period struct {
|
||||
End string `json:"End"`
|
||||
}
|
||||
|
||||
type KpiSetJ struct {
|
||||
Code string `json:"Code"` // 统计编码 如:SMFHA01
|
||||
KPIs []string `json:"KPIs` // 指标项集合 ["SMF.AttCreatePduSession", "SMF.AttCreatePduSession._Dnn"]
|
||||
}
|
||||
|
||||
type MeasureTask struct {
|
||||
Id int `json:"id" xorm:"pk 'id' autoincr"`
|
||||
NeType string `json:"neType" xorm:"ne_type"`
|
||||
NeIds []string `json:"neIds" xorm:"ne_ids"`
|
||||
KpiSet []KpiSetJ `json:"KPISet" xorm:"kpi_set"`
|
||||
StartTime string `json:"startTime" xorm:"start_time"`
|
||||
EndTime string `json:"endTime" xorm:"end_time"`
|
||||
Periods []Period `json:"Periods" xorm:"periods`
|
||||
Schedule []ScheduleJ `json:"Schedule" xorm:"schedule"`
|
||||
GranulOption string `json:"granulOption" xorm:"granul_option"`
|
||||
Status string `json:"status" xorm:"status"`
|
||||
AccountID string `json:"accountId" xorm:"account_id"`
|
||||
Comment string `json:"comment" xorm:"comment"`
|
||||
CreateTime string `json:"createTime" xorm:"create_time"`
|
||||
UpdateTime string `json:"updateTime" xorm:"update_time"`
|
||||
DeleteTime string `json:"deleteTime xorm:"delete_time"`
|
||||
}
|
||||
|
||||
func GetMeasureTask(taskId int) (*MeasureTask, error) {
|
||||
log.Debug("GetMeasureTask processing... ")
|
||||
|
||||
measureTask := new(MeasureTask)
|
||||
has, err := xEngine.Table("measure_task").Where("id=?", taskId).Get(measureTask)
|
||||
if err != nil || !has {
|
||||
log.Error("Failed to get table measure_task from database:", err)
|
||||
|
||||
return nil, err
|
||||
}
|
||||
|
||||
log.Debug("Measure Task:", measureTask)
|
||||
return measureTask, nil
|
||||
}
|
||||
|
||||
func XormGetActiveMeasureTask(measureTasks *[]MeasureTask) (*[]MeasureTask, error) {
|
||||
log.Debug("XormGetActiveMeasureTask processing... ")
|
||||
|
||||
measureTask := new(MeasureTask)
|
||||
rows, err := xEngine.Table("measure_task").Where("status='Active'").Rows(measureTask)
|
||||
if err != nil {
|
||||
log.Error("Failed to get table measure_task:", err)
|
||||
return nil, err
|
||||
}
|
||||
defer rows.Close()
|
||||
for rows.Next() {
|
||||
err := rows.Scan(measureTask)
|
||||
if err != nil {
|
||||
log.Error("Failed to get table measure_task from database:", err)
|
||||
return nil, err
|
||||
}
|
||||
*measureTasks = append(*measureTasks, *measureTask)
|
||||
}
|
||||
log.Debug("measureTasks:", measureTasks)
|
||||
return measureTasks, nil
|
||||
}
|
||||
|
||||
func GetTableByWhere(whereCondition string, tableName string) (*[]interface{}, error) {
|
||||
log.Debug("GetTableByWhere processing... ")
|
||||
|
||||
|
||||
@@ -8,21 +8,19 @@ import (
|
||||
"os"
|
||||
"os/user"
|
||||
"path/filepath"
|
||||
"strings"
|
||||
"syscall"
|
||||
|
||||
"github.com/dustin/go-humanize"
|
||||
)
|
||||
|
||||
type FileInfo struct {
|
||||
FileType string `json:"fileType"` // 文件类型
|
||||
FileMode string `json:"fileMode"` // 文件的权限
|
||||
LinkCount int64 `json:"linkCount"` // 硬链接数目
|
||||
Owner string `json:"owner"` // 所属用户
|
||||
Group string `json:"group"` // 所属组
|
||||
Size string `json:"size"` // 文件的大小
|
||||
ModifiedTime int64 `json:"modifiedTime"` // 最后修改时间,单位为秒
|
||||
FileName string `json:"fileName"` // 文件的名称
|
||||
FileType string `json:"fileType"` // file type: file/directory
|
||||
FileMode string `json:"fileMode"` // file mode
|
||||
LinkCount int64 `json:"linkCount"` // link count
|
||||
Owner string `json:"owner"` // owner
|
||||
Group string `json:"group"` // group
|
||||
Size int64 `json:"size"` // size: xx byte
|
||||
ModifiedTime int64 `json:"modifiedTime"` // last modified time:seconds
|
||||
FilePath string `json:"filePath"` // file path
|
||||
FileName string `json:"fileName"` // file name
|
||||
}
|
||||
|
||||
func GetFileInfo(dir, suffix string) ([]FileInfo, error) {
|
||||
@@ -58,15 +56,15 @@ func GetFileInfo(dir, suffix string) ([]FileInfo, error) {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
humanReadableSize := humanize.Bytes(uint64(info.Size()))
|
||||
fileInfo := FileInfo{
|
||||
FileType: fileType,
|
||||
FileMode: info.Mode().String(),
|
||||
LinkCount: int64(info.Sys().(*syscall.Stat_t).Nlink),
|
||||
Owner: userInfo.Username,
|
||||
Group: groupInfo.Name,
|
||||
Size: strings.ToUpper(humanReadableSize),
|
||||
Size: info.Size(),
|
||||
ModifiedTime: info.ModTime().Unix(),
|
||||
FilePath: dir,
|
||||
FileName: info.Name(),
|
||||
}
|
||||
files = append(files, fileInfo)
|
||||
|
||||
@@ -6,7 +6,8 @@ import (
|
||||
|
||||
"be.ems/lib/log"
|
||||
"be.ems/lib/services"
|
||||
tokenConst "be.ems/src/framework/constants/token"
|
||||
"be.ems/src/framework/constants"
|
||||
|
||||
"github.com/gorilla/mux"
|
||||
)
|
||||
|
||||
@@ -23,7 +24,7 @@ func LoggerTrace(next http.Handler) http.Handler {
|
||||
log.Trace(" User-Agent:", r.Header.Get("User-Agent"))
|
||||
log.Trace(" Content-Type:", r.Header.Get("Content-Type"))
|
||||
log.Trace(" AccessToken:", r.Header.Get("AccessToken"))
|
||||
log.Trace(" Authorization:", r.Header.Get(tokenConst.HEADER_KEY))
|
||||
log.Trace(" Authorization:", r.Header.Get(constants.HEADER_KEY))
|
||||
log.Trace("Trace End=====")
|
||||
//body, _ := io.ReadAll(io.LimitReader(r.Body, global.RequestBodyMaxLen))
|
||||
// nop-close to ready r.Body !!!
|
||||
|
||||
@@ -11,7 +11,7 @@ import (
|
||||
|
||||
"be.ems/lib/core/ctx"
|
||||
"be.ems/lib/log"
|
||||
"be.ems/src/framework/datasource"
|
||||
"be.ems/src/framework/database/db"
|
||||
"be.ems/src/framework/utils/date"
|
||||
)
|
||||
|
||||
@@ -52,7 +52,7 @@ func LogMML(next http.Handler) http.Handler {
|
||||
username := ctx.LoginUserToUserName(r)
|
||||
// 执行插入
|
||||
sql := "insert into mml_log (user,ip,ne_type,ne_id,mml,result,log_time)values(?,?,?,?,?,?,?)"
|
||||
_, sqlerr := datasource.ExecDB("", sql, []any{username, ipAddr, neType, neId, mmlCmd, resultStr, timeStr})
|
||||
_, sqlerr := db.ExecDB("", sql, []any{username, ipAddr, neType, neId, mmlCmd, resultStr, timeStr})
|
||||
if sqlerr != nil {
|
||||
log.Errorf("insert row : %v", sqlerr.Error())
|
||||
}
|
||||
|
||||
@@ -12,9 +12,9 @@ import (
|
||||
"time"
|
||||
|
||||
"be.ems/lib/core/ctx"
|
||||
"be.ems/src/framework/constants/common"
|
||||
"be.ems/src/framework/constants"
|
||||
"be.ems/src/framework/ip2region"
|
||||
"be.ems/src/framework/middleware/collectlogs"
|
||||
"be.ems/src/framework/utils/ip2region"
|
||||
"be.ems/src/framework/utils/parse"
|
||||
"be.ems/src/modules/system/model"
|
||||
"be.ems/src/modules/system/service"
|
||||
@@ -52,19 +52,17 @@ func LogOperate(options collectlogs.Options) func(http.Handler) http.Handler {
|
||||
// 解析ip地址
|
||||
ip := strings.Split(r.RemoteAddr, ":")[0]
|
||||
ipaddr := ip2region.ClientIP(ip)
|
||||
location := ip2region.RealAddressByIp(ipaddr)
|
||||
location := "-" //ip2region.RealAddressByIp(ipaddr)
|
||||
// 操作日志记录
|
||||
operLog := model.SysLogOperate{
|
||||
Title: options.Title,
|
||||
BusinessType: options.BusinessType,
|
||||
OperatorType: collectlogs.OPERATOR_TYPE_MANAGE,
|
||||
Method: funcName,
|
||||
OperURL: r.RequestURI,
|
||||
RequestMethod: r.Method,
|
||||
OperIP: ipaddr,
|
||||
OperLocation: location,
|
||||
OperName: username,
|
||||
DeptName: "",
|
||||
Title: options.Title,
|
||||
BusinessType: options.BusinessType,
|
||||
OperaMethod: funcName,
|
||||
OperaUrl: r.RequestURI,
|
||||
OperaUrlMethod: r.Method,
|
||||
OperaIp: ipaddr,
|
||||
OperaLocation: location,
|
||||
OperaBy: username,
|
||||
}
|
||||
|
||||
// 是否需要保存request,参数和值
|
||||
@@ -97,7 +95,7 @@ func LogOperate(options collectlogs.Options) func(http.Handler) http.Handler {
|
||||
if len(paramsStr) > 2000 {
|
||||
paramsStr = paramsStr[:2000]
|
||||
}
|
||||
operLog.OperParam = paramsStr
|
||||
operLog.OperaParam = paramsStr
|
||||
}
|
||||
|
||||
next.ServeHTTP(w, r)
|
||||
@@ -110,9 +108,9 @@ func LogOperate(options collectlogs.Options) func(http.Handler) http.Handler {
|
||||
|
||||
// 响应状态
|
||||
if status == "200" || status == "204" {
|
||||
operLog.Status = common.STATUS_YES
|
||||
operLog.StatusFlag = constants.STATUS_YES
|
||||
} else {
|
||||
operLog.Status = common.STATUS_NO
|
||||
operLog.StatusFlag = constants.STATUS_NO
|
||||
}
|
||||
|
||||
// 是否需要保存response,参数和值
|
||||
@@ -121,16 +119,16 @@ func LogOperate(options collectlogs.Options) func(http.Handler) http.Handler {
|
||||
contentType := w.Header().Get("Content-Type")
|
||||
content := contentType + contentDisposition
|
||||
msg := fmt.Sprintf(`{"status":"%s","size":"%s","content-type":"%s"}`, status, size, content)
|
||||
operLog.OperMsg = msg
|
||||
operLog.OperaMsg = msg
|
||||
}
|
||||
|
||||
// 日志记录时间
|
||||
duration := time.Since(startTime)
|
||||
operLog.CostTime = duration.Milliseconds()
|
||||
operLog.OperTime = time.Now().UnixMilli()
|
||||
operLog.OperaTime = time.Now().UnixMilli()
|
||||
|
||||
// 保存操作记录到数据库
|
||||
service.NewSysLogOperateImpl.InsertSysLogOperate(operLog)
|
||||
service.NewSysLogOperate.Insert(operLog)
|
||||
|
||||
})
|
||||
}
|
||||
|
||||
@@ -15,7 +15,8 @@ import (
|
||||
"be.ems/lib/global"
|
||||
"be.ems/lib/log"
|
||||
"be.ems/lib/run"
|
||||
tokenConst "be.ems/src/framework/constants/token"
|
||||
"be.ems/src/framework/constants"
|
||||
|
||||
"github.com/go-resty/resty/v2"
|
||||
)
|
||||
|
||||
@@ -507,7 +508,7 @@ func TransMml2HttpReq(omcMmlVar *MmlVar, mml *MmlCommand) (*[]byte, error) {
|
||||
log.Debugf("method: Get requestURI: %s", requestURI)
|
||||
response, err := client.R().
|
||||
EnableTrace().
|
||||
SetHeaders(map[string]string{tokenConst.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
SetHeaders(map[string]string{constants.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
// SetHeaders(map[string]string{"accessToken": omcMmlVar.SessionToken}).
|
||||
SetHeaders(map[string]string{"User-Agent": omcMmlVar.UserAgent}).
|
||||
SetHeaders(map[string]string{"Content-Type": "application/json;charset=UTF-8"}).
|
||||
@@ -524,7 +525,7 @@ func TransMml2HttpReq(omcMmlVar *MmlVar, mml *MmlCommand) (*[]byte, error) {
|
||||
log.Debugf("method: Post requestURI: %s", requestURI)
|
||||
response, err := client.R().
|
||||
EnableTrace().
|
||||
SetHeaders(map[string]string{tokenConst.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
SetHeaders(map[string]string{constants.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
// SetHeaders(map[string]string{"accessToken": omcMmlVar.SessionToken}).
|
||||
SetHeaders(map[string]string{"User-Agent": omcMmlVar.UserAgent}).
|
||||
SetHeaders(map[string]string{"Content-Type": "application/json;charset=UTF-8"}).
|
||||
@@ -558,7 +559,7 @@ func TransMml2HttpReq(omcMmlVar *MmlVar, mml *MmlCommand) (*[]byte, error) {
|
||||
body := ParseInputBody(inputJson, mml)
|
||||
response, err := client.R().
|
||||
EnableTrace().
|
||||
SetHeaders(map[string]string{tokenConst.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
SetHeaders(map[string]string{constants.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
// SetHeaders(map[string]string{"accessToken": omcMmlVar.SessionToken}).
|
||||
SetHeaders(map[string]string{"User-Agent": omcMmlVar.UserAgent}).
|
||||
SetHeaders(map[string]string{"Content-Type": "application/json;charset=UTF-8"}).
|
||||
@@ -575,7 +576,7 @@ func TransMml2HttpReq(omcMmlVar *MmlVar, mml *MmlCommand) (*[]byte, error) {
|
||||
log.Debugf("method: Delete requestURI: %s", requestURI)
|
||||
response, err := client.R().
|
||||
EnableTrace().
|
||||
SetHeaders(map[string]string{tokenConst.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
SetHeaders(map[string]string{constants.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
// SetHeaders(map[string]string{"accessToken": omcMmlVar.SessionToken}).
|
||||
SetHeaders(map[string]string{"User-Agent": omcMmlVar.UserAgent}).
|
||||
SetHeaders(map[string]string{"Content-Type": "application/json;charset=UTF-8"}).
|
||||
@@ -591,7 +592,7 @@ func TransMml2HttpReq(omcMmlVar *MmlVar, mml *MmlCommand) (*[]byte, error) {
|
||||
log.Debugf("method: patch requestURI: %s", requestURI)
|
||||
response, err := client.R().
|
||||
EnableTrace().
|
||||
SetHeaders(map[string]string{tokenConst.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
SetHeaders(map[string]string{constants.HEADER_KEY: omcMmlVar.Authorization}).
|
||||
// SetHeaders(map[string]string{"accessToken": omcMmlVar.SessionToken}).
|
||||
SetHeaders(map[string]string{"User-Agent": omcMmlVar.UserAgent}).
|
||||
SetHeaders(map[string]string{"Content-Type": "application/json;charset=UTF-8"}).
|
||||
|
||||
@@ -211,7 +211,6 @@ func init() {
|
||||
Register("POST", trace.UriTraceTask, trace.PostTraceTaskToNF, midware.LogOperate(collectlogs.OptionNew("Trace Task", collectlogs.BUSINESS_TYPE_INSERT)))
|
||||
Register("PUT", trace.UriTraceTask, trace.PutTraceTaskToNF, midware.LogOperate(collectlogs.OptionNew("Trace Task", collectlogs.BUSINESS_TYPE_UPDATE)))
|
||||
Register("DELETE", trace.UriTraceTask, trace.DeleteTraceTaskToNF, midware.LogOperate(collectlogs.OptionNew("Trace Task", collectlogs.BUSINESS_TYPE_DELETE)))
|
||||
Register("GET", trace.UriTraceDecMsg, trace.ParseRawMsg2Html, nil)
|
||||
|
||||
Register("POST", trace.CustomUriTraceTask, trace.PostTraceTaskToNF, nil)
|
||||
Register("PUT", trace.CustomUriTraceTask, trace.PutTraceTaskToNF, nil)
|
||||
|
||||
@@ -22,7 +22,9 @@ func TotalResp(total int64) map[string]any {
|
||||
}
|
||||
|
||||
func TotalDataResp(data any, total any) map[string]any {
|
||||
return map[string]any{"code": CODE_SUCC, "data": data, "total": total}
|
||||
return map[string]any{"code": CODE_SUCC, "data": map[string]any{
|
||||
"rows": data, "total": total,
|
||||
}, "msg": "success"}
|
||||
}
|
||||
|
||||
func SuccResp(va map[string]any) map[string]any {
|
||||
|
||||
Reference in New Issue
Block a user