|
|
@@ -107,13 +107,31 @@ func (s *ServiceDataAbnormalRate) QueryAbnormalRate(ctx context.Context, api req
|
|
|
return nil, 0, err
|
|
|
}
|
|
|
var responseDataList []*response.DataAbnormalRateResponse
|
|
|
-
|
|
|
+ //查询游戏目标
|
|
|
+ var dataTarget []*task.GameTargetComplete
|
|
|
+ db2 := global.GVA_DB.Model(&task.GameTargetComplete{})
|
|
|
+ db2 = db2.Select("task_id", "create_date", "new_target", "pay_target", "retained_target")
|
|
|
+ db2 = db2.Where("create_date >= ? and create_date <= ?", api.Date[0], api.Date[1])
|
|
|
+ err = db2.Order("create_date,task_id").Find(&dataTarget).Error
|
|
|
+ if err != nil {
|
|
|
+ return nil, 0, err
|
|
|
+ }
|
|
|
for _, one := range dataList {
|
|
|
-
|
|
|
temp := new(response.DataAbnormalRateResponse)
|
|
|
//temp.Id = one.Id
|
|
|
//temp.UpdateTime = one.UpdateTime
|
|
|
//temp.CreateTime = one.CreateTime
|
|
|
+ temp.NewTarget = 0
|
|
|
+ temp.RetainedTarget = 0
|
|
|
+ temp.PayTarget = 0
|
|
|
+ for _, target := range dataTarget {
|
|
|
+ if target.CreateDate.Format("2006-01-02") == one.NewDate && target.TaskId == one.TaskId {
|
|
|
+ temp.NewTarget = target.NewTarget
|
|
|
+ temp.RetainedTarget = target.RetainedTarget
|
|
|
+ temp.PayTarget = target.PayTarget
|
|
|
+ break
|
|
|
+ }
|
|
|
+ }
|
|
|
temp.TaskId = one.TaskId
|
|
|
temp.TaskName = one.TaskName
|
|
|
temp.DirectorName = one.DirectorName
|
|
|
@@ -183,8 +201,14 @@ func (s *ServiceDataAbnormalRate) SyncAbnormalRateByBatch() {
|
|
|
global.GVA_LOG.Error("获取机房数据失败RequestXjfTaskData", zap.Error(err))
|
|
|
return
|
|
|
}
|
|
|
- xjfJson, _ := simplejson.NewJson(dataXjf)
|
|
|
- xjfArr, _ := xjfJson.Array()
|
|
|
+ xjfJson, err := simplejson.NewJson(dataXjf)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ xjfArr, err := xjfJson.Array()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
//查询微信扫码订单数
|
|
|
|
|
|
//var num map[string]map[int]int /*创建集合,存储机房查询日志接口返回值 */
|
|
|
@@ -198,10 +222,19 @@ func (s *ServiceDataAbnormalRate) SyncAbnormalRateByBatch() {
|
|
|
if k == "登陆_成功" {
|
|
|
arrNum6 := make(map[int]int)
|
|
|
for _, ss := range action6 {
|
|
|
- result = s.QueryXjfLogByBatch(ss, actionResult)
|
|
|
+ result, err = s.QueryXjfLogByBatch(ss, actionResult)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
if string(result) != "null" {
|
|
|
- dataJson, _ := simplejson.NewJson(result)
|
|
|
- dataArr, _ := dataJson.Array()
|
|
|
+ dataJson, err := simplejson.NewJson(result)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ dataArr, err := dataJson.Array()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
for iii, _ := range dataArr {
|
|
|
info := dataJson.GetIndex(iii)
|
|
|
gameId, _ := info.Get("game_id").Int()
|
|
|
@@ -220,17 +253,32 @@ func (s *ServiceDataAbnormalRate) SyncAbnormalRateByBatch() {
|
|
|
}
|
|
|
num[k] = arrNum6
|
|
|
} else {
|
|
|
- result = s.QueryXjfLogByBatch(action, actionResult)
|
|
|
+ result, err = s.QueryXjfLogByBatch(action, actionResult)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
if string(result) == "null" {
|
|
|
continue
|
|
|
}
|
|
|
- dataJson, _ := simplejson.NewJson(result)
|
|
|
- dataArr, _ := dataJson.Array()
|
|
|
+ dataJson, err := simplejson.NewJson(result)
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ dataArr, err := dataJson.Array()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
arrTemp := make(map[int]int)
|
|
|
for iii, _ := range dataArr {
|
|
|
info := dataJson.GetIndex(iii)
|
|
|
- gameId, _ := info.Get("game_id").Int()
|
|
|
- total, _ := info.Get("total").Int()
|
|
|
+ gameId, err := info.Get("game_id").Int()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ total, err := info.Get("total").Int()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
//global.GVA_LOG.Info(strconv.Itoa(gameId))
|
|
|
//global.GVA_LOG.Info(strconv.Itoa(total))
|
|
|
//var arr = XjfTotal{GameId: gameId, Total: total}
|
|
|
@@ -314,16 +362,27 @@ func (s *ServiceDataAbnormalRate) SyncAbnormalRateByBatch() {
|
|
|
|
|
|
for iii, _ := range xjfArr {
|
|
|
info := xjfJson.GetIndex(iii)
|
|
|
- gameId, _ := info.Get("game_id").Int()
|
|
|
+ gameId, err := info.Get("game_id").Int()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
if gameId == task.TaskId {
|
|
|
- orderSuccessRate, _ = info.Get("order_success_rate").String()
|
|
|
+ orderSuccessRate, err = info.Get("order_success_rate").String()
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
break
|
|
|
}
|
|
|
}
|
|
|
orderSuccessRateArr := strings.Split(orderSuccessRate, "/")
|
|
|
- numOrderPay, _ = strconv.Atoi(orderSuccessRateArr[0]) // 付费订单数
|
|
|
- numPay, _ = strconv.Atoi(orderSuccessRateArr[1]) // 付费成功数
|
|
|
- ratePaySuccess = orderSuccessRateArr[2] //付费成功率
|
|
|
+ if len(orderSuccessRateArr) == 3 {
|
|
|
+ numOrderPay, err = strconv.Atoi(orderSuccessRateArr[0]) // 付费订单数
|
|
|
+ numPay, err = strconv.Atoi(orderSuccessRateArr[1]) // 付费成功数
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ ratePaySuccess = orderSuccessRateArr[2] //付费成功率
|
|
|
+ }
|
|
|
|
|
|
var data dataStatistics.DataAbnormalRate
|
|
|
data.CreateTime = time.Now().Format("2006-01-02 15:04:05")
|
|
|
@@ -352,16 +411,22 @@ func (s *ServiceDataAbnormalRate) SyncAbnormalRateByBatch() {
|
|
|
data.NumPay = numPay
|
|
|
data.RatePaySuccess = ratePaySuccess
|
|
|
|
|
|
- global.GVA_LOG.Info(data.TaskName)
|
|
|
+ //global.GVA_LOG.Info(data.TaskName)
|
|
|
|
|
|
if !errors.Is(global.GVA_DB.Model(&dataStatistics.DataAbnormalRate{}).Where("new_date = ? and task_id = ? and hour = ?", newDate, taskId, hour).First(&dataStatistics.DataAbnormalRate{}).Error, gorm.ErrRecordNotFound) {
|
|
|
//已存在,更新
|
|
|
//global.GVA_LOG.Info("已存在,更新")
|
|
|
- _ = global.GVA_DB.Model(&dataStatistics.DataAbnormalRate{}).Where("new_date = ? and task_id = ? and hour = ?", newDate, taskId, hour).Updates(data).Error
|
|
|
+ err = global.GVA_DB.Model(&dataStatistics.DataAbnormalRate{}).Where("new_date = ? and task_id = ? and hour = ?", newDate, taskId, hour).Updates(data).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
} else {
|
|
|
//不存在,新建
|
|
|
//global.GVA_LOG.Info("不存在,新建")
|
|
|
- _ = global.GVA_DB.Create(&data).Error
|
|
|
+ err = global.GVA_DB.Create(&data).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
|
|
|
@@ -369,7 +434,7 @@ func (s *ServiceDataAbnormalRate) SyncAbnormalRateByBatch() {
|
|
|
}
|
|
|
|
|
|
// QueryXjfLogByBatch 请求机房任务数据
|
|
|
-func (s *ServiceDataAbnormalRate) QueryXjfLogByBatch(action string, actionResult string) (result []byte) {
|
|
|
+func (s *ServiceDataAbnormalRate) QueryXjfLogByBatch(action string, actionResult string) (result []byte, err error) {
|
|
|
today := time.Now().Format("2006-01-02")
|
|
|
jfUrl := "http://xjf.lianyou.fun:8099/v1/device/get_log_by_game"
|
|
|
jfParams := map[string]string{
|
|
|
@@ -377,7 +442,7 @@ func (s *ServiceDataAbnormalRate) QueryXjfLogByBatch(action string, actionResult
|
|
|
"action": action,
|
|
|
"action_result": actionResult,
|
|
|
}
|
|
|
- result, _ = utils.HttpGet(jfUrl, jfParams)
|
|
|
+ result, err = utils.HttpGet(jfUrl, jfParams)
|
|
|
return
|
|
|
}
|
|
|
|