Merged in feature/PMCORE-3923 (pull request #8524)

PMCORE-3923

Approved-by: Fabio Guachalla
Approved-by: Julio Cesar Laura Avendaño
This commit is contained in:
Martin Laguna
2022-08-22 14:45:17 +00:00
committed by Julio Cesar Laura Avendaño
5 changed files with 255 additions and 2 deletions

View File

@@ -32,6 +32,14 @@
>
{{ $t("ID_BY_PROCESS_NAME") }}
</b-form-checkbox>
<b-form-checkbox
id="checkbox-3"
v-model="byReviewStatus"
name="checkbox-3"
value="reviewStatus"
>
{{ $t("ID_BY_REVIEW_STATUS") }}
</b-form-checkbox>
</b-form-group>
</template>
</SearchPopover>
@@ -92,6 +100,7 @@ import CaseNumber from "./popovers/CaseNumber.vue";
import CaseTitle from "./popovers/CaseTitle.vue";
import ProcessName from "./popovers/ProcessName.vue";
import ProcessCategory from "./popovers/ProcessCategory.vue";
import ReviewStatus from "./popovers/ReviewStatus.vue";
import DateFilter from "./popovers/DateFilter.vue";
import TaskTitle from "./popovers/TaskTitle.vue";
import CurrentUser from "./popovers/CurrentUser.vue";
@@ -106,6 +115,7 @@ export default {
CaseTitle,
ProcessName,
ProcessCategory,
ReviewStatus,
DateFilter,
TaskTitle,
CurrentUser,
@@ -287,10 +297,50 @@ export default {
return `${params.tagPrefix}: ${data[0].label || ""}`;
},
},
reviewStatus: {
type: "ReviewStatus",
id: "reviewStatus",
title: `${this.$i18n.t("ID_FILTER")}: ${this.$i18n.t(
"ID_BY_REVIEW_STATUS"
)}`,
optionLabel: this.$i18n.t("ID_BY_REVIEW_STATUS"),
detail: "",
tagText: "",
tagPrefix: this.$i18n.t("ID_SEARCH_BY_REVIEW_STATUS"),
autoShow: true,
items: [
{
id: "reviewStatus",
value: "",
options: [
this.$i18n.t("ID_READ_FILTER_OPTION"),
this.$i18n.t("ID_UNREAD_FILTER_OPTION")
],
}
],
makeTagText: function(params, data) {
let label = "";
switch (data[0].value) {
case "READ":
label = this.items[0].options[0];
break;
case "UNREAD":
label = this.items[0].options[1];
break;
default:
label = "";
break;
}
return `${this.tagPrefix} ${label}`;
},
},
selected: "",
itemModel: {},
byProcessName: "",
byProcessCategory: "",
byReviewStatus: "",
};
},
computed: {
@@ -381,6 +431,23 @@ export default {
]),
];
}
if (self.byReviewStatus !== "") {
if (element !== undefined) {
this.reviewStatus.autoShow = false;
} else {
this.reviewStatus.autoShow = true;
}
initialFilters = [
...new Set([
...initialFilters,
...this.prepareFilterItems(
this.reviewStatus.items,
self.byReviewStatus,
true
),
]),
];
}
this.$emit("onUpdateFilters", {
params: initialFilters,
refresh: false,
@@ -455,6 +522,16 @@ export default {
? self.processCategory.autoShow
: true;
}
if (item.fieldId === "reviewStatus") {
self.searchTags.push(self.reviewStatus.id);
self.byReviewStatus = self.reviewStatus.id;
self.itemModel[self.reviewStatus.id] =
self.reviewStatus;
self.itemModel[self.reviewStatus.id].autoShow =
typeof self.reviewStatus.autoShow !== "undefined"
? self.reviewStatus.autoShow
: true;
}
});
},
dataToFilter(id) {
@@ -512,6 +589,9 @@ export default {
if (tag === "processCategory") {
this.byProcessCategory = "";
}
if (tag === "reviewStatus") {
this.byReviewStatus = "";
}
this.$emit("onUpdateFilters", { params: temp, refresh: true });
},
/**

View File

@@ -25,6 +25,14 @@
name="checkbox-1"
>
</b-form-checkbox-group>
<b-form-checkbox
id="checkbox-review-status"
v-model="byReviewStatus"
name="checkbox-review"
value="reviewStatus"
>
{{ $t("ID_BY_REVIEW_STATUS") }}
</b-form-checkbox>
</b-form-group>
</template>
</SearchPopover>
@@ -84,6 +92,7 @@ import CaseNumber from "./popovers/CaseNumber.vue";
import CaseTitle from "./popovers/CaseTitle.vue";
import ProcessName from "./popovers/ProcessName.vue";
import ProcessCategory from "./popovers/ProcessCategory.vue";
import ReviewStatus from "./popovers/ReviewStatus.vue";
import DateFilter from "./popovers/DateFilter.vue";
import TaskTitle from "./popovers/TaskTitle.vue";
import CurrentUser from "./popovers/CurrentUser.vue";
@@ -100,6 +109,7 @@ export default {
CaseTitle,
ProcessName,
ProcessCategory,
ReviewStatus,
DateFilter,
TaskTitle,
CurrentUser,
@@ -117,9 +127,47 @@ export default {
itemModel: {},
byProcessName: "",
byProcessCategory: "",
byReviewStatus: "",
criteriaItemsRadio: [],
criteriaItemsCheckbox: [],
showProcessName: true,
reviewStatus: {
type: "ReviewStatus",
id: "reviewStatus",
title: `${this.$i18n.t("ID_FILTER")}: ${this.$i18n.t("ID_BY_REVIEW_STATUS")}`,
optionLabel: this.$i18n.t("ID_BY_REVIEW_STATUS"),
detail: "",
tagText: "",
tagPrefix: this.$i18n.t("ID_SEARCH_BY_REVIEW_STATUS"),
autoShow: true,
items: [
{
id: "reviewStatus",
value: "",
options: [
this.$i18n.t("ID_READ_FILTER_OPTION"),
this.$i18n.t("ID_UNREAD_FILTER_OPTION")
],
}
],
makeTagText: function(params, data) {
let label = "";
switch (data[0].value) {
case "READ":
label = this.items[0].options[0];
break;
case "UNREAD":
label = this.items[0].options[1];
break;
default:
label = "";
break;
}
return `${this.tagPrefix} ${label}`;
},
},
};
},
mounted(){},
@@ -193,6 +241,23 @@ export default {
initialFilters =[...new Set([...initialFilters,...this.prepareFilterItems(element, item, true)])];
}
});
if (self.byReviewStatus !== "") {
if (element !== undefined) {
this.reviewStatus.autoShow = false;
} else {
this.reviewStatus.autoShow = true;
}
initialFilters = [
...new Set([
...initialFilters,
...this.prepareFilterItems(
this.reviewStatus.items,
self.byReviewStatus,
true
),
]),
];
}
this.$emit("onUpdateFilters", {
params: initialFilters,
refresh: false,
@@ -209,7 +274,7 @@ export default {
self = this,
filter,
item;
_.forEach(element.items, function(value, key) {
_.forEach(element.items || element, function(value, key) {
filter = _.find(self.filters, function(o) {
return o.filterVar === value.id;
});
@@ -251,6 +316,16 @@ export default {
? item.autoShow
: true;
}
if (item.fieldId === "reviewStatus") {
self.searchTags.push(self.reviewStatus.id);
self.byReviewStatus = self.reviewStatus.id;
self.itemModel[self.reviewStatus.id] =
self.reviewStatus;
self.itemModel[self.reviewStatus.id].autoShow =
typeof self.reviewStatus.autoShow !== "undefined"
? self.reviewStatus.autoShow
: true;
}
});
},
/**
@@ -322,6 +397,9 @@ export default {
this.byProcessName = "";
this.selectedCheckbox = [];
}
if (tag === "reviewStatus") {
this.byReviewStatus = "";
}
this.$emit("onUpdateFilters", { params: temp, refresh: true });
},
/**

View File

@@ -0,0 +1,67 @@
<template>
<div>
<SearchPopover
:target="tag"
@savePopover="onOk"
:title="info.title"
:autoShow="info.autoShow || false"
>
<template v-slot:body>
<p>{{ info.detail }}</p>
<form ref="form" @submit.stop.prevent="handleSubmit">
<b-form-group
label-for="name"
:invalid-feedback="$t('ID_PROCESS_IS_REQUIRED')"
>
<b-form-radio-group
v-model="selected"
:options="readUnread"
name="review-status-options"
stacked
></b-form-radio-group>
</b-form-group>
</form>
</template>
</SearchPopover>
</div>
</template>
<script>
import SearchPopover from "./SearchPopover.vue";
import Multiselect from "vue-multiselect";
export default {
components: {
SearchPopover,
Multiselect,
},
props: ["tag", "info", "filter"],
data() {
return {
selected: "",
readUnread: [
{ text: this.$i18n.t("ID_READ_FILTER_OPTION"), value: 'READ' },
{ text: this.$i18n.t("ID_UNREAD_FILTER_OPTION"), value: 'UNREAD' }
]
};
},
methods: {
/**
* On Ok event handler
*/
onOk() {
this.handleSubmit();
},
/**
* Form submit handler
*/
handleSubmit() {
this.filter[0].value = this.selected;
this.$emit("updateSearchTag", this.filter);
this.$root.$emit("bv::hide::popover");
},
},
};
</script>
<style src="vue-multiselect/dist/vue-multiselect.min.css"></style>
<style scoped></style>

View File

@@ -3131,6 +3131,12 @@ msgstr "By Process Category"
msgid "By Process Name"
msgstr "By Process Name"
# TRANSLATION
# LABEL/ID_BY_REVIEW_STATUS
#: LABEL/ID_BY_REVIEW_STATUS
msgid "By Review Status"
msgstr "By Review Status"
# TRANSLATION
# LABEL/ID_BY_TASK
#: LABEL/ID_BY_TASK
@@ -23291,6 +23297,12 @@ msgstr "Reactivate"
msgid "Reactivating case..."
msgstr "Reactivating case..."
# TRANSLATION
# LABEL/ID_READ_FILTER_OPTION
#: LABEL/ID_READ_FILTER_OPTION
msgid "Read"
msgstr "Read"
# TRANSLATION
# LABEL/ID_READ_ONLINE_DOCUMENTATION
#: LABEL/ID_READ_ONLINE_DOCUMENTATION
@@ -24563,6 +24575,12 @@ msgstr "Search by Process Category:"
msgid "Search by Process Name:"
msgstr "Search by Process Name:"
# TRANSLATION
# LABEL/ID_SEARCH_BY_REVIEW_STATUS
#: LABEL/ID_SEARCH_BY_REVIEW_STATUS
msgid "Search by Review Status:"
msgstr "Search by Review Status:"
# TRANSLATION
# LABEL/ID_SEARCH_BY_SEND_BY
#: LABEL/ID_SEARCH_BY_SEND_BY
@@ -27401,6 +27419,12 @@ msgstr "Unpause Time"
msgid "Unpausing case..."
msgstr "Unpausing case..."
# TRANSLATION
# LABEL/ID_UNREAD_FILTER_OPTION
#: LABEL/ID_UNREAD_FILTER_OPTION
msgid "Unread"
msgstr "Unread"
# TRANSLATION
# LABEL/ID_UNSAVED_CHANGES_QUESTION
#: LABEL/ID_UNSAVED_CHANGES_QUESTION

View File

@@ -57330,11 +57330,12 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_BY_PARTICIPATION','en','By Participation','2021-07-13') ,
( 'LABEL','ID_BY_PROCESS_CATEGORY','en','By Process Category','2021-07-13') ,
( 'LABEL','ID_BY_PROCESS_NAME','en','By Process Name','2020-12-16') ,
( 'LABEL','ID_BY_TASK','en','By Task','2020-12-16') ,
( 'LABEL','ID_BY_REVIEW_STATUS','en','By Review Status','2022-08-17') ,
( 'LABEL','ID_BY_ROLE','en','By Role','2020-12-15') ,
( 'LABEL','ID_BY_SEND_BY','en','By Send By','2021-08-31') ,
( 'LABEL','ID_BY_STATUS','en','By Status','2020-12-16') ,
( 'LABEL','ID_BY_START_DATE','en','By Start Date','2020-12-16') ,
( 'LABEL','ID_BY_TASK','en','By Task','2020-12-16') ,
( 'LABEL','ID_CACHE_BTN_BUILD','en','Build Cache','2014-01-15') ,
( 'LABEL','ID_CACHE_BTN_SETUP_PASSWRD','en','Setup Password','2014-01-15') ,
( 'LABEL','ID_CACHE_BTN_SETUP_SESSION','en','Delete older session files','2014-01-15') ,
@@ -60799,6 +60800,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_RB_DATABASE_NAME','en','Rbac Database Name','2014-01-15') ,
( 'LABEL','ID_REACTIVATE','en','Reactivate','2014-01-15') ,
( 'LABEL','ID_REACTIVATING_CASE','en','Reactivating case...','2014-01-15') ,
( 'LABEL','ID_READ_FILTER_OPTION','en','Read','2022-08-17') ,
( 'LABEL','ID_READ_ONLINE_DOCUMENTATION','en','Read Online Documentation','2014-01-15') ,
( 'LABEL','ID_REALLY_SHOULD','en','You really should do it','2014-01-15') ,
( 'LABEL','ID_REASON','en','Reason','2016-10-20') ,
@@ -61018,6 +61020,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_SEARCH_BY_PARTICIPATION','en','Search by Participation:','2021-07-13') ,
( 'LABEL','ID_SEARCH_BY_PROCESS_CATEGORY','en','Search by Process Category:','2021-07-13') ,
( 'LABEL','ID_SEARCH_BY_PROCESS_NAME','en','Search by Process Name:','2020-12-16') ,
( 'LABEL','ID_SEARCH_BY_REVIEW_STATUS','en','Search by Review Status:','2022-08-17') ,
( 'LABEL','ID_SEARCH_BY_SEND_BY','en','Search By Send By:','2021-08-31') ,
( 'LABEL','ID_SEARCH_BY_START_DATE','en','Search by Start Date:','2020-12-16') ,
( 'LABEL','ID_SEARCH_BY_STATUS','en','Search by Status:','2020-12-22') ,
@@ -61547,6 +61550,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE
( 'LABEL','ID_UNPAUSE_DATE','en','Unpause Date','2014-01-15') ,
( 'LABEL','ID_UNPAUSE_TIME','en','Unpause Time','2014-01-15') ,
( 'LABEL','ID_UNPAUSING_CASE','en','Unpausing case...','2014-01-15') ,
( 'LABEL','ID_UNREAD_FILTER_OPTION','en','Unread','2022-08-17') ,
( 'LABEL','ID_UNSAVED_CHANGES_QUESTION','en','You are about to close a window and there may be some unsaved changes. Are you sure to continue?','2015-08-17') ;
INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ) VALUES