refactor(ui): move the charging stations data array to vue.js global
[e-mobility-charging-stations-simulator.git] / ui / web / src / components / charging-stations / CSConnector.vue
index 08852683919d87167451d24c402e8866170fbf4e..81d24face817efd795563e1e5127968091f1914f 100644 (file)
@@ -1,91 +1,48 @@
 <template>
-  <td class="cs-table__column">
-    <Button @click="startChargingStation()">Start Charging Station</Button>
-    <Button @click="stopChargingStation()">Stop Charging Station</Button>
-    <Button @click="openConnection()">Open Connection</Button>
-    <Button @click="closeConnection()">Close Connection</Button>
-    <Button @click="startTransaction()">Start Transaction</Button>
-    <!-- <IdTagInputModal
-      :visibility="state.isIdTagModalVisible"
-      :id-tag="state.idTag"
-      @close="hideIdTagModal()"
-      @done="compose(state.transaction, hideIdTagModal)()"
-    >
-      Start Transaction
-    </IdTagInputModal> -->
-    <Button @click="stopTransaction()">Stop Transaction</Button>
-    <Button @click="startAutomaticTransactionGenerator()">Start ATG</Button>
-    <Button @click="stopAutomaticTransactionGenerator()">Stop ATG</Button>
-  </td>
-  <td class="cs-table__column">{{ connectorId }}</td>
-  <td class="cs-table__column">{{ connector.status ?? 'Ø' }}</td>
-  <td class="cs-table__column">{{ connector.transactionStarted === true ? 'Yes' : 'No' }}</td>
+  <tr class="connectors-table__row">
+    <td class="connectors-table__column">{{ connectorId }}</td>
+    <td class="connectors-table__column">{{ connector.status ?? 'Ø' }}</td>
+    <td class="connectors-table__column">
+      {{ connector.transactionStarted === true ? 'Yes' : 'No' }}
+    </td>
+    <td class="connectors-table__column">
+      {{ atgStatus?.start === true ? 'Yes' : 'No' }}
+    </td>
+    <td class="connectors-table__column">
+      <Button @click="startTransaction()">Start Transaction</Button>
+      <Button @click="stopTransaction()">Stop Transaction</Button>
+      <Button @click="startAutomaticTransactionGenerator()">Start ATG</Button>
+      <Button @click="stopAutomaticTransactionGenerator()">Stop ATG</Button>
+    </td>
+  </tr>
 </template>
 
 <script setup lang="ts">
 import { getCurrentInstance } from 'vue'
-// import { reactive } from 'vue';
-// import IdTagInputModal from '@/components/charging-stations/IdTagInputModal.vue'
 import Button from '@/components/buttons/Button.vue'
-import type { ConnectorStatus } from '@/types'
-// import { compose } from '@/composables'
+import type { ConnectorStatus, Status } from '@/types'
 
 const props = defineProps<{
   hashId: string
-  connector: ConnectorStatus
   connectorId: number
+  connector: ConnectorStatus
+  atgStatus?: Status
   transactionId?: number
   idTag?: string
 }>()
 
-// type State = {
-//   isIdTagModalVisible: boolean
-//   idTag: string
-//   transaction: () => void
-// }
-
-// const state: State = reactive({
-//   isIdTagModalVisible: false,
-//   idTag: '',
-//   transaction: startTransaction
-// })
-
-// function getIdTag(transaction: () => void): void {
-//   state.transaction = transaction
-//   showTagModal()
-// }
-
-// function showTagModal(): void {
-//   state.isIdTagModalVisible = true
-// }
-// function hideIdTagModal(): void {
-//   state.isIdTagModalVisible = false
-// }
+const uiClient = getCurrentInstance()?.appContext.config.globalProperties.$uiClient
 
-const UIClient = getCurrentInstance()?.appContext.config.globalProperties.$UIClient
-
-function startChargingStation(): void {
-  UIClient.startChargingStation(props.hashId)
-}
-function stopChargingStation(): void {
-  UIClient.stopChargingStation(props.hashId)
-}
-function openConnection(): void {
-  UIClient.openConnection(props.hashId)
-}
-function closeConnection(): void {
-  UIClient.closeConnection(props.hashId)
-}
 function startTransaction(): void {
-  UIClient.startTransaction(props.hashId, props.connectorId, props.idTag)
+  uiClient.startTransaction(props.hashId, props.connectorId, props.idTag)
 }
 function stopTransaction(): void {
-  UIClient.stopTransaction(props.hashId, props.transactionId)
+  uiClient.stopTransaction(props.hashId, props.transactionId)
 }
 function startAutomaticTransactionGenerator(): void {
-  UIClient.startAutomaticTransactionGenerator(props.hashId, props.connectorId)
+  uiClient.startAutomaticTransactionGenerator(props.hashId, props.connectorId)
 }
 function stopAutomaticTransactionGenerator(): void {
-  UIClient.stopAutomaticTransactionGenerator(props.hashId, props.connectorId)
+  uiClient.stopAutomaticTransactionGenerator(props.hashId, props.connectorId)
 }
 </script>