refactor: replace raw sql with orm

This commit is contained in:
Mangesh-Khairnar 2019-08-14 16:09:16 +05:30
parent dab5b1f319
commit 107b2768fd
2 changed files with 8 additions and 2 deletions

View File

@ -5,6 +5,7 @@ from __future__ import unicode_literals
import calendar
import frappe
from datetime import datetime
from frappe.utils import today
from frappe import _
from frappe.model.document import Document
@ -12,6 +13,12 @@ from frappe.model.document import Document
class LeaveType(Document):
def validate(self):
if self.is_lwp:
leave_allocation = frappe.db.sql_list("""select name from `tabLeave Allocation` where leave_type=%s""", (self.name))
leave_allocation = frappe.get_all("Leave Allocation", filters={
'leave_type': self.name,
'from_date': ("<=", today()),
'to_date': (">=", today())
}, ['name'])
leave_allocation = [l['name'] for l in leave_allocation]
frappe.db("""select name from `tabLeave Allocation` where leave_type=%s""", (self.name))
if leave_allocation:
frappe.throw(_('Leave application is linked with leave allocations {0}. Leave application cannot be set as leave without pay').format(", ".join(leave_allocation))) #nosec

View File

@ -323,7 +323,6 @@ def allocate_earned_leaves():
allocation.db_set("total_leaves_allocated", new_allocation, update_modified=False)
create_earned_leave_ledger_entry(allocation, earned_leaves, today)
def create_earned_leave_ledger_entry(allocation, earned_leaves, date):
''' Create leave ledger entry based on the earned leave frequency '''
allocation.new_leaves_allocated = earned_leaves