PMCORE-3519: process category in my cases

This commit is contained in:
Henry Jordan
2021-11-19 19:53:07 +00:00
committed by Paula Quispe
parent 731a4f2e41
commit e5b221c877
14 changed files with 676 additions and 403 deletions

File diff suppressed because it is too large Load Diff

View File

@@ -6,6 +6,7 @@
:title="addSearchTitle"
>
<template v-slot:body>
<b-form-group>
<b-form-radio-group
v-model="selected"
@@ -24,6 +25,15 @@
>
{{$t('ID_BY_PROCESS_NAME') }}
</b-form-checkbox>
<b-form-checkbox
id="checkbox-2"
v-model="byProcessCategory"
name="checkbox-2"
value="processCategory"
>
{{$t('ID_BY_PROCESS_CATEGORY') }}
</b-form-checkbox>
</template>
</SearchPopover>
@@ -61,6 +71,7 @@
</div>
<component
:filters="filters"
v-bind:is="tagComponent(tag)"
v-bind:info="tagInfo(tag)"
v-bind:tag="tag"
@@ -82,6 +93,7 @@ import SearchPopover from "./popovers/SearchPopover.vue";
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 DateFilter from "./popovers/DateFilter.vue";
import TaskTitle from "./popovers/TaskTitle.vue";
import api from "./../../api/index";
@@ -94,6 +106,7 @@ export default {
CaseNumber,
CaseTitle,
ProcessName,
ProcessCategory,
DateFilter,
TaskTitle
},
@@ -235,9 +248,31 @@ export default {
return `${this.tagPrefix} ${data[0].options && data[0].options.label || ''}`;
}
},
processCategory:{
type: "ProcessCategory",
id: "processCategory",
title: `${this.$i18n.t('ID_FILTER')}: ${this.$i18n.t('ID_BY_PROCESS_CATEGORY')}`,
optionLabel: this.$i18n.t('ID_BY_PROCESS_CATEGORY'),
detail: "",
tagText: "",
tagPrefix: this.$i18n.t('ID_SEARCH_BY_PROCESS_CATEGORY'),
autoShow: true,
items:[
{
id: "category",
value: "",
options: [],
placeholder: ""
}
],
makeTagText: function (params, data) {
return `${params.tagPrefix}: ${data[0].label || ''}`;
}
},
selected: "",
itemModel: {},
byProcessName: ""
byProcessName: "",
byProcessCategory: "",
};
},
mounted() {
@@ -284,6 +319,15 @@ export default {
}
initialFilters =[...new Set([...initialFilters,...this.prepareFilterItems(this.processName.items, self.byProcessName, true)])];
}
//adding process name filter
if (self.byProcessCategory !== "") {
if (element !== undefined) {
this.processCategory.autoShow = false;
} else {
this.processCategory.autoShow = true;
}
initialFilters =[...new Set([...initialFilters,...this.prepareFilterItems(this.processCategory.items, self.byProcessCategory, true)])];
}
this.$emit("onUpdateFilters", {params: initialFilters, refresh: false});
},
/**
@@ -334,6 +378,12 @@ export default {
self.itemModel[self.processName.id] = self.processName;
self.itemModel[self.processName.id].autoShow = typeof self.processName.autoShow !== "undefined" ? self.processName.autoShow : true;
}
if(item.fieldId === "processCategory") {
self.searchTags.push(self.processCategory.id);
self.byProcessCategory = self.processCategory.id;
self.itemModel[self.processCategory.id] = self.processCategory;
self.itemModel[self.processCategory.id].autoShow = typeof self.processCategory.autoShow !== "undefined" ? self.processCategory.autoShow : true;
}
});
},
dataToFilter(id) {
@@ -382,6 +432,9 @@ export default {
if (tag === "processName") {
this.byProcessName = "";
}
if (tag === "processCategory") {
this.byProcessCategory = "";
}
this.$emit("onUpdateFilters", {params: temp, refresh: true});
},
/**

View File

@@ -38,6 +38,7 @@
import SearchPopover from "./SearchPopover.vue";
import Multiselect from "vue-multiselect";
import api from "./../../../api/index";
import _ from "lodash";
export default {
components: {
@@ -57,11 +58,16 @@ export default {
* @param {string} query - string from the text field
*/
asyncFind(query) {
let self = this;
let self = this,
cat = this.verifyCategory(),
params = { text: query };
this.isLoading = true;
if (cat) {
params.category = cat;
}
self.processes = [];
api.filters
.processList(query)
.processListPaged(params)
.then((response) => {
self.processes = [];
_.forEach(response.data, function(elem, key) {
@@ -76,6 +82,13 @@ export default {
console.error(err);
});
},
verifyCategory() {
let cat = _.find(
this.$attrs.filters,
(o) => o.fieldId == "processCategory"
);
return cat ? cat.value : null;
},
/**
* Form validations review
*/

View File

@@ -52,6 +52,9 @@
<div slot="process_name" slot-scope="props">
{{ props.row.PROCESS_NAME }}
</div>
<div slot="process_category" slot-scope="props">
{{ props.row.PROCESS_CATEGORY }}
</div>
<div slot="task" slot-scope="props">
<TaskCell :data="props.row.TASK" />
</div>
@@ -143,6 +146,7 @@ export default {
columns: [
"case_number",
"process_name",
"process_category",
"status",
"thread_title",
"task",
@@ -158,6 +162,7 @@ export default {
headings: {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
status: this.$i18n.t("ID_STATUS"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
task: this.$i18n.t("ID_TASK"),
@@ -296,6 +301,7 @@ export default {
CASE_NUMBER: v.APP_NUMBER,
THREAD_TITLE: v.THREAD_TITLES,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
TASK: this.formatTasks(v.THREAD_TASKS),
USER_DATA: this.formatUser(v.THREAD_USERS),
START_DATE: v.APP_CREATE_DATE_LABEL,

View File

@@ -54,6 +54,9 @@
<div slot="process_name" slot-scope="props">
{{ props.row.PROCESS_NAME }}
</div>
<div slot="process_category" slot-scope="props">
{{ props.row.PROCESS_CATEGORY }}
</div>
<div slot="task" slot-scope="props">
<TaskCell :data="props.row.TASK" />
</div>
@@ -104,6 +107,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -178,6 +189,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -296,6 +315,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
priority: this.$i18n.t("ID_PRIORITY"),
actions: ""
@@ -523,6 +543,7 @@ export default {
CASE_NUMBER: v.APP_NUMBER,
THREAD_TITLE: v.DEL_TITLE,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
TASK: [{
TITLE: v.TAS_TITLE,
CODE_COLOR: v.TAS_COLOR,

View File

@@ -54,6 +54,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
current_user: this.$i18n.t("ID_CURRENT_USER"),
due_date: this.$i18n.t("ID_DUE_DATE"),

View File

@@ -49,7 +49,9 @@
<div slot="process_name" slot-scope="props">
{{ props.row.PROCESS_NAME }}
</div>
<div slot="process_category" slot-scope="props">
{{ props.row.PROCESS_CATEGORY }}
</div>
<div slot="task" slot-scope="props">
<TaskCell :data="props.row.TASK" />
</div>
@@ -117,6 +119,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -203,6 +213,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -343,6 +361,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
send_by: this.$i18n.t("ID_SEND_BY"),
due_date: this.$i18n.t("ID_DUE_DATE"),
@@ -574,6 +593,7 @@ export default {
CASE_NUMBER: v.APP_NUMBER,
THREAD_TITLE: v.DEL_TITLE,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
TASK: [
{
TITLE: v.TAS_TITLE,

View File

@@ -54,6 +54,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
send_by: this.$i18n.t("ID_SEND_BY"),
current_user: this.$i18n.t("ID_CURRENT_USER"),
@@ -65,6 +66,7 @@ export default {
"case_number",
"thread_title",
"process_name",
"process_category",
"due_date",
"delegation_date",
"priority",

View File

@@ -50,6 +50,9 @@
<div slot="process_name" slot-scope="props">
{{ props.row.PROCESS_NAME }}
</div>
<div slot="process_category" slot-scope="props">
{{ props.row.PROCESS_CATEGORY }}
</div>
<div slot="pending_taks" slot-scope="props">
<GroupedCell :data="props.row.PENDING_TASKS" />
</div>
@@ -161,6 +164,7 @@ export default {
headings: {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
pending_taks: this.$i18n.t("ID_PENDING_TASKS"),
status: this.$i18n.t("ID_CASESLIST_APP_STATUS"),
@@ -454,6 +458,8 @@ export default {
CASE_NUMBER: v.APP_NUMBER,
THREAD_TITLE: v.THREAD_TITLES,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
STATUS: v.APP_STATUS,
START_DATE: v.APP_CREATE_DATE_LABEL || "",
FINISH_DATE: v.APP_FINISH_DATE_LABEL || "",

View File

@@ -1,8 +1,12 @@
import _ from "lodash";
import api from "../../api/index";
export default {
data() {
return {
random: 1
random: 1,
defaultColumnsDisabled: [
"process_category"
]
};
},
methods: {

View File

@@ -48,6 +48,9 @@
<div slot="process_name" slot-scope="props">
{{ props.row.PROCESS_NAME }}
</div>
<div slot="process_category" slot-scope="props">
{{ props.row.PROCESS_CATEGORY }}
</div>
<div slot="task" slot-scope="props">
<TaskCell :data="props.row.TASK" />
</div>
@@ -115,6 +118,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -201,6 +212,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -342,6 +361,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
send_by: this.$i18n.t("ID_SEND_BY"),
due_date: this.$i18n.t("ID_DUE_DATE"),
@@ -572,6 +592,7 @@ export default {
CASE_NUMBER: v.APP_NUMBER,
THREAD_TITLE: v.DEL_TITLE,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
TASK: [{
TITLE: v.TAS_TITLE,
CODE_COLOR: v.TAS_COLOR,

View File

@@ -53,6 +53,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
send_by: this.$i18n.t("ID_SEND_BY"),
current_user: this.$i18n.t("ID_CURRENT_USER"),
@@ -64,6 +65,7 @@ export default {
"case_number",
"thread_title",
"process_name",
"process_category",
"due_date",
"delegation_date",
"priority",

View File

@@ -46,6 +46,9 @@
<div slot="process_name" slot-scope="props">
{{ props.row.PROCESS_NAME }}
</div>
<div slot="process_category" slot-scope="props">
{{ props.row.PROCESS_CATEGORY }}
</div>
<div slot="task" slot-scope="props">
<TaskCell :data="props.row.TASK" />
</div>
@@ -110,6 +113,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -196,6 +207,14 @@
>{{ props["item"]["PROCESS_NAME"] }}
</span>
</div>
<div slot="process_category" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
>
<span class="v-card-text-light"
>{{ props["item"]["PROCESS_CATEGORY"] }}
</span>
</div>
<div slot="due_date" slot-scope="props" class="v-card-text">
<span class="v-card-text-dark"
>{{ props["headings"][props.column] }} :</span
@@ -334,6 +353,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
send_by: this.$i18n.t("ID_SEND_BY"),
due_date: this.$i18n.t("ID_DUE_DATE"),
@@ -535,6 +555,7 @@ export default {
CASE_NUMBER: v.APP_NUMBER,
THREAD_TITLE: v.DEL_TITLE,
PROCESS_NAME: v.PRO_TITLE,
PROCESS_CATEGORY: v.CATEGORY,
TASK: [{
TITLE: v.TAS_TITLE,
CODE_COLOR: v.TAS_COLOR,

View File

@@ -53,6 +53,7 @@ export default {
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
thread_title: this.$i18n.t('ID_CASE_THREAD_TITLE'),
process_name: this.$i18n.t("ID_PROCESS_NAME"),
process_category: this.$i18n.t("ID_PROCESS_CATEGORY"),
task: this.$i18n.t("ID_TASK"),
send_by: this.$i18n.t("ID_SEND_BY"),
current_user: this.$i18n.t("ID_CURRENT_USER"),
@@ -64,6 +65,7 @@ export default {
"case_number",
"thread_title",
"process_name",
"process_category",
"due_date",
"delegation_date",
"priority",