feat: seat count from class dialog

This commit is contained in:
Jannat Patel
2023-05-03 22:47:39 +05:30
parent e10feb3c36
commit b47ff80e9d
3 changed files with 21 additions and 3 deletions

View File

@@ -39,7 +39,7 @@ class LMSClass(Document):
frappe.get_doc(filters).save()
def validate_seats_left(self):
if self.seat_count < len(self.students):
if cint(self.seat_count) < len(self.students):
frappe.throw(_("There are no seats available in this class."))
@@ -166,7 +166,9 @@ def authenticate():
@frappe.whitelist()
def create_class(title, start_date, end_date, description=None, name=None):
def create_class(
title, start_date, end_date, description=None, seat_count=0, name=None
):
if name:
class_details = frappe.get_doc("LMS Class", name)
else:
@@ -178,6 +180,7 @@ def create_class(title, start_date, end_date, description=None, name=None):
"start_date": start_date,
"end_date": end_date,
"description": description,
"seat_count": seat_count,
}
)
class_details.save()

View File

@@ -415,6 +415,12 @@ const open_class_dialog = (e) => {
reqd: 1,
default: class_info && class_info.end_date,
},
{
fieldtype: "Int",
label: __("Seat Count"),
fieldname: "seat_count",
default: class_info && class_info.seat_count,
},
{
fieldtype: "Small Text",
label: __("Description"),
@@ -438,6 +444,7 @@ const create_class = (values) => {
start_date: values.start_date,
end_date: values.end_date,
description: values.description,
seat_count: values.seat_count,
name: class_info && class_info.name,
},
callback: (r) => {

View File

@@ -13,7 +13,15 @@ def get_context(context):
context.class_info = frappe.db.get_value(
"LMS Class",
class_name,
["name", "title", "start_date", "end_date", "description", "custom_component"],
[
"name",
"title",
"start_date",
"end_date",
"description",
"custom_component",
"seat_count",
],
as_dict=True,
)