package user import ( "git.echinacities.com/mogfee/protoc-gen-kit/response" "github.com/gin-gonic/gin" ) func NewGin(app *gin.Engine, srv UserServer) { app.GET("/api/v1/user/list", httpList(srv)) app.POST("/api/v1/user/login", httpLogin(srv)) app.DELETE("/api/v1/user/delete", httpDelete(srv)) } func httpList(srv UserServer) func(c *gin.Context) { return func(c *gin.Context) { post := LoginRequest{} resp := response.New(c) if err := resp.BindQuery(&post); err != nil { resp.Error(err) return } result, err := srv.List(c, &post) if err != nil { resp.Error(err) return } c.JSON(200, result) } } func httpLogin(srv UserServer) func(c *gin.Context) { return func(c *gin.Context) { post := LoginRequest{} resp := response.New(c) if err := resp.BindJSON(&post); err != nil { resp.Error(err) return } result, err := srv.Login(c, &post) if err != nil { resp.Error(err) return } c.JSON(200, result) } } func httpDelete(srv UserServer) func(c *gin.Context) { return func(c *gin.Context) { post := LoginRequest{} resp := response.New(c) if err := resp.BindJSON(&post); err != nil { resp.Error(err) return } result, err := srv.Delete(c, &post) if err != nil { resp.Error(err) return } c.JSON(200, result) } }