{"version":3,"file":"endeprosoftware-e-connect-web-service.mjs","sources":["../../../../projects/endepro/e-connect-web-service/src/lib/base.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/e-connect-web-service.module.ts","../../../../projects/endepro/e-connect-web-service/src/lib/public.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/base-auth.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/account.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/alarm.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/boxes.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/client.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/cycle-time.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/dashboard.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/page.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/paged-data.ts","../../../../projects/endepro/e-connect-web-service/src/lib/data.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/device.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/dynamicDashboard.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/file-classifications.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/group.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/issue.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/language.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/machine.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/machine-reference.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/machine-file.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/machine-time-status.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/maintenante.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/manage-plugins.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/measure-unit.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/menu.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/module.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/notifications.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/of.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/param.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/phases-references.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/phases.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/references.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/rejectionType.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/share.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/statistics.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/stops-graph.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/stopType.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/suggest-stop.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/texma.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/tooling.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/url-helper.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/user-service.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/versions.service.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Account.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/AlarmData.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/AllData.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Box.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Client.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/CycleTime.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/dashboard.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/dataBlock.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/device.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/dynamicDashboard.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/failedPiece.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/fileClassification.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/graphic.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Group.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/GroupParam.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/issue.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/LongMenu.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/machineComplete.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/machineFile.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/machineName.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/machine.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/machine-version.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/maintenance.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/measureUnit.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/MenuPlugin.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Menu.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Module.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Notification.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/of.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Param.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/PeriodTimeStatus.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Permissions.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/PhaseReference.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Phase.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/plannedStop.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Plugin.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Reference.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/rejectionType.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/server-response.model.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/session.model.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/ShareGroup.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/statisticData.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/stop.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/stopType.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/SuggestStop.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/TexmaItem.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/Timestamp.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/tooling.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/user.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/version.ts","../../../../projects/endepro/e-connect-web-service/src/lib/models/workerProduction.ts","../../../../projects/endepro/e-connect-web-service/src/public-api.ts","../../../../projects/endepro/e-connect-web-service/src/endeprosoftware-e-connect-web-service.ts"],"sourcesContent":["import { Inject, Injectable } from '@angular/core';\n\n@Injectable()\nexport class BaseService {\n    \n    constructor(@Inject('env') protected env:any) {\n    }\n    \n    protected getAPIURL(): string {\n        return this.env.apiURL;\n    }\n    protected getWEBSOCKETURL(): string {\n        return this.env.webSocketURL;\n    }\n    protected getBasePath(): string {\n        return this.getAPIURL()+\"api/\";\n    }\n\n}","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { BaseService } from './base.service';\n\n@NgModule({\n    declarations: [],\n    imports: [],\n    exports: []\n})\nexport class EConnectWebServiceModule {\n    static forRoot(environment): ModuleWithProviders<EConnectWebServiceModule> {\n        return {\n            ngModule: EConnectWebServiceModule,\n            providers: [\n                BaseService,\n                { provide: 'env', useValue: environment }\n            ]\n        };\n    }\n}\n","\nimport { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { Subject } from 'rxjs';\n\nimport { CookieService } from 'ng2-cookies'\n\nimport { BaseService } from \"./base.service\";\nimport { Session } from \"./models/session.model\";\nimport { GroupParam } from './models/GroupParam';\nimport { Module } from './models/Module';\n\nconst COOKIE_NAME_ACCESS_TOKEN:       string = \"accessToken\";\nconst COOKIE_NAME_ACCESS_TOKEN_GROUP: string = \"accessTokenGroup\";\nconst COOKIE_NAME_CLAM_ID:            string = \"claimId\";\nconst COOKIE_NAME_CLAIMS_ID:          string = \"claimsId\";\nconst COOKIE_NAME_IS_GROUP_PARTNER:   string = \"isGroupPartner\";\nconst COOKIE_NAME_BASE_PATH:          string = \"basePath\";\nconst COOKIE_NAME_GROUP_ID:           string = \"groupId\";\nconst COOKIE_NAME_AVATAR_ID:          string = \"avatarId\";\nconst COOKIE_NAME_AVATAR_FILENAME:    string = \"avatarFilename\";\nconst COOKIE_NAME_USER_NAME:          string = \"userName\";\nconst COOKIE_NAME_GROUP_USER_NAME:    string = \"groupUserName\";\nconst COOKIE_NAME_GROUP_PASSWORD:     string = \"groupPassword\";\nconst COOKIE_NAME_NAME:               string = \"name\";\nconst COOKIE_NAME_LANGUAGE:           string = \"language\";\nconst COOKIE_NAME_PARTNER_NAME:       string = \"partnerName\";\nconst COOKIE_NAME_EMAIL:              string = \"eMail\";\nconst COOKIE_USER_ID:                 string = \"userId\";\nconst COOKIE_NAME_MACHINE_ID:         string = \"machineId\";\nconst COOKIE_NAME_MACHINE_NAME:       string = \"machineName\";\nconst COOKIE_NAME_MACHINE_MODEL:      string = \"machineModel\";\nconst COOKIE_NAME_WORKER_CODE:        string = \"workerCode\";\nconst COOKIE_NAME_GROUP_PARAMS:       string = \"groupParams\";\nconst COOKIE_NAME_GROUP_MODULES:      string = \"groupModules\";\n\nconst TOKEN_TYPE: string = \"END4-AES-1 \";\nconst FILTER = 'filter';\n\n@Injectable()\nexport class PublicService extends BaseService {\n\n    public partnerChange:Subject<string> = new Subject();\n\n    constructor(private httpClient: HttpClient,\n        private cookieService: CookieService,\n        @Inject('env') protected env:any) {\n        super(env);\n\n        this.cookieService.set(COOKIE_NAME_BASE_PATH, super.getBasePath(), 365);\n    }\n\n    public get isSuperadmin(): boolean {\n        return this.getClaims().find(item => item == 'superadmin') != undefined;\n    }\n\n    public get isAdmin(): boolean {\n        return this.getClaims().find(item => item == 'admin') != undefined;\n    }\n\n    public get isResponsable(): boolean {\n        return this.getClaims().find(item => item == 'responsable') != undefined;\n    }\n\n    public get isWorker(): boolean {\n        return this.getClaims().find(item => item == 'worker') != undefined;\n    }\n\n    public get isUser(): boolean {\n        return this.getClaims().find(item => item == 'user') != undefined;\n    }\n\n    public get isOwner(): boolean {\n        return this.getClaims().find(item => item == 'owner') != undefined;\n    }\n\n    public getGroupParam(paramKey: string): string {\n        return this.getGroupParams().find((item) => item.paramId == paramKey)?.value;\n    }\n\n    public getGroupModule(moduleKey: string): boolean {\n        return this.getGroupModules().find((item) => item.id == moduleKey) != undefined;\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"public/\";\n    }\n\n    public getCSS(partnerName: string) {\n        let url = this.getBasePath() + \"PartnerCSS/\" + partnerName;\n        return url;\n    }\n\n    public getPartnerLogo(partnerName: string) {\n        let url = this.getBasePath() + \"PartnerLogo/\" + partnerName;\n        return url;\n    }\n\n    public getRawColors() {\n        let url = this.getBasePath() + \"Colors/Raw\";\n        return this.httpClient.get<Array<string>>(url);\n    }\n\n    public login(username: string, password: string) {\n        var body = {\n            username: username,\n            password: password\n        }\n\n        var url = this.getBasePath() + \"Login\";\n\n        return this.httpClient.post<Session>(url, body);\n    }\n\n    public loginToken(token: string) {\n        var body = {\n            token: token\n        }\n        var url = this.getBasePath() + \"Login/Token\";\n\n        return this.httpClient.post<Session>(url,  body);\n    }\n\n    public CompleteRestorePassword(password: string, passwordRep: string, token: string) {\n        var body = {\n            newPassword: password,\n            newPassword2: passwordRep,\n            token: token,\n        }\n        var url = this.getBasePath() + \"/CompleteRestorePassword\";\n        return this.httpClient.post(url, body);\n    }\n\n    public CompleteRegister(password: string, passwordRep: string, token: string) {\n        var body = {\n            newPassword: password,\n            newPassword2: passwordRep,\n            token: token,\n        }\n        var url = this.getBasePath() + \"/CompleteRegister\";\n        return this.httpClient.post(url, body);\n    }\n\n    public StartRestorePassword(email: string) {\n        var body = {\n            Email: email\n        }\n        var partnerName = this.getPartnerName();\n        var url = this.getBasePath() + \"StartRestorePassword\" + (partnerName != undefined ? \"/\" + partnerName : \"\");\n        return this.httpClient.post(url, body);\n    }\n\n    private removeAllCookies() {\n        var partnerName = this.getPartnerName();\n        var language = this.getLanguage();\n\n        this.cookieService.deleteAll();\n\n        this.cookieService.set(COOKIE_NAME_BASE_PATH, super.getBasePath(), 365);\n\n        this.setLanguage(language);\n        this.setPartnerName(partnerName);\n    }\n\n    public logout() {\n        this.removeAllCookies();\n    }\n\n    public logoutWorker() {\n        var groupToken    = this.getAccessTokenGroup();\n        var groupPassword = this.getGroupPassword();\n        var groupUsername = this.getGroupUserName();\n        var machineName   = this.getMachineName();\n        var machineModel  = this.getMachineModel();\n        var machineId     = this.getMachineId();\n\n        this.removeAllCookies();\n\n        this.setMachineId(machineId);\n        this.setMachineModel(machineModel);\n        this.setMachineName(machineName);\n        this.setGroupUserName(groupUsername);\n        this.setGroupPassword(groupPassword);\n        this.setAccessTokenGroup(groupToken);\n    }\n\n    public setAccessTokenGroup(accessToken: string) {\n        this.cookieService.set(COOKIE_NAME_ACCESS_TOKEN_GROUP, accessToken, 365);\n    }\n\n    public getAccessTokenGroup(): string {\n        return this.cookieService.get(COOKIE_NAME_ACCESS_TOKEN_GROUP);\n    }\n\n    public deleteAccessTokenGroup() {\n        return this.cookieService.delete(COOKIE_NAME_ACCESS_TOKEN_GROUP);\n    }\n\n    public setAccessToken(accessToken: string) {\n        this.cookieService.set(COOKIE_NAME_ACCESS_TOKEN, accessToken, 365);\n    }\n\n    public getAccessToken(): string {\n        return this.cookieService.get(COOKIE_NAME_ACCESS_TOKEN);\n    }\n\n    public deleteAccessToken() {\n        return this.cookieService.delete(COOKIE_NAME_ACCESS_TOKEN);\n    }\n\n    public getTokenType(): string {\n        return TOKEN_TYPE;\n    }\n\n    public setClaims(claims: string[]) {\n        this.cookieService.set(COOKIE_NAME_CLAIMS_ID, JSON.stringify(claims), 365);\n\n        if (claims.length > 0)\n            this.cookieService.set(COOKIE_NAME_CLAM_ID, claims[0], 365);\n    }\n\n    public getClaims(): string[] {\n        try {\n            return JSON.parse(this.cookieService.get(COOKIE_NAME_CLAIMS_ID))\n        }\n        catch (error) {\n            return [];\n        }\n    }\n\n    public deleteClaims() {\n        return this.cookieService.delete(COOKIE_NAME_CLAIMS_ID);\n    }\n\n    public setUserId(userId: string) {\n        this.cookieService.set(COOKIE_USER_ID, userId, 365);\n    }\n\n    public getUserId(): string{\n        return this.cookieService.get(COOKIE_USER_ID);\n    }\n\n    public deleteUserId() {\n        return this.cookieService.delete(COOKIE_USER_ID);\n    }\n\n    public setGroupId(gropId: string) {\n        this.cookieService.set(COOKIE_NAME_GROUP_ID, gropId, 365);\n    }\n\n    public getGroupId(): string {\n        return this.cookieService.get(COOKIE_NAME_GROUP_ID);\n    }\n\n    public deleteGroupId() {\n        return this.cookieService.delete(COOKIE_NAME_GROUP_ID);\n    }\n\n    public setIsGroupPartner(isGroupPartner: boolean) {\n        this.cookieService.set(COOKIE_NAME_IS_GROUP_PARTNER, isGroupPartner ? \"1\" : \"0\", 365);\n    }\n\n    public getIsGroupPartner(): boolean {\n        return this.cookieService.get(COOKIE_NAME_IS_GROUP_PARTNER) == \"1\";\n    }\n\n    public deleteIsGroupPartner() {\n        return this.cookieService.delete(COOKIE_NAME_IS_GROUP_PARTNER);\n    }\n\n    public setAvatarFilename(avatarFilename: string) {\n        if (avatarFilename == null)\n            avatarFilename = \"\";\n        this.cookieService.set(COOKIE_NAME_AVATAR_FILENAME, avatarFilename, 365);\n    }\n\n    public getAvatarFilename(): string {\n        return this.cookieService.get(COOKIE_NAME_AVATAR_FILENAME);\n    }\n\n    public deleteAvatarFilename() {\n        return this.cookieService.delete(COOKIE_NAME_AVATAR_FILENAME);\n    }\n\n    public setAvatarId(avatarId: string) {\n        if (avatarId == null)\n            avatarId = \"\";\n        this.cookieService.set(COOKIE_NAME_AVATAR_ID, avatarId, 365);\n    }\n\n    public getAvatarId(): string {\n        return this.cookieService.get(COOKIE_NAME_AVATAR_ID);\n    }\n\n    public deleteAvatarId() {\n        return this.cookieService.delete(COOKIE_NAME_AVATAR_ID);\n    }\n\n    public setUserName(username: string) {\n        this.cookieService.set(COOKIE_NAME_USER_NAME, username, 365);\n    }\n\n    public getUserName(): string {\n        return this.cookieService.get(COOKIE_NAME_USER_NAME);\n    }\n\n    public deleteUserName() {\n        return this.cookieService.delete(COOKIE_NAME_USER_NAME);\n    }\n\n    public setGroupUserName(username: string) {\n        this.cookieService.set(COOKIE_NAME_GROUP_USER_NAME, username, 365);\n    }\n\n    public getGroupUserName(): string {\n        return this.cookieService.get(COOKIE_NAME_GROUP_USER_NAME);\n    }\n\n    public deleteGroupUserName() {\n        return this.cookieService.delete(COOKIE_NAME_GROUP_USER_NAME);\n    }\n\n    public setGroupPassword(password: string) {\n        this.cookieService.set(COOKIE_NAME_GROUP_PASSWORD, password, 365);\n    }\n\n    public getGroupPassword(): string {\n        return this.cookieService.get(COOKIE_NAME_GROUP_PASSWORD);\n    }\n\n    public deleteGroupPassword() {\n        return this.cookieService.delete(COOKIE_NAME_GROUP_PASSWORD);\n    }\n\n    public setName(name: string) {\n        this.cookieService.set(COOKIE_NAME_NAME, name, 365);\n    }\n\n    public getName(): string {\n        return this.cookieService.get(COOKIE_NAME_NAME);\n    }\n\n    public deleteName() {\n        return this.cookieService.delete(COOKIE_NAME_NAME);\n    }\n\n    public setLanguage(language: string) {\n        this.cookieService.set(COOKIE_NAME_LANGUAGE, language, 365);\n    }\n\n    public getLanguage(): string {\n        return this.cookieService.get(COOKIE_NAME_LANGUAGE);\n    }\n\n    public deleteLanguage() {\n        return this.cookieService.delete(COOKIE_NAME_LANGUAGE);\n    }\n\n    public setPartnerName(partnerName) {\n        if (partnerName == undefined || partnerName == \"\")\n            this.cookieService.delete(COOKIE_NAME_PARTNER_NAME);\n        else\n            this.cookieService.set(COOKIE_NAME_PARTNER_NAME, partnerName, 365);\n        this.partnerChange.next(partnerName);\n    }\n\n    public getPartnerName(): string {\n        return this.cookieService.get(COOKIE_NAME_PARTNER_NAME);\n    }\n\n    public deletePartnerName() {\n        return this.cookieService.delete(COOKIE_NAME_PARTNER_NAME);\n    }\n\n    public setEMail(mail: string) {\n        this.cookieService.set(COOKIE_NAME_EMAIL, mail, 365);\n    }\n\n    public getEMail(): string {\n        return this.cookieService.get(COOKIE_NAME_EMAIL);\n    }\n\n    public deleteEMail() {\n        return this.cookieService.delete(COOKIE_NAME_EMAIL);\n    }\n\n    public setMachineId(machineId: string) {\n        this.cookieService.set(COOKIE_NAME_MACHINE_ID, machineId, 365);\n    }\n\n    public getMachineId(): string {\n        return this.cookieService.get(COOKIE_NAME_MACHINE_ID);\n    }\n\n    public deleteMachineId() {\n        return this.cookieService.delete(COOKIE_NAME_MACHINE_ID);\n    }\n\n    public setMachineName(machineName: string) {\n        this.cookieService.set(COOKIE_NAME_MACHINE_NAME, machineName, 365);\n    }\n\n    public getMachineName(): string {\n        return this.cookieService.get(COOKIE_NAME_MACHINE_NAME);\n    }\n\n    public deleteMachineName() {\n        return this.cookieService.delete(COOKIE_NAME_MACHINE_NAME);\n    }\n\n    public setMachineModel(machineModel: string) {\n        this.cookieService.set(COOKIE_NAME_MACHINE_MODEL, machineModel, 365);\n    }\n\n    public getMachineModel(): string {\n        return this.cookieService.get(COOKIE_NAME_MACHINE_MODEL);\n    }\n\n    public deleteMachineModel() {\n        return this.cookieService.delete(COOKIE_NAME_MACHINE_MODEL);\n    }\n\n    public setWorkerCode(workerCode: string) {\n        this.cookieService.set(COOKIE_NAME_WORKER_CODE, workerCode, 365);\n    }\n\n    public getWorkerCode(): string {\n        return this.cookieService.get(COOKIE_NAME_WORKER_CODE);\n    }\n\n    public deleteWorkerCode() {\n        return this.cookieService.delete(COOKIE_NAME_WORKER_CODE);\n    }\n\n    public setGroupParams(params: GroupParam[]) {\n        this.cookieService.set(COOKIE_NAME_GROUP_PARAMS, JSON.stringify(params), 365);\n    }\n\n    public getGroupParams(): GroupParam[] {\n        try {\n            return JSON.parse(this.cookieService.get(COOKIE_NAME_GROUP_PARAMS))\n        }\n        catch (error) {\n            return [];\n        }\n    }\n\n    public deleteGroupParams() {\n        this.cookieService.delete(COOKIE_NAME_GROUP_PARAMS)\n    }\n\n    public setGroupModules(modules: Module[]) {\n        this.cookieService.set(COOKIE_NAME_GROUP_MODULES, JSON.stringify(modules), 365);\n    }\n\n    public getGroupModules(): Module[] {\n        try {\n            return JSON.parse(this.cookieService.get(COOKIE_NAME_GROUP_MODULES))\n        }\n        catch (error) {\n            return [];\n        }\n    }\n\n    public deleteGroupModules() {\n        this.cookieService.delete(COOKIE_NAME_GROUP_MODULES)\n    }\n\n    public isAuthenticated(): Promise<any> {\n        return new Promise(\n            (resolve, reject) => {\n                resolve(this.getAccessToken() != null && this.getAccessToken() != \"\")\n            }\n        );\n    }\n\n    public HasGroupToken(): boolean {\n        var token = this.getAccessTokenGroup();\n        return token != undefined && token != null &&  token != \"\";\n    }\n\n    public _GetBasePath() {\n        return super.getBasePath();\n    }\n\n    public GetMachineFile(fileId: string) {\n        return this.getBasePath() + \"DownloadFile/\" + fileId + \"?token=\" + btoa(this.getAccessToken());\n    }\n\n    public GetMachineVersionActivePhoto(id: string, size:number) {\n        return this.getBasePath() + \"Photo/Last/\" + id + \"?size=\" + size;\n    }\n\n    public GetAvatarPhoto(photoId, photoFileName, size:number) {\n        return this.getBasePath() + \"Avatar/Photo/\" + photoId + \"/\" + photoFileName + \"?size=\" + size;\n    }\n\n    public GetAvatarUserPhoto(userId, size:number) {\n        return this.getBasePath() + \"Avatar/UserPhoto/\" + userId + \"?size=\" + size;\n    }\n\n    public GetPhaseReferencePhoto(photoId, photoFileName, size:number) {\n        return this.getBasePath() + \"PhaseReference/Photo/\" + photoId + \"/\" + photoFileName + \"?size=\" + size;\n    }\n\n    public GetReferencePhoto(photoId, photoFileName, size:number) {\n        return this.getBasePath() + \"Reference/Photo/\" + photoId + \"/\" + photoFileName + \"?size=\" + size;\n    }\n\n    public GetToolingPhoto(photoId, photoFileName, size:number){\n        return this.getBasePath() + \"Tooling/Photo/\" + photoId + \"/\" + photoFileName + \"?size=\" + size;\n    }\n\n  public getFilters(filterId): any {\n    const response = localStorage.getItem(FILTER + filterId);\n    return response;\n  }\n\n  public setFilters(filterId, filter): void {\n    const filterName = FILTER + filterId;\n    localStorage.setItem(filterName, JSON.stringify(filter));\n  }\n\n  checkSavedFilters(filterId): boolean{\n    let savedFilter = false;\n    const filters = localStorage.getItem(FILTER + filterId);\n    if (filters && filters !== undefined && filters != null) {\n      savedFilter = true;\n    }\n    return savedFilter;\n  }\n\n}\n","import { HttpHeaders } from \"@angular/common/http\";\nimport { BaseService } from \"./base.service\";\nimport { PublicService } from \"./public.service\";\nimport { Inject, Injectable } from \"@angular/core\";\n\n@Injectable()\nexport class BaseAuthService extends BaseService {\n\n    constructor (public publicService: PublicService,\n        @Inject('env') protected env:any) {\n        super(env); \n    }\n\n    public getHeaders(): HttpHeaders {\n        return new HttpHeaders().\n            set('Authorization', 'END4-AES-1 '+ this.publicService.getAccessToken());\n    }\n\n    public getHeadersGroup(): HttpHeaders {\n        return new HttpHeaders().\n            set('Authorization', 'END4-AES-1 '+ this.publicService.getAccessTokenGroup());\n    }\n}","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { Account } from '../public-api';\n\n@Injectable()\nexport class AccountService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Account/\";\n    }\n\n    public getAccount() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Account>(url, { headers: this.getHeaders() });\n    }\n\n    public putAccount(body){\n      let url = this.getBasePath();\n      let head = this.getHeaders();\n      return this.httpClient.put<Account>(url, body, {headers: head});\n    }\n    \n    public changePassword(body){\n        let url = this.getBasePath() + \"ChangePassword/\";\n        let head = this.getHeaders();\n        return this.httpClient.post(url, body, {headers: head, responseType:'text'});\n    }\n    \n    public saveAvatar(file) {\n        let url = this.getBasePath() + \"Avatar/\";\n        \n        const formData = new FormData();\n        formData.append(\"file\", file);\n        \n        return this.httpClient.put(url, formData, { headers: this.getHeaders(), responseType:'text' });\n    }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { AlarmConf, AlarmData, AlarmNotification } from './models/AlarmData';\n\n@Injectable()\nexport class AlarmService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Alarm/\";\n    }\n\n    public getAlarms(deviceId, filter = null) {\n        let url = this.getBasePath() + deviceId;\n\n        let params = new HttpParams();\n\n        if (filter != null)\n            params = params.append('filter', filter);\n\n        return this.httpClient.get<AlarmConf[]>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getLastAlarms(deviceId: string, alarmConfId: string) {\n        let url = this.getBasePath() + \"Last/\" + deviceId + \"/\" + alarmConfId;\n        return this.httpClient.get<AlarmData>(url, { headers: this.getHeaders() });\n    }\n\n    public getActiveAlarms(filter = null) {\n        let url = this.getBasePath() + \"Active\";\n\n        let params = new HttpParams();\n\n        if (filter != null)\n            params = params.append('filter', filter);\n\n        return this.httpClient.get<AlarmData[]>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getMachineAlarms(machineId: string, filter = null) {\n        let url = this.getBasePath() + machineId;\n\n        let params = new HttpParams();\n\n        if (filter != null)\n            params = params.append('filter', filter);\n\n        return this.httpClient.get<AlarmData[]>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public stopAllAlarms() {\n        let url = this.getBasePath() + \"StopAll/\";\n        let head = this.getHeaders();\n\n        return this.httpClient.put(url, {}, {headers: head, responseType:'text'});\n    }\n\n    public getUserNotifications(deviceId, alarmConfId) {\n        let url = this.getBasePath() + \"Notifications/\" + deviceId + \"/\" + alarmConfId;\n\n        return this.httpClient.get<AlarmNotification[]>(url, { headers: this.getHeaders() });\n    }\n\n    public updateUserNotifications(deviceId, alarmConfId, body) {\n        let url = this.getBasePath() + \"Notifications/\" + deviceId + \"/\" + alarmConfId;\n        let head = this.getHeaders();\n\n        return this.httpClient.put(url, body, {headers: head, responseType:'text'});\n    }\n\n    public getAllAlarmsConf(deviceId) {\n        let url = this.getBasePath() + \"Conf/All/\" + deviceId;\n        return this.httpClient.get<AlarmConf[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getAlarmConf(deviceId, alarmConfId) {\n        let url = this.getBasePath() + \"Conf/\" + deviceId + \"/\" + alarmConfId;\n\n        return this.httpClient.get<AlarmConf[]>(url, { headers: this.getHeaders() });\n    }\n\n    public putAlarmConf(deviceId, alarmConfId, body) {\n        let url = this.getBasePath() + \"Conf/\" + deviceId + \"/\" + alarmConfId;\n        let head = this.getHeaders();\n\n        return this.httpClient.put(url, body, {headers: head, responseType:'text'});\n    }\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { Box } from \"./models/Box\";\n\n@Injectable()\nexport class BoxesService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Box/\";\n    }\n\n    public getBoxFullTree() {\n        let url = this.getBasePath() + \"FullTree/\";\n        return this.httpClient.get<Array<Box>>(url, { headers: this.getHeaders() });\n    }\n\n    public getBoxTree(boxId: string) {\n        let url = this.getBasePath() + \"Tree/\" + boxId;\n        return this.httpClient.get<Box>(url, { headers: this.getHeaders() });\n    }\n\n    public getBoxes() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Array<Box>>(url, { headers: this.getHeaders() });\n    }\n\n    public getBoxesReferences() {\n        let url = this.getBasePath() + \"References/\";\n        return this.httpClient.get<Array<Box>>(url, { headers: this.getHeaders() });\n    }\n\n    public getBox(boxId: string) {\n        let url = this.getBasePath() + boxId;\n        return this.httpClient.get<Box>(url, { headers: this.getHeaders() });\n    }\n\n    public getBoxReferences(boxId: string) {\n        let url = this.getBasePath() + \"References/\" + boxId;\n        return this.httpClient.get<Box>(url, { headers: this.getHeaders() });\n    }\n\n    public postBox(body){\n      let url = this.getBasePath();\n      let head = this.getHeaders();\n      return this.httpClient.post(url, body, {headers: head, responseType:'text'});\n    }\n\n    public postBoxReferences(body){\n      let url = this.getBasePath() + \"References/\";\n      let head = this.getHeaders();\n      return this.httpClient.post(url, body, {headers: head, responseType:'text'});\n    }\n\n    public putBox(boxId: string, body){\n      let url = this.getBasePath() + boxId;\n      let head = this.getHeaders();\n      return this.httpClient.put(url, body, {headers: head, responseType:'text'});\n    }\n\n    public putBoxReferences(boxId: string, body){\n      let url = this.getBasePath() + \"References/\" + boxId;\n      let head = this.getHeaders();\n      return this.httpClient.put(url, body, {headers: head, responseType:'text'});\n    }\n\n    public deleteBox(boxId: string){\n        let url = this.getBasePath() + boxId;\n        let head = this.getHeaders();\n        return this.httpClient.delete(url, {headers: head, responseType:'text'});\n    }\n\n    public deleteBoxReferences(boxId: string){\n        let url = this.getBasePath() + \"References/\" + boxId;\n        let head = this.getHeaders();\n        return this.httpClient.delete(url, {headers: head, responseType:'text'});\n    }\n}","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { Client } from './models/Client';\n\n@Injectable()\nexport class ClientService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Client/\";\n    }\n\n    public getClientsRaw() {\n        let url = this.getBasePath() + \"raw/\";\n        return this.httpClient.get<Client[]>(url, { headers: this.getHeaders() });\n    }\n\n    public get(clientId) {\n        let url = this.getBasePath() + clientId;\n        return this.httpClient.get<Client>(url, { headers: this.getHeaders() });\n    }\n\n    public post(body, groupId) {\n        let url = this.getBasePath() + groupId;\n        return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text' });\n    }\n\n    public put(body, groupId) {\n        let url = this.getBasePath() + groupId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text' });\n    }\n\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { CycleTime } from \"./models/CycleTime\";\n\n@Injectable()\nexport class CycleTimeService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"CycleTime/\";\n    }\n\n    public getCycleTime(machineId: string, referenceId: string) {\n        let url = this.getBasePath() + machineId + \"/\" + referenceId;\n        return this.httpClient.get<CycleTime>(url, { headers: this.getHeaders() });\n    }\n\n    public getChildsOFCycleTime(ofId: string) {\n        let url = this.getBasePath() + \"ChildsOF/\" + ofId;\n        return this.httpClient.get<CycleTime>(url, { headers: this.getHeaders() });\n    }\n\n    public postCycleTime(cycleTime: any) {\n        let url = this.getBasePath();\n        return this.httpClient.post(url, cycleTime, { headers: this.getHeaders() });\n    }\n\n    public putCycleTime(machineId: string, referenceId: string, cycleTime:any) {\n        let url = this.getBasePath() + machineId + \"/\" + referenceId;\n        return this.httpClient.put(url, cycleTime, { headers: this.getHeaders(), responseType:'text' });\n    }\n    \n    // public getReferencesFilter(filter: string, date) {\n    //     let url = this.getBasePath() + \"Autocomplete/?filter=\" + filter + \"&Date=\" + date;\n    //     return this.httpClient.get<Array<Reference>>(url, { headers: this.getHeaders() });\n    // }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { WidgetModel, DashboardModel, DashboardComponentModel } from \"./models/dashboard\";\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\n\n@Injectable()\nexport class DashboardService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Dashboard/\";\n    }\n\n\t// Return Array of WidgetModel\n    public getWidgets() {\n        let url = this.getBasePath() + \"Widgets/\"\n        return this.httpClient.get<Array<WidgetModel>>(url, { headers: this.getHeaders() });\n    }\n\n\t// Return Array of DashboardModel\n    public getDashboardsRaw() {\n        let url = this.getBasePath() + \"Raw/\";\n        return this.httpClient.get<Array<DashboardModel>>(url, { headers: this.getHeaders() });\n    }\n\n\t// Return Array of DashboardModel\n    public getDashboards() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Array<DashboardModel>>(url, { headers: this.getHeaders() });\n    }\n\n\t// Return DashboardComponentModel\n    public getDashboard(id) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.get<DashboardModel>(url, { headers: this.getHeaders() });\n\t}\n\n\t// Return Widget\n    public getWidget(id) {\n        let url = this.getBasePath() + \"Widget/\" + id;\n        return this.httpClient.get<WidgetModel>(url, { headers: this.getHeaders() });\n    }\n\n\t// Return Plugin\n    public getPlugin(id) {\n        let url = this.getBasePath() + \"Plugin/\" + id;\n        return this.httpClient.get<WidgetModel>(url, { headers: this.getHeaders() });\n    }\n\n    public postDashboard(dashboard) {\n\t\tlet url = this.getBasePath();\n        return this.httpClient.post<Array<DashboardComponentModel>>(url, dashboard, { headers: this.getHeaders() });\n    }\n\n    public putDashboard(id, dashboard) {\n\t\tlet url = this.getBasePath() + id;\n        return this.httpClient.put<Array<DashboardComponentModel>>(url, dashboard, { headers: this.getHeaders() });\n    }\n\n    public getPhotoURL(photo: string, photoFileName: string) {\n        return super.getBasePath() + \"Public/Dashboard/Photo/\" + photo + \"/\" + photoFileName;\n    }\n\n    public postFile(menuId:string, menuDashboardId:string, fileToUpload: File) {\n        let url = this.getBasePath() + \"Photo/\" + menuId + \"/\" + menuDashboardId;\n        let formData: FormData = new FormData();\n        formData.append('file', fileToUpload, fileToUpload.name);\n        return this.httpClient.post(url, formData, { headers: this.getHeaders() });\n    }\n    \n    public getGraph(body) {\n        let url = this.getBasePath() + \"Graph\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n}\n","\nexport class Page {\n    filter: Filter = new Filter();\n    size: number = 0;\n    totalElements: number = 0;\n    totalPages: number = 0;\n    pageNumber: number = 0;\n    sortColumn: string = \"\";\n    sortDir: string = \"asc\";\n}\nexport class Filter{\n    filter:string=\"\";\n    showAll: boolean;\n\n    filters: MultiFilters[];\n\n    issueState:string=\"\";\n\n    machineId:string=\"\";\n    machineVersionId:string=\"\";\n    deviceId:string=\"\";\n\n    filterDateFrom:string;\n    filterDateTo:string;\n\n    startDate: string;\n    endDate: string;\n    machine: string;\n    reference: string;\n\n    workerCode: string;\n    phaseId: string;\n\n    startHour: string;\n    endHour: string;\n\n    subtype: string;\n\n    showPending: boolean;\n    showPlanned: boolean;\n    showProduction: boolean;\n    showProduced: boolean;\n    showFinished: boolean;\n\n    hideChildrens: boolean;\n\n    filterOF: string;\n    filterReference: string;\n\n    productionType: string;\n\n    status: string;\n\n    showOnlyWithComments: boolean;\n    showOnlyActive: boolean;\n    showOnlyNotActive: boolean;\n\n    issueType: string;\n    priority: string;\n    informerId: string;\n    responsableId: string;\n}\n\nexport class MultiFilters {\n  key: string;\n  value: string;\n}\n","\nimport {Page} from \"./page\";\n\n/**\n * An array of data with an associated page object used for paging\n */\nexport class PagedData<T> {\n    data = new Array<T>();\n    page = new Page();\n    extraData = new Array<any>();\n}","import { Injectable, EventEmitter, Inject } from \"@angular/core\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { Observable } from 'rxjs';\n\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\n\nimport { Page, Filter } from \"./models/page\";\nimport { PagedData } from \"./models/paged-data\";\nimport { ServerResponse } from \"./models/server-response.model\";\n\n@Injectable()\nexport class DataService<T> extends BaseAuthService {\n\n    private data: ServerResponse<T>;\n    public dataUpdated = new EventEmitter<PagedData<T>>();\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    public getData(method: string, filter: Filter, limit: number, offset: number, dir: string, orderCol: string): Observable<ServerResponse<T>> {\n\n        var url = this.getBasePath() + method + \"/\";\n\n        let params = new HttpParams();\n        params = params.append('dir', dir)\n        params = params.append('orderCol', orderCol)\n        params = params.append('limit', limit.toString())\n        params = params.append('offset', offset.toString())\n        //filter mod\n        params = params.append('filter', filter.filter ? filter.filter.toString() : \"\")\n        if(filter.showAll != null && filter.showAll){\n            params = params.append('showAll', filter.showAll.toString());\n        }\n        if(filter.issueState != null && filter.issueState != \"\" && filter.issueState !== undefined){\n            params = params.append('issueState', filter.issueState ? filter.issueState.toString() : \"\");\n        }\n        if(filter.deviceId != null && filter.deviceId != \"\"){\n            params = params.append('deviceId', filter.deviceId ? filter.deviceId.toString() : \"\");\n        }\n        if(filter.machineId != null && filter.machineId != \"\"){\n            params = params.append('machineId', filter.machineId ? filter.machineId.toString() : \"\")\n        }\n        if(filter.machineVersionId != null && filter.machineVersionId != \"\"){\n            params = params.append('machineVersionId', filter.machineVersionId ? filter.machineVersionId.toString() : \"\")\n        }\n        if(filter.filterDateFrom != null && filter.filterDateFrom != \"\"){\n            params = params.append('dateFrom', filter.filterDateFrom ? filter.filterDateFrom.toString() : \"\")\n        }\n        if(filter.filterDateTo != null && filter.filterDateTo != \"\"){\n            params = params.append('dateTo', filter.filterDateTo ? filter.filterDateTo.toString() : \"\");\n        }\n        if(filter.startDate != null && filter.startDate != \"\"){\n            params = params.append('StartDate', filter.startDate ? filter.startDate.toString() : \"\");\n        }\n        if(filter.endDate != null && filter.endDate != \"\"){\n            params = params.append('EndDate', filter.endDate ? filter.endDate.toString() : \"\");\n        }\n        if(filter.machine != null && filter.machine != \"\"){\n            params = params.append('MachineId', filter.machine ? filter.machine.toString() : \"\");\n        }\n        if(filter.reference != null && filter.reference != \"\"){\n            params = params.append('referenceId', filter.reference ? filter.reference.toString() : \"\");\n        }\n        if(filter.workerCode != null && filter.workerCode != \"\"){\n            params = params.append('workerCode', filter.workerCode ? filter.workerCode.toString() : \"\");\n        }\n        if(filter.phaseId != null && filter.phaseId != \"\"){\n            params = params.append('phaseId', filter.phaseId ? filter.phaseId.toString() : \"\");\n        }\n        if(filter.startHour != null && filter.startHour != \"\"){\n            params = params.append('startHour', filter.startHour ? filter.startHour.toString() : \"\");\n        }\n        if(filter.endHour != null && filter.endHour != \"\"){\n            params = params.append('endHour', filter.endHour ? filter.endHour.toString() : \"\");\n        }\n        if(filter.subtype != null && filter.subtype != \"\"){\n            params = params.append('subtype', filter.subtype ? filter.subtype.toString() : \"\");\n        }\n        if(filter.showPending != null && filter.showPending){\n            params = params.append('showPending', filter.showPending.toString());\n        }\n        if(filter.showPlanned != null && filter.showPlanned){\n            params = params.append('showPlanned', filter.showPlanned.toString());\n        }\n        if(filter.showProduction != null && filter.showProduction){\n            params = params.append('showProduction', filter.showProduction.toString());\n        }\n        if(filter.showProduced != null && filter.showProduced){\n            params = params.append('showProduced', filter.showProduced.toString());\n        }\n        if(filter.showFinished != null && filter.showFinished){\n            params = params.append('showFinished', filter.showFinished.toString());\n        }\n        if(filter.hideChildrens != null && filter.hideChildrens){\n            params = params.append('hideChildrens', filter.hideChildrens.toString());\n        }\n\n        if(filter.filterOF != null && filter.filterOF){\n            params = params.append('filterOF', filter.filterOF.toString());\n        }\n        if(filter.filterReference != null && filter.filterReference){\n            params = params.append('filterReference', filter.filterReference.toString());\n        }\n\n        if(filter.productionType != null && filter.productionType){\n            params = params.append('productionType', filter.productionType.toString());\n        }\n\n        if(filter.status != null && filter.status){\n            params = params.append('status', filter.status.toString());\n        }\n\n        if(filter.showOnlyWithComments != null && filter.showOnlyWithComments){\n            params = params.append('showOnlyWithComments', filter.showOnlyWithComments.toString());\n        }\n\n        if(filter.showOnlyActive != null && filter.showOnlyActive){\n            params = params.append('showOnlyActive', filter.showOnlyActive.toString());\n        }\n\n        if(filter.showOnlyNotActive != null && filter.showOnlyNotActive){\n            params = params.append('showOnlyNotActive', filter.showOnlyNotActive.toString());\n        }\n        if (filter.priority != null && filter.priority && filter.priority !== undefined) {\n            params = params.append('priority', filter.priority.toString());\n        }\n        if (filter.informerId != null && filter.informerId && filter.informerId !== undefined) {\n            params = params.append('informerId', filter.informerId.toString());\n        }\n        if (filter.responsableId != null && filter.responsableId && filter.responsableId !== undefined ) {\n            params = params.append('responsableId', filter.responsableId.toString());\n        }\n        if (filter.issueType != null && filter.issueType && filter.issueType !== undefined) {\n            params = params.append('issueType', filter.issueType.toString());\n        }\n        return this.httpClient.get<ServerResponse<T>>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getResults(method: string, page: Page): void {\n        this.getData(method, page.filter, page.size, page.pageNumber * page.size, page.sortDir, page.sortColumn).subscribe(\n            data => {\n                this.data = data;\n\n                this.dataUpdated.emit(this.getPagedData(page));\n            },\n            error => {\n                console.log(error);\n            });\n    }\n\n    private getPagedData(page: Page): PagedData<T> {\n\n        let pagedData = new PagedData<T>();\n        if (this.data != null) {\n            page.pageNumber = page.pageNumber;\n            page.size = this.data.limit;\n            page.totalElements = this.data.totalRows;\n            page.totalPages = page.totalElements / page.size;\n            pagedData.data = this.data.values;\n            pagedData.extraData = this.data.extraData;\n        }\n        pagedData.page = page;\n\n        return pagedData;\n    }\n    public delete(method: string, id: string) {\n        var url = this.getBasePath() + method + \"/\" + id;\n        return this.httpClient.delete(url, { headers: this.getHeaders(),responseType:'text' });\n    }\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PlannedStop } from \"./models/plannedStop\";\nimport { DataBlock } from \"./models/dataBlock\";\nimport { Device, DeviceShort, MachinesDevices } from './models/device';\n\n@Injectable()\nexport class DeviceService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Machine/Version/Device/\";\n    }\n\n    public getDeviceRaw() {\n        let url = this.getBasePath();\n        return this.httpClient.get<DeviceShort[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getDevicesMachinesRaw() {\n        let url = this.getBasePath() + \"MachinesRaw\";\n        return this.httpClient.get<MachinesDevices[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getDevice(id: string) {\n        let url = this.getBasePath()+\"d/\" + id;\n        return this.httpClient.get<Device>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachineDevices(id: string) {\n        let url = this.getBasePath()+\"Raw/\" + id;\n        return this.httpClient.get<Device[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getTablesPrefix(machineId: string) {\n        let url = this.getBasePath()+\"TablesPrefix/\" + machineId;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public putDevice(id: string, device) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.put(url, device, { headers: this.getHeaders(),responseType:'text' });\n    }\n    public postDevice(device, id: string) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.post<Device>(url, device, { headers: this.getHeaders() });\n    }\n\n    public getMachineStop(machineId: string, machineStopId: string){\n        let url  = this.getBasePath() + \"Stop/\" + machineId + \"/\" + machineStopId;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public putMachineStop(machineId: string, body){\n        let url = this.getBasePath() + \"Stop/\" + machineId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders() });\n    }\n\n    public postMachineStop(machineId: string, body){\n        let url = this.getBasePath() + \"Stop/\" + machineId;\n        return this.httpClient.post(url, body, { headers: this.getHeaders() });\n    }\n\n    public getStopTypes(){\n        let url = this.getBasePath() + \"Stop/StopType/Raw\";\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getPlannedStops(){\n        let url = this.getBasePath() + \"Stop/PlannedStop/\";\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getPlannedStop(id: string){\n        let url = this.getBasePath() + \"Stop/PlannedStop/\" + id;\n        return this.httpClient.get<PlannedStop>(url, { headers: this.getHeaders() });\n    }\n\n    public postPlannedStop(body){\n        let url = this.getBasePath() + \"Stop/PlannedStop\";\n        return this.httpClient.post(url, body, { headers: this.getHeaders() });\n    }\n\n    public putPlannedStop(body){\n        let url = this.getBasePath() + \"Stop/PlannedStop\";\n        return this.httpClient.put(url, body, { headers: this.getHeaders() });\n    }\n\n    public getConfig(deviceId: string) {\n        let url = this.getBasePath() + \"Config/\" + deviceId;\n        return this.httpClient.get<any>(url, { headers: this.getHeaders() });\n    }\n\n    public putConfig(deviceId: string, body) {\n        let url = this.getBasePath() + \"Config/Send/\" + deviceId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders() });\n    }\n\n    public askConfig(deviceId: string) {\n        let url = this.getBasePath() + \"Config/Ask/\" + deviceId;\n        return this.httpClient.put(url, {}, { headers: this.getHeaders() });\n    }\n\n    public getDataBlocksFromDevice(deviceId: string) {\n        let url = this.getBasePath()+\"Config/DataBlock/\" + deviceId;\n        return this.httpClient.get<DataBlock[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getDatasFromDataBlock(deviceId: string, dataBlockId: string) {\n        let url = this.getBasePath()+\"Config/Data/\" + deviceId + \"/\" + dataBlockId;\n        return this.httpClient.get<DataBlock[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getBitsFromDatas(deviceId: string, dataBlockId: string, dataId: string) {\n        let url = this.getBasePath()+\"Config/Bit/\" + deviceId + \"/\" + dataBlockId + \"/\" + dataId;\n        return this.httpClient.get<DataBlock[]>(url, { headers: this.getHeaders() });\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { DynamicDashboard, DynamicDashboardDashboards } from \"./models/dynamicDashboard\";\n\n@Injectable()\nexport class DynamicDashboardService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"DynamicDashboard/\";\n    }\n\n\t// Return Array of DashboardModel\n    public getDynamicDashboards() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Array<DynamicDashboard>>(url, { headers: this.getHeaders() });\n    }\n\n    public getDynamicDashboard(id) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.get<DynamicDashboard>(url, { headers: this.getHeaders() });\n\t}\n\n    public getDynamicDashboardDashboards(id) {\n        let url = this.getBasePath() + \"dashboards/\" + id;\n        return this.httpClient.get<Array<DynamicDashboardDashboards>>(url, { headers: this.getHeaders() });\n\t}\n\n    public postDynamicDashboard(dynamicDashboard) {\n\t\tlet url = this.getBasePath();\n        return this.httpClient.post(url, dynamicDashboard, { headers: this.getHeaders() });\n    }\n\n    public putDynamicDashboard(id, dynamicDashboard) {\n\t\tlet url = this.getBasePath() + id;\n        return this.httpClient.put(url, dynamicDashboard, { headers: this.getHeaders() });\n    }\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { FileClassification } from './models/fileClassification';\n\n@Injectable()\nexport class FileClassificationsService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env: any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"FileClassification/\";\n    }\n    private getBasePathRaw(): string {\n        return this.getBasePath() + \"raw/\";\n    }\n\n    public getsRaw() {\n        let url = this.getBasePathRaw();\n        return this.httpClient.get<FileClassification[]>(url, { headers: this.getHeaders() });\n    }\n\n    public get(idFile) {\n        let url = this.getBasePath() + idFile;\n        return this.httpClient.get<FileClassification>(url, { headers: this.getHeaders() });\n    }\n\n    public post(data) {\n        let url = this.getBasePath();\n        let body = {\n            description: data.description\n        }\n        return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text' });\n    }\n\n    public put(data, id) {\n        let url = this.getBasePath() + id;\n        let body = {\n            description: data.description\n        }\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n\n    }\n\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { UserColors } from \"./models/user\";\n\n@Injectable()\nexport class GroupService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Groups/\";\n    }\n\n    public getGroupName(groupId: string) {\n        let url = this.getBasePath() + \"Name/\" + groupId;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getPartnerColors(id) {\n        let url = this.getBasePath() + \"Colors/\" + id;\n        let head = this.getHeaders();\n        return this.httpClient.get<Array<UserColors>>(url, { headers: head });\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { Issue } from './models/issue';\nimport { ServerResponse } from './models/server-response.model';\n\n@Injectable()\nexport class IssueService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Machine/Issue/\";\n    }\n\n    public getIssue(machineId: string, issueId: string) {\n        let url = this.getBasePath() + machineId + \"/\" + issueId;\n        return this.httpClient.get<Issue>(url, { headers: this.getHeaders() });\n    }\n\n    public getIssues(machineId: string) {\n        let url = this.getBasePath() + machineId;\n        return this.httpClient.get<ServerResponse<Issue>>(url, { headers: this.getHeaders() });\n    }\n\n    public getIssuesRaw(machineId: string) {\n        let url = this.getBasePath() + \"Raw/\" + machineId;\n        return this.httpClient.get<Issue[]>(url, { headers: this.getHeaders() });\n    }\n\n    public postIssue(machineId: string, body) {\n        let url = this.getBasePath() + machineId;\n        return this.httpClient.post<Issue>(url, body, { headers: this.getHeaders() });\n    }\n\n    public putIssue(machineId: string, issueId: string, body) {\n        let url = this.getBasePath() + machineId + \"/\" + issueId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType:'text'});\n    }\n\n    public PutChangeStatusIssue(machineId: string, issueId: string, status: number) {\n        let body = { \"Status\": status }\n        let url = this.getBasePath() + \"ChangeStatus/\" +  machineId +  \"/\" + issueId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType:'text' });\n    }\n\n}","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\n\n@Injectable()\nexport class LanguageService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env: any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"languages/\";\n    }\n\n    getLanguages() {\n        let url = this.getBasePath();\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { MenuPlugin } from \"./models/MenuPlugin\";\nimport { Device } from \"./models/device\";\nimport { LastPieceDone, Machine, MachinePopup } from './models/machine';\nimport { MachineComplete } from './models/machineComplete';\n\n@Injectable()\nexport class MachineService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"machine/\";\n    }\n\n    public getMachine(id: string) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.get<Machine>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachinesRaw() {\n        let url = this.getBasePath() + \"/Raw\";\n        return this.httpClient.get<Array<Machine>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachinesPopUp(filter: string) {\n        let url = this.getBasePath() + \"PopUp/?limit=10&filter=\"+filter;\n        return this.httpClient.get<Array<MachinePopup>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachineDeviceSerialNumber(machineId: string) {\n        let url = this.getBasePath() + \"DeviceSerialNumber/\" + machineId;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getLastPieceDone(id: string) {\n        let url = this.getBasePath() + \"LastPieceDone/\" + id;\n        return this.httpClient.get<LastPieceDone>(url, { headers: this.getHeaders() });\n    }\n    \n    public getMachineVersionDevice(id: string) {\n        let url = this.getBasePath() + \"mvd/\" + id;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n    \n    public getCompleteMachine(id: string) {\n        let url = this.getBasePath() + \"extend/\" + id;\n        return this.httpClient.get<MachineComplete>(url, { headers: this.getHeaders() });\n    }\n\n    public putMachine(id: string, machine) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.put(url, machine, { headers: this.getHeaders(),responseType:'text' });\n    }\n\n    public resetPiecesNG(machineId: string) {\n        let url = this.getBasePath() + \"ResetPiecesNG/\" + machineId;\n        return this.httpClient.put(url, {}, { headers: this.getHeaders(),responseType:'text' });\n    }\n\n    public postMachine(machine) {\n        let url = this.getBasePath();\n        return this.httpClient.post<Machine>(url, machine, { headers: this.getHeaders() });\n    }\n\n    public postMachineDevice(machine) {\n        let url = this.getBasePath();\n        return this.httpClient.post<Device>(url + \"Version/Device/md/\", machine, { headers: this.getHeaders() });\n    }\n\n    public getMachineVersionActivePhoto(machineId: string, size: number) {\n        let url = super.getBasePath() + \"Public/Photo/Last/\" + machineId + \"?size=\" + size;;\n        return this.httpClient.get(url, { headers: this.getHeaders(), responseType:\"blob\" });\n    }\n\n    public getMachinePlugins(machineId: string) {\n        let url = this.getBasePath() + \"MachinePlugins/\" + machineId;\n        return this.httpClient.get<Array<MenuPlugin>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachinePluginsGroup(machineId: string) {\n        let url = this.getBasePath() + \"MachinePluginsGroup/\" + machineId;\n        return this.httpClient.get<Array<MenuPlugin>>(url, { headers: this.getHeaders() });\n    }\n\n    public putPhoto(versionId, file: File) {\n        let url = this.getBasePath() + \"version/photo/upload/\" + versionId;\n        let formData = new FormData();\n        formData.append('file', file, file.name);\n        return this.httpClient.post(url, formData, { headers: this.getHeaders() });\n    }\n\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { Reference, ReferenceInfo, MachineReference, LastProductionReferenceInfo, MachineReferenceActiveProductionCount } from \"./models/Reference\";\n\n@Injectable()\nexport class MachineReferenceService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"MachineReference/\";\n    }\n\n    public stopReference(machineId: string) {\n        let url = this.getBasePath() + \"StopReference/\" + machineId;\n        return this.httpClient.put(url, \"\", { headers: this.getHeaders(), responseType:'text' });\n    }\n\n    public startReference(machineId: string, referenceId: string) {\n        let url = this.getBasePath() + \"StartReference/\" + machineId + \"/\" + referenceId;\n        return this.httpClient.put<Reference>(url, \"\", { headers: this.getHeaders() });\n    }\n\n    public getMachineReferenceInfo(machineId: string, referenceId: string){\n        let url = this.getBasePath() + \"MachineReferenceInfo/\" + machineId + \"/\" + referenceId;\n        return this.httpClient.get<ReferenceInfo>(url, { headers: this.getHeaders() });\n    }\n\n    public startProduction(machineId: string, body:any) {\n        let url = this.getBasePath() + \"StartProduction/\" + machineId;        \n        return this.httpClient.put<Reference>(url, body, { headers: this.getHeaders() });\n    }\n\n    public stopProduction(machineId: string, body:any ) {\n        let url = this.getBasePath() + \"StopProduction/\" + machineId;\n        return this.httpClient.put<Reference>(url, body, { headers: this.getHeaders() });\n    }\n\n    public cancelPreparation(machineId: string, body:any ) {\n        let url = this.getBasePath() + \"CancelPreparation/\" + machineId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders() });\n    }\n\n    public getActiveReferenceProduction(machineId:string = undefined){\n        let url = this.getBasePath() + \"ActiveReferenceProductionInfo/\";\n        if (machineId != undefined)\n            url = url + machineId;\n        return this.httpClient.get<MachineReference[]>(url, { headers: this.getHeaders() });\n    }\n\n    public checkActiveProductionPieces(machineId:string, referenceId:string){\n        let url = this.getBasePath() + \"CheckActiveProductionPieces/\" + machineId + \"/\" + referenceId;\n        return this.httpClient.get<MachineReferenceActiveProductionCount>(url, { headers: this.getHeaders() });\n    }\n\n    public getUserActiveReferenceProduction(machineId:string = undefined){\n        let url = this.getBasePath() + \"UserActiveReferenceProductionInfo/\";\n        if (machineId != undefined)\n            url = url + machineId;\n        return this.httpClient.get<MachineReference[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getLastProductionPreparationEnd(machineId:string){\n        let url = this.getBasePath() + \"LastProductionsPreparationEnd/\" + machineId;\n        return this.httpClient.get<LastProductionReferenceInfo[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getLastProduction(machineId:string){\n        let url = this.getBasePath() + \"LastProductions/\" + machineId;\n        return this.httpClient.get<LastProductionReferenceInfo[]>(url, { headers: this.getHeaders() });\n    }\n}","import { Inject, Injectable } from '@angular/core';\nimport { PublicService } from './public.service';\nimport { BaseAuthService } from './base-auth.service';\nimport { HttpClient } from \"@angular/common/http\";\nimport { MachineFile } from './models/machineFile';\nimport { Version } from './models/version';\nimport { ServerResponse } from './models/server-response.model';\n\n@Injectable()\nexport class MachineFileService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"/Machine/File/\";\n    }\n\n    public getMachineFiles(machineId: string) {\n        let url = this.getBasePath() + machineId;\n        return this.httpClient.get<ServerResponse<MachineFile>>(url, {headers: this.getHeaders()});\n    }\n\n    public getFile(machineId: string, fileId:string) {\n        let url = this.getBasePath() + machineId + \"/\" + fileId;\n        return this.httpClient.get<MachineFile>(url, { headers: this.getHeaders() });\n    }\n\n    public postFile(machineId: string, file) {\n        let url = this.getBasePath() + machineId;\n        return this.httpClient.post<Version>(url, file, { headers: this.getHeaders() });\n    }\n    \n    public putFile(machineId: string, fileId: string, file) {\n        let url = this.getBasePath() + machineId + \"/\" + fileId;\n        return this.httpClient.put(url, file, { headers: this.getHeaders(), responseType:'text' });\n    }\n\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PeriodTimeGraphData, PeriodTimeShiftInfoData, PeriodTimeStatus, PeriodTimeStatusData } from \"./models/PeriodTimeStatus\";\n\n@Injectable()\nexport class MachineTimeStatus extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Machine/Version/Device/TimeStatus/\";\n    }\n\n    public getTimeStatus(machineId:string, startDate){\n        let url = this.getBasePath() + machineId;\n        let params = new HttpParams();\n        params = params.append('StartDate', startDate ? startDate.toString() : \"\");\n        return this.httpClient.get<PeriodTimeStatusData[]>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getTimeStatusDetail(machineId: string, timeShow: number, startDate, endDate, shift?: number){\n        let url = this.getBasePath() + \"Machine/\";\n        let params = new HttpParams();\n\n        if (machineId != null)\n            params = params.append('MachineId', machineId);\n\n        if (timeShow != null)\n            params = params.append('TimeShow', timeShow.toString());\n\n        if (startDate != null)\n            params = params.append('StartDate', startDate.toString());\n\n        if (endDate != null)\n            params = params.append('EndDate', endDate.toString());\n\n        if(shift != null)\n            params = params.append('Shift', shift);\n\n        return this.httpClient.get<PeriodTimeStatus>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getTimeStatusMachineShift(machineId: string, timeShow: number, startDate, endDate, shift?: number){\n        let url = this.getBasePath() + \"Machine/Shifts\";\n        let params = new HttpParams();\n\n        if (machineId != null)\n            params = params.append('MachineId', machineId);\n\n        if (timeShow != null)\n            params = params.append('TimeShow', timeShow.toString());\n\n        if (startDate != null)\n            params = params.append('StartDate', startDate.toString());\n\n        if (endDate != null)\n            params = params.append('EndDate', endDate.toString());\n\n        if (shift != null)\n            params = params.append('Shift', shift);\n\n        return this.httpClient.get<PeriodTimeGraphData[]>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getTimeStatusBox(boxId: string, timeShow: number, startDate, endDate){\n        let url = this.getBasePath() + \"Box\";\n        let params = new HttpParams();\n\n        if (boxId != null)\n            params = params.append('BoxId', boxId);\n\n        if (timeShow != null)\n            params = params.append('TimeShow', timeShow.toString());\n\n        if (startDate != null)\n            params = params.append('StartDate', startDate.toString());\n\n        if (endDate != null)\n            params = params.append('EndDate', endDate.toString());\n\n        return this.httpClient.get<PeriodTimeStatus>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getTimeStatusBoxShift(boxId: string, timeShow: number, startDate, endDate){\n        let url = this.getBasePath() + \"Box/Shifts\";\n        let params = new HttpParams();\n\n        if (boxId != null)\n            params = params.append('BoxId', boxId);\n\n        if (timeShow != null)\n            params = params.append('TimeShow', timeShow.toString());\n\n        if (startDate != null)\n            params = params.append('StartDate', startDate.toString());\n\n        if (endDate != null)\n            params = params.append('EndDate', endDate.toString());\n\n        return this.httpClient.get<PeriodTimeGraphData[]>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getTimeStatusMachineShiftInfo(machineId: string, startHour, endHour){\n        let url = this.getBasePath() + \"Machine/ShiftInfo\";\n        let params = new HttpParams();\n\n        if (machineId != null)\n            params = params.append('MachineId', machineId);\n\n        if (startHour != null)\n            params = params.append('startHour', startHour.toString());\n\n        if (endHour != null)\n            params = params.append('endHour', endHour.toString());\n\n        return this.httpClient.get<PeriodTimeShiftInfoData[]>(url, { headers: this.getHeaders(), params: params });\n    }\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { ServerResponse } from './models/server-response.model';\nimport { Maintenance } from './models/maintenance';\n\n@Injectable()\nexport class MaintenanceService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Maintenance/\";\n    }\n\n    public getMaintenance(deviceId: string, maintenanceId: string) {\n        let url = this.getBasePath() + deviceId + \"/\" + maintenanceId;\n        return this.httpClient.get<Maintenance>(url, { headers: this.getHeaders() });\n    }\n\n    public getMaintenances(deviceId: string) {\n        let url = this.getBasePath() + deviceId;\n        return this.httpClient.get<ServerResponse<Maintenance>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMaintenancesRaw(deviceId: string) {\n        let url = this.getBasePath() + \"Raw/\" + deviceId;\n        return this.httpClient.get<Maintenance[]>(url, { headers: this.getHeaders() });\n    }\n\n    public postMaintenance(deviceId: string, body) {\n        let url = this.getBasePath() + deviceId;\n        return this.httpClient.post<Maintenance>(url, body, { headers: this.getHeaders() });\n    }\n\n    public putMaintenance(deviceId: string, maintenanceId: string, body) {\n        let url = this.getBasePath() + deviceId + \"/\" + maintenanceId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders() ,responseType:'text'});\n    }\n\n    public deleteMaintenance(deviceId: string) {\n        let url = this.getBasePath() + deviceId;\n        return this.httpClient.delete(url, { headers: this.getHeaders() ,responseType:'text'});\n    }\n\n}","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { ManagePlugin } from './models/Plugin';\n\n@Injectable()\nexport class ManagePluginsService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"ManagePlugins/\";\n    }\n\n    public get(idPlugin) {\n        let url = this.getBasePath() + idPlugin;\n        return this.httpClient.get<ManagePlugin>(url, { headers: this.getHeaders() });\n    }\n\n    public post(body) {\n        let url = this.getBasePath();\n        return this.httpClient.post<ManagePlugin>(url, body, { headers: this.getHeaders() });\n    }\n\n    public put(body, id) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.put<ManagePlugin>(url, body, { headers: this.getHeaders() });\n\n    }\n\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { MeasureUnit } from './models/measureUnit';\n\n@Injectable()\nexport class MeasureUnitService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"MeasureUnit/\";\n    }\n\n    public getMeasureUnits() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Array<MeasureUnit>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMeasureUnit(measureUnitId) {\n        let url = this.getBasePath() + measureUnitId;\n        return this.httpClient.get<MeasureUnit>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachineMeasureUnit(machineId) {\n        let url = this.getBasePath() + \"machine/\" +  machineId;\n        return this.httpClient.get<MeasureUnit>(url, { headers: this.getHeaders() });\n    }\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { MenuPlugin } from \"./models/MenuPlugin\";\nimport { Menu, GroupMenu, GroupMenu2 } from './models/Menu';\n\n@Injectable()\nexport class MenuService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Menu/\";\n    }\n\n    public getMenuRaw() {\n        let url = this.getBasePath() + \"Raw\";\n        return this.httpClient.get<Array<GroupMenu>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMenuPopUp(filter: string) {\n        let url = this.getBasePath() + \"PopUp/?limit=10&filter=\"+filter;\n        return this.httpClient.get<Array<GroupMenu>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMenuGroup(groupId: string) {\n        let url = this.getBasePath() + \"Group/\" + groupId;\n        return this.httpClient.get<Array<GroupMenu>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMenuGroup2() {\n        let url = this.getBasePath() + \"MenuGroup/\";\n        return this.httpClient.get<Array<GroupMenu2>>(url, { headers: this.getHeaders() });\n    }\n\n    public getUserMenus() {\n        let url = this.getBasePath() + \"User\";\n        return this.httpClient.get<Array<Menu>>(url, { headers: this.getHeaders() });\n    }\n\n    public getPlugin(id) {\n        let url = this.getBasePath() + \"Plugin/\" + id;\n        return this.httpClient.get<MenuPlugin>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachinePlugins() {\n        let url = this.getBasePath() + \"MachinePlugin/\";\n        return this.httpClient.get<Array<MenuPlugin>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachinePlugin(id: string) {\n        let url = this.getBasePath() + \"MachinePlugin/\" + id;\n        return this.httpClient.get<MenuPlugin>(url, { headers: this.getHeaders() });\n    }\n\n    public postMenu(menu) {\n        let url = this.getBasePath();\n        return this.httpClient.post<Menu>(url, menu, { headers: this.getHeaders() });\n    }\n\n    public putMenu(id: string, menu) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.put(url, menu, { headers: this.getHeaders(),responseType:'text' });\n    }\n\n    public assignMenus(groupId: string, menu) {\n        let url = this.getBasePath() + \"AssignMenus/\" + groupId;\n        return this.httpClient.put(url, menu, { headers: this.getHeaders(),responseType:'text' });\n    }\n\n    public assignMenuGroup(menu) {\n        let url = this.getBasePath() + \"AssignMenuGroup/\";\n        return this.httpClient.put(url, menu, { headers: this.getHeaders(),responseType:'text' });\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { Module } from './models/Module';\n\n@Injectable()\nexport class ModuleService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Module/\";\n    }\n\n    public getModules() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Module[]>(url, { headers: this.getHeaders() });\n    }\n\n    public getGroupModules(groupId: string) {\n        let url = this.getBasePath() + \"Group/\" + groupId;\n        return this.httpClient.get<Module[]>(url, { headers: this.getHeaders() });\n    }\n\n    public putModules(groupId: string, body) {\n        let url = this.getBasePath() + groupId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(),responseType:'text' });\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { Notification } from \"./models/Notification\";\n\n@Injectable()\nexport class NotificationService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Notification/\";\n    }\n\n    public getNotifications(machineId){\n        let url = this.getBasePath() + machineId;\n        let headers = this.getHeaders();\n        return this.httpClient.get<Notification>(url, {headers: headers});\n    }\n\n    public putNotifications(machineId, body){\n        let url = this.getBasePath() + machineId;\n        let headers = this.getHeaders();\n        return this.httpClient.put(url, body, {headers: headers});\n    }\n\n}","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { OF, OFGraphData, OFReference, OFReferences, UsersWork } from './models/of';\n\n@Injectable()\nexport class OFService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"OF/\";\n    }\n\n    // Methods OF\n    public getOF(ofId) {\n        let url = this.getBasePath() + ofId;\n        return this.httpClient.get<OF>(url, { headers: this.getHeaders() });\n    }\n    \n    public getOFs(filter: string, showAll: boolean) {\n        let url = this.getBasePath();\n\n        let params = new HttpParams()\n            .append('limit', \"25\")\n            .append('filter', filter.toString())\n            .append('showAll', showAll.toString())\n        return this.httpClient.get(url, { headers: this.getHeaders(), params: params });\n    }\n    \n    public getGroupedOFs(filter: string, machineId: string = null) {\n        let url = this.getBasePath() + \"Grouped/\";\n\n        let params = new HttpParams()\n            .append('limit', \"25\")\n            .append('filter', filter.toString())\n\n        if(machineId != null)\n            params = params.append('machineId', machineId);\n            \n        return this.httpClient.get(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getOFWithCode(ofCode) {\n        let url = this.getBasePath() + \"Code/\" + ofCode;\n        return this.httpClient.get<OFGraphData[]>(url, { headers: this.getHeaders() });\n    }\n\n    public postOF(body) {\n        let url = this.getBasePath();\n        return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text' });\n    }\n\n    public putOF(body, ofId, phaseId) {\n        let url = this.getBasePath() + ofId + \"/\" + phaseId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public groupOFs(body) {\n        let url = this.getBasePath();\n        return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public deleteOF(ofId, phaseId) {\n        let url = this.getBasePath() + ofId + \"/\" + phaseId;\n        return this.httpClient.delete(url, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public updateOf(ofId, status) {\n        let url = this.getBasePath() + `UpdateStatus/${ofId}/${status}`\n        let body = {}\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    // Methods OF-Worker\n    public getWorkerOFs(filter: string, showAll: boolean, machineId: string = null) {\n        let url = this.getBasePath() + \"WorkerOFs\";\n\n        let params = new HttpParams()\n            .append('limit', \"25\")\n            .append('filter', filter.toString())\n            .append('showAll', showAll.toString())\n\n        if(machineId != null)\n            params = params.append('machineId', machineId);\n\n        return this.httpClient.get(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getReferences(ofValue: string, filter: string, showAll: boolean, machineId: string = null) {\n        let url = this.getBasePath() + \"References\";\n        let params = new HttpParams()\n                        .append('filter', filter.toString())\n                        .append('showAll', showAll.toString())\n                        .append('ofValue', ofValue.toString())\n\n        if(machineId != null)\n            params = params.append('machineId', machineId);\n\n        return this.httpClient.get<Array<OFReference>>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getNextReferences(machineId: string) {\n        let url = this.getBasePath() + \"NextReferences/\" + machineId;\n        return this.httpClient.get<Array<OFReference>>(url, { headers: this.getHeaders() });\n    }\n\n    public getOFWorkers(ofId, phaseId) {\n        let url = this.getBasePath() + ofId + \"/\" + phaseId;\n        return this.httpClient.get<OF>(url, { headers: this.getHeaders() });\n    }\n\n    public getChildsOF(ofId) {\n        let url = this.getBasePath() + \"ChildsOF/\" + ofId;\n        return this.httpClient.get<Array<OF>>(url, { headers: this.getHeaders() });\n    }\n\n    public assignWorkerOF(body) {\n        let url = this.getBasePath() + \"Worker/\";\n        return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public updateOFWorker(body, ofWorkerId) {\n        let url = this.getBasePath() + \"Worker/\" + ofWorkerId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public deleteOFWorker(ofWorkerId) {\n        let url = this.getBasePath() + \"Worker/\" + ofWorkerId;\n        return this.httpClient.delete(url, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public getUsersWork() {\n        let url = this.getBasePath() + \"UsersWork/\";\n        return this.httpClient.get<Array<UsersWork>>(url, { headers: this.getHeaders() });\n    }\n\n\n    // Methods OF-Reference\n    public getOFReferences(referenceId) {\n        let url = this.getBasePath() + \"Reference/\" + referenceId;\n        return this.httpClient.get<Array<OFReferences>>(url, { headers: this.getHeaders() });\n    }\n\n    public assignOFReference(body) {\n        let url = this.getBasePath() + \"Reference/\";\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public updateOFReference(body, ofId, phaseId) {\n        let url = this.getBasePath() + \"Reference/\" + ofId + \"/\" + phaseId;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n    public deleteOFReference(ofId, phaseId) {\n        let url = this.getBasePath() + \"Reference/\" + ofId + \"/\" + phaseId;\n        return this.httpClient.delete(url, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { HttpClient } from \"@angular/common/http\";\nimport { Param } from './models/Param';\n\n@Injectable()\nexport class ParamService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Param/\";\n    }\n\n    public getParams() {\n        let url = this.getBasePath();\n        return this.httpClient.get<Array<Param>>(url, { headers: this.getHeaders() });\n    }\n\n    public updateParams(body) {\n        let url = this.getBasePath();\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n    }\n\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { PhaseReference } from './models/PhaseReference';\n\n@Injectable()\nexport class PhaseReferenceService extends BaseAuthService {\n\n  constructor(public publicService: PublicService,\n    private httpClient: HttpClient,\n    @Inject('env') protected env: any) {\n    super(publicService, env);\n  }\n\n  protected getBasePath(): string {\n    return super.getBasePath() + \"PhaseReference/\";\n  }\n\n  private getBasePathRaw(): string {\n    return this.getBasePath() + \"raw/\";\n  }\n\n  public getsRaw() {\n    let url = this.getBasePathRaw();\n    return this.httpClient.get<Array<PhaseReference>>(url, { headers: this.getHeaders() });\n  }\n\n  public get(phaseId, referendeId) {\n    let url = this.getBasePath() + phaseId + \"/\" + referendeId;\n    return this.httpClient.get<PhaseReference>(url, { headers: this.getHeaders() });\n  }\n\n  public post(body) {\n    let url = this.getBasePath();\n    return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text' });\n  }\n\n  public put(body, phaseId, referendeId) {\n    let url = this.getBasePath() + phaseId + \"/\" + referendeId;\n    return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n  }\n\n  public putPhoto(phaseId, referenceId, file: File) {\n    let url = this.getBasePath() + 'Photo/' + phaseId + '/' + referenceId;\n    let formData = new FormData();\n    formData.append('file', file, file.name);\n    return this.httpClient.post(url, formData, { headers: this.getHeaders() });\n  }\n\n\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { Phase } from './models/Phase';\nimport { ServerResponse } from './models/server-response.model';\n\n@Injectable()\nexport class PhasesService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env: any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Phase/\";\n    }\n\n    public getPhases(filter: string, limit: number = 25) {\n        let url = this.getBasePath();\n        let params = new HttpParams()\n            .append('limit', limit.toString())\n            .append('filter', filter.toString());\n        return this.httpClient.get<ServerResponse<Phase>>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getPhasesRaw() {\n        let url = this.getBasePath() + \"raw/\";\n        return this.httpClient.get<Array<Phase>>(url, { headers: this.getHeaders() });\n    }\n\n    public get(idPhase) {\n        let url = this.getBasePath() + idPhase;\n        return this.httpClient.get<Phase>(url, { headers: this.getHeaders() });\n    }\n\n    public post(body) {\n        let url = this.getBasePath();\n        return this.httpClient.post(url, body, { headers: this.getHeaders(), responseType: 'text' });\n    }\n\n    public put(body, id) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text', });\n\n    }\n\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { Reference } from \"./models/Reference\";\n\n@Injectable()\nexport class ReferenceService extends BaseAuthService {\n\n  constructor(public publicService: PublicService,\n    private httpClient: HttpClient,\n    @Inject('env') protected env: any) {\n    super(publicService, env);\n  }\n\n  protected getBasePath(): string {\n    return super.getBasePath() + \"References/\";\n  }\n\n  public getReference(id: string) {\n    let url = this.getBasePath() + id;\n    return this.httpClient.get(url, { headers: this.getHeaders() });\n  }\n\n  public getReferencesPopUp(filter: string, showOnlyActive: boolean = false) {\n    let url = this.getBasePath() + \"PopUp/\";\n\n    let params = new HttpParams()\n      .append('limit', \"10\")\n      .append('filter', filter.toString())\n      .append('showOnlyActive', showOnlyActive.toString())\n\n    return this.httpClient.get<Array<Reference>>(url, { headers: this.getHeaders(), params: params });\n  }\n\n  public getReferencesRaw(showOnlyActive: boolean = false) {\n    let url = this.getBasePath() + \"Raw/\";\n    let params = new HttpParams()\n      .append('showOnlyActive', showOnlyActive.toString())\n    return this.httpClient.get<Array<Reference>>(url, { headers: this.getHeaders(), params: params });\n  }\n\n  public postReference(ref) {\n    let url = this.getBasePath();\n    return this.httpClient.post<Reference>(url, ref, { headers: this.getHeaders() });\n  }\n\n  public putReference(id: string, ref) {\n    let url = this.getBasePath() + id;\n    return this.httpClient.put(url, ref, { headers: this.getHeaders(), responseType: 'text' });\n  }\n\n  public getReferencePhoto(referenceId: string) {\n    let url = super.getBasePath() + \"Public/Photo/Last/\" + referenceId;\n    return this.httpClient.get(url, { headers: this.getHeaders(), responseType: \"blob\" });\n  }\n\n  public putPhoto(referenceId, file: File) {\n    let url = this.getBasePath() + \"Photo/\" + referenceId;\n    let formData = new FormData();\n    formData.append('file', file, file.name);\n    return this.httpClient.post(url, formData, { headers: this.getHeaders() });\n  }\n\n\n  public getReferencesFilterMachine(filter: string, date, machineId, showOnlyActive: boolean = false) {\n    let url = this.getBasePath() + \"Autocomplete/\"\n\n    let params = new HttpParams()\n      .append('filter', filter.toString())\n      .append('machineId', machineId)\n      .append('Date', date)\n      .append('showOnlyActive', showOnlyActive.toString())\n\n    return this.httpClient.get<Array<Reference>>(url, { headers: this.getHeaders(), params: params });\n  }\n\n  public getReferencesFilter(filter: string, date, showOnlyActive: boolean = false) {\n    let url = this.getBasePath() + \"Autocomplete/\";\n\n    let params = new HttpParams()\n      .append('filter', filter.toString())\n      .append('Date', date)\n      .append('showOnlyActive', showOnlyActive.toString())\n\n    return this.httpClient.get<Array<Reference>>(url, { headers: this.getHeaders(), params: params });\n  }\n\n  public getReferencesFilter2(filter: string, showOnlyActive: boolean = false) {\n    let url = this.getBasePath() + \"Autocomplete\"\n\n    let params = new HttpParams()\n      .append('limit', \"25\")\n      .append('filter', filter.toString())\n      .append('showOnlyActive', showOnlyActive.toString())\n\n    return this.httpClient.get<Array<Reference>>(url, { headers: this.getHeaders(), params: params });\n  }\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { RejectionType } from \"./models/rejectionType\";\n\n@Injectable()\nexport class RejectionTypeService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"RejectionType/\";\n    }\n\n    public getRejectionType(id: string){\n        let url = this.getBasePath() + id;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getRejectionsTypeRaw(){\n        let url = this.getBasePath() + \"Raw\";\n        return this.httpClient.get<RejectionType[]>(url, { headers: this.getHeaders() });\n    }\n\n    public postRejectionType(body){\n        let url = this.getBasePath();\n        return this.httpClient.post(url, body, { headers: this.getHeaders() });\n    }\n\n    public putRejectionType(id: string, body){\n        let url = this.getBasePath() + id;\n        return this.httpClient.put(url, body, { headers:this.getHeaders() })\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { ShareExistClient, ShareGroup } from \"./models/ShareGroup\";\n\n@Injectable()\nexport class ShareService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Share/\";\n    }\n\n    public getExistUser(email){\n        let url = this.getBasePath() + \"ExistUser/\" + email;\n        return this.httpClient.get<ShareExistClient>(url, {headers: this.getHeaders()});\n    }\n\n    public getAdminExist(email){\n        let url = this.getBasePath() + \"ExistAdmin/\" + email;\n        return this.httpClient.get<ShareExistClient>(url, {headers: this.getHeaders()});\n    }\n\n    /*******************/\n    /**** DASHBOARD ****/\n    /*******************/\n    public getShareDashboardGroups(menuDashboardId){\n        let url = this.getBasePath() + \"DashboardGroups/\" + menuDashboardId;\n        return this.httpClient.get<ShareGroup[]>(url, {headers: this.getHeaders()});\n    }\n\n    public putShareDashboard(body){\n        let url = this.getBasePath() + \"Dashboard/\"\n        return this.httpClient.put(url, body, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n    public removeShareDashboardGroup(menuDashboardId, groupId){\n        let url = this.getBasePath() + \"Dashboard/\" + menuDashboardId + \"/\" + groupId;\n        return this.httpClient.delete(url, {headers: this.getHeaders(), responseType: 'text'});\n    }\n    \n\n    /*****************/\n    /**** MACHINE ****/\n    /*****************/\n    public getShareMachineGroups(machineId){\n        let url = this.getBasePath() + \"MachineGroups/\" + machineId;\n        return this.httpClient.get<ShareGroup[]>(url, {headers: this.getHeaders()});\n    }\n\n    public putShareMachine(body){\n        let url = this.getBasePath() + \"Machine/\"\n        return this.httpClient.put(url, body, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n    public removeShareMachineGroup(machineId, groupId){\n        let url = this.getBasePath() + \"Machine/\" + machineId + \"/\" + groupId;\n        return this.httpClient.delete(url, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n\n    /*************/\n    /**** OLD ****/\n    /*************/\n    public putTransferMachineGroup(machineId, groupId){\n        let url = this.getBasePath() + \"TransferMachineGroup/\" + machineId + \"/\" + groupId;\n        return this.httpClient.put(url, null, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n    public putShareRegisterMachineGroup(partner, body){\n        let url = this.getBasePath() + \"ShareRegisterMachineGroup/\" + partner;\n        return this.httpClient.put(url, body, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n    public putShareMachineGroup(body){\n        let url = this.getBasePath() + \"ShareMachineGroup\";\n        return this.httpClient.put(url, body, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n    public putRevokeMachineGroup(machine, group){\n        let body = {};\n        let url = this.getBasePath() + \"RevokeAccessMachine/\" + machine + \"/\" + group;\n        return this.httpClient.put(url, body, {headers: this.getHeaders(), responseType: 'text'});\n    }\n\n    public PutChangeProductionGroup(machine, group){\n        let body = {};\n        let url = this.getBasePath() + \"ChangeProductionGroup/\" + machine + \"/\" + group;\n        return this.httpClient.put(url, body, {headers: this.getHeaders(), responseType: 'text'});\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { AllData, OEE, OEEDevice } from \"./models/AllData\";\nimport { StatisticProductionData } from './models/statisticData';\n\n@Injectable()\nexport class StatisticsService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Statistics/\";\n    }\n\n    /**** MACHINE PRODUCTION STATISTICS ****/\n    public getDailyProductionRange(machineId: string, timeShow: number, startDate, endDate, shift?: number){\n        let url = this.getBasePath() + \"DailyProductionRange/\" + machineId;\n        let params = new HttpParams();\n\n        if (timeShow != null)\n            params = params.append('TimeShow', timeShow.toString());\n\n        if (startDate != null)\n            params = params.append('StartDate', startDate.toString());\n\n        if (endDate != null)\n            params = params.append('EndDate', endDate.toString());\n\n        if(shift != null)\n            params = params.append('Shift', shift);\n\n        return this.httpClient.get<StatisticProductionData>(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getDailyProductionGraph(machineId: string, date: string){\n        let url = this.getBasePath() + \"DailyProduction/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getMonthlyProductionGraph(machineId: string, date: string){\n        let url = this.getBasePath() + \"MonthlyProduction/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getYearlyProductionGraph(machineId: string, date: string){\n        let url = this.getBasePath() + \"YearlyProduction/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** GLOBAL MACHINES PRODUCTION STATISTICS ****/\n    public getGlobalDailyProductionGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalDailyProduction/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalMonthlyProductionGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalMonthlyProduction/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalYearlyProductionGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalYearlyProduction/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** GLOBAL REFERENCES PRODUCTION STATISTICS ****/\n    public getGlobalDailyProductionReferencesGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalDailyProductionReferences/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalMonthlyProductionReferencesGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalMonthlyProductionReferences/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalYearlyProductionReferencesGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalYearlyProductionReferences/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** MACHINE GLOBAL NG PIECES ****/\n    public getGlobalDailyNGList(date: string, boxId: string = undefined){\n        let url = this.getBasePath() + \"GlobalDailyNGList/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalMonthlyNGList(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalMonthlyNGList/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalYearlyNGList(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalYearlyNGList/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** MACHINE NG PIECES ****/\n    public getDailyNGList(machineId: string, date: string){\n        let url = this.getBasePath() + \"DailyNGList/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getMonthlyNGList(machineId: string, date: string){\n        let url = this.getBasePath() + \"MonthlyNGList/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getYearlyNGList(machineId: string, date: string){\n        let url = this.getBasePath() + \"YearlyNGList/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** MACHINE STOPS STATISTICS ****/\n    public getDailyStopsGraph(machineId: string, date: string){\n        let url = this.getBasePath() + \"DailyStops/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** GLOBAL MACHINES PRODUCTION STATISTICS ****/\n    public getGlobalDailyStopsGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalDailyStops/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalMonthlyStopsGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalMonthlyStops/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getGlobalYearlyStopsGraph(date: string, boxId: string){\n        let url = this.getBasePath() + \"GlobalYearlyStops/?Date=\" + date + (boxId != undefined ? \"&BoxId=\" + boxId : \"\");\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    /**** ALL DATA STATISTICS ****/\n    public getAllData(machineId: string){\n        let url = this.getBasePath() + \"AllData/\" + machineId;\n        return this.httpClient.get<AllData>(url, { headers: this.getHeaders() });\n    }\n\n    /**** CYCLE TIME EVOLUTION ****/\n    public getDailyTimeOfCycle(machineId: string, date: string){\n        let url = this.getBasePath() + \"DailyTimeOfCycle/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, {headers: this.getHeaders() });\n    }\n\n    public getMonthlyTimeOfCycle(machineId: string, date: string){\n        let url = this.getBasePath() + \"MonthlyTimeOfCycle/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, {headers: this.getHeaders() });\n    }\n\n    public getYearlyTimeOfCycle(machineId: string, date: string){\n        let url = this.getBasePath() + \"YearlyTimeOfCycle/\" + machineId + \"/?Date=\" + date;\n        return this.httpClient.get(url, {headers: this.getHeaders() });\n    }\n\n    /**** CYCLE TIME EVOLUTION WITH REFERENCE ****/\n    public getDailyTimeOfCycleReference(machineId: string, referenceId: string, date: string){\n        let url = this.getBasePath() + \"DailyTimeOfCycle/\" + machineId + \"/\" + referenceId + \"/?Date=\" + date;\n        return this.httpClient.get(url, {headers: this.getHeaders() });\n    }\n\n    public getMonthlyTimeOfCycleReference(machineId: string, referenceId: string, date: string){\n        let url = this.getBasePath() + \"MonthlyTimeOfCycle/\" + machineId + \"/\" + referenceId + \"/?Date=\" + date;;\n        return this.httpClient.get(url, {headers: this.getHeaders() });\n    }\n\n    public getYearlyTimeOfCycleReference(machineId: string, referenceId: string, date: string){\n        let url = this.getBasePath() + \"YearlyTimeOfCycle/\" + machineId + \"/\" + referenceId + \"/?Date=\" + date;;\n        return this.httpClient.get(url, {headers: this.getHeaders() });\n    }\n\n    /**** OEE *****/\n    public getOEEHours(machineId: string, startDate, startHour, endHour, refId, realHours){\n        let url = this.getBasePath() + \"DailyOEE/\" + machineId + \"?Date=\" + startDate + \"&startHour=\" + startHour + \"&endHour=\" + endHour + \"&ReferenceId=\" + refId + \"&RealHours=\" + realHours;\n        return this.httpClient.get<OEE>(url, { headers: this.getHeaders() });\n    }\n\n    public getOEEMonthly(boxId: string, date, startHour, endHour, realHours){\n        let url = this.getBasePath() + \"MonthlyOEE/?BoxId=\" + boxId + \"&Date=\" + date + \"&StartHour=\" + startHour + \"&endHour=\" + endHour + \"&RealHours=\" + realHours;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getOEEYearly(boxId: string, date, startHour, endHour, realHours){\n        let url = this.getBasePath() + \"YearlyOEE/?BoxId=\" + boxId + \"&Date=\" + date + \"&StartHour=\" + startHour + \"&endHour=\" + endHour + \"&RealHours=\" + realHours;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n\n    /**** OEE REFERENCES *****/\n    public getOEEReferenceDailyAll(date, realHours){\n        let url = this.getBasePath() + \"DailyOEEReferenceAll/?Date=\" + date + \"&RealHours=\" + realHours;;\n        return this.httpClient.get<OEEDevice[]>(url, { headers: this.getHeaders() });\n    }\n    //startDate: string, startHour: string, endHour: string, realHours: string, endDate: string,machineId: string\n    public getOEEReferenceMonthly(startHour, endHour, realHours, boxId?: string, date?,machineId?: string, startDate?,endDate?){\n        let url = this.getBasePath() + \"MonthlyOEEReference/\";\n        let params = new HttpParams();\n        params = params.append('startHour', startHour);\n        params = params.append('endHour', endHour);\n        params = params.append('realHours', realHours);\n        if (date!=null) {\n            params = params.append('date', date);\n        }\n        if (boxId!=null) {\n            params = params.append('BoxId', boxId);\n        }\n        if (startDate!=null) {\n            params = params.append('startDate', startDate);\n        }\n        if (endDate!=null) {\n            params = params.append('endDate', endDate);\n        }\n        if (machineId!=null) {\n            params = params.append('machineId', machineId);\n        }\n        return this.httpClient.get(url, { params,headers: this.getHeaders() });\n    }\n\n    public getOEEReferenceQuarterly(date, startHour, endHour, realHours, boxId?: string, machineId?: string){\n        let url = this.getBasePath() + \"QuarterOEEReference/\";\n        let params = new HttpParams();\n        params = params.append('startHour', startHour);\n        params = params.append('endHour', endHour);\n        params = params.append('realHours', realHours);\n        params = params.append('date', date);\n        if (boxId!=null) {\n            params = params.append('boxId', boxId);\n        }\n        if (machineId!=null) {\n            params = params.append('machineId', machineId);\n        }\n        return this.httpClient.get(url, { params,headers: this.getHeaders() });\n    }\n\n    public getOEEReferenceYearly(date, startHour, endHour, realHours, boxId?: string, machineId?: string){\n        let url = this.getBasePath() + \"YearlyOEEReference/\";\n        let params = new HttpParams();\n        params = params.append('startHour', startHour);\n        params = params.append('endHour', endHour);\n        params = params.append('realHours', realHours);\n        params = params.append('date', date);\n        if (boxId!=null) {\n            params = params.append('boxId', boxId);\n        }\n        if (machineId!=null) {\n            params = params.append('machineId', machineId);\n        }\n        return this.httpClient.get(url, { params,headers: this.getHeaders() });\n    }\n\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\n\n@Injectable()\nexport class StopsGraphService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"StopsGraph/\";\n    }\n    \n    public getStopTypeGraph(body) {\n        let url = this.getBasePath() + \"GraphType\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n    \n    public getStopSubTypeGraph(body) {\n        let url = this.getBasePath() + \"GraphSubType\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n    \n    public getStopParetoGlobal(body) {\n        let url = this.getBasePath() + \"ParetoGlobal\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n    \n    public getStopParetoMachine(body) {\n        let url = this.getBasePath() + \"ParetoMachine\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n    \n    public getStopParetoBox(body) {\n        let url = this.getBasePath() + \"ParetoBox\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n    \n    public getStopParetoReference(body) {\n        let url = this.getBasePath() + \"ParetoReference\";\n        return this.httpClient.put<any[]>(url, body, { headers: this.getHeaders(), responseType:'json' });\n    }\n}\n","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\n\n@Injectable()\nexport class StopTypeService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Machine/Version/Device/Stop/StopType/\";\n    }\n\n    public getStopType(type: string){\n        let url = this.getBasePath() + type;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getStopTypeRaw(){\n        let url = this.getBasePath() + \"Raw\";\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public postStopType(body){\n        let url = this.getBasePath();\n        return this.httpClient.post(url, body, { headers: this.getHeaders() });\n    }\n\n    public putStopType(body){\n        let url = this.getBasePath();\n        return this.httpClient.put(url, body, { headers:this.getHeaders() })\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient, HttpParams } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { SuggestStopType, SuggestStop } from \"./models/SuggestStop\";\n\n@Injectable()\nexport class SuggestStopsService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"SuggestStop/\";\n    }\n\n    public getSuggestStops(type: string) {\n        let url = this.getBasePath() + type;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getSuggestStopsTablet(prefix: string, stopId: string, filter) {\n        let url = this.getBasePath() + \"StopTypeTablet/\" + prefix + \"/\" + stopId;\n        let params = new HttpParams()\n            .append('limit', \"50\")\n            .append('filter', filter.toString());\n        return this.httpClient.get(url, { headers: this.getHeaders(), params: params });\n    }\n\n    public getMachineAllStops(machineId: string) {\n        let url = this.getBasePath() + \"Machine/All/\" + machineId;\n        return this.httpClient.get<Array<SuggestStop>>(url, { headers: this.getHeaders() });\n    }\n\n    public getMachineStops(machineId: string) {\n        let url = this.getBasePath() + \"Machine/\" + machineId + \"/?limit=\" + 25;\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getStopTypes(filter: string, prefix: string, stopId: string) {\n        let url = this.getBasePath() + \"StopTypes/\" + prefix + \"/\" + stopId + \"/?filter=\" + filter;\n        return this.httpClient.get<Array<SuggestStopType>>(url, { headers: this.getHeaders() });\n    }\n\n    public getAllStopTypes(stopId: string, filter: string) {\n        let url = this.getBasePath() + \"AllStopTypes/\" + stopId + \"/?filter=\" + filter;\n        return this.httpClient.get<Array<SuggestStopType>>(url, { headers: this.getHeaders() });\n    }\n\n    public assignSuggestType(prefix: string, stopId: string, stopType, stopTypeObservations: string = null) {\n        let url = this.getBasePath() + prefix + \"/\" + stopId + \"/\" + stopType;\n        return this.httpClient.put(url, { observations: stopTypeObservations }, { headers: this.getHeaders() });\n    }\n\n    // public postStopType(body){\n    //     let url = this.getBasePath();\n    //     return this.httpClient.post(url, body, { headers: this.getHeaders() });\n    // }\n\n    // public putStopType(body){\n    //     let url = this.getBasePath();\n    //     return this.httpClient.put(url, body, { headers:this.getHeaders() })\n    // }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { PublicService } from \"./public.service\";\nimport { TexmaItem } from \"./models/TexmaItem\";\n\n@Injectable()\nexport class TexmaService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    public getBasePath(): string {\n        return super.getBasePath() + \"Texma/\";\n    }\n    \n    public getProduction(machineId: string, productionId: string): any {\n        let url = this.getBasePath() + machineId + \"/\" + productionId;\n        return this.httpClient.get<TexmaItem>(url, { headers: this.getHeaders() });\n    }\n    \n    public getProductionListOpen(machineId: string): any {\n        let url = this.getBasePath() + machineId + \"/Open\";\n        return this.httpClient.get<boolean>(url, { headers: this.getHeaders() });\n    }\n    \n    public putProduction(form, machineId: string, id: string): any {\n        let url = this.getBasePath() + machineId + \"/\" + id;\n        return this.httpClient.put(url, form, { headers: this.getHeaders(), responseType:'text' });\n    }\n\n    public postProduction(form, machineId: string): any {\n        let url = this.getBasePath() + machineId + \"/\";\n        return this.httpClient.post<TexmaItem>(url, form, { headers: this.getHeaders() });\n    }\n    \n    public stopProductionList(machineId: string, productionListId: string) {\n        let url = this.getBasePath() + machineId + \"/stopProductionList/\" + productionListId;\n        return this.httpClient.put(url, \"\", { headers: this.getHeaders(), responseType:'text' });\n    }\n\n    public getProductionListVelocityGraph(machineId: string, productionListId: string){\n        let url = this.getBasePath() + machineId + \"/\" + productionListId + \"/Velocity\";\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n\n    public getProductionListPerimeterGraph(machineId: string, productionListId: string){\n        let url = this.getBasePath() + machineId + \"/\" + productionListId + \"/Perimeter\";\n        return this.httpClient.get(url, { headers: this.getHeaders() });\n    }\n}","import { Inject, Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\n\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\nimport { Tooling } from \"./models/tooling\";\n\n@Injectable()\nexport class ToolingService extends BaseAuthService {\n\n  constructor(public publicService: PublicService,\n    private httpClient: HttpClient,\n    @Inject('env') protected env: any) {\n    super(publicService, env);\n  }\n\n  protected getBasePath(): string {\n    return super.getBasePath() + \"Tooling/\";\n  }\n\n  public getTooling(id: string) {\n    let url = this.getBasePath() + id;\n    return this.httpClient.get(url, { headers: this.getHeaders() });\n  }\n\n  public getToolingsRaw() {\n    let url = this.getBasePath() + \"Raw/\";\n    return this.httpClient.get<Array<Tooling>>(url, { headers: this.getHeaders() });\n  }\n\n  public getToolingsPopup(filter) {\n    let url = this.getBasePath() + \"?filter=\" + filter;\n    return this.httpClient.get<Array<Tooling>>(url, { headers: this.getHeaders() });\n  }\n\n  public postTooling(body) {\n    let url = this.getBasePath();\n    return this.httpClient.post<Tooling>(url, body, { headers: this.getHeaders() });\n  }\n\n  public putTooling(id: string, body) {\n    let url = this.getBasePath() + id;\n    return this.httpClient.put(url, body, { headers: this.getHeaders(), responseType: 'text' });\n  }\n\n  public getPhotoURL(toolingId: string) {\n    return this.getBasePath() + \"Photo/\" + toolingId;\n  }\n\n  public startMachineTooling(idTooling, idMachine) {\n    let url = super.getBasePath() + \"MachineTooling/StartTooling/\" + idMachine + \"/\" + idTooling;\n    return this.httpClient.put<Tooling>(url, [], { headers: this.getHeaders() });\n  }\n\n  public stopMachineTooling(idMachine) {\n    let url = super.getBasePath() + \"MachineTooling/StopTooling/\" + idMachine;\n    return this.httpClient.put(url, [], { headers: this.getHeaders(), responseType: 'text' });\n  }\n  public putPhoto(toolingId, file: File) {\n    let url = this.getBasePath() + \"Photo/\" + toolingId;\n    let formData = new FormData();\n    formData.append('file', file, file.name);\n    return this.httpClient.post(url, formData, { headers: this.getHeaders() });\n  }\n\n\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { Observable, Subscriber } from 'rxjs';\nimport { HttpClient } from \"@angular/common/http\";\nimport { PublicService } from \"./public.service\";\nimport { BaseAuthService } from \"./base-auth.service\";\n\n@Injectable()\nexport class UrlHelperService  extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n    \n    get(url: string): Observable<string> {\n        return new Observable((observer: Subscriber<string>) => {\n            let objectUrl: string = null;\n\n            this.httpClient.get(url, {headers: this.getHeaders(), responseType: 'blob' })\n                .subscribe(m => {\n                    objectUrl = URL.createObjectURL(m);\n                    observer.next(objectUrl);\n                });\n\n            return () => {\n                if (objectUrl) {\n                    URL.revokeObjectURL(objectUrl);\n                    objectUrl = null;\n                }\n            };\n        });\n    }\n\n    \n}","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient, HttpParams } from '@angular/common/http';\nimport { BaseAuthService } from './base-auth.service';\nimport { PublicService } from './public.service';\nimport { User } from './models/user';\nimport { Session } from './models/session.model';\nimport { ServerResponse } from './models/server-response.model';\n\n@Injectable()\nexport class UserServiceService extends BaseAuthService {\n\n  constructor(public publicService: PublicService,\n    private httpClient: HttpClient,\n    @Inject('env') protected env: any) {\n    super(publicService, env);\n  }\n\n  protected getBasePath(): string {\n    return super.getBasePath() + \"User/\";\n  }\n\n  getUser(id) {\n    let url = this.getBasePath() + id;\n    let head = this.getHeaders();\n    return this.httpClient.get<User>(url, { headers: head });\n  }\n\n  getUsers() {\n    let url = this.getBasePath();\n    let head = this.getHeaders();\n    return this.httpClient.get<ServerResponse<User>>(url, { headers: head });\n  }\n\n  getUsersRaw(shift?: number) {\n    let url = this.getBasePath() + \"Raw/\";\n    let head = this.getHeaders();\n    let params = new HttpParams();\n    if(shift != null){\n      params = params.append('shift',String(shift))\n    }\n    return this.httpClient.get<User[]>(url, { headers: head, params: params });\n  }\n\n  getWorkers() {\n    let url = this.getBasePath() + \"Workers\";\n    let head = this.getHeaders();\n    return this.httpClient.get<User[]>(url, { headers: head });\n  }\n\n  getWorkersRaw(shift?: number) {\n    let url = this.getBasePath() + \"WorkersRaw\";\n    let head = this.getHeaders();\n    let params = new HttpParams();\n    if(shift != null){\n      params = params.append('shift',String(shift))\n    }\n    return this.httpClient.get<User[]>(url, { headers: head, params: params });\n  }\n\n  putUser(body, id) {\n    let url = this.getBasePath() + id;\n    let head = this.getHeaders();\n    return this.httpClient.put(url, body, { headers: head, responseType: 'text' });\n  }\n\n  postUser(body, partnerName: string) {\n    let url = this.getBasePath() + (partnerName == undefined ? \"\" : \"/\" + partnerName);\n    let head = this.getHeaders();\n    return this.httpClient.post(url, body, { headers: head, responseType: 'text' });\n  }\n\n  public loginWorker(workerCode: string) {\n    var url = this.getBasePath() + \"ValidateWorker/\" + workerCode;\n    let head = this.getHeadersGroup();\n    return this.httpClient.get<Session>(url, { headers: head });\n  }\n\n  public saveAvatar(file, userId) {\n    let url = this.getBasePath() + \"Avatar/\" + userId;\n    const formData = new FormData();\n    formData.append(\"file\", file, file.name);\n    return this.httpClient.put(url, formData, { headers: this.getHeaders(), responseType: 'text' });\n  }\n\n}\n","import { Inject, Injectable } from '@angular/core';\nimport { HttpClient } from \"@angular/common/http\";\nimport { PublicService } from './public.service';\nimport { BaseAuthService } from './base-auth.service';\nimport { Version } from './models/version';\n\n@Injectable()\nexport class VersionsService extends BaseAuthService {\n\n    constructor(public publicService: PublicService,\n        private httpClient: HttpClient,\n        @Inject('env') protected env:any) {\n        super(publicService, env);\n    }\n\n    protected getBasePath(): string {\n        return super.getBasePath() + \"Machine/Version/\";\n    }\n\n    public getVersion(version: string) {\n        let url = this.getBasePath() + \"Detail/\" + version;\n        return this.httpClient.get<Version>(url, { headers: this.getHeaders() });\n    }\n\n    public getPhotoVersion(versionId): string {\n        let num = Math.random() * 10;\n        let url = super.getBasePath() + \"Public/Photo/\" + versionId + \"/?rand=\" + num;\n        return url;\n    }\n\n    public putVersion(id: string, version) {\n        let url = this.getBasePath() + id;\n        return this.httpClient.put(url, version, { headers: this.getHeaders(),responseType:'text' });\n    }\n\n    public postVersion(version, machineId) {\n        let url = this.getBasePath() + machineId;\n        return this.httpClient.post<Version>(url, version, { headers: this.getHeaders() });\n    }\n\n    public activeVersion(idVersion) {\n        let url = this.getBasePath  () + \"ChangeStatus/\"+idVersion;\n        let body={status:0}\n        return this.httpClient.put(url, body, { headers: this.getHeaders() })\n    }\n\n    public getPhotoVersionData (versionId) {\n        return  super.getBasePath() + \"Public/Photo/\"+versionId;\n    }\n\n    public getPhoto(machineId: string, version: string)\n    {\n        let url = super.getBasePath() + \"Public/Photo/\" +  machineId + \"/\" + version;;\n        return this.httpClient.get(url, { headers: this.getHeaders(), responseType: 'blob' });\n    }\n\n    public putPhoto(versionId, file: File) {\n        let url = this.getBasePath() + \"photo/upload/\" + versionId;\n        let formData = new FormData();\n        formData.append('file', file, file.name);\n        return this.httpClient.post(url, formData, { headers: this.getHeaders() });\n    }\n}\n","export class Account {\n    userId: string;\n    userName: string;\n    email: string;\n    name: string;\n    languageId: string;\n    claims: Array<string>;\n}","export class AlarmData {\n    machineName: string;\n    tablesPrefix: string;\n    deviceName: string;\n    id: string;\n    alarmConfId: string;\n    name: string;\n    description: string;\n    startDate: Date;\n    endDate: Date;\n    creationDate: Date;\n}\n\nexport class AlarmConf {\n    id: string;\n    name: string;\n    description: string;\n    creationDate: Date;\n    deviceId: string;\n    deviceName: string;\n}\n\nexport class AlarmNotification {\n    notificationType: number;\n    notificateOnStart: boolean;\n    notificateOnEnd: boolean;\n}","import { MachineReference } from \"./Reference\"\n\nexport class AllData {\n    dailyTotalPiecesNG: number;\n    dailyTotalPiecesOK: number;\n    dailyValues: Array<DailyValue>;\n    lastDate: string;\n    machineModel: string;\n    machineName: string;\n    machineTargetNumber: number;\n    machineTotalIssues: number;\n    references: Array<MachineReference>;\n    totalPiecesNG: number;\n    totalPiecesOK: number;\n    referenceProduction: any;\n    referenceProductionNOK: any;\n    deviceReferenceProduction: any;\n    oee: OEE;\n}\n\nexport class DailyValue {\n    name: string;\n    value: number;\n}\n\nexport class OEE {\n    availability: number;\n    cycleTime: number;\n    idealCycleTime: number;\n    nominalCapacity: number;\n    nominalCapacityAux: number;\n    numberOfStops: number;\n    oee: number;\n    operationTime: number;\n    operationTimeAux: number;\n    performance: number;\n    plannedStopsTimeAux: number;\n    productionPlannedTime: number;\n    quality: number;\n    stopsTime: number;\n    stopsTimeAux: number;\n    totalPieces: number;\n    totalPiecesOK: number;\n    totalPlannedStopsTime: number;\n    totalWorkTime: number;\n    referencesOEE: OEEDeviceReference[];\n}\n\nexport class OEEDevice {\n    availability: number;\n    performance: number;\n    quality: number;\n    oee: number;\n    machineId: string;\n    machineName: string;\n}\n\nexport class OEEDeviceReference {\n    deviceId: string;\n    referenceId: string;\n    oee: OEE;\n}\n","import { Machine } from \"./machine\";\nimport { Reference } from \"./Reference\";\n\nexport class Box {\n    id: string;\n    description: string;\n    name: string;\n    machines: Array<Machine>;\n    numMachines: number;\n    references: Array<Reference>;\n    numReferences: number;\n    boxParentId: string;\n    boxChildrens: Box[];\n}\n","export class Client {\n    id: string;\n    name: string;\n    description: string;\n}","export class CycleTime {\n    machineId: string;\n    referenceId: string;\n    cycleTime: number;\n    machineCycles: number;\n    piecesCycles: number;\n    machineName: string;\n    referenceCode: string;\n}","export class WidgetModel {\n  pluginId: string;\n  name: string;\n  title: string;\n  description: string;\n  moduleBundlePath: string;\n  moduleName: string;\n  numColumns: number;\n  numRows: number;\n  dashboardContent: DashboardContent;\n  showDashboardElement: string[];\n}\n\nexport class DashboardComponentModel {\n  cols: number;\n  rows: number;\n  x: number;\n  y: number;\n  deviceType: number;\n  component?: any;\n  pluginId: string;\n  menuId: string;\n  menuDashboardId: string;\n  dashboardContent: DashboardContent;\n  showDashboardElement: string[];\n  widget: WidgetModel;\n}\n\nexport class DashboardModel {\n  id: string;\n  text: string;\n  image: string;\n  permission: number;\n  groupsCount: number;\n  dashboards: DashboardComponentModel[];\n}\n\nexport class DashboardContent {\n  text: string;\n  fontSize: number;\n  textAlign: number;\n  textColor: string;\n  backgroundColor: string;\n  itemId: string;\n  serialNumber: string;\n  dBDataBlockId: string;\n  dBDataId: number;\n  dBDataIndex: number;\n  dBBitId: number;\n  dBBitIndex: number;\n  dBItemType: number;\n  url: string;\n  photo: string;\n  photoFileName: string;\n  image: File;\n  imageSrc: any;\n  numValues: number;\n  timeShow: number;\n  switchValues: DashboardSwitchClass[];\n  dashboardGraphDB: DashboardGraphClass[];\n  videoType: number;\n  isGroupData: boolean;\n  showProductions: boolean;\n  groupDataValue: number;\n  groupDataType: number;\n  refreshTimer: number;\n  referenceLines: DashboardGraphReferenceLineClass[];\n  widgetName: string;\n  unit: string;\n  minValue: number;\n  maxValue: number;\n  pointerWidth: number;\n  pointerLength: number;\n  pointerColor: string;\n  splitNumber: number;\n  progColor1: string;\n  progColor2: string;\n  progColor3: string;\n  progColor4: string;\n  ledColorOn: string;\n  ledColorOff: string;\n  ledColorUnknown: string;\n  alarmConfId: string;\n  progressWidth: number;\n  progressColor: string;\n  webSocketData: string;\n  switchLabel: string;\n  showReference: boolean;\n  showWorker: boolean;\n  stopType: string;\n  stopSubType: string;\n  fromDate: Date;\n  toDate: Date\n}\n\nexport class DashboardSwitchClass {\n  key: string;\n  value: string;\n}\n\nexport class DashboardGraphClass {\n  name: string;\n  type: string;\n  dBDataBlockId: string;\n  dBDataBlockName: string;\n  dBDataId: string;\n  dBDataName: string;\n  dBDataIndex: number;\n}\n\nexport class DashboardGraphReferenceLineClass {\n  name: string;\n  value: number;\n}\n\nexport class DashboardImageClass {\n  menuId: string;\n  menuDashboardId: string;\n  file: File;\n}\n","export class DataBlock {\n    id: string;\n    name: string;\n    order: string;\n}","\nexport class Device {\n    id: string;\n    gUID: string;\n    name: string;\n    lastConnected: Date;\n    created: Date;\n    code: string;\n    serialNumberHW: string;\n    observations: string;\n    softwareVersion: string;\n    tablesPrefix: string;\n    machineVersionId: string;\n    machineId: string;\n    machineName: string;\n    status: number;\n    permission: number;\n}\n\nexport class DeviceID {\n    id: string;\n    code: string;\n    name: string;\n    tablesPrefix: string;\n    machineVersionId: string;\n}\n\nexport class DeviceReference {\n    deviceId: string;\n    referenceId: string;\n    quantity: number;\n}\n\nexport class MachinesDevices {\n    machineId: string;\n    devices: Device[];\n}\n\nexport class DeviceShort {\n    machineId: string;\n    name: string;\n    serialNumber: string;\n    statusPiece: number;\n}","import { DashboardComponentModel } from \"./dashboard\";\nimport { Timestamp } from './Timestamp';\n\nexport class DynamicDashboard {\n    id: string;\n    text: string;\n    image: string;\n    permission: number;\n    groupsCount: number;\n    data: string;\n}\n\nexport class DynamicDashboardDashboards {\n    id: string;\n    time: number;\n    dashboardId: string;\n    previousId: string;\n    nextId: string;\n    hours: DynamicDashboardHours[];\n    previousDashboardId: string;\n    nextDashboardId: string;\n    dashboardData: DashboardComponentModel[];\n}\n\nexport declare class DynamicDashboardHours {\n    start: Timestamp;\n    end: Timestamp;\n}","export class FailedPiece{\n    machineName: string;\n    referenceCode: string;\n    date: Date;\n}","export class FileClassification {\n    id: string;\n    created: Date;\n    modified: Date;\n    description: string;\n    isOwner: boolean;\n}","export class Graphic {\n    numbersDevice: number;\n}","export class Group {\n    id: string;\n    name: string;\n    description: string;\n}","export class GroupParam {\n    paramId: string;\n    value: string;\n}","export class Issue {\n    id: string;\n    machineId: string;\n    machineName: string;\n    issueType: number;\n    reportingUserId: string;\n    reportingUserName: string;\n    responsableUserId: string;\n    responsableUserName: string;\n    issuePriority: number;\n    expirationDate: Date;\n    startDate: Date;\n    endDate: Date;\n    status: number;\n    title: string;\n    description: string;\n    resolution: string;\n}","export class LongMenu{\n    linkName: string;\n    link: string;\n}","import { Version } from './version';\nimport { Graphic } from './graphic';\nimport { Tooling } from \"./tooling\";\nimport { MachineReference } from \"./Reference\";\nimport { DeviceID } from \"./device\";\n\nexport class MachineComplete {\n    id: string;\n    name: string;\n    definitionsFile: string;\n    creator: string;\n    permission: number;\n    numOwners: number;\n    created: Date;\n    updated: Date;\n    model: string;\n    machineUse: string;\n    observations: string;\n    orderNumber: string;\n    photo: string;\n    version: Version;\n    graphic: Graphic;\n    totalVersions: number;\n    activeIssues: number;\n    closeIssues: number;\n    totalIssues: number;\n    activeVersionId:string;\n    deviceId:string;\n    deviceSerialNumber:string;\n    deviceStatus: number;\n    references:MachineReference[];\n    devices:DeviceID[];\n    tooling: Tooling;\n    productionGroupId:string;\n    measureUnitId:string;\n    groupsCount:number;\n}","\nexport class MachineFile {\n    id: string;\n    description: string;\n    dateCreated: Date;\n    classification: string;\n    fileName: string;\n    fileNameId: string;\n}","export class MachineName {\n    machineId: string;\n    name: string;\n}","import { DeviceID } from \"./device\";\n\nexport class Machine {\n    id: string;\n    name: string;\n    definitionsFile: string;\n    creator: string;\n    permission: number;\n    numOwners: number;\n    created:  Date;\n    updated: Date;\n    model: string;\n    timeToStop: number;\n    timeToSuggestStop: number;\n    machineUse: string;\n    observations: string;\n    orderNumber: string;\n    photo: string;\n    activeVersionId:string;\n    versionId:string;\n    versionStatus:string;\n    measureUnitId:string;\n    measureUnitDescription: string;\n    deviceData: DeviceID[];\n    canSelectPhase: boolean;\n}\n\nexport class MachinePopup {\n    id: string;\n    name: string;\n    model: string;\n    versionId:string;\n    deviceId:string;\n    deviceSerialNumber:string;\n}\n\nexport class LastPieceDone {\n    SerialNumber: string;\n    DeviceId: string;\n    ProdDataInici: Date;\n    ProdDataFi: Date;\n    StatusPiece : number;\n    TotalSteps :number;\n    TimeSinceLastPiece: number;\n    Duration: number;\n    Quantity: number;\n    TotalPiecesOK: number;\n    TotalPiecesNG: number;\n    DailyTotalPiecesOK: number;\n    DailyTotalPiecesNG: number;\n    DailyProduction: any;\n}\n","export class MachineVersion {\n    id: string;\n    MachineId: string;\n    version: number\n    initialSerialNumber: string;\n    finalSerialNumber: string;\n    created: Date;\n    modified: Date;\n    closed: Date;\n    initialVersionDate: Date;\n    finalVersionDate: Date;\n    status: boolean\n    newVersionReasons: string;\n    photo: string;\n    photoFileName: string;\n}","export class Maintenance {\n    id: string;\n    title: string;\n    description: string;\n    maintenanceType: number;\n    targetValue: number;\n    actualValue: number;\n    dateLastValue: Date;\n    targetPercentage: number;\n    actualPercentage: number;\n    userNotifyId: string;\n    userNotifyName: string;\n    issueType: number;\n    issuePriority: number;\n    userAssignIssueId: string;\n    userAssignIssueName: string;\n    ActiveIssueId: string;\n    reset: boolean;\n}","export class MeasureUnit {\n    id: string;\n    description: string;\n}","export class MenuPlugin {\n    id: string;\n    name: string;\n    moduleBundlePath: string;\n    matchPath: string;\n    moduleName: string;\n    type: number;\n    text: string;\n    image: string;\n    nameDLL: string;\n    isActive: boolean;\n}","import { MenuPlugin } from \"./MenuPlugin\";\n\nexport class Menu {\n    id: string;\n    text: string;\n    path: string;\n    image: string;\n    position: number;\n    plugin: MenuPlugin;\n    hasSubMenus: boolean;\n    subMenus: SubMenu[];\n    isDashboard: boolean;\n    isFullScreen: boolean;\n}\n\nexport class SubMenu {\n    id: string;\n    text: string;\n    path: string;\n    image: string;\n    position: number;\n    plugin: MenuPlugin;\n    isDashboard: boolean;\n    isFullScreen: boolean;\n}\n\nexport class GroupMenu {\n    id: string;\n    text: string;\n    claimId: string;\n}\n\nexport class GroupMenu2 {\n    id: string;\n    text: string;\n    claimId: string;\n}","export class Module {\n    id: string;\n    description: string;\n}","export class Notification{\n    userId: string;\n    machineId: string;\n    eventType: EventType;\n    notificationType: NotificationType\n}\n\nenum EventType{\n    STOP = 0,\n    EMERG = 1,\n    DISCONNECT = 2\n}\n\nenum NotificationType{\n    EMAIL = 0,\n    WHATS = 1,\n    PUSH = 2\n}","import { Timestamp } from \"./Timestamp\";\n\nexport class OF {\n    oFId: string;\n    oF: string;\n    dateCreated: Date;\n    parentOF: string;\n    parentOFId: string;\n    isParent: boolean;\n    machineId: string;\n    machineName: string;\n    referenceId: string;\n    referenceCode: string;\n    referenceDescription: string;\n    referencePhoto: string;\n    referencePhotoFileName: string;\n    phaseId: string;\n    phaseCode: string;\n    phaseDescription: string;\n    toolingId: string;\n    toolingName: string;\n    toolingCode: string;\n    quantityRequired: number;\n    quantityAssign: number;\n    quantityProduced: number;\n    status: number;\n    workers: OFWorker[];\n    references: OFAssignedReferences[];\n    hasMultipleReferences: boolean;\n}\n\nexport class OFAssignedReferences{\n    oF: string;\n    workerId: string;\n    referenceId: string;\n    referenceCode: string;\n    referenceDescription: string;\n    referencePhoto: string;\n    referencePhotoFileName: string;\n    phaseId: string;\n    phaseCode: string;\n    phaseDescription: string;\n}\n\nexport class OFWorker {\n    oFWorkerId: string;\n    oF: string;\n    oFId: string;\n    workerId: string;\n    workerName: string;\n    workerCode: string;\n    quantity: number;\n    quantityProduced: number;\n    observations: string;\n    assignedStartHour: Date;\n    assignedEndHour: Date;\n    workedStartHour: Date;\n    workedEndHour: Date;\n    status: number;\n}\n\nexport class OFReference {\n    id: string;\n    code: string;\n    description: string;\n    created: Date;\n    creatorId: string;\n    creatorName: string;\n    photo: string;\n    photoFileName: string;\n    isProduction: boolean;\n    oF: string;\n    oFId: string;\n    phaseId: string;\n    phaseDescription: string;\n    phaseCode: string;\n    oFWorkerId: string;\n    assignedStartHour: Date;\n    assignedEndHour: Date;\n    workedStartHour: Date;\n    workedEndHour: Date;\n}\n\nexport class OFReferences {\n    referenceMasterId: string;\n    referenceSlaveId: string;\n    referenceMasterCode: string;\n    referenceMasterDescription: string;\n    referenceSlaveCode: string;\n    referenceSlaveDescription: string;\n    referenceSlavePhoto: string;\n    referenceSlavePhotoFileName: string;\n    referenceSlaveQuantity: number;\n}\n\nexport class OFGraphData {\n    oFId: string;\n    oF: string;\n    dateCreated: Date;\n    dateFinished: Date;\n    machineId: string;\n    machineName: string;\n    referenceId: string;\n    referenceCode: string;\n    referenceDescription: string;\n    referencePhoto: string;\n    referencePhotoFileName: string;\n    phaseId: string;\n    phaseCode: string;\n    phaseDescription: string;\n    productions: OFGraphDataProductions[];\n}\n\nexport class OFGraphDataProductions {\n    startDate: Date;\n    endDate: Date;\n    machineId: string;\n    referenceId: string;\n    phaseId: string;\n    isProduction: boolean;\n    duration: number;\n}\n\nexport class UsersWork {\n    workerId: string;\n    workerName: string;\n    workerCode: string;\n    workerPhotoId: string;\n    workerPhotoFileName : string;\n    work: UsersWorkDetail[];\n}\n\nexport class UsersWorkDetail {\n    oFId: string;\n    oF: string;\n    referenceId: string;\n    referenceCode: string;\n    referenceDescription: string;\n    phaseId: string;\n    phaseCode: string;\n    phaseDescription: string;\n    machineId: string;\n    machineName: string;\n    quantity: number;\n    assignedStartHour: Date;\n    assignedEndHour: Date;\n    workedStartHour: Date;\n    workedEndHour: Date;\n}","export class Param {\n    paramId: number;\n    value: string;\n}","import { MachineProduction } from './Reference';\n\nexport class PeriodTimeStatus {\n    name: string;\n    startDate: Date;\n    endDate: Date;\n    graphData: PeriodTimeStatusData[];\n    graphShiftOEE: PeriodTimeGraphData[];\n    availability: number;\n    performance: number;\n    quality: number;\n    oee: number;\n}\n\nexport class PeriodTimeStatusData {\n    name: string;\n    graphData: PeriodTimeGraphData[];\n    listData: PeriodTimeListData[];\n}\n\nexport class PeriodTimeGraphData {\n    name: string;\n    startDate: Date;\n    endDate: Date;\n    startDateValue: number;\n    duration: number;\n    value: number;\n    isProduction: boolean = false;\n}\n\nexport class PeriodTimeListData {\n    id: string;\n    type: string;\n    subType: string;\n    typeId: number;\n    subTypeId: number;\n    startDate: Date;\n    endDate: Date;\n    duration: number;\n    quantity: number;\n}\n\nexport class PeriodTimeShiftInfoData {\n    startDate: Date;\n    endDate: Date;\n    oEE: number;\n    stops: any[];\n}\n","export class Permissions {\n    groupId: string;\n    permission: number;\n    canBeRemoved: boolean;\n    groupName: string;\n    iSActualProductionGroup: boolean;\n}","export class PhaseReference {\n    id: string;\n    code: string;\n    created: Date;\n    updated: Date;\n    description: string;\n    referenceId: string;\n    referenceCode: string;\n}","export class Phase {\n    id: string;\n    code: string;\n    created: Date;\n    updated: Date;\n    description: string;\n}","import { MachineName } from \"./machineName\";\n\nexport class PlannedStop{\n    id: string;\n    creationDate: Date;\n    stopTypeId: string;\n    periodicity: string;\n    duration: number;\n    description: string;\n    isGlobal: boolean;\n    ownerId: string;\n    machines: MachineName[];\n}","export class ManagePlugin {\n    id: string;\n    menuText: string;\n    menuImage: string;\n    pluginName: string;\n    pluginModuleName: string;\n    pluginId: string;\n}","import { OEE } from \"./AllData\";\n\nexport class Reference {\n    id: string;\n    code: string;\n    description: string;\n    created: Date;\n    creatorId: string;\n    creatorName: string;\n    photo: string;\n    photoFileName: string;\n    isProduction: boolean;\n}\n\nexport class ReferenceInfo {\n    info: string;\n}\n\nexport class MachineReference {\n    referenceId: string;\n    referenceDescription: string;\n    referenceCode: string;\n    referencePhoto: string;\n    referencePhotoFileName: string;\n    machineId: string;\n    machineName: string;\n    deviceId: string;\n    oF: string;\n    oFId: string;\n    preparationTime: number;\n    productionTime: number;\n    preparationTimeUsed: number;\n    productionTimeUsed: number;\n    oFObservations: string;\n    phaseId: string;\n    phaseDescription: string;\n    phaseCode: string;\n    referencePhasePhoto: string;\n    referencePhasePhotoFileName: string;\n    toolingId: string;\n    toolingName: string;\n    toolingCode: string;\n    startDate: Date;\n    endDate: any;\n    info: string;\n    referencePieces: number;\n    isProduction: boolean;\n    productionType: number;\n    workerId: string;\n    workerName: string;\n    oFWorkerId: string;\n    observations: string;\n    quantity: number;\n    reportedCountOK: number;\n    reportedCountNG: number;\n    justifyNOKCount: JustifyNOKCountData[];\n    preparationQuantity: number;\n    oEE: OEE;\n    ProductionReferencesInfo: ProductionReferenceInfo[];\n}\n\nexport class LastProductionReferenceInfo {\n    machineId: string;\n    referenceId: string;\n    referenceCode: string;\n    oFId: string;\n    oF: string;\n    phaseId: string;\n}\n\nexport class ProductionReferenceInfo {\n    referenceId: string;\n    oFId: string;\n    oFWorkerId: string;\n    reportedCountOK: number;\n    reportedCountNG: number;\n    justifyNOKCount: JustifyNOKCountData[];\n}\n\nexport class JustifyNOKCountData {\n    rejectionTypeId: string;\n    rejectionTypeCode: string;\n    rejectionTypeDescription: string;\n    nOKCount: number;\n}\n\nexport class MachineProduction {\n    startDate: Date;\n    endDate: Date;\n    machineId: string;\n    machineName: string;\n    deviceId: string;\n    deviceName: string;\n    workerId: string;\n    workerName: string;\n    oF: string;\n    oFId: string;\n    referenceId: string;\n    referenceCode: string;\n    referenceDescription: string;\n    phaseId: string;\n    phaseCode: string;\n    phaseDescription: string;\n    isProduction: boolean;\n    oFWorkerId: string;\n    quantity: number;\n    quantityProduced: number;\n    status: number;\n    cycleTime: number;\n    idealCycleTime: number;\n    rejections: MachineProductionRejectionType[];\n}\n\nexport class MachineProductionRejectionType {\n    id: string;\n    code: string;\n    description: string;\n    count: number;\n}\n\n\nexport class MachineReferenceActiveProductionCount {\n    count: number;\n    startDate: Date;\n    endDate: Date;\n}\n\n","export class RejectionType {\n    id: string;\n    code: string;\n    description: string;\n    creationDate: Date;\n    savePieces: boolean;\n}","export class ServerResponse<T> {\n\n    limit: number;\n    offset: number;\n    totalRows: number;\n    filteredRows: number;\n    values: Array<T>;\n    extraData: Array<any>;\n}","import { GroupParam } from './GroupParam';\nimport { Module } from './Module';\n\nexport class Session {\n    accessToken: string;\n    tokenType: string;\n    expiresIn: number;\n    userName: string;\n    name: string;\n    avatarId: string;\n    avatarFilename: string;\n    eMail: string;\n    languageId: number;\n    claims: Array<string>;\n    groupId: string;\n    userId: string;\n    isGroupPartner: boolean;\n    groupParams: GroupParam[];\n    groupModules: Module[];\n}","export class ShareGroup {\n    groupId: string;\n    groupName: string;\n    groupDescription: string;\n    permission: number;\n    isProductionGroup: boolean;\n}\n\nexport class ShareExistClient {\n    userId : string;\n    groupId : string;\n    groupName : string;\n    groupDescription : string;\n}","import { MachineProduction } from './Reference';\n\nexport class StatisticData {\n    name: string;\n    value: number;\n}\nexport class StatisticSerieData {\n    name: string;\n    series: StatisticData[];\n}\nexport class StatisticTimeData {\n    id: string;\n    from: Date;\n    to: Date;\n    values: number;\n    isProduction: boolean;\n}\nexport class StatisticProductionData {\n    productionsCount: StatisticTimeData[];\n    previsionsCount: StatisticTimeData[];\n    productionsList: MachineProduction[];\n}\n","export class Stop {\n    id: string;\n    startDate:  Date;\n    endDate:  Date;\n    type: number;\n    subtype: number;\n    description: string;\n    subtypeDescription: string;\n    duration: number;\n    prefix: string;\n    observations: string;\n}","export class StopType {\n    type: number;\n    ownerId: string;\n    description: string;\n    creationDate: Date;\n    isVisibleTablet: boolean;\n}","export class SuggestStop {\n    id: string;\n    startDate:  Date;\n    endDate:  Date;\n    type: number;\n    description: string;\n    machineName: string;\n    prefix: string;\n    duration: number;\n}\n\nexport class SuggestStopType\n{\n    type: number;\n    description: string;\n    value: number;\n}","export class TexmaItem {\n    id: string;\n    content: string;\n\n    startDate: Date;\n    endDate: Date;\n\n    serialNumber: string;\n    typeOfThread: string;\n    lot: string;\n\n    foldingType: number;\n    cantrataNumber: number;\n    foldingNumber: number;\n\n    stopType: number;\n    foldingKg: number;\n    threadKg: number;\n    weightGrossKg: number;\n\n    filetaMeters: number;\n    foldingMeters: number;\n    foldingLaps: number;\n    foldingPerimeter: number;\n    startPerimeter: number;\n    endPerimeter: number;\n    filetaMaxSpeed: number;\n    estirajePreestiro: number;\n    estirajePlegador: number;\n    foldingMaxSpeed: number;\n}","export class Timestamp {\n    hours: number;\n    minutes: number;\n    seconds: number;\n}","export class Tooling{\n    id: string;\n    name: string;\n    code: string;\n    isActive: boolean;\n    created: Date;\n    creatorId: string;\n    creatorName: string;\n    photo: string;\n    photoFileName: string;\n}","\nexport class User {\n    id: string;\n    name: string;\n    email: string;\n    userName: string;\n    isActive: boolean;\n    languageId: number;\n    isAdmin: boolean;\n    numMachinesCreated: number;\n    numDashboardsCreated: number;\n    numMachinesOwned: number;\n    numDashboardsOwned: number;\n    numMachines: number;\n    numDashboards: number;\n    workerCode: string;\n    pin: string;\n    //Group Partner\n    Key: string;\n    colors: Array<UserColors>;\n\n    //for superadmin\n    group: UserGroup;\n    groupId: string;\n\n    isOwner: boolean;\n}\n\nexport class UserGroup\n{\n    name: string = '';\n    description: string = '';\n}\n\nexport class UserColors {\n    colorKey: string;\n    colorValue: string;\n}","export class Version {\n    id: string;\n    version: number;\n    initialSerialNumber: string;\n    finalSerialNumber: string;\n    created: Date;\n    modified: Date;\n    closed: Date;\n    initialVersionDate: Date;\n    finalVersionDate: Date;\n    status: number;\n    newVersionReasons: string;\n    photoURL: string;\n}","export class WorkerProduction{\n    referenceId: string;\n    referenceCode: string;\n    machineId: string;\n    machineName: string;\n    startDate: Date;\n    endDate: Date;\n    duration: number;\n    quantity: number;\n    workerName: string;\n    workerId: string;\n    oFWorkerId: string;\n    oee: number;\n    numberOfStops: number;\n    cycleTime: number;\n    idealCycleTime: number;\n    oF: string;\n    plannedPieces : number;\n    preparationPieces : number;\n    preparationTime : number;\n}","/*\n * Public API Surface of e-connect-web-service\n */\n\nexport * from './lib/e-connect-web-service.module';\nexport * from './lib/account.service';\nexport * from './lib/alarm.service';\nexport * from './lib/base-auth.service';\nexport * from './lib/base.service';\nexport * from './lib/boxes.service';\nexport * from './lib/client.service';\nexport * from './lib/cycle-time.service';\nexport * from './lib/dashboard.service';\nexport * from './lib/data.service';\nexport * from './lib/device.service';\nexport * from './lib/dynamicDashboard.service';\nexport * from './lib/e-connect-web-service.module';\nexport * from './lib/file-classifications.service';\nexport * from './lib/group.service';\nexport * from './lib/issue.service';\nexport * from './lib/language.service';\nexport * from './lib/machine.service';\nexport * from './lib/machine-reference.service';\nexport * from './lib/machine-file.service';\nexport * from './lib/machine-time-status.service';\nexport * from './lib/maintenante.service';\nexport * from './lib/manage-plugins.service';\nexport * from './lib/measure-unit.service';\nexport * from './lib/menu.service';\nexport * from './lib/module.service';\nexport * from './lib/notifications.service';\nexport * from './lib/of.service';\nexport * from './lib/param.service';\nexport * from './lib/phases-references.service';\nexport * from './lib/phases.service';\nexport * from './lib/public.service';\nexport * from './lib/references.service';\nexport * from './lib/rejectionType.service';\nexport * from './lib/share.service';\nexport * from './lib/statistics.service';\nexport * from './lib/stops-graph.service';\nexport * from './lib/stopType.service';\nexport * from './lib/suggest-stop.service';\nexport * from './lib/texma.service';\nexport * from './lib/tooling.service';\nexport * from './lib/url-helper.service';\nexport * from './lib/user-service.service';\nexport * from './lib/versions.service';\n\nexport * from './lib/models/Account';\nexport * from './lib/models/AlarmData';\nexport * from './lib/models/AllData';\nexport * from './lib/models/Box';\nexport * from './lib/models/Client';\nexport * from './lib/models/CycleTime';\nexport * from './lib/models/dashboard';\nexport * from './lib/models/dataBlock';\nexport * from './lib/models/device';\nexport * from './lib/models/dynamicDashboard';\nexport * from './lib/models/failedPiece';\nexport * from './lib/models/fileClassification';\nexport * from './lib/models/graphic';\nexport * from './lib/models/Group';\nexport * from './lib/models/GroupParam';\nexport * from './lib/models/issue';\nexport * from './lib/models/LongMenu';\nexport * from './lib/models/machineComplete';\nexport * from './lib/models/machineFile';\nexport * from './lib/models/machineName';\nexport * from './lib/models/machine';\nexport * from './lib/models/machine-version';\nexport * from './lib/models/maintenance';\nexport * from './lib/models/measureUnit';\nexport * from './lib/models/MenuPlugin';\nexport * from './lib/models/Menu';\nexport * from './lib/models/Module';\nexport * from './lib/models/Notification';\nexport * from './lib/models/of';\nexport * from './lib/models/paged-data';\nexport * from './lib/models/page';\nexport * from './lib/models/Param';\nexport * from './lib/models/PeriodTimeStatus';\nexport * from './lib/models/Permissions';\nexport * from './lib/models/PhaseReference';\nexport * from './lib/models/Phase';\nexport * from './lib/models/plannedStop';\nexport * from './lib/models/Plugin';\nexport * from './lib/models/Reference';\nexport * from './lib/models/rejectionType';\nexport * from './lib/models/server-response.model';\nexport * from './lib/models/session.model';\nexport * from './lib/models/ShareGroup';\nexport * from './lib/models/statisticData';\nexport * from './lib/models/stop';\nexport * from './lib/models/stopType';\nexport * from './lib/models/SuggestStop';\nexport * from './lib/models/TexmaItem';\nexport * from './lib/models/Timestamp';\nexport * from './lib/models/tooling';\nexport * from './lib/models/user';\nexport * from './lib/models/version';\nexport * from './lib/models/Widgetconfig';\nexport * from './lib/models/workerProduction';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}