feat(ui): add right action bar and use it to start transaction
[e-mobility-charging-stations-simulator.git] / ui / web / src / components / charging-stations / CSConnector.vue
CommitLineData
32de5a57 1<template>
9dc8b66f
JB
2 <tr class="connectors-table__row">
3 <td class="connectors-table__column">{{ connectorId }}</td>
4 <td class="connectors-table__column">{{ connector.status ?? 'Ø' }}</td>
5 <td class="connectors-table__column">
6 {{ connector.transactionStarted === true ? 'Yes' : 'No' }}
7 </td>
8 <td class="connectors-table__column">
9 {{ atgStatus?.start === true ? 'Yes' : 'No' }}
10 </td>
11 <td class="connectors-table__column">
c317ae3e
JB
12 <Button
13 @click="
14 $router.push({
15 name: 'start-transaction',
16 params: { hashId, chargingStationId, connectorId }
17 })
18 "
19 >Start Transaction</Button
20 >
9dc8b66f
JB
21 <Button @click="stopTransaction()">Stop Transaction</Button>
22 <Button @click="startAutomaticTransactionGenerator()">Start ATG</Button>
23 <Button @click="stopAutomaticTransactionGenerator()">Stop ATG</Button>
24 </td>
25 </tr>
32de5a57
LM
26</template>
27
28<script setup lang="ts">
9d76f5ec 29import { getCurrentInstance } from 'vue'
9d76f5ec 30import Button from '@/components/buttons/Button.vue'
9dc8b66f 31import type { ConnectorStatus, Status } from '@/types'
32de5a57
LM
32
33const props = defineProps<{
66a7748d 34 hashId: string
c317ae3e 35 chargingStationId: string
66a7748d 36 connectorId: number
9dc8b66f
JB
37 connector: ConnectorStatus
38 atgStatus?: Status
66a7748d 39}>()
32de5a57 40
57c0ba05 41const uiClient = getCurrentInstance()?.appContext.config.globalProperties.$uiClient
9d76f5ec 42
8fc2e5cc 43function stopTransaction(): void {
c317ae3e 44 uiClient.stopTransaction(props.hashId, props.connector.transactionId)
8fc2e5cc 45}
757b2ecf 46function startAutomaticTransactionGenerator(): void {
57c0ba05 47 uiClient.startAutomaticTransactionGenerator(props.hashId, props.connectorId)
757b2ecf
JB
48}
49function stopAutomaticTransactionGenerator(): void {
57c0ba05 50 uiClient.stopAutomaticTransactionGenerator(props.hashId, props.connectorId)
757b2ecf 51}
32de5a57 52</script>