diff --git a/src/components/Discover/Conformance/ConformanceResults.vue b/src/components/Discover/Conformance/ConformanceResults.vue index 138f2fd..a9354c7 100644 --- a/src/components/Discover/Conformance/ConformanceResults.vue +++ b/src/components/Discover/Conformance/ConformanceResults.vue @@ -271,7 +271,7 @@ export default { watch: { conformanceTempReportData: { handler: function(newValue) { - if(newValue?.rule && newValue.rule.min) { + if(newValue?.rule && newValue.rule.min != null) { this.selectDurationTime = { min: newValue.rule.min, max: newValue.rule.max, diff --git a/src/components/Discover/Conformance/ConformanceSidebar.vue b/src/components/Discover/Conformance/ConformanceSidebar.vue index 7f14feb..e51442a 100644 --- a/src/components/Discover/Conformance/ConformanceSidebar.vue +++ b/src/components/Discover/Conformance/ConformanceSidebar.vue @@ -611,7 +611,7 @@ export default { } } }, 300); - } + }, } }, methods: { diff --git a/src/components/Discover/StatusBar.vue b/src/components/Discover/StatusBar.vue index da6d3a3..0147ab2 100644 --- a/src/components/Discover/StatusBar.vue +++ b/src/components/Discover/StatusBar.vue @@ -149,23 +149,15 @@ export default { }, async mounted() { let params = this.$route.params; - let parent = this.$route.meta.parent; + let file = this.$route.meta.file; + let isCheckPage = this.$route.name.includes('Check'); switch (params.type) { case 'log': - this.logId = params.fileId; + this.logId = isCheckPage ? file.parent.id : params.fileId; break; case 'filter': - this.createFilterId = params.fileId; - break; - case 'rule': - switch (parent.type) { - case 'log': - this.logId = parent.id; - break; - case 'filter': - this.createFilterId = parent.id; - } + this.createFilterId = isCheckPage ? file.parent.id : params.fileId; break; } await this.allMapDataStore.getAllMapData(); diff --git a/src/components/Navbar.vue b/src/components/Navbar.vue index faa556e..6852bef 100644 --- a/src/components/Navbar.vue +++ b/src/components/Navbar.vue @@ -80,7 +80,7 @@ export default { showNavbarBreadcrumb: false, navViewData: { - // FILES: ['ALL', 'DISCOVER', 'COMPARE', 'DESIGN'], + // FILES: ['ALL', 'DISCOVER', 'COMPARE', 'DESIGN', 'SIMULATION'], FILES: ['ALL', 'DISCOVER', 'COMPARE'], // DISCOVER: ['MAP', 'CONFORMANCE', 'PERFORMANCE', 'DATA'] DISCOVER: ['MAP', 'CONFORMANCE', 'PERFORMANCE'], @@ -132,6 +132,7 @@ export default { switchNavItem(event) { let type; let fileId; + let isCheckPage; this.isActive = event.target.innerText; switch (this.navViewName) { @@ -141,22 +142,20 @@ export default { case 'DISCOVER': type = this.$route.params.type; fileId = this.$route.params.fileId; + isCheckPage = this.$route.name.includes('Check'); switch (event.target.innerText) { case 'MAP': - if(type === 'rule') this.$router.push({name: 'CheckMap'}); + if(isCheckPage) this.$router.push({name: 'CheckMap', params: { type: type, fileId: fileId }}); else this.$router.push({name: 'Map', params: { type: type, fileId: fileId }}); break; case 'CONFORMANCE': - if(type === 'rule') this.$router.push({name: 'CheckConformance'}); + if(isCheckPage) this.$router.push({name: 'CheckConformance', params: { type: type, fileId: fileId }}); else this.$router.push({name: 'Conformance', params: { type: type, fileId: fileId }}); break case 'PERFORMANCE': - if(type === 'rule') { - type = this.$route.params.checkType; - fileId = this.$route.params.checkFileId; - } - this.$router.push({name: 'Performance', params: { type: type, fileId: fileId }}); + if(isCheckPage) this.$router.push({name: 'CheckPerformance', params: { type: type, fileId: fileId }}); + else this.$router.push({name: 'Performance', params: { type: type, fileId: fileId }}); break; } break; @@ -185,6 +184,7 @@ export default { this.isActive = 'CONFORMANCE'; break; case 'Performanc': + case 'CheckPerformanc': this.isActive = 'PERFORMANCE'; break; } @@ -219,14 +219,15 @@ export default { }else if(this.logId){ await saveFilter(this.allMapDataStore.addFilterId); // 存檔後為 filterID,換網址不跳頁,使用 push 記錄歷史路由 - await this.$router.push(`/discover/map/filter/${this.createFilterId}`); + await this.$router.push(`/discover/filter/${this.createFilterId}/map`); }; break; case 'CheckMap': // 無論 parentLog, parentFilter,做新 filter 皆另存新檔 await saveFilter(this.allMapDataStore.addFilterId); // 存檔後為 filterID,換網址不跳頁,使用 push 記錄歷史路由 - await this.$router.push(`/discover/map/filter/${this.createFilterId}`); + await this.$router.push(`/discover/filter/${this.createFilterId}/map`); + console.log('Check Map save filter need to check_id'); case 'Conformance': case 'CheckConformance': // 先判斷有沒有 check Id,有就儲存 return,沒有就往下走 @@ -237,8 +238,8 @@ export default { } else { await saveConformance(this.conformanceStore.addConformanceCreateCheckId); // 存檔後為 checkID,換網址不跳頁,使用 push 記錄歷史路由 - if(this.conformanceLogId) await this.$router.push(`/rule/log/${this.conformanceLogCreateCheckId}/conformance/${this.conformanceLogId}`); - else if(this.conformanceFilterId) await this.$router.push(`/rule/filter/${this.conformanceFilterCreateCheckId}/conformance/${this.conformanceFilterId}`); + if(this.conformanceLogId) await this.$router.push(`/discover/conformance/log/${this.conformanceLogCreateCheckId}/conformance`); + else if(this.conformanceFilterId) await this.$router.push(`/discover/conformance/filter/${this.conformanceFilterCreateCheckId}/conformance`); } break; } diff --git a/src/router/index.js b/src/router/index.js index d19ee6c..87b2c16 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -57,21 +57,76 @@ const routes = [ name: "Discover", children: [ { - // type: log | filter | rule(名稱待討論) | log-check | filter-check - // 如果 type === rule 則轉 log-check | filter-check - path: "/discover/map/:type/:fileId", + // type: log | filter + // fileId: log_id | filter_id + path: "/discover/:type/:fileId/map", name: "Map", component: Map, }, { - // type: log | filter | rule(名稱待討論) - path: "/discover/conformance/:type/:fileId", + // type: log | filter + // fileId: log_id | filter_id + path: "/discover/:type/:fileId/conformance", name: "Conformance", component: Conformance, - mate: { - parent: {} + }, + { + // type: log | filter + // fileId: log_id | filter_id + path: "/discover/:type/:fileId/performance", + name: "Performance", + component: Performance, + }, + { + // type: log | filter + // fileId: check_id,透過 `/log-checks/{check_id}` 取得 parent data + path: "/discover/conformance/:type/:fileId/map", + name: "CheckMap", + component: Map, + meta: { + file: {}, // parent log or parent filter } }, + { + // type: log | filter + // fileId: check_id,透過 `/log-checks/{check_id}` 取得 parent data + path: "/discover/conformance/:type/:fileId/conformance", + name: "CheckConformance", + component: Conformance, + meta: { + file: {}, // parent log or parent filter + } + }, + { + // type: log | filter + // fileId: check_id,透過 `/log-checks/{check_id}` 取得 parent data + path: "/discover/conformance/:type/:fileId/performance", + name: "CheckPerformance", + component: Performance, + meta: { + file: {}, // parent log or parent filter + } + }, + // { + // // type: log | filter | log-check | filter-check + // path: "/discover/map/:type/:fileId", + // name: "Map", + // component: Map, + // mate: { + // parent: {}, // parent log or parent filter + // base: {} // { type: 'rule', fileId: rule id } + // } + // }, + // { + // // type: log | filter | rule(名稱待討論) + // path: "/discover/conformance/:type/:fileId", + // name: "Conformance", + // component: Conformance, + // mate: { + // parent: {}, // parent log or parent filter + // base: {} // { type: 'rule', fileId: rule id } + // } + // }, // { // // type: rule(名稱待討論) // // checkType: log | filter @@ -86,11 +141,15 @@ const routes = [ // component: Conformance, // props: true, // }, - { - path: "/discover/performance/:type/:fileId", - name: "Performance", - component: Performance, - } + // { + // path: "/discover/performance/:type/:fileId", + // name: "Performance", + // component: Performance, + // mate: { + // parent: {}, // parent log or parent filter + // base: {} // { type: 'rule', fileId: rule id } + // } + // } ] }, { diff --git a/src/stores/conformance.js b/src/stores/conformance.js index 8067c94..58a5c2e 100644 --- a/src/stores/conformance.js +++ b/src/stores/conformance.js @@ -12,8 +12,6 @@ export default defineStore('conformanceStore', { conformanceFilterTempCheckId: null, // Filter 檔存檔前的 check Id conformanceLogCreateCheckId: null, // log 檔存檔後的 check Id(rule) conformanceFilterCreateCheckId: null, // Filter 檔存檔後的 check Id(rule) - conformanceType: null, // log-check | filter-check 已存檔的 rule - conformanceParent: null, // parent log or parent filter allConformanceTask: [], allCfmSeqStart: [], allCfmSeqEnd: [], @@ -21,6 +19,7 @@ export default defineStore('conformanceStore', { allWaitingTime: {}, allCycleTime: {}, allConformanceTempReportData: null, + allRouteFile: null, allIssueTraces: null, allTaskSeq: null, allCases: null, @@ -110,6 +109,9 @@ export default defineStore('conformanceStore', { conformanceTempReportData: state => { return state.allConformanceTempReportData; }, + routeFile: state => { + return state.allRouteFile; + }, issueTraces: state => { return state.allIssueTraces; }, @@ -228,8 +230,9 @@ export default defineStore('conformanceStore', { }, /** * Get the Temporary Log Conformance Report + * @param {boolean} getRouteFile 是否為了取得 route file 而呼叫?使用在非 Conformance page */ - async getConformanceReport() { + async getConformanceReport(getRouteFile = false) { let logTempCheckId = this.conformanceLogTempCheckId; let filterTempCheckId = this.conformanceFilterTempCheckId; let logCreateCheckId = this.conformanceLogCreateCheckId; @@ -244,7 +247,7 @@ export default defineStore('conformanceStore', { try { const response = await this.$axios.get(api); - this.allConformanceTempReportData = response.data; + !getRouteFile ? this.allConformanceTempReportData = response.data : this.allRouteFile = response.data.file; } catch(error) { apiError(error, 'Failed to Get the Temporary Log Conformance Report.'); } diff --git a/src/views/Discover/Conformance/index.vue b/src/views/Discover/Conformance/index.vue index 17bec6a..cf2a708 100644 --- a/src/views/Discover/Conformance/index.vue +++ b/src/views/Discover/Conformance/index.vue @@ -9,24 +9,21 @@ diff --git a/src/views/Discover/Performance/index.vue b/src/views/Discover/Performance/index.vue index 6400a1a..77106b4 100644 --- a/src/views/Discover/Performance/index.vue +++ b/src/views/Discover/Performance/index.vue @@ -61,7 +61,12 @@
No waiting time.
+