You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
166 lines
4.0 KiB
166 lines
4.0 KiB
package handler
|
|
|
|
import (
|
|
"github.com/gin-gonic/gin"
|
|
|
|
"laic-backend/common"
|
|
"laic-backend/service"
|
|
"laic-backend/vo"
|
|
)
|
|
|
|
// GetProfile 查询个人资料
|
|
func GetProfile(c *gin.Context) {
|
|
user, busiErr := service.DefaultAccountService.GetProfile(common.GetUserId(c))
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, user)
|
|
}
|
|
|
|
// UpdateProfile 更新个人资料
|
|
func UpdateProfile(c *gin.Context) {
|
|
var req vo.ProfileUpdateReq
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
common.FailWithBindError(c, common.ErrParam, err)
|
|
return
|
|
}
|
|
user, busiErr := service.DefaultAccountService.UpdateProfile(common.GetUserId(c), &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, user)
|
|
}
|
|
|
|
// GetTrafficBalance 查询流量余额
|
|
func GetTrafficBalance(c *gin.Context) {
|
|
bal, busiErr := service.DefaultAccountService.GetTrafficBalance(common.GetUserId(c))
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, bal)
|
|
}
|
|
|
|
// GetUsagePage 流量消费流水分页
|
|
func GetUsagePage(c *gin.Context) {
|
|
var req vo.UsagePageReq
|
|
_ = c.ShouldBindQuery(&req)
|
|
if req.PageNum <= 0 {
|
|
req.PageNum = 1
|
|
}
|
|
if req.PageSize <= 0 {
|
|
req.PageSize = 10
|
|
}
|
|
page, busiErr := service.DefaultAccountService.GetUsagePage(common.GetUserId(c), &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, page)
|
|
}
|
|
|
|
// GetOrderPage 流量订单分页
|
|
func GetOrderPage(c *gin.Context) {
|
|
var req vo.OrderPageReq
|
|
_ = c.ShouldBindQuery(&req)
|
|
if req.PageNum <= 0 {
|
|
req.PageNum = 1
|
|
}
|
|
if req.PageSize <= 0 {
|
|
req.PageSize = 10
|
|
}
|
|
page, busiErr := service.DefaultAccountService.GetOrderPage(common.GetUserId(c), &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, page)
|
|
}
|
|
|
|
// CreateTrafficOrder 创建流量充值订单
|
|
func CreateTrafficOrder(c *gin.Context) {
|
|
var req vo.TrafficOrderCreateReq
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
common.FailWithBindError(c, common.ErrParam, err)
|
|
return
|
|
}
|
|
order, busiErr := service.DefaultAccountService.CreateTrafficOrder(common.GetUserId(c), &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, order)
|
|
}
|
|
|
|
// PayTrafficOrder 订单支付入账(admin)
|
|
func PayTrafficOrder(c *gin.Context) {
|
|
orderID, busiErr := parseID(c)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
order, busiErr := service.DefaultAccountService.PayTrafficOrder(orderID)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, order)
|
|
}
|
|
|
|
// ListSimCards SIM 卡列表
|
|
func ListSimCards(c *gin.Context) {
|
|
var req vo.SimCardPageReq
|
|
_ = c.ShouldBindQuery(&req)
|
|
if req.PageNum <= 0 {
|
|
req.PageNum = 1
|
|
}
|
|
if req.PageSize <= 0 {
|
|
req.PageSize = 10
|
|
}
|
|
page, busiErr := service.DefaultAccountService.ListSimCards(common.GetUserId(c), &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, page)
|
|
}
|
|
|
|
// GetSimRechargeLogPage SIM 卡充值记录分页
|
|
func GetSimRechargeLogPage(c *gin.Context) {
|
|
var req vo.SimRechargeLogPageReq
|
|
_ = c.ShouldBindQuery(&req)
|
|
if req.PageNum <= 0 {
|
|
req.PageNum = 1
|
|
}
|
|
if req.PageSize <= 0 {
|
|
req.PageSize = 10
|
|
}
|
|
page, busiErr := service.DefaultAccountService.GetSimRechargeLogPage(common.GetUserId(c), &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, page)
|
|
}
|
|
|
|
// RechargeSimCard SIM 卡充值
|
|
func RechargeSimCard(c *gin.Context) {
|
|
simCardID, busiErr := parseID(c)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
var req vo.SimRechargeReq
|
|
if err := c.ShouldBindJSON(&req); err != nil {
|
|
common.FailWithBindError(c, common.ErrParam, err)
|
|
return
|
|
}
|
|
log, busiErr := service.DefaultAccountService.RechargeSimCard(common.GetUserId(c), simCardID, &req)
|
|
if busiErr != nil {
|
|
common.FailWithBusiError(c, busiErr)
|
|
return
|
|
}
|
|
common.OKWithData(c, log)
|
|
}
|
|
|