You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

183 lines
4.1 KiB

package DataaccessOpenAPI
import (
"dsDataex/GenXorm/models"
"dsDataex/MyModel/DataAccess/DataaccessService"
"dsDataex/MyModel/MySwagger"
"fmt"
"github.com/gin-gonic/gin"
"net/http"
)
// 获取数据订阅列表 godoc
// @Summary 获取数据订阅列表
// @Description 获取元数据列表
// @Tags dataaccess
// @ID readDataaccess
// @Accept json
// @Produce json
// @Param input body MySwagger.DataaccessSwag true "数据订阅"
// @Success 200 {object} MySwagger.Result
// @Failure 400 {object} MySwagger.Result
// @Router /v1/openapi/dataaccess/ReadDataaccess [post]
func ReadDataaccess(c *gin.Context) {
var raw MySwagger.DataaccessSwag
//input.AuthToken = c.Request.Header["Authorization"][0]
//queryString := c.Request.URL.Query().Encode()
if err := c.ShouldBindJSON(&raw); err != nil {
c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Message: "接入系统数据JSON格式错误"})
fmt.Println(err)
return
}
fmt.Println("json.page=", raw.Page)
success, message, count, data, _ := DataaccessService.GetDataaccessResults(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 dataaccess
// @ID createDataaccess
// @Accept json
// @Produce json
// @Param input body MySwagger.DataaccessSwag true "数据订阅"
// @Success 200 {object} MySwagger.Result
// @Failure 400 {object} MySwagger.Result
// @Router /v1/openapi/dataaccess/CreateDataaccess [post]
func CreateDataaccess(c *gin.Context) {
var raw models.TDataexDataaccess
if err := c.ShouldBindJSON(&raw); err != nil {
c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Message: "接入系统数据JSON格式错误"})
fmt.Println(err)
return
}
success, message, _ := DataaccessService.CreateDataaccess(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 dataaccess
// @ID updateDataaccess
// @Accept json
// @Produce json
// @Param id path string true "数据订阅ID"
// @Param input body MySwagger.DataaccessSwag true "数据订阅"
// @Success 200 {object} MySwagger.Result
// @Failure 400 {object} MySwagger.Result
// @Router /v1/openapi/dataaccess/UpdateDataaccess/{id} [post]
func UpdateDataaccess(c *gin.Context) {
var raw models.TDataexDataaccess
ID := c.Param("id")
if err := c.ShouldBindJSON(&raw); err != nil {
c.JSON(http.StatusBadRequest, MySwagger.Result{Success: false, Fail: true, Message: "接入系统数据JSON格式错误"})
return
}
success, message, _ := DataaccessService.UpdateDataaccess(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 dataaccess
// @ID deleteDataaccess
// @Accept json
// @Produce json
// @Param id path string true "数据订阅ID"
// @Success 200 {object} MySwagger.Result
// @Failure 400 {object} MySwagger.Result
// @Router /v1/openapi/dataaccess/DeleteDataaccess/{id} [post]
func DeleteDataaccess(c *gin.Context) {
ID := c.Param("id")
success, message, _ := DataaccessService.RemoveDataaccess(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
}