package DatasourceOpenAPI import ( "dsSupport/MyModel/DataSource/DatasourceService" "dsSupport/MyModel/MySwagger" "dsSupport/models" "fmt" "github.com/gin-gonic/gin" "net/http" ) // 获取数据源列表 godoc // @Summary 获取数据源列表 // @Description 获取数据源列表 // @Tags datasource // @ID readDatasource // @Accept json // @Produce json // @Param input body MySwagger.DatasourceSwag true "数据源" // @Success 200 {object} MySwagger.Result // @Failure 400 {object} MySwagger.Result // @Router /v1/openapi/datasource/ReadDatasource [post] func ReadDatasource(c *gin.Context) { var raw MySwagger.DatasourceSwag //input.AuthToken = c.Request.Header["Authorization"][0] if err := c.ShouldBindJSON(&raw); err != nil { c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Message: "接入系统数据JSON格式错误"}) fmt.Println(err) return } fmt.Println("raw = ", raw) success, message, count, data, _ := DatasourceService.GetDatasourceResults(raw) if success { c.JSON(http.StatusOK, MySwagger.Result{ Success: true, Fail: false, Message: message, Total: count, Data: data, }) return } else { c.JSON(http.StatusOK, MySwagger.Result{ Success: false, Fail: true, Message: message, }) return } return } // 创建数据源 godoc // @Summary 创建数据源 // @Description 创建数据源 // @Tags datasource // @ID createDatasource // @Accept json // @Produce json // @Param input body MySwagger.DatasourceSwag true "数据源" // @Success 200 {object} MySwagger.Result // @Failure 400 {object} MySwagger.Result // @Router /v1/openapi/datasource/CreateDatasource [post] func CreateDatasource(c *gin.Context) { var raw models.TDataexDatasource if err := c.ShouldBindJSON(&raw); err != nil { c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Message: "接入系统数据JSON格式错误"}) fmt.Println(err) return } success, message, _ := DatasourceService.CreateDatasource(raw) if success { c.JSON(http.StatusOK, MySwagger.Result{ Success: true, Fail: false, Message: message, }) return } else { c.JSON(http.StatusOK, MySwagger.Result{ Success: false, Fail: true, Message: message, }) return } return } // 修改数据源 godoc // @Summary 修改数据源 // @Description 修改数据源 // @Tags datasource // @ID updateDatasource // @Accept json // @Produce json // @Param id path string true "数据源ID" // @Param input body MySwagger.DatasourceSwag true "数据源" // @Success 200 {object} MySwagger.Result // @Failure 400 {object} MySwagger.Result // @Router /v1/openapi/datasource/UpdateDatasource/{id} [post] func UpdateDatasource(c *gin.Context) { var raw models.TDataexDatasource ID := c.Param("id") if err := c.ShouldBindJSON(&raw); err != nil { fmt.Println("err=", err) c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Fail: true, Message: "接入系统数据JSON格式错误"}) return } success, message, _ := DatasourceService.UpdateDatasource(ID, raw) if success { c.JSON(http.StatusOK, MySwagger.Result{ Success: true, Fail: false, Message: message, }) return } else { c.JSON(http.StatusOK, MySwagger.Result{ Success: false, Fail: true, Message: message, }) return } return } // 删除数据源 godoc // @Summary 删除数据源 // @Description 删除数据源 // @Tags datasource // @ID deleteDatasource // @Accept json // @Produce json // @Param id path string true "数据源ID" // @Success 200 {object} MySwagger.Result // @Failure 400 {object} MySwagger.Result // @Router /v1/openapi/datasource/DeleteDatasource/{id} [post] func DeleteDatasource(c *gin.Context) { ID := c.Param("id") success, message, _ := DatasourceService.RemoveDatasource(ID) if success { c.JSON(http.StatusOK, MySwagger.Result{ Success: true, Fail: false, Message: message, }) return } else { c.JSON(http.StatusOK, MySwagger.Result{ Success: false, Fail: true, Message: message, }) return } return } // 获取es数据列表 godoc // @Summary 获取es数据列表 // @Description 获取es数据列表 // @Tags datasource // @ID readESDoc // @Accept json // @Produce json // @Param input body MySwagger.DatasourceESSwag true "es数据" // @Success 200 {object} MySwagger.Result // @Failure 400 {object} MySwagger.Result // @Router /v1/openapi/datasource/ReadESDoc [post] func ReadESDoc(c *gin.Context) { var raw MySwagger.DatasourceESSwag if err := c.ShouldBindJSON(&raw); err != nil { c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Message: "接入系统数据JSON格式错误"}) fmt.Println(err) return } datasourceCode := raw.DatasourceCode orgIDs := raw.OrgIDs page := raw.Page begin := raw.BeginTime conditions := raw.Conditions sort := raw.Sort success, message, esdata := DatasourceService.ReadESDoc(datasourceCode, orgIDs, page, begin, conditions, sort) //fmt.Println("esdata=", esdata) if success { c.JSON(http.StatusOK, MySwagger.Result{ Success: true, Fail: false, Message: message, Data: esdata, }) return } else { c.JSON(http.StatusOK, MySwagger.Result{ Success: false, Fail: true, Message: message, }) return } return } // 获取es数据 godoc // @Summary 获取es数据 // @Description 获取es数据 // @Tags datasource // @ID getESDoc // @Accept json // @Produce json // @Param input body MySwagger.DatasourceESSwag true "es数据" // @Success 200 {object} MySwagger.Result // @Failure 400 {object} MySwagger.Result // @Router /v1/openapi/datasource/GetESDoc [post] func GetESDoc(c *gin.Context) { var raw MySwagger.DatasourceESSwag if err := c.ShouldBindJSON(&raw); err != nil { c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Message: "JSON格式错误"}) fmt.Println(err) return } datasourceCode := raw.DatasourceCode dataID := raw.DataId success, message, esdata := DatasourceService.GetESDoc(datasourceCode, dataID) if success { c.JSON(http.StatusOK, MySwagger.ResultOne{ Success: true, Fail: false, Message: message, Data: esdata, }) return } else { c.JSON(http.StatusOK, MySwagger.ResultOne{ Success: false, Fail: true, Message: message, }) return } return }