From 5170760a273577063fa4fdcd846ef41f97864344 Mon Sep 17 00:00:00 2001 From: amansinghbais Date: Thu, 7 Dec 2023 16:38:30 +0530 Subject: [PATCH 1/4] Improved: code to display reason for job failed (#641) --- src/components/JobHistoryModal.vue | 2 +- src/store/modules/job/actions.ts | 2 +- src/views/Pipeline.vue | 9 +++++++-- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/components/JobHistoryModal.vue b/src/components/JobHistoryModal.vue index 51befe55..bc4e032c 100644 --- a/src/components/JobHistoryModal.vue +++ b/src/components/JobHistoryModal.vue @@ -99,7 +99,7 @@ export default defineComponent({ "statusId_op": "in", "systemJobEnumId": this.currentJob?.systemJobEnumId }, - "fieldList": [ "runTime", "statusId" ], + "fieldList": [ "jobResult", "runTime", "statusId" ], "noConditionFind": "Y", "viewSize": process.env.VUE_APP_VIEW_SIZE, "orderBy": "runTime DESC" diff --git a/src/store/modules/job/actions.ts b/src/store/modules/job/actions.ts index d551277a..7a289e4d 100644 --- a/src/store/modules/job/actions.ts +++ b/src/store/modules/job/actions.ts @@ -52,7 +52,7 @@ const actions: ActionTree = { "shopId_fld1_grp": "2", "shopId_fld1_op": "empty" } as any, - "fieldList": [ "systemJobEnumId", "runTime", "tempExprId", "parentJobId", "serviceName", "jobId", "jobName", "statusId", "cancelDateTime", "finishDateTime", "startDateTime" , "enumTypeId", "enumName", "description", "runtimeDataId" ], + "fieldList": [ "systemJobEnumId", "runTime", "tempExprId", "parentJobId", "serviceName", "jobId", "jobName", "jobResult", "statusId", "cancelDateTime", "finishDateTime", "startDateTime" , "enumTypeId", "enumName", "description", "runtimeDataId" ], "noConditionFind": "Y", "viewSize": payload.viewSize, "viewIndex": payload.viewIndex, diff --git a/src/views/Pipeline.vue b/src/views/Pipeline.vue index 27035393..07f379c3 100644 --- a/src/views/Pipeline.vue +++ b/src/views/Pipeline.vue @@ -205,6 +205,10 @@ {{ job.serviceName }} + + + {{ job.jobResult }} +
@@ -291,7 +295,7 @@ import { IonButtons } from "@ionic/vue"; import JobConfiguration from '@/components/JobConfiguration.vue' -import { closeCircleOutline, codeWorkingOutline, copyOutline, ellipsisVerticalOutline, filterOutline, pinOutline, refreshOutline, timeOutline, timerOutline } from "ionicons/icons"; +import { closeCircleOutline, codeWorkingOutline, copyOutline, ellipsisVerticalOutline, filterOutline, pinOutline, refreshOutline, timeOutline, timerOutline, warningOutline } from "ionicons/icons"; import emitter from '@/event-bus'; import JobHistoryModal from '@/components/JobHistoryModal.vue'; import { Plugins } from '@capacitor/core'; @@ -611,7 +615,8 @@ export default defineComponent({ segmentSelected, router, filterOutline, - hasPermission + hasPermission, + warningOutline }; } }); From 55023dc74f0ed8b2e57530940fc9af8377a6f188 Mon Sep 17 00:00:00 2001 From: amansinghbais Date: Fri, 8 Dec 2023 11:18:19 +0530 Subject: [PATCH 2/4] Improved: code to display failed job reason in modal which opens on clicking badge(#641) --- src/locales/en.json | 1 + src/views/FailedJobReasonModal.vue | 58 ++++++++++++++++++++++++++++++ src/views/Pipeline.vue | 15 +++++--- 3 files changed, 69 insertions(+), 5 deletions(-) create mode 100644 src/views/FailedJobReasonModal.vue diff --git a/src/locales/en.json b/src/locales/en.json index db36d530..d9a845ba 100644 --- a/src/locales/en.json +++ b/src/locales/en.json @@ -85,6 +85,7 @@ "Every 6 hours": "Every 6 hours", "Every day": "Every day", "Failed": "Failed", + "Failed job reason": "Failed job reason", "Failed to schedule service(s)": "Failed to schedule {count} service(s)", "Fetching TimeZones": "Fetching TimeZones", "File upload status": "File upload status", diff --git a/src/views/FailedJobReasonModal.vue b/src/views/FailedJobReasonModal.vue new file mode 100644 index 00000000..147c010d --- /dev/null +++ b/src/views/FailedJobReasonModal.vue @@ -0,0 +1,58 @@ + + + \ No newline at end of file diff --git a/src/views/Pipeline.vue b/src/views/Pipeline.vue index 07f379c3..01bce2bf 100644 --- a/src/views/Pipeline.vue +++ b/src/views/Pipeline.vue @@ -179,7 +179,7 @@
{{ job.statusId == "SERVICE_CANCELLED" || job.statusId == "SERVICE_CRASHED" ? timeFromNow(job.cancelDateTime) : timeFromNow(job.finishDateTime) }} - {{ job.statusDesc }} + {{ job.statusDesc }}
@@ -205,10 +205,6 @@ {{ job.serviceName }} - - - {{ job.jobResult }} -
@@ -303,6 +299,7 @@ import { showToast } from '@/utils' import JobActionsPopover from '@/components/JobActionsPopover.vue' import { Actions, hasPermission } from '@/authorization' import Filters from '@/components/Filters.vue'; +import FailedJobReasonModal from '@/views/FailedJobReasonModal.vue' export default defineComponent({ name: "Pipeline", @@ -394,6 +391,14 @@ export default defineComponent({ this.segmentSelected === 'running' ? this.getRunningJobs(): this.getJobHistory(); }, + async openFailedJobReason(job: any) { + const jobHistoryModal = await modalController.create({ + component: FailedJobReasonModal, + componentProps: { currentJob: job } + }); + + return jobHistoryModal.present(); + }, getJobExecutionTime(startTime: any, endTime: any){ if (startTime && endTime) { const timeDiff = DateTime.fromMillis(endTime).diff( DateTime.fromMillis(startTime)) From 21e16208ef341f6eae4bb237f02307b976d83a10 Mon Sep 17 00:00:00 2001 From: amansinghbais Date: Fri, 8 Dec 2023 11:34:14 +0530 Subject: [PATCH 3/4] Improved: unused imports removed (#641) --- src/views/Pipeline.vue | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/views/Pipeline.vue b/src/views/Pipeline.vue index 01bce2bf..4d4e8766 100644 --- a/src/views/Pipeline.vue +++ b/src/views/Pipeline.vue @@ -291,7 +291,7 @@ import { IonButtons } from "@ionic/vue"; import JobConfiguration from '@/components/JobConfiguration.vue' -import { closeCircleOutline, codeWorkingOutline, copyOutline, ellipsisVerticalOutline, filterOutline, pinOutline, refreshOutline, timeOutline, timerOutline, warningOutline } from "ionicons/icons"; +import { closeCircleOutline, codeWorkingOutline, copyOutline, ellipsisVerticalOutline, filterOutline, pinOutline, refreshOutline, timeOutline, timerOutline } from "ionicons/icons"; import emitter from '@/event-bus'; import JobHistoryModal from '@/components/JobHistoryModal.vue'; import { Plugins } from '@capacitor/core'; @@ -620,8 +620,7 @@ export default defineComponent({ segmentSelected, router, filterOutline, - hasPermission, - warningOutline + hasPermission }; } }); From 18ecd2177be07835954ce8326e914ff9943932e4 Mon Sep 17 00:00:00 2001 From: amansinghbais Date: Tue, 12 Dec 2023 16:55:14 +0530 Subject: [PATCH 4/4] Improved: prop name, fieldList for fetching jobHistory, and component name (#641) --- src/components/JobHistoryModal.vue | 2 +- src/views/FailedJobReasonModal.vue | 6 +++--- src/views/Pipeline.vue | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/components/JobHistoryModal.vue b/src/components/JobHistoryModal.vue index bc4e032c..51befe55 100644 --- a/src/components/JobHistoryModal.vue +++ b/src/components/JobHistoryModal.vue @@ -99,7 +99,7 @@ export default defineComponent({ "statusId_op": "in", "systemJobEnumId": this.currentJob?.systemJobEnumId }, - "fieldList": [ "jobResult", "runTime", "statusId" ], + "fieldList": [ "runTime", "statusId" ], "noConditionFind": "Y", "viewSize": process.env.VUE_APP_VIEW_SIZE, "orderBy": "runTime DESC" diff --git a/src/views/FailedJobReasonModal.vue b/src/views/FailedJobReasonModal.vue index 147c010d..50cdded5 100644 --- a/src/views/FailedJobReasonModal.vue +++ b/src/views/FailedJobReasonModal.vue @@ -11,7 +11,7 @@ -

{{ currentJob.jobResult }}

+

{{ job.jobResult }}

@@ -32,7 +32,7 @@ import { defineComponent } from 'vue'; import { closeOutline } from 'ionicons/icons'; export default defineComponent({ - name: "SelectJobsModal", + name: "FailedJobReasonModal", components: { IonButton, IonButtons, @@ -43,7 +43,7 @@ export default defineComponent({ IonTitle, IonToolbar }, - props: ["currentJob"], + props: ["job"], methods: { closeModal() { modalController.dismiss({ dismissed: true }); diff --git a/src/views/Pipeline.vue b/src/views/Pipeline.vue index 4d4e8766..ca8c0f81 100644 --- a/src/views/Pipeline.vue +++ b/src/views/Pipeline.vue @@ -394,7 +394,7 @@ export default defineComponent({ async openFailedJobReason(job: any) { const jobHistoryModal = await modalController.create({ component: FailedJobReasonModal, - componentProps: { currentJob: job } + componentProps: { job } }); return jobHistoryModal.present();