Ejemplo n.º 1
0
    def test_service_level(self):
        employee_group = make_employee_group()
        make_holiday_list()
        make_priorities()

        # Default Service Level
        test_make_service_level = create_service_level("__Test Service Level",
                                                       "__Test Holiday List",
                                                       employee_group, 4, 6)
        get_make_service_level = get_service_level("__Test Service Level")

        self.assertEqual(test_make_service_level.name,
                         get_make_service_level.name)
        self.assertEqual(test_make_service_level.holiday_list,
                         get_make_service_level.holiday_list)
        self.assertEqual(test_make_service_level.employee_group,
                         get_make_service_level.employee_group)

        # Service Level
        test_make_service_level = create_service_level("_Test Service Level",
                                                       "__Test Holiday List",
                                                       employee_group, 2, 3)
        get_make_service_level = get_service_level("_Test Service Level")

        self.assertEqual(test_make_service_level.name,
                         get_make_service_level.name)
        self.assertEqual(test_make_service_level.holiday_list,
                         get_make_service_level.holiday_list)
        self.assertEqual(test_make_service_level.employee_group,
                         get_make_service_level.employee_group)
Ejemplo n.º 2
0
def create_service_level_for_sla():
    employee_group = make_employee_group()
    make_holiday_list()
    make_priorities()

    # Default Service Level
    create_service_level("__Test Service Level", "__Test Holiday List",
                         employee_group, 4, 6)

    # Service Level
    create_service_level("_Test Service Level", "__Test Holiday List",
                         employee_group, 2, 3)
Ejemplo n.º 3
0
def create_service_level_agreement(default_service_level_agreement,
                                   holiday_list, employee_group, response_time,
                                   entity_type, entity, resolution_time):

    employee_group = make_employee_group()
    make_holiday_list()
    make_priorities()

    service_level_agreement = frappe.get_doc({
        "doctype":
        "Service Level Agreement",
        "enable":
        1,
        "service_level":
        "__Test Service Level",
        "default_service_level_agreement":
        default_service_level_agreement,
        "default_priority":
        "Medium",
        "holiday_list":
        holiday_list,
        "employee_group":
        employee_group,
        "entity_type":
        entity_type,
        "entity":
        entity,
        "start_date":
        frappe.utils.getdate(),
        "end_date":
        frappe.utils.add_to_date(frappe.utils.getdate(), days=100),
        "priorities": [{
            "priority": "Low",
            "response_time": response_time,
            "response_time_period": "Hour",
            "resolution_time": resolution_time,
            "resolution_time_period": "Hour",
        }, {
            "priority": "Medium",
            "response_time": response_time,
            "default_priority": 1,
            "response_time_period": "Hour",
            "resolution_time": resolution_time,
            "resolution_time_period": "Hour",
        }, {
            "priority": "High",
            "response_time": response_time,
            "response_time_period": "Hour",
            "resolution_time": resolution_time,
            "resolution_time_period": "Hour",
        }],
        "pause_sla_on": [{
            "status": "Replied"
        }],
        "support_and_resolution": [{
            "workday": "Monday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Tuesday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Wednesday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Thursday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Friday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Saturday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Sunday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }]
    })

    filters = {
        "default_service_level_agreement":
        service_level_agreement.default_service_level_agreement,
        "service_level": service_level_agreement.service_level
    }

    if not default_service_level_agreement:
        filters.update({"entity_type": entity_type, "entity": entity})

    service_level_agreement_exists = frappe.db.exists(
        "Service Level Agreement", filters)

    if not service_level_agreement_exists:
        service_level_agreement.insert(ignore_permissions=True)
        return service_level_agreement
    else:
        return frappe.get_doc("Service Level Agreement",
                              service_level_agreement_exists)
Ejemplo n.º 4
0
def make_service_level():
    employee_group = make_employee_group()
    make_holiday_list()

    # Default Service Level Agreement
    default_service_level = frappe.get_doc({
        "doctype":
        "Service Level",
        "service_level":
        "__Test Service Level",
        "holiday_list":
        "__Test Holiday List",
        "priority":
        "Medium",
        "employee_group":
        employee_group,
        "response_time":
        4,
        "response_time_period":
        "Hour",
        "resolution_time":
        6,
        "resolution_time_period":
        "Hour",
        "support_and_resolution": [{
            "workday": "Monday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Tuesday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Wednesday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Thursday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Friday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Saturday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Sunday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }]
    })

    default_service_level_exists = frappe.db.exists("Service Level",
                                                    "__Test Service Level")
    if not default_service_level_exists:
        default_service_level.insert()

    service_level = frappe.get_doc({
        "doctype":
        "Service Level",
        "service_level":
        "_Test Service Level",
        "holiday_list":
        "__Test Holiday List",
        "priority":
        "Medium",
        "employee_group":
        employee_group,
        "response_time":
        2,
        "response_time_period":
        "Day",
        "resolution_time":
        3,
        "resolution_time_period":
        "Day",
        "support_and_resolution": [{
            "workday": "Monday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Tuesday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Wednesday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Thursday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Friday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Saturday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }, {
            "workday": "Sunday",
            "start_time": "10:00:00",
            "end_time": "18:00:00",
        }]
    })
    service_level_exist = frappe.db.exists("Service Level",
                                           "_Test Service Level")
    if not service_level_exist:
        service_level.insert()
        return service_level.service_level
    else:
        return service_level_exist