From 830f4d30a92e2f9160525b4298c387d726e66e8b Mon Sep 17 00:00:00 2001 From: chiayin Date: Wed, 18 Oct 2023 12:40:51 +0800 Subject: [PATCH] Conformance Filter: fetch filter params API done. --- .../Conformance/ConformanceResults.vue | 2 +- .../Discover/Conformance/MoreModal.vue | 2 +- .../Discover/Conformance/StatusBar.vue | 2 +- src/components/Discover/Map/Filter/Trace.vue | 2 +- src/stores/conformance.js | 27 +++++++++++-------- src/views/Discover/Conformance/index.vue | 7 ++--- src/views/Files/index.vue | 4 +-- 7 files changed, 26 insertions(+), 20 deletions(-) diff --git a/src/components/Discover/Conformance/ConformanceResults.vue b/src/components/Discover/Conformance/ConformanceResults.vue index aa96f45..ff9a20e 100644 --- a/src/components/Discover/Conformance/ConformanceResults.vue +++ b/src/components/Discover/Conformance/ConformanceResults.vue @@ -287,7 +287,7 @@ export default { */ getPercentLabel(val){ if((val * 100).toFixed(1) >= 100) return 100; - else return (val * 100).toFixed(1); + else return parseFloat((val * 100).toFixed(1)); }, /** * Convert seconds to days diff --git a/src/components/Discover/Conformance/MoreModal.vue b/src/components/Discover/Conformance/MoreModal.vue index ec6791e..26c3588 100644 --- a/src/components/Discover/Conformance/MoreModal.vue +++ b/src/components/Discover/Conformance/MoreModal.vue @@ -161,7 +161,7 @@ export default { */ getPercentLabel(val){ if((val * 100).toFixed(1) >= 100) return 100; - else return (val * 100).toFixed(1); + else return parseFloat((val * 100).toFixed(1)); }, /** * set progress bar width diff --git a/src/components/Discover/Conformance/StatusBar.vue b/src/components/Discover/Conformance/StatusBar.vue index cc840be..c0adc83 100644 --- a/src/components/Discover/Conformance/StatusBar.vue +++ b/src/components/Discover/Conformance/StatusBar.vue @@ -109,7 +109,7 @@ export default { */ getPercentLabel(val){ if((val * 100).toFixed(1) >= 100) return 100; - else return (val * 100).toFixed(1); + else return parseFloat((val * 100).toFixed(1)); }, /** * setting stats data diff --git a/src/components/Discover/Map/Filter/Trace.vue b/src/components/Discover/Map/Filter/Trace.vue index 0e7b74b..5b71096 100644 --- a/src/components/Discover/Map/Filter/Trace.vue +++ b/src/components/Discover/Map/Filter/Trace.vue @@ -204,7 +204,7 @@ export default { */ getPercentLabel(val){ if((val * 100).toFixed(1) >= 100) return 100; - else return (val * 100).toFixed(1); + else return parseFloat((val * 100).toFixed(1)); }, /** * set progress bar width diff --git a/src/stores/conformance.js b/src/stores/conformance.js index 75c2300..deb17a6 100644 --- a/src/stores/conformance.js +++ b/src/stores/conformance.js @@ -6,9 +6,9 @@ import apiError from '@/module/apiError.js'; export default defineStore('conformanceStore', { state: () => ({ - conformanceLogId: null, - conformanceFilterId: null, - conformanceTempCheckId: null, + conformanceLogId: null, // log 檔 + conformanceFilterId: null, // filter 檔 + conformanceLogTempCheckId: null, // log 檔存檔前的 check Id allConformanceTask: [], allCfmSeqStart: [], allCfmSeqEnd: [], @@ -177,9 +177,14 @@ export default defineStore('conformanceStore', { /** * fetch Log Conformance Parameters api for Rule Settings. */ - async getLogConformanceParams() { + async getConformanceParams() { let logId = this.conformanceLogId; - const api = `/api/log-checks/params?log_id=${logId}`; + let filterId = this.conformanceFilterId; + let api = ''; + + // 先判斷 filter 檔,再判斷 log 檔。 + if(filterId !== null) api = `/api/filter-checks/params?filter_id=${filterId}`; + else api = `/api/log-checks/params?log_id=${logId}`; try { const response = await this.$axios.get(api); @@ -202,7 +207,7 @@ export default defineStore('conformanceStore', { try { const response = await this.$axios.post(api, data); - this.conformanceTempCheckId = response.data.id; + this.conformanceLogTempCheckId = response.data.id; } catch(error) { apiError(error, 'Failed to add the Temporary Check for a log.'); } @@ -211,7 +216,7 @@ export default defineStore('conformanceStore', { * Get the Temporary Log Conformance Report */ async getLogConformanceTempReport() { - let checkId = this.conformanceTempCheckId; + let checkId = this.conformanceLogTempCheckId; const api = `/api/temp-log-checks/${checkId}`; try { @@ -225,7 +230,7 @@ export default defineStore('conformanceStore', { * Get the detail of a temporary log conformance issue. */ async getLogConformanceIssue(issueNo) { - let checkId = this.conformanceTempCheckId; + let checkId = this.conformanceLogTempCheckId; const api = `/api/temp-log-checks/${checkId}/issues/${issueNo}`; try { @@ -239,7 +244,7 @@ export default defineStore('conformanceStore', { * Get the Trace Details of a Temporary Log Conformance lssue. */ async getLogConformanceTraceDetail(issueNo, traceId, start) { - let checkId = this.conformanceTempCheckId; + let checkId = this.conformanceLogTempCheckId; const api = `/api/temp-log-checks/${checkId}/issues/${issueNo}/traces/${traceId}?start=${start}&page_size=20`; try { @@ -256,7 +261,7 @@ export default defineStore('conformanceStore', { * Get the Details of a Temporary Log Conformance Loop. */ async getLogConformanceLoop(loopNo) { - let checkId = this.conformanceTempCheckId; + let checkId = this.conformanceLogTempCheckId; let api = `/api/temp-log-checks/${checkId}/loops/${loopNo}`; try { @@ -270,7 +275,7 @@ export default defineStore('conformanceStore', { * Get the Trace Details of a Temporary Log Conformance Loops. */ async getLogConformanceLoopsTraceDetail(loopNo, traceId, start) { - let checkId = this.conformanceTempCheckId; + let checkId = this.conformanceLogTempCheckId; const api = `/api/temp-log-checks/${checkId}/loops/${loopNo}/traces/${traceId}?start=${start}&page_size=20`; try { diff --git a/src/views/Discover/Conformance/index.vue b/src/views/Discover/Conformance/index.vue index 4221569..07c3ba5 100644 --- a/src/views/Discover/Conformance/index.vue +++ b/src/views/Discover/Conformance/index.vue @@ -20,9 +20,9 @@ export default { const loadingStore = LoadingStore(); const conformanceStore = ConformanceStore(); const { isLoading } = storeToRefs(loadingStore); - const { conformanceLogId, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo } = storeToRefs(conformanceStore); + const { conformanceLogId, conformanceFilterId, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo } = storeToRefs(conformanceStore); - return { isLoading, conformanceLogId, conformanceStore, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, } + return { isLoading, conformanceLogId, conformanceFilterId, conformanceStore, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, } }, components: { StatusBar, @@ -33,8 +33,9 @@ export default { // let logId; this.isLoading = true; if(this.$route.params.type === 'log') this.conformanceLogId = this.$route.params.fileId; + else if(this.$route.params.type === 'filter') this.conformanceFilterId = this.$route.params.fileId; - await this.conformanceStore.getLogConformanceParams(); + await this.conformanceStore.getConformanceParams(); this.isLoading = false; }, diff --git a/src/views/Files/index.vue b/src/views/Files/index.vue index 5fe4bb1..a13f42d 100644 --- a/src/views/Files/index.vue +++ b/src/views/Files/index.vue @@ -142,14 +142,14 @@ fileId = file.id; type = 'log'; params = { type: type, fileId: fileId }; - this.$router.push({name: 'Map', params: { type: type, fileId: fileId, state: params }}); + this.$router.push({name: 'Map', params: params, query: params}); break; case 'Filter': this.createFilterId = file.id; fileId = file.id; type = 'filter'; params = { type: type, fileId: fileId }; - this.$router.push({name: 'Map', params: params, state: params}); + this.$router.push({name: 'Map', params: params, query: params}); break; default: break;