diff options
Diffstat (limited to 'src/store/modules/Health')
-rw-r--r-- | src/store/modules/Health/FanStore.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/store/modules/Health/FanStore.js b/src/store/modules/Health/FanStore.js new file mode 100644 index 00000000..2de388bf --- /dev/null +++ b/src/store/modules/Health/FanStore.js @@ -0,0 +1,35 @@ +import api from '@/store/api'; + +const FanStore = { + namespaced: true, + state: { + fans: [] + }, + getters: { + fans: state => state.fans + }, + mutations: { + setFanInfo: (state, data) => { + state.fans = data.map(fan => { + const { MemberId, Status = {}, PartNumber, SerialNumber } = fan; + return { + id: MemberId, + health: Status.Health, + partNumber: PartNumber, + serialNumber: SerialNumber, + statusState: Status.State + }; + }); + } + }, + actions: { + async getFanInfo({ commit }) { + return await api + .get('/redfish/v1/Chassis/chassis/Thermal') + .then(({ data: { Fans = [] } }) => commit('setFanInfo', Fans)) + .catch(error => console.log(error)); + } + } +}; + +export default FanStore; |