Web UI: add and fix support for start/stop charging station
[e-mobility-charging-stations-simulator.git] / src / ui / web / src / components / charging-stations / CSData.vue
CommitLineData
32de5a57 1<template>
5a010bf0 2 <tr v-for="(connector, index) in getConnectors()" class="cs-table__row">
32de5a57
LM
3 <CSConnector
4 :hash-id="getHashId()"
5 :connector="connector"
6 :connector-id="index + 1"
5a010bf0
JB
7 :transaction-id="connector.transactionId"
8 :id-tag="props.idTag"
32de5a57
LM
9 />
10 <td class="cs-table__name-col">{{ getId() }}</td>
8fc2e5cc 11 <td class="cs-table__stopped-col">{{ getStopped() }}</td>
32de5a57 12 <td class="cs-table__vendor-col">{{ getVendor() }}</td>
5a010bf0 13 <td class="cs-table__model-col">{{ getModel() }}</td>
32de5a57
LM
14 <td class="cs-table__firmware-col">{{ getFirmwareVersion() }}</td>
15 </tr>
16</template>
17
18<script setup lang="ts">
19import CSConnector from './CSConnector.vue';
20
5a010bf0 21// import { reactive } from 'vue';
32de5a57
LM
22import Utils from '@/composable/Utils';
23import {
24 ChargingStationData,
25 ChargingStationInfo,
26 ConnectorStatus,
27} from '@/type/ChargingStationType';
28
29const props = defineProps<{
30 chargingStation: ChargingStationData;
5a010bf0 31 idTag: string;
32de5a57
LM
32}>();
33
5a010bf0
JB
34// type State = {
35// isTagModalVisible: boolean;
36// idTag: string;
37// };
38
39// const state: State = reactive({
40// isTagModalVisible: false,
41// idTag: '',
42// });
32de5a57
LM
43
44function getHashId(): string {
45 return props.chargingStation.hashId;
46}
5a010bf0 47function getConnectors(): ConnectorStatus[] {
32de5a57
LM
48 return props.chargingStation.connectors.slice(1);
49}
50function getInfo(): ChargingStationInfo {
51 return props.chargingStation.stationInfo;
52}
53function getId(): string {
54 return Utils.ifUndefined<string>(getInfo().chargingStationId, 'Ø');
55}
56function getModel(): string {
57 return getInfo().chargePointModel;
58}
59function getVendor(): string {
60 return getInfo().chargePointVendor;
61}
62function getFirmwareVersion(): string {
63 return Utils.ifUndefined<string>(getInfo().firmwareVersion, 'Ø');
64}
8fc2e5cc
JB
65function getStopped(): string {
66 return props.chargingStation.stopped ? 'Yes' : 'No';
67}
32de5a57
LM
68// function showTagModal(): void {
69// state.isTagModalVisible = true;
70// }
71// function hideTagModal(): void {
72// state.isTagModalVisible = false;
73// }
74</script>