Commit d75ec8c6 authored by Euan游根明's avatar Euan游根明

perf: 接口返回

parent 5ede499c
......@@ -4,6 +4,7 @@ import (
"doc-service/common/log"
"encoding/json"
"errors"
"fmt"
openapi "github.com/alibabacloud-go/darabonba-openapi/v2/client"
imm20200930 "github.com/alibabacloud-go/imm-20200930/v4/client"
openapiutil "github.com/alibabacloud-go/openapi-util/service"
......@@ -107,12 +108,13 @@ func (o *Conversion) checkParam(arg ConversionRequest) error {
return nil
}
// 文件转换
func (o *Conversion) DoConversion(arg ConversionRequest) (string, error) {
// DoConversion 文件转换
func (o *Conversion) DoConversion(arg ConversionRequest) (map[string]interface{}, error) {
ret := make(map[string]interface{}, 0)
//校验参数
checkErr := o.checkParam(arg)
if checkErr != nil {
return "", checkErr
return ret, checkErr
}
client := NewConversion()
......@@ -120,11 +122,11 @@ func (o *Conversion) DoConversion(arg ConversionRequest) (string, error) {
sourceParseUrl, parseErr := url.Parse(arg.SourceURI)
if parseErr != nil {
return "", parseErr
return ret, parseErr
}
targetParseUrl, parseTargetErr := url.Parse(arg.TargetURI)
if parseTargetErr != nil {
return "", parseTargetErr
return ret, parseTargetErr
}
// query params
queries := map[string]interface{}{}
......@@ -140,23 +142,18 @@ func (o *Conversion) DoConversion(arg ConversionRequest) (string, error) {
ossClient, _err := client.CreateClient()
if _err != nil {
return "", _err
return ret, _err
}
log.Info("转换请求参数: %s", queries)
// 返回值为 Map 类型,可从 Map 中获得三类数据:响应体 body、响应头 headers、HTTP 返回的状态码 statusCode。
res, err := ossClient.CallApi(params, request, runtime)
log.Info("DoConversion result返回:%s", res)
ret, err := ossClient.CallApi(params, request, runtime)
log.Info("DoConversion result返回:%s", ret)
if err != nil {
log.Error("创建任务报错%s", err)
return "", err
return ret, err
}
return ret, err
body, ok := res["body"].(map[string]interface{})
if !ok {
return "", err
}
return body["TaskId"].(string), err
}
func (o *Conversion) CreateImClient() (_result *imm20200930.Client, _err error) {
......@@ -231,29 +228,32 @@ func (o *Conversion) CreateProject() (_err error) {
return nil
}
func (o *Conversion) GetTaskProject(args GetTaskRequest) (string, error) {
func (o *Conversion) GetTaskProject(args GetTaskRequest) (*imm20200930.GetTaskResponse, error) {
client, _err := o.CreateImClient()
resp := &imm20200930.GetTaskResponse{}
if _err != nil {
return "", _err
return resp, _err
}
getTaskRequest := &imm20200930.GetTaskRequest{}
getTaskRequest.ProjectName = &args.ProjectName
getTaskRequest.TaskId = &args.TaskId
getTaskRequest.TaskType = &args.TaskType
getTaskRequest.RequestDefinition = &args.RequestDefinition
runtime := &util.RuntimeOptions{}
tryErr := func() (_e error) {
resp, tryErr := func() (*imm20200930.GetTaskResponse, error) {
defer func() {
if r := tea.Recover(recover()); r != nil {
_e = r
_err = r
}
}()
// 复制代码运行请自行打印 API 的返回值
_, _err = client.GetTaskWithOptions(getTaskRequest, runtime)
resp, _err = client.GetTaskWithOptions(getTaskRequest, runtime)
if _err != nil {
return _err
return nil, _err
}
return nil
fmt.Println("获取任务返回参数", resp)
return resp, _err
}()
if tryErr != nil {
......@@ -276,8 +276,8 @@ func (o *Conversion) GetTaskProject(args GetTaskRequest) (string, error) {
}*/
_, _err = util.AssertAsString(error.Message)
if _err != nil {
return "", _err
return resp, _err
}
}
return "", _err
return resp, _err
}
......@@ -37,10 +37,7 @@ func (con ApiController) Plist(c *gin.Context) {
c.String(200, "我是一个api接口-Plist")
}
/*
*
发起文件转换
*/
// 文件转换
func (con ApiController) Conversion(c *gin.Context) {
ret := make(map[string]interface{}, 0)
ret["errcode"] = 0
......@@ -52,7 +49,8 @@ func (con ApiController) Conversion(c *gin.Context) {
req.TargetType = c.PostForm("target_type")
req.SourceURI = c.PostForm("source_url")
req.TargetURI = c.PostForm("target_url")
req.IsPrivate = false
IsPrivate := c.PostForm("is_private")
req.IsPrivate = IsPrivate == "1"
//创建项目
createErr := service.NewConversion().CreateProject()
......@@ -70,7 +68,7 @@ func (con ApiController) Conversion(c *gin.Context) {
ret["errcode"] = 100011
}
ret["url"] = result
ret["result"] = result
res(c, http.StatusOK, "成功", ret)
return
}
......@@ -82,12 +80,15 @@ func (con ApiController) GetTaskProject(c *gin.Context) {
req.ProjectName = c.Query("project_name")
req.TaskId = c.Query("task_id")
req.TaskType = c.Query("task_type")
//requestDefinition := c.Query("request_definition")
req.RequestDefinition = true
result, errs := service.NewConversion().GetTaskProject(req)
if errs != nil {
ret["errmsg"] = errs.Error()
ret["errcode"] = 100011
}
ret["url"] = result
ret["result"] = result
res(c, http.StatusOK, "成功", ret)
return
}
......@@ -11,7 +11,7 @@ func ApiRoutersInit(r *gin.Engine) {
apiRouters := r.Group("/api", middlewares.InitMiddleware) //middlewares.InitMiddleware
{
apiRouters.GET("/", controllers.ApiController{}.Index)
apiRouters.POST("/", controllers.ApiController{}.Conversion)
apiRouters.POST("/doctopdf", controllers.ApiController{}.Conversion)
apiRouters.GET("/get-pro", controllers.ApiController{}.GetTaskProject)
apiRouters.GET("/index", controllers.ApiController{}.Index)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment