diff --git a/resources/assets/js/home/Inbox/Inbox.vue b/resources/assets/js/home/Inbox/Inbox.vue index 42155e9b7..8305dc258 100644 --- a/resources/assets/js/home/Inbox/Inbox.vue +++ b/resources/assets/js/home/Inbox/Inbox.vue @@ -366,6 +366,9 @@ export default { id: this.id }); }); + Event.$on('inbox::update-filters', (data) => { + that.updateSettings(data); + }); }, watch: { columns: function (val) { @@ -645,6 +648,7 @@ export default { * @param {object} data */ onUpdateFilters(data) { + console.log("jonas"); this.filters = data.params; this.prepareAndUpdate(data); if (data.refresh) { diff --git a/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue b/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue index 0ecbda464..3f31e202c 100644 --- a/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue +++ b/resources/assets/js/home/TaskMetrics/VueChartLvOne.vue @@ -28,9 +28,7 @@ @select="changeOption" > - +
+ +
+
+ +
+
+ +
+
+

import _ from "lodash"; +import jquery from "jquery"; import Api from "../../api/index"; import BreadCrumb from "../../components/utils/BreadCrumb.vue"; import ProcessPopover from "./ProcessPopover.vue"; import Multiselect from "vue-multiselect"; +import eventBus from "./../EventBus/eventBus"; export default { name: "VueChartLvOne", @@ -79,6 +108,8 @@ export default { data() { let that = this; return { + popoverTarget: "", + showPopover: false, category: null, dataProcesses: null, //Data API processes settingsBreadcrumbs: [ @@ -108,14 +139,15 @@ export default { show: false, }, events: { - legendClick: function (chartContext, seriesIndex, config) { - that.currentSelection = that.totalCases[seriesIndex]; - that.$emit("updateDataLevel", { - id: that.currentSelection["PRO_ID"], - name: that.currentSelection["PRO_TITLE"], - level: 1, - data: that.currentSelection, - }); + click: function (event, chartContext, config) { + that.$refs.popover.$emit("close"); + if (config.dataPointIndex != -1) { + that.currentSelection = that.totalCases[config.dataPointIndex]; + that.onShowDrillDownOptions( + event.currentTarget, + config.dataPointIndex + ); + } }, }, }, @@ -126,9 +158,6 @@ export default { horizontal: true, }, }, - legend: { - position: "top", - }, colors: ["#33b2df", "#546E7A", "#d4526e", "#13d8aa"], dataLabels: { enabled: false, @@ -255,7 +284,7 @@ export default { processes: this.selectedProcesses, top: this.top, }; - option.id == "all"? delete dt.category:null; + option.id == "all" ? delete dt.category : null; Api.process .totalCasesByProcess(dt) .then((response) => { @@ -345,9 +374,60 @@ export default { * Event handler change input search popover * @param {string} query - value in popover search input */ - onChangeSearchPopover(query){ + onChangeSearchPopover(query) { this.getProcesses(query); - } + }, + /** + * Show popover drill down options + * @param {objHtml} target + * @param {number} index + */ + onShowDrillDownOptions(target, index) { + let obj, + dt, + that = this; + if (index != -1) { + obj = jquery(target).find("path")[index]; + dt = this.dataProcesses[index]; + this.popoverTarget = obj.id; + setTimeout(() => { + that.$refs.popover.$emit("open"); + }, 200); + } + }, + /** + * Show popover drill down options + */ + onClickDrillDown() { + this.$emit("updateDataLevel", { + id: this.currentSelection["PRO_ID"], + name: this.currentSelection["PRO_TITLE"], + level: 1, + data: this.currentSelection, + }); + }, + /** + * Show popover data options + */ + onClickData() { + let taskList = this.data[0].id.toLowerCase(), + obj = { + autoshow: false, + fieldId: "processName", + filterVar: "process", + label: "", + options: { + label: this.currentSelection["PRO_TITLE"], + value: this.currentSelection["PRO_ID"], + }, + value: this.currentSelection["PRO_ID"], + }; + eventBus.$emit("inbox::update-filters", { + params: [obj], + refresh: false, + }); + eventBus.$emit("home-update-page", taskList); + }, }, }; @@ -375,5 +455,13 @@ export default { .vp-right { float: right; } + +.vp-chart-minipopover { + display: flex; +} + +.vp-flex1 { + flex: 1; +} \ No newline at end of file diff --git a/workflow/engine/content/translations/english/processmaker.en.po b/workflow/engine/content/translations/english/processmaker.en.po index e4a95a988..4cd66d203 100755 --- a/workflow/engine/content/translations/english/processmaker.en.po +++ b/workflow/engine/content/translations/english/processmaker.en.po @@ -53199,6 +53199,12 @@ msgstr "By selecting the task will be open automatically if the task is Inbox or msgid "Level" msgstr "Level" +# TRANSLATION +# LABEL/ID_DRILL +#: LABEL/ID_DRILL +msgid "Drill" +msgstr "Drill" + # TRANSLATION # LABEL/ID_DRILL_DOWN_NAVIGATOR #: LABEL/ID_DRILL_DOWN_NAVIGATOR diff --git a/workflow/engine/data/mysql/insert.sql b/workflow/engine/data/mysql/insert.sql index eb68885c4..f82e75482 100755 --- a/workflow/engine/data/mysql/insert.sql +++ b/workflow/engine/data/mysql/insert.sql @@ -58006,6 +58006,7 @@ INSERT INTO TRANSLATION (TRN_CATEGORY,TRN_ID,TRN_LANG,TRN_VALUE,TRN_UPDATE_DATE ( 'LABEL','ID_DRAFT','en','Draft','2014-01-15') , ( 'LABEL','ID_DRIVE_HELP_ENABLE','en','When this option is enabled, all input, output and attached documents generated in your processes can be stored in Google Drive.','2016-01-05') , ( 'LABEL','ID_DRILL_DOWN_NAVIGATOR','en','Drill Down Navigator','2020-08-26') , +( 'LABEL','ID_DRILL','en','Drill','2021-08-26') , ( 'LABEL','ID_DRILL_DOWN_NUMBER_TASKS','en','Number of tasks per Task Status','2020-08-26') , ( 'LABEL','ID_DRILL_DOWN_NUMBER_TASKS_PROCESS','en','Number of Tasks Status per Process','2020-08-26') , ( 'LABEL','ID_DRILL_DOWN_NUMBER_TASKS_PROCESS_BY_TASK','en','Number of Tasks Status per Process by task status','2020-08-26') ,