diff --git a/resources/assets/js/api/Api.js b/resources/assets/js/api/Api.js
index 46887a245..6a3ee6dad 100644
--- a/resources/assets/js/api/Api.js
+++ b/resources/assets/js/api/Api.js
@@ -67,7 +67,8 @@ const services = {
DELETE_MY_FILTERS: "/cases/advanced-search/filter/",
SEARCH: "/home/search",
PROCESSES: "/home/processes",
- USERS: "/home/users"
+ USERS: "/home/users",
+ TASKS: "/home/tasks"
};
export default {
diff --git a/resources/assets/js/api/Filters.js b/resources/assets/js/api/Filters.js
index 59152fb2c..8117c4881 100644
--- a/resources/assets/js/api/Filters.js
+++ b/resources/assets/js/api/Filters.js
@@ -69,6 +69,18 @@ export let filters = {
keys: {},
});
},
+ /**
+ * Service to get the users list
+ */
+ taskList(query) {
+ return Api.get({
+ service: "TASKS",
+ params: {
+ text: query,
+ },
+ keys: {},
+ });
+ },
/**
* Service to get the users list
*/
diff --git a/resources/assets/js/components/search/AdvancedFilter.vue b/resources/assets/js/components/search/AdvancedFilter.vue
index 4f084b92a..e9690751d 100644
--- a/resources/assets/js/components/search/AdvancedFilter.vue
+++ b/resources/assets/js/components/search/AdvancedFilter.vue
@@ -174,6 +174,7 @@ import ProcessName from "./popovers/ProcessName.vue";
import CasePriority from "./popovers/CasePriority.vue";
import CaseStatus from "./popovers/CaseStatus.vue";
import CurrentUser from "./popovers/CurrentUser.vue";
+import TaskTitle from "./popovers/TaskTitle.vue";
import api from "./../../api/index";
export default {
@@ -188,6 +189,7 @@ export default {
CaseStatus,
CurrentUser,
DateFilter,
+ TaskTitle
},
data() {
return {
@@ -247,7 +249,49 @@ export default {
}
],
makeTagText: function (params, data) {
- return `${params.tagPrefix} ${data[0].options && data[0].options.label || ''}`;
+ return `${params.tagPrefix}: ${data[0].options && data[0].options.label || ''}`;
+ }
+ },
+ {
+ type: "TaskTitle",
+ id: "taskTitle",
+ title: `${this.$i18n.t('ID_FILTER')}: ${this.$i18n.t('ID_TASK_NAME')}`,
+ optionLabel: this.$i18n.t('ID_TASK'),
+ detail: "",
+ tagText: "",
+ tagPrefix: this.$i18n.t('ID_SEARCH_BY_TASK_NAME'),
+ autoShow: true,
+ items:[
+ {
+ id: "task",
+ value: "",
+ options: [],
+ placeholder: this.$i18n.t('ID_TASK_NAME')
+ }
+ ],
+ makeTagText: function (params, data) {
+ return `${this.tagPrefix}: ${data[0].label || ''}`;
+ }
+ },
+ {
+ type: "CurrentUser",
+ id: "currentUser",
+ title: `${this.$i18n.t('ID_FILTER')}: ${this.$i18n.t('ID_CURRENT_USER')}`,
+ optionLabel: this.$i18n.t('ID_CURRENT_USER'),
+ detail: "",
+ placeholder: this.$i18n.t('ID_USER_NAME'),
+ tagText: "",
+ tagPrefix: this.$i18n.t('ID_USER'),
+ items:[
+ {
+ id: "userId",
+ value: "",
+ options: [],
+ placeholder: this.$i18n.t('ID_USER_NAME')
+ }
+ ],
+ makeTagText: function (params, data) {
+ return `${params.tagPrefix} : ${data[0].label || ''}`;
}
},
{
@@ -297,28 +341,8 @@ export default {
makeTagText: function (params, data) {
return `${params.tagPrefix} ${data[0].value} - ${data[1].value}`;
}
- },
- {
- type: "CurrentUser",
- id: "currentUser",
- title: `${this.$i18n.t('ID_FILTER')}: ${this.$i18n.t('ID_CURRENT_USER')}`,
- optionLabel: this.$i18n.t('ID_CURRENT_USER'),
- detail: "",
- placeholder: this.$i18n.t('ID_USER_NAME'),
- tagText: "",
- tagPrefix: this.$i18n.t('ID_USER'),
- items:[
- {
- id: "userId",
- value: "",
- options: [],
- placeholder: this.$i18n.t('ID_USER_NAME')
- }
- ],
- makeTagText: function (params, data) {
- return `${params.tagPrefix} : ${data[0].label || ''}`;
- }
- },
+ }
+
],
selected: "",
itemModel: {},
@@ -385,7 +409,6 @@ export default {
tagInfo(id) {
if (this.itemModel[id]) {
- debugger;
return this.itemModel[id];
}
return null;
diff --git a/resources/assets/js/components/search/MyCasesFilter.vue b/resources/assets/js/components/search/MyCasesFilter.vue
index 312f0d990..53882fb1a 100644
--- a/resources/assets/js/components/search/MyCasesFilter.vue
+++ b/resources/assets/js/components/search/MyCasesFilter.vue
@@ -71,6 +71,7 @@ import CaseIntegerNumber from "./popovers/CaseIntegerNumber.vue";
import CaseTitle from "./popovers/CaseTitle.vue";
import ProcessName from "./popovers/ProcessName.vue";
import DateFilter from "./popovers/DateFilter.vue";
+import TaskTitle from "./popovers/TaskTitle.vue";
import api from "./../../api/index";
export default {
@@ -81,7 +82,8 @@ export default {
CaseIntegerNumber,
CaseTitle,
ProcessName,
- DateFilter
+ DateFilter,
+ TaskTitle
},
data() {
return {
@@ -150,6 +152,27 @@ export default {
return `${this.tagPrefix} ${data[0].options && data[0].options.label || ''}`;
}
},
+ {
+ type: "TaskTitle",
+ id: "taskTitle",
+ title: `${this.$i18n.t('ID_FILTER')}: ${this.$i18n.t('ID_BY_TASK')}`,
+ optionLabel: this.$i18n.t('ID_BY_TASK'),
+ detail: "",
+ tagText: "",
+ tagPrefix: this.$i18n.t('ID_SEARCH_BY_TASK_TITLE'),
+ autoShow: true,
+ items:[
+ {
+ id: "task",
+ value: "",
+ options: [],
+ placeholder: this.$i18n.t('ID_TASK_NAME')
+ }
+ ],
+ makeTagText: function (params, data) {
+ return `${this.tagPrefix} ${data[0].label || ''}`;
+ }
+ },
{
type: "DateFilter",
id: "startDate",
@@ -281,7 +304,6 @@ export default {
tagInfo(id) {
if (this.itemModel[id]) {
- debugger;
return this.itemModel[id];
}
return null;
diff --git a/resources/assets/js/components/search/popovers/TaskTitle.vue b/resources/assets/js/components/search/popovers/TaskTitle.vue
new file mode 100644
index 000000000..5480083c8
--- /dev/null
+++ b/resources/assets/js/components/search/popovers/TaskTitle.vue
@@ -0,0 +1,94 @@
+
+ {{ info.detail }}