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