diff --git a/Thermo.Active/wwwroot/src/@types/warmers-channel.d.ts b/Thermo.Active/wwwroot/src/@types/warmers-channel.d.ts new file mode 100644 index 00000000..32dc9b5d --- /dev/null +++ b/Thermo.Active/wwwroot/src/@types/warmers-channel.d.ts @@ -0,0 +1,19 @@ +declare module Warmers { + + interface IChannel{ + idChannel: number, + idReflector: number, + setpointRecipe: number, + setpointTermocam: number, + setpointPLC: number, + channelStatus: number, + actualCurrent: number, + actualPerc: number, + maxPower: number + } + + interface IChannels{ + channels:IChannel[] + } + +} \ No newline at end of file diff --git a/Thermo.Active/wwwroot/src/@types/warmers-resistance.d.ts b/Thermo.Active/wwwroot/src/@types/warmers-resistance.d.ts new file mode 100644 index 00000000..bebc7b23 --- /dev/null +++ b/Thermo.Active/wwwroot/src/@types/warmers-resistance.d.ts @@ -0,0 +1,15 @@ +declare module Warmers { + + interface IResistance{ + id: number, + idChannel: number, + column: number, + row: number, + dimension: number + } + + interface IResistances{ + resistances:IResistance[] + } + +} \ No newline at end of file diff --git a/Thermo.Active/wwwroot/src/services/warmersService.ts b/Thermo.Active/wwwroot/src/services/warmersService.ts new file mode 100644 index 00000000..d5144e95 --- /dev/null +++ b/Thermo.Active/wwwroot/src/services/warmersService.ts @@ -0,0 +1,43 @@ +import { baseRestService } from "../_base/baseRestService"; +import {CONFIGURATION} from "@/config"; +import { warmersActions } from "@/store/warmers.store"; +import { store } from "@/store"; + +export class WarmersService extends baseRestService { + + BASE_URL = async () => (await CONFIGURATION).api.apiServerUrl + "/api/warmers/"; + + async GetChannels(){ + let result = await this.Get((await this.BASE_URL()) + "channels"); + warmersActions.setChannels(store, result as Warmers.IChannels); + return result; + } + + async GetResistances(){ + let result = await this.Get((await this.BASE_URL()) + "resistances"); + warmersActions.setResistances(store, result as Warmers.IResistances); + return result; + } + + async Update(model:any){ + let result = await this.Put((await this.BASE_URL()) + "update", model, true); + return result; + } + + async Confirm(){ + let result = await this.Put((await this.BASE_URL()) + "confirm", true); + return result; + } + + async Cancel(){ + let result = await this.Put((await this.BASE_URL()) + "cancel", true); + return result; + } + + async SetConfig(){ + let result = await this.Put((await this.BASE_URL()) + "setConfig", true); + return result; + } + +} +export const warmersService = new WarmersService(); \ No newline at end of file diff --git a/Thermo.Active/wwwroot/src/store/warmers.store.ts b/Thermo.Active/wwwroot/src/store/warmers.store.ts new file mode 100644 index 00000000..453c2b29 --- /dev/null +++ b/Thermo.Active/wwwroot/src/store/warmers.store.ts @@ -0,0 +1,55 @@ +export interface WarmersStoreModel { + channels: Warmers.IChannels; + resistances: Warmers.IResistances; +} + + +export interface WarmersActions { + setChannels(context, model: Warmers.IChannels); + setResistances(context, model: Warmers.IResistances); +} + +export interface WarmersGetters{ + getChannels: () => Warmers.IChannels; + getResistances: () => Warmers.IResistances; +} + +export const warmersStore = { + + state:{ + channels:{}, + resistances:{}, + } as WarmersStoreModel, + + getters: { + getChannels: (state) => (): Warmers.IChannels => (state as WarmersStoreModel).channels, + getResistances: (state) => (): Warmers.IResistances => (state as WarmersStoreModel).resistances, + }, + + mutations: { + + SetChannels(state, model: Warmers.IChannels){ + state.channels = model; + }, + + SetResistances(state, model: Warmers.IResistances){ + state.resistances = model; + }, + + }, + + actions: { + + setChannels(context, model: Warmers.IChannels){ + context.commit("SetChannels", model); + }, + + setResistances(context, model: Warmers.IResistances){ + context.commit("SetResistances", model); + }, + + } as WarmersActions + +} + +export const warmersActions = warmersStore.actions as WarmersActions; \ No newline at end of file