diff --git a/api/internal/handler/user/check_login_handler.go b/api/internal/handler/user/check_login_handler.go new file mode 100644 index 0000000..1c94144 --- /dev/null +++ b/api/internal/handler/user/check_login_handler.go @@ -0,0 +1,45 @@ +package user + +import ( + "net/http" + + "github.com/zeromicro/go-zero/rest/httpx" + + "mingyang-admin-app-api/internal/logic/user" + "mingyang-admin-app-api/internal/svc" + "mingyang-admin-app-api/internal/types" +) + +// swagger:route post /user/checkLogin user CheckLogin +// +// CheckLogin | 检测登录状态 +// +// CheckLogin | 检测登录状态 +// +// Parameters: +// + name: body +// require: true +// in: body +// type: IDReq +// +// Responses: +// 200: BaseDataInfo + +func CheckLoginHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + var req types.IDReq + if err := httpx.Parse(r, &req, true); err != nil { + httpx.ErrorCtx(r.Context(), w, err) + return + } + + l := user.NewCheckLoginLogic(r.Context(), svcCtx) + resp, err := l.CheckLogin(&req) + if err != nil { + err = svcCtx.Trans.TransError(r.Context(), err) + httpx.ErrorCtx(r.Context(), w, err) + } else { + httpx.OkJsonCtx(r.Context(), w, resp) + } + } +} diff --git a/api/internal/handler/user/get_user_info_by_token_handler.go b/api/internal/handler/user/get_user_info_by_token_handler.go new file mode 100644 index 0000000..ebc8495 --- /dev/null +++ b/api/internal/handler/user/get_user_info_by_token_handler.go @@ -0,0 +1,32 @@ +package user + +import ( + "net/http" + + "github.com/zeromicro/go-zero/rest/httpx" + + "mingyang-admin-app-api/internal/logic/user" + "mingyang-admin-app-api/internal/svc" +) + +// swagger:route post /user/info user GetUserInfoByToken +// +//@ Get UserInfo detail By Token | 获取用户信息 +// +//@ Get UserInfo detail By Token | 获取用户信息 +// +// Responses: +// 200: UserInfo + +func GetUserInfoByTokenHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + l := user.NewGetUserInfoByTokenLogic(r.Context(), svcCtx) + resp, err := l.GetUserInfoByToken() + if err != nil { + err = svcCtx.Trans.TransError(r.Context(), err) + httpx.ErrorCtx(r.Context(), w, err) + } else { + httpx.OkJsonCtx(r.Context(), w, resp) + } + } +} diff --git a/api/internal/handler/user/logout_handler.go b/api/internal/handler/user/logout_handler.go new file mode 100644 index 0000000..a0966dd --- /dev/null +++ b/api/internal/handler/user/logout_handler.go @@ -0,0 +1,45 @@ +package user + +import ( + "net/http" + + "github.com/zeromicro/go-zero/rest/httpx" + + "mingyang-admin-app-api/internal/logic/user" + "mingyang-admin-app-api/internal/svc" + "mingyang-admin-app-api/internal/types" +) + +// swagger:route post /logout user Logout +// +//登出 +// +//登出 +// +// Parameters: +// + name: body +// require: true +// in: body +// type: IDReq +// +// Responses: +// 200: BaseDataInfo + +func LogoutHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + var req types.IDReq + if err := httpx.Parse(r, &req, true); err != nil { + httpx.ErrorCtx(r.Context(), w, err) + return + } + + l := user.NewLogoutLogic(r.Context(), svcCtx) + resp, err := l.Logout(&req) + if err != nil { + err = svcCtx.Trans.TransError(r.Context(), err) + httpx.ErrorCtx(r.Context(), w, err) + } else { + httpx.OkJsonCtx(r.Context(), w, resp) + } + } +} diff --git a/api/internal/handler/user/oauth_authorize_handler.go b/api/internal/handler/user/oauth_authorize_handler.go new file mode 100644 index 0000000..d46f0d1 --- /dev/null +++ b/api/internal/handler/user/oauth_authorize_handler.go @@ -0,0 +1,45 @@ +package user + +import ( + "net/http" + + "github.com/zeromicro/go-zero/rest/httpx" + + "mingyang-admin-app-api/internal/logic/user" + "mingyang-admin-app-api/internal/svc" + "mingyang-admin-app-api/internal/types" +) + +// swagger:route post /user/oauthAuthorize user OauthAuthorize +// +//OauthAuthorize | 第三方登录接口 +// +//OauthAuthorize | 第三方登录接口 +// +// Parameters: +// + name: body +// require: true +// in: body +// type: OauthAuthorizeReq +// +// Responses: +// 200: OauthAuthorizeResp + +func OauthAuthorizeHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + var req types.OauthAuthorizeReq + if err := httpx.Parse(r, &req, true); err != nil { + httpx.ErrorCtx(r.Context(), w, err) + return + } + + l := user.NewOauthAuthorizeLogic(r.Context(), svcCtx) + resp, err := l.OauthAuthorize(&req) + if err != nil { + err = svcCtx.Trans.TransError(r.Context(), err) + httpx.ErrorCtx(r.Context(), w, err) + } else { + httpx.OkJsonCtx(r.Context(), w, resp) + } + } +} diff --git a/api/internal/handler/user/pass_word_reset_handler.go b/api/internal/handler/user/pass_word_reset_handler.go new file mode 100644 index 0000000..368b22f --- /dev/null +++ b/api/internal/handler/user/pass_word_reset_handler.go @@ -0,0 +1,45 @@ +package user + +import ( + "net/http" + + "github.com/zeromicro/go-zero/rest/httpx" + + "mingyang-admin-app-api/internal/logic/user" + "mingyang-admin-app-api/internal/svc" + "mingyang-admin-app-api/internal/types" +) + +// swagger:route post /user/passWordReset user PassWordReset +// +// PassWordReset | 修改密码 +// +// PassWordReset | 修改密码 +// +// Parameters: +// + name: body +// require: true +// in: body +// type: PassWordResetReq +// +// Responses: +// 200: BaseDataInfo + +func PassWordResetHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + var req types.PassWordResetReq + if err := httpx.Parse(r, &req, true); err != nil { + httpx.ErrorCtx(r.Context(), w, err) + return + } + + l := user.NewPassWordResetLogic(r.Context(), svcCtx) + resp, err := l.PassWordReset(&req) + if err != nil { + err = svcCtx.Trans.TransError(r.Context(), err) + httpx.ErrorCtx(r.Context(), w, err) + } else { + httpx.OkJsonCtx(r.Context(), w, resp) + } + } +} diff --git a/api/internal/handler/user/update_user_info_handler.go b/api/internal/handler/user/update_user_info_handler.go new file mode 100644 index 0000000..b0fe2fa --- /dev/null +++ b/api/internal/handler/user/update_user_info_handler.go @@ -0,0 +1,45 @@ +package user + +import ( + "net/http" + + "github.com/zeromicro/go-zero/rest/httpx" + + "mingyang-admin-app-api/internal/logic/user" + "mingyang-admin-app-api/internal/svc" + "mingyang-admin-app-api/internal/types" +) + +// swagger:route post /user/update user UpdateUserInfo +// +//Update userInfo | 更新用户信息 +// +//Update userInfo | 更新用户信息 +// +// Parameters: +// + name: body +// require: true +// in: body +// type: UserInfo +// +// Responses: +// 200: BaseDataInfo + +func UpdateUserInfoHandler(svcCtx *svc.ServiceContext) http.HandlerFunc { + return func(w http.ResponseWriter, r *http.Request) { + var req types.UserInfo + if err := httpx.Parse(r, &req, true); err != nil { + httpx.ErrorCtx(r.Context(), w, err) + return + } + + l := user.NewUpdateUserInfoLogic(r.Context(), svcCtx) + resp, err := l.UpdateUserInfo(&req) + if err != nil { + err = svcCtx.Trans.TransError(r.Context(), err) + httpx.ErrorCtx(r.Context(), w, err) + } else { + httpx.OkJsonCtx(r.Context(), w, resp) + } + } +}