<template>
<td class="cs-table__action-col">
+ <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>
- <!-- <TagInputModal
- :visibility="state.isTagModalVisible"
- :tag="state.tag"
- @close="hideTagModal()"
- @done="Utils.compose(state.transaction, hideTagModal)()"
+ <!-- <IdTagInputModal
+ :visibility="state.isIdTagModalVisible"
+ :idTag="state.idTag"
+ @close="hideIdTagModal()"
+ @done="Utils.compose(state.transaction, hideIdTagModal)()"
>
- Start Charging Session
- </TagInputModal> -->
- <!-- TODO: Use transactionId to stop transaction -->
- <!-- <Button @click="stopTransaction()">Stop Transaction</Button> -->
+ 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__connector-col">{{ connectorId }}</td>
- <td class="cs-table__status-col">{{ connector.bootStatus }}</td>
+ <td class="cs-table__status-col">{{ connector.status }}</td>
+ <td class="cs-table__transaction-col">{{ connector.transactionStarted ? 'Yes' : 'No' }}</td>
</template>
<script setup lang="ts">
-import TagInputModal from './TagInputModal.vue';
+// import IdTagInputModal from './IdTagInputModal.vue';
import Button from '../buttons/Button.vue';
-import { reactive } from 'vue';
-import UIClient from '@/composable/UIClient';
-import { ConnectorStatus } from '@/type/ChargingStationType';
-import Utils from '@/composable/Utils';
+// import { reactive } from 'vue';
+import UIClient from '@/composables/UIClient';
+import type { ConnectorStatus } from '@/types/ChargingStationType';
+// import Utils from '@/composables/Utils';
const props = defineProps<{
hashId: string;
connector: ConnectorStatus;
+ connectorId: number;
transactionId?: number;
- connectorId?: number;
- tag?: string;
+ idTag?: string;
}>();
-type State = {
- isTagModalVisible: boolean;
- tag: string;
- transaction: () => void;
-};
-const state: State = reactive({
- isTagModalVisible: false,
- tag: '',
- transaction: startTransaction,
-});
+// type State = {
+// isIdTagModalVisible: boolean;
+// idTag: string;
+// transaction: () => void;
+// };
-function getTag(transaction: () => void): void {
- state.transaction = transaction;
- showTagModal();
-}
+// const state: State = reactive({
+// isIdTagModalVisible: false,
+// idTag: '',
+// transaction: startTransaction,
+// });
+
+// function getIdTag(transaction: () => void): void {
+// state.transaction = transaction;
+// showTagModal();
+// }
-function showTagModal(): void {
- state.isTagModalVisible = true;
+// function showTagModal(): void {
+// state.isIdTagModalVisible = true;
+// }
+// function hideIdTagModal(): void {
+// state.isIdTagModalVisible = false;
+// }
+
+function startChargingStation(): void {
+ UIClient.getInstance().startChargingStation(props.hashId);
}
-function hideTagModal(): void {
- state.isTagModalVisible = false;
+function stopChargingStation(): void {
+ UIClient.getInstance().stopChargingStation(props.hashId);
+}
+function openConnection(): void {
+ UIClient.getInstance().openConnection(props.hashId);
+}
+function closeConnection(): void {
+ UIClient.getInstance().closeConnection(props.hashId);
}
-
function startTransaction(): void {
- UIClient.instance.startTransaction(props.hashId, props.connectorId, props.tag);
+ UIClient.getInstance().startTransaction(props.hashId, props.connectorId, props.idTag);
}
function stopTransaction(): void {
- UIClient.instance.stopTransaction(props.hashId, props.transactionId);
+ UIClient.getInstance().stopTransaction(props.hashId, props.transactionId);
+}
+function startAutomaticTransactionGenerator(): void {
+ UIClient.getInstance().startAutomaticTransactionGenerator(props.hashId, props.connectorId);
+}
+function stopAutomaticTransactionGenerator(): void {
+ UIClient.getInstance().stopAutomaticTransactionGenerator(props.hashId, props.connectorId);
}
</script>