Conformance: Activity sequence, Sequence, Directly follows done.
This commit is contained in:
@@ -1,36 +1,39 @@
|
||||
<template>
|
||||
<div class="px-4 text-sm">
|
||||
<!-- Have activity -->
|
||||
<div class="space-y-2" v-if="selectedRuleType === 'Have activity' || selectedRuleType === 'Activity duration'">
|
||||
<div class="flex justify-start items-center pr-4" v-for="(act, index) in data" :key="index">
|
||||
<span class="material-symbols-outlined text-primary mr-2">
|
||||
check_circle
|
||||
</span>
|
||||
<p class="px-2 py-1 border border-neutral-500 w-full whitespace-nowrap break-keep text-ellipsis overflow-hidden">{{ act }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<ResultCheck v-if="selectedRuleType === 'Have activity'" :data="containstTasksData"></ResultCheck>
|
||||
<!-- Activity sequence -->
|
||||
<div class="space-y-2" v-if="selectedRuleType === 'Activity sequence' && selectedActivitySequence === 'Sequence'">
|
||||
<div class="flex justify-start items-center pr-4" v-for="(act, index) in data" :key="index">
|
||||
<span class="material-symbols-outlined text-primary mr-2">
|
||||
arrow_circle_down
|
||||
</span>
|
||||
<p class="px-2 py-1 border border-neutral-500 w-full whitespace-nowrap break-keep text-ellipsis overflow-hidden">{{ act }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Processing time, Waiting time, Cycle time -->
|
||||
<ul v-if="(selectedRuleType === 'Activity sequence' && selectedActivitySequence === 'Start & End') || selectedRuleType === 'Processing time' || selectedRuleType === 'Waiting time' || selectedRuleType === 'Cycle time'">
|
||||
<li class="flex justify-start items-center py-1 pr-4" v-for="(act, index) in timeResultData" :key="index + act">
|
||||
<span class="material-symbols-outlined disc text-sm align-middle mr-1">fiber_manual_record</span>
|
||||
<span class="mr-2 block w-12">{{ act.scope }}</span>
|
||||
<span class="px-2 py-1 border border-neutral-500 w-full whitespace-nowrap break-keep text-ellipsis overflow-hidden block">{{ act.activity }}</span>
|
||||
</li>
|
||||
</ul>
|
||||
<ResultDot v-if="selectedRuleType === 'Activity sequence' && selectedActivitySequence === 'Start & End'" :timeResultData="startEndData"></ResultDot>
|
||||
<ResultArrow v-if="selectedRuleType === 'Activity sequence' && selectedActivitySequence === 'Sequence'" :data="listSequence"></ResultArrow>
|
||||
<!-- Activity duration -->
|
||||
<ResultCheck v-if="selectedRuleType === 'Activity duration'" :title="'Activities include'"></ResultCheck>
|
||||
<!-- Processing time -->
|
||||
<ResultArrow v-if="selectedRuleType === 'Processing time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'Start'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Processing time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'End'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Processing time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'Start & End'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Processing time' && selectedProcessScope === 'Partial' && selectedActSeqFromTo === 'From'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Processing time' && selectedProcessScope === 'Partial' && selectedActSeqFromTo === 'To'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Processing time' && selectedProcessScope === 'Partial' && selectedActSeqFromTo === 'From & To'"></ResultArrow>
|
||||
<!-- Waiting time -->
|
||||
<ResultArrow v-if="selectedRuleType === 'Waiting time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'Start'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Waiting time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'End'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Waiting time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'Start & End'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Waiting time' && selectedProcessScope === 'Partial' && selectedActSeqFromTo === 'From'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Waiting time' && selectedProcessScope === 'Partial' && selectedActSeqFromTo === 'To'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Waiting time' && selectedProcessScope === 'Partial' && selectedActSeqFromTo === 'From & To'"></ResultArrow>
|
||||
<!-- Cycle time -->
|
||||
<ResultArrow v-if="selectedRuleType === 'Cycle time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'Start'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Cycle time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'End'"></ResultArrow>
|
||||
<ResultArrow v-if="selectedRuleType === 'Cycle time' && selectedProcessScope === 'End to end' && selectedActSeqMore === 'Start & End'"></ResultArrow>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { storeToRefs } from 'pinia';
|
||||
import ConformanceStore from '@/stores/conformance.js';
|
||||
import ResultCheck from '@/components/Discover/Conformance/ConformanceSidebar/ResultCheck.vue';
|
||||
import ResultArrow from '@/components/Discover/Conformance/ConformanceSidebar/ResultArrow.vue';
|
||||
import ResultDot from '@/components/Discover/Conformance/ConformanceSidebar/ResultDot.vue';
|
||||
|
||||
export default {
|
||||
setup() {
|
||||
@@ -39,39 +42,81 @@ export default {
|
||||
|
||||
return { selectedRuleType, selectedActivitySequence, selectedMode, selectedProcessScope, selectedActSeqMore, selectedActSeqFromTo }
|
||||
},
|
||||
components: {
|
||||
ResultCheck,
|
||||
ResultArrow,
|
||||
ResultDot,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
data: null,
|
||||
timeResultData: [
|
||||
{
|
||||
id: 1,
|
||||
scope: 'Start',
|
||||
activity: '到院'
|
||||
},
|
||||
{
|
||||
id: 2,
|
||||
scope: 'End',
|
||||
activity: '出院'
|
||||
},
|
||||
{
|
||||
id: 3,
|
||||
scope: 'From',
|
||||
activity: '到院到院到院到院到院到院'
|
||||
},
|
||||
{
|
||||
id: 4,
|
||||
scope: 'Start',
|
||||
activity: '出院出院出院出院出院出院'
|
||||
},
|
||||
],
|
||||
containstTasksData: null,
|
||||
startEndData: null,
|
||||
start: null,
|
||||
end: null,
|
||||
from: null,
|
||||
to: null,
|
||||
listSequence: null,
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* set Time Result Data
|
||||
* @param {array} data
|
||||
* @returns {array}
|
||||
* timeResultData: [
|
||||
* {
|
||||
* id: 1,
|
||||
* category: 'start', start|end|from|to
|
||||
* task: '到院'
|
||||
* },
|
||||
* ]
|
||||
*/
|
||||
setTimeResultData(data) {
|
||||
let result = data.map((item, index) => {
|
||||
return {
|
||||
id: index + 1,
|
||||
category: item.category.replace(/^./, item.category[0].toUpperCase()),
|
||||
task: item.task
|
||||
}
|
||||
});
|
||||
return result;
|
||||
},
|
||||
},
|
||||
created() {
|
||||
this.$emitter.on('actListData', (data) => {
|
||||
this.data = data;
|
||||
this.containstTasksData = data;
|
||||
});
|
||||
this.$emitter.on('actRadioData', (data) => {
|
||||
switch (data.category) {
|
||||
case 'Start':
|
||||
this.start = [data];
|
||||
break;
|
||||
case 'End':
|
||||
this.end = [data];
|
||||
break;
|
||||
case 'From':
|
||||
this.from = [data];
|
||||
break;
|
||||
case 'To':
|
||||
this.to = [data];
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
};
|
||||
if(this.start !== null && this.end !== null){
|
||||
this.startEndData = [...this.start, ...this.end];
|
||||
};
|
||||
});
|
||||
this.$emitter.on('getListSequence', (data) => {
|
||||
this.listSequence = data;
|
||||
})
|
||||
this.$emitter.on('reset', (data) => {
|
||||
this.data = data;
|
||||
this.containstTasksData = data;
|
||||
this.startEndData = data;
|
||||
this.start = data;
|
||||
this.end = data;
|
||||
this.from = data;
|
||||
this.to = data;
|
||||
});
|
||||
},
|
||||
|
||||
|
||||
Reference in New Issue
Block a user