From c00123ddcbf425062e3ae1cded2a89af428cf0b6 Mon Sep 17 00:00:00 2001 From: chiayin Date: Thu, 14 Sep 2023 21:01:09 +0800 Subject: [PATCH] Issue #53: done. --- .../Conformance/ConformanceSidebar.vue | 99 +++++++++- .../ConformanceSidebar/ActRadio.vue | 13 +- .../ConformanceSelectResult.vue | 16 +- .../ConformanceSidebar/ConformanceShowBar.vue | 185 +++++++++++++----- src/stores/conformance.js | 2 + 5 files changed, 263 insertions(+), 52 deletions(-) diff --git a/src/components/Discover/Conformance/ConformanceSidebar.vue b/src/components/Discover/Conformance/ConformanceSidebar.vue index c131d8c..47d23a4 100644 --- a/src/components/Discover/Conformance/ConformanceSidebar.vue +++ b/src/components/Discover/Conformance/ConformanceSidebar.vue @@ -93,6 +93,12 @@ :isSubmitCfmCtEteStart="isSubmitCfmCtEteStart" :isSubmitCfmCtEteEnd="isSubmitCfmCtEteEnd" :isSubmitCfmCtEteSE="isSubmitCfmCtEteSE" + :isSubmitShowDataSeq="isSubmitShowDataSeq" + :isSubmitShowDataPtEte="isSubmitShowDataPtEte" + :isSubmitShowDataPtP="isSubmitShowDataPtP" + :isSubmitShowDataWtEte="isSubmitShowDataWtEte" + :isSubmitShowDataWtP="isSubmitShowDataWtP" + :isSubmitShowDataCt="isSubmitShowDataCt" > @@ -112,9 +118,9 @@ export default { const loadingStore = LoadingStore(); const conformanceStore = ConformanceStore(); const { isLoading } = storeToRefs(loadingStore); - const { selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceAllTasks, cfmPtEteWhole, cfmPtEteStart, cfmPtEteEnd, cfmPtEteSE, cfmPtPStart, cfmPtPEnd, cfmPtPSE, cfmWtEteWhole, cfmWtEteStart, cfmWtEteEnd, cfmWtEteSE, cfmWtPStart, cfmWtPEnd, cfmWtPSE, cfmCtEteWhole, cfmCtEteStart, cfmCtEteEnd, cfmCtEteSE } = storeToRefs(conformanceStore); + const { selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceAllTasks, cfmPtEteWhole, cfmPtEteStart, cfmPtEteEnd, cfmPtEteSE, cfmPtPStart, cfmPtPEnd, cfmPtPSE, cfmWtEteWhole, cfmWtEteStart, cfmWtEteEnd, cfmWtEteSE, cfmWtPStart, cfmWtPEnd, cfmWtPSE, cfmCtEteWhole, cfmCtEteStart, cfmCtEteEnd, cfmCtEteSE, isStartSelected, isEndSelected } = storeToRefs(conformanceStore); - return { isLoading, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceStore, conformanceAllTasks, cfmPtEteWhole, cfmPtEteStart, cfmPtEteEnd, cfmPtEteSE, cfmPtPStart, cfmPtPEnd, cfmPtPSE, cfmWtEteWhole, cfmWtEteStart, cfmWtEteEnd, cfmWtEteSE, cfmWtPStart, cfmWtPEnd, cfmWtPSE, cfmCtEteWhole, cfmCtEteStart, cfmCtEteEnd, cfmCtEteSE } + return { isLoading, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceStore, conformanceAllTasks, cfmPtEteWhole, cfmPtEteStart, cfmPtEteEnd, cfmPtEteSE, cfmPtPStart, cfmPtPEnd, cfmPtPSE, cfmWtEteWhole, cfmWtEteStart, cfmWtEteEnd, cfmWtEteSE, cfmWtPStart, cfmWtPEnd, cfmWtPSE, cfmCtEteWhole, cfmCtEteStart, cfmCtEteEnd, cfmCtEteSE, isStartSelected, isEndSelected } }, data() { return { @@ -191,6 +197,48 @@ export default { isSubmitTimeCfmCtEteStart: null, isSubmitTimeCfmCtEteEnd: null, isSubmitTimeCfmCtEteSE: null, + isSubmitShowDataSeq: { + task: null, + taskStart: null, + taskEnd: null, + isStartSelected: null, + isEndSelected: null + }, // To Start & End 連動資料 + isSubmitShowDataPtEte: { + task: null, + taskStart: null, + taskEnd: null, + isStartSelected: null, + isEndSelected: null + }, + isSubmitShowDataPtP: { + task: null, + taskStart: null, + taskEnd: null, + isStartSelected: null, + isEndSelected: null + }, + isSubmitShowDataWtEte: { + task: null, + taskStart: null, + taskEnd: null, + isStartSelected: null, + isEndSelected: null + }, + isSubmitShowDataWtP: { + task: null, + taskStart: null, + taskEnd: null, + isStartSelected: null, + isEndSelected: null + }, + isSubmitShowDataCt: { + task: null, + taskStart: null, + taskEnd: null, + isStartSelected: null, + isEndSelected: null + }, } }, components: { @@ -321,6 +369,32 @@ export default { // reset 成功訊息 this.$toast.success('Reset Success.'); }, + /** + * 設定 Start & End Data 連動資料 + * @param {string} start task + * @param {string} end task + * @returns {object} + */ + setSubmitShowData(start, end) { + if(this.isStartSelected) { + return { + task: start, + taskStart: start, + taskEnd: end, + isStartSelected:true, + isEndSelected: false + }; + }else { + return { + task: end, + taskStart: start, + taskEnd: end, + isStartSelected:false, + isEndSelected: true + }; + } + + }, /** * Apply button 發送選項,取得 Checker Id. */ @@ -361,6 +435,7 @@ export default { {category: 'Start', task: this.selectCfmSeqStart}, {category: 'End', task: this.selectCfmSeqEnd}, ]; + this.isSubmitShowDataSeq = this.setSubmitShowData(this.selectCfmSeqStart, this.selectCfmSeqEnd); }; break; case 'Sequence': // Activity Sequence 選 Sequence 的行為 @@ -471,10 +546,11 @@ export default { }; this.isSubmitReset(); this.isSubmitCfmPtEteSE = [ - {category: 'Start', task: this.selectCfmPtEteStart}, + {category: 'Start', task: this.selectCfmPtEteSEStart}, {category: 'End', task: this.selectCfmPtEteSEEnd}, ]; this.isSubmitTimeCfmPtEteSE = this.selectDurationTime; + this.isSubmitShowDataPtEte = this.setSubmitShowData(this.selectCfmPtEteSEStart, this.selectCfmPtEteSEEnd); } break; default: @@ -531,6 +607,7 @@ export default { {category: 'To', task: this.selectCfmPtPSEEnd}, ]; this.isSubmitTimeCfmPtPSEd = this.selectDurationTime; + this.isSubmitShowDataPtP = this.setSubmitShowData(this.selectCfmPtPSEStart, this.selectCfmPtPSEEnd); } break; default: @@ -602,6 +679,7 @@ export default { {category: 'End', task: this.selectCfmWtEteSEEnd}, ]; this.isSubmitTimeCfmWtEteSE = this.selectDurationTime; + this.isSubmitShowDataWtEte = this.setSubmitShowData(this.selectCfmWtEteSEStart, this.selectCfmWtEteSEEnd); } break; default: @@ -658,6 +736,7 @@ export default { {category: 'To', task: this.selectCfmWtPSEEnd}, ]; this.isSubmitTimeCfmWtPSE = this.selectDurationTime; + this.isSubmitShowDataWtP = this.setSubmitShowData(this.selectCfmWtPSEStart, this.selectCfmWtPSEEnd); } break; default: @@ -725,6 +804,7 @@ export default { {category: 'End', task: this.selectCfmCtEteSEEnd}, ]; this.isSubmitTimeCfmCtEteSE = this.selectDurationTime; + this.isSubmitShowDataCt = this.setSubmitShowData(this.selectCfmCtEteSEStart, this.selectCfmCtEteSEEnd); } break; default: @@ -750,6 +830,7 @@ export default { }, created() { this.isShowBar = true; + // 選取 list 的結果 this.$emitter.on('actListData', (data) => { this.selectConformanceTask = data; }); @@ -757,9 +838,11 @@ export default { switch (data.category) { // Activity sequence case 'cfmSeqStart': + if(this.isStartSelected === true && data.task !== this.selectCfmSeqStart) this.selectCfmSeqEnd = null; this.selectCfmSeqStart = data.task; break; case 'cfmSeqEnd': + if(this.isEndSelected === true && data.task !== this.selectCfmSeqEnd) this.selectCfmSeqStart = null; this.selectCfmSeqEnd = data.task; break; // Processing time @@ -770,9 +853,11 @@ export default { this.selectCfmPtEteEnd = data.task; break; case 'cfmPtEteSEStart': + if(this.isStartSelected === true && data.task !== this.selectCfmPtEteSEStart) this.selectCfmPtEteSEEnd = null; this.selectCfmPtEteSEStart = data.task; break; case 'cfmPtEteSEEnd': + if(this.isEndSelected === true && data.task !== this.selectCfmPtEteSEEnd) this.selectCfmPtEteSEStart = null; this.selectCfmPtEteSEEnd = data.task; break; case 'cfmPtPStart': @@ -782,9 +867,11 @@ export default { this.selectCfmPtPEnd = data.task; break; case 'cfmPtPSEStart': + if(this.isStartSelected === true && data.task !== this.selectCfmPtPSEStart) this.selectCfmPtPSEEnd = null; this.selectCfmPtPSEStart = data.task; break; case 'cfmPtPSEEnd': + if(this.isEndSelected === true && data.task !== this.selectCfmPtPSEEnd) this.selectCfmPtPSEStart = null; this.selectCfmPtPSEEnd = data.task; break; // Waiting time @@ -795,9 +882,11 @@ export default { this.selectCfmWtEteEnd = data.task; break; case 'cfmWtEteSEStart': + if(this.isStartSelected === true && data.task !== this.selectCfmWtEteSEStart) this.selectCfmWtEteSEEnd = null; this.selectCfmWtEteSEStart = data.task; break; case 'cfmWtEteSEEnd': + if(this.isEndSelected === true && data.task !== this.selectCfmWtEteSEEnd) this.selectCfmWtEteSEStart = null; this.selectCfmWtEteSEEnd = data.task; break; case 'cfmWtPStart': @@ -807,9 +896,11 @@ export default { this.selectCfmWtPEnd = data.task; break; case 'cfmWtPSEStart': + if(this.isStartSelected === true && data.task !== this.selectCfmWtPSEStart) this.selectCfmWtPSEEnd = null; this.selectCfmWtPSEStart = data.task; break; case 'cfmWtPSEEnd': + if(this.isEndSelected === true && data.task !== this.selectCfmWtPSEEnd) this.selectCfmWtPSEStart = null; this.selectCfmWtPSEEnd = data.task; break; // Cycle time @@ -820,9 +911,11 @@ export default { this.selectCfmCtEteEnd = data.task; break; case 'cfmCtEteSEStart': + if(this.isStartSelected === true && data.task !== this.selectCfmCtEteSEStart) this.selectCfmCtEteSEEnd = null; this.selectCfmCtEteSEStart = data.task; break; case 'cfmCtEteSEEnd': + if(this.isEndSelected === true && data.task !== this.selectCfmCtEteSEEnd) this.selectCfmCtEteSEStart = null; this.selectCfmCtEteSEEnd = data.task; break; default: diff --git a/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue b/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue index 982d4cf..d635a8b 100644 --- a/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue +++ b/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue @@ -14,14 +14,21 @@