Merge pull request #28550 from nextchamp-saqib/fix-sla

refactor(SLA): Application of SLA and its fields
This commit is contained in:
Saqib
2021-12-13 10:29:56 +05:30
committed by GitHub
13 changed files with 497 additions and 408 deletions

View File

@@ -835,7 +835,7 @@ $(document).on('app_ready', function() {
refresh: function(frm) {
if (frm.doc.status !== 'Closed' && frm.doc.service_level_agreement
&& frm.doc.agreement_status === 'Ongoing') {
&& ['First Response Due', 'Resolution Due'].includes(frm.doc.agreement_status)) {
frappe.call({
'method': 'frappe.client.get',
args: {
@@ -888,8 +888,8 @@ $(document).on('app_ready', function() {
function set_time_to_resolve_and_response(frm, apply_sla_for_resolution) {
frm.dashboard.clear_headline();
let time_to_respond = get_status(frm.doc.response_by_variance);
if (!frm.doc.first_responded_on && frm.doc.agreement_status === 'Ongoing') {
let time_to_respond = get_status(frm.doc.response_by);
if (!frm.doc.first_responded_on) {
time_to_respond = get_time_left(frm.doc.response_by, frm.doc.agreement_status);
}
@@ -903,8 +903,8 @@ function set_time_to_resolve_and_response(frm, apply_sla_for_resolution) {
if (apply_sla_for_resolution) {
let time_to_resolve = get_status(frm.doc.resolution_by_variance);
if (!frm.doc.resolution_date && frm.doc.agreement_status === 'Ongoing') {
let time_to_resolve = get_status(frm.doc.resolution_by);
if (!frm.doc.resolution_date) {
time_to_resolve = get_time_left(frm.doc.resolution_by, frm.doc.agreement_status);
}
@@ -928,8 +928,9 @@ function get_time_left(timestamp, agreement_status) {
return {'diff_display': diff_display, 'indicator': indicator};
}
function get_status(variance) {
if (variance > 0) {
function get_status(timestamp) {
const time_left = moment(timestamp).diff(moment());
if (time_left >= 0) {
return {'diff_display': 'Fulfilled', 'indicator': 'green'};
} else {
return {'diff_display': 'Failed', 'indicator': 'red'};