1、用户余额分页和排序修改

This commit is contained in:
2025-07-31 09:34:53 +08:00
parent 7f9101fcac
commit 8ee80932c0
7 changed files with 68 additions and 24 deletions

View File

@ -4,6 +4,7 @@ import (
"fmt"
"github.com/gin-gonic/gin"
"github.com/gin-gonic/gin/binding"
"github.com/go-admin-team/go-admin-core/sdk/api"
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
@ -32,7 +33,7 @@ func (e MemberBalance) GetPage(c *gin.Context) {
s := service.MemberBalance{}
err := e.MakeContext(c).
MakeOrm().
Bind(&req).
Bind(&req, binding.Form, binding.Query).
MakeService(&s.Service).
Errors
if err != nil {

View File

@ -7,6 +7,7 @@ import (
"github.com/go-admin-team/go-admin-core/sdk/api"
"github.com/go-admin-team/go-admin-core/sdk/pkg/jwtauth/user"
_ "github.com/go-admin-team/go-admin-core/sdk/pkg/response"
"github.com/shopspring/decimal"
"go-admin/app/admin/models"
"go-admin/app/admin/service"
@ -197,10 +198,12 @@ func (e SmsPhone) Delete(c *gin.Context) {
func (e SmsPhone) GetNumber(c *gin.Context) {
req := dto.GetNumberReq{}
s := service.SmsPhone{}
servicesService := service.SmsServices{}
err := e.MakeContext(c).
MakeOrm().
Bind(&req).
MakeService(&s.Service).
MakeService(&servicesService.Service).
Errors
if err != nil {
e.Logger.Error(err)
@ -214,11 +217,26 @@ func (e SmsPhone) GetNumber(c *gin.Context) {
return
}
var balance decimal.Decimal
code := statuscode.Success
userId := user.GetUserId(c)
balance, code := s.GetNumber(&req, userId)
smsService, err := servicesService.GetByCode(req.ServiceCode)
if err != nil {
code = statuscode.SmsServiceUnavailable
} else if smsService.Status == 2 {
code = statuscode.SmsServiceUnavailable
} else {
balance, code = s.GetNumber(&req, userId)
}
if code != statuscode.Success {
e.Error(code, nil, statuscode.GetMsg(code, "zh"))
if code == statuscode.SmsServiceUnavailable {
e.Error(code, nil, statuscode.GetMsg(code, "zh", smsService.Name))
} else {
e.Error(code, nil, statuscode.GetMsg(code, "zh"))
}
return
}

View File

@ -10,6 +10,7 @@ type SmsServices struct {
Name string `json:"name" gorm:"type:varchar(255);comment:服务名称"`
Code string `json:"code" gorm:"type:varchar(50);comment:编码"`
ExpirationMinutes int `json:"expirationMinutes" gorm:"type:int;comment:过期时间(分钟)"`
Status int `json:"status" gorm:"type:tinyint;comment:状态 1-启用 2-禁用"`
models.ModelTime
models.ControlBy
}

View File

@ -85,8 +85,9 @@ func (s *SmsServicesDeleteReq) GetId() interface{} {
}
type SmsServicesGetListResp struct {
Name string `json:"name" comment:"服务名称"`
Code string `json:"code" comment:"编码"`
Name string `json:"name" comment:"服务名称"`
Code string `json:"code" comment:"编码"`
Status int `json:"status" comment:"状态"`
}
type SmsGetPriceReq struct {

View File

@ -146,6 +146,10 @@ func (e *SmsPhone) GetNumber(req *dto.GetNumberReq, userId int) (decimal.Decimal
configReq := dto.SysConfigByKeyReq{}
configService := SysConfig{Service: e.Service}
if strings.ToLower(req.ServiceCode) != "wa" {
return decimal.Zero, statuscode.SmsServiceUnavailable
}
if req.Type == 0 {
configReq.ConfigKey = "number_fee_short_term"
} else {

View File

@ -53,8 +53,9 @@ func (e SmsServices) GetList(resp *[]dto.SmsServicesGetListResp) error {
}
for _, item := range data {
respItem := dto.SmsServicesGetListResp{
Name: item.Name,
Code: item.Code,
Name: item.Name,
Code: item.Code,
Status: item.Status,
}
*resp = append(*resp, respItem)
}