diff --git a/apps/develop/router/gen.go b/apps/develop/router/gen.go index 32b81e4..9d10a19 100644 --- a/apps/develop/router/gen.go +++ b/apps/develop/router/gen.go @@ -1,25 +1,50 @@ package router import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" "github.com/emicklei/go-restful/v3" + "pandax/apps/develop/api" + "pandax/apps/develop/services" ) func InitGenRouter(container *restful.Container) { + // 登录日志 - /* genApi := &api.GenApi{ - GenTableApp: services.DevGenTableModelDao, - } - gen := router.Group("gen") + s := &api.GenApi{ + GenTableApp: services.DevGenTableModelDao, + } - gen.GET("preview/:tableId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取生成代码视图").Handle(genApi.Preview) - }) + ws := new(restful.WebService) + ws.Path("/develop/code/gen").Produces(restful.MIME_JSON) + tags := []string{"codegen"} - gen.GET("code/:tableId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("生成代码").Handle(genApi.GenCode) - }) + ws.Route(ws.GET("/preview/{tableId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取生成代码视图").Handle(s.Preview) + }). + Doc("获取生成代码视图"). + Param(ws.PathParameter("tableId", "Id").DataType("int").DefaultValue("1")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", map[string]any{}). + Returns(404, "Not Found", nil)) - gen.GET("configure/:tableId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("生成配置").Handle(genApi.GenConfigure) - })*/ + ws.Route(ws.GET("/code/{tableId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("生成代码").Handle(s.GenCode) + }). + Doc("生成代码"). + Param(ws.PathParameter("tableId", "Id").DataType("int").DefaultValue("1")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", map[string]any{}). + Returns(404, "Not Found", nil)) + + ws.Route(ws.GET("/configure/{tableId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("生成配置").Handle(s.GenConfigure) + }). + Doc("生成配置"). + Param(ws.PathParameter("tableId", "Id").DataType("int").DefaultValue("1")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", map[string]any{}). + Returns(404, "Not Found", nil)) + + container.Add(ws) } diff --git a/apps/develop/router/table.go b/apps/develop/router/table.go index acb8d9e..577bfcc 100644 --- a/apps/develop/router/table.go +++ b/apps/develop/router/table.go @@ -1,45 +1,78 @@ package router import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" "github.com/emicklei/go-restful/v3" + "pandax/apps/develop/api" + "pandax/apps/develop/services" ) func InitGenTableRouter(container *restful.Container) { // 登录日志 - /*genApi := &api.GenTableApi{ + s := &api.GenTableApi{ GenTableApp: services.DevGenTableModelDao, } - gen := router.Group("table") - gen.GET("/db/list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取数据库列表").Handle(genApi.GetDBTableList) - }) + ws := new(restful.WebService) + ws.Path("/develop/code/table").Produces(restful.MIME_JSON) + tags := []string{"codetable"} - gen.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取表列表").Handle(genApi.GetTablePage) - }) + ws.Route(ws.GET("/db/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取数据库列表").Handle(s.GetDBTableList) + }). + Doc("获取数据库列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", []map[string]any{})) - gen.GET("/info/tableName", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取表信息By tableName").Handle(genApi.GetTableInfoByName) - }) + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取表列表").Handle(s.GetTablePage) + }). + Doc("获取表列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", []any{})) - gen.GET("info/:tableId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取表信息").Handle(genApi.GetTableInfo) - }) + ws.Route(ws.GET("/info/tableName").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取表信息By tableName").Handle(s.GetTableInfoByName) + }). + Doc("获取表信息By tableName"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", []any{})) - gen.GET("tableTree", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取表树").Handle(genApi.GetTableTree) - }) + ws.Route(ws.GET("/info/{tableId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取表信息").Handle(s.GetTableInfo) + }). + Doc("获取表信息"). + Param(ws.PathParameter("tenantId", "租户Id").DataType("int").DefaultValue("1")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", map[string]any{}). + Returns(404, "Not Found", nil)) - gen.POST("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("新增表").Handle(genApi.Insert) - }) + ws.Route(ws.GET("/tableTree").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取表树").Handle(s.GetTableTree) + }). + Doc("获取表树"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Returns(200, "OK", []any{})) - gen.PUT("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改表").Handle(genApi.Update) - }) + ws.Route(ws.POST("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("新增表").Handle(s.Insert) + }). + Doc("新增表"). + Metadata(restfulspec.KeyOpenAPITags, tags)) // from the request - gen.DELETE(":tableId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除表").Handle(genApi.Delete) - })*/ + ws.Route(ws.PUT("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改表").Handle(s.Update) + }). + Doc("修改表"). + Metadata(restfulspec.KeyOpenAPITags, tags)) // from the request + + ws.Route(ws.DELETE("/{tableId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除表").Handle(s.Delete) + }). + Doc("删除表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("tableId", "多id 1,2,3").DataType("string"))) + + container.Add(ws) } diff --git a/apps/job/router/job.go b/apps/job/router/job.go index 9a7e1a1..9e4d5dc 100644 --- a/apps/job/router/job.go +++ b/apps/job/router/job.go @@ -1,45 +1,82 @@ package router import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" "github.com/emicklei/go-restful/v3" + "pandax/apps/job/api" + "pandax/apps/job/entity" + "pandax/apps/job/services" ) func InitJobRouter(container *restful.Container) { // 登录日志 - /*jobApi := &api.JobApi{ + s := &api.JobApi{ JobApp: services.JobModelDao, } - job := router.Group("job") - job.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取Job列表").Handle(jobApi.GetJobList) - }) + ws := new(restful.WebService) + ws.Path("/job").Produces(restful.MIME_JSON) + tags := []string{"job"} - job.GET(":jobId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取Job信息").Handle(jobApi.GetJob) - }) + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取Job列表").Handle(s.GetJobList) + }). + Doc("获取Job列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes([]entity.SysJob{}). + Returns(200, "OK", []entity.SysJob{})) - job.POST("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("添加Job信息").Handle(jobApi.CreateJob) - }) + ws.Route(ws.GET("/{jobId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取Job列表").Handle(s.GetJob) + }). + Doc("获取Job列表"). + Param(ws.PathParameter("jobId", "Id").DataType("int").DefaultValue("1")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes(entity.SysJob{}). // on the response + Returns(200, "OK", entity.SysJob{}). + Returns(404, "Not Found", nil)) - job.PUT("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改Job信息").Handle(jobApi.UpdateJob) - }) + ws.Route(ws.POST("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("添加Job信息").Handle(s.CreateJob) + }). + Doc("添加Job信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.SysJob{})) // from the request - job.DELETE(":jobId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除Job信息").Handle(jobApi.DeleteJob) - }) + ws.Route(ws.PUT("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改Job信息").Handle(s.UpdateJob) + }). + Doc("修改Job信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.SysJob{})) // from the request - job.GET("/stop/:jobId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("停止一个job").Handle(jobApi.StopJobForService) - }) + ws.Route(ws.DELETE("/{jobId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除Job信息").Handle(s.DeleteJob) + }). + Doc("删除Job信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("jobId", "多id 1,2,3").DataType("string"))) - job.GET("/start/:jobId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("开启一个job").Handle(jobApi.StartJobForService) - }) + ws.Route(ws.GET("/stop/{jobId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("停止一个job").Handle(s.StopJobForService) + }). + Doc("停止一个job"). + Param(ws.PathParameter("jobId", "Id").DataType("int")). + Metadata(restfulspec.KeyOpenAPITags, tags)) - job.PUT("/changeStatus", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改状态").Handle(jobApi.UpdateStatusJob) - })*/ + ws.Route(ws.GET("/start/{jobId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("开启一个job").Handle(s.StartJobForService) + }). + Doc("开启一个job"). + Param(ws.PathParameter("jobId", "Id").DataType("int")). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + ws.Route(ws.GET("/changeStatus").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改状态").Handle(s.UpdateStatusJob) + }). + Doc("修改状态"). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + container.Add(ws) } diff --git a/apps/log/router/job_log.go b/apps/log/router/job_log.go new file mode 100644 index 0000000..49c1117 --- /dev/null +++ b/apps/log/router/job_log.go @@ -0,0 +1,44 @@ +package router + +import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" + "github.com/emicklei/go-restful/v3" + "pandax/apps/log/api" + "pandax/apps/log/entity" + "pandax/apps/log/services" +) + +func InitJobLogRouter(container *restful.Container) { + // Job日志 + s := &api.LogJobApi{ + LogJobApp: services.LogJobModelDao, + } + + ws := new(restful.WebService) + ws.Path("/log/logJob").Produces(restful.MIME_JSON) + tags := []string{"logJob"} + + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取操作日志列表").Handle(s.GetJobLogList) + }). + Doc("获取操作日志列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes([]entity.LogJob{}). + Returns(200, "OK", []entity.LogJob{})) + + ws.Route(ws.DELETE("/{logId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除操作日志信息").Handle(s.DeleteJobLog) + }). + Doc("删除操作日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("logId", "多id 1,2,3").DataType("string"))) + + ws.Route(ws.DELETE("/all").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("清空操作日志信息").Handle(s.DeleteAll) + }). + Doc("清空操作日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + container.Add(ws) +} diff --git a/apps/log/router/log.go b/apps/log/router/log.go deleted file mode 100644 index b970079..0000000 --- a/apps/log/router/log.go +++ /dev/null @@ -1,73 +0,0 @@ -package router - -import ( - "github.com/emicklei/go-restful/v3" -) - -func InitLogRouter(container *restful.Container) { - /*// 登录日志 - login := &api.LogLoginApi{ - LogLoginApp: services.LogLoginModelDao, - } - logLogin := router.Group("logLogin") - - logLogin.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取登录日志列表").Handle(login.GetLoginLogList) - }) - - logLogin.GET(":infoId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取登录日志信息").Handle(login.GetLoginLog) - }) - - logLogin.PUT("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改登录日志信息").Handle(login.UpdateLoginLog) - }) - - logLogin.DELETE("all", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("清空登录日志信息").Handle(login.DeleteAll) - }) - - logLogin.DELETE(":infoId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除登录日志信息").Handle(login.DeleteLoginLog) - }) - - // 操作日志 - oper := &api.LogOperApi{ - LogOperApp: services.LogOperModelDao, - } - logOper := router.Group("logOper") - - logOper.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取操作日志列表").Handle(oper.GetOperLogList) - }) - - logOper.GET(":operId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取操作日志信息").Handle(oper.GetOperLog) - }) - - logOper.DELETE("all", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("清空操作日志信息").Handle(oper.DeleteAll) - }) - - logOper.DELETE(":operId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除操作日志信息").Handle(oper.DeleteOperLog) - }) - - // Job日志 - job := &api.LogJobApi{ - LogJobApp: services.LogJobModelDao, - } - logJob := router.Group("logJob") - - logJob.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取操作日志列表").Handle(job.GetJobLogList) - }) - - logJob.DELETE("all", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("清空操作日志信息").Handle(job.DeleteAll) - }) - - logJob.DELETE(":logId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除操作日志信息").Handle(job.DeleteJobLog) - })*/ -} diff --git a/apps/log/router/login_log.go b/apps/log/router/login_log.go new file mode 100644 index 0000000..b07fb8d --- /dev/null +++ b/apps/log/router/login_log.go @@ -0,0 +1,62 @@ +package router + +import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" + "github.com/emicklei/go-restful/v3" + "pandax/apps/log/api" + "pandax/apps/log/entity" + "pandax/apps/log/services" +) + +func InitLoginLogRouter(container *restful.Container) { + // 登录日志 + s := &api.LogLoginApi{ + LogLoginApp: services.LogLoginModelDao, + } + + ws := new(restful.WebService) + ws.Path("/log/logLogin").Produces(restful.MIME_JSON) + tags := []string{"logLogin"} + + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取登录日志列表").Handle(s.GetLoginLogList) + }). + Doc("获取登录日志列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes([]entity.LogLogin{}). + Returns(200, "OK", []entity.LogLogin{})) + + ws.Route(ws.GET("/{infoId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取登录日志信息").Handle(s.GetLoginLog) + }). + Doc("获取登录日志信息"). + Param(ws.PathParameter("infoId", "Id").DataType("int")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes(entity.LogLogin{}). // on the response + Returns(200, "OK", entity.LogLogin{}). + Returns(404, "Not Found", nil)) + + ws.Route(ws.PUT("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改登录日志信息").Handle(s.UpdateLoginLog) + }). + Doc("修改登录日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.LogLogin{})) + + ws.Route(ws.DELETE("/{infoId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除登录日志信息").Handle(s.DeleteLoginLog) + }). + Doc("删除登录日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("infoId", "多id 1,2,3").DataType("string"))) + + ws.Route(ws.DELETE("/all").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("清空登录日志信息").Handle(s.DeleteAll) + }). + Doc("清空登录日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + container.Add(ws) + +} diff --git a/apps/log/router/oper_log.go b/apps/log/router/oper_log.go new file mode 100644 index 0000000..acd34d1 --- /dev/null +++ b/apps/log/router/oper_log.go @@ -0,0 +1,54 @@ +package router + +import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" + "github.com/emicklei/go-restful/v3" + "pandax/apps/log/api" + "pandax/apps/log/entity" + "pandax/apps/log/services" +) + +func InitOperLogRouter(container *restful.Container) { + // 操作日志 + s := &api.LogOperApi{ + LogOperApp: services.LogOperModelDao, + } + + ws := new(restful.WebService) + ws.Path("/log/logOper").Produces(restful.MIME_JSON) + tags := []string{"logOper"} + + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取操作日志列表").Handle(s.GetOperLogList) + }). + Doc("获取操作日志列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes([]entity.LogOper{}). + Returns(200, "OK", []entity.LogOper{})) + + ws.Route(ws.GET("/{operId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取操作日志信息").Handle(s.GetOperLog) + }). + Doc("获取操作日志信息"). + Param(ws.PathParameter("operId", "Id").DataType("int")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes(entity.LogOper{}). // on the response + Returns(200, "OK", entity.LogOper{}). + Returns(404, "Not Found", nil)) + + ws.Route(ws.DELETE("/{operId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除操作日志信息").Handle(s.DeleteOperLog) + }). + Doc("删除操作日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("operId", "多id 1,2,3").DataType("string"))) + + ws.Route(ws.DELETE("/all").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("清空操作日志信息").Handle(s.DeleteAll) + }). + Doc("清空操作日志信息"). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + container.Add(ws) +} diff --git a/apps/resource/router/email.go b/apps/resource/router/email.go index 222df56..5b4e301 100644 --- a/apps/resource/router/email.go +++ b/apps/resource/router/email.go @@ -1,7 +1,12 @@ package router import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" "github.com/emicklei/go-restful/v3" + "pandax/apps/resource/api" + "pandax/apps/resource/entity" + "pandax/apps/resource/services" ) /** @@ -11,36 +16,63 @@ import ( **/ func InitResEmailsRouter(container *restful.Container) { - /*s := &api.ResEmailsApi{ + s := &api.ResEmailsApi{ ResEmailsApp: services.ResEmailsModelDao, } - routerGroup := router.Group("email") + ws := new(restful.WebService) + ws.Path("/resource/email").Produces(restful.MIME_JSON) + tags := []string{"email"} - routerGroup.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取ResEmails分页列表").Handle(s.GetResEmailsList) - }) + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取ResEmails分页列表").Handle(s.GetResEmailsList) + }). + Doc("获取ResEmails分页列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes([]entity.ResEmail{}). + Returns(200, "OK", []entity.ResEmail{})) - routerGroup.GET(":mailId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取ResEmails信息").Handle(s.GetResEmails) - }) + ws.Route(ws.GET("/{mailId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取ResEmails信息").Handle(s.GetResEmails) + }). + Doc("获取ResEmails信息"). + Param(ws.PathParameter("mailId", "Id").DataType("int")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes(entity.ResEmail{}). // on the response + Returns(200, "OK", entity.ResEmail{}). + Returns(404, "Not Found", nil)) - routerGroup.POST("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("添加ResEmails信息").Handle(s.InsertResEmails) - }) + ws.Route(ws.POST("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("添加ResEmails信息").Handle(s.InsertResEmails) + }). + Doc("添加ResEmails信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.ResEmail{})) // from the request - routerGroup.PUT("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改ResEmails信息").Handle(s.UpdateResEmails) - }) + ws.Route(ws.PUT("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改ResEmails信息").Handle(s.UpdateResEmails) + }). + Doc("修改ResEmails信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.ResEmail{})) // from the request - routerGroup.DELETE(":mailId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除ResEmails信息").Handle(s.DeleteResEmails) - }) + ws.Route(ws.DELETE("/{mailId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除ResEmails信息").Handle(s.DeleteResEmails) + }). + Doc("删除ResEmails信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("mailId", "多id 1,2,3").DataType("string"))) - routerGroup.PUT("changeStatus", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改状态").Handle(s.UpdateMailStatus) - }) + ws.Route(ws.POST("/debugMail").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("调试").Handle(s.DebugMail) + }). + Doc("调试"). + Metadata(restfulspec.KeyOpenAPITags, tags)) - routerGroup.POST("debugMail", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改状态").Handle(s.DebugMail) - })*/ + ws.Route(ws.PUT("/changeStatus").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改状态").Handle(s.UpdateMailStatus) + }). + Doc("修改状态"). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + container.Add(ws) } diff --git a/apps/resource/router/oss.go b/apps/resource/router/oss.go index 6a6857d..5071633 100644 --- a/apps/resource/router/oss.go +++ b/apps/resource/router/oss.go @@ -1,7 +1,12 @@ package router import ( + "github.com/XM-GO/PandaKit/restfulx" + restfulspec "github.com/emicklei/go-restful-openapi/v2" "github.com/emicklei/go-restful/v3" + "pandax/apps/resource/api" + "pandax/apps/resource/entity" + "pandax/apps/resource/services" ) /** @@ -11,36 +16,63 @@ import ( **/ func InitResOssRouter(container *restful.Container) { - /*s := &api.ResOssesApi{ + s := &api.ResOssesApi{ ResOssesApp: services.ResOssesModelDao, } - routerGroup := router.Group("oss") + ws := new(restful.WebService) + ws.Path("/resource/oss").Produces(restful.MIME_JSON) + tags := []string{"oss"} - routerGroup.GET("list", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取ResOsses分页列表").Handle(s.GetResOssesList) - }) + ws.Route(ws.GET("/list").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取ResOsses分页列表").Handle(s.GetResOssesList) + }). + Doc("获取ResOsses分页列表"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes([]entity.ResOss{}). + Returns(200, "OK", []entity.ResOss{})) - routerGroup.GET(":ossId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("获取ResOsses信息").Handle(s.GetResOsses) - }) + ws.Route(ws.GET("/{ossId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("获取ResOsses信息").Handle(s.GetResOsses) + }). + Doc("获取ResOsses信息"). + Param(ws.PathParameter("ossId", "Id").DataType("int")). + Metadata(restfulspec.KeyOpenAPITags, tags). + Writes(entity.ResOss{}). // on the response + Returns(200, "OK", entity.ResOss{}). + Returns(404, "Not Found", nil)) - routerGroup.POST("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("添加ResOsses信息").Handle(s.InsertResOsses) - }) + ws.Route(ws.POST("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("添加ResOsses信息").Handle(s.InsertResOsses) + }). + Doc("添加ResOsses信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.ResOss{})) // from the request - routerGroup.PUT("", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改ResOsses信息").Handle(s.UpdateResOsses) - }) + ws.Route(ws.PUT("").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改ResOsses信息").Handle(s.UpdateResOsses) + }). + Doc("修改ResOsses信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Reads(entity.ResOss{})) // from the request - routerGroup.DELETE(":ossId", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("删除ResOsses信息").Handle(s.DeleteResOsses) - }) + ws.Route(ws.DELETE("/{ossId}").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("删除ResOsses信息").Handle(s.DeleteResOsses) + }). + Doc("删除ResOsses信息"). + Metadata(restfulspec.KeyOpenAPITags, tags). + Param(ws.PathParameter("ossId", "多id 1,2,3").DataType("string"))) - routerGroup.POST("uploadFile", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("测试文件上传").Handle(s.UplaodResOsses) - }) + ws.Route(ws.POST("/uploadFile").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("测试文件上传").Handle(s.UplaodResOsses) + }). + Doc("测试文件上传"). + Metadata(restfulspec.KeyOpenAPITags, tags)) - routerGroup.PUT("/changeStatus", func(c *gin.Context) { - restfulx.NewReqCtx(c).WithLog("修改状态").Handle(s.UpdateOssStatus) - })*/ + ws.Route(ws.PUT("/changeStatus").To(func(request *restful.Request, response *restful.Response) { + restfulx.NewReqCtx(request, response).WithLog("修改状态").Handle(s.UpdateOssStatus) + }). + Doc("修改状态"). + Metadata(restfulspec.KeyOpenAPITags, tags)) + + container.Add(ws) } diff --git a/go.mod b/go.mod index f07ad9d..b2f0eeb 100644 --- a/go.mod +++ b/go.mod @@ -3,11 +3,11 @@ module pandax go 1.18 require ( + github.com/XM-GO/PandaKit v0.0.0-20220803022710-dde3115ce2f9 github.com/dgrijalva/jwt-go v3.2.0+incompatible github.com/didip/tollbooth v4.0.2+incompatible github.com/emicklei/go-restful-openapi/v2 v2.9.0 github.com/emicklei/go-restful/v3 v3.9.0 - github.com/gin-gonic/gin v1.7.4 github.com/go-openapi/spec v0.20.6 github.com/gorilla/websocket v1.4.2 github.com/kakuilan/kgo v0.1.8 @@ -25,15 +25,13 @@ require ( github.com/Knetic/govaluate v3.0.1-0.20171022003610-9aa49832a739+incompatible // indirect github.com/KyleBanks/depth v1.2.1 // indirect github.com/StackExchange/wmi v0.0.0-20210224194228-fe8f1750fd46 // indirect - github.com/XM-GO/PandaKit v0.0.0-20220803022710-dde3115ce2f9 // indirect github.com/aliyun/aliyun-oss-go-sdk v2.2.0+incompatible // indirect github.com/brianvoe/gofakeit/v6 v6.0.2 // indirect github.com/casbin/casbin/v2 v2.37.4 // indirect github.com/casbin/gorm-adapter/v3 v3.4.6 // indirect github.com/denisenkom/go-mssqldb v0.11.0 // indirect - github.com/emicklei/go-restful v2.16.0+incompatible // indirect - github.com/emicklei/go-restful-swagger12 v0.0.0-20201014110547-68ccff494617 // indirect github.com/gin-contrib/sse v0.1.0 // indirect + github.com/gin-gonic/gin v1.7.4 // indirect github.com/go-ole/go-ole v1.2.5 // indirect github.com/go-openapi/jsonpointer v0.19.5 // indirect github.com/go-openapi/jsonreference v0.20.0 // indirect @@ -99,4 +97,4 @@ require ( gorm.io/plugin/dbresolver v1.1.0 // indirect ) -replace github.com/XM-GO/PandaKit => D:\workspace\go\project\PandaX\PandaKit +replace github.com/XM-GO/PandaKit => D:\GOwork\pro\PnadaX\PandaKit diff --git a/go.sum b/go.sum index dd6b153..82dab32 100644 --- a/go.sum +++ b/go.sum @@ -12,12 +12,6 @@ github.com/PuerkitoBio/urlesc v0.0.0-20170810143723-de5bf2ad4578/go.mod h1:uGdko github.com/QcloudApi/qcloud_sign_golang v0.0.0-20141224014652-e4130a326409/go.mod h1:1pk82RBxDY/JZnPQrtqHlUFfCctgdorsd9M06fMynOM= github.com/StackExchange/wmi v0.0.0-20210224194228-fe8f1750fd46 h1:5sXbqlSomvdjlRbWyNqkPsJ3Fg+tQZCbgeX1VGljbQY= github.com/StackExchange/wmi v0.0.0-20210224194228-fe8f1750fd46/go.mod h1:3eOhrUMpNV+6aFIbp5/iudMxNCF27Vw2OZgy4xEx0Fg= -github.com/XM-GO/PandaKit v0.0.0-20220802142840-39f271c60434 h1:XNrFgNQKWuedkyKynY20P834mnmjl0i0TQqpNgqtLT4= -github.com/XM-GO/PandaKit v0.0.0-20220802142840-39f271c60434/go.mod h1:Z+TJfmc3yB/AbQP6LjqYe/XqLH596917qK0pUp0FEdA= -github.com/XM-GO/PandaKit v0.0.0-20220803000751-6f77cc922152 h1:6YCJQCEMcRu39INnV22uJhTyLfIOVeAe+ZAZOJ4of7A= -github.com/XM-GO/PandaKit v0.0.0-20220803000751-6f77cc922152/go.mod h1:A/0dFObLVa7Yzeq6cMmcjNUoajSgcLkEJglLc41BO3w= -github.com/XM-GO/PandaKit v0.0.0-20220803022710-dde3115ce2f9 h1:RwQ4AMAmkp9jE71iZ5vHEfRzYhkKXKyT9QOhVtTFMLg= -github.com/XM-GO/PandaKit v0.0.0-20220803022710-dde3115ce2f9/go.mod h1:A/0dFObLVa7Yzeq6cMmcjNUoajSgcLkEJglLc41BO3w= github.com/aliyun/aliyun-oss-go-sdk v2.2.0+incompatible h1:ht2+VfbXtNLGhCsnTMc6/N26nSTBK6qdhktjYyjJQkk= github.com/aliyun/aliyun-oss-go-sdk v2.2.0+incompatible/go.mod h1:T/Aws4fEfogEE9v+HPhhw+CntffsBHJ8nXQCwKr0/g8= github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY= @@ -54,12 +48,8 @@ github.com/dgrijalva/jwt-go v3.2.0+incompatible h1:7qlOGliEKZXTDg6OTjfoBKDXWrumC github.com/dgrijalva/jwt-go v3.2.0+incompatible/go.mod h1:E3ru+11k8xSBh+hMPgOLZmtrrCbhqsmaPHjLKYnJCaQ= github.com/didip/tollbooth v4.0.2+incompatible h1:fVSa33JzSz0hoh2NxpwZtksAzAgd7zjmGO20HCZtF4M= github.com/didip/tollbooth v4.0.2+incompatible/go.mod h1:A9b0665CE6l1KmzpDws2++elm/CsuWBMa5Jv4WY0PEY= -github.com/emicklei/go-restful v2.16.0+incompatible h1:rgqiKNjTnFQA6kkhFe16D8epTksy9HQ1MyrbDXSdYhM= -github.com/emicklei/go-restful v2.16.0+incompatible/go.mod h1:otzb+WCGbkyDHkqmQmT5YD2WR4BBwUdeQoFo8l/7tVs= github.com/emicklei/go-restful-openapi/v2 v2.9.0 h1:djsWqjhI0EVYfkLCCX6jZxUkLmYUq2q9tt09ZbixfyE= github.com/emicklei/go-restful-openapi/v2 v2.9.0/go.mod h1:VKNgZyYviM1hnyrjD9RDzP2RuE94xTXxV+u6MGN4v4k= -github.com/emicklei/go-restful-swagger12 v0.0.0-20201014110547-68ccff494617 h1:jri9taV4TK9oItoWJCofXJi21Dp/k25u32NnfphqLAY= -github.com/emicklei/go-restful-swagger12 v0.0.0-20201014110547-68ccff494617/go.mod h1:qr0VowGBT4CS4Q8vFF8BSeKz34PuqKGxs/L0IAQA9DQ= github.com/emicklei/go-restful/v3 v3.7.3/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= github.com/emicklei/go-restful/v3 v3.9.0 h1:XwGDlfxEnQZzuopoqxwSEllNcCOM9DhhFyhFIIGKwxE= github.com/emicklei/go-restful/v3 v3.9.0/go.mod h1:6n3XBCmQQb25CM2LCACGz8ukIrRry+4bhvbpWn3mrbc= diff --git a/pkg/initialize/router.go b/pkg/initialize/router.go index 27da6dd..8f9bfb1 100644 --- a/pkg/initialize/router.go +++ b/pkg/initialize/router.go @@ -4,6 +4,10 @@ import ( "pandax/pkg/global" "pandax/pkg/transport" + devRouter "pandax/apps/develop/router" + jobRouter "pandax/apps/job/router" + logRouter "pandax/apps/log/router" + resRouter "pandax/apps/resource/router" sysRouter "pandax/apps/system/router" "pandax/pkg/middleware" @@ -39,27 +43,26 @@ func InitRouter() *transport.HttpServer { sysRouter.InitUserRouter(container) sysRouter.InitNoticeRouter(container) } - /*// 任务 + // 任务 { - jobRouter.InitJobRouter() + jobRouter.InitJobRouter(container) } //日志系统 - log := router.Group("log") { - logRouter.InitLogRouter(log) + logRouter.InitJobLogRouter(container) + logRouter.InitOperLogRouter(container) + logRouter.InitLoginLogRouter(container) } // 代码生成 - dev := router.Group("develop/code") { - devRouter.InitGenTableRouter(dev) - devRouter.InitGenRouter(dev) + devRouter.InitGenTableRouter(container) + devRouter.InitGenRouter(container) } // 资源管理 - res := router.Group("resource") { - resRouter.InitResOssRouter(res) - resRouter.InitResEmailsRouter(res) - }*/ + resRouter.InitResOssRouter(container) + resRouter.InitResEmailsRouter(container) + } // api接口 middleware.SwaggerConfig(container) return server