diff --git a/cronjob/vas/fix_diamonds.py b/cronjob/vas/fix_diamonds.py index f8e70b7..25a7d4d 100644 --- a/cronjob/vas/fix_diamonds.py +++ b/cronjob/vas/fix_diamonds.py @@ -14,6 +14,14 @@ class S: def __del__(self): self.mysql_db_vas.close() + def get_mid_now_dias_wdias(self, mid): + sql = "select * from vas_wallet where id=%d" % mid + docs = self.mysql_db_vas.query(sql) + if len(docs) > 0: + doc = docs[0] + return safe_get_int(doc, "diamonds"), safe_get_int(doc, "withdraw_diamonds") + return 0, 0 + # 获取mid: 钻石 def get_mid_dias(self): sql = "select mid, sum(`change`) as dias from vas_ch_income group by mid" @@ -29,8 +37,20 @@ class S: return docs def proc(self): - docs_dias = self.get_mid_dias() docs_wdias = self.get_mid_wdias() + mid_wdias_map = dict() + for dw in docs_wdias: + mid = safe_get_int(dw, "mid") + wdias = safe_get_int(dw, "wdias") + mid_wdias_map[mid] = wdias + + docs_dias = self.get_mid_dias() + for dd in docs_dias: + mid = safe_get_int(dd, "mid") + all_dias = safe_get_int(dd, "dias") + wdias = safe_get_int(mid_wdias_map, mid) + now_dias, now_wdias = self.get_mid_now_dias_wdias(mid) + logger.Info("mid:{}, 总钻石:{}, 背包钻石:{}, 钻石差:{}, 背包提现钻石:{}, 已提现钻石:{}".format(mid, all_dias, now_dias, all_dias - now_dias, now_wdias, wdias)) s = S()