Fix: Suddenly got errors saying that the redis.enqueue job was running in a different loop
This commit is contained in:
parent
a4db3b24f0
commit
236c746e1c
|
@ -62,12 +62,14 @@ def print_bill(voucher_id: uuid.UUID, db: Session):
|
||||||
for i in [it for it in items_dict.values() if it.quantity != 0]:
|
for i in [it for it in items_dict.values() if it.quantity != 0]:
|
||||||
get_tax_item(i.tax.id, i.tax.name, i.tax_amount, tax)
|
get_tax_item(i.tax.id, i.tax.name, i.tax_amount, tax)
|
||||||
data = design_bill(voucher, list(items_dict.values()), list(tax.values()), db)
|
data = design_bill(voucher, list(items_dict.values()), list(tax.values()), db)
|
||||||
redis: ArqRedis = asyncio.run(create_pool(redis_settings))
|
loop = asyncio.new_event_loop()
|
||||||
asyncio.run(
|
redis: ArqRedis = loop.run_until_complete(create_pool(redis_settings))
|
||||||
|
loop.run_until_complete(
|
||||||
redis.enqueue_job(
|
redis.enqueue_job(
|
||||||
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
loop.close()
|
||||||
|
|
||||||
|
|
||||||
def get_tax_item(
|
def get_tax_item(
|
||||||
|
|
|
@ -28,12 +28,14 @@ def print_cashier_report(report: CashierReport, device_id: uuid.UUID, db: Sessio
|
||||||
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
||||||
).scalar_one()
|
).scalar_one()
|
||||||
|
|
||||||
redis: ArqRedis = asyncio.run(create_pool(redis_settings))
|
loop = asyncio.new_event_loop()
|
||||||
asyncio.run(
|
redis: ArqRedis = loop.run_until_complete(create_pool(redis_settings))
|
||||||
|
loop.run_until_complete(
|
||||||
redis.enqueue_job(
|
redis.enqueue_job(
|
||||||
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
loop.close()
|
||||||
|
|
||||||
|
|
||||||
def design_cashier_report(report: CashierReport):
|
def design_cashier_report(report: CashierReport):
|
||||||
|
|
|
@ -25,12 +25,14 @@ def print_discount_report(report: DiscountReport, device_id: uuid.UUID, db: Sess
|
||||||
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
||||||
).scalar_one()
|
).scalar_one()
|
||||||
|
|
||||||
redis: ArqRedis = asyncio.run(create_pool(redis_settings))
|
loop = asyncio.new_event_loop()
|
||||||
asyncio.run(
|
redis: ArqRedis = loop.run_until_complete(create_pool(redis_settings))
|
||||||
|
loop.run_until_complete(
|
||||||
redis.enqueue_job(
|
redis.enqueue_job(
|
||||||
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
loop.close()
|
||||||
|
|
||||||
|
|
||||||
def design_discount_report(report: DiscountReport):
|
def design_discount_report(report: DiscountReport):
|
||||||
|
|
|
@ -104,13 +104,14 @@ def print_kot(voucher_id: uuid.UUID, db: Session):
|
||||||
if key not in my_hash:
|
if key not in my_hash:
|
||||||
my_hash[key] = (printer, [])
|
my_hash[key] = (printer, [])
|
||||||
my_hash[key][1].append(item)
|
my_hash[key][1].append(item)
|
||||||
redis: ArqRedis = asyncio.run(create_pool(redis_settings))
|
loop = asyncio.new_event_loop()
|
||||||
|
redis: ArqRedis = loop.run_until_complete(create_pool(redis_settings))
|
||||||
for key, value in my_hash.items():
|
for key, value in my_hash.items():
|
||||||
printer_id, copies = key
|
printer_id, copies = key
|
||||||
printer, items = value
|
printer, items = value
|
||||||
for c in range(int(copies)):
|
for c in range(int(copies)):
|
||||||
data = design_kot(voucher, kot, items, c, db)
|
data = design_kot(voucher, kot, items, c, db)
|
||||||
asyncio.run(
|
loop.run_until_complete(
|
||||||
redis.enqueue_job(
|
redis.enqueue_job(
|
||||||
"sent_to_printer",
|
"sent_to_printer",
|
||||||
data,
|
data,
|
||||||
|
@ -119,3 +120,4 @@ def print_kot(voucher_id: uuid.UUID, db: Session):
|
||||||
_queue_name=f"barker:print:{printer.name}",
|
_queue_name=f"barker:print:{printer.name}",
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
loop.close()
|
||||||
|
|
|
@ -26,12 +26,14 @@ def print_product_sale_report(report, device_id: uuid.UUID, db: Session):
|
||||||
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
||||||
).scalar_one()
|
).scalar_one()
|
||||||
|
|
||||||
redis: ArqRedis = asyncio.run(create_pool(redis_settings))
|
loop = asyncio.new_event_loop()
|
||||||
asyncio.run(
|
redis: ArqRedis = loop.run_until_complete(create_pool(redis_settings))
|
||||||
|
loop.run_until_complete(
|
||||||
redis.enqueue_job(
|
redis.enqueue_job(
|
||||||
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
loop.close()
|
||||||
|
|
||||||
|
|
||||||
def design_product_sale_report(report):
|
def design_product_sale_report(report):
|
||||||
|
|
|
@ -28,12 +28,14 @@ def print_sale_report(report: SaleReport, device_id: uuid.UUID, db: Session):
|
||||||
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
.where(SectionPrinter.sale_category_id == None) # noqa: E711
|
||||||
).scalar_one()
|
).scalar_one()
|
||||||
|
|
||||||
redis: ArqRedis = asyncio.run(create_pool(redis_settings))
|
loop = asyncio.new_event_loop()
|
||||||
asyncio.run(
|
redis: ArqRedis = loop.run_until_complete(create_pool(redis_settings))
|
||||||
|
loop.run_until_complete(
|
||||||
redis.enqueue_job(
|
redis.enqueue_job(
|
||||||
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
"sent_to_printer", data, printer.address, printer.cut_code, _queue_name=f"barker:print:{printer.name}"
|
||||||
)
|
)
|
||||||
)
|
)
|
||||||
|
loop.close()
|
||||||
|
|
||||||
|
|
||||||
def design_sale_report(report: SaleReport):
|
def design_sale_report(report: SaleReport):
|
||||||
|
|
Loading…
Reference in New Issue