summaryrefslogtreecommitdiff
path: root/src/store/modules/HardwareStatus/SystemStore.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/store/modules/HardwareStatus/SystemStore.js')
-rw-r--r--src/store/modules/HardwareStatus/SystemStore.js72
1 files changed, 72 insertions, 0 deletions
diff --git a/src/store/modules/HardwareStatus/SystemStore.js b/src/store/modules/HardwareStatus/SystemStore.js
new file mode 100644
index 00000000..55f37542
--- /dev/null
+++ b/src/store/modules/HardwareStatus/SystemStore.js
@@ -0,0 +1,72 @@
+import api from '@/store/api';
+import i18n from '@/i18n';
+
+const SystemStore = {
+ namespaced: true,
+ state: {
+ systems: [],
+ },
+ getters: {
+ systems: (state) => state.systems,
+ },
+ mutations: {
+ setSystemInfo: (state, data) => {
+ const system = {};
+ system.assetTag = data.AssetTag;
+ system.description = data.Description;
+ system.firmwareVersion = data.BiosVersion;
+ system.hardwareType = data.Name;
+ system.health = data.Status.Health;
+ system.id = data.Id;
+ system.locationIndicatorActive = data.LocationIndicatorActive;
+ system.locationNumber = data.LocationNumber;
+ system.manufacturer = data.Manufacturer;
+ system.memorySummaryHealth = data.MemorySummary.Status.Health;
+ system.memorySummaryHealthRollup = data.MemorySummary.Status.HealthRollup;
+ system.memorySummaryState = data.MemorySummary.Status.State;
+ system.model = data.Model;
+ system.processorSummaryCount = data.ProcessorSummary.Count;
+ system.processorSummaryHealth = data.ProcessorSummary.Status.Health;
+ system.processorSummaryHealthRoll =
+ data.ProcessorSummary.Status.HealthRollup;
+ system.processorSummaryState = data.ProcessorSummary.Status.State;
+ system.powerState = data.PowerState;
+ system.serialNumber = data.SerialNumber;
+ system.healthRollup = data.Status.HealthRollup;
+ system.subModel = data.SubModel;
+ system.statusState = data.Status.State;
+ system.systemType = data.SystemType;
+ state.systems = [system];
+ },
+ },
+ actions: {
+ async getSystem({ commit }) {
+ return await api
+ .get('/redfish/v1/Systems/system')
+ .then(({ data }) => commit('setSystemInfo', data))
+ .catch((error) => console.log(error));
+ },
+ changeIdentifyLedState({ dispatch }, ledState) {
+ api
+ .patch('/redfish/v1/Systems/system', {
+ LocationIndicatorActive: ledState,
+ })
+ .then(() => dispatch('getSystem'))
+ .catch((error) => {
+ dispatch('getSystem');
+ console.log('error', error);
+ if (ledState) {
+ throw new Error(
+ i18n.t('pageHardwareStatus.toast.errorEnableIdentifyLed')
+ );
+ } else {
+ throw new Error(
+ i18n.t('pageHardwareStatus.toast.errorDisableIdentifyLed')
+ );
+ }
+ });
+ },
+ },
+};
+
+export default SystemStore;