|
@@ -6,6 +6,7 @@ import (
|
|
|
"eta/eta_index_lib/models"
|
|
|
"eta/eta_index_lib/utils"
|
|
|
"strconv"
|
|
|
+ "strings"
|
|
|
"time"
|
|
|
)
|
|
|
|
|
@@ -253,3 +254,77 @@ func (this *EdbInfoController) CopyFromHz() {
|
|
|
br.Msg = "新增成功"
|
|
|
br.Data = edbInfo
|
|
|
}
|
|
|
+
|
|
|
+// RefreshCheck @Title 指标数据更新检查
|
|
|
+// @Description 指标数据更新检查
|
|
|
+// @Param request body models.EdbInfoRefreshCheckReq true "type json string"
|
|
|
+// @Success 200 {object} models.EdbInfo
|
|
|
+// @router /refresh_check [post]
|
|
|
+func (this *EdbInfoController) RefreshCheck() {
|
|
|
+ br := new(models.BaseResponse).Init()
|
|
|
+ defer func() {
|
|
|
+ this.Data["json"] = br
|
|
|
+ this.ServeJSON()
|
|
|
+ }()
|
|
|
+ var req models.EdbInfoRefreshCheckReq
|
|
|
+ err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "参数解析异常!"
|
|
|
+ br.ErrMsg = "参数解析失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ if req.Source == 0 {
|
|
|
+ br.Msg = "请输入指标来源"
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if req.LatestDate == "" {
|
|
|
+ br.Msg = "请输入查询日期"
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ _, err = time.Parse(utils.FormatDate, req.LatestDate)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "查询日期格式错误"
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ condition := ` and source=? and no_update=0 `
|
|
|
+ pars := make([]interface{}, 0)
|
|
|
+ pars = append(pars, req.Source)
|
|
|
+
|
|
|
+ if req.FrequencyBatch != "" {
|
|
|
+ frequency := strings.Split(req.FrequencyBatch, ",")
|
|
|
+ condition += ` and frequency in (` + utils.GetOrmInReplace(len(frequency)) + `)`
|
|
|
+ for _, v := range frequency {
|
|
|
+ pars = append(pars, v)
|
|
|
+ }
|
|
|
+ }
|
|
|
+ updateCondition := condition + ` and latest_date = ?`
|
|
|
+ pars = append(pars, req.LatestDate)
|
|
|
+
|
|
|
+ unUpdateCondition := condition + ` and latest_date != ?`
|
|
|
+
|
|
|
+ updateNum, err := models.GetEdbInfoCountByCondition(updateCondition, pars)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取数据失败!"
|
|
|
+ br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ unUpdateNum, err := models.GetEdbInfoCountByCondition(unUpdateCondition, pars)
|
|
|
+ if err != nil {
|
|
|
+ br.Msg = "获取数据失败!"
|
|
|
+ br.ErrMsg = "获取数据失败,Err:" + err.Error()
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ resp := models.EdbInfoRefreshCheckResp{
|
|
|
+ UpdateNum: updateNum,
|
|
|
+ UnUpdateNum: unUpdateNum,
|
|
|
+ }
|
|
|
+ br.Ret = 200
|
|
|
+ br.Success = true
|
|
|
+ br.Msg = "获取成功"
|
|
|
+ br.Data = resp
|
|
|
+}
|