|
@@ -8,6 +8,7 @@ import (
|
|
|
"fmt"
|
|
|
"io/ioutil"
|
|
|
"net/http"
|
|
|
+ "strings"
|
|
|
)
|
|
|
|
|
|
// ChartController 图表详情
|
|
@@ -15,13 +16,12 @@ type ChartController struct {
|
|
|
BaseAuthController
|
|
|
}
|
|
|
|
|
|
-
|
|
|
-// ExcelDetail
|
|
|
+// ChartDetail
|
|
|
// @Title 表格详情
|
|
|
// @Description 表格详情
|
|
|
// @Success 200 {object} models.EnglishReportShareDetailResp
|
|
|
// @router /detail [post]
|
|
|
-func (this *ChartController) ChartDetail() {
|
|
|
+func (this *ChartController) ChartDetail() {
|
|
|
br := new(models.BaseResponse).Init()
|
|
|
defer func() {
|
|
|
if br.ErrMsg == "" {
|
|
@@ -43,7 +43,7 @@ func (this *ChartController) ChartDetail() {
|
|
|
br.ErrMsg = "参数不能为空!"
|
|
|
return
|
|
|
}
|
|
|
- url := utils.ChartLibUrl+`/chart/common/detail?UniqueCode=%s`
|
|
|
+ url := utils.ChartLibUrl + `/chart/common/detail?UniqueCode=%s`
|
|
|
url = fmt.Sprintf(url, req.UniqueCode)
|
|
|
|
|
|
resp, e := http.Get(url)
|
|
@@ -77,9 +77,39 @@ func (this *ChartController) ChartDetail() {
|
|
|
br.ErrMsg = err.Error()
|
|
|
return
|
|
|
}
|
|
|
+
|
|
|
+ // (为了兼容内网客户)需要判断是否替换资源地址
|
|
|
+ var urlReplace models.Report2ImgReplace
|
|
|
+ if req.IsReplace == 1 {
|
|
|
+ conf, e := models.GetBusinessConf()
|
|
|
+ if e != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = "获取免责声明失败, Err: " + e.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if conf[models.BusinessConfReport2ImgReplace] != "" {
|
|
|
+ if e := json.Unmarshal([]byte(conf[models.BusinessConfReport2ImgReplace]), &urlReplace); e != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = fmt.Sprintf("获取报告替换配置失败, %v", e)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if urlReplace.IsReplace && urlReplace.OssUrlOrigin != "" {
|
|
|
+ // 替换水印图片地址
|
|
|
+ replaceFunc := func(data interface{}, originUrl, newUrl string) {
|
|
|
+ if dataMap, ok := data.(map[string]interface{}); ok {
|
|
|
+ if waterMark, ok := dataMap["WaterMark"].(string); ok {
|
|
|
+ newWaterMark := strings.ReplaceAll(waterMark, originUrl, newUrl)
|
|
|
+ dataMap["WaterMark"] = newWaterMark
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ replaceFunc(result.Data, urlReplace.OssUrlOrigin, urlReplace.OssUrlNew)
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
|
br.Msg = "获取成功"
|
|
|
br.Data = result.Data
|
|
|
- return
|
|
|
}
|