WIP: not sure what is aaa and bbb meaning in /rule/log/aaa/conformance/bbb

This commit is contained in:
Cindy Chang
2024-06-11 09:15:16 +08:00
parent d6cb329a5c
commit 444b7d6975
3 changed files with 33 additions and 6 deletions

View File

@@ -119,6 +119,14 @@ const routes = [
component: CompareDashboard,
}
]
},
{
path: "/rule/:type/:fileId/conformance/:checkId",
name: "CheckConformance",
component: Conformance,
meta: {
file: {},
}
}
]
},

View File

@@ -264,7 +264,6 @@ export default defineStore('conformanceStore', {
else if(logCreateCheckId !== null) {
api = `/api/log-checks/${logCreateCheckId}`;
}
try {
const response = await this.$axios.get(api);
!getRouteFile ? this.allConformanceTempReportData = response.data : this.allRouteFile = response.data.file;
@@ -447,5 +446,12 @@ export default defineStore('conformanceStore', {
apiError(error, 'Failed to updata an Existing Conformance.');
}
},
/**
* Set the state value of conformance log creation check ID
* @param {string} createCheckID
*/
setConformanceLogCreateCheckId(createCheckID) {
this.conformanceLogCreateCheckId = createCheckID;
},
},
})

View File

@@ -21,9 +21,17 @@ export default {
const loadingStore = LoadingStore();
const conformanceStore = ConformanceStore();
const { isLoading } = storeToRefs(loadingStore);
const { conformanceLogId, conformanceFilterId, conformanceLogCreateCheckId, conformanceFilterCreateCheckId, conformanceLogTempCheckId, conformanceFilterTempCheckId, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceRuleData, conformanceTempReportData, conformanceFileName } = storeToRefs(conformanceStore);
const { conformanceLogId, conformanceFilterId, conformanceLogCreateCheckId, conformanceFilterCreateCheckId,
conformanceLogTempCheckId, conformanceFilterTempCheckId, selectedRuleType, selectedActivitySequence,
selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceRuleData,
conformanceTempReportData, conformanceFileName,
} = storeToRefs(conformanceStore);
return { isLoading, conformanceLogId, conformanceFilterId, conformanceLogCreateCheckId, conformanceFilterCreateCheckId, conformanceLogTempCheckId, conformanceFilterTempCheckId, conformanceStore, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceRuleData, conformanceTempReportData, conformanceFileName }
return { isLoading, conformanceLogId, conformanceFilterId, conformanceLogCreateCheckId, conformanceFilterCreateCheckId,
conformanceLogTempCheckId, conformanceFilterTempCheckId, conformanceStore, selectedRuleType,
selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo,
conformanceRuleData, conformanceTempReportData, conformanceFileName
};
},
components: {
StatusBar,
@@ -82,23 +90,28 @@ export default {
},
async beforeRouteEnter(to, from, next) {
const isCheckPage = to.name.includes('Check');
if (isCheckPage) {
const conformanceStore = ConformanceStore();
// Save token in Headers.
// (?:^|.;\s):匹配 "luciaToken" 之前的內容,允許它在字符串開頭或某個分號之後。
// luciaToken\s=\s**:匹配 "luciaToken=",並忽略兩邊的空格。
// ([^;]*):捕獲 "luciaToken" 的值,直到遇到下一個分號或字符串結尾。
// .*$:匹配剩餘的字符,確保完整的提取。
// |^.*$:在找不到 "luciaToken" 的情況下,匹配整個字符串。
// 實際應用
const token = document.cookie.replace(/(?:(?:^|.*;\s*)luciaToken\s*\=\s*([^;]*).*$)|^.*$/, "$1");
axios.defaults.headers.common['Authorization'] = `Bearer ${token}`;
switch (to.params.type) {
case 'log':
conformanceStore.conformanceLogCreateCheckId = to.params.fileId;
conformanceStore.setConformanceLogCreateCheckId(to.params.fileId);
break;
case 'filter':
conformanceStore.conformanceFilterCreateCheckId = to.params.fileId;
break;
}
await conformanceStore.getConformanceReport();
to.meta.file = await conformanceStore.conformanceTempReportData.file; // 將 file data 存到 route 給 Navbar, StatusBar 使用
to.meta.file = await conformanceStore.conformanceTempReportData?.file; // 將 file data 存到 route 給 Navbar, StatusBar 使用
}
next();
}