fix: pos closing valdation (#24605)
diff --git a/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.py b/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.py
index edf3d5a..f5224a2 100644
--- a/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.py
+++ b/erpnext/accounts/doctype/pos_closing_entry/pos_closing_entry.py
@@ -20,11 +20,16 @@
self.validate_pos_invoices()
def validate_pos_closing(self):
- user = frappe.get_all("POS Closing Entry",
- filters = { "user": self.user, "docstatus": 1, "pos_profile": self.pos_profile },
- or_filters = {
- "period_start_date": ("between", [self.period_start_date, self.period_end_date]),
- "period_end_date": ("between", [self.period_start_date, self.period_end_date])
+ user = frappe.db.sql("""
+ SELECT name FROM `tabPOS Closing Entry`
+ WHERE
+ user = %(user)s AND docstatus = 1 AND pos_profile = %(profile)s AND
+ (period_start_date between %(start)s and %(end)s OR period_end_date between %(start)s and %(end)s)
+ """, {
+ 'user': self.user,
+ 'profile': self.pos_profile,
+ 'start': self.period_start_date,
+ 'end': self.period_end_date
})
if user:
diff --git a/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py b/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
index 58409cd..c88d679 100644
--- a/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
+++ b/erpnext/accounts/doctype/pos_invoice_merge_log/pos_invoice_merge_log.py
@@ -212,8 +212,8 @@
invoice_by_customer = get_invoice_customer_map(invoices)
if len(invoices) >= 5 and closing_entry:
- enqueue_job(create_merge_logs, invoice_by_customer, closing_entry)
closing_entry.set_status(update=True, status='Queued')
+ enqueue_job(create_merge_logs, invoice_by_customer, closing_entry)
else:
create_merge_logs(invoice_by_customer, closing_entry)
@@ -225,8 +225,8 @@
)
if len(merge_logs) >= 5:
- enqueue_job(cancel_merge_logs, merge_logs, closing_entry)
closing_entry.set_status(update=True, status='Queued')
+ enqueue_job(cancel_merge_logs, merge_logs, closing_entry)
else:
cancel_merge_logs(merge_logs, closing_entry)