diff --git a/src/components/Discover/Conformance/ConformanceSidebar.vue b/src/components/Discover/Conformance/ConformanceSidebar.vue
index 8261cc6..325f0bc 100644
--- a/src/components/Discover/Conformance/ConformanceSidebar.vue
+++ b/src/components/Discover/Conformance/ConformanceSidebar.vue
@@ -18,8 +18,18 @@
+
selectConformanceTask: {{ selectConformanceTask }}
+ selectConformanceStartAndEnd: {{ selectConformanceStartAndEnd }}
+ selectConformanceStart: {{ selectConformanceStart }}
+ selectConformanceEnd: {{ selectConformanceEnd }}
+ selectConformanceFrom: {{ selectConformanceFrom }}
+ selectConformanceTo: {{ selectConformanceTo }}
+ listSeq: {{ listSeq }}
+ isSubmit: {{ isSubmit }}
+ isSubmitListSeq: {{ isSubmitListSeq }}
+ isSubmitStartAndEnd: {{ isSubmitStartAndEnd }}
-
+
@@ -28,8 +38,13 @@
-
+
@@ -48,9 +63,9 @@ export default {
const loadingStore = LoadingStore();
const conformanceStore = ConformanceStore();
const { isLoading } = storeToRefs(loadingStore);
- const { selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo } = storeToRefs(conformanceStore);
+ const { selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceAllTasks } = storeToRefs(conformanceStore);
- return { isLoading, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceStore }
+ return { isLoading, selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo, conformanceStore, conformanceAllTasks }
},
data() {
return {
@@ -63,6 +78,13 @@ export default {
selectConformanceFrom: null,
selectConformanceTo: null,
listSeq: [],
+ selectDurationData: null,
+ selectDurationTime: null,
+ isSubmit: false,
+ isSubmitTask: null,
+ isSubmitStartAndEnd: null,
+ isSubmitListSeq: [],
+ isSubmitDurationData: null,
}
},
components: {
@@ -72,17 +94,29 @@ export default {
ConformanceSelectResult,
},
methods: {
+ /**
+ * get Activity duration Time Range(duration)
+ * @param {string} task
+ * @returns {object} {min:12, max:345}
+ */
+ getDurationTime(task) {
+ this.conformanceAllTasks.forEach(i => {
+ if(i.label === task) this.selectDurationTime = i.duration;
+ });
+ },
/**
* @param {boolean} massage true | false 清空選單選項, 選擇的結果
*/
reset() {
- // Results page Cover Plate
- this.$emitter.emit('coverPlate', true);
+ // Results page Cover Plate
+ this.$emitter.emit('coverPlate', true);
// Have activity
- this.selectConformanceTask = null;
+ this.isSubmitTask = null;
// Activity sequence
- this.selectConformanceStartAndEnd = null;
- this.listSeq = null;
+ this.isSubmitStartAndEnd = null;
+ this.isSubmitListSeq = [];
+ // isSubmit
+ this.isSubmit = false;
// 其他子元件 reset
this.$emitter.emit('reset', null);
@@ -114,30 +148,38 @@ export default {
if(this.selectedRuleType === 'Have activity') { // Activity Sequence 選 Have activity(s) 的行為
if(!this.selectConformanceTask?.length) return this.$toast.error('Not selected.');
- else data = {
- type: 'contains-tasks',
- tasks: this.selectConformanceTask,
- };
+ else {
+ data = {
+ type: 'contains-tasks',
+ tasks: this.selectConformanceTask,
+ };
+ this.isSubmitTask = this.selectConformanceTask;
+ }
}else if(this.selectedRuleType === 'Activity sequence') { // Activity Sequence 選 Start & End 的行為
if(this.selectedActivitySequence === 'Start & End'){
if(this.selectConformanceStartAndEnd === null || this.selectConformanceStartAndEnd.length === 0) return this.$toast.error('Both Start and End must be selected.');
- else data = {
- type: 'start-end',
- starts_with: this.selectConformanceStartAndEnd[0],
- ends_with: this.selectConformanceStartAndEnd[1],
- };
+ else {
+ data = {
+ type: 'start-end',
+ starts_with: this.selectConformanceStartAndEnd[0],
+ ends_with: this.selectConformanceStartAndEnd[1],
+ };
+ this.isSubmitStartAndEnd = this.selectConformanceStartAndEnd;
+ }
}else if(this.selectedActivitySequence === 'Sequence'){ // Activity Sequence 選 Sequence 的行為
if(this.listSeq.length < 2) return this.$toast.error('Select two or more.');
else {
data = {
type: isMode,
task_seq: this.listSeq,
- }
+ };
+ this.isSubmitListSeq = this.listSeq;
}
}
- }
+ };
this.isLoading = true;
+ this.isSubmit = true;
await this.conformanceStore.addLogConformanceTempCheckerId(data);
await this.conformanceStore.getLogConformanceTempReport();
this.isShowBar = false;
@@ -148,7 +190,7 @@ export default {
},
},
created() {
- // this.isShowBar = true;
+ this.isShowBar = true;
this.$emitter.on('actListData', (data) => {
this.selectConformanceTask = data;
});
@@ -167,6 +209,11 @@ export default {
this.selectConformanceTo = data.task;
break;
default:
+ if(this.selectedRuleType === 'Activity sequence') this.listSequence = [data.task];
+ else if(this.selectedRuleType === 'Activity duration') {
+ this.selectDurationData = [data.task];
+ this.getDurationTime(data.task);
+ };
break;
};
if(this.selectConformanceStart !== null && this.selectConformanceEnd !== null){
@@ -175,7 +222,27 @@ export default {
});
this.$emitter.on('getListSequence', (data) => {
this.listSeq = data;
- })
+ });
+ // Radio 切換時,資料要清空
+ this.$emitter.on('isRadioChange', (data) => {
+ if(data) {
+ this.selectConformanceTask = null;
+ this.selectConformanceStartAndEnd = null;
+ this.selectConformanceStart = null;
+ this.selectConformanceEnd = null;
+ this.selectConformanceFrom = null;
+ this.selectConformanceTo = null;
+ this.listSeq = [];
+ this.selectDurationData = null;
+ this.selectDurationTime = null;
+ };
+ });
+ this.$emitter.on('isRadioSeqChange', (data) => {
+ if(data) {
+ this.selectConformanceStartAndEnd = null;
+ this.listSeq = [];
+ };
+ });
},
}
diff --git a/src/components/Discover/Conformance/ConformanceSidebar/ActList.vue b/src/components/Discover/Conformance/ConformanceSidebar/ActList.vue
index 0a596c9..d1a5ee0 100644
--- a/src/components/Discover/Conformance/ConformanceSidebar/ActList.vue
+++ b/src/components/Discover/Conformance/ConformanceSidebar/ActList.vue
@@ -17,14 +17,9 @@ export default {
props: ['data', 'select'],
data() {
return {
- actList: this.select
+ actList: this.select,
}
},
- watch: {
- select(newval){
- this.actList = newval;
- },
- },
methods: {
actListData() {
this.$emitter.emit('actListData', this.actList);
diff --git a/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue b/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue
index 68474e9..5046e1a 100644
--- a/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue
+++ b/src/components/Discover/Conformance/ConformanceSidebar/ActRadio.vue
@@ -20,11 +20,6 @@ export default {
selectedRadio: this.select,
}
},
- watch: {
- select(newval){
- this.selectedRadio = newval;
- },
- },
methods: {
actRadioData() {
this.$emitter.emit('actRadioData', {
diff --git a/src/components/Discover/Conformance/ConformanceSidebar/ActSeqDrag.vue b/src/components/Discover/Conformance/ConformanceSidebar/ActSeqDrag.vue
index e80d654..e074b3d 100644
--- a/src/components/Discover/Conformance/ConformanceSidebar/ActSeqDrag.vue
+++ b/src/components/Discover/Conformance/ConformanceSidebar/ActSeqDrag.vue
@@ -44,10 +44,9 @@
import sortNumEngZhtw from '@/module/sortNumEngZhtw.js';
export default {
- props: ['data', 'listSeq'],
+ props: ['data', 'listSeq', 'isSubmit'],
data() {
return {
- actList: null,
listSequence: [],
lastItemIndex: null,
}
@@ -56,8 +55,12 @@ export default {
datadata: function() {
// TODO Activity List 的 dblclick, drag & drop 要改假刪除
// Activity List 要排序
- if(this.data !== null) sortNumEngZhtw(this.data);
- return this.data;
+ let newData;
+ if(this.data !== null) {
+ newData = JSON.parse(JSON.stringify(this.data));
+ sortNumEngZhtw(newData);
+ }
+ return newData;
},
},
methods: {
@@ -83,7 +86,7 @@ export default {
* get listSequence
*/
getComponentData(){
- this.$emitter.emit('getListSequence', this.listSequence);
+ this.$emitter.emit('getListSequence',this.listSequence);
},
/**
* Element dragging started
@@ -118,6 +121,10 @@ export default {
this.listSequence = [];
});
},
+ mounted() {
+ let newlist = JSON.parse(JSON.stringify(this.listSeq));
+ this.isSubmit ? this.listSequence = newlist : this.listSequence = [];
+ },
}