|
@@ -6,11 +6,10 @@ import (
|
|
|
"eta/eta_api/models/data_manage"
|
|
|
"eta/eta_api/models/data_manage/edb_refresh"
|
|
|
"eta/eta_api/models/data_manage/edb_refresh/request"
|
|
|
+ "eta/eta_api/services/data"
|
|
|
"eta/eta_api/utils"
|
|
|
"fmt"
|
|
|
"github.com/rdlucklib/rdluck_tools/paging"
|
|
|
- "strings"
|
|
|
- "time"
|
|
|
)
|
|
|
|
|
|
// RefreshSourceList
|
|
@@ -55,10 +54,10 @@ func (c *EdbInfoController) RefreshSourceList() {
|
|
|
for _, v2 := range tmpList {
|
|
|
if v2.Source == v.Source {
|
|
|
tmp.Child = append(tmp.Child, edb_refresh.EdbRefreshSourceList{
|
|
|
- Source: v.Source,
|
|
|
- SourceName: v.SourceName,
|
|
|
- SubSource: v.SubSource,
|
|
|
- SubSourceName: v.SubSourceName,
|
|
|
+ Source: v2.Source,
|
|
|
+ SourceName: v2.SourceName,
|
|
|
+ SubSource: v2.SubSource,
|
|
|
+ SubSourceName: v2.SubSourceName,
|
|
|
HasChild: 0,
|
|
|
})
|
|
|
}
|
|
@@ -290,7 +289,7 @@ func (c *EdbInfoController) RefreshEdbList() {
|
|
|
}
|
|
|
startSize = utils.StartIndex(currentIndex, pageSize)
|
|
|
|
|
|
- total, list, err := getList(source, subSource, classifyId, terminalCode, sysUserId, frequency, keyword, status, startSize, pageSize, sortParam, sortType)
|
|
|
+ total, list, err := data.GetList(source, subSource, classifyId, terminalCode, sysUserId, frequency, keyword, status, startSize, pageSize, sortParam, sortType)
|
|
|
if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
br.Msg = "获取失败"
|
|
|
br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
@@ -304,8 +303,14 @@ func (c *EdbInfoController) RefreshEdbList() {
|
|
|
List: list,
|
|
|
}
|
|
|
|
|
|
- // todo 数据源中的最新值
|
|
|
- // todo 刷新时间
|
|
|
+ // 刷新时间格式化
|
|
|
+ list, err, errMsg, isSendEmail := data.HandleRefreshTime(source, subSource, list)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = errMsg
|
|
|
+ br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
+ br.IsSendEmail = isSendEmail
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
br.Ret = 200
|
|
|
br.Success = true
|
|
@@ -379,72 +384,12 @@ func (c *EdbInfoController) SaveEdbRefreshDefaultConfig() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- if req.Source <= 0 {
|
|
|
- br.Msg = "来源不能为空"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- if req.Frequency == `` {
|
|
|
- br.Msg = "频度不能为空"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- lenConf := len(req.List)
|
|
|
- if lenConf == 0 {
|
|
|
- br.Msg = "至少需要一个刷新配置"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- tmpArr := []string{"每周", "每旬", "每月", "每季", "每半年", "每年"}
|
|
|
- // 配置的map,避免同一种类型配置同一个时间
|
|
|
- configMap := make(map[string]string)
|
|
|
- for _, v := range req.List {
|
|
|
- if utils.InArrayByStr(tmpArr, v.RefreshFrequency) && v.RefreshFrequencyDay < 0 {
|
|
|
- br.Msg = "请选择具体日期"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- if v.RefreshTime == "" {
|
|
|
- br.Msg = "请选择具体时间"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- // 配置的map,避免同一种类型配置同一个时间
|
|
|
- key := fmt.Sprint(v.RefreshFrequency, "_", v.RefreshFrequencyDay, "_", v.RefreshTime)
|
|
|
- if _, ok := configMap[key]; ok {
|
|
|
- br.Msg = "刷新频率和日期不能重复"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
- configMap[key] = key
|
|
|
- }
|
|
|
-
|
|
|
- addList := make([]*edb_refresh.EdbRefreshDefaultConfig, 0)
|
|
|
- for _, v := range req.List {
|
|
|
- addList = append(addList, &edb_refresh.EdbRefreshDefaultConfig{
|
|
|
- Source: req.Source,
|
|
|
- SubSource: req.SubSource,
|
|
|
- Frequency: req.Frequency,
|
|
|
- RefreshFrequency: v.RefreshFrequency,
|
|
|
- RefreshFrequencyDay: v.RefreshFrequencyDay,
|
|
|
- RefreshAllData: v.RefreshAllData,
|
|
|
- RefreshTime: v.RefreshTime,
|
|
|
- RefreshDataNum: v.RefreshDataNum,
|
|
|
- ModifyTime: time.Now(),
|
|
|
- CreateTime: time.Now(),
|
|
|
- })
|
|
|
- }
|
|
|
-
|
|
|
// 保存
|
|
|
- err = edb_refresh.SaveEdbRefreshDefaultConfig(req.Source, req.SubSource, req.Frequency, addList)
|
|
|
+ err, errMsg, isSendEmail := data.SaveEdbRefreshDefaultConfig(req.Source, req.SubSource, req.Frequency, req.List)
|
|
|
if err != nil {
|
|
|
- br.Msg = `保存失败`
|
|
|
+ br.Msg = errMsg
|
|
|
br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
+ br.IsSendEmail = isSendEmail
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -474,129 +419,12 @@ func (c *EdbInfoController) SaveEdbRefreshConfig() {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
- if req.Source <= 0 {
|
|
|
- br.Msg = "来源不能为空"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- lenConf := len(req.List)
|
|
|
- if lenConf == 0 {
|
|
|
- br.Msg = "至少需要一个刷新配置"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- tmpArr := []string{"每周", "每旬", "每月", "每季", "每半年", "每年"}
|
|
|
-
|
|
|
- // 配置的map,避免同一种类型配置同一个时间
|
|
|
- configMap := make(map[string]string)
|
|
|
- for _, v := range req.List {
|
|
|
- if utils.InArrayByStr(tmpArr, v.RefreshFrequency) && v.RefreshFrequencyDay < 0 {
|
|
|
- br.Msg = "请选择具体日期"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- if v.RefreshTime == "" {
|
|
|
- br.Msg = "请选择具体时间"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- // 配置的map,避免同一种类型配置同一个时间
|
|
|
- key := fmt.Sprint(v.RefreshFrequency, "_", v.RefreshFrequencyDay, "_", v.RefreshTime)
|
|
|
- if _, ok := configMap[key]; ok {
|
|
|
- br.Msg = "刷新频率和日期不能重复"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
- configMap[key] = key
|
|
|
- }
|
|
|
-
|
|
|
- edbIdList := make([]int, 0)
|
|
|
- // 指标id列表
|
|
|
- if req.IsSelectAll {
|
|
|
- // 如果是列表全选
|
|
|
- _, edbList, err := getList(req.Source, req.SubSource, req.ClassifyId, req.TerminalCode, req.SysUserId, req.Frequency, req.Keyword, req.Status, 0, 100000, "", "")
|
|
|
- if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "获取失败"
|
|
|
- br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- // 不配置的指标id
|
|
|
- notIdMap := make(map[int]int, 0)
|
|
|
- for _, v := range req.EdbSelectIdList {
|
|
|
- notIdMap[v] = v
|
|
|
- }
|
|
|
-
|
|
|
- for _, v := range edbList {
|
|
|
- _, ok := notIdMap[v.EdbInfoId]
|
|
|
- // 在不配置的指标id列表内的话,那就过滤
|
|
|
- if ok {
|
|
|
- continue
|
|
|
- }
|
|
|
-
|
|
|
- // 加入到待配置的指标列表id
|
|
|
- edbIdList = append(edbIdList, v.EdbInfoId)
|
|
|
- }
|
|
|
- } else {
|
|
|
- edbIdList = req.EdbSelectIdList
|
|
|
- }
|
|
|
-
|
|
|
- if len(edbIdList) <= 0 {
|
|
|
- br.Msg = "指标不能为空"
|
|
|
- br.IsSendEmail = false
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- // 待添加的配置关系数据
|
|
|
- addMappingList := make([]*edb_refresh.EdbRefreshMapping, 0)
|
|
|
-
|
|
|
- // 待添加的日期配置项
|
|
|
- addConfigList := make([]*edb_refresh.EdbRefreshConfig, 0)
|
|
|
- for _, v := range req.List {
|
|
|
- item, err := edb_refresh.GetEdbRefreshConfigListByCondition(v.RefreshFrequency, v.RefreshTime, v.RefreshFrequencyDay, v.RefreshAllData, v.RefreshDataNum)
|
|
|
- if err != nil {
|
|
|
- if err.Error() != utils.ErrNoRow() {
|
|
|
- br.Msg = "保存失败"
|
|
|
- br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
- return
|
|
|
- }
|
|
|
-
|
|
|
- addConfigList = append(addConfigList, &edb_refresh.EdbRefreshConfig{
|
|
|
- RefreshFrequency: v.RefreshFrequency,
|
|
|
- RefreshFrequencyDay: v.RefreshFrequencyDay,
|
|
|
- RefreshTime: v.RefreshTime,
|
|
|
- RefreshAllData: v.RefreshAllData,
|
|
|
- RefreshDataNum: v.RefreshDataNum,
|
|
|
- ModifyTime: time.Now(),
|
|
|
- CreateTime: time.Now(),
|
|
|
- })
|
|
|
- continue
|
|
|
- }
|
|
|
-
|
|
|
- for _, edbId := range edbIdList {
|
|
|
- addMappingList = append(addMappingList, &edb_refresh.EdbRefreshMapping{
|
|
|
- EdbRefreshMappingId: 0,
|
|
|
- Source: req.Source,
|
|
|
- SubSource: req.SubSource,
|
|
|
- EdbInfoId: edbId,
|
|
|
- EdbRefreshConfigId: item.EdbRefreshConfigId,
|
|
|
- SysUserId: c.SysUser.AdminId,
|
|
|
- SysUserRealName: c.SysUser.RealName,
|
|
|
- ModifyTime: time.Now(),
|
|
|
- CreateTime: time.Now(),
|
|
|
- })
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
// 保存
|
|
|
- err = edb_refresh.SaveEdbRefreshConfig(req.Source, req.SubSource, c.SysUser.AdminId, c.SysUser.RealName, addConfigList, addMappingList, edbIdList)
|
|
|
+ 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)
|
|
|
if err != nil {
|
|
|
- br.Msg = `保存失败`
|
|
|
+ br.Msg = errMsg
|
|
|
br.ErrMsg = "保存失败,Err:" + err.Error()
|
|
|
+ br.IsSendEmail = isSendEmail
|
|
|
return
|
|
|
}
|
|
|
|
|
@@ -637,7 +465,7 @@ func (c *EdbInfoController) SaveEdbRefreshStatus() {
|
|
|
// 指标id列表
|
|
|
if req.IsSelectAll {
|
|
|
// 如果是列表全选
|
|
|
- _, edbList, err := getList(req.Source, req.SubSource, req.ClassifyId, req.TerminalCode, req.SysUserId, req.Frequency, req.Keyword, req.Status, 0, 100000, "", "")
|
|
|
+ _, edbList, err := data.GetList(req.Source, req.SubSource, req.ClassifyId, req.TerminalCode, req.SysUserId, req.Frequency, req.Keyword, req.Status, 0, 100000, "", "")
|
|
|
if err != nil && err.Error() != utils.ErrNoRow() {
|
|
|
br.Msg = "获取失败"
|
|
|
br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
@@ -695,177 +523,111 @@ func (c *EdbInfoController) SaveEdbRefreshStatus() {
|
|
|
br.Msg = "保存成功"
|
|
|
}
|
|
|
|
|
|
-// getList
|
|
|
-// @Description: 获取指标列表
|
|
|
-// @author: Roc
|
|
|
-// @datetime 2024-01-08 15:14:16
|
|
|
-// @param source int
|
|
|
-// @param subSource int
|
|
|
-// @param classifyId int
|
|
|
-// @param terminalCode string
|
|
|
-// @param sysUserId string
|
|
|
-// @param frequency string
|
|
|
-// @param keyword string
|
|
|
-// @param startSize int
|
|
|
-// @param pageSize int
|
|
|
-// @return total int
|
|
|
-// @return list []*data_manage.BaseEdbInfo
|
|
|
-// @return err error
|
|
|
-func getList(source, subSource, classifyId int, terminalCode, sysUserId, frequency, keyword, status string, startSize, pageSize int, sortParam, sortType string) (total int, list []*data_manage.BaseEdbInfo, err error) {
|
|
|
- var pars []interface{}
|
|
|
- var condition string
|
|
|
-
|
|
|
- list = make([]*data_manage.BaseEdbInfo, 0)
|
|
|
-
|
|
|
- isStop := -1
|
|
|
- if status == `暂停` {
|
|
|
- isStop = 1
|
|
|
- } else if status == "启用" {
|
|
|
- isStop = 0
|
|
|
- }
|
|
|
+// GetEdbRefreshEdbConfig
|
|
|
+// @Title 获取单个指标的刷新配置列表接口
|
|
|
+// @Description 获取单个指标的刷新配置列表接口
|
|
|
+// @Param Source query int true "来源:1:同花顺,2:wind,3:彭博"
|
|
|
+// @Param SubSource query int true "来源:0:经济数据库,1:日期序列"
|
|
|
+// @Param EdbInfoId query int false "指标id"
|
|
|
+// @Success 200 {object} data_manage.RefreshBaseEdbInfoResp
|
|
|
+// @router /edb_info/refresh/edb_config [get]
|
|
|
+func (c *EdbInfoController) GetEdbRefreshEdbConfig() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
|
|
|
- switch source {
|
|
|
- case utils.DATA_SOURCE_MYSTEEL_CHEMICAL: // 钢联
|
|
|
- if classifyId > 0 {
|
|
|
- condition += " AND base_from_mysteel_chemical_classify_id = ? "
|
|
|
- pars = append(pars, classifyId)
|
|
|
- }
|
|
|
- if terminalCode != `` {
|
|
|
- condition += " AND terminal_code = ? "
|
|
|
- pars = append(pars, terminalCode)
|
|
|
- }
|
|
|
- if sysUserId != `` {
|
|
|
- sysUserIdSlice := strings.Split(sysUserId, ",")
|
|
|
- condition += ` AND sys_user_id IN (` + utils.GetOrmInReplace(len(sysUserIdSlice)) + `)`
|
|
|
- pars = append(pars, sysUserIdSlice)
|
|
|
- }
|
|
|
- if frequency != `` {
|
|
|
- condition += " AND frequency = ? "
|
|
|
- pars = append(pars, frequency)
|
|
|
- }
|
|
|
- if keyword != `` {
|
|
|
- keywordSlice := strings.Split(keyword, ",")
|
|
|
- if len(keywordSlice) > 0 {
|
|
|
- tmpConditionSlice := make([]string, 0)
|
|
|
- tmpConditionSlice = append(tmpConditionSlice, ` index_name like ? or index_code like ? `)
|
|
|
- pars = utils.GetLikeKeywordPars(pars, keyword, 2)
|
|
|
-
|
|
|
- for _, v := range keywordSlice {
|
|
|
- tmpConditionSlice = append(tmpConditionSlice, ` index_name like ? or index_code like ? `)
|
|
|
- pars = utils.GetLikeKeywordPars(pars, v, 2)
|
|
|
- }
|
|
|
- condition += ` AND (` + strings.Join(tmpConditionSlice, " or ") + `)`
|
|
|
+ defer func() {
|
|
|
+ c.Data["json"] = br
|
|
|
+ c.ServeJSON()
|
|
|
+ }()
|
|
|
|
|
|
- } else {
|
|
|
- condition += ` index_name like ? or index_code like ? `
|
|
|
- pars = utils.GetLikeKeywordPars(pars, keyword, 2)
|
|
|
- }
|
|
|
- }
|
|
|
+ source, _ := c.GetInt("Source")
|
|
|
+ subSource, _ := c.GetInt("SubSource")
|
|
|
+ edbInfoId, _ := c.GetInt("EdbInfoId")
|
|
|
|
|
|
- if isStop >= 0 {
|
|
|
- condition += " AND is_stop = ? "
|
|
|
- pars = append(pars, isStop)
|
|
|
- }
|
|
|
- sortStr := ``
|
|
|
- if sortParam != `` {
|
|
|
- sortStr = fmt.Sprintf("%s %s,base_from_mysteel_chemical_index_id desc ", sortParam, sortType)
|
|
|
- }
|
|
|
- total, list, err = data_manage.GetMysteelChemicalBaseInfo(condition, pars, sortStr, startSize, pageSize)
|
|
|
- case utils.DATA_SOURCE_YS: // 有色
|
|
|
- if classifyId > 0 {
|
|
|
- condition += " AND classify_id = ? "
|
|
|
- pars = append(pars, classifyId)
|
|
|
- }
|
|
|
- if terminalCode != `` {
|
|
|
- condition += " AND terminal_code = ? "
|
|
|
- pars = append(pars, terminalCode)
|
|
|
- }
|
|
|
- if frequency != `` {
|
|
|
- condition += " AND frequency = ? "
|
|
|
- pars = append(pars, frequency)
|
|
|
- }
|
|
|
- if keyword != `` {
|
|
|
- keywordSlice := strings.Split(keyword, ",")
|
|
|
- if len(keywordSlice) > 0 {
|
|
|
- tmpConditionSlice := make([]string, 0)
|
|
|
- tmpConditionSlice = append(tmpConditionSlice, ` index_name like ? or index_code like ? `)
|
|
|
- pars = utils.GetLikeKeywordPars(pars, keyword, 2)
|
|
|
-
|
|
|
- for _, v := range keywordSlice {
|
|
|
- tmpConditionSlice = append(tmpConditionSlice, ` index_name like ? or index_code like ? `)
|
|
|
- pars = utils.GetLikeKeywordPars(pars, v, 2)
|
|
|
- }
|
|
|
- condition += ` AND (` + strings.Join(tmpConditionSlice, " or ") + `)`
|
|
|
+ if source <= 0 {
|
|
|
+ br.Msg = "来源不能为空"
|
|
|
+ br.IsSendEmail = false
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- } else {
|
|
|
- condition += ` index_name like ? or index_code like ? `
|
|
|
- pars = utils.GetLikeKeywordPars(pars, keyword, 2)
|
|
|
- }
|
|
|
- }
|
|
|
+ if edbInfoId <= 0 {
|
|
|
+ br.Msg = "指标不能为空"
|
|
|
+ br.IsSendEmail = false
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- if isStop >= 0 {
|
|
|
- condition += " AND is_stop = ? "
|
|
|
- pars = append(pars, isStop)
|
|
|
- }
|
|
|
+ // 获取指标的刷新配置列表
|
|
|
+ list, err := edb_refresh.GetEdbRefreshConfigListBySourceAndeEdbInfoId(source, subSource, edbInfoId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- sortStr := ``
|
|
|
- if sortParam != `` {
|
|
|
- sortStr = fmt.Sprintf("%s %s,base_from_smm_index_id desc ", sortParam, sortType)
|
|
|
- }
|
|
|
+ if len(list) > 0 {
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = list
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- total, list, err = data_manage.GetSmmBaseInfo(condition, pars, sortStr, startSize, pageSize)
|
|
|
- default:
|
|
|
- condition += ` AND source = ? AND sub_source = ? `
|
|
|
- pars = append(pars, source, subSource)
|
|
|
+ // 如果没有找到该指标的配置,那么就查询默认配置
|
|
|
|
|
|
- if isStop >= 0 {
|
|
|
- condition += " AND no_update = ? "
|
|
|
- pars = append(pars, isStop)
|
|
|
- }
|
|
|
+ var frequency string
|
|
|
|
|
|
- if classifyId > 0 {
|
|
|
- condition += " AND classify_id = ? "
|
|
|
- pars = append(pars, classifyId)
|
|
|
- }
|
|
|
- if terminalCode != `` {
|
|
|
- condition += " AND terminal_code = ? "
|
|
|
- pars = append(pars, terminalCode)
|
|
|
- }
|
|
|
- if sysUserId != `` {
|
|
|
- sysUserIdSlice := strings.Split(sysUserId, ",")
|
|
|
- condition += ` AND sys_user_id IN (` + utils.GetOrmInReplace(len(sysUserIdSlice)) + `)`
|
|
|
- pars = append(pars, sysUserIdSlice)
|
|
|
+ // 根据类型查找指标的频度信息
|
|
|
+ switch source {
|
|
|
+ case utils.DATA_SOURCE_MYSTEEL_CHEMICAL: // 钢联
|
|
|
+ item, err := data_manage.GetBaseFromMysteelChemicalIndexByIndexId(edbInfoId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取指标信息失败"
|
|
|
+ br.ErrMsg = err.Error()
|
|
|
+ return
|
|
|
}
|
|
|
- if frequency != `` {
|
|
|
- condition += " AND frequency = ? "
|
|
|
- pars = append(pars, frequency)
|
|
|
+ frequency = item.Frequency
|
|
|
+ case utils.DATA_SOURCE_YS: // 有色
|
|
|
+ item, err := data_manage.GetSmmIndexById(edbInfoId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取指标信息失败"
|
|
|
+ br.ErrMsg = err.Error()
|
|
|
+ return
|
|
|
}
|
|
|
- if keyword != `` {
|
|
|
- keywordSlice := strings.Split(keyword, ",")
|
|
|
- if len(keywordSlice) > 0 {
|
|
|
- tmpConditionSlice := make([]string, 0)
|
|
|
- tmpConditionSlice = append(tmpConditionSlice, ` edb_name like ? or edb_code like ? `)
|
|
|
- pars = utils.GetLikeKeywordPars(pars, keyword, 2)
|
|
|
-
|
|
|
- for _, v := range keywordSlice {
|
|
|
- tmpConditionSlice = append(tmpConditionSlice, ` edb_name like ? or edb_code like ? `)
|
|
|
- pars = utils.GetLikeKeywordPars(pars, v, 2)
|
|
|
- }
|
|
|
- condition += ` AND (` + strings.Join(tmpConditionSlice, " or ") + `)`
|
|
|
-
|
|
|
- } else {
|
|
|
- condition += ` edb_name like ? or edb_code like ? `
|
|
|
- pars = utils.GetLikeKeywordPars(pars, keyword, 2)
|
|
|
- }
|
|
|
+ frequency = item.Frequency
|
|
|
+ default:
|
|
|
+ item, err := data_manage.GetEdbInfoById(edbInfoId)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取指标信息失败"
|
|
|
+ br.ErrMsg = err.Error()
|
|
|
+ return
|
|
|
}
|
|
|
+ frequency = item.Frequency
|
|
|
+ }
|
|
|
|
|
|
- sortStr := ``
|
|
|
- if sortParam != `` {
|
|
|
- sortStr = fmt.Sprintf("%s %s,edb_info_id desc ", sortParam, sortType)
|
|
|
- }
|
|
|
+ if frequency == `` {
|
|
|
+ br.Msg = "获取的指标频度信息异常"
|
|
|
+ br.IsSendEmail = false
|
|
|
+ return
|
|
|
+ }
|
|
|
|
|
|
- total, list, err = data_manage.GetEdbBaseInfo(condition, pars, sortStr, startSize, pageSize)
|
|
|
+ tmpList, err := edb_refresh.GetListBySourceAndFrequency(source, subSource, frequency)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取失败"
|
|
|
+ br.ErrMsg = err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+ list = make([]*edb_refresh.EdbRefreshConfigItem, 0)
|
|
|
+ for _, v := range tmpList {
|
|
|
+ list = append(list, &edb_refresh.EdbRefreshConfigItem{
|
|
|
+ RefreshFrequency: v.RefreshFrequency,
|
|
|
+ RefreshFrequencyDay: v.RefreshFrequencyDay,
|
|
|
+ RefreshTime: v.RefreshTime,
|
|
|
+ RefreshAllData: v.RefreshAllData,
|
|
|
+ RefreshDataNum: v.RefreshDataNum,
|
|
|
+ })
|
|
|
}
|
|
|
|
|
|
- return
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = list
|
|
|
}
|