46 lines
1.2 KiB
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)
|
|
}
|