fix Session in the Sales registers

This commit is contained in:
Vladless
2026-02-12 15:12:06 +03:00
parent a35b233928
commit 4e4a51fc72
2 changed files with 12 additions and 9 deletions
+6 -5
View File
@@ -333,15 +333,16 @@ async def generate_heleket_payment_link(
""" """
url = "https://api.heleket.com/v1/payment" url = "https://api.heleket.com/v1/payment"
unique_order_id = f"{int(time.time())}_{tg_id}" unique_order_id = f"{int(time.time())}_{tg_id}"
db_session = session
try: try:
async with aiohttp.ClientSession() as session: async with aiohttp.ClientSession() as http_session:
pay_cur = str(method["currency"]).upper() pay_cur = str(method["currency"]).upper()
if pay_cur == "RUB": if pay_cur == "RUB":
payment_amount = Decimal(str(amount)).quantize(Decimal("0.01"), rounding=ROUND_HALF_UP) payment_amount = Decimal(str(amount)).quantize(Decimal("0.01"), rounding=ROUND_HALF_UP)
else: else:
rate = await get_rub_rate(pay_cur, session=session) rate = await get_rub_rate(pay_cur, session=http_session)
payment_amount = (Decimal(str(amount)) * rate).quantize(Decimal("0.01"), rounding=ROUND_HALF_UP) payment_amount = (Decimal(str(amount)) * rate).quantize(Decimal("0.01"), rounding=ROUND_HALF_UP)
data = { data = {
@@ -367,16 +368,16 @@ async def generate_heleket_payment_link(
"Content-Type": "application/json", "Content-Type": "application/json",
} }
async with session.post(url, headers=headers, data=json_data, timeout=60) as resp: async with http_session.post(url, headers=headers, data=json_data, timeout=60) as resp:
if resp.status == 200: if resp.status == 200:
try: try:
resp_json = await resp.json() resp_json = await resp.json()
if resp_json.get("state") == 0: if resp_json.get("state") == 0:
payment_url = resp_json.get("result", {}).get("url") payment_url = resp_json.get("result", {}).get("url")
if payment_url: if payment_url:
if session is not None: if db_session is not None:
await add_payment( await add_payment(
session=session, session=db_session,
tg_id=tg_id, tg_id=tg_id,
amount=float(amount), amount=float(amount),
payment_system="HELEKET", payment_system="HELEKET",
+6 -4
View File
@@ -387,18 +387,20 @@ async def generate_kassai_payment_link(
data = {**data_for_signature, "signature": signature} data = {**data_for_signature, "signature": signature}
db_session = session
try: try:
async with aiohttp.ClientSession() as session: async with aiohttp.ClientSession() as http_session:
async with session.post(url, headers=headers, json=data, timeout=60) as resp: async with http_session.post(url, headers=headers, json=data, timeout=60) as resp:
if resp.status == 200: if resp.status == 200:
try: try:
resp_json = await resp.json() resp_json = await resp.json()
if resp_json.get("type") == "success": if resp_json.get("type") == "success":
payment_url = resp_json.get("location") payment_url = resp_json.get("location")
if payment_url: if payment_url:
if session is not None: if db_session is not None:
await add_payment( await add_payment(
session=session, session=db_session,
tg_id=tg_id, tg_id=tg_id,
amount=float(amount), amount=float(amount),
payment_system="KASSAI", payment_system="KASSAI",