refactor: SLA form fields
This commit is contained in:
parent
c46c8dd6c5
commit
210f593a49
@ -22,10 +22,41 @@ frappe.ui.form.on('Service Level Agreement', {
|
||||
refresh: function(frm) {
|
||||
frm.trigger('fetch_status_fields');
|
||||
frm.trigger('toggle_resolution_fields');
|
||||
frm.trigger('default_service_level_agreement');
|
||||
frm.trigger('entity');
|
||||
},
|
||||
|
||||
default_service_level_agreement: function(frm) {
|
||||
const field = frm.get_field('default_service_level_agreement');
|
||||
if (frm.doc.default_service_level_agreement) {
|
||||
field.set_description(__('SLA will be applied on every {0}', [frm.doc.document_type]));
|
||||
} else {
|
||||
field.set_description(__('Enable to apply SLA on every {0}', [frm.doc.document_type]));
|
||||
}
|
||||
},
|
||||
|
||||
document_type: function(frm) {
|
||||
frm.trigger('fetch_status_fields');
|
||||
frm.trigger('default_service_level_agreement');
|
||||
},
|
||||
|
||||
entity_type: function(frm) {
|
||||
frm.set_value('entity', undefined);
|
||||
},
|
||||
|
||||
entity: function(frm) {
|
||||
const field = frm.get_field('entity');
|
||||
if (frm.doc.entity) {
|
||||
const and_descendants = frm.doc.entity_type != 'Customer' ? __(' or its descendants') : '';
|
||||
field.set_description(
|
||||
__('SLA will be applied if {1} is set as {2}{3}', [
|
||||
frm.doc.document_type, frm.doc.entity_type,
|
||||
frm.doc.entity, and_descendants
|
||||
])
|
||||
);
|
||||
} else {
|
||||
field.set_description('');
|
||||
}
|
||||
},
|
||||
|
||||
fetch_status_fields: function(frm) {
|
||||
|
@ -6,22 +6,17 @@
|
||||
"editable_grid": 1,
|
||||
"engine": "InnoDB",
|
||||
"field_order": [
|
||||
"enabled",
|
||||
"section_break_2",
|
||||
"document_type",
|
||||
"default_service_level_agreement",
|
||||
"default_priority",
|
||||
"column_break_2",
|
||||
"service_level",
|
||||
"holiday_list",
|
||||
"entity_section",
|
||||
"entity_type",
|
||||
"column_break_10",
|
||||
"entity",
|
||||
"enabled",
|
||||
"filters_section",
|
||||
"condition",
|
||||
"default_service_level_agreement",
|
||||
"entity_type",
|
||||
"entity",
|
||||
"column_break_15",
|
||||
"condition_description",
|
||||
"condition",
|
||||
"agreement_details_section",
|
||||
"start_date",
|
||||
"column_break_7",
|
||||
@ -31,8 +26,10 @@
|
||||
"priorities",
|
||||
"status_details",
|
||||
"sla_fulfilled_on",
|
||||
"column_break_22",
|
||||
"pause_sla_on",
|
||||
"support_and_resolution_section_break",
|
||||
"holiday_list",
|
||||
"support_and_resolution"
|
||||
],
|
||||
"fields": [
|
||||
@ -42,7 +39,8 @@
|
||||
"in_list_view": 1,
|
||||
"in_standard_filter": 1,
|
||||
"label": "Service Level Name",
|
||||
"reqd": 1
|
||||
"reqd": 1,
|
||||
"set_only_once": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "holiday_list",
|
||||
@ -56,10 +54,10 @@
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"depends_on": "eval: !doc.default_service_level_agreement",
|
||||
"depends_on": "eval: doc.document_type",
|
||||
"fieldname": "agreement_details_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Agreement Details"
|
||||
"label": "Valid From"
|
||||
},
|
||||
{
|
||||
"fieldname": "start_date",
|
||||
@ -72,7 +70,6 @@
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"depends_on": "eval: !doc.default_service_level_agreement",
|
||||
"fieldname": "end_date",
|
||||
"fieldtype": "Date",
|
||||
"label": "End Date"
|
||||
@ -80,7 +77,7 @@
|
||||
{
|
||||
"fieldname": "response_and_resolution_time_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Response and Resolution Time"
|
||||
"label": "Response and Resolution"
|
||||
},
|
||||
{
|
||||
"fieldname": "support_and_resolution_section_break",
|
||||
@ -90,6 +87,7 @@
|
||||
{
|
||||
"fieldname": "support_and_resolution",
|
||||
"fieldtype": "Table",
|
||||
"label": "Working Hours",
|
||||
"options": "Service Day",
|
||||
"reqd": 1
|
||||
},
|
||||
@ -101,10 +99,7 @@
|
||||
"reqd": 1
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_10",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"depends_on": "eval: !doc.default_service_level_agreement",
|
||||
"fieldname": "entity",
|
||||
"fieldtype": "Dynamic Link",
|
||||
"in_list_view": 1,
|
||||
@ -114,22 +109,12 @@
|
||||
},
|
||||
{
|
||||
"depends_on": "eval: !doc.default_service_level_agreement",
|
||||
"fieldname": "entity_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Entity"
|
||||
},
|
||||
{
|
||||
"fieldname": "entity_type",
|
||||
"fieldtype": "Select",
|
||||
"in_standard_filter": 1,
|
||||
"label": "Entity Type",
|
||||
"options": "\nCustomer\nCustomer Group\nTerritory"
|
||||
},
|
||||
{
|
||||
"fieldname": "section_break_2",
|
||||
"fieldtype": "Section Break",
|
||||
"hide_border": 1
|
||||
},
|
||||
{
|
||||
"default": "0",
|
||||
"fieldname": "default_service_level_agreement",
|
||||
@ -152,7 +137,7 @@
|
||||
{
|
||||
"fieldname": "document_type",
|
||||
"fieldtype": "Link",
|
||||
"label": "Document Type",
|
||||
"label": "Apply On",
|
||||
"options": "DocType",
|
||||
"reqd": 1,
|
||||
"set_only_once": 1
|
||||
@ -164,6 +149,7 @@
|
||||
"label": "Enabled"
|
||||
},
|
||||
{
|
||||
"depends_on": "document_type",
|
||||
"fieldname": "status_details",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Status Details"
|
||||
@ -182,28 +168,31 @@
|
||||
"label": "Apply SLA for Resolution Time"
|
||||
},
|
||||
{
|
||||
"depends_on": "document_type",
|
||||
"fieldname": "filters_section",
|
||||
"fieldtype": "Section Break",
|
||||
"label": "Assignment Condition"
|
||||
"label": "Assignment Conditions"
|
||||
},
|
||||
{
|
||||
"fieldname": "column_break_15",
|
||||
"fieldtype": "Column Break"
|
||||
},
|
||||
{
|
||||
"depends_on": "eval: !doc.default_service_level_agreement",
|
||||
"description": "Simple Python Expression, Example: doc.status == 'Open' and doc.issue_type == 'Bug'",
|
||||
"fieldname": "condition",
|
||||
"fieldtype": "Code",
|
||||
"label": "Condition",
|
||||
"options": "Python"
|
||||
"max_height": "7rem",
|
||||
"options": "PythonExpression"
|
||||
},
|
||||
{
|
||||
"fieldname": "condition_description",
|
||||
"fieldtype": "HTML",
|
||||
"options": "<p><strong>Condition Examples:</strong></p>\n<pre>doc.status==\"Open\"<br>doc.due_date==nowdate()<br>doc.total > 40000\n</pre>"
|
||||
"fieldname": "column_break_22",
|
||||
"fieldtype": "Column Break"
|
||||
}
|
||||
],
|
||||
"links": [],
|
||||
"modified": "2021-10-02 11:32:55.556024",
|
||||
"modified": "2021-11-26 15:45:33.289911",
|
||||
"modified_by": "Administrator",
|
||||
"module": "Support",
|
||||
"name": "Service Level Agreement",
|
||||
|
Loading…
x
Reference in New Issue
Block a user