wz-golang-server/server/modules/api/controller/wechat_controller.go

46 lines
1.2 KiB
Go

// Package controller 控制器层
package controller
import (
"server/common"
apiDto "server/modules/api/dto"
"server/modules/api/service"
"github.com/gin-gonic/gin"
)
type WechatMiniProgramController struct {
service *service.WechatMiniProgramService
}
func NewWechatMiniProgramController() *WechatMiniProgramController {
return &WechatMiniProgramController{service: service.NewWechatMiniProgramService()}
}
func (ctrl *WechatMiniProgramController) RegisterRoutes(r *gin.RouterGroup) {
group := r.Group("/open")
group.POST("/wechat/mini/login", ctrl.MiniLogin)
}
// MiniLogin 微信小程序登录
// @Summary 微信小程序登录
// @Tags 对外接口
// @Accept json
// @Produce json
// @Param request body dto.WechatMiniLoginRequest true "微信小程序登录请求"
// @Success 200 {object} common.Response
// @Router /open/wechat/mini/login [post]
func (ctrl *WechatMiniProgramController) MiniLogin(c *gin.Context) {
var req apiDto.WechatMiniLoginRequest
if err := c.ShouldBindJSON(&req); err != nil {
common.Error(c, 400, "参数错误")
return
}
resp, err := ctrl.service.Login(&req)
if err != nil {
common.Error(c, 400, err.Error())
return
}
common.Success(c, resp)
}