2024-02-04 23:43:55 +08:00
|
|
|
from lib.all import *
|
|
|
|
|
|
|
|
service_name = 'rev_period_data'
|
|
|
|
log_dir = '/app/log'
|
|
|
|
logger = Logger(service_name, log_dir=log_dir)
|
|
|
|
|
|
|
|
|
|
|
|
class S:
|
|
|
|
def __init__(self):
|
2024-02-04 23:50:55 +08:00
|
|
|
self.mysql_db_vas = Mysql(
|
|
|
|
"rm-bp11t1616a1kjvmx5.mysql.rds.aliyuncs.com", 3306, "vas", "root", "Wishpal2024"
|
2024-02-04 23:43:55 +08:00
|
|
|
)
|
|
|
|
|
|
|
|
def __del__(self):
|
2024-02-04 23:50:55 +08:00
|
|
|
self.mysql_db_vas.close()
|
2024-02-04 23:43:55 +08:00
|
|
|
|
|
|
|
# 获取订单
|
|
|
|
def get_orders(self):
|
2024-02-05 00:12:25 +08:00
|
|
|
sql = "select * from vas_order where ct<{} and order_status=1 and product_id='membership'".format(int(time.time()) - 86400 * 7)
|
|
|
|
logger.Info("get_orders sql: {}".format(sql))
|
2024-02-04 23:53:11 +08:00
|
|
|
docs = self.mysql_db_vas.query(sql)
|
2024-02-05 00:01:17 +08:00
|
|
|
return docs
|
|
|
|
|
|
|
|
# 结算一个订单
|
|
|
|
@staticmethod
|
|
|
|
def deal_one_order(order_id):
|
|
|
|
url = "https://api.tiefen.fun/api/vas/deal_one_order"
|
|
|
|
param = {
|
|
|
|
"order_id": order_id
|
|
|
|
}
|
|
|
|
res = call_service(url, param)
|
|
|
|
return res
|
2024-02-04 23:53:11 +08:00
|
|
|
|
2024-02-05 00:12:25 +08:00
|
|
|
# 获取金币订单
|
2024-02-04 23:53:11 +08:00
|
|
|
def get_coin_orders(self):
|
2024-02-05 00:12:25 +08:00
|
|
|
sql = "select * from vas_coin_order where ct<{} and order_status in (1,2,3,4)".format(int(time.time()) - 86400 * 7)
|
2024-02-05 00:01:17 +08:00
|
|
|
logger.Info("get_coin_orders sql: {}".format(sql))
|
2024-02-04 23:50:55 +08:00
|
|
|
docs = self.mysql_db_vas.query(sql)
|
2024-02-05 00:12:25 +08:00
|
|
|
return docs
|
|
|
|
|
|
|
|
# 结算一个订单
|
|
|
|
@staticmethod
|
|
|
|
def deal_one_coin_order(coin_order_id):
|
|
|
|
url = "https://api.tiefen.fun/api/vas/deal_one_coin_order"
|
|
|
|
param = {
|
|
|
|
"coin_order_id": coin_order_id
|
|
|
|
}
|
|
|
|
res = call_service(url, param)
|
|
|
|
return res
|
2024-02-04 23:43:55 +08:00
|
|
|
|
|
|
|
def proc(self):
|
2024-02-05 00:01:17 +08:00
|
|
|
logger.Info("==== start: {} ====".format(get_time_str_by_ts(int(time.time()))))
|
|
|
|
logger.Info("==== start_order: {} ====".format(get_time_str_by_ts(int(time.time()))))
|
|
|
|
orders = self.get_orders()
|
|
|
|
logger.Info("len(orders): {}".format(len(orders)))
|
2024-02-05 00:12:25 +08:00
|
|
|
if orders and len(orders) > 0:
|
|
|
|
idx = 0
|
|
|
|
for order in orders:
|
|
|
|
idx += 1
|
|
|
|
order_id = safe_get_str(order, "id")
|
|
|
|
res = self.deal_one_order(order_id)
|
|
|
|
logger.Info("{}/{} deal_one_order, {}, {}, {}".format(idx, len(orders), order_id, dict2json(res), dict2json(order)))
|
2024-02-05 00:01:17 +08:00
|
|
|
|
2024-02-05 00:12:25 +08:00
|
|
|
logger.Info("==== start_coin_order: {} ====".format(get_time_str_by_ts(int(time.time()))))
|
|
|
|
coin_orders = self.get_coin_orders()
|
|
|
|
logger.Info("len(coin_orders): {}".format(len(coin_orders)))
|
|
|
|
if coin_orders and len(coin_orders) > 0:
|
|
|
|
idx = 0
|
|
|
|
for coin_order in coin_orders:
|
|
|
|
idx += 1
|
|
|
|
order_id = safe_get_str(coin_order, "id")
|
|
|
|
res = self.deal_one_coin_order(order_id)
|
|
|
|
logger.Info("{}/{} deal_one_coin_order, {}, {}, {}".format(idx, len(orders), order_id, res, coin_order))
|
|
|
|
logger.Info("==== end: {} ====".format(get_time_str_by_ts(int(time.time()))))
|
2024-02-04 23:43:55 +08:00
|
|
|
return
|
2024-02-04 23:47:16 +08:00
|
|
|
|
|
|
|
|
|
|
|
s = S()
|
2024-02-05 00:02:07 +08:00
|
|
|
s.proc()
|