duxin пре 10 месеци
родитељ
комит
42a1a71f6a
1 измењених фајлова са 16 додато и 7 уклоњено
  1. 16 7
      manager/columnCron.go

+ 16 - 7
manager/columnCron.go

@@ -263,8 +263,10 @@ func (job *columnJob) ColumnCron(ctx context.Context) {
 			}
 			if len(dArr) > 100 {
 				total += len(dArr)
-				g.DB().Model(job.tableName).Ctx(ctx).WhereIn("bid_id", bidIDs).Delete()
-				g.DB().Insert(ctx, job.tableName, dArr)
+				//g.DB().Model(job.tableName).Ctx(ctx).WhereIn("bid_id", bidIDs).Delete()
+				if _, err = g.DB().Exec(ctx, fmt.Sprintf("DELETE FROM %s_do ON CLUSTER cluster WHERE bid_id in ('%s')", job.tableName, strings.Join(bidIDs, `','`))); err == nil {
+					g.DB().Insert(ctx, job.tableName, dArr)
+				}
 				bidIDs, dArr = []string{}, []ColumnMsg{}
 			}
 		}
@@ -272,8 +274,10 @@ func (job *columnJob) ColumnCron(ctx context.Context) {
 
 	if len(dArr) > 0 {
 		total += len(dArr)
-		g.DB().Model(job.tableName).Ctx(ctx).WhereIn("bid_id", bidIDs).Delete()
-		g.DB().Insert(ctx, job.tableName, dArr)
+		//g.DB().Model(job.tableName).Ctx(ctx).WhereIn("bid_id", bidIDs).Delete()
+		if _, err = g.DB().Exec(ctx, fmt.Sprintf("DELETE FROM %s_do ON CLUSTER cluster WHERE bid_id in ('%s')", job.tableName, strings.Join(bidIDs, `','`))); err == nil {
+			g.DB().Insert(ctx, job.tableName, dArr)
+		}
 	}
 	g.Log().Infof(ctx, "执行加载ColumnCron本次更新更新 total:%d", total)
 }
@@ -310,8 +314,10 @@ func SaveBidSign(ctx context.Context, arr []*BidSign) {
 
 func DelBidSign(ctx context.Context, arr []string) {
 	//保存至数据库
-	g.DB().Model("new_bid_sign").Ctx(ctx).WhereIn("bid_id", arr).Delete()
-
+	//g.DB().Model("new_bid_sign").Ctx(ctx).WhereIn("bid_id", arr).Delete()
+	if _, err := g.DB().Exec(ctx, fmt.Sprintf("DELETE FROM new_bid_sign_do ON CLUSTER cluster WHERE bid_id in ('%s')", strings.Join(arr, `','`))); err != nil {
+		g.Log().Errorf(ctx, "DelBidSign err:%v\n", err.Error())
+	}
 }
 
 func RepeatIds(ctx context.Context) {
@@ -326,7 +332,10 @@ func RepeatIds(ctx context.Context) {
 		repeatIds = append(repeatIds, gconv.String(m["bid_id"]))
 		if len(repeatIds) == 100 || k == count {
 			g.Log().Infof(ctx, "删除重复id %v", repeatIds)
-			g.DB().Delete(context.Background(), "new_bid_sign", "bid_id IN (?)", strings.Join(repeatIds, ","))
+			//g.DB().Delete(context.Background(), "new_bid_sign", "bid_id IN (?)", strings.Join(repeatIds, ","))
+			if _, err = g.DB().Exec(ctx, fmt.Sprintf("DELETE FROM new_bid_sign_do ON CLUSTER cluster WHERE bid_id in ('%s')", strings.Join(repeatIds, `','`))); err != nil {
+				g.Log().Errorf(ctx, "RepeatIds err:%v\n", err.Error())
+			}
 			repeatIds = []string{}
 		}
 	}