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) }