edb_info_refresh.go 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645
  1. package data_manage
  2. import (
  3. "encoding/json"
  4. "eta/eta_api/models"
  5. "eta/eta_api/models/data_manage"
  6. "eta/eta_api/models/data_manage/edb_refresh"
  7. "eta/eta_api/models/data_manage/edb_refresh/request"
  8. "eta/eta_api/services/data"
  9. "eta/eta_api/utils"
  10. "fmt"
  11. "github.com/rdlucklib/rdluck_tools/paging"
  12. )
  13. // RefreshSourceList
  14. // @Title 获取指标刷新配置的来源接口
  15. // @Description 获取指标刷新配置的来源接口
  16. // @Success Ret=200 获取成功
  17. // @router /edb_info/refresh/source_list [get]
  18. func (c *EdbInfoController) RefreshSourceList() {
  19. br := new(models.BaseResponse).Init()
  20. defer func() {
  21. c.Data["json"] = br
  22. c.ServeJSON()
  23. }()
  24. item := edb_refresh.EdbRefreshSource{}
  25. tmpList, err := item.GetAllList()
  26. if err != nil {
  27. br.Msg = "获取失败"
  28. br.ErrMsg = "获取刷新数据源失败, Err: " + err.Error()
  29. return
  30. }
  31. list := make([]edb_refresh.EdbRefreshSourceList, 0)
  32. tmpMap := make(map[int]edb_refresh.EdbRefreshSourceList, 0)
  33. for _, v := range tmpList {
  34. tmp, ok := tmpMap[v.Source]
  35. if ok {
  36. continue
  37. }
  38. tmp = edb_refresh.EdbRefreshSourceList{
  39. Source: v.Source,
  40. SourceName: v.SourceName,
  41. //SubSource: v.SubSource,
  42. //SubSourceName: v.SubSourceName,
  43. Child: make([]edb_refresh.EdbRefreshSourceList, 0),
  44. HasChild: v.HasChild,
  45. }
  46. if v.HasChild == 1 {
  47. for _, v2 := range tmpList {
  48. if v2.Source == v.Source {
  49. tmp.Child = append(tmp.Child, edb_refresh.EdbRefreshSourceList{
  50. Source: v2.Source,
  51. SourceName: v2.SourceName,
  52. SubSource: v2.SubSource,
  53. SubSourceName: v2.SubSourceName,
  54. HasChild: 0,
  55. })
  56. }
  57. }
  58. }
  59. tmpMap[v.Source] = tmp
  60. list = append(list, tmp)
  61. }
  62. br.Ret = 200
  63. br.Success = true
  64. br.Msg = "获取成功"
  65. br.Data = list
  66. }
  67. // RefreshClassifyList
  68. // @Title 获取指标分类列表接口
  69. // @Description 获取指标分类列表接口
  70. // @Param Source query int true "来源:1:同花顺,2:wind,3:彭博"
  71. // @Success Ret=200 获取成功
  72. // @router /edb_info/refresh/classify_list [get]
  73. func (c *EdbInfoController) RefreshClassifyList() {
  74. br := new(models.BaseResponse).Init()
  75. defer func() {
  76. c.Data["json"] = br
  77. c.ServeJSON()
  78. }()
  79. source, _ := c.GetInt("Source", utils.DATA_SOURCE_MYSTEEL_CHEMICAL)
  80. list := make([]*edb_refresh.BaseClassifyItems, 0)
  81. switch source {
  82. case utils.DATA_SOURCE_MYSTEEL_CHEMICAL: // 钢联
  83. rootList, err := data_manage.GetBaseFromMysteelChemicalClassifyByParentId(0)
  84. if err != nil && err.Error() != utils.ErrNoRow() {
  85. br.Msg = "获取失败"
  86. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  87. return
  88. }
  89. classifyAll, err := data_manage.GetAllBaseFromMysteelChemicalClassify()
  90. if err != nil && err.Error() != utils.ErrNoRow() {
  91. br.Msg = "获取失败"
  92. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  93. return
  94. }
  95. rootChildMap := make(map[int][]*edb_refresh.BaseClassifyItems)
  96. for _, v := range classifyAll {
  97. //tmpList, ok := rootChildMap[v.ParentId]
  98. //if !ok {
  99. // tmpList = make([]data_manage.BaseClassifyItems, 0)
  100. //}
  101. //tmpList = append(tmpList, data_manage.BaseClassifyItems{
  102. // ClassifyId: v.BaseFromMysteelChemicalClassifyId,
  103. // ClassifyName: v.ClassifyName,
  104. // ParentId: v.ParentId,
  105. // UniqueCode: fmt.Sprint(v.BaseFromMysteelChemicalClassifyId),
  106. // Children: nil,
  107. //})
  108. //rootChildMap[v.ParentId] = tmpList
  109. rootChildMap[v.ParentId] = append(rootChildMap[v.ParentId], &edb_refresh.BaseClassifyItems{
  110. ClassifyId: v.BaseFromMysteelChemicalClassifyId,
  111. ClassifyName: v.ClassifyName,
  112. ParentId: v.ParentId,
  113. UniqueCode: fmt.Sprint(v.BaseFromMysteelChemicalClassifyId),
  114. Children: nil,
  115. })
  116. }
  117. for _, v := range rootList {
  118. tmp := &edb_refresh.BaseClassifyItems{
  119. ClassifyId: v.BaseFromMysteelChemicalClassifyId,
  120. ClassifyName: v.ClassifyName,
  121. ParentId: v.ParentId,
  122. UniqueCode: fmt.Sprint(v.BaseFromMysteelChemicalClassifyId),
  123. Children: nil,
  124. }
  125. if existItems, ok := rootChildMap[v.BaseFromMysteelChemicalClassifyId]; ok {
  126. tmp.Children = existItems
  127. } else {
  128. items := make([]*edb_refresh.BaseClassifyItems, 0)
  129. tmp.Children = items
  130. }
  131. list = append(list, tmp)
  132. }
  133. case utils.DATA_SOURCE_YS: // 有色
  134. list = append(list, &edb_refresh.BaseClassifyItems{
  135. ClassifyId: 0,
  136. ClassifyName: "未分类",
  137. ParentId: 0,
  138. UniqueCode: fmt.Sprint(0),
  139. Children: nil,
  140. })
  141. rootList, err := data_manage.GetBaseFromSmmClassifyByParentId(0)
  142. if err != nil && err.Error() != utils.ErrNoRow() {
  143. br.Msg = "获取失败"
  144. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  145. return
  146. }
  147. classifyAll, err := data_manage.GetAllBaseFromSmmClassify()
  148. if err != nil && err.Error() != utils.ErrNoRow() {
  149. br.Msg = "获取失败"
  150. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  151. return
  152. }
  153. rootChildMap := make(map[int][]*edb_refresh.BaseClassifyItems)
  154. for _, v := range classifyAll {
  155. rootChildMap[v.ParentId] = append(rootChildMap[v.ParentId], &edb_refresh.BaseClassifyItems{
  156. ClassifyId: v.ClassifyId,
  157. ClassifyName: v.ClassifyName,
  158. ParentId: v.ParentId,
  159. UniqueCode: fmt.Sprint(v.ClassifyId),
  160. Children: nil,
  161. })
  162. }
  163. for _, v := range rootList {
  164. tmp := &edb_refresh.BaseClassifyItems{
  165. ClassifyId: v.ClassifyId,
  166. ClassifyName: v.ClassifyName,
  167. ParentId: v.ParentId,
  168. UniqueCode: fmt.Sprint(v.ClassifyId),
  169. Children: nil,
  170. }
  171. if existItems, ok := rootChildMap[v.ClassifyId]; ok {
  172. tmp.Children = existItems
  173. } else {
  174. items := make([]*edb_refresh.BaseClassifyItems, 0)
  175. tmp.Children = items
  176. }
  177. list = append(list, tmp)
  178. }
  179. default:
  180. tmpList, err := data_manage.GetAllEdbClassify()
  181. if err != nil && err.Error() != utils.ErrNoRow() {
  182. br.Msg = "获取失败"
  183. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  184. return
  185. }
  186. for _, v := range tmpList {
  187. list = append(list, &edb_refresh.BaseClassifyItems{
  188. ClassifyId: v.ClassifyId,
  189. ClassifyName: v.ClassifyName,
  190. ParentId: v.ParentId,
  191. UniqueCode: fmt.Sprint(v.ClassifyId),
  192. Children: nil,
  193. })
  194. }
  195. list = buildTree(list, 0)
  196. //fmt.Println(result)
  197. }
  198. br.Ret = 200
  199. br.Success = true
  200. br.Msg = "获取成功"
  201. br.Data = list
  202. }
  203. // 生成多层级列表的递归函数
  204. func buildTree(items []*edb_refresh.BaseClassifyItems, parentId int) []*edb_refresh.BaseClassifyItems {
  205. var result []*edb_refresh.BaseClassifyItems
  206. // 遍历所有分类项
  207. for i := range items {
  208. // 找到当前节点的子节点
  209. if items[i].ParentId == parentId {
  210. // 递归构建子节点的子节点
  211. items[i].Children = buildTree(items, items[i].ClassifyId)
  212. // 将当前节点添加到结果中
  213. result = append(result, items[i])
  214. }
  215. }
  216. return result
  217. }
  218. // RefreshEdbList
  219. // @Title 获取待配置的指标列表接口
  220. // @Description 获取待配置的指标列表接口
  221. // @Param Source query int true "来源:1:同花顺,2:wind,3:彭博"
  222. // @Param SubSource query int true "来源:0:经济数据库,1:日期序列"
  223. // @Param ClassifyId query string false "分类ID,支持多选,用英文,隔开"
  224. // @Param TerminalCode query string false "终端编码"
  225. // @Param SysUserId query string false "创建人,支持多选,用英文,隔开"
  226. // @Param Frequency query string false "频度,支持多选,用英文,隔开"
  227. // @Param Keyword query string false "关键词"
  228. // @Param SortParam query string false "排序字段参数,用来排序的字段, 枚举值:'data_time':日期"
  229. // @Param SortType query string true "如何排序,是正序还是倒序,枚举值:`asc 正序`,`desc 倒叙`"
  230. // @Success 200 {object} data_manage.RefreshBaseEdbInfoResp
  231. // @router /edb_info/refresh/edb_list [get]
  232. func (c *EdbInfoController) RefreshEdbList() {
  233. br := new(models.BaseResponse).Init()
  234. defer func() {
  235. c.Data["json"] = br
  236. c.ServeJSON()
  237. }()
  238. source, _ := c.GetInt("Source")
  239. subSource, _ := c.GetInt("SubSource")
  240. classifyId := c.GetString("ClassifyId")
  241. terminalCode := c.GetString("TerminalCode")
  242. sysUserId := c.GetString("SysUserId")
  243. frequency := c.GetString("Frequency")
  244. keyword := c.GetString("Keyword")
  245. status := c.GetString("Status")
  246. sortParam := c.GetString("SortParam")
  247. sortType := c.GetString("SortType")
  248. switch sortParam {
  249. case "end_date":
  250. default:
  251. sortParam = " end_date "
  252. }
  253. switch sortType {
  254. case "desc", "asc":
  255. default:
  256. sortType = "desc"
  257. }
  258. pageSize, _ := c.GetInt("PageSize")
  259. currentIndex, _ := c.GetInt("CurrentIndex")
  260. var startSize int
  261. if pageSize <= 0 {
  262. pageSize = utils.PageSize20
  263. }
  264. if currentIndex <= 0 {
  265. currentIndex = 1
  266. }
  267. startSize = utils.StartIndex(currentIndex, pageSize)
  268. total, list, err := data.GetList(source, subSource, classifyId, terminalCode, sysUserId, frequency, keyword, status, startSize, pageSize, sortParam, sortType)
  269. if err != nil && err.Error() != utils.ErrNoRow() {
  270. br.Msg = "获取失败"
  271. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  272. return
  273. }
  274. page := paging.GetPaging(currentIndex, pageSize, total)
  275. resp := data_manage.RefreshBaseEdbInfoResp{
  276. Paging: page,
  277. List: list,
  278. }
  279. // 刷新时间格式化
  280. list, err, errMsg, isSendEmail := data.HandleRefreshTime(source, subSource, list)
  281. if err != nil {
  282. br.Msg = errMsg
  283. br.ErrMsg = "保存失败,Err:" + err.Error()
  284. br.IsSendEmail = isSendEmail
  285. return
  286. }
  287. br.Ret = 200
  288. br.Success = true
  289. br.Msg = "获取成功"
  290. br.Data = resp
  291. }
  292. // GetEdbRefreshDefaultConfig
  293. // @Title 获取待配置的指标列表接口
  294. // @Description 获取待配置的指标列表接口
  295. // @Param Source query int true "来源:1:同花顺,2:wind,3:彭博"
  296. // @Param SubSource query int true "来源:0:经济数据库,1:日期序列"
  297. // @Param Frequency query string false "频度"
  298. // @Success 200 {object} data_manage.RefreshBaseEdbInfoResp
  299. // @router /edb_info/refresh/default_config [get]
  300. func (c *EdbInfoController) GetEdbRefreshDefaultConfig() {
  301. br := new(models.BaseResponse).Init()
  302. defer func() {
  303. c.Data["json"] = br
  304. c.ServeJSON()
  305. }()
  306. source, _ := c.GetInt("Source")
  307. subSource, _ := c.GetInt("SubSource")
  308. frequency := c.GetString("Frequency")
  309. if source <= 0 {
  310. br.Msg = "来源不能为空"
  311. br.IsSendEmail = false
  312. return
  313. }
  314. // 非有色的来源,频度不能为空
  315. if source != utils.DATA_SOURCE_YS && frequency == `` {
  316. br.Msg = "频度不能为空"
  317. br.IsSendEmail = false
  318. return
  319. }
  320. list, err := edb_refresh.GetListBySourceAndFrequency(source, subSource, frequency)
  321. if err != nil {
  322. br.Msg = "获取失败"
  323. br.ErrMsg = err.Error()
  324. return
  325. }
  326. br.Ret = 200
  327. br.Success = true
  328. br.Msg = "获取成功"
  329. br.Data = list
  330. }
  331. // SaveEdbRefreshDefaultConfig
  332. // @Title 设置默认的指标刷新配置接口
  333. // @Description 设置默认的指标刷新配置接口
  334. // @Param request body data_manage.SaveEdbRefreshDefaultConfigReq true "type json string"
  335. // @Success Ret=200 保存成功
  336. // @router /edb_info/refresh/default_config/save [post]
  337. func (c *EdbInfoController) SaveEdbRefreshDefaultConfig() {
  338. br := new(models.BaseResponse).Init()
  339. defer func() {
  340. c.Data["json"] = br
  341. c.ServeJSON()
  342. }()
  343. var req request.SaveEdbRefreshDefaultConfigReq
  344. err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
  345. if err != nil {
  346. br.Msg = "参数解析异常!"
  347. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  348. return
  349. }
  350. // 保存
  351. err, errMsg, isSendEmail := data.SaveEdbRefreshDefaultConfig(req.Source, req.SubSource, req.Frequency, req.List)
  352. if err != nil {
  353. br.Msg = errMsg
  354. br.ErrMsg = "保存失败,Err:" + err.Error()
  355. br.IsSendEmail = isSendEmail
  356. return
  357. }
  358. br.Ret = 200
  359. br.Success = true
  360. br.Msg = "保存成功"
  361. }
  362. // SaveEdbRefreshConfig
  363. // @Title 设置指标刷新配置接口
  364. // @Description 设置指标刷新配置接口
  365. // @Param request body data_manage.SaveEdbRefreshConfigReq true "type json string"
  366. // @Success 200 {object} data_manage.RefreshBaseEdbInfoResp
  367. // @router /edb_info/refresh/config/save [post]
  368. func (c *EdbInfoController) SaveEdbRefreshConfig() {
  369. br := new(models.BaseResponse).Init()
  370. defer func() {
  371. c.Data["json"] = br
  372. c.ServeJSON()
  373. }()
  374. var req request.SaveEdbRefreshConfigReq
  375. err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
  376. if err != nil {
  377. br.Msg = "参数解析异常!"
  378. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  379. return
  380. }
  381. // 保存
  382. err, errMsg, isSendEmail := data.SaveEdbRefreshConfig(req.Source, req.SubSource, req.ClassifyId, req.TerminalCode, req.Frequency, req.Keyword, req.Status, req.SysUserId, req.IsSelectAll, req.List, req.EdbSelectIdList, c.SysUser.AdminId, c.SysUser.RealName)
  383. if err != nil {
  384. br.Msg = errMsg
  385. br.ErrMsg = "保存失败,Err:" + err.Error()
  386. br.IsSendEmail = isSendEmail
  387. return
  388. }
  389. br.Ret = 200
  390. br.Success = true
  391. br.Msg = "保存成功"
  392. }
  393. // SaveEdbRefreshStatus
  394. // @Title 设置指标刷新状态接口
  395. // @Description 设置指标刷新状态接口
  396. // @Param request body data_manage.SaveEdbRefreshStatusReq true "type json string"
  397. // @Success 200 {object} data_manage.RefreshBaseEdbInfoResp
  398. // @router /edb_info/refresh/status/save [post]
  399. func (c *EdbInfoController) SaveEdbRefreshStatus() {
  400. br := new(models.BaseResponse).Init()
  401. defer func() {
  402. c.Data["json"] = br
  403. c.ServeJSON()
  404. }()
  405. var req request.SaveEdbRefreshStatusReq
  406. err := json.Unmarshal(c.Ctx.Input.RequestBody, &req)
  407. if err != nil {
  408. br.Msg = "参数解析异常!"
  409. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  410. return
  411. }
  412. if req.Source <= 0 {
  413. br.Msg = "来源不能为空"
  414. br.IsSendEmail = false
  415. return
  416. }
  417. edbIdList := make([]int, 0)
  418. edbCodeList := make([]string, 0)
  419. // 指标id列表
  420. if req.IsSelectAll {
  421. // 如果是列表全选
  422. _, edbList, err := data.GetList(req.Source, req.SubSource, req.ClassifyId, req.TerminalCode, req.SysUserId, req.Frequency, req.Keyword, req.Status, 0, 100000, "", "")
  423. if err != nil && err.Error() != utils.ErrNoRow() {
  424. br.Msg = "获取失败"
  425. br.ErrMsg = "获取数据失败,Err:" + err.Error()
  426. return
  427. }
  428. // 不配置的指标id
  429. notIdMap := make(map[int]int, 0)
  430. for _, v := range req.EdbSelectIdList {
  431. notIdMap[v] = v
  432. }
  433. for _, v := range edbList {
  434. _, ok := notIdMap[v.EdbInfoId]
  435. // 在不配置的指标id列表内的话,那就过滤
  436. if ok {
  437. continue
  438. }
  439. // 加入到待配置的指标列表id
  440. edbIdList = append(edbIdList, v.EdbInfoId)
  441. edbCodeList = append(edbCodeList, v.IndexCode)
  442. }
  443. } else {
  444. edbIdList = req.EdbSelectIdList
  445. }
  446. if len(edbIdList) <= 0 {
  447. br.Msg = "指标不能为空"
  448. br.IsSendEmail = false
  449. return
  450. }
  451. isStop := 0
  452. if req.ModifyStatus == `暂停` {
  453. isStop = 1
  454. }
  455. switch req.Source {
  456. case utils.DATA_SOURCE_MYSTEEL_CHEMICAL: // 钢联
  457. err = data_manage.ModifyMysteelChemicalUpdateStatus(edbIdList, edbCodeList, isStop)
  458. case utils.DATA_SOURCE_YS: // 有色
  459. err = data_manage.ModifySmmUpdateStatus(edbIdList, edbCodeList, isStop)
  460. default:
  461. err = data_manage.ModifyEdbInfoUpdateStatus(edbIdList, isStop)
  462. }
  463. if err != nil {
  464. br.Msg = `保存失败`
  465. br.ErrMsg = "保存失败,Err:" + err.Error()
  466. return
  467. }
  468. br.Ret = 200
  469. br.Success = true
  470. br.Msg = "保存成功"
  471. }
  472. // GetEdbRefreshEdbConfig
  473. // @Title 获取单个指标的刷新配置列表接口
  474. // @Description 获取单个指标的刷新配置列表接口
  475. // @Param Source query int true "来源:1:同花顺,2:wind,3:彭博"
  476. // @Param SubSource query int true "来源:0:经济数据库,1:日期序列"
  477. // @Param EdbInfoId query int false "指标id"
  478. // @Success 200 {object} data_manage.RefreshBaseEdbInfoResp
  479. // @router /edb_info/refresh/edb_config [get]
  480. func (c *EdbInfoController) GetEdbRefreshEdbConfig() {
  481. br := new(models.BaseResponse).Init()
  482. defer func() {
  483. c.Data["json"] = br
  484. c.ServeJSON()
  485. }()
  486. source, _ := c.GetInt("Source")
  487. subSource, _ := c.GetInt("SubSource")
  488. edbInfoId, _ := c.GetInt("EdbInfoId")
  489. if source <= 0 {
  490. br.Msg = "来源不能为空"
  491. br.IsSendEmail = false
  492. return
  493. }
  494. if edbInfoId <= 0 {
  495. br.Msg = "指标不能为空"
  496. br.IsSendEmail = false
  497. return
  498. }
  499. // 获取指标的刷新配置列表
  500. list, err := edb_refresh.GetEdbRefreshConfigListBySourceAndeEdbInfoId(source, subSource, edbInfoId)
  501. if err != nil {
  502. br.Msg = "获取失败"
  503. br.ErrMsg = err.Error()
  504. return
  505. }
  506. if len(list) > 0 {
  507. br.Ret = 200
  508. br.Success = true
  509. br.Msg = "获取成功"
  510. br.Data = list
  511. return
  512. }
  513. // 如果没有找到该指标的配置,那么就查询默认配置
  514. var frequency string
  515. // 根据类型查找指标的频度信息
  516. switch source {
  517. case utils.DATA_SOURCE_MYSTEEL_CHEMICAL: // 钢联
  518. item, err := data_manage.GetBaseFromMysteelChemicalIndexByIndexId(edbInfoId)
  519. if err != nil {
  520. br.Msg = "获取指标信息失败"
  521. br.ErrMsg = err.Error()
  522. return
  523. }
  524. frequency = item.Frequency
  525. case utils.DATA_SOURCE_YS: // 有色
  526. item, err := data_manage.GetSmmIndexById(edbInfoId)
  527. if err != nil {
  528. br.Msg = "获取指标信息失败"
  529. br.ErrMsg = err.Error()
  530. return
  531. }
  532. frequency = item.Frequency
  533. default:
  534. item, err := data_manage.GetEdbInfoById(edbInfoId)
  535. if err != nil {
  536. br.Msg = "获取指标信息失败"
  537. br.ErrMsg = err.Error()
  538. return
  539. }
  540. frequency = item.Frequency
  541. }
  542. if frequency == `` {
  543. br.Msg = "获取的指标频度信息异常"
  544. br.IsSendEmail = false
  545. return
  546. }
  547. tmpList, err := edb_refresh.GetListBySourceAndFrequency(source, subSource, frequency)
  548. if err != nil {
  549. br.Msg = "获取失败"
  550. br.ErrMsg = err.Error()
  551. return
  552. }
  553. list = make([]*edb_refresh.EdbRefreshConfigItem, 0)
  554. for _, v := range tmpList {
  555. list = append(list, &edb_refresh.EdbRefreshConfigItem{
  556. RefreshFrequency: v.RefreshFrequency,
  557. RefreshFrequencyDay: v.RefreshFrequencyDay,
  558. RefreshTime: v.RefreshTime,
  559. RefreshAllData: v.RefreshAllData,
  560. RefreshDataNum: v.RefreshDataNum,
  561. })
  562. }
  563. br.Ret = 200
  564. br.Success = true
  565. br.Msg = "获取成功"
  566. br.Data = list
  567. }