dts-backoffice-util 3.0.0 → 6.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dts-backoffice-util.d.ts +1 -0
- package/esm2020/dts-backoffice-util.mjs +5 -0
- package/esm2020/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.mjs +269 -0
- package/esm2020/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.mjs +7 -0
- package/esm2020/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.mjs +183 -0
- package/esm2020/lib/dts-backoffice-util.module.mjs +56 -0
- package/esm2020/lib/interfaces/filter-range.interface.mjs +2 -0
- package/esm2020/lib/interfaces/totvs-response.interface.mjs +2 -0
- package/esm2020/lib/model/session-info.model.mjs +67 -0
- package/esm2020/lib/pipes/dts-date-format.pipe.mjs +20 -0
- package/esm2020/lib/services/breadcrumb-control.service.mjs +82 -0
- package/esm2020/lib/services/cache-params.service.mjs +25 -0
- package/esm2020/lib/services/menu-datasul.service.mjs +41 -0
- package/esm2020/lib/services/profile.service.mjs +55 -0
- package/esm2020/lib/services/report.service.mjs +57 -0
- package/esm2020/lib/services/session-info.service.mjs +36 -0
- package/esm2020/lib/services/translate.service.mjs +23 -0
- package/esm2020/lib/utils/date.util.mjs +56 -0
- package/esm2020/lib/utils/disclaimer.util.mjs +453 -0
- package/esm2020/lib/utils/field-validation.util.mjs +179 -0
- package/esm2020/lib/utils/file.util.mjs +122 -0
- package/esm2020/lib/utils/filter-range.util.mjs +33 -0
- package/esm2020/lib/utils/generic-functions.utils.mjs +170 -0
- package/esm2020/public-api.mjs +34 -0
- package/fesm2015/{dts-backoffice-util.js → dts-backoffice-util.mjs} +230 -1626
- package/fesm2015/dts-backoffice-util.mjs.map +1 -0
- package/fesm2020/dts-backoffice-util.mjs +1844 -0
- package/fesm2020/dts-backoffice-util.mjs.map +1 -0
- package/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.d.ts +3 -0
- package/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.d.ts +3 -0
- package/lib/dts-backoffice-util.module.d.ts +10 -0
- package/lib/pipes/dts-date-format.pipe.d.ts +3 -0
- package/lib/services/breadcrumb-control.service.d.ts +3 -0
- package/lib/services/cache-params.service.d.ts +3 -0
- package/lib/services/menu-datasul.service.d.ts +3 -0
- package/lib/services/profile.service.d.ts +3 -0
- package/lib/services/report.service.d.ts +3 -0
- package/lib/services/session-info.service.d.ts +3 -0
- package/lib/services/translate.service.d.ts +3 -0
- package/package.json +23 -11
- package/CHANGELOG.md +0 -159
- package/bundles/dts-backoffice-util.umd.js +0 -3296
- package/bundles/dts-backoffice-util.umd.js.map +0 -1
- package/bundles/dts-backoffice-util.umd.min.js +0 -2
- package/bundles/dts-backoffice-util.umd.min.js.map +0 -1
- package/dts-backoffice-util.metadata.json +0 -1
- package/esm2015/dts-backoffice-util.js +0 -10
- package/esm2015/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.js +0 -391
- package/esm2015/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.js +0 -132
- package/esm2015/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.js +0 -344
- package/esm2015/lib/dts-backoffice-util.module.js +0 -47
- package/esm2015/lib/interfaces/filter-range.interface.js +0 -48
- package/esm2015/lib/interfaces/totvs-response.interface.js +0 -17
- package/esm2015/lib/model/session-info.model.js +0 -183
- package/esm2015/lib/pipes/dts-date-format.pipe.js +0 -27
- package/esm2015/lib/services/breadcrumb-control.service.js +0 -124
- package/esm2015/lib/services/cache-params.service.js +0 -47
- package/esm2015/lib/services/menu-datasul.service.js +0 -57
- package/esm2015/lib/services/profile.service.js +0 -127
- package/esm2015/lib/services/report.service.js +0 -127
- package/esm2015/lib/services/session-info.service.js +0 -62
- package/esm2015/lib/services/translate.service.js +0 -35
- package/esm2015/lib/utils/date.util.js +0 -95
- package/esm2015/lib/utils/disclaimer.util.js +0 -738
- package/esm2015/lib/utils/field-validation.util.js +0 -275
- package/esm2015/lib/utils/file.util.js +0 -224
- package/esm2015/lib/utils/filter-range.util.js +0 -53
- package/esm2015/lib/utils/generic-functions.utils.js +0 -296
- package/esm2015/public-api.js +0 -38
- package/fesm2015/dts-backoffice-util.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"dts-backoffice-util.umd.js","sources":["../../../projects/dts-backoffice-util/src/lib/services/session-info.service.ts","../../../projects/dts-backoffice-util/src/lib/services/profile.service.ts","../../../projects/dts-backoffice-util/src/lib/services/report.service.ts","../../../projects/dts-backoffice-util/src/lib/services/breadcrumb-control.service.ts","../../../projects/dts-backoffice-util/src/lib/services/menu-datasul.service.ts","../../../projects/dts-backoffice-util/src/lib/services/cache-params.service.ts","../../../projects/dts-backoffice-util/src/lib/services/translate.service.ts","../../../projects/dts-backoffice-util/src/lib/utils/date.util.ts","../../../projects/dts-backoffice-util/src/lib/utils/disclaimer.util.ts","../../../projects/dts-backoffice-util/src/lib/utils/field-validation.util.ts","../../../projects/dts-backoffice-util/src/lib/utils/filter-range.util.ts","../../../projects/dts-backoffice-util/src/lib/utils/generic-functions.utils.ts","../../../projects/dts-backoffice-util/src/lib/utils/file.util.ts","../../../projects/dts-backoffice-util/src/lib/components/totvs-schedule-execution/totvs-schedule-execution.model.ts","../../../projects/dts-backoffice-util/src/lib/components/totvs-schedule-execution/totvs-schedule-execution.service.ts","../../../projects/dts-backoffice-util/src/lib/components/totvs-schedule-execution/totvs-schedule-execution.component.ts","../../../projects/dts-backoffice-util/src/lib/pipes/dts-date-format.pipe.ts","../../../projects/dts-backoffice-util/src/lib/dts-backoffice-util.module.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ISessionInfo } from '../model/session-info.model';\r\nimport { Observable, of } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserLoginService {\r\n\r\n readonly apiUrl = '/totvs-menu/rest/getSessionInfo';\r\n userLogin = undefined;\r\n\r\n constructor(public http: HttpClient) { }\r\n\r\n getUserLogin(): Observable<string> {\r\n if (localStorage.getItem('username')) {\r\n return of(localStorage.getItem('username'));\r\n }\r\n\r\n if (this.userLogin) {\r\n return of(this.userLogin);\r\n } else {\r\n return this.http.get<ISessionInfo>(`${this.apiUrl}`)\r\n .pipe(map((response) => {\r\n this.userLogin = response.userName;\r\n return response.userName;\r\n }));\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { map } from 'rxjs/operators';\r\n\r\nexport interface IProfile {\r\n pageId: string;\r\n dataCode: string;\r\n userCode: string;\r\n dataValue?: string;\r\n}\r\n\r\nexport interface IProfileResponse {\r\n message: Array<string>;\r\n length: number;\r\n data: Array<any>;\r\n}\r\n\r\nenum EDataType {\r\n STRING = 1,\r\n JSON = 2\r\n}\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ProfileService {\r\n\r\n readonly apiURL = '/dts/datasul-rest/resources/api/btb/btapi930za';\r\n\r\n constructor(public http: HttpClient) { }\r\n\r\n setProfile(profile: IProfile): Observable<any> {\r\n const headers = { 'X-PO-Screen-Lock': 'true' };\r\n const { pageId, userCode } = profile;\r\n\r\n return this.http\r\n .post<any>(`${this.apiURL}/setProfile?userCode=${userCode}&pageId=${pageId}`, profile, { headers });\r\n\r\n }\r\n\r\n getProfileAsString(profile: IProfile, showLoading?: boolean): Observable<string> {\r\n return this.getProfile(profile, EDataType.STRING, showLoading ? 'true' : 'false');\r\n }\r\n\r\n getProfileAsJSON(profile: IProfile, showLoading?: boolean): Observable<object> {\r\n return this.getProfile(profile, EDataType.JSON, showLoading ? 'true' : 'false');\r\n }\r\n\r\n private getProfile(profile: IProfile, dataType: EDataType, showLoading?: string): Observable<any> {\r\n const headers = { 'X-PO-Screen-Lock': showLoading };\r\n const { pageId, dataCode, userCode } = profile;\r\n\r\n return this.http\r\n .get<IProfileResponse>(`${this.apiURL}/getProfile?userCode=${userCode}&pageId=${pageId}&dataCode=${dataCode}`,\r\n { headers })\r\n .pipe(map(preference => {\r\n if (preference.data[0]) {\r\n if (dataType === EDataType.STRING) {\r\n return preference.data[0].dataValue;\r\n }\r\n\r\n if (dataType === EDataType.JSON) {\r\n return JSON.parse(preference.data[0].dataValue);\r\n }\r\n } else {\r\n return undefined;\r\n }\r\n }));\r\n }\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\n\r\nexport interface IProperty {\r\n name: string;\r\n value: string;\r\n}\r\n\r\nexport interface IReportServiceParams {\r\n reportName: string; // Nome do rptDesign\r\n programName: string; // Programa Progress\r\n properties: Array<IProperty>;\r\n dialect: string;\r\n downloadName: string;\r\n download: boolean;\r\n format: ReportFormats;\r\n}\r\n\r\nexport enum ReportFormats {\r\n XLSX = 'xlsx',\r\n PDF = 'pdf',\r\n DOCX = 'docx',\r\n HTML = 'html'\r\n}\r\n\r\n@Injectable()\r\n\r\nexport class ReportService {\r\n public readonly URL = window.location.href.indexOf('totvs-menu') > 0 ? '/totvs-menu/rest/report/run/'\r\n : '/dts/datasul-report/resources/run/';\r\n\r\n constructor(public httpClient: HttpClient) { }\r\n\r\n generate(params: IReportServiceParams, showLoading: boolean = true): Observable<Blob> {\r\n const headers = { 'X-PO-Screen-Lock': showLoading ? 'true' : 'false' };\r\n\r\n let reportURL = `${this.URL}${params.reportName}`;\r\n\r\n if (params.properties.length > 0) {\r\n reportURL += '?';\r\n\r\n params.properties.forEach((property: IProperty, index: number) => {\r\n if (index > 0) {\r\n reportURL += '&';\r\n }\r\n reportURL += `c_properties=${property.name}&c_values=${property.value}`;\r\n });\r\n }\r\n\r\n reportURL += `&dialect=${params.dialect}&format=${params.format}`;\r\n reportURL += `&program=${params.programName}&resultFileName=${params.downloadName}`;\r\n\r\n return this.httpClient.post(reportURL, {}, { headers, responseType: 'blob' })\r\n .pipe(map(report => {\r\n if (params.download) {\r\n this.download(report, `${params.downloadName}.${params.format}`);\r\n }\r\n return report;\r\n }));\r\n }\r\n\r\n download(file: Blob, fileName: string) {\r\n const binaryData = [file];\r\n const downloadLink = document.createElement('a');\r\n const urlDownload = window.URL.createObjectURL(new Blob(binaryData, { type: file.type }));\r\n\r\n downloadLink.href = urlDownload;\r\n downloadLink.setAttribute('download', fileName);\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n window.URL.revokeObjectURL(urlDownload);\r\n downloadLink.remove();\r\n }\r\n}\r\n","/*\r\nVersão: 1.003\r\nData Criação: 06/08/2018\r\n*/\r\n\r\nimport { Injectable } from '@angular/core';\r\nimport { PoBreadcrumb } from '@po-ui/ng-components';\r\nimport { ActivatedRoute } from '@angular/router';\r\n\r\n@Injectable()\r\nexport class BreadcrumbControlService {\r\n breadcrumb: PoBreadcrumb;\r\n\r\n constructor() { }\r\n\r\n public newBreadcrumb(): void {\r\n this.breadcrumb = { items: [] };\r\n }\r\n\r\n public addBreadcrumb(literal: string, activatedRoute: ActivatedRoute): void {\r\n this.addBreadcrumbURL(literal, decodeURIComponent(activatedRoute.snapshot['_routerState'].url));\r\n }\r\n\r\n public addBreadcrumbURL(literal: string, url: string): void {\r\n if (!literal || literal === '') { return; }\r\n if (!this.breadcrumb) { this.newBreadcrumb(); }\r\n\r\n const breadcrumbAux = { items: [] };\r\n\r\n let idx = 0;\r\n for (idx = 0; idx < this.breadcrumb.items.length; idx++) {\r\n if (this.breadcrumb.items[idx].label !== literal) {\r\n breadcrumbAux.items.push(this.breadcrumb.items[idx]);\r\n } else {\r\n break;\r\n }\r\n }\r\n\r\n breadcrumbAux.items.push({ label: literal, link: url });\r\n\r\n this.breadcrumb = breadcrumbAux;\r\n }\r\n\r\n public updBreadcrumbURL(literal: string, valueOld: string, valueNew: string): void {\r\n let currentRouterURL = this.getCurrentRouter();\r\n\r\n if (!currentRouterURL) { return; }\r\n if (!valueOld) { return; }\r\n if (!valueNew) { return; }\r\n\r\n currentRouterURL = currentRouterURL.replace(valueOld, valueNew);\r\n this.addBreadcrumbURL(literal, currentRouterURL);\r\n }\r\n\r\n public getBreadcrumb(): PoBreadcrumb {\r\n if (!this.breadcrumb) { this.newBreadcrumb(); }\r\n return this.breadcrumb;\r\n }\r\n\r\n public getCurrentRouter(): string {\r\n if (!this.breadcrumb) { this.newBreadcrumb(); }\r\n if (this.breadcrumb.items.length <= 0) { return ''; }\r\n\r\n return this.breadcrumb.items[this.breadcrumb.items.length - 1].link;\r\n }\r\n\r\n public getPrevRouter(): string {\r\n if (!this.breadcrumb) { this.newBreadcrumb(); }\r\n if (this.breadcrumb.items.length <= 1) { return ''; }\r\n\r\n return this.breadcrumb.items[this.breadcrumb.items.length - 2].link;\r\n }\r\n\r\n public hasPreviousRouter(): boolean {\r\n return this.breadcrumb.items.length > 1;\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class MenuDatasulService {\r\n\r\n constructor() { }\r\n\r\n /**\r\n * var program = {};\r\n * program['prg'] = \"cd0210\";\r\n * program['params'] = '01|123456'\r\n */\r\n public callProgress(program) {\r\n parent.postMessage({ program }, '*');\r\n }\r\n\r\n /**\r\n * var notification = {};\r\n * notification['type'] = 'success';\r\n * notification['title'] = 'Notification Title'\r\n * notification['detail'] = 'Notification Detail'\r\n */\r\n public sendNotification(notification) {\r\n parent.postMessage({ notification }, '*');\r\n }\r\n\r\n public openPath(programName: string, params: any, parent = true): void {\r\n const datasulPath = document.referrer.indexOf('totvs-menu') > 0 ? 'totvs-menu' : 'menu-html';\r\n let baseUrl = `/${datasulPath}/#/${datasulPath}/program-html/${programName}/#`;\r\n\r\n if (params) {\r\n baseUrl = `${baseUrl}/${params}`;\r\n }\r\n\r\n if (parent) {\r\n window.open(baseUrl, '_parent');\r\n } else {\r\n window.open(baseUrl);\r\n }\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\n\r\nexport class CacheParamsService {\r\n\r\n values = {};\r\n\r\n constructor() { }\r\n\r\n public setValue(key: string, value: any) {\r\n this.values[key] = value;\r\n }\r\n\r\n public getValue(key: string): any {\r\n return this.values[key];\r\n }\r\n\r\n public removeValue(key: string): void {\r\n delete this.values[key];\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class TranslateService {\r\n\r\n static getSuportLanguage() {\r\n return ['pt-BR', 'pt', 'en-US', 'en', 'es'];\r\n }\r\n\r\n static getDefaultCurrencyCode() {\r\n return '$';\r\n }\r\n\r\n static getCurrentLanguage() {\r\n const locale = localStorage.getItem('user.language') || navigator.language;\r\n\r\n if (locale && this.getSuportLanguage().includes(locale)) { return locale; }\r\n\r\n return 'en-US';\r\n }\r\n}\r\n","/*\r\nVersão: 1.000\r\nData Criação: 18/04/2019\r\n*/\r\n\r\nexport class DateUtil {\r\n\r\n constructor(\r\n ) { }\r\n\r\n /* Transforma data para o padrão YYYY-MM-DD */\r\n static dateToQueryParam(date: Date): string {\r\n const iDay = date.getDate();\r\n const iMonth = date.getMonth() + 1;\r\n const iYear = date.getFullYear();\r\n\r\n return `${iYear}-${this.pad(iMonth)}-${this.pad(iDay)}`;\r\n }\r\n\r\n /* Transforma data no padrão YYYY-MM-DD para DATE */\r\n static queryParamToDate(param: string): Date {\r\n const iDay = +param.split('-')[2];\r\n const iMonth = +param.split('-')[1];\r\n const iYear = +param.split('-')[0];\r\n\r\n return new Date(iYear, iMonth - 1, iDay);\r\n }\r\n\r\n /* Valida se foi informado uma data válida */\r\n static isValidDate(date: Date) {\r\n return date instanceof Date && !isNaN(date.getTime());\r\n }\r\n\r\n /* Ajusta a data retornando o padrão DATE */\r\n static ajustDate(param: any): Date {\r\n if (param instanceof Date) { return param; }\r\n if (!param) { return param; }\r\n\r\n return this.queryParamToDate(param.split('T')[0]);\r\n }\r\n\r\n /* Ajusta a data para o padrão DATE - utilizada nos construtores dos modelos */\r\n static ajustDateToModel(values: Object = {}, fieldName: string): Date {\r\n if (values.hasOwnProperty(fieldName) && (values[fieldName])) {\r\n if (values[fieldName].indexOf('T') >= 0) {\r\n return new Date(values[fieldName]);\r\n }\r\n\r\n const iDay = +values[fieldName].split('-')[2];\r\n const iMonth = +values[fieldName].split('-')[1];\r\n const iYear = +values[fieldName].split('-')[0];\r\n return new Date(iYear, iMonth - 1, iDay);\r\n }\r\n\r\n return null;\r\n }\r\n\r\n /* Adicona zero a esquerda do número */\r\n static pad(number) {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n return number;\r\n }\r\n}\r\n","/*\r\nVersão: 1.009\r\nData Criação: 06/08/2018\r\n*/\r\n\r\nimport { PoDisclaimer, PoI18nPipe, PoCheckboxGroupOption, PoMultiselectOption } from '@po-ui/ng-components';\r\nimport { IFilterRangeCharacter, IFilterRangeNumber, IFilterRangeDate } from '../../lib/interfaces/filter-range.interface';\r\nimport { PoNotificationService } from '@po-ui/ng-components';\r\n\r\nexport class DisclaimerUtil {\r\n poNotification: PoNotificationService;\r\n poI18nPipe: PoI18nPipe;\r\n literals: any = {};\r\n\r\n constructor(\r\n poNotification: PoNotificationService,\r\n poI18nPipe: PoI18nPipe,\r\n literals: Object\r\n ) {\r\n this.poNotification = poNotification;\r\n this.poI18nPipe = poI18nPipe;\r\n this.literals = literals;\r\n }\r\n\r\n public makeDisclaimer(property: string, value: string, hideClose = false, tradValue = false, vldBlank = false): PoDisclaimer {\r\n if (value === null || value === undefined) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n if (vldBlank && value === '') {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${tradValue ? this.literals[value] : value}`,\r\n property: `${property}`,\r\n value: `${value}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromNumber(property: string, value: number, hideClose = false, vldBlank = false): PoDisclaimer {\r\n if (value === null || value === undefined) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n if (vldBlank && value === 0) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${value}`,\r\n property: `${property}`,\r\n value: `${value}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromBoolean(property: string, value: boolean, hideClose = false): PoDisclaimer {\r\n if (value === null || value === undefined) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${value ? this.literals['yes'] : this.literals['no']}`,\r\n property: `${property}`,\r\n value: `${value}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromDate(property: string, value: Date, hideClose = false): PoDisclaimer {\r\n const dDate: Date = this.ajustDate(value);\r\n\r\n if (!this.isValidDate(dDate)) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${dDate.toLocaleDateString()}`,\r\n property: `${property}`,\r\n value: `${this.dateToQueryParam(dDate)}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromMultiSelect(property: string, value: Array<any>, length = 0,\r\n hideClose = false, tradValue = false): PoDisclaimer {\r\n let lstLabels = '';\r\n let lstValues = '';\r\n\r\n if (!value) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n if (value.length === 0 || (length > 0 && value.length === length)) {\r\n lstLabels = this.literals['all'];\r\n lstValues = 'all';\r\n } else {\r\n value.map(item => {\r\n if (lstLabels !== '') { lstLabels = `${lstLabels}, `; }\r\n if (lstValues !== '') { lstValues = `${lstValues},`; }\r\n lstLabels = `${lstLabels}${tradValue ? this.literals[item] : item}`;\r\n lstValues = `${lstValues}${item}`;\r\n });\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${lstLabels}`,\r\n property: `${property}`,\r\n value: `${lstValues}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromMultiSelectNumber(property: string, value: Array<any>, options: Array<any>,\r\n length = 0, hideClose = false): PoDisclaimer {\r\n let lstLabels = '';\r\n let lstValues = '';\r\n let opt = null;\r\n\r\n if (!value || !options) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n if (value.length === 0 || (length > 0 && value.length === length)) {\r\n lstLabels = this.literals['all'];\r\n lstValues = 'all';\r\n } else {\r\n value.map(item => {\r\n if (lstLabels !== '') { lstLabels = `${lstLabels}, `; }\r\n if (lstValues !== '') { lstValues = `${lstValues},`; }\r\n\r\n opt = options.find(itOpt => itOpt.value === item);\r\n lstLabels = `${lstLabels}${opt ? opt.label : item}`;\r\n lstValues = `${lstValues}${item}`;\r\n });\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${lstLabels}`,\r\n property: `${property}`,\r\n value: `${lstValues}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromCheckboxGroup(property: string, value: Array<string>, length = 0, hideClose = false): PoDisclaimer {\r\n let lstLabels = '';\r\n let lstValues = '';\r\n\r\n if (!value) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n if (value.length === 0) {\r\n lstLabels = this.literals['none'];\r\n lstValues = 'none';\r\n } else if (length > 0 && value.length === length) {\r\n lstLabels = this.literals['all'];\r\n lstValues = 'all';\r\n } else {\r\n value.map(checkParam => {\r\n if (lstLabels !== '') { lstLabels = `${lstLabels}, `; }\r\n if (lstValues !== '') { lstValues = `${lstValues},`; }\r\n lstLabels = `${lstLabels}${this.literals[checkParam]}`;\r\n lstValues = `${lstValues}${checkParam}`;\r\n });\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: `${this.literals[property]}: ${lstLabels}`,\r\n property: `${property}`,\r\n value: `${lstValues}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromRangeCharacter(property: string, value: IFilterRangeCharacter, hideClose = false,\r\n validateEqual = true): PoDisclaimer {\r\n if (value.valInitial === null || value.valInitial === undefined) { value.valInitial = value.iniInitial; }\r\n if (value.valFinal === null || value.valFinal === undefined) { value.valFinal = value.iniFinal; }\r\n\r\n if (validateEqual &&\r\n value.iniInitial === value.valInitial &&\r\n value.iniFinal === value.valFinal) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: this.poI18nPipe.transform(\r\n this.literals['filterRange'],\r\n [this.literals[property], `'${value.valInitial}'`, `'${value.valFinal}'`]),\r\n property: `${property}`,\r\n value: `${value.valInitial};${value.valFinal}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromRangeNumber(property: string, value: IFilterRangeNumber, hideClose = false,\r\n validateEqual = true): PoDisclaimer {\r\n if (value.valInitial === null || value.valInitial === undefined) { value.valInitial = value.iniInitial; }\r\n if (value.valFinal === null || value.valFinal === undefined) { value.valFinal = value.iniFinal; }\r\n\r\n if (validateEqual &&\r\n value.iniInitial === value.valInitial &&\r\n value.iniFinal === value.valFinal) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: this.poI18nPipe.transform(\r\n this.literals['filterRange'],\r\n [this.literals[property], value.valInitial, value.valFinal]),\r\n property: `${property}`,\r\n value: `${value.valInitial};${value.valFinal}`\r\n };\r\n }\r\n\r\n public makeDisclaimerFromRangeDate(property: string, value: IFilterRangeDate, hideClose = false, validateEqual = true): PoDisclaimer {\r\n let valInitDate: Date = this.ajustDate(value.valInitial);\r\n let valFinalDate: Date = this.ajustDate(value.valFinal);\r\n\r\n if (!this.isValidDate(valInitDate)) {\r\n valInitDate = value.iniInitial;\r\n value.valInitial = value.iniInitial;\r\n }\r\n if (!this.isValidDate(valFinalDate)) {\r\n valFinalDate = value.iniFinal;\r\n value.valFinal = value.iniFinal;\r\n }\r\n\r\n if (validateEqual &&\r\n this.dateToQueryParam(value.iniInitial) === this.dateToQueryParam(valInitDate) &&\r\n this.dateToQueryParam(value.iniFinal) === this.dateToQueryParam(valFinalDate)) {\r\n return { label: '', property: '', value: '' };\r\n }\r\n\r\n return {\r\n hideClose,\r\n label: this.poI18nPipe.transform(\r\n this.literals['filterRange'],\r\n [this.literals[property], valInitDate.toLocaleDateString(), valFinalDate.toLocaleDateString()]),\r\n property: `${property}`,\r\n value: `${this.dateToQueryParam(valInitDate)};${this.dateToQueryParam(valFinalDate)}`\r\n };\r\n }\r\n\r\n public atzCharFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string, defaultValue: string): string {\r\n let returnValue = defaultValue;\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null) { return false; }\r\n\r\n returnValue = item.value;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return returnValue;\r\n }\r\n\r\n public atzNumberFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string, defaultValue: number): number {\r\n let returnValue = defaultValue;\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null) { return false; }\r\n\r\n returnValue = item.value;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return returnValue;\r\n }\r\n\r\n public atzBooleanFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string, defaultValue: boolean): boolean {\r\n const returnValue = defaultValue;\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n const disclaimerFind = disclaimers.find((item) => item.property === property);\r\n if (disclaimerFind && disclaimerFind.value !== null && disclaimerFind.value !== undefined) {\r\n if (disclaimerFind.value === 'true') {\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n return returnValue;\r\n }\r\n\r\n public atzDateFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string, defaultValue: Date): Date {\r\n let returnValue: Date = this.ajustDate(defaultValue);\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null) { return false; }\r\n\r\n returnValue = this.ajustDate(item.value);\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return returnValue;\r\n }\r\n\r\n public atzMultiSelectCharFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string,\r\n defaultValue: Array<PoMultiselectOption>): Array<string> {\r\n return this.atzMultiSelectFromDisclamer('char', disclaimers, property, defaultValue);\r\n }\r\n\r\n public atzMultiSelectNumberFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string,\r\n defaultValue: Array<PoMultiselectOption>): Array<number> {\r\n return this.atzMultiSelectFromDisclamer('number', disclaimers, property, defaultValue);\r\n }\r\n\r\n public atzMultiSelectFromDisclamer(type: string, disclaimers: Array<PoDisclaimer>, property: string,\r\n defaultValue: Array<PoMultiselectOption>): Array<any> {\r\n\r\n let returnValue = [];\r\n defaultValue.map(item => {\r\n returnValue.push(item.value);\r\n });\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null || item.value === 'all' || item.value === 'none') { return false; }\r\n\r\n returnValue = [];\r\n item.value.split(',').forEach(itemOpt => {\r\n if (type === 'char') { returnValue.push(itemOpt); }\r\n if (type === 'number') { returnValue.push(+itemOpt); }\r\n });\r\n\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return returnValue;\r\n }\r\n\r\n public atzCheckboxFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string,\r\n options: Array<PoCheckboxGroupOption>): Array<string> {\r\n\r\n let returnValue = [];\r\n options.map(item => {\r\n returnValue.push(item.value);\r\n });\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null || item.value === 'all' || item.value === 'none') { return false; }\r\n\r\n returnValue = [];\r\n item.value.split(',').forEach(itemOpt => {\r\n returnValue.push(itemOpt);\r\n });\r\n\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return returnValue;\r\n }\r\n\r\n public atzRangeCharFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string,\r\n rangeChar: IFilterRangeCharacter): IFilterRangeCharacter {\r\n let value = '';\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null) { return false; }\r\n value = item.value;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return this.atzRangeCharFromQueryParam(value, rangeChar);\r\n }\r\n\r\n public atzRangeNumFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string,\r\n rangeNum: IFilterRangeNumber): IFilterRangeNumber {\r\n let value = '';\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null) { return false; }\r\n value = item.value;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return this.atzRangeNumFromQueryParam(value, rangeNum);\r\n }\r\n\r\n public atzRangeDateFromDisclamer(disclaimers: Array<PoDisclaimer>, property: string,\r\n rangeDate: IFilterRangeDate): IFilterRangeDate {\r\n let value = '';\r\n\r\n if (disclaimers && disclaimers.length > 0) {\r\n disclaimers.find((item) => {\r\n if (item.property === property) {\r\n if (item.value === null) { return false; }\r\n value = item.value;\r\n return true;\r\n }\r\n return false;\r\n });\r\n }\r\n return this.atzRangeDateFromQueryParam(value, rangeDate);\r\n }\r\n\r\n public atzRangeCharFromQueryParam(value: string, rangeChar: IFilterRangeCharacter): IFilterRangeCharacter {\r\n rangeChar.valInitial = rangeChar.iniInitial;\r\n rangeChar.valFinal = rangeChar.iniFinal;\r\n\r\n if (!value || value === '') { return rangeChar; }\r\n\r\n rangeChar.valInitial = value.split(';')[0];\r\n rangeChar.valFinal = value.split(';')[1];\r\n if (rangeChar.valFinal === null || rangeChar.valFinal === undefined) { rangeChar.valFinal = rangeChar.iniFinal; }\r\n\r\n return rangeChar;\r\n }\r\n\r\n public atzRangeNumFromQueryParam(value: string, rangeNum: IFilterRangeNumber): IFilterRangeNumber {\r\n rangeNum.valInitial = rangeNum.iniInitial;\r\n rangeNum.valFinal = rangeNum.iniFinal;\r\n\r\n if (!value || value === '') { return rangeNum; }\r\n\r\n rangeNum.valInitial = +value.split(';')[0];\r\n rangeNum.valFinal = +value.split(';')[1];\r\n if (rangeNum.valFinal === null || rangeNum.valFinal === undefined) { rangeNum.valFinal = rangeNum.iniFinal; }\r\n\r\n return rangeNum;\r\n }\r\n\r\n public atzRangeDateFromQueryParam(value: string, rangeDate: IFilterRangeDate): IFilterRangeDate {\r\n rangeDate.valInitial = rangeDate.iniInitial;\r\n rangeDate.valFinal = rangeDate.iniFinal;\r\n\r\n if (!value || value === '') { return rangeDate; }\r\n\r\n rangeDate.valInitial = this.queryParamToDate(value.split(';')[0]);\r\n rangeDate.valFinal = this.queryParamToDate(value.split(';')[1]);\r\n if (rangeDate.valFinal === null || rangeDate.valFinal === undefined) { rangeDate.valFinal = rangeDate.iniFinal; }\r\n\r\n return rangeDate;\r\n }\r\n\r\n public dateToQueryParam(date: Date): string {\r\n const iDay = date.getDate();\r\n const iMonth = date.getMonth() + 1;\r\n const iYear = date.getFullYear();\r\n\r\n return `${iYear}-${this.pad(iMonth)}-${this.pad(iDay)}`;\r\n }\r\n\r\n public queryParamToDate(param: string): Date {\r\n const iDay = +param.split('-')[2];\r\n const iMonth = +param.split('-')[1];\r\n const iYear = +param.split('-')[0];\r\n\r\n return new Date(iYear, iMonth - 1, iDay);\r\n }\r\n\r\n public isValidDate(date: Date) {\r\n return date instanceof Date && !isNaN(date.getTime());\r\n }\r\n\r\n public ajustDate(param: any): Date {\r\n if (param instanceof Date) { return param; }\r\n if (!param) { return param; }\r\n\r\n return this.queryParamToDate(param.split('T')[0]);\r\n }\r\n\r\n public pad(number) {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n return number;\r\n }\r\n}\r\n","/*\r\nVersão: 1.002\r\nData Criação: 19/02/2019\r\n*/\r\n\r\nimport { PoNotificationService, PoI18nPipe } from '@po-ui/ng-components';\r\nimport { DisclaimerUtil } from './disclaimer.util';\r\n\r\nexport class FieldValidationUtil {\r\n poNotification: PoNotificationService;\r\n poI18nPipe: PoI18nPipe;\r\n literals: any = {};\r\n\r\n disclaimerUtil: DisclaimerUtil;\r\n\r\n constructor(\r\n poNotification: PoNotificationService,\r\n poI18nPipe: PoI18nPipe,\r\n literals: Object\r\n ) {\r\n this.poNotification = poNotification;\r\n this.poI18nPipe = poI18nPipe;\r\n this.literals = literals;\r\n this.disclaimerUtil = new DisclaimerUtil(this.poNotification, this.poI18nPipe, this.literals);\r\n }\r\n\r\n public vldFieldCharacter(field: string, value: string): boolean {\r\n if (!value || value.trim() === '') {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldRequered'], [this.literals[field]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // Valida uma faixa de caracteres se o inicial é menor que final\r\n public vldRangeCharacter(initialField: string, finalField: string, initialValue: string, finalValue: string): boolean {\r\n if (!initialValue || !finalValue) {\r\n return true;\r\n }\r\n\r\n if (initialValue.trim().toUpperCase() > finalValue.trim().toUpperCase()) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldRange'],\r\n [this.literals[initialField], this.literals[finalField]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldFieldNumber(field: string, value: number, vldValue = false, zeroAccept = false): boolean {\r\n if (vldValue && !this.vldValueOfNumber(field, value)) {\r\n return false;\r\n }\r\n\r\n if ((!value) || value <= 0) {\r\n if (value === 0 && zeroAccept === true) {\r\n return true;\r\n }\r\n\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldRequered'], [this.literals[field]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldValueOfNumber(field: string, value: number): boolean {\r\n if (value && value < 0) {\r\n this.poNotification.error(\r\n { message: this.poI18nPipe.transform(this.literals['fieldVldNumber'], [value.toString(), this.literals[field]]) });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldFieldPercent(field: string, value: number, vldValue = false): boolean {\r\n if (vldValue && !this.vldValueOfPercent(field, value)) {\r\n return false;\r\n }\r\n\r\n if (!this.vldFieldNumber(field, value)) {\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldValueOfPercent(field: string, value: number): boolean {\r\n if (value && value < 0) {\r\n this.poNotification.error(\r\n { message: this.poI18nPipe.transform(this.literals['fieldVldNumber'], [value.toString(), this.literals[field]]) });\r\n return false;\r\n }\r\n\r\n if (value && value > 100) {\r\n this.poNotification.error(\r\n { message: this.poI18nPipe.transform(this.literals['fieldVldNumber'], [value.toString(), this.literals[field]]) });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // Valida uma faixa de números se o inicial é menor que final\r\n public vldRangeNumber(initialField: string, finalField: string, initialValue: number, finalValue: number): boolean {\r\n if (!initialValue) { initialValue = 0; }\r\n if (!finalValue) { finalValue = 0; }\r\n\r\n if (initialValue > finalValue) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldRange'],\r\n [this.literals[initialField], this.literals[finalField]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldFieldDate(field: string, value: Date): boolean {\r\n const valDate = this.disclaimerUtil.ajustDate(value);\r\n\r\n if (!this.disclaimerUtil.isValidDate(valDate)) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldDate'], [this.literals[field]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // Valida uma faixa de datas se o inicial é menor que final\r\n public vldRangeDate(initialField: string, finalField: string, initialValue: Date, finalValue: Date): boolean {\r\n if (!initialValue || !finalValue) {\r\n return true;\r\n }\r\n\r\n const valInitialDate = this.disclaimerUtil.ajustDate(initialValue).getTime();\r\n const valFinalDate = this.disclaimerUtil.ajustDate(finalValue).getTime();\r\n\r\n if (valInitialDate > valFinalDate) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldRange'],\r\n [this.literals[initialField], this.literals[finalField]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldFieldMultiSelect(field: string, value: Array<any>): boolean {\r\n if (!value || value.length === 0) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldSelected'], [this.literals[field]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n public vldFieldCheckbox(field: string, value: Array<string>): boolean {\r\n if (!value || value.length === 0) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldSelected'], [this.literals[field]])\r\n });\r\n return false;\r\n }\r\n return true;\r\n }\r\n\r\n // Valida formato conforme regra: \"9\" apenas números, \"X\" qualquer caracter, \"!\" apenas letras maiúsculas\r\n public vldFieldFormat(field: string, value: string, format: string, replacePoint = false): boolean {\r\n let lOK = true;\r\n let oldFormat: string;\r\n\r\n if (!value) { return lOK; }\r\n\r\n /*Retira os pontos do formato*/\r\n if (replacePoint) {\r\n oldFormat = format;\r\n format = format.replace(/\\./g, '');\r\n }\r\n\r\n if (value.length !== format.length) {\r\n lOK = false;\r\n } else {\r\n for (let idx = 0; idx < format.length; idx++) {\r\n if (format[idx] === '9') {\r\n if (value[idx].replace(/[0-9]/, '9') !== '9') { lOK = false; break; }\r\n }\r\n\r\n if (format[idx] === '!') {\r\n if (value[idx].replace(/[A-Z]/, 'A') !== 'A') { lOK = false; break; }\r\n }\r\n }\r\n }\r\n\r\n if (replacePoint) {\r\n format = oldFormat;\r\n }\r\n\r\n if (!lOK) {\r\n this.poNotification.error({\r\n message: this.poI18nPipe.transform(this.literals['fieldVldFormat'], [this.literals[field], format])\r\n });\r\n }\r\n\r\n return lOK;\r\n }\r\n}\r\n","/*\r\nVersão: 1.000\r\nData Criação: 06/08/2018\r\n*/\r\n\r\nimport { IFilterRangeCharacter, IFilterRangeNumber, IFilterRangeDate } from '../../lib/interfaces/filter-range.interface';\r\n\r\nexport class FilterRangeUtil {\r\n\r\n constructor() {\r\n }\r\n\r\n public static makeFilterRangeCharacter(iniInitial: string, iniFinal: string): IFilterRangeCharacter {\r\n return {\r\n iniInitial,\r\n iniFinal,\r\n valInitial: iniInitial,\r\n valFinal: iniFinal\r\n };\r\n }\r\n\r\n public static makeFilterRangeNumber(iniInitial: number, iniFinal: number): IFilterRangeNumber {\r\n return {\r\n iniInitial,\r\n iniFinal,\r\n valInitial: iniInitial,\r\n valFinal: iniFinal\r\n };\r\n }\r\n\r\n public static makeFilterRangeDate(iniInitial: Date, iniFinal: Date): IFilterRangeDate {\r\n return {\r\n iniInitial,\r\n iniFinal,\r\n valInitial: iniInitial,\r\n valFinal: iniFinal\r\n };\r\n }\r\n}\r\n","/*\r\nVersão: 1.003\r\nData Criação: 18/04/2019\r\n*/\r\n\r\nimport { PoMultiselectOption, PoSelectOption } from '@po-ui/ng-components';\r\n\r\nexport interface ChartSeries {\r\n name?: string;\r\n data?: Array<number>;\r\n}\r\nexport interface ChartValues {\r\n minValue: number;\r\n maxValue: number;\r\n}\r\n\r\nexport class GenericFunctionsUtils {\r\n\r\n literals: any = {};\r\n\r\n constructor(\r\n literals: Object\r\n ) {\r\n this.literals = literals;\r\n }\r\n\r\n /* Transforma uma Lista separada por \",\" em um Array */\r\n static listToArrayCharacter(list: string): Array<string> {\r\n let returnArray = new Array<string>();\r\n\r\n if (list && list !== '') {\r\n returnArray = list.split(',');\r\n }\r\n\r\n return returnArray;\r\n }\r\n\r\n /* Transforma um Array em uma Lista separada por \",\" */\r\n static ArrayToListCharacter(array: Array<string>): string {\r\n let list = '';\r\n\r\n if (array && array.length > 0) {\r\n list = array.join(',');\r\n }\r\n\r\n return list;\r\n }\r\n\r\n static isEmpty(object: object): boolean {\r\n let isEmpty = true;\r\n\r\n for (const content in object) {\r\n if (object.hasOwnProperty(content)) {\r\n isEmpty = false;\r\n }\r\n }\r\n\r\n return isEmpty;\r\n }\r\n\r\n static getChartValues(chartData: Array<ChartSeries>): ChartValues {\r\n\r\n let chartValues: ChartValues;\r\n\r\n let maxValue,\r\n minValue;\r\n\r\n maxValue = undefined;\r\n minValue = undefined;\r\n\r\n chartData.map(item => {\r\n if (maxValue === undefined && minValue === undefined) {\r\n maxValue = item.data[0];\r\n minValue = item.data[0];\r\n } else {\r\n if (item.data < minValue) {\r\n minValue = item.data[0];\r\n }\r\n if (item.data > maxValue) {\r\n maxValue = item.data[0];\r\n }\r\n }\r\n });\r\n\r\n if (maxValue > 0 && minValue > 0) {\r\n chartValues = { maxValue: maxValue, minValue: 0 };\r\n }\r\n\r\n if (maxValue > 0 && minValue < 0) {\r\n chartValues = { maxValue: maxValue, minValue: minValue };\r\n }\r\n\r\n if (maxValue < 0 && minValue < 0) {\r\n const max = (minValue / 3) * (- 1);\r\n chartValues = { maxValue: max, minValue: minValue };\r\n }\r\n\r\n if (maxValue > 0 && minValue === 0) {\r\n chartValues = { maxValue: maxValue, minValue: 0 };\r\n }\r\n\r\n if (maxValue === 0 && minValue < 0) {\r\n const max = (minValue / 3) * (- 1);\r\n chartValues = { maxValue: max, minValue: minValue };\r\n }\r\n\r\n if (maxValue === 0 && minValue === 0) {\r\n chartValues = { maxValue: undefined, minValue: undefined };\r\n }\r\n\r\n chartValues.maxValue = Math.round(chartValues.maxValue);\r\n chartValues.minValue = Math.round(chartValues.minValue);\r\n\r\n return chartValues;\r\n }\r\n\r\n /*Deixa no list apenas o itens que existem no options*/\r\n static atzMultiSelectListByOptions(options: Array<PoMultiselectOption>, list: Array<string>): Array<string> {\r\n let idx: number;\r\n let newList: Array<string>;\r\n\r\n if (!list) {\r\n return list;\r\n }\r\n\r\n newList = new Array<string>();\r\n\r\n list.map(item => {\r\n if (item) {\r\n idx = options.findIndex(itemOptions => itemOptions.value === item);\r\n if (idx >= 0) {\r\n newList.push(item);\r\n }\r\n }\r\n });\r\n\r\n return newList;\r\n }\r\n\r\n /*Carrega o Options com os valores defaults passados como parâmetro (list)*/\r\n public loadOptionsMultiSelect(options: Array<PoMultiselectOption>, list: Array<string>): void {\r\n let idx: number;\r\n\r\n if (!list) {\r\n return;\r\n }\r\n\r\n list.map(item => {\r\n if (item) {\r\n idx = options.findIndex(itemOptions => itemOptions.value === item);\r\n if (idx === -1) {\r\n options.push({ label: item === 'all' ? this.literals['all'] : item, value: item });\r\n }\r\n }\r\n });\r\n }\r\n\r\n /*Carrega o Options com os valores defaults passados como parâmetro (list)*/\r\n public loadOptionsSelect(options: Array<PoSelectOption>, selectValue: string, tradValue = false): void {\r\n let idx: number;\r\n\r\n if (!selectValue) {\r\n return;\r\n }\r\n\r\n if (selectValue) {\r\n idx = options.findIndex(itemOptions => itemOptions.value === selectValue);\r\n if (idx === -1) {\r\n options.push({ label: tradValue ? this.literals[selectValue] : selectValue, value: selectValue });\r\n }\r\n }\r\n }\r\n\r\n /*Método que compara 2 objetos e retorna se são iguais ou diferentes*/\r\n public compareObjects(firstObject: Object, secondObject: Object): boolean {\r\n\r\n if (!firstObject || !secondObject) {\r\n return false;\r\n }\r\n\r\n /*Pega a lista de nomes dos campos do objetos e compara*/\r\n if (Object.getOwnPropertyNames(firstObject).length !== Object.getOwnPropertyNames(secondObject).length) {\r\n return false;\r\n }\r\n\r\n for (const content in firstObject) {\r\n if (content.substr(0, 1) === '$' || content.substr(0, 1) === '_') {\r\n continue;\r\n }\r\n\r\n if (firstObject[content] !== secondObject[content]) {\r\n return false;\r\n }\r\n\r\n }\r\n\r\n return true;\r\n }\r\n\r\n public referenceGeneration(charInd: string, dateRef: Date): string {\r\n let reference: string;\r\n let random: string;\r\n\r\n const iDay = dateRef.getDate();\r\n const iMonth = dateRef.getMonth() + 1;\r\n const iYear = dateRef.getFullYear();\r\n\r\n reference = `${this.pad(iYear)}${this.pad(iMonth)}${this.pad(iDay)}${charInd}`;\r\n\r\n random = btoa(`${(new Date()).getTime()}`);\r\n random = random.replace(/[=]/g, '');\r\n random = random.slice(random.length - 3, random.length);\r\n\r\n return `${reference}${random}`;\r\n }\r\n\r\n public pad(number): string {\r\n if (number < 10) {\r\n return '0' + number;\r\n }\r\n if (number > 99) {\r\n return (number + '').slice(2, 4);\r\n }\r\n return number;\r\n }\r\n\r\n public focusInternalInput(idField: string) {\r\n const fieldComponent = document.getElementById(idField);\r\n const fieldInput = (<HTMLScriptElement[]><any>fieldComponent.getElementsByClassName('po-input'))[0];\r\n fieldInput.focus();\r\n }\r\n}\r\n","export class FileUtil {\r\n\r\n constructor(\r\n ) { }\r\n\r\n static downloadFile(data: any, fileName: string, contentType?: string, base64?: boolean): void {\r\n base64 = (base64 === false) ? false : true;\r\n const dataBlob = base64 ? this.b64toBlob(data, contentType) : data;\r\n this.download(dataBlob, fileName);\r\n }\r\n\r\n static downloadData(data: Array<any>, dwldDataParam: IDownloadDataParams = null): void {\r\n if (!data) { return; }\r\n\r\n if (!dwldDataParam) { dwldDataParam = new DownloadDataParams(); }\r\n if (!dwldDataParam.fileName) { dwldDataParam.fileName = 'data.csv'; }\r\n if (!dwldDataParam.literals) { dwldDataParam.literals = {}; }\r\n if (!dwldDataParam.columnDelimiter) { dwldDataParam.columnDelimiter = ';'; }\r\n if (!dwldDataParam.columnList) { dwldDataParam.columnList = []; }\r\n if (!dwldDataParam.columnExclude) { dwldDataParam.columnExclude = []; }\r\n\r\n const datab64 = btoa(this.jsonToString(data, dwldDataParam));\r\n this.downloadFile(datab64, dwldDataParam.fileName, 'text/csv');\r\n }\r\n\r\n private static download(file: Blob, fileName: string): void {\r\n const binaryData = [file];\r\n const downloadLink = document.createElement('a');\r\n const urlDownload = window.URL.createObjectURL(new Blob(binaryData, { type: file.type }));\r\n\r\n /**Verifica se é ie ou edge, pois o mesmo tem tratamento próprio para arquivos blob */\r\n if (navigator.userAgent.toUpperCase().indexOf('.NET') > 0 || navigator.userAgent.toUpperCase().indexOf('EDGE') > 0) {\r\n window.navigator.msSaveOrOpenBlob(file, fileName);\r\n } else {\r\n downloadLink.href = urlDownload;\r\n downloadLink.setAttribute('download', fileName);\r\n document.body.appendChild(downloadLink);\r\n downloadLink.click();\r\n window.URL.revokeObjectURL(urlDownload);\r\n downloadLink.remove();\r\n }\r\n }\r\n\r\n private static b64toBlob(b64Data: any, contentType?: string, sliceSize?: number): Blob {\r\n contentType = contentType || '';\r\n sliceSize = sliceSize || 512;\r\n\r\n const byteCharacters = atob(b64Data);\r\n const byteArrays = [];\r\n\r\n for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {\r\n const slice = byteCharacters.slice(offset, offset + sliceSize);\r\n\r\n const byteNumbers = new Array(slice.length);\r\n for (let i = 0; i < slice.length; i++) {\r\n byteNumbers[i] = slice.charCodeAt(i);\r\n }\r\n\r\n const byteArray = new Uint8Array(byteNumbers);\r\n byteArrays.push(byteArray);\r\n }\r\n\r\n const blob = new Blob(byteArrays, { type: contentType });\r\n return blob;\r\n }\r\n\r\n private static jsonToString(jsonData: Array<any>, dwldDataParam: IDownloadDataParams): string {\r\n if (!jsonData || jsonData.length === 0) { return ''; }\r\n\r\n const lineDelimiter = '\\n';\r\n\r\n let columnOrig = null;\r\n let columnHeader = null;\r\n const keys = [];\r\n let includeKey: boolean;\r\n\r\n if (dwldDataParam.columnList &&\r\n dwldDataParam.columnList.length > 0) {\r\n columnOrig = dwldDataParam.columnList;\r\n } else {\r\n columnOrig = Object.keys(jsonData[0]);\r\n }\r\n\r\n columnOrig.forEach(key => {\r\n includeKey = true;\r\n\r\n if (dwldDataParam.columnExclude &&\r\n dwldDataParam.columnExclude.length > 0 &&\r\n dwldDataParam.columnExclude.indexOf(key) !== -1) {\r\n includeKey = false;\r\n }\r\n\r\n if (includeKey) {\r\n keys.push(key);\r\n columnHeader = (!columnHeader) ? '' : columnHeader + dwldDataParam.columnDelimiter;\r\n columnHeader += (dwldDataParam.literals[key]) ? dwldDataParam.literals[key] : key;\r\n }\r\n });\r\n\r\n const lineStr = jsonData.reduce((accLineStr, currentItem) => {\r\n let first = true;\r\n let columnValue = null;\r\n\r\n keys.forEach(key => {\r\n if (!first) { accLineStr += dwldDataParam.columnDelimiter; }\r\n\r\n columnValue = currentItem[key];\r\n if (columnValue === null || columnValue === undefined) { columnValue = ''; }\r\n switch (typeof (columnValue)) {\r\n case 'number':\r\n columnValue = columnValue.toLocaleString();\r\n break;\r\n case 'boolean':\r\n columnValue = (dwldDataParam.literals[`${columnValue}`]) ?\r\n dwldDataParam.literals[`${columnValue}`] : columnValue;\r\n break;\r\n case 'object':\r\n columnValue = JSON.stringify(columnValue);\r\n }\r\n accLineStr += columnValue;\r\n\r\n first = false;\r\n });\r\n\r\n return accLineStr + lineDelimiter;\r\n\r\n }, columnHeader + lineDelimiter);\r\n\r\n return lineStr;\r\n }\r\n}\r\n\r\nexport interface IDownloadDataParams {\r\n fileName: string;\r\n literals: any;\r\n columnDelimiter: string;\r\n columnList: Array<string>;\r\n columnExclude: Array<string>;\r\n}\r\n\r\nexport class DownloadDataParams implements IDownloadDataParams {\r\n fileName: string;\r\n literals: any;\r\n columnDelimiter: string;\r\n columnList: Array<string>;\r\n columnExclude: Array<string>;\r\n}\r\n","export interface IScheduleParameters {\r\n executionType: number;\r\n execAppointDate: Date;\r\n execAppointHour: string;\r\n executionServer: string;\r\n repeatExecution: boolean;\r\n repeatType: number;\r\n frequency: string;\r\n frequencyValue: number;\r\n frequencyType: string;\r\n execAppointHourInit: string;\r\n execAppointHourFinal: string;\r\n selectWeeklys: [];\r\n dayOfMonth: number;\r\n}\r\n\r\nexport class ScheduleParameters implements IScheduleParameters {\r\n executionType: number;\r\n execAppointDate: Date;\r\n execAppointHour: string;\r\n executionServer: string;\r\n repeatExecution: boolean;\r\n repeatType: number;\r\n frequency: string;\r\n frequencyValue: number;\r\n frequencyType: string;\r\n execAppointHourInit: string;\r\n execAppointHourFinal: string;\r\n selectWeeklys: [];\r\n dayOfMonth: number;\r\n}\r\n\r\nexport interface IExecutionStatus {\r\n jobScheduleID: string;\r\n executionID: string;\r\n startedDate: Date;\r\n error: string;\r\n status: string;\r\n}\r\n\r\nexport class ExecutionStatus implements IExecutionStatus {\r\n jobScheduleID: string;\r\n executionID: string;\r\n startedDate: Date;\r\n error: string;\r\n status: string;\r\n}\r\n\r\nexport interface IExecutionParameters {\r\n executionServer: string;\r\n programName: string;\r\n externalName: string;\r\n programEMS5: boolean;\r\n programVersion: string;\r\n businessParams: Array<any>;\r\n}\r\n\r\nexport class ExecutionParameters implements IExecutionParameters {\r\n executionServer: string;\r\n programName: string;\r\n externalName: string;\r\n programEMS5: boolean;\r\n programVersion: string;\r\n businessParams: Array<any>;\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient, HttpErrorResponse } from '@angular/common/http';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { map } from 'rxjs/operators';\r\nimport { PoLookupFilteredItemsParams } from '@po-ui/ng-components';\r\nimport { ExecutionStatus, IExecutionParameters, IExecutionStatus } from './totvs-schedule-execution.model';\r\n\r\n@Injectable()\r\nexport class TotvsScheduleExecutionService {\r\n\r\n private headers = { headers: { 'X-PO-Screen-Lock': 'true' } };\r\n\r\n private urlCadServidor = '/dts/datasul-rest/resources/prg/btb/v1/servidoresExecucao';\r\n private urlJobScheduler = '/dts/datasul-rest/resources/prg/framework/v1/jobScheduler';\r\n private urlJobExecution = '/dts/datasul-rest/resources/prg/framework/v1/jobExecution';\r\n\r\n // private urlCadServidor = '/genericsZoom';\r\n // private urlJobScheduler = '/jobScheduler';\r\n\r\n private jobExecutionSubscription$: Subscription;\r\n\r\n constructor(public http: HttpClient) { }\r\n\r\n getFilteredItems(params: PoLookupFilteredItemsParams): Observable<any> {\r\n const urlParams = new Array<string>();\r\n\r\n urlParams.push(`pageSize=${params.pageSize.toString()}`);\r\n urlParams.push(`page=${params.page.toString()}`);\r\n\r\n if (params.filter && params.filter.length > 0) {\r\n urlParams.push(`quickSearch=${params.filter}`);\r\n }\r\n\r\n return this.http.get(`${this.urlCadServidor}?${urlParams.join('&')}`);\r\n }\r\n\r\n getObjectByValue(id: string): Observable<any> {\r\n return this.http.get<any>(`${this.urlCadServidor}/${id}`, this.headers);\r\n }\r\n\r\n createExecution(parameters: Object, loading: boolean): Observable<any> {\r\n const params = JSON.parse(JSON.stringify(parameters).replace(/\\\\\\\\/g, '*|'));\r\n\r\n if (loading) {\r\n return this.http.post(`${this.urlJobScheduler}`, params, this.headers);\r\n } else {\r\n return this.http.post(`${this.urlJobScheduler}`, params);\r\n }\r\n }\r\n\r\n createExecutionForNow(executionParams: IExecutionParameters, loading: boolean): Observable<any> {\r\n let jobScheduleParams: any;\r\n const date = new Date();\r\n\r\n const params = JSON.parse(JSON.stringify(executionParams).replace(/\\\\\\\\/g, '*|'));\r\n if (!params.businessParams || params.businessParams.length === 0) {\r\n params.businessParams = [{ chave: '', valor: '' }];\r\n }\r\n\r\n jobScheduleParams = {};\r\n jobScheduleParams.status = 'active';\r\n jobScheduleParams.processID = params.programName;\r\n jobScheduleParams.firstExecution = `${date.getFullYear()}-${(date.getMonth() + 1)}-${date.getDate()}T${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}:00.000Z`;\r\n jobScheduleParams.recurrent = false;\r\n\r\n jobScheduleParams.executionParameter = {\r\n parametros: [\r\n { chave: 'rpwServer', valor: params.executionServer },\r\n { chave: 'RPW_PROGRAM', valor: params.externalName },\r\n { chave: 'RPW_PRG_EMS5', valor: params.programEMS5 ? 'yes' : 'no' },\r\n { chave: 'RPW_PRG_VERS', valor: params.programVersion },\r\n { parametros_negocio: params.businessParams }\r\n ]\r\n };\r\n\r\n if (loading) {\r\n return this.http.post(`${this.urlJobScheduler}`, jobScheduleParams, this.headers);\r\n } else {\r\n return this.http.post(`${this.urlJobScheduler}`, jobScheduleParams);\r\n }\r\n }\r\n\r\n getExecutionByJobScheduleID(jobScheduleID: string, loading = false): Observable<IExecutionStatus> {\r\n const url = `${this.urlJobExecution}?jobScheduleID=${jobScheduleID}`;\r\n return this.getExecution(url, loading).pipe(\r\n map((response) => this.transformExecution('jobScheduleID', response))\r\n );\r\n }\r\n\r\n getExecutionByExecutionID(executionID: string, loading = false): Observable<IExecutionStatus> {\r\n const url = `${this.urlJobExecution}/${executionID}`;\r\n return this.getExecution(url, loading).pipe(\r\n map((response) => this.transformExecution('executionID', response))\r\n );\r\n }\r\n\r\n private getExecution(url: string, loading: boolean): Observable<any> {\r\n if (loading) {\r\n return this.http.get(url, this.headers);\r\n } else {\r\n return this.http.get(url);\r\n }\r\n }\r\n\r\n private transformExecution(type: string, response: any): IExecutionStatus {\r\n if (!response || !response.items || response.items.length === 0) { return; }\r\n response = response.items[0];\r\n\r\n const execStatus = new ExecutionStatus();\r\n execStatus.jobScheduleID = response.jobScheduleID;\r\n execStatus.executionID = response.executionID;\r\n execStatus.startedDate = response.startedDate;\r\n execStatus.error = response.error;\r\n execStatus.status = response.status;\r\n\r\n return execStatus;\r\n }\r\n\r\n followUpExcByJobScheduleID(jobScheduleID: string, intervalNum: number, fncCallBack: Function, loading = false): void {\r\n this.followUpExecution('jobScheduleID', jobScheduleID, intervalNum, fncCallBack, loading);\r\n }\r\n\r\n followUpExcByExecutionID(executionID: string, intervalNum: number, fncCallBack: Function, loading = false): void {\r\n this.followUpExecution('executionID', executionID, intervalNum, fncCallBack, loading);\r\n }\r\n\r\n private followUpExecution(type: string, execID: string,\r\n intervalNum: number, fncCallBack: Function, loading: boolean): void {\r\n\r\n this.jobExecutionSubscription$ = null;\r\n\r\n const intervalID = setInterval(() => {\r\n const execStatus = new ExecutionStatus();\r\n execStatus.jobScheduleID = (type === 'jobScheduleID') ? execID : '';\r\n execStatus.executionID = (type === 'executionID') ? execID : '';\r\n execStatus.startedDate = null;\r\n execStatus.error = '';\r\n execStatus.status = 'PENDING'; // PENDING, RUNNING, SUCCESS, FAILURE\r\n\r\n if (this.jobExecutionSubscription$) { return; }\r\n\r\n if (type === 'jobScheduleID') {\r\n this.jobExecutionSubscription$ = this.getExecutionByJobScheduleID(execID, loading)\r\n .subscribe((response: IExecutionStatus) => {\r\n this.followUpExecReturnOk(execID, execStatus, response, intervalID, fncCallBack);\r\n }, (error) => {\r\n this.followUpExecReturnError(error, execStatus, intervalID, fncCallBack);\r\n });\r\n }\r\n\r\n if (type === 'executionID') {\r\n this.jobExecutionSubscription$ = this.getExecutionByExecutionID(execID, loading)\r\n .subscribe((response: IExecutionStatus) => {\r\n this.followUpExecReturnOk(execID, execStatus, response, intervalID, fncCallBack);\r\n }, (error) => {\r\n this.followUpExecReturnError(error, execStatus, intervalID, fncCallBack);\r\n });\r\n }\r\n\r\n }, intervalNum);\r\n }\r\n\r\n private followUpExecReturnOk(execID: string, execStatus: IExecutionStatus, response: IExecutionStatus,\r\n intervalID: any, fncCallBack: Function): void {\r\n\r\n if (response) {\r\n execStatus = response;\r\n } else {\r\n execStatus.error = `Agendamento não encontrado com ID: ${execID}`;\r\n execStatus.status = 'FAILURE';\r\n }\r\n\r\n if (!fncCallBack(execStatus) ||\r\n execStatus.status === 'SUCCESS' ||\r\n execStatus.status === 'FAILURE') {\r\n clearInterval(intervalID);\r\n }\r\n\r\n this.jobExecutionSubscription$ = null;\r\n }\r\n\r\n private followUpExecReturnError(error: any, execStatus: IExecutionStatus,\r\n intervalID: any, fncCallBack: Function): void {\r\n\r\n let erroDesc = '';\r\n\r\n if (error instanceof HttpErrorResponse) {\r\n erroDesc = error.message;\r\n if (error.error) {\r\n erroDesc = '';\r\n if (error.error.code) { erroDesc = error.error.code; }\r\n if (error.error.message) { erroDesc = `${erroDesc} - ${error.error.message}`; }\r\n if (error.error.detailedMessage) { erroDesc = `${erroDesc} - ${error.error.detailedMessage}`; }\r\n }\r\n } else {\r\n erroDesc = error;\r\n }\r\n\r\n execStatus.error = erroDesc;\r\n execStatus.status = 'FAILURE';\r\n fncCallBack(execStatus);\r\n clearInterval(intervalID);\r\n this.jobExecutionSubscription$ = null;\r\n }\r\n\r\n private addZero(num: number): string {\r\n let str = `${num}`;\r\n if (num < 10) { str = `0${num}`; }\r\n return str;\r\n }\r\n}\r\n","import { Component, OnInit, Input, ViewChild, Output, EventEmitter } from '@angular/core';\r\nimport { PoRadioGroupOption, PoI18nService, PoNotificationService, PoLookupColumn } from '@po-ui/ng-components';\r\nimport { IScheduleParameters, ScheduleParameters } from './totvs-schedule-execution.model';\r\nimport { NgForm } from '@angular/forms';\r\nimport { TotvsScheduleExecutionService } from './totvs-schedule-execution.service';\r\n\r\n@Component({\r\n selector: 'app-totvs-schedule-execution',\r\n templateUrl: './totvs-schedule-execution.component.html',\r\n styleUrls: ['./totvs-schedule-execution.component.css']\r\n})\r\n\r\nexport class TotvsScheduleExecutionComponent implements OnInit {\r\n @ViewChild('scheduleExecutionForm', { static: true }) scheduleExecutionForm: NgForm;\r\n\r\n @Input() programName: string;\r\n @Input() externalName: string;\r\n @Input() programEMS5 = false;\r\n @Input() programVersion = '';\r\n @Input() parameters: [];\r\n @Input() disabledParams = false;\r\n @Input() loading = false;\r\n @Output() endExecution = new EventEmitter();\r\n\r\n constructor(\r\n public poI18nService: PoI18nService,\r\n public rpwService: TotvsScheduleExecutionService,\r\n public poNotification: PoNotificationService) {\r\n }\r\n\r\n executionTypeOptions: Array<PoRadioGroupOption>;\r\n frequencyOptions: Array<PoRadioGroupOption>;\r\n frequencyTypeOptions: Array<PoRadioGroupOption>;\r\n weeklyOptions: Array<PoRadioGroupOption>;\r\n zoomRpwServiceColumns: Array<PoLookupColumn>;\r\n model: ScheduleParameters;\r\n private jsonObject: any = {};\r\n\r\n literals: any = {};\r\n\r\n ngOnInit() {\r\n /* VERIFICAR COMO FICARÁ A TRADUÇÃO\r\n forkJoin(\r\n this.poI18nService.getLiterals(),\r\n this.poI18nService.getLiterals({ context: 'generalRpw' })\r\n ).subscribe(literals => {\r\n literals.map(item => Object.assign(this.literals, item) );\r\n this.setupComponents();\r\n });*/\r\n\r\n this.setupComponents();\r\n }\r\n\r\n setupComponents() {\r\n this.executionTypeOptions = [\r\n { label: 'Executar Hoje', value: 1 },\r\n { label: 'Agendar Execução', value: 2 }\r\n ];\r\n\r\n this.frequencyOptions = [\r\n { label: 'Uma vez no dia', value: 'no' },\r\n { label: 'Várias vezes no dia', value: 'yes' }\r\n ];\r\n\r\n this.frequencyTypeOptions = [\r\n { label: 'Hora(s)', value: 'hour' },\r\n { label: 'Minuto(s)', value: 'minute' }\r\n ];\r\n\r\n this.weeklyOptions = [\r\n { label: 'Domingo', value: 'Sunday' },\r\n { label: 'Segunda', value: 'Monday' },\r\n { label: 'Terça', value: 'Tuesday' },\r\n { label: 'Quarta', value: 'Wednesday' },\r\n { label: 'Quinta', value: 'Thursday' },\r\n { label: 'Sexta', value: 'Friday' },\r\n { label: 'Sábado', value: 'Saturday' }\r\n ];\r\n\r\n this.zoomRpwServiceColumns = [\r\n { property: 'code', label: 'Servidor', type: 'string', width: '20%' },\r\n { property: 'name', label: 'Descrição', type: 'string', width: '80%' }\r\n ];\r\n\r\n this.model = new ScheduleParameters();\r\n this.model.executionType = 1;\r\n this.model.repeatType = 1;\r\n this.model.repeatExecution = false;\r\n }\r\n\r\n public setScheduleParameters(schParam: IScheduleParameters) {\r\n if (!schParam) { return; }\r\n this.model = schParam;\r\n }\r\n\r\n fieldRpwServiceFormat(value) {\r\n return `${value.code} - ${value.name}`;\r\n }\r\n\r\n isExecutionSchedule(): boolean {\r\n return (this.model.executionType === 2);\r\n }\r\n\r\n isRepeatExecution(): boolean {\r\n return this.model.repeatExecution;\r\n }\r\n\r\n isFrenquency(): boolean {\r\n return (this.model.frequency === 'yes');\r\n }\r\n\r\n changeRepeatExecution() {\r\n const date = new Date();\r\n\r\n if (!this.model.execAppointHourInit) { this.model.execAppointHourInit = `${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}`; }\r\n if (!this.model.execAppointHourFinal) { this.model.execAppointHourFinal = `${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}`; }\r\n this.model.selectWeeklys = [];\r\n this.model.dayOfMonth = 0;\r\n this.model.frequency = 'no';\r\n this.model.frequencyType = 'hour';\r\n this.model.frequencyValue = 0;\r\n }\r\n\r\n changeExecutionType() {\r\n const date = new Date();\r\n\r\n this.model.execAppointDate = date;\r\n this.model.execAppointHour = `${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}`;\r\n }\r\n\r\n changeTypeFrequency() {\r\n }\r\n\r\n getActiveTab(codTab: number) {\r\n return (this.model.repeatType === codTab);\r\n }\r\n\r\n setActiveTab(codTab: number) {\r\n this.model.repeatType = codTab;\r\n }\r\n\r\n addZero(num: number): string {\r\n let str = `${num}`;\r\n if (num < 10) { str = `0${num}`; }\r\n return str;\r\n }\r\n\r\n executeSchedule() {\r\n if (this.disabledParams) { return; }\r\n if (!this.validate()) { return; }\r\n\r\n this.jsonObject = {};\r\n this.jsonObject.status = 'active';\r\n this.jsonObject.processID = this.programName;\r\n this.jsonObject.recurrent = this.model.repeatExecution;\r\n this.jsonObject.executionParameter = {};\r\n\r\n if (this.model.executionType === 1) {\r\n const date = new Date();\r\n this.jsonObject.firstExecution = `${date.getFullYear()}-${(date.getMonth() + 1)}-${date.getDate()}T${this.addZero(date.getHours())}:${this.addZero(date.getMinutes())}:00.000Z`;\r\n }\r\n if (this.model.executionType === 2) {\r\n this.jsonObject.firstExecution = `${this.model.execAppointDate}T${this.model.execAppointHour}:00.000Z`;\r\n }\r\n\r\n this.jsonObject.executionParameter.parametros = [];\r\n this.jsonObject.executionParameter.parametros[0] = { chave: 'rpwServer', valor: this.model.executionServer };\r\n this.jsonObject.executionParameter.parametros[1] = { chave: 'RPW_PROGRAM', valor: this.externalName };\r\n this.jsonObject.executionParameter.parametros[2] = { chave: 'RPW_PRG_EMS5', valor: this.programEMS5 ? 'yes' : 'no' };\r\n this.jsonObject.executionParameter.parametros[3] = { chave: 'RPW_PRG_VERS', valor: this.programVersion };\r\n\r\n this.jsonObject.executionParameter.parametros[4] = {};\r\n this.jsonObject.executionParameter.parametros[4].parametros_negocio = this.parameters;\r\n\r\n // Executa hoje ou agendada\r\n this.rpwService.createExecution(this.jsonObject, this.loading).subscribe(() => {\r\n this.poNotification.success('Agendamento realizado com sucesso !');\r\n });\r\n\r\n if (this.model.repeatExecution) {\r\n if (this.model.repeatType === 1) {\r\n this.jsonObject.daily = {\r\n hour: this.getHourOrMinute(this.model.execAppointHourInit, 'h'),\r\n minute: this.getHourOrMinute(this.model.execAppointHourInit, 'm')\r\n };\r\n }\r\n\r\n if (this.model.repeatType === 2) {\r\n this.jsonObject.weekly = {\r\n hour: this.getHourOrMinute(this.model.execAppointHourInit, 'h'),\r\n minute: this.getHourOrMinute(this.model.execAppointHourInit, 'm'),\r\n daysOfWeek: this.model.selectWeeklys\r\n };\r\n }\r\n\r\n if (this.model.repeatType === 3) {\r\n this.jsonObject.monthly = {\r\n hour: this.getHourOrMinute(this.model.execAppointHourInit, 'h'),\r\n minute: this.getHourOrMinute(this.model.execAppointHourInit, 'm'),\r\n day: this.model.dayOfMonth\r\n };\r\n }\r\n\r\n if (this.isFrenquency()) {\r\n this.jsonObject.rangeExecutions = {\r\n frequency: {\r\n type: this.model.frequencyType,\r\n value: this.model.frequencyValue\r\n },\r\n rangeLimit: {\r\n hour: this.getHourOrMinute(this.model.execAppointHourFinal, 'h'),\r\n minute: this.getHourOrMinute(this.model.execAppointHourFinal, 'm')\r\n }\r\n };\r\n }\r\n\r\n // Executa a diária, semanal ou mensal\r\n this.rpwService.createExecution(this.jsonObject, this.loading).subscribe(() => {\r\n });\r\n }\r\n\r\n this.endExecution.emit(this.model);\r\n }\r\n\r\n getHourOrMinute(value: string, type: string): number {\r\n if (type === 'h') { return +value.substring(0, 2); }\r\n if (type === 'm') { return +value.substring(3, 6); }\r\n }\r\n\r\n compareHour(hourInit: string, hourFinal: string): boolean {\r\n if (hourInit === hourFinal) { return false; }\r\n if (this.getHourOrMinute(hourInit, 'h') < this.getHourOrMinute(hourFinal, 'h')) { return true; }\r\n if (this.getHourOrMinute(hourInit, 'm') > this.getHourOrMinute(hourFinal, 'm')) { return false; }\r\n return true;\r\n }\r\n\r\n validate(): boolean {\r\n\r\n if (!this.scheduleExecutionForm.valid) {\r\n this.poNotification.error('Verifique as inconsistências em tela.');\r\n return false;\r\n }\r\n\r\n if (!this.model.executionServer) {\r\n this.poNotification.error('Servidor de Execução não foi informado.');\r\n return false;\r\n }\r\n\r\n if (this.isExecutionSchedule() && (!this.model.execAppointDate || !this.model.execAppointHour)) {\r\n this.poNotification.error('Informar a data e a hora para agendamento da execução.');\r\n return false;\r\n }\r\n\r\n if (this.model.repeatExecution) {\r\n if (!this.model.execAppointHourInit) {\r\n this.poNotification.error('Informar a hora de início para a execução.');\r\n return false;\r\n }\r\n\r\n if (this.model.repeatType === 2 && (this.model.selectWeeklys.length === 0)) {\r\n this.poNotification.error('Informar os dias da semana para a execução.');\r\n return false;\r\n }\r\n\r\n if (this.model.repeatType === 3 && (!this.model.dayOfMonth)) {\r\n this.poNotification.error('Informar o dia para a execução.');\r\n return false;\r\n }\r\n\r\n if (this.isFrenquency()) {\r\n if (!this.compareHour(this.model.execAppointHourInit, this.model.execAppointHourFinal)) {\r\n this.poNotification.error('Hora Fim deve ser maior que Hora Início.');\r\n return false;\r\n }\r\n\r\n if (this.model.frequencyValue === 0) {\r\n this.poNotification.error('Informar a frequência de execução (A cada hora/minuto).');\r\n return false;\r\n }\r\n }\r\n }\r\n\r\n return true;\r\n }\r\n}\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'dtsDateFormat'\r\n})\r\n\r\nexport class DtsDateFormatPipe implements PipeTransform {\r\n\r\n transform(value: any, format: string = 'dd/MM/yyyy'): any {\r\n const { 0: year, 1: month, 2: day } = value.split('-');\r\n\r\n const formattedDate = format.replace('dd', day)\r\n .replace('MM', month)\r\n .replace('yyyy', year);\r\n\r\n return formattedDate;\r\n }\r\n\r\n}\r\n","import { NgModule, ModuleWithProviders } from '@angular/core';\r\nimport {\r\n TotvsScheduleExecutionComponent\r\n} from './components/totvs-schedule-execution/totvs-schedule-execution.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { PoModule, PoI18nService } from '@po-ui/ng-components';\r\nimport { HttpClientModule } from '@angular/common/http';\r\n// import { BrowserModule } from '@angular/platform-browser';\r\nimport { TotvsScheduleExecutionService } from './components/totvs-schedule-execution/totvs-schedule-execution.service';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DtsDateFormatPipe } from './pipes/dts-date-format.pipe';\r\n\r\n@NgModule({\r\n declarations: [\r\n TotvsScheduleExecutionComponent,\r\n DtsDateFormatPipe\r\n ],\r\n imports: [\r\n CommonModule,\r\n PoModule,\r\n FormsModule,\r\n HttpClientModule\r\n ],\r\n exports: [\r\n TotvsScheduleExecutionComponent,\r\n DtsDateFormatPipe\r\n ],\r\n providers: [\r\n TotvsScheduleExecutionService\r\n ]\r\n})\r\n\r\nexport class DtsBackofficeUtilsModule {\r\n static forRoot(): ModuleWithProviders<DtsBackofficeUtilsModule> {\r\n return {\r\n ngModule: DtsBackofficeUtilsModule,\r\n providers: [TotvsScheduleExecutionService]\r\n };\r\n }\r\n}\r\n"],"names":["of","map","Injectable","HttpClient","HttpErrorResponse","EventEmitter","Component","PoI18nService","PoNotificationService","ViewChild","Input","Output","Pipe","NgModule","CommonModule","PoModule","FormsModule","HttpClientModule"],"mappings":"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"}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core"),require("@angular/common/http"),require("rxjs"),require("rxjs/operators"),require("@po-ui/ng-components"),require("@angular/forms"),require("@angular/common")):"function"==typeof define&&define.amd?define("dts-backoffice-util",["exports","@angular/core","@angular/common/http","rxjs","rxjs/operators","@po-ui/ng-components","@angular/forms","@angular/common"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["dts-backoffice-util"]={},e.ng.core,e.ng.common.http,e.rxjs,e.rxjs.operators,e.ngComponents,e.ng.forms,e.ng.common)}(this,(function(e,t,r,n,o,i,a,l){"use strict";var s=function(){function e(e){this.http=e,this.apiUrl="/totvs-menu/rest/getSessionInfo",this.userLogin=void 0}return e.prototype.getUserLogin=function(){var e=this;return localStorage.getItem("username")?n.of(localStorage.getItem("username")):this.userLogin?n.of(this.userLogin):this.http.get(""+this.apiUrl).pipe(o.map((function(t){return e.userLogin=t.userName,t.userName})))},e}();s.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],s.ctorParameters=function(){return[{type:r.HttpClient}]},s.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new s(t.ɵɵinject(r.HttpClient))},token:s,providedIn:"root"});var p={STRING:1,JSON:2};p[p.STRING]="STRING",p[p.JSON]="JSON";var u=function(){function e(e){this.http=e,this.apiURL="/dts/datasul-rest/resources/api/btb/btapi930za"}return e.prototype.setProfile=function(e){var t=e.pageId,r=e.userCode;return this.http.post(this.apiURL+"/setProfile?userCode="+r+"&pageId="+t,e,{headers:{"X-PO-Screen-Lock":"true"}})},e.prototype.getProfileAsString=function(e,t){return this.getProfile(e,p.STRING,t?"true":"false")},e.prototype.getProfileAsJSON=function(e,t){return this.getProfile(e,p.JSON,t?"true":"false")},e.prototype.getProfile=function(e,t,r){var n={"X-PO-Screen-Lock":r},i=e.pageId,a=e.dataCode,l=e.userCode;return this.http.get(this.apiURL+"/getProfile?userCode="+l+"&pageId="+i+"&dataCode="+a,{headers:n}).pipe(o.map((function(e){if(e.data[0])return t===p.STRING?e.data[0].dataValue:t===p.JSON?JSON.parse(e.data[0].dataValue):void 0})))},e}();u.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],u.ctorParameters=function(){return[{type:r.HttpClient}]},u.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new u(t.ɵɵinject(r.HttpClient))},token:u,providedIn:"root"});var c=function(){function e(e){this.httpClient=e,this.URL=window.location.href.indexOf("totvs-menu")>0?"/totvs-menu/rest/report/run/":"/dts/datasul-report/resources/run/"}return e.prototype.generate=function(e,t){var r=this;void 0===t&&(t=!0);var n={"X-PO-Screen-Lock":t?"true":"false"},i=""+this.URL+e.reportName;return e.properties.length>0&&(i+="?",e.properties.forEach((function(e,t){t>0&&(i+="&"),i+="c_properties="+e.name+"&c_values="+e.value}))),i+="&dialect="+e.dialect+"&format="+e.format,i+="&program="+e.programName+"&resultFileName="+e.downloadName,this.httpClient.post(i,{},{headers:n,responseType:"blob"}).pipe(o.map((function(t){return e.download&&r.download(t,e.downloadName+"."+e.format),t})))},e.prototype.download=function(e,t){var r=[e],n=document.createElement("a"),o=window.URL.createObjectURL(new Blob(r,{type:e.type}));n.href=o,n.setAttribute("download",t),document.body.appendChild(n),n.click(),window.URL.revokeObjectURL(o),n.remove()},e}();c.decorators=[{type:t.Injectable}],c.ctorParameters=function(){return[{type:r.HttpClient}]};var d=function(){function e(){}return e.prototype.newBreadcrumb=function(){this.breadcrumb={items:[]}},e.prototype.addBreadcrumb=function(e,t){this.addBreadcrumbURL(e,decodeURIComponent(t.snapshot._routerState.url))},e.prototype.addBreadcrumbURL=function(e,t){if(e&&""!==e){this.breadcrumb||this.newBreadcrumb();var r={items:[]},n=0;for(n=0;n<this.breadcrumb.items.length&&this.breadcrumb.items[n].label!==e;n++)r.items.push(this.breadcrumb.items[n]);r.items.push({label:e,link:t}),this.breadcrumb=r}},e.prototype.updBreadcrumbURL=function(e,t,r){var n=this.getCurrentRouter();n&&t&&r&&(n=n.replace(t,r),this.addBreadcrumbURL(e,n))},e.prototype.getBreadcrumb=function(){return this.breadcrumb||this.newBreadcrumb(),this.breadcrumb},e.prototype.getCurrentRouter=function(){return this.breadcrumb||this.newBreadcrumb(),this.breadcrumb.items.length<=0?"":this.breadcrumb.items[this.breadcrumb.items.length-1].link},e.prototype.getPrevRouter=function(){return this.breadcrumb||this.newBreadcrumb(),this.breadcrumb.items.length<=1?"":this.breadcrumb.items[this.breadcrumb.items.length-2].link},e.prototype.hasPreviousRouter=function(){return this.breadcrumb.items.length>1},e}();d.decorators=[{type:t.Injectable}],d.ctorParameters=function(){return[]};var m=function(){function e(){}return e.prototype.callProgress=function(e){parent.postMessage({program:e},"*")},e.prototype.sendNotification=function(e){parent.postMessage({notification:e},"*")},e.prototype.openPath=function(e,t,r){void 0===r&&(r=!0);var n=document.referrer.indexOf("totvs-menu")>0?"totvs-menu":"menu-html",o="/"+n+"/#/"+n+"/program-html/"+e+"/#";t&&(o=o+"/"+t),r?window.open(o,"_parent"):window.open(o)},e}();m.decorators=[{type:t.Injectable}],m.ctorParameters=function(){return[]};var h=function(){function e(){this.values={}}return e.prototype.setValue=function(e,t){this.values[e]=t},e.prototype.getValue=function(e){return this.values[e]},e.prototype.removeValue=function(e){delete this.values[e]},e}();h.decorators=[{type:t.Injectable,args:[{providedIn:"root"}]}],h.ctorParameters=function(){return[]},h.ɵprov=t.ɵɵdefineInjectable({factory:function(){return new h},token:h,providedIn:"root"});var f=function(){function e(){}return e.getSuportLanguage=function(){return["pt-BR","pt","en-US","en","es"]},e.getDefaultCurrencyCode=function(){return"$"},e.getCurrentLanguage=function(){var e=localStorage.getItem("user.language")||navigator.language;return e&&this.getSuportLanguage().includes(e)?e:"en-US"},e}();f.decorators=[{type:t.Injectable}];var v=function(){function e(){}return e.dateToQueryParam=function(e){var t=e.getDate(),r=e.getMonth()+1;return e.getFullYear()+"-"+this.pad(r)+"-"+this.pad(t)},e.queryParamToDate=function(e){var t=+e.split("-")[2],r=+e.split("-")[1],n=+e.split("-")[0];return new Date(n,r-1,t)},e.isValidDate=function(e){return e instanceof Date&&!isNaN(e.getTime())},e.ajustDate=function(e){return e instanceof Date?e:e?this.queryParamToDate(e.split("T")[0]):e},e.ajustDateToModel=function(e,t){if(void 0===e&&(e={}),e.hasOwnProperty(t)&&e[t]){if(e[t].indexOf("T")>=0)return new Date(e[t]);var r=+e[t].split("-")[2],n=+e[t].split("-")[1],o=+e[t].split("-")[0];return new Date(o,n-1,r)}return null},e.pad=function(e){return e<10?"0"+e:e},e}(),g=function(){function e(e,t,r){this.literals={},this.poNotification=e,this.poI18nPipe=t,this.literals=r}return e.prototype.makeDisclaimer=function(e,t,r,n,o){return void 0===r&&(r=!1),void 0===n&&(n=!1),void 0===o&&(o=!1),null==t||o&&""===t?{label:"",property:"",value:""}:{hideClose:r,label:this.literals[e]+": "+(n?this.literals[t]:t),property:""+e,value:""+t}},e.prototype.makeDisclaimerFromNumber=function(e,t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),null==t||n&&0===t?{label:"",property:"",value:""}:{hideClose:r,label:this.literals[e]+": "+t,property:""+e,value:""+t}},e.prototype.makeDisclaimerFromBoolean=function(e,t,r){return void 0===r&&(r=!1),null==t?{label:"",property:"",value:""}:{hideClose:r,label:this.literals[e]+": "+(t?this.literals.yes:this.literals.no),property:""+e,value:""+t}},e.prototype.makeDisclaimerFromDate=function(e,t,r){void 0===r&&(r=!1);var n=this.ajustDate(t);return this.isValidDate(n)?{hideClose:r,label:this.literals[e]+": "+n.toLocaleDateString(),property:""+e,value:""+this.dateToQueryParam(n)}:{label:"",property:"",value:""}},e.prototype.makeDisclaimerFromMultiSelect=function(e,t,r,n,o){var i=this;void 0===r&&(r=0),void 0===n&&(n=!1),void 0===o&&(o=!1);var a="",l="";return t?(0===t.length||r>0&&t.length===r?(a=this.literals.all,l="all"):t.map((function(e){""!==a&&(a+=", "),""!==l&&(l+=","),a=""+a+(o?i.literals[e]:e),l=""+l+e})),{hideClose:n,label:this.literals[e]+": "+a,property:""+e,value:""+l}):{label:"",property:"",value:""}},e.prototype.makeDisclaimerFromMultiSelectNumber=function(e,t,r,n,o){void 0===n&&(n=0),void 0===o&&(o=!1);var i="",a="",l=null;return t&&r?(0===t.length||n>0&&t.length===n?(i=this.literals.all,a="all"):t.map((function(e){""!==i&&(i+=", "),""!==a&&(a+=","),l=r.find((function(t){return t.value===e})),i=""+i+(l?l.label:e),a=""+a+e})),{hideClose:o,label:this.literals[e]+": "+i,property:""+e,value:""+a}):{label:"",property:"",value:""}},e.prototype.makeDisclaimerFromCheckboxGroup=function(e,t,r,n){var o=this;void 0===r&&(r=0),void 0===n&&(n=!1);var i="",a="";return t?(0===t.length?(i=this.literals.none,a="none"):r>0&&t.length===r?(i=this.literals.all,a="all"):t.map((function(e){""!==i&&(i+=", "),""!==a&&(a+=","),i=""+i+o.literals[e],a=""+a+e})),{hideClose:n,label:this.literals[e]+": "+i,property:""+e,value:""+a}):{label:"",property:"",value:""}},e.prototype.makeDisclaimerFromRangeCharacter=function(e,t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!0),null!==t.valInitial&&void 0!==t.valInitial||(t.valInitial=t.iniInitial),null!==t.valFinal&&void 0!==t.valFinal||(t.valFinal=t.iniFinal),n&&t.iniInitial===t.valInitial&&t.iniFinal===t.valFinal?{label:"",property:"",value:""}:{hideClose:r,label:this.poI18nPipe.transform(this.literals.filterRange,[this.literals[e],"'"+t.valInitial+"'","'"+t.valFinal+"'"]),property:""+e,value:t.valInitial+";"+t.valFinal}},e.prototype.makeDisclaimerFromRangeNumber=function(e,t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!0),null!==t.valInitial&&void 0!==t.valInitial||(t.valInitial=t.iniInitial),null!==t.valFinal&&void 0!==t.valFinal||(t.valFinal=t.iniFinal),n&&t.iniInitial===t.valInitial&&t.iniFinal===t.valFinal?{label:"",property:"",value:""}:{hideClose:r,label:this.poI18nPipe.transform(this.literals.filterRange,[this.literals[e],t.valInitial,t.valFinal]),property:""+e,value:t.valInitial+";"+t.valFinal}},e.prototype.makeDisclaimerFromRangeDate=function(e,t,r,n){void 0===r&&(r=!1),void 0===n&&(n=!0);var o=this.ajustDate(t.valInitial),i=this.ajustDate(t.valFinal);return this.isValidDate(o)||(o=t.iniInitial,t.valInitial=t.iniInitial),this.isValidDate(i)||(i=t.iniFinal,t.valFinal=t.iniFinal),n&&this.dateToQueryParam(t.iniInitial)===this.dateToQueryParam(o)&&this.dateToQueryParam(t.iniFinal)===this.dateToQueryParam(i)?{label:"",property:"",value:""}:{hideClose:r,label:this.poI18nPipe.transform(this.literals.filterRange,[this.literals[e],o.toLocaleDateString(),i.toLocaleDateString()]),property:""+e,value:this.dateToQueryParam(o)+";"+this.dateToQueryParam(i)}},e.prototype.atzCharFromDisclamer=function(e,t,r){var n=r;return e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&(n=e.value,!0))})),n},e.prototype.atzNumberFromDisclamer=function(e,t,r){var n=r;return e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&(n=e.value,!0))})),n},e.prototype.atzBooleanFromDisclamer=function(e,t,r){var n=r;if(e&&e.length>0){var o=e.find((function(e){return e.property===t}));if(o&&null!==o.value&&void 0!==o.value)return"true"===o.value}return n},e.prototype.atzDateFromDisclamer=function(e,t,r){var n=this,o=this.ajustDate(r);return e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&(o=n.ajustDate(e.value),!0))})),o},e.prototype.atzMultiSelectCharFromDisclamer=function(e,t,r){return this.atzMultiSelectFromDisclamer("char",e,t,r)},e.prototype.atzMultiSelectNumberFromDisclamer=function(e,t,r){return this.atzMultiSelectFromDisclamer("number",e,t,r)},e.prototype.atzMultiSelectFromDisclamer=function(e,t,r,n){var o=[];return n.map((function(e){o.push(e.value)})),t&&t.length>0&&t.find((function(t){return t.property===r&&(null!==t.value&&"all"!==t.value&&"none"!==t.value&&(o=[],t.value.split(",").forEach((function(t){"char"===e&&o.push(t),"number"===e&&o.push(+t)})),!0))})),o},e.prototype.atzCheckboxFromDisclamer=function(e,t,r){var n=[];return r.map((function(e){n.push(e.value)})),e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&"all"!==e.value&&"none"!==e.value&&(n=[],e.value.split(",").forEach((function(e){n.push(e)})),!0))})),n},e.prototype.atzRangeCharFromDisclamer=function(e,t,r){var n="";return e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&(n=e.value,!0))})),this.atzRangeCharFromQueryParam(n,r)},e.prototype.atzRangeNumFromDisclamer=function(e,t,r){var n="";return e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&(n=e.value,!0))})),this.atzRangeNumFromQueryParam(n,r)},e.prototype.atzRangeDateFromDisclamer=function(e,t,r){var n="";return e&&e.length>0&&e.find((function(e){return e.property===t&&(null!==e.value&&(n=e.value,!0))})),this.atzRangeDateFromQueryParam(n,r)},e.prototype.atzRangeCharFromQueryParam=function(e,t){return t.valInitial=t.iniInitial,t.valFinal=t.iniFinal,e&&""!==e?(t.valInitial=e.split(";")[0],t.valFinal=e.split(";")[1],null!==t.valFinal&&void 0!==t.valFinal||(t.valFinal=t.iniFinal),t):t},e.prototype.atzRangeNumFromQueryParam=function(e,t){return t.valInitial=t.iniInitial,t.valFinal=t.iniFinal,e&&""!==e?(t.valInitial=+e.split(";")[0],t.valFinal=+e.split(";")[1],null!==t.valFinal&&void 0!==t.valFinal||(t.valFinal=t.iniFinal),t):t},e.prototype.atzRangeDateFromQueryParam=function(e,t){return t.valInitial=t.iniInitial,t.valFinal=t.iniFinal,e&&""!==e?(t.valInitial=this.queryParamToDate(e.split(";")[0]),t.valFinal=this.queryParamToDate(e.split(";")[1]),null!==t.valFinal&&void 0!==t.valFinal||(t.valFinal=t.iniFinal),t):t},e.prototype.dateToQueryParam=function(e){var t=e.getDate(),r=e.getMonth()+1;return e.getFullYear()+"-"+this.pad(r)+"-"+this.pad(t)},e.prototype.queryParamToDate=function(e){var t=+e.split("-")[2],r=+e.split("-")[1],n=+e.split("-")[0];return new Date(n,r-1,t)},e.prototype.isValidDate=function(e){return e instanceof Date&&!isNaN(e.getTime())},e.prototype.ajustDate=function(e){return e instanceof Date?e:e?this.queryParamToDate(e.split("T")[0]):e},e.prototype.pad=function(e){return e<10?"0"+e:e},e}();var y=function(){function e(e,t,r){this.literals={},this.poNotification=e,this.poI18nPipe=t,this.literals=r,this.disclaimerUtil=new g(this.poNotification,this.poI18nPipe,this.literals)}return e.prototype.vldFieldCharacter=function(e,t){return!(!t||""===t.trim())||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldRequered,[this.literals[e]])}),!1)},e.prototype.vldRangeCharacter=function(e,t,r,n){return!r||!n||(!(r.trim().toUpperCase()>n.trim().toUpperCase())||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldRange,[this.literals[e],this.literals[t]])}),!1))},e.prototype.vldFieldNumber=function(e,t,r,n){return void 0===r&&(r=!1),void 0===n&&(n=!1),!(r&&!this.vldValueOfNumber(e,t))&&(!(!t||t<=0)||(0===t&&!0===n||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldRequered,[this.literals[e]])}),!1)))},e.prototype.vldValueOfNumber=function(e,t){return!(t&&t<0)||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldNumber,[t.toString(),this.literals[e]])}),!1)},e.prototype.vldFieldPercent=function(e,t,r){return void 0===r&&(r=!1),!(r&&!this.vldValueOfPercent(e,t))&&!!this.vldFieldNumber(e,t)},e.prototype.vldValueOfPercent=function(e,t){return t&&t<0?(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldNumber,[t.toString(),this.literals[e]])}),!1):!(t&&t>100)||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldNumber,[t.toString(),this.literals[e]])}),!1)},e.prototype.vldRangeNumber=function(e,t,r,n){return r||(r=0),n||(n=0),!(r>n)||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldRange,[this.literals[e],this.literals[t]])}),!1)},e.prototype.vldFieldDate=function(e,t){var r=this.disclaimerUtil.ajustDate(t);return!!this.disclaimerUtil.isValidDate(r)||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldDate,[this.literals[e]])}),!1)},e.prototype.vldRangeDate=function(e,t,r,n){return!r||!n||(!(this.disclaimerUtil.ajustDate(r).getTime()>this.disclaimerUtil.ajustDate(n).getTime())||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldRange,[this.literals[e],this.literals[t]])}),!1))},e.prototype.vldFieldMultiSelect=function(e,t){return!(!t||0===t.length)||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldSelected,[this.literals[e]])}),!1)},e.prototype.vldFieldCheckbox=function(e,t){return!(!t||0===t.length)||(this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldSelected,[this.literals[e]])}),!1)},e.prototype.vldFieldFormat=function(e,t,r,n){void 0===n&&(n=!1);var o,i=!0;if(!t)return i;if(n&&(o=r,r=r.replace(/\./g,"")),t.length!==r.length)i=!1;else for(var a=0;a<r.length;a++){if("9"===r[a]&&"9"!==t[a].replace(/[0-9]/,"9")){i=!1;break}if("!"===r[a]&&"A"!==t[a].replace(/[A-Z]/,"A")){i=!1;break}}return n&&(r=o),i||this.poNotification.error({message:this.poI18nPipe.transform(this.literals.fieldVldFormat,[this.literals[e],r])}),i},e}();var b=function(){function e(){}return e.makeFilterRangeCharacter=function(e,t){return{iniInitial:e,iniFinal:t,valInitial:e,valFinal:t}},e.makeFilterRangeNumber=function(e,t){return{iniInitial:e,iniFinal:t,valInitial:e,valFinal:t}},e.makeFilterRangeDate=function(e,t){return{iniInitial:e,iniFinal:t,valInitial:e,valFinal:t}},e}();var x=function(){function e(e){this.literals={},this.literals=e}return e.listToArrayCharacter=function(e){var t=new Array;return e&&""!==e&&(t=e.split(",")),t},e.ArrayToListCharacter=function(e){var t="";return e&&e.length>0&&(t=e.join(",")),t},e.isEmpty=function(e){var t=!0;for(var r in e)e.hasOwnProperty(r)&&(t=!1);return t},e.getChartValues=function(e){var t,r,n;(r=void 0,n=void 0,e.map((function(e){void 0===r&&void 0===n?(r=e.data[0],n=e.data[0]):(e.data<n&&(n=e.data[0]),e.data>r&&(r=e.data[0]))})),r>0&&n>0&&(t={maxValue:r,minValue:0}),r>0&&n<0&&(t={maxValue:r,minValue:n}),r<0&&n<0)&&(t={maxValue:n/3*-1,minValue:n});(r>0&&0===n&&(t={maxValue:r,minValue:0}),0===r&&n<0)&&(t={maxValue:n/3*-1,minValue:n});return 0===r&&0===n&&(t={maxValue:void 0,minValue:void 0}),t.maxValue=Math.round(t.maxValue),t.minValue=Math.round(t.minValue),t},e.atzMultiSelectListByOptions=function(e,t){var r;return t?(r=new Array,t.map((function(t){t&&e.findIndex((function(e){return e.value===t}))>=0&&r.push(t)})),r):t},e.prototype.loadOptionsMultiSelect=function(e,t){var r=this;t&&t.map((function(t){t&&-1===e.findIndex((function(e){return e.value===t}))&&e.push({label:"all"===t?r.literals.all:t,value:t})}))},e.prototype.loadOptionsSelect=function(e,t,r){void 0===r&&(r=!1),t&&t&&-1===e.findIndex((function(e){return e.value===t}))&&e.push({label:r?this.literals[t]:t,value:t})},e.prototype.compareObjects=function(e,t){if(!e||!t)return!1;if(Object.getOwnPropertyNames(e).length!==Object.getOwnPropertyNames(t).length)return!1;for(var r in e)if("$"!==r.substr(0,1)&&"_"!==r.substr(0,1)&&e[r]!==t[r])return!1;return!0},e.prototype.referenceGeneration=function(e,t){var r,n=t.getDate(),o=t.getMonth()+1,i=t.getFullYear();return""+(""+this.pad(i)+this.pad(o)+this.pad(n)+e)+(r=(r=(r=btoa(""+(new Date).getTime())).replace(/[=]/g,"")).slice(r.length-3,r.length))},e.prototype.pad=function(e){return e<10?"0"+e:e>99?(e+"").slice(2,4):e},e.prototype.focusInternalInput=function(e){document.getElementById(e).getElementsByClassName("po-input")[0].focus()},e}();var I=function(){function e(){}return e.downloadFile=function(e,t,r,n){var o=(n=!1!==n)?this.b64toBlob(e,r):e;this.download(o,t)},e.downloadData=function(e,t){if(void 0===t&&(t=null),e){t||(t=new F),t.fileName||(t.fileName="data.csv"),t.literals||(t.literals={}),t.columnDelimiter||(t.columnDelimiter=";"),t.columnList||(t.columnList=[]),t.columnExclude||(t.columnExclude=[]);var r=btoa(this.jsonToString(e,t));this.downloadFile(r,t.fileName,"text/csv")}},e.download=function(e,t){var r=[e],n=document.createElement("a"),o=window.URL.createObjectURL(new Blob(r,{type:e.type}));navigator.userAgent.toUpperCase().indexOf(".NET")>0||navigator.userAgent.toUpperCase().indexOf("EDGE")>0?window.navigator.msSaveOrOpenBlob(e,t):(n.href=o,n.setAttribute("download",t),document.body.appendChild(n),n.click(),window.URL.revokeObjectURL(o),n.remove())},e.b64toBlob=function(e,t,r){t=t||"",r=r||512;for(var n=atob(e),o=[],i=0;i<n.length;i+=r){for(var a=n.slice(i,i+r),l=new Array(a.length),s=0;s<a.length;s++)l[s]=a.charCodeAt(s);var p=new Uint8Array(l);o.push(p)}return new Blob(o,{type:t})},e.jsonToString=function(e,t){if(!e||0===e.length)return"";var r,n=null,o=[];return(t.columnList&&t.columnList.length>0?t.columnList:Object.keys(e[0])).forEach((function(e){r=!0,t.columnExclude&&t.columnExclude.length>0&&-1!==t.columnExclude.indexOf(e)&&(r=!1),r&&(o.push(e),n=n?n+t.columnDelimiter:"",n+=t.literals[e]?t.literals[e]:e)})),e.reduce((function(e,r){var n=!0,i=null;return o.forEach((function(o){switch(n||(e+=t.columnDelimiter),null==(i=r[o])&&(i=""),typeof i){case"number":i=i.toLocaleString();break;case"boolean":i=t.literals[""+i]?t.literals[""+i]:i;break;case"object":i=JSON.stringify(i)}e+=i,n=!1})),e+"\n"}),n+"\n")},e}();var F=function(){};var S=function(){};var D=function(){};var P=function(){};var E=function(){function e(e){this.http=e,this.headers={headers:{"X-PO-Screen-Lock":"true"}},this.urlCadServidor="/dts/datasul-rest/resources/prg/btb/v1/servidoresExecucao",this.urlJobScheduler="/dts/datasul-rest/resources/prg/framework/v1/jobScheduler",this.urlJobExecution="/dts/datasul-rest/resources/prg/framework/v1/jobExecution"}return e.prototype.getFilteredItems=function(e){var t=new Array;return t.push("pageSize="+e.pageSize.toString()),t.push("page="+e.page.toString()),e.filter&&e.filter.length>0&&t.push("quickSearch="+e.filter),this.http.get(this.urlCadServidor+"?"+t.join("&"))},e.prototype.getObjectByValue=function(e){return this.http.get(this.urlCadServidor+"/"+e,this.headers)},e.prototype.createExecution=function(e,t){var r=JSON.parse(JSON.stringify(e).replace(/\\\\/g,"*|"));return t?this.http.post(""+this.urlJobScheduler,r,this.headers):this.http.post(""+this.urlJobScheduler,r)},e.prototype.createExecutionForNow=function(e,t){var r,n=new Date,o=JSON.parse(JSON.stringify(e).replace(/\\\\/g,"*|"));return o.businessParams&&0!==o.businessParams.length||(o.businessParams=[{chave:"",valor:""}]),(r={}).status="active",r.processID=o.programName,r.firstExecution=n.getFullYear()+"-"+(n.getMonth()+1)+"-"+n.getDate()+"T"+this.addZero(n.getHours())+":"+this.addZero(n.getMinutes())+":00.000Z",r.recurrent=!1,r.executionParameter={parametros:[{chave:"rpwServer",valor:o.executionServer},{chave:"RPW_PROGRAM",valor:o.externalName},{chave:"RPW_PRG_EMS5",valor:o.programEMS5?"yes":"no"},{chave:"RPW_PRG_VERS",valor:o.programVersion},{parametros_negocio:o.businessParams}]},t?this.http.post(""+this.urlJobScheduler,r,this.headers):this.http.post(""+this.urlJobScheduler,r)},e.prototype.getExecutionByJobScheduleID=function(e,t){var r=this;void 0===t&&(t=!1);var n=this.urlJobExecution+"?jobScheduleID="+e;return this.getExecution(n,t).pipe(o.map((function(e){return r.transformExecution("jobScheduleID",e)})))},e.prototype.getExecutionByExecutionID=function(e,t){var r=this;void 0===t&&(t=!1);var n=this.urlJobExecution+"/"+e;return this.getExecution(n,t).pipe(o.map((function(e){return r.transformExecution("executionID",e)})))},e.prototype.getExecution=function(e,t){return t?this.http.get(e,this.headers):this.http.get(e)},e.prototype.transformExecution=function(e,t){if(t&&t.items&&0!==t.items.length){t=t.items[0];var r=new D;return r.jobScheduleID=t.jobScheduleID,r.executionID=t.executionID,r.startedDate=t.startedDate,r.error=t.error,r.status=t.status,r}},e.prototype.followUpExcByJobScheduleID=function(e,t,r,n){void 0===n&&(n=!1),this.followUpExecution("jobScheduleID",e,t,r,n)},e.prototype.followUpExcByExecutionID=function(e,t,r,n){void 0===n&&(n=!1),this.followUpExecution("executionID",e,t,r,n)},e.prototype.followUpExecution=function(e,t,r,n,o){var i=this;this.jobExecutionSubscription$=null;var a=setInterval((function(){var r=new D;r.jobScheduleID="jobScheduleID"===e?t:"",r.executionID="executionID"===e?t:"",r.startedDate=null,r.error="",r.status="PENDING",i.jobExecutionSubscription$||("jobScheduleID"===e&&(i.jobExecutionSubscription$=i.getExecutionByJobScheduleID(t,o).subscribe((function(e){i.followUpExecReturnOk(t,r,e,a,n)}),(function(e){i.followUpExecReturnError(e,r,a,n)}))),"executionID"===e&&(i.jobExecutionSubscription$=i.getExecutionByExecutionID(t,o).subscribe((function(e){i.followUpExecReturnOk(t,r,e,a,n)}),(function(e){i.followUpExecReturnError(e,r,a,n)}))))}),r)},e.prototype.followUpExecReturnOk=function(e,t,r,n,o){r?t=r:(t.error="Agendamento não encontrado com ID: "+e,t.status="FAILURE"),o(t)&&"SUCCESS"!==t.status&&"FAILURE"!==t.status||clearInterval(n),this.jobExecutionSubscription$=null},e.prototype.followUpExecReturnError=function(e,t,n,o){var i="";e instanceof r.HttpErrorResponse?(i=e.message,e.error&&(i="",e.error.code&&(i=e.error.code),e.error.message&&(i=i+" - "+e.error.message),e.error.detailedMessage&&(i=i+" - "+e.error.detailedMessage))):i=e,t.error=i,t.status="FAILURE",o(t),clearInterval(n),this.jobExecutionSubscription$=null},e.prototype.addZero=function(e){var t=""+e;return e<10&&(t="0"+e),t},e}();E.decorators=[{type:t.Injectable}],E.ctorParameters=function(){return[{type:r.HttpClient}]};var j=function(){function e(e,r,n){this.poI18nService=e,this.rpwService=r,this.poNotification=n,this.programEMS5=!1,this.programVersion="",this.disabledParams=!1,this.loading=!1,this.endExecution=new t.EventEmitter,this.jsonObject={},this.literals={}}return e.prototype.ngOnInit=function(){this.setupComponents()},e.prototype.setupComponents=function(){this.executionTypeOptions=[{label:"Executar Hoje",value:1},{label:"Agendar Execução",value:2}],this.frequencyOptions=[{label:"Uma vez no dia",value:"no"},{label:"Várias vezes no dia",value:"yes"}],this.frequencyTypeOptions=[{label:"Hora(s)",value:"hour"},{label:"Minuto(s)",value:"minute"}],this.weeklyOptions=[{label:"Domingo",value:"Sunday"},{label:"Segunda",value:"Monday"},{label:"Terça",value:"Tuesday"},{label:"Quarta",value:"Wednesday"},{label:"Quinta",value:"Thursday"},{label:"Sexta",value:"Friday"},{label:"Sábado",value:"Saturday"}],this.zoomRpwServiceColumns=[{property:"code",label:"Servidor",type:"string",width:"20%"},{property:"name",label:"Descrição",type:"string",width:"80%"}],this.model=new S,this.model.executionType=1,this.model.repeatType=1,this.model.repeatExecution=!1},e.prototype.setScheduleParameters=function(e){e&&(this.model=e)},e.prototype.fieldRpwServiceFormat=function(e){return e.code+" - "+e.name},e.prototype.isExecutionSchedule=function(){return 2===this.model.executionType},e.prototype.isRepeatExecution=function(){return this.model.repeatExecution},e.prototype.isFrenquency=function(){return"yes"===this.model.frequency},e.prototype.changeRepeatExecution=function(){var e=new Date;this.model.execAppointHourInit||(this.model.execAppointHourInit=this.addZero(e.getHours())+":"+this.addZero(e.getMinutes())),this.model.execAppointHourFinal||(this.model.execAppointHourFinal=this.addZero(e.getHours())+":"+this.addZero(e.getMinutes())),this.model.selectWeeklys=[],this.model.dayOfMonth=0,this.model.frequency="no",this.model.frequencyType="hour",this.model.frequencyValue=0},e.prototype.changeExecutionType=function(){var e=new Date;this.model.execAppointDate=e,this.model.execAppointHour=this.addZero(e.getHours())+":"+this.addZero(e.getMinutes())},e.prototype.changeTypeFrequency=function(){},e.prototype.getActiveTab=function(e){return this.model.repeatType===e},e.prototype.setActiveTab=function(e){this.model.repeatType=e},e.prototype.addZero=function(e){var t=""+e;return e<10&&(t="0"+e),t},e.prototype.executeSchedule=function(){var e=this;if(!this.disabledParams&&this.validate()){if(this.jsonObject={},this.jsonObject.status="active",this.jsonObject.processID=this.programName,this.jsonObject.recurrent=this.model.repeatExecution,this.jsonObject.executionParameter={},1===this.model.executionType){var t=new Date;this.jsonObject.firstExecution=t.getFullYear()+"-"+(t.getMonth()+1)+"-"+t.getDate()+"T"+this.addZero(t.getHours())+":"+this.addZero(t.getMinutes())+":00.000Z"}2===this.model.executionType&&(this.jsonObject.firstExecution=this.model.execAppointDate+"T"+this.model.execAppointHour+":00.000Z"),this.jsonObject.executionParameter.parametros=[],this.jsonObject.executionParameter.parametros[0]={chave:"rpwServer",valor:this.model.executionServer},this.jsonObject.executionParameter.parametros[1]={chave:"RPW_PROGRAM",valor:this.externalName},this.jsonObject.executionParameter.parametros[2]={chave:"RPW_PRG_EMS5",valor:this.programEMS5?"yes":"no"},this.jsonObject.executionParameter.parametros[3]={chave:"RPW_PRG_VERS",valor:this.programVersion},this.jsonObject.executionParameter.parametros[4]={},this.jsonObject.executionParameter.parametros[4].parametros_negocio=this.parameters,this.rpwService.createExecution(this.jsonObject,this.loading).subscribe((function(){e.poNotification.success("Agendamento realizado com sucesso !")})),this.model.repeatExecution&&(1===this.model.repeatType&&(this.jsonObject.daily={hour:this.getHourOrMinute(this.model.execAppointHourInit,"h"),minute:this.getHourOrMinute(this.model.execAppointHourInit,"m")}),2===this.model.repeatType&&(this.jsonObject.weekly={hour:this.getHourOrMinute(this.model.execAppointHourInit,"h"),minute:this.getHourOrMinute(this.model.execAppointHourInit,"m"),daysOfWeek:this.model.selectWeeklys}),3===this.model.repeatType&&(this.jsonObject.monthly={hour:this.getHourOrMinute(this.model.execAppointHourInit,"h"),minute:this.getHourOrMinute(this.model.execAppointHourInit,"m"),day:this.model.dayOfMonth}),this.isFrenquency()&&(this.jsonObject.rangeExecutions={frequency:{type:this.model.frequencyType,value:this.model.frequencyValue},rangeLimit:{hour:this.getHourOrMinute(this.model.execAppointHourFinal,"h"),minute:this.getHourOrMinute(this.model.execAppointHourFinal,"m")}}),this.rpwService.createExecution(this.jsonObject,this.loading).subscribe((function(){}))),this.endExecution.emit(this.model)}},e.prototype.getHourOrMinute=function(e,t){return"h"===t?+e.substring(0,2):"m"===t?+e.substring(3,6):void 0},e.prototype.compareHour=function(e,t){return e!==t&&(this.getHourOrMinute(e,"h")<this.getHourOrMinute(t,"h")||!(this.getHourOrMinute(e,"m")>this.getHourOrMinute(t,"m")))},e.prototype.validate=function(){if(!this.scheduleExecutionForm.valid)return this.poNotification.error("Verifique as inconsistências em tela."),!1;if(!this.model.executionServer)return this.poNotification.error("Servidor de Execução não foi informado."),!1;if(this.isExecutionSchedule()&&(!this.model.execAppointDate||!this.model.execAppointHour))return this.poNotification.error("Informar a data e a hora para agendamento da execução."),!1;if(this.model.repeatExecution){if(!this.model.execAppointHourInit)return this.poNotification.error("Informar a hora de início para a execução."),!1;if(2===this.model.repeatType&&0===this.model.selectWeeklys.length)return this.poNotification.error("Informar os dias da semana para a execução."),!1;if(3===this.model.repeatType&&!this.model.dayOfMonth)return this.poNotification.error("Informar o dia para a execução."),!1;if(this.isFrenquency()){if(!this.compareHour(this.model.execAppointHourInit,this.model.execAppointHourFinal))return this.poNotification.error("Hora Fim deve ser maior que Hora Início."),!1;if(0===this.model.frequencyValue)return this.poNotification.error("Informar a frequência de execução (A cada hora/minuto)."),!1}}return!0},e}();j.decorators=[{type:t.Component,args:[{selector:"app-totvs-schedule-execution",template:'<form #scheduleExecutionForm="ngForm">\r\n <div class="po-row po-sm-12 po-md-12 po-lg-12 po-xl-12">\r\n <po-radio-group \r\n class="po-sm-12 po-md-12 po-lg-12 po-xl-12"\r\n name="executionType"\r\n p-label="Data de Execução"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.executionType"\r\n [p-options]="executionTypeOptions"\r\n (p-change)="changeExecutionType()">\r\n </po-radio-group>\r\n\r\n <po-datepicker *ngIf=isExecutionSchedule()\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="model.execAppointDate"\r\n p-label="Agendar para"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointDate">\r\n </po-datepicker>\r\n\r\n <po-input *ngIf=isExecutionSchedule()\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHour"\r\n p-label="Hora"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHour">\r\n </po-input>\r\n </div>\r\n\r\n <div class="po-row po-sm-12 po-md-12 po-lg-12 po-xl-12">\r\n <po-lookup\r\n class="po-sm-12 po-md-12 po-lg-12 po-xl-12"\r\n name="executionServer"\r\n p-label="Servidor de Execução"\r\n p-placeholder="Servidor de Execução"\r\n [p-columns]="zoomRpwServiceColumns"\r\n [p-field-format]="fieldRpwServiceFormat"\r\n [p-filter-service]="rpwService"\r\n p-field-label="name"\r\n p-field-value="code"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.executionServer">\r\n </po-lookup>\r\n </div>\r\n\r\n <div class="po-row po-sm-12 po-md-12 po-lg-12 po-xl-12">\r\n <po-switch\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="repeatExecution"\r\n p-label="Repetir ocorrência ?"\r\n p-label-off="Não"\r\n p-label-on="Sim"\r\n [(ngModel)]="model.repeatExecution"\r\n [p-disabled]="disabledParams"\r\n (click)="changeRepeatExecution()">\r\n </po-switch>\r\n </div>\r\n\r\n <div class="po-row" *ngIf="isRepeatExecution()">\r\n \r\n <po-tabs>\r\n\r\n <po-tab \r\n p-label="Diária" \r\n [p-active]="getActiveTab(1)" \r\n (p-click)="setActiveTab(1)">\r\n\r\n <div class="po-sm-6 po-md-6 po-lg-6 po-xl-6">\r\n <po-radio-group \r\n class="po-sm-12 po-md-12 po-lg-12 po-xl-12"\r\n name="frequencyDaily"\r\n p-label="Frequência"\r\n p-columns=1\r\n [(ngModel)]="model.frequency"\r\n [p-disabled]="disabledParams"\r\n [p-options]="frequencyOptions"\r\n (p-change)="changeTypeFrequency()">\r\n </po-radio-group>\r\n </div>\r\n \r\n <div class="po-sm-6 po-md-6 po-lg-6 po-xl-6"> \r\n <po-input\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHourInitDaily"\r\n p-label="Hora Início"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHourInit">\r\n </po-input>\r\n \r\n <po-input *ngIf="isFrenquency()"\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHourFinalDaily"\r\n p-label="Hora Fim"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHourFinal">\r\n </po-input>\r\n \r\n <po-number *ngIf="isFrenquency()"\r\n class="po-sm-5 po-md-5 po-lg-5 po-xl-5"\r\n name="frequencyValueDaily"\r\n p-label="A cada"\r\n p-minlength="1"\r\n p-maxlength="3"\r\n p-min="0"\r\n p-max="999"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.frequencyValue">\r\n </po-number>\r\n \r\n <po-select *ngIf="isFrenquency()"\r\n class="po-mt-3 po-sm-7 po-md-7 po-lg-7 po-xl-7"\r\n name="frequencyTypeDaily"\r\n p-label=""\r\n [p-options]="frequencyTypeOptions"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.frequencyType">\r\n </po-select>\r\n </div>\r\n </po-tab>\r\n\r\n <po-tab \r\n p-label="Semanal"\r\n [p-active]="getActiveTab(2)"\r\n (p-click)="setActiveTab(2)">\r\n\r\n <div class="po-row po-sm-12 po-md-12 po-lg-12 po-xl-12">\r\n <po-multiselect\r\n class="po-sm-12 po-md-12 po-lg-12 po-xl-12"\r\n name="selectWeeklys"\r\n p-label="Dias da Semana"\r\n p-placeholder="Escolha os dias da semana"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.selectWeeklys"\r\n [p-options]="weeklyOptions">\r\n </po-multiselect>\r\n </div>\r\n\r\n <div class="po-sm-6 po-md-6 po-lg-6 po-xl-6">\r\n <po-radio-group \r\n class="po-sm-12 po-md-12 po-lg-12 po-xl-12"\r\n name="frequencyWeekly"\r\n p-label="Frequência"\r\n p-columns=1\r\n [(ngModel)]="model.frequency"\r\n [p-disabled]="disabledParams"\r\n [p-options]="frequencyOptions"\r\n (p-change)="changeTypeFrequency()">\r\n </po-radio-group>\r\n </div>\r\n\r\n <div class="po-sm-6 po-md-6 po-lg-6 po-xl-6">\r\n <po-input\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHourInitWeekly"\r\n p-label="Hora Início"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHourInit">\r\n </po-input>\r\n\r\n <po-input *ngIf="isFrenquency()"\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHourFinalWeekly"\r\n p-label="Hora Fim"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHourFinal">\r\n </po-input>\r\n\r\n <po-number *ngIf="isFrenquency()"\r\n class="po-sm-5 po-md-5 po-lg-5 po-xl-5"\r\n name="frequencyValueWeekly"\r\n p-label="A cada"\r\n p-minlength="1"\r\n p-maxlength="3"\r\n p-min="0"\r\n p-max="999"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.frequencyValue">\r\n </po-number>\r\n\r\n <po-select *ngIf="isFrenquency()"\r\n class="po-mt-3 po-sm-7 po-md-7 po-lg-7 po-xl-7"\r\n name="frequencyTypeWeekly"\r\n p-label=""\r\n [p-options]="frequencyTypeOptions"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.frequencyType">\r\n </po-select>\r\n </div>\r\n </po-tab>\r\n\r\n <po-tab \r\n p-label="Mensal" \r\n [p-active]="getActiveTab(3)" \r\n (p-click)="setActiveTab(3)">\r\n\r\n <div class="po-row po-sm-12 po-md-12 po-lg-12 po-xl-12">\r\n <po-number\r\n class="po-sm-3 po-md-3 po-lg-3 po-xl-3"\r\n name="dayOfMonth"\r\n p-label="Dia do mês"\r\n p-minlength="1"\r\n p-maxlength="2"\r\n p-min="0"\r\n p-max="31"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.dayOfMonth">\r\n </po-number>\r\n </div>\r\n\r\n <div class="po-row po-sm-6 po-md-6 po-lg-6 po-xl-6">\r\n <po-radio-group \r\n class="po-sm-12 po-md-12 po-lg-12 po-xl-12"\r\n name="frequencyMonthly"\r\n p-label="Frequência"\r\n p-columns=1\r\n [(ngModel)]="model.frequency"\r\n [p-disabled]="disabledParams"\r\n [p-options]="frequencyOptions"\r\n (p-change)="changeTypeFrequency()">\r\n </po-radio-group>\r\n </div>\r\n\r\n <div class="po-row po-sm-6 po-md-6 po-lg-6 po-xl-6">\r\n <po-input\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHourInitMonthly"\r\n p-label="Hora Início"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHourInit">\r\n </po-input>\r\n\r\n <po-input *ngIf="isFrenquency()"\r\n class="po-sm-6 po-md-6 po-lg-6 po-xl-6"\r\n name="execAppointHourFinalWeekly"\r\n p-label="Hora Fim"\r\n p-mask="99:99"\r\n p-mask-format-model="true"\r\n p-pattern="^([0-9]|0[0-9]|1[0-9]|2[0-3]):[0-5][0-9]$"\r\n p-error-pattern="Hora inválida"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.execAppointHourFinal">\r\n </po-input>\r\n\r\n <po-number *ngIf="isFrenquency()"\r\n class="po-sm-5 po-md-5 po-lg-5 po-xl-5"\r\n name="frequencyValueWeekly"\r\n p-label="A cada"\r\n p-minlength="1"\r\n p-maxlength="3"\r\n p-min="0"\r\n p-max="999"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.frequencyValue">\r\n </po-number>\r\n\r\n <po-select *ngIf="isFrenquency()"\r\n class="po-mt-3 po-sm-7 po-md-7 po-lg-7 po-xl-7"\r\n name="frequencyTypeWeekly"\r\n p-label=""\r\n [p-options]="frequencyTypeOptions"\r\n [p-disabled]="disabledParams"\r\n [(ngModel)]="model.frequencyType">\r\n </po-select>\r\n </div>\r\n </po-tab>\r\n </po-tabs>\r\n </div>\r\n\r\n <div class="po-sm-12 po-md-12 po-lg-12 po-xl-12" style="padding-top: 15px;">\r\n <po-button\r\n style="float: right;"\r\n p-label="Gerar Agendamento RPW"\r\n [p-disabled]="disabledParams"\r\n (click)="executeSchedule()">\r\n </po-button>\r\n </div>\r\n</form>\r\n',styles:[""]}]}],j.ctorParameters=function(){return[{type:i.PoI18nService},{type:E},{type:i.PoNotificationService}]},j.propDecorators={scheduleExecutionForm:[{type:t.ViewChild,args:["scheduleExecutionForm",{static:!0}]}],programName:[{type:t.Input}],externalName:[{type:t.Input}],programEMS5:[{type:t.Input}],programVersion:[{type:t.Input}],parameters:[{type:t.Input}],disabledParams:[{type:t.Input}],loading:[{type:t.Input}],endExecution:[{type:t.Output}]};var w=function(){function e(){}return e.prototype.transform=function(e,t){void 0===t&&(t="dd/MM/yyyy");var r=e.split("-"),n=r[0],o=r[1],i=r[2];return t.replace("dd",i).replace("MM",o).replace("yyyy",n)},e}();w.decorators=[{type:t.Pipe,args:[{name:"dtsDateFormat"}]}];var O=function(){function e(){}return e.forRoot=function(){return{ngModule:e,providers:[E]}},e}();O.decorators=[{type:t.NgModule,args:[{declarations:[j,w],imports:[l.CommonModule,i.PoModule,a.FormsModule,r.HttpClientModule],exports:[j,w],providers:[E]}]}],e.BreadcrumbControlService=d,e.CacheParamsService=h,e.DateUtil=v,e.DisclaimerUtil=g,e.DownloadDataParams=F,e.DtsBackofficeUtilsModule=O,e.DtsDateFormatPipe=w,e.ExecutionParameters=P,e.ExecutionStatus=D,e.FieldValidationUtil=y,e.FileUtil=I,e.FilterRangeUtil=b,e.GenericFunctionsUtils=x,e.MenuDatasulService=m,e.ProfileService=u,e.ReportFormats={XLSX:"xlsx",PDF:"pdf",DOCX:"docx",HTML:"html"},e.ReportService=c,e.ScheduleParameters=S,e.TotvsScheduleExecutionComponent=j,e.TotvsScheduleExecutionService=E,e.TranslateService=f,e.UserLoginService=s,Object.defineProperty(e,"__esModule",{value:!0})}));
|
|
2
|
-
//# sourceMappingURL=dts-backoffice-util.umd.min.js.map
|