Files
kami_gateway/internal/models/road/road_info.go
danial e88ff05a14 refactor(trace): 重命名 otel 包为 otelTrace并更新相关引用
- 将内部使用的 otel 包重命名为 otelTrace
- 更新了所有引用该包的文件中的导入路径
- 修改了部分函数和变量名称以适应新的包名
2025-02-23 21:56:29 +08:00

179 lines
4.6 KiB
Go

package road
import (
"context"
"gateway/internal/otelTrace"
"time"
"github.com/beego/beego/v2/client/orm"
"go.uber.org/zap"
)
type RoadInfo struct {
Id int
Status string
RoadName string
RoadUid string
Remark string
ProductName string
ProductUid string
PayType string
BasicFee float64
SettleFee float64
TotalLimit float64
TodayLimit float64
SingleMinLimit float64
SingleMaxLimit float64
StarHour int
EndHour int
Params string
TodayIncome float64
TotalIncome float64
TodayProfit float64
TotalProfit float64
Balance float64
RequestAll int
RequestSuccess int
TransactionType string
TodayRequestAll int `json:"TodayRequestAll"`
TodayRequestSuccess int
ProductCode string
CreateTime time.Time
UpdateTime time.Time
PaymentHtml string
}
const ROAD_INFO = "road_info"
func GetRoadInfoByRoadUid(ctx context.Context, roadUid string) RoadInfo {
o := orm.NewOrm()
var roadInfo RoadInfo
_, err := o.QueryTable(ROAD_INFO).Exclude("status", "delete").Filter("road_uid", roadUid).Limit(1).All(&roadInfo)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get road info by road uid fail: ", zap.Error(err))
}
return roadInfo
}
func GetRoadInfoByProductCode(ctx context.Context, productCode string) RoadInfo {
o := orm.NewOrm()
var roadInfo RoadInfo
err := o.QueryTable(ROAD_INFO).Exclude("status", "delete").
Filter("product_code", productCode).
One(&roadInfo)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get road info by road uid fail: ", zap.Error(err))
}
return roadInfo
}
func GetRoadInfosByRoadUids(ctx context.Context, roadUids []string) []RoadInfo {
o := orm.NewOrm()
var roadInfoList []RoadInfo
_, err := o.QueryTable(ROAD_INFO).Filter("road_uid__in", roadUids).OrderBy("update_time").All(&roadInfoList)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get roadInfos by roadUids fail: ", zap.Error(err))
}
return roadInfoList
}
func GetRoadInfoByName(ctx context.Context, roadName string) RoadInfo {
o := orm.NewOrm()
var roadInfo RoadInfo
_, err := o.QueryTable(ROAD_INFO).Exclude("status", "delete").Filter("road_name", roadName).Limit(1).All(&roadInfo)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get road info by name fail: ", zap.Error(err))
}
return roadInfo
}
func GetRoadLenByMap(ctx context.Context, params map[string]string) int {
o := orm.NewOrm()
qs := o.QueryTable(ROAD_INFO)
for k, v := range params {
if len(v) > 0 {
qs = qs.Filter(k, v)
}
}
cnt, err := qs.Exclude("status", "delete").Limit(-1).Count()
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get road len by map fail: ", zap.Error(err))
}
return int(cnt)
}
func GetRoadInfoByMap(ctx context.Context, params map[string]string, displayCount, offset int) []RoadInfo {
o := orm.NewOrm()
var roadInfoList []RoadInfo
qs := o.QueryTable(ROAD_INFO)
for k, v := range params {
if len(v) > 0 {
qs = qs.Filter(k, v)
}
}
_, err := qs.Exclude("status", "delete").Limit(displayCount, offset).OrderBy("-update_time").All(&roadInfoList)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get road info by map fail: ", zap.Error(err))
}
return roadInfoList
}
func GetAllRoad(ctx context.Context, params map[string]string) []RoadInfo {
o := orm.NewOrm()
var roadInfoList []RoadInfo
qs := o.QueryTable(ROAD_INFO)
for k, v := range params {
if len(v) > 0 {
qs = qs.Filter(k, v)
}
}
_, err := qs.Limit(-1).All(&roadInfoList)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("get all road fail: ", zap.Error(err))
}
return roadInfoList
}
func InsertRoadInfo(ctx context.Context, roadInfo RoadInfo) bool {
o := orm.NewOrm()
_, err := o.Insert(&roadInfo)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("insert road info fail: ", zap.Error(err))
return false
}
return true
}
func RoadInfoExistByRoadUid(roadUid string) bool {
o := orm.NewOrm()
exist := o.QueryTable(ROAD_INFO).Filter("status", "active").Filter("road_uid", roadUid).Exist()
return exist
}
func UpdateRoadInfo(ctx context.Context, roadInfo RoadInfo) bool {
o := orm.NewOrm()
_, err := o.Update(&roadInfo)
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("update road info fail: ", zap.Error(err))
return false
}
return true
}
func DeleteRoadByRoadUid(ctx context.Context, roadUid string) bool {
o := orm.NewOrm()
_, err := o.QueryTable(ROAD_INFO).Filter("road_uid", roadUid).Delete()
if err != nil {
otelTrace.Logger.WithContext(ctx).Error("delete road by road uid fail: ", zap.Error(err))
return false
}
return true
}