{"version":3,"sources":["contexts/CardContext.tsx","pages/Overview/AmbsHistoryCard/styles.module.css","pages/Overview/HealthHistoryCard/styles.module.css","components/DemandChart/styles.module.css","providers/index.ts","contexts/menuContext.ts","icons/Logo.tsx","icons/Hamburger.tsx","icons/Speedometer.tsx","icons/Globe.tsx","icons/List.tsx","icons/Warning.tsx","icons/Gear.tsx","icons/Exit.tsx","icons/Bell.tsx","icons/Expand.tsx","icons/NewExpand.tsx","icons/Graph.tsx","icons/Notepad.tsx","icons/People.tsx","icons/Checkbox.tsx","icons/Info.tsx","icons/RealTime.tsx","icons/Cronometer.tsx","icons/Clock.tsx","icons/CO2Icon.tsx","icons/Performance.tsx","icons/Paper.tsx","icons/Calendar.tsx","icons/CalendarSimple.tsx","icons/CalendarPlus.tsx","icons/ArrowBack.tsx","icons/ArrowNext.tsx","icons/Time.tsx","icons/Arrow.tsx","icons/AddImage.tsx","icons/Termometer.tsx","icons/TermometerSub.tsx","icons/Humidity.tsx","icons/Pressure.tsx","icons/Switch.tsx","icons/Close.tsx","icons/DownloadImage.tsx","icons/Timer.tsx","icons/RadialChart.tsx","icons/Power.tsx","icons/Kwh.tsx","icons/ButtonPower.tsx","icons/SubCooling.tsx","icons/SuperHeating.tsx","icons/Alert.tsx","icons/Add.tsx","icons/History.tsx","icons/DeleteOutline.tsx","icons/DeactivateUser.tsx","icons/ReactivateUser.tsx","icons/Edit.tsx","icons/EnergyIcon.tsx","icons/Save.tsx","icons/HealthMeter.tsx","icons/HealthIndexRed.tsx","icons/HealthIndexOrange.tsx","icons/HealthIndexYellow.tsx","icons/HealthIndexGreen.tsx","icons/HealthDisabled.tsx","icons/Magnifying.tsx","icons/Clients.tsx","icons/Admin.tsx","icons/Search.tsx","icons/SearchInput.tsx","icons/ExportDocument.tsx","icons/OutOfSpecification.tsx","icons/UrgentMaintenance.tsx","icons/OperatingCorrectly.tsx","icons/ImminentRisk.tsx","icons/HighTemperature.tsx","icons/LowTemperature.tsx","icons/DottedLine.tsx","icons/Line.tsx","icons/UnknownHealth.tsx","icons/UnknownHealthDark.tsx","icons/Accept.tsx","icons/ClientPanel.tsx","icons/ExportWorksheet.tsx","icons/ZoomOut.tsx","icons/ExportPdf.tsx","icons/Thunder.tsx","icons/OpenEye.tsx","icons/CloseEye.tsx","icons/NoSignal.tsx","icons/BadSignal.tsx","icons/RegularSignal.tsx","icons/GoodSignal.tsx","icons/GreatSignal.tsx","icons/Box.tsx","icons/Chip.tsx","icons/Layers.tsx","icons/WifiMiniOn.tsx","icons/WifiMiniOff.tsx","icons/ArrowUp.tsx","icons/ArrowDown.tsx","icons/Unit.tsx","icons/Statistics.tsx","icons/NewImminentRisk.tsx","icons/TemperatureIcon.tsx","icons/LightOn.tsx","icons/LightOff.tsx","icons/ExitButton.tsx","icons/Watch.tsx","icons/Pen.tsx","icons/VAVOpened.tsx","icons/VAVClosed.tsx","icons/Lock.tsx","icons/Cool.tsx","icons/Information.tsx","icons/LocalOperation.tsx","icons/RemoteAuto.tsx","icons/RemoteManual.tsx","icons/Fan.tsx","icons/Block.tsx","icons/EvapIcons.tsx","icons/ReferenceIcon.tsx","icons/ComparativeIcon.tsx","icons/Thermostat.tsx","icons/AddPlus.tsx","icons/NothingRegistered.tsx","icons/DeleteSimpleIcon.tsx","icons/Monitoring.tsx","icons/Port.tsx","icons/Dat.tsx","icons/CheckDevice.tsx","icons/PortEnable.tsx","icons/PortDisabled.tsx","icons/Filter.tsx","icons/Export.tsx","icons/Battery.tsx","icons/EnergyNobreakIcon.tsx","icons/ NobreakOffIcon.tsx","icons/BatteryFullIcon.tsx","icons/BatteryMidIcon.tsx","icons/BatteryLowIcon.tsx","icons/ElectricalNetwork.tsx","icons/NobreakIcon.tsx","icons/CircleCheckGreen.tsx","icons/CircleNotCheckRed.tsx","icons/CicleWarningYellow.tsx","icons/LuzAcesa.tsx","icons/LuzApagada.tsx","icons/CorrectIncorrectIcons.tsx","icons/BluePaper.tsx","icons/PenBlue.tsx","icons/TrashSample.tsx","icons/CompleteList.tsx","icons/CustomList.tsx","icons/ClockDuration.tsx","icons/ProgIcon.tsx","icons/FoldedSheet.tsx","icons/LinkIcon.tsx","icons/AlertSignal.tsx","icons/SimcardIcon.tsx","icons/PaperBloom.tsx","icons/EditPenPaper.tsx","icons/DeleteTrashIcon.tsx","icons/Collapse.tsx","icons/ExpandCard.tsx","icons/NewEditPaperWithPen.tsx","icons/PinIcon.tsx","icons/PlusRoundedIcon.tsx","icons/TrashRoundedIcon.tsx","icons/EditPenIcon.tsx","icons/SeeEyeIcon.tsx","icons/ImageIcon.tsx","icons/CheckIcon.tsx","icons/ZoomMoreIcon.tsx","icons/ZoomLessIcon.tsx","icons/ResetZoomIcon.tsx","icons/OrderIcon.tsx","icons/DateIcon.tsx","icons/FilterIconV2.tsx","icons/WarnIcon.tsx","icons/EditNotification.tsx","icons/DeleteNotification.tsx","icons/ClientNotification.tsx","icons/UnitNotification.tsx","icons/ArrowLeftIcon.tsx","icons/ArrowRightIcon.tsx","icons/UrgentHealth.tsx","icons/RiskHealth.tsx","icons/OutHealth.tsx","icons/CelciusWhiteLogo.tsx","icons/Seta.tsx","icons/ChillerIcon.tsx","icons/CelciusColorLogo.tsx","icons/SpringerLogo.tsx","icons/MachineIcon.tsx","icons/MonitoramentoIcon.tsx","icons/ArrowDownAnalisys.tsx","icons/NoWifi.tsx","icons/CompDisabled.tsx","icons/OnIcon.tsx","icons/FanBlueIcon.tsx","icons/ColumnIcon.tsx","icons/TimezoneIcon.tsx","icons/TimezoneDSTIcon.tsx","icons/ThermostatCircleIcon.tsx","icons/ThermostatSquareIcon.tsx","icons/Compressor.tsx","icons/InfoLink.tsx","icons/WaterOutlet.tsx","icons/WaterInlet.tsx","icons/OpenTab.tsx","icons/IconH_Index2.tsx","icons/IconH_Index4.tsx","icons/IconH_Index25.tsx","icons/IconH_Index50.tsx","icons/IconH_Index75.tsx","icons/IconH_Index100.tsx","icons/Trash.tsx","components/Card/styles.ts","components/Card/index.tsx","pages/404/index.tsx","pages/Admin/AdmCities/styles.ts","pages/Admin/AdmCities/index.tsx","assets/img/status_late.svg","assets/img/status_offline.svg","assets/img/status_online.svg","helpers/filterByColumns.ts","pages/Admin/AdmFirmware/styles.ts","pages/Admin/AdmFirmware/index.tsx","pages/ClientPanel/FormEditGroup.tsx","pages/Admin/AdminGroupAutomation/styles.ts","pages/Admin/AdminGroupAutomation/index.tsx","helpers/getObjetcs.ts","pages/Admin/ClientsList/styles.ts","pages/Admin/ClientsList/index.tsx","pages/Admin/ClientsListWrapper/index.tsx","pages/Admin/DevManufacts/styles.ts","pages/Admin/DevManufacts/index.tsx","pages/Admin/DevTools/styles.ts","pages/Admin/DevTools/ComandosDevel.tsx","pages/Admin/DevTools/IoTMonitoring.tsx","pages/Admin/DevTools/EcoModeDebug.tsx","pages/Admin/DevTools/index.tsx","pages/Admin/DUTIrList/styles.ts","pages/Admin/DUTIrList/index.tsx","pages/ClientPanel/styles.ts","helpers/scheduleData.ts","pages/ClientPanel/FormAssociateDevs.tsx","helpers/pasteHelper.tsx","pages/ClientPanel/FormEditClass.tsx","pages/ClientPanel/FormEditDut.tsx","pages/Analysis/SchedulesModals/RoomSchedule.tsx","pages/ClientPanel/FormEditRoomType.tsx","hooks/usePasswordToggle.tsx","components/NewSelect/styles.ts","components/NewSelect/index.tsx","components/NewSelectMultiple/styles.ts","components/NewSelectMultiple/index.tsx","pages/ClientPanel/UnitExtras.tsx","store/index.ts","helpers/cachedStorage.ts","helpers/driConfigOptions.ts","components/Tabs/styles.ts","components/Tabs/index.tsx","pages/ClientPanel/EnergyMeterForm.tsx","pages/ClientPanel/CicleDetail.tsx","components/Dropzone/styles.ts","components/Dropzone/index.tsx","helpers/simcards.ts","pages/ClientPanel/FormEditUnit.tsx","pages/ClientPanel/FormEditModel.tsx","pages/ClientPanel/FormEditAssociation.tsx","pages/ClientPanel/Tables/TableClasses.tsx","pages/ClientPanel/Tables/TableModels.tsx","pages/ClientPanel/Tables/styles.ts","pages/ClientPanel/Tables/TableDuts.tsx","pages/ClientPanel/Tables/TableFreeDevices.tsx","pages/ClientPanel/Tables/TableRoomTypes.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MachineTable/styles.ts","pages/ClientPanel/Tables/TableUnits.tsx","pages/ClientPanel/FormEditMachine/styles.ts","helpers/driConfig.ts","pages/ClientPanel/FormEditMachine/index.tsx","pages/ClientPanel/FormEditCreateCicle.tsx","pages/ClientPanel/FormEditCicle.tsx","pages/ClientPanel/FormEditHeatExchanger.tsx","components/InputWithValidation/styles.ts","components/InputWithValidation/index.tsx","components/SelectDmtPort/styles.ts","components/SelectDmtPort/index.tsx","pages/ClientPanel/FormEditUtility.tsx","pages/ClientPanel/ViewUtility.tsx","pages/ClientPanel/ClientPanelLayout.tsx","pages/ClientPanel/ClientPanel.tsx","pages/Admin/EditClient/styles.ts","helpers/maskInputs.ts","helpers/titleHelper.tsx","pages/Admin/EditClient/index.tsx","pages/Admin/FaultsList/styles.ts","pages/Admin/FaultsLayout/index.tsx","pages/Admin/FaultsList/index.tsx","pages/Admin/FaultsListDAM/styles.ts","pages/Admin/FaultsListDAM/index.tsx","pages/Admin/FaultsListInstallation/styles.ts","pages/Admin/FaultsListInstallation/index.tsx","pages/Admin/FerramentasDiel/styles.ts","pages/Admin/FerramentasDiel/ExportarDevs.tsx","pages/Admin/FerramentasDiel/ExportarDuts/TemprtMediaDUTs.tsx","helpers/axisCalc.ts","pages/Analysis/DACs/DACHistoric/styles.ts","components/NoGraph/styles.ts","components/NoGraph/index.tsx","pages/Analysis/DACs/DACHistoric/index.tsx","pages/Analysis/DACs/Machines/styles.ts","pages/Analysis/AnalysisFilters.tsx","pages/Admin/FerramentasDiel/MachineConsumption.tsx","pages/Admin/FerramentasDiel/DeviceTelemetry.tsx","pages/Admin/FerramentasDiel/ExportarDuts/MedicaoTempDuts.tsx","pages/Admin/FerramentasDiel/ManualDevCommand.tsx","pages/Admin/FerramentasDiel/index.tsx","pages/Admin/Integrations/CoolAutomation.tsx","pages/Admin/Integrations/DRIUnits.tsx","pages/Admin/Integrations/GreenAntMeters/styles.ts","pages/Admin/Integrations/GreenAntMeters/index.tsx","pages/Admin/Integrations/Water.tsx","pages/Admin/Integrations/index.tsx","pages/Admin/SensorsConfig/styles.ts","pages/Admin/SensorsConfig/index.tsx","components/ChartRecharts/index.tsx","components/ChartRecharts/Legenda.tsx","pages/Admin/ServersMonitoring/index.tsx","pages/Admin/SimCards/styles.ts","components/QuickSelection/styles.tsx","components/QuickSelection/index.tsx","helpers/genericHelper.ts","components/NewInputs/Search/styles.ts","components/NewInputs/Search/index.tsx","helpers/dates.ts","pages/Analysis/Utilities/UtilityFilter/index.tsx","pages/Analysis/AnalysisLayout/styles.ts","pages/Admin/SimCards/index.tsx","pages/Admin/ProjetoBB/ProjetoBBLayout/index.tsx","pages/Admin/ProjetoBB/styles.ts","pages/Admin/ProjetoBB/ProjetoBBKPIs/index.tsx","pages/Admin/ProjetoBB/ProjetoBBANS/index.tsx","pages/Admin/ProjetoBB/ProjetoBBCronograma/index.tsx","components/AssetTree/styles.ts","components/AssetConnection/index.tsx","components/AssetTree/index.tsx","components/AssetStatus/styles.ts","components/AssetStatus/index.tsx","pages/Analysis/Assets/AssetInfo/styles.ts","pages/Analysis/SchedulesModals/DAM_Schedule.tsx","pages/Analysis/SchedulesModals/DUT_Schedule.tsx","pages/Analysis/Assets/AssetLayout.tsx","pages/Analysis/SchedulesModals/styles.ts","pages/Analysis/Integrations/IntegrRealTime/styles.ts","assets/img/cool_ico/schedule.svg","assets/img/cool_ico/mode_cool.svg","assets/img/cool_ico/mode_fan.svg","pages/Analysis/SchedulesModals/DRI_Shedule.tsx","pages/NewNotifications/styles.ts","pages/Analysis/Assets/AssetInfo/index.tsx","pages/Analysis/Assets/EditAssetInfo.tsx","pages/Analysis/AnalysisLayout/index.tsx","pages/Analysis/AnalysisEmpty/index.tsx","pages/Analysis/DACs/Machines/index.tsx","pages/Analysis/SchedulesModals/FullProgEdit.tsx","pages/Analysis/DAMs/ScheduleCheck.tsx","pages/Analysis/DAMs/BatchSchedule.tsx","icons/CloseBtn.tsx","icons/ColorChange.tsx","components/EnvGroupAnalysis/styles.ts","components/EnvGroupAnalysis/index.tsx","pages/Analysis/DEVs/DevLayout.tsx","pages/Analysis/DAMs/DamSchedule.tsx","pages/Analysis/DAMs/DamsList/styles.ts","pages/Analysis/DAMs/DamsList/index.tsx","pages/Analysis/DAMs/DamHistory.tsx","pages/Analysis/DUTs/styles.ts","pages/General/styles.tsx","icons/EmptyDocumentIcon.tsx","pages/Analysis/DUTs/DUTHistory.tsx","pages/Analysis/Integrations/IntegrHistory/styles.ts","components/ChangeColor/index.tsx","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/components/styles.ts","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/styles.ts","icons/FilterColumnsIcon.tsx","components/ModalOrderColumns/styles.ts","icons/OlhoAberto.tsx","icons/OlhoFechado.tsx","icons/ThreeDotsVerticalIcon.tsx","components/ModalOrderColumns/Row.tsx","components/ModalOrderColumns/index.tsx","icons/AlarmIcon.tsx","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/components/TableConfigs.tsx","helpers/reorderList.ts","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/components/AlarmsHistory.tsx","helpers/chillerParametersHelpers.ts","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/components/ChillerGraphParametersGrouped.tsx","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/components/ChillerGraphParametersChanged.tsx","assets/img/sem_parametros.svg","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/components/ChillerParameters.tsx","pages/Analysis/Integrations/IntegrHistory/ChillerCarrierHistory/index.tsx","helpers/ticks.ts","helpers/historyGraph.tsx","pages/Analysis/Integrations/IntegrHistory/DriHistory.tsx","components/WaterCard/style.ts","helpers/getRangeParamsChart.ts","components/EnergyCard/EnergyCardContext/index.tsx","components/SelectOptionDropdown/styles.ts","helpers/capitalizeFirstLetter.ts","components/SelectOptionDropdown/index.tsx","helpers/getArrayDaysOfMonth.tsx","components/EnergyCard/ConsumptionChart/style.ts","components/EnergyCard/ConsumptionChart/index.tsx","helpers/getArrayMonthsOfYear.tsx","components/EnergyCard/EnergyHistory/index.tsx","components/WaterCard/GraphCardWater/index.tsx","pages/Analysis/Integrations/IntegrHistory/WaterHistory/styles.ts","pages/Analysis/Integrations/IntegrHistory/WaterHistory/WaterHistory.tsx","pages/Analysis/DEVs/DevHistory.tsx","pages/Analysis/DEVs/styles.ts","pages/Analysis/SchedulesModals/DUT_SchedulesList.tsx","pages/Analysis/DALs/styles.ts","components/UtilityTree/styles.ts","components/UtilityTree/index.tsx","pages/Analysis/Units/UnitProfile/styles.ts","icons/WarningIcon.tsx","helpers/validateTime.ts","pages/Analysis/SchedulesModals/DAL_Schedule.tsx","pages/Analysis/DALs/DalInfo.tsx","pages/Analysis/DMTs/styles.ts","pages/Analysis/Utilities/Nobreak/styles.ts","pages/Analysis/Utilities/Nobreak/NobreakInfo.tsx","pages/Analysis/Utilities/Illumination/styles.ts","pages/Analysis/Utilities/Illumination/IlluminationInfo.tsx","pages/Analysis/DMTs/DmtInfo.tsx","pages/Analysis/DEVs/DevInfo.tsx","pages/Analysis/DACs/RealTime/styles.ts","pages/Analysis/DACs/RealTime/index.tsx","assets/img/icons/eco.svg","components/DamControl/styles.ts","components/DamControl/index.tsx","pages/Analysis/DAMs/styles.ts","pages/Analysis/DAMs/DamRealTime.tsx","pages/Analysis/DUTs/DutAutControl/styles.ts","pages/Analysis/DUTs/DutAutControl/index.tsx","pages/Analysis/DUTs/DutAutRealTime.tsx","assets/img/cool_ico/power.svg","assets/img/cool_ico/power_grey.svg","pages/Analysis/DUTs/EnvironmentRealTime.tsx","pages/Analysis/Integrations/IntegrRealTime/DmaRealTime.tsx","assets/img/cool_ico/power_1_color.svg","icons/FanOnOff.tsx","icons/ValveOpenedClosed.tsx","pages/Analysis/SchedulesModals/DRI_ScheduleList.tsx","pages/Analysis/SchedulesModals/DRI_ScheduleModal.tsx","pages/Analysis/Integrations/IntegrRealTime/components/RssiComponent.tsx","helpers/rssi.ts","pages/Analysis/Integrations/IntegrRealTime/DriContents.tsx","pages/Analysis/DMTs/DmtRealTime/styles.tsx","pages/Analysis/DMTs/DmtRealTime/DmtRealTime.tsx","pages/Analysis/DALs/DalRealTime.tsx","pages/Analysis/DEVs/DevRealTime.tsx","pages/Analysis/DUTs/DutSchedule.tsx","pages/Analysis/DEVs/DevSchedule.tsx","assets/img/BackupEcoV2DamDac.png","pages/Analysis/Integrations/IntegrEdit/styles.ts","pages/Analysis/Integrations/IntegrEdit/DriConfig/DriConfigParameters.tsx","pages/Analysis/Integrations/IntegrEdit/DriConfig/DriConfigManufacturer.tsx","pages/Analysis/Integrations/IntegrEdit/DriConfig/DriConfigAutomation.tsx","pages/Analysis/Integrations/IntegrEdit/DriConfig/DriConfigChillerCarrier.tsx","pages/Analysis/Integrations/IntegrEdit/DriConfig/DriConfigEnergyMeter.tsx","pages/Analysis/Integrations/IntegrEdit/DriConfig/DriConfigSchedulesAutomation.tsx","pages/Analysis/Integrations/IntegrEdit/DriConfig/index.tsx","pages/Analysis/DALs/RouterEditDal.tsx","pages/Analysis/DALs/EditDalInfo.tsx","pages/Analysis/DMTs/DmtEdit.tsx","pages/Analysis/DEVs/EditDevInfo.tsx","assets/img/icons/IR_symbol_paths.svg","assets/img/icons/IR_symbol_paths_faint.svg","assets/img/icons/wifi_icon.svg","pages/Analysis/DUTs/DutIrManagement/styles.ts","pages/Analysis/DUTs/DutIrManagement/index.tsx","pages/Analysis/DUTs/Environments/styles.ts","pages/Analysis/DUTs/Environments/index.tsx","helpers/checkDutsLimits.ts","hooks/useFilter.ts","assets/img/marker.svg","pages/Analysis/Geolocation/styles.ts","pages/Analysis/Geolocation/index.tsx","assets/img/cool_ico/fan_0_off.svg","assets/img/cool_ico/fan_1_low.svg","assets/img/cool_ico/fan_2.svg","assets/img/cool_ico/fan_3.svg","assets/img/cool_ico/fan_4_high.svg","assets/img/cool_ico/fan_auto.svg","assets/img/cool_ico/mode_auto.svg","assets/img/cool_ico/mode_cool_off.svg","assets/img/cool_ico/mode_dry.svg","assets/img/cool_ico/mode_heat.svg","assets/img/cool_ico/swing_1_low.svg","assets/img/cool_ico/swing_2.svg","assets/img/cool_ico/swing_3.svg","assets/img/cool_ico/swing_4.svg","assets/img/cool_ico/swing_5_high.svg","assets/img/cool_ico/swing_auto.svg","assets/img/cool_ico/swing_off.svg","pages/Analysis/Integrations/IntegrRealTime/CoolAutomationRealTime.tsx","pages/Analysis/Integrations/IntegrHistory/CoolAutomationHist.tsx","pages/Analysis/Integrations/IntegrLayout.tsx","pages/Analysis/Integrations/IntegrEdit/CoolAutomationEdit.tsx","pages/Analysis/Integrations/IntegrPerfil/styles.ts","pages/Analysis/Integrations/IntegrPerfil/DRIProfile.tsx","pages/Analysis/Integrations/IntegrPerfil/IntegrDevInfo.tsx","pages/Analysis/Integrations/IntegrPerfil/IntegrWaterInfo.tsx","pages/Analysis/Integrations/IntegrPerfil/index.tsx","pages/Analysis/Units/UnitWater/WaterProfileEdit.tsx","pages/Analysis/Integrations/IntegrPerfil/WaterProfile.tsx","pages/Analysis/Integrations/IntegrEdit/CardsConfig.tsx","pages/Analysis/Integrations/IntegrEdit/index.tsx","pages/Analysis/Integrations/IntegrHistory/index.tsx","pages/Analysis/Units/UnitLayout/index.tsx","pages/Analysis/Units/UnitNess/index.tsx","pages/Analysis/Integrations/IntegrRealTime/WaterRealTime.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/ProgressBar.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/StatusCard.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/MonitoringCard.tsx","assets/img/chiller/chillerCarrierHX.png","assets/img/chiller/chillerCarrierXA.jpg","assets/img/point.svg","assets/img/arrow.svg","assets/img/pointInvert.svg","assets/img/alarm.svg","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/ChillerCard.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/ChillerParameters.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/TableConfigs.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/ChillerAlarms.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/components/TableCommonFunctions.tsx","pages/Analysis/Integrations/IntegrRealTime/DriChillerCarrierRealTime/index.tsx","pages/Analysis/Integrations/IntegrRealTime/index.tsx","pages/Analysis/Integrations/IntegrsList/styles.ts","pages/Analysis/Integrations/IntegrsList/index.tsx","pages/Analysis/Units.tsx","helpers/energyData.ts","pages/Analysis/Units/EnergyEfficiency/styles.ts","pages/Analysis/Units/EnergyEfficiency/DataExportModal.tsx","pages/Analysis/Units/EnergyEfficiency/TelemetryDemandCard/Heatmap/styles.ts","pages/Analysis/Units/EnergyEfficiency/TelemetryDemandCard/Heatmap/index.tsx","pages/Analysis/Units/EnergyEfficiency/TelemetryDemandCard/Linechart/styles.ts","pages/Analysis/Units/EnergyEfficiency/TelemetryDemandCard/Linechart/index.tsx","pages/Analysis/Units/EnergyEfficiency/TelemetryDemandCard/index.tsx","pages/Analysis/Units/EnergyEfficiency/index.tsx","pages/Analysis/Units/UnitDetail/Schedules.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/DriAutMachine/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/DriAutMachine/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/DutAutMachine/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/DutAutMachine/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/HeatExchanger/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/HeatExchanger/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineAutomation/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineAutomation/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineInformation/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineInformation/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineFancoilInformation/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineFancoilInformation/WaterTemperatureTooltipInfo.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineFancoilInformation/MachineDacInformation.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineFancoilInformation/MachineDutDuoInformation.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineFancoilInformation/MachineDatInformation.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineAutomationFancoil/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/ControlOperation/styles.ts","assets/img/cool_ico/power_grey_slash.svg","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/ControlOperation/DamControlOperation.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/ControlOperation/DriControlOperation.tsx","helpers/driAutomation.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineAutomationFancoil/MachineDriAutomation.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineAutomationFancoil/MachineDamAutomation.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/components/MachineAutomationFancoil/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MosaicListItem/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MachineTable/index.tsx","pages/Analysis/Units/UnitDetail/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/components/MosaicListItem/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/components/MosaicListItem/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/components/DutTable/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/components/DutTable/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/components/UnitMapView/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/components/UnitMapView/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailDUTs/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailUtilities/styles.ts","pages/Analysis/Units/UnitDetail/UnitDetailUtilities/components/MosaicCard/styles.ts","pages/Analysis/Units/UnitDetail/ConfirmStatusChange.tsx","pages/Analysis/Units/UnitDetail/UnitDetailUtilities/components/MosaicCard/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailUtilities/components/NobreakTable/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailUtilities/components/IlluminationTable/index.tsx","pages/Analysis/Units/UnitDetail/UnitDetailUtilities/index.tsx","pages/Analysis/Units/UnitDetail/index.tsx","pages/Analysis/Units/UnitIntegratedAnalysis/index.tsx","pages/Analysis/Units/UnitWater/index.tsx","pages/Analysis/Units/UnitProfile/DocumentationsFiles.tsx","pages/Analysis/Units/UnitProfile/DateButtonExport.tsx","helpers/formatNumber.tsx","pages/Analysis/Units/UnitProfile/index.tsx","helpers/dateFormatedcsv.ts","pages/Analysis/Units/CAG/ChillerLayout.tsx","pages/Analysis/Units/CAG/index.tsx","pages/Analysis/Units/UnitVRF/index.tsx","components/LoaderWithText/styles.ts","components/LoaderWithText/index.tsx","pages/Analysis/Units/UnitProfile/IlluminationMultipleProg.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/helpers/parseDevices.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/helpers/sortDevices.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/constants.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/components/ClearFilterButton.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/DutFilter.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/helpers/verifications.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/DutTable.tsx","helpers/formatText.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/components/SelectAllDevices.tsx","helpers/batchRequests.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/DamTable.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/DamFilter.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/helpers/filter.ts","pages/Analysis/Units/UnitProfile/MultipleDevProg/DefaultDeviceTable.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/components/SelectDevType.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg/components/ProgrammingProgress.tsx","pages/Analysis/Units/UnitProfile/MultipleDevProg.tsx","pages/Analysis/Units/UnitProfile/RoomsList.tsx","pages/Analysis/Units/UnitProfile/GeneralData.tsx","pages/Analysis/Units/UnitProfile/EnvironmentVisibility.tsx","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapListMaps/styles.ts","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapPreview/styles.ts","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapPreview/index.tsx","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapViewModal/styles.ts","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapViewModal/index.tsx","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapModal/styles.ts","helpers/formFieldsValidator.ts","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapModal/index.tsx","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapListMaps/index.tsx","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapViewMap/styles.ts","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapViewMap/index.tsx","pages/Analysis/Units/UnitProfile/UnitMap/UnitMap.tsx","pages/Analysis/Units/UnitProfile/EditUnitDevProg.tsx","pages/Analysis/Units/UnitProfile/SchedTurnConfig.tsx","pages/ClientPanel/BatchInput/BatchInputDACs.tsx","helpers/batchInputHelpers.ts","pages/ClientPanel/BatchInput/BatchInputDAMs.tsx","pages/ClientPanel/BatchInput/BatchInputDUTs.tsx","pages/ClientPanel/BatchInput/styles.ts","pages/ClientPanel/BatchInput/BatchInputDRIs.tsx","pages/ClientPanel/BatchInput/BatchInputEnvironmentTypes.tsx","pages/ClientPanel/BatchInput/BatchInputSupervisors.tsx","pages/ClientPanel/BatchInput/BatchInputInvoices.tsx","pages/ClientPanel/BatchInput/BatchInputDMAs.tsx","components/CutomizedButton/styles.tsx","components/CutomizedButton/index.tsx","pages/ClientPanel/BatchInput/PreFillGuide.tsx","pages/ClientPanel/BatchInput/BatchInputUnified.tsx","pages/ClientPanel/BatchInput.tsx","pages/Configs/ChangePassword/styles.ts","pages/Configs/ChangePassword/index.tsx","pages/Configs/EditInfo/styles.ts","pages/Configs/EditInfo/index.tsx","pages/Configs/Settings/styles.ts","assets/img/brasil.svg","assets/img/estadosunidos.svg","pages/Configs/Settings/index.tsx","pages/Help/styles.ts","pages/Help/index.tsx","pages/Users/Default/styles.ts","pages/NewNotifications/Layout.tsx","pages/Notifications/Default/styles.ts","pages/Notifications/Default/ModalCreateNotification.tsx","pages/Notifications/Default/index.tsx","helpers/dutNotifVerifcation.ts","pages/Notifications/FormEditNotification/styles.ts","pages/Notifications/FormEditNotification/index.tsx","pages/Notifications/Notification/styles.ts","pages/Notifications/Notification/EnergyNotification.tsx","pages/Notifications/Notification/index.tsx","components/EnergyCard/styles.ts","components/EnergyCard/EnergyCardFooter/styles.ts","pages/General/TableConfigs.tsx","icons/CalendarIcon.tsx","pages/General/index.tsx","components/EnergyCard/EnergyCardFooter/TableConfig.tsx","components/EnergyCard/EnergyCardFooter/index.tsx","components/ItemCardTabOption/TabOption.tsx","components/EnergyCard/EnergyInsights/styles.ts","components/EnergyCard/EnergyInsights/EnergyEfficiencyTicket/styles.ts","components/EnergyCard/EnergyInsights/EnergyEfficiencyTicket/index.tsx","components/EnergyCard/EnergyInsights/index.tsx","components/EnergyCard/TrendsChart/styles.ts","components/EnergyCard/TrendsChart/index.tsx","components/EnergyCard/EnergyTrends/index.tsx","components/EnergyCard/index.tsx","components/WaterCard/CalendarWaterCard/index.tsx","components/WaterCard/TableConfig.tsx","components/WaterCard/CardWaterTable/index.tsx","components/WaterCard/index.tsx","pages/Overview/Default/index.tsx","pages/Overview/IntegrationNess/styles.ts","pages/Overview/IntegrationNess/index.tsx","pages/TechnicalVisits/components/StyledComponents/index.ts","pages/TechnicalVisits/Layout/styles.ts","pages/TechnicalVisits/Layout/index.tsx","pages/TechnicalVisits/TechnicalUsersListing/components/TVList/styles.ts","pages/TechnicalVisits/TechnicalUsersListing/styles.tsx","components/LoadingSpinner/styles.ts","components/LoadingSpinner/index.tsx","metadata/GetTechnicalVisitsList.ts","pages/TechnicalVisits/TVListing/components/DeleteTVModal/styles.ts","pages/TechnicalVisits/TVListing/components/DeleteTVModal/index.tsx","pages/TechnicalVisits/TVListing/components/ShowTVModal/components/PhotoBox/styles.ts","pages/TechnicalVisits/TVListing/components/ShowTVModal/components/PhotoBox/index.tsx","pages/TechnicalVisits/TVListing/components/ShowTVModal/styles.ts","pages/TechnicalVisits/TVListing/components/ShowTVModal/index.tsx","pages/TechnicalVisits/TVListing/components/TVList/styles.ts","pages/TechnicalVisits/TVListing/components/SpeakWithTechnicianModal/styles.ts","pages/TechnicalVisits/TVListing/components/SpeakWithTechnicianModal/index.tsx","pages/TechnicalVisits/TVListing/components/TVList/ListItem.tsx","pages/TechnicalVisits/TVListing/components/TVList/index.tsx","pages/TechnicalVisits/TVListing/styles.tsx","pages/TechnicalVisits/TVListing/index.tsx","components/NewInputs/Date/styles.ts","components/NewInputs/Date/index.tsx","components/NewInputs/Hour/styles.ts","components/NewInputs/Hour/index.tsx","components/NewInputs/Hour/applySuffixToInputValue.ts","components/NewInputs/Number/styles.ts","components/NewInputs/Number/index.tsx","components/NewInputs/TextArea/styles.ts","components/NewInputs/TextArea/index.tsx","pages/TechnicalVisits/TVRegistration/components/PhotoBox/styles.ts","pages/TechnicalVisits/TVRegistration/components/PhotoBox/index.tsx","pages/TechnicalVisits/TVRegistration/styles.ts","pages/TechnicalVisits/TVRegistration/index.tsx","pages/TechnicalVisits/index.tsx","pages/Users/Default/index.tsx","pages/Users/EditUser/components/ClientItem/index.tsx","pages/Users/EditUser/styles.ts","pages/Users/EditUser/index.tsx","pages/ClientPanel/ClientMultipleProg.tsx","assets/img/logos/LogoCelciusColor.svg","assets/img/sidebar/UserAzul.svg","assets/img/sidebar/menu_azul.svg","components/MenuMobile/styles.ts","components/MenuMobile/index.tsx","components/MobileNavbar/styles.ts","components/MobileNavbar/index.tsx","routes/PrivateRoute.tsx","routes/PublicRoute.tsx","routes/SpecialRoute.tsx","pages/Analysis/Comparative/styles.tsx","pages/Analysis/Comparative/index.tsx","pages/Analysis/Units/DownloadUnitReport/index.tsx","routes/PrivateWithRedirectRoute.tsx","pages/Admin/FaultsDisable/styles.ts","pages/Admin/FaultsDisable/index.tsx","pages/Analysis/Devices/styles.ts","pages/Analysis/Devices/index.tsx","pages/Analysis/Utilities/styles.ts","pages/Analysis/Utilities/UtilityLayout.tsx","pages/Analysis/Utilities/UtilityInfo.tsx","pages/Analysis/Utilities/Illumination/IlluminationEdit.tsx","pages/Analysis/Utilities/Nobreak/NobreakEdit.tsx","pages/Analysis/Utilities/EditUtilityInfo.tsx","pages/Analysis/DEVs/UsageCommon/styles.ts","pages/Analysis/DEVs/UsageCommon/index.tsx","pages/Analysis/DACs/Usage/index.tsx","pages/Analysis/DMTs/DmtUtilityHistoryCard/styles.ts","pages/Analysis/DMTs/DmtUtilityHistoryCard/index.tsx","pages/Analysis/DMTs/DmtUsageIndex.tsx","pages/Analysis/DALs/IlluminationHistoryCard/index.tsx","pages/Analysis/DALs/DalUsageIndex.tsx","pages/Analysis/DUTs/DutDuoUsage/index.tsx","pages/Analysis/DEVs/DevUsageIndex.tsx","pages/Analysis/Utilities/UtilityUsageIndex.tsx","pages/Analysis/Utilities/UtilityRealTime.tsx","pages/Authentication/styles.ts","assets/img/logos/DielDarkLogo.svg","assets/img/logos/GooglePlayLogo.svg","assets/img/logos/CelciusWhiteLogo.svg","pages/Authentication/Login/styles.ts","pages/Authentication/Login/index.tsx","pages/Authentication/ForgotPassword/styles.ts","pages/Authentication/ForgotPassword/index.tsx","pages/Authentication/index.tsx","pages/Admin/HorarioVerao/styles.ts","pages/Admin/HorarioVerao/index.tsx","components/CustomAccordion/styles.ts","icons/Water.tsx","icons/CircleCheckFill.tsx","components/CustomAccordion/index.tsx","pages/NewNotifications/NotificationsEmpty.tsx","pages/NewNotifications/index.tsx","pages/Analysis/DEVs/DevHealth/styles.ts","pages/Analysis/DEVs/DevHealth/Health.tsx","assets/img/DesativarFalha.svg","assets/img/ReativarFalha.svg","pages/Analysis/DEVs/DevHealth/ManagementFaults.tsx","pages/Analysis/DEVs/DevHealth/index.tsx","pages/Admin/ProjetoBB/ProjetoBBCadastroAC/index.tsx","pages/Admin/ProjetoBB/ProjetoBBCadastroNobreak/index.tsx","pages/Admin/ProjetoBB/ProjetoBBANS/RecentAns.tsx","pages/Analysis/Energy/index.tsx","pages/Analysis/Utilities/index.tsx","pages/Analysis/Utilities/RedirectUtility.tsx","pages/ResetPassword/styles.ts","pages/ResetPassword/index.tsx","pages/Analysis/Machines/styles.ts","components/SlidingBannerTooltip/styled.ts","components/SlidingBannerTooltip/index.tsx","pages/Analysis/Machines/TableConfig.tsx","pages/Analysis/Machines/index.tsx","routes/index.tsx","useGaTracker.ts","styles/GlobalStyles.ts","App.tsx","index.tsx","components/InvoiceChart/styles.module.css","pages/Analysis/Units/UnitProfile/UnitMap/UnitMapContext/index.tsx","pages/Overview/Default/styles.ts","pages/Analysis/Header/styles.ts","helpers/useStateVar.ts","components/Accordion/styles.ts","components/Accordion/index.tsx","helpers/languageHelper.tsx","helpers/thousandFormatNumber.ts","components/ModalWindow/index.tsx","helpers/jsonTryParse.ts","components/EnergyEfficiencyCard/styles.ts","components/Button/styles.ts","components/Button/index.tsx","components/CardManager/styles.ts","components/CardManager/index.tsx","helpers/userProfile.ts","components/Loader/styles.ts","components/Loader/index.tsx","hooks/useOuterClickNotifier.ts","components/ModalWindow/styles.ts","helpers/apmElastic.ts","assets/img/ExpansaoRemocao.gif","assets/img/MoverCards.gif","contexts/TourContext.tsx","i18n/index.ts","components/Breadcrumb/styles.ts","components/DataTable/Cards/styles.ts","components/DataTable/Cards/Cards.tsx","components/DataTable/styles.ts","components/DataTable/index.tsx","helpers/additionalParameters.tsx","pages/Analysis/Units/EnergyEfficiency/TelemetryDemandCard/styles.ts","components/Breadcrumb/index.tsx","components/NewTable/styles.ts","components/NewTable/index.tsx","components/TourPopover/styles.ts","components/TourPopover/index.tsx","styles/colors.ts","icons/Utility.tsx","components/DesktopNavbar/styles.ts","components/DesktopNavbar/index.tsx","components/InputSearch/styles.ts","components/InputSearch/index.tsx","helpers/parseDecimalNumber.ts","helpers/getClientsHelper.ts","assets/img/EcoV2.png","components/Table/index.tsx","components/TimezoneWarn/styles.ts","components/TimezoneWarn/index.tsx","components/EnergyEfficiencyInvoice/styles.module.css","pages/Admin/DevLogs/styles.ts","icons/Tool.tsx","components/ConnectedDevices/styles.ts","assets/img/sidebar/ExpandirMenu.svg","assets/img/sidebar/MenuExpandido.svg","assets/img/sidebar/configuracoes.svg","assets/img/sidebar/NovoAnalise.svg","assets/img/sidebar/NovoClientPanel.svg","assets/img/sidebar/NovoNotificacoes.svg","assets/img/sidebar/NovoUsuarios.svg","assets/img/sidebar/NovoVisaoGeral.svg","components/Menu/Draggable/styles.ts","components/Menu/Draggable/DraggableCard.tsx","components/Menu/Draggable/DraggableArea.tsx","components/Menu/index.tsx","components/Header/styles.ts","icons/Logout.tsx","icons/UserGuide.tsx","icons/Config.tsx","icons/CloseV2.tsx","components/Header/ModalUserGuide.tsx","components/Header/index.tsx","components/Checkbox/styles.ts","components/Checkbox/index.tsx","components/FormEditBaselines/styles.ts","components/FormEditBaselines/index.tsx","components/QuickSelectionV2/styles.ts","components/QuickSelectionV2/index.tsx","pages/Analysis/styles.ts","assets/img/logos/LogoDielPowered.svg","icons/More.tsx","pages/Analysis/Utilities/UtilityFilter/styles.ts","helpers/posthogHelper.ts","icons/FilterIconV3.tsx","components/MachineCard/styles.ts","helpers/wsConnection.ts","components/Select/styles.ts","pages/Analysis/Header/index.tsx","helpers/formatArrHistory.ts","helpers/convertEnergy.ts","helpers/fwVersion.ts","components/HealthIcon/styles.ts","components/HealthIcon/index.tsx","components/ToggleSwitch/styles.ts","components/ToggleSwitch/index.tsx","helpers/formatTime.ts","components/Menu/styles.ts","components/Input/styles.ts","components/Input/index.tsx","components/StyledComponents/Link.ts","helpers/tips.ts","components/Select/index.tsx","components/OnOff/styles.ts","components/OnlineOffline/styles.ts","components/Carousel/styles.ts","components/Carousel/index.tsx","components/StyledComponents/ActionButton.ts","components/AlertsTable/styles.ts","components/SearchBox/styles.ts","components/RadioButton/styles.ts","components/RadioButton/index.tsx","components/StyledComponents/EmptyWrapper.ts","components/StyledComponents/UnavailableLinkMessageStyle.ts","components/Breadcrumb2/styles.ts","components/Breadcrumb2/index.tsx","components/Datepicker/styles.ts","components/Datepicker/index.tsx","components/DateInput/styles.tsx","components/DateInput/index.tsx","components/LayerBackgroundModal/index.tsx","components/Overlay/styles.ts","components/Overlay/index.tsx","components/StyledComponents/InputsSearchWrappers.ts","components/AntSwitch/styles.ts","components/AntSwitch/index.tsx","components/StatusBox/index.tsx","assets/img/icons/aviso_icon.svg","components/EnergyEfficiencyGeneral/styles.ts","components/DemandChart/styles.ts","components/EnergyEfficiencyGeneral/index.tsx","components/InvoiceChart/styles.ts","components/InvoiceChart/index.tsx","components/EnergyEfficiencyInvoice/styles.ts","components/EnergyEfficiencyInvoice/index.tsx","components/EnergyEfficiencyMachines/styles.ts","components/EnergyEfficiencyMachines/index.tsx","components/EnergyEfficiencyMachine/styles.ts","components/EnergyEfficiencyMachine/index.tsx","components/EnergyEfficiencyCard/index.tsx","components/EnergyMeterDemand/index.tsx","components/Divider/styles.tsx","components/Divider/index.tsx","components/DemandChart/index.tsx","pages/Overview/HealthHistoryCard/index.tsx","components/MachineCard/index.tsx","assets/img/icons/environment.svg","assets/img/icons/active.svg","assets/img/icons/machines.svg","assets/img/icons/energy.svg","assets/img/icons/water.svg","assets/img/icons/lighting.svg","assets/img/icons/nobreak.svg","assets/img/icons/utilities.svg","components/ConnectedDevices/index.tsx","pages/Overview/AmbsHistoryCard/index.tsx","components/EnvCard/styles.ts","components/EnvCard/index.tsx","components/AutomationCard/styles.ts","components/AutomationCard/index.tsx","components/FormMachine/index.tsx","components/FormAssetsList/styles.ts","components/FormAssetsList/index.tsx","components/FormAsset/styles.ts","components/FormAsset/index.tsx","components/ViewMachine/styles.ts","components/ViewMachine/index.tsx","components/ViewCAG/styles.ts","components/ViewCAG/index.tsx","components/ScheduleButton/styles.ts","components/ScheduleButton/index.tsx","components/ScheduleViewCard/styles.ts","components/ScheduleViewCard/index.tsx","components/ScheduleEditCard/styles.ts","assets/img/BackupEcoV2.png","assets/img/SobDemanda.png","components/ScheduleEditCard/index.tsx","components/ExceptionViewCard/styles.ts","components/ExceptionViewCard/index.tsx","components/ExceptionEditCard/styles.ts","components/ExceptionEditCard/index.tsx","components/InputCalculator/styles.ts","components/InputCalculator/index.tsx","components/DamEcoCard/styles.ts","components/DamEcoCard/index.tsx","components/OptionsWithIcon/styles.ts","components/OptionsWithIcon/index.tsx","components/ModalContainerLoading/styles.ts","components/ModalContainerLoading/index.tsx","components/PromptRouter/styles.ts","components/PromptRouter/index.tsx","components/ClearSelect/styles.ts","components/ClearSelect/index.tsx","components/ModalPrivacyPolicies/styles.ts","components/ModalPrivacyPolicies/index.tsx","components/ProgressBar/style.ts","components/ProgressBar/index.tsx","assets/img/polimorphic_shapes/polimorphic_shape_green.svg","assets/img/polimorphic_shapes/polimorphic_shape_light_blue.svg","components/PolimorphicGradientBackground/styles.ts","components/PolimorphicGradientBackground/index.tsx","components/TelemetryChartsLegend/styles.ts","components/TelemetryChartsLegend/index.tsx","components/ImageZoom/styles.ts","components/Pin/styles.ts","components/Pin/index.tsx","components/PinEditModal/styles.ts","components/PinEditModal/index.tsx","components/PinTooltip/styles.ts","components/PinTooltip/index.tsx","components/ImageZoom/index.tsx","components/FileDrop/styles.ts","components/FileDrop/index.tsx","components/FiltersContainer/styles.ts","components/FiltersContainer/index.tsx","pages/Admin/AdminLayout/index.tsx","components/Table/styles.ts","components/DamEcoCard/styles.module.css","pages/Admin/DevLogs/index.tsx","assets/img/order.svg","components/NewInputs/Default/styles.ts","components/NewInputs/Default/index.tsx","components/FormMachine/styles.ts"],"names":["CardContext","createContext","undefined","CardProvider","_ref","children","user","getUserProfile","cards","dispatch","useReducer","reducer","state","action","type","map","card","payload","isActive","isExpanded","dragIndex","hoverIndex","dragCard","newCards","splice","index","position","async","apiCall","userId","prefs","error","console","submitCards","length","useEffect","response","orderedCards","sort","a","b","contextValue","useMemo","_jsx","Provider","value","useCard","context","useContext","Error","module","exports","isProductionFront","includes","window","location","host","__API__","localStorage","getItem","process","_backendDescriptionToShow","apiHostName","URL","hostname","err","backendDescriptionToShow","__WS_URL__","defaultOptions","baseURL","instance","axios","create","reqWithCredentials","authHeader","route","body","config","method","url","data","headers","Authorization","unicodeBase64","str","equivString","encodeURIComponent","replace","match","p1","String","fromCharCode","parseInt","concat","btoa","key","reqParams","token","prefsStorage","JSON","parse","formatLanguage","language","authorization","apmElastic","dielApiPost","then","r","apiCall2","authToken","toFormData","formData","FormData","propName","propVal","Object","entries","Array","isArray","propValItem","set","toString","interceptors","request","use","status","clear","pathname","Promise","reject","href","apiSpecial","post","responseType","apiCallFormData","files","apiCallDownload","DEFAULTVALUEMENU","menuToogle","setMenuToogle","MenuContext","LogoIcon","props","src","alt","HamburgerIcon","color","_jsxs","xmlns","width","height","viewBox","d","fill","SpeedometerIcon","percentage","Container","Chart","Svg","stroke","colors","Red","strokeWidth","Orange","Yellow","Green","Pointer","Percentage","styled","div","_templateObject","_taggedTemplateLiteral","_templateObject2","svg","_templateObject3","span","_templateObject4","DarkGrey","_ref2","_templateObject5","_ref3","GlobeIcon","ListIcon","fillOpacity","WarningIcon","GearIcon","ExitIcon","BellIcon","ExpandIcon","className","style","NewExpandIcon","GraphIcon","NotepadIcon","PeopleIcon","CheckboxIcon","size","InfoIcon","RealTimeIcon","CronometerIcon","Grey400","ClockIcon","CO2Icon","fillRule","clipRule","CO2IconV2","PerformanceIcon","PaperIcon","CalendarIcon","CalendarSimpleIcon","strokeLinecap","strokeLinejoin","CalendarPlusIcon","ArrowBackIcon","ArrowNextIcon","TimeIcon","ArrowIcon","AddImageIcon","TermometerIcon","variant","TermometerSubIcon","HumidityIcon","PressureIcon","SwitchIcon","CloseIcon","onClick","DownloadImageIcon","TimerIcon","RadialChartIcon","graphData","setGraphData","useState","name","White","BlueChart","RadialBarChart","startAngle","endAngle","RadialBar","legendType","minAngle","clockWise","dataKey","PowerIcon","KwhIcon","x","y","version","xmlSpace","ButtonPowerIcon","SubCoolingIcon","SuperHeatingIcon","AlertIcon","AddIcon","HistoryIcon","DeleteOutlineIcon","DeactivateUserIcon","ReactivateUserIcon","EditIcon","EnergyIcon","SaveIcon","transform","HealthMeterIcon","level","RectOpaque","RectShadow","IconPath","Text","bold","TSpan","rect","text","tspan","path","HealthIndexRedIcon","HealthIndexOrangeIcon","HealthIndexYellowIcon","HealthIndexGreenIcon","HealthDisabledIcon","MagnifyingIcon","CCircle","cx","cy","CPath","circle","ClientsIcon","AdminIcon","SearchIcon","SearchInputIcon","ExportDocumentIcon","OutOfSpecificationIcon","UrgentMaintenanceIcon","OperatingCorrectlyIcon","ImminentRiskIcon","HighTemperatureIcon","LowTemperatureIcon","DottedLineIcon","strokeDasharray","LineIcon","DashedLineIcon","UnknownHealthIcon","UnknownHealthDarkIcon","AcceptIcon","ClientPanelIcon","ExportWorksheetIcon","ZoomOutIcon","ExportPdfIcon","ThunderIcon","OpenEyeIcon","CloseEyeIcon","NoSignalIcon","colorSecundary","heigth","BadSignalIcon","RegularSignalIcon","GoodSignalIcon","GreatSignalIcon","BoxIcon","ChipIcon","viewChip","LayersIcon","WifiMiniOnIcon","WifiMiniOffIcon","ArrowUpIcon","ArrowUpIconV2","ArrowDownIcon","ArrowDownIconV2","UnitIcon","StatisticsIcon","NewImminentRiskIcon","TemperatureIcon","LightOnIcon","LightOffIcon","id","maskUnits","mask","ExitButtonIcon","filter","rx","strokeOpacity","filterUnits","colorInterpolationFilters","floodOpacity","result","in","values","dy","stdDeviation","in2","operator","mode","WatchIcon","PenIcon","VAVOpenedIcon","VAVClosedIcon","LockOpenedIcon","LockClosedIcon","CoolIcon","InformationIcon","LocalOperationIcon","RemoteAutoIcon","RemoteManualIcon","FanIcon","BlockIcon","EvapReturnIcon","EvapInsufIcon","ReferenceIcon","ComparativeIcon","ThermostatIcon","AddPlusIcon","NothingRegistered","DeleteSimpleIcon","MonitoringIcon","PortIcon","DatIcon","CheckDeviceIcon","PortEnableIcon","PortDisabledIcon","FilterIcon","ExportIcon","BatteryIcon","EnergyNobreakIcon","NobreakOffIcon","BatteryFullIcon","BatteryMidIcon","BatteryLowIcon","EletricNetworkIcon","NobreakIcon","CircleCheckGreen","CircleNotCheckRed","CircleWarningYellow","LuzAcesa","LuzApagada","CorrectIcon","IncorrectIcon","BluePaper","PenBlue","ColorChose","TrashSample","CompleteListIcon","CustomListIcon","ClockDurationIcon","ProgIcon","FoldedSheet","LinkIcon","AlertSignalIcon","SimcardIcon","PaperBloomIcon","EditPenPaperIcon","DeleteTrashIcon","CollapseIcon","ExpandCardIcon","EditIconPaperPen","PinIcon","PlusRoundedIcon","clipPath","TrashRoundedIcon","handleClick","EditPenIcon","SeeEyeIcon","ImageIcon","CheckIcon","ZoomMoreIcon","ZoomLessIcon","ResetZoomIcon","OrderIcon","orderDesc","DateIcon","FilterIconV2","WarnIcon","EditNotificationIcon","heightSvg","widthSvg","patternContentUnits","xlinkHref","DeleteNotificationIcon","ClientNotificationIcon","UnitNotificationIcon","ArrowLeftIcon","ArrowRightIcon","UrgentHealthIcon","RiskHealthIcon","OutHealthIcon","CelciusLogo","x1","x2","y1","y2","gradientUnits","stopColor","offset","Seta","ChillerIcon","CelciusColorLogo","SpringerLogo","MachineIcon","MonitoramentoIcon","ArrowDownAnalisys","margin","NoWifi","CompDisabled","OnIcon","FanBlueIcon","ColumnIcon","TimezoneIcon","TimezoneDSTIcon","ThermostatCircleIcon","ThermostatSquareIcon","Compressor","InfoLinkIcon","WaterOutlet","WaterInlet","OpenTab","IconHIndex2","IconHIndex4","IconHIndex25","IconHIndex50","IconHIndex75","IconHIndex100","TrashIcon","SmallTrashIcon","Wrapper","overflowHidden","Title","BlueSecondary","ChildrenWrapper","ChildrenWrapperNoPadding","ChildrenWrapperNoPaddingRelative","_templateObject6","Card","title","IconsContainer","noPadding","noPaddingRelative","wrapperStyle","Route404","params","isLogged","Route","render","Redirect","to","SimpleButton","Button","ContainerInputs","SelectButton","table","thead","_templateObject7","tbody","_templateObject8","th","_templateObject9","Grey","_templateObject10","td","_templateObject11","tr","_templateObject12","_templateObject13","CloseModal","_templateObject14","ModalTitle","h3","_templateObject15","Blue500","ModalCancel","p","_templateObject16","_templateObject17","Blue300","Blue400","t","i18n","bind","AdmCities","setState","useStateVar","loading","cities","citiesFiltered","searchResults","globalCitiesSearchText","CITY_ID","NAME","COUNTRY_NAME","COUNTRY_LAT","COUNTRY_LON","STATE_CODE","STATE_NAME","LAT","LON","STATE_LAT","STATE_LON","searchState","showModal","setShowModal","setValue","newValues","assign","list","row","ROW_ID","LONG","log","toast","columns","accessor","sortable","textAlign","cursor","rowData","confirm","cityName","cityId","reload","deleteCity","columnsSearch","fillCityInfo","CITY_LAT","CITY_LON","CITY_NAME","substr","toLowerCase","toLocaleUpperCase","_Fragment","Helmet","AdminLayout","Loader","NewTable","pageSize","extraBtns","ModalWindow","borderTop","minWidth","onClickOutside","Flex","justifyContent","flexDirection","alignItems","marginLeft","marginBottom","Box","display","gridTemplateColumns","gridColumnGap","Input","label","onChange","e","target","flex","marginTop","_error$response","_error$response2","InputSearch","placeholder","noSearchBar","AdmCitiesWrapper","withRouter","withTransaction","filterByColumns","array","searchText","searchTerms","split","item","searchTerm","some","colName","orderByColumns","column","descending","sorter","StyledLink","Link","ModalContent","FileInput","Pink200","Pink300","FwVersTable","limitSize","ViewMoreArrow","viewMore","TableNew2","AdmFirmware","history","useHistory","preFiltered","queryString","search","allDevs","filteredMachines","isLoading","waitingRequest","csvData","fwVersionsAllTypes","fwVersionsRows","fwCols","fwFolders","limitItems","lastScrollTop","openModal","modalReqUpdate","fw","sending","modalUpdateResult","devs","modalReqVersResult","modalReqCertResult","fwStageFilter","renderUpper","renderDevsTable","_fwsList","fwHwRevs","fwFamilies","devsList","all","fwsList","fwColumns","toUpperCase","fDate","Date","date","getTime","toISOString","fwFamily","fCol","push","fPath","fwVers","fwType","fwFolder","dev","fwInfo","versionNumber","hardware_type","devIdFamily","DEV_ID","substring","firmwareText","firmware_version","checked","rowKey","last_update_result","col_firmware_s","vMajor","vMinor","vPatch","keys","handleGetData","onScroll","scrollBottom","document","documentElement","scrollTop","innerHeight","scrollHeight","addEventListener","removeEventListener","UpperControls","pageState","DevsTable","profile","localState","setLocalState","viewMoreFws","debounceTimer","availableActions","firmwareFamilies","moreThanTen","checkedDevs","applyActionToSelected","wantUpate","devId","fwRow","fwColName","vMajorName","hwFirmwares","flexWrap","permissions","isAdminSistema","paddingTop","paddingRight","RadioButton","borderRight","padding","fontWeight","gap","fontSize","ReactTooltip","place","effect","delayHide","top","left","textColor","border","backgroundColor","maxWidth","pt","mb","clearTimeout","setTimeout","Select","options","onSelect","opt","ModalAddFirmware","ModalSendOtaUpdate","ModalUpdateResult","ModalReqVersResult","ModalReqCertResult","sortBy","setSorting","filtered","Checkbox","checkState","i","STATE_ID","CLIENT_NAME","UNIT_ID","UNIT_NAME","machineName","IconOnline","IconOffline","IconLate","FWVERSSTATUS","OTAPROCSTATUS","RowCheckbox","renderCheckbox","selectedFwFolder","file","notNull","hidden","fileName","fwStage","devIdFamilies","invalidDevices","compatibleVersions","canUpdate","checkCanUpdate","selected","paddingBottom","propLabel","maxHeight","overflowY","textDecoration","msgCantUpdate","outMsg","fwPath","join","render_modal","sendAll","isRetry","sendCommand","resolve","pars","waitLonger","thereWasErr","DevLine","subProps","renderLine","currFwInfo","wantedFwInfo","_currFwInfo$versionNu","_wantedFwInfo$version","currMajor","newMajor","startsWith","newIsRefactor","_currFwInfo$fwInfo","FormEditGroup","groupInfo","unitInfo","unitsList","dutsList","damsList","dacsList","clientId","onSuccess","onCancel","dutItem","roomDutLabel","ROOM_NAME","submitting","GROUP_ID","GROUP_NAME","unit","find","selectedDacs","autom","DEV_AUT","DAM_ID","dut","DUT_ID","associatedDacs","warningMessage","dac","DAC_ID","set_formData","v","isEdit","filteredDuts","filteredDams","selectedAutDacs","automationDevs","automationEnabled","checkAutomationConstraints","allowedDams","dam","disabled","marginRight","validation","event","changedAssociation","alert","associations","REL_DEV_AUT","REL_DUT_ID","CLIENT_ID","_associations$REL_DEV","_associations$REL_DEV2","_associations$REL_DEV3","REL_DAM_ID","REL_DRI_ID","numCols","repeat","AdminGroupAutomation","filteredList","damsListFull","dacsListFull","dutsListFull","lastScrollHeight","editingGroup","includeDacs","problemsFound","offsetHeight","group","success","groupId","isDac","openEditGroup","dacs","DAM_DUT_REF","dutAutomationEnabled","problem","getObjects","obj","val","objects","_obj$i","hasOwnProperty","lastIndexOf","Scroll","Head","Body","HeaderCell","HeaderTitle","Data","Row","ClientsList","fabricantes","_render","clients","clientsFiltered","nomesTipos","full","ENABLED","filterData","PERMS_C","cod2","clientTypes","getAllClients","PICTURE","EMAIL","clientType","ActionButton","keepDevsData","deleteClient","LightBlue","ClientsListWrapper","TableContainer","TableHead","TableBody","DataCell","HeaderRow","DevManufacts","manufacturers","fetchData","clientsList","IDSTART","IDEND","deleteItem","FormEdit","responseData","CLIENT_ID_item","reqData","CardTitle","ComandosDevel","comandoDevel","comandoDevelParams","enviando","command","IoTMonitoring","monitorDevMessages","iotMessages","socket","useWebSocket","wsConn","message","iotMessage","topic","now","send","readyState","stringify","EcoModeDebug","dams","damId","ecoInfo","damEcoDebug","_ecoInfo$damEcoState","_ecoInfo$damEcoState2","_ecoInfo$lastDamTelem","_ecoInfo$lastDamTelem2","_ecoInfo$lastDamTelem3","_ecoInfo$lastDamTelem4","_ecoInfo$ecoCfg$SETPO","_ecoInfo$ecoCfg","duts","cmd_state","damEcoState","cmd_exp","lastDamTelem","lastTelemetry","State","Mode","SETPOINT","ecoCfg","dutId","dutInfo","assocDuts","_dutInfo$lastDutTelem","_dutInfo$lastDutTelem2","_dutInfo$TUSEMIN","T0","lastDutTelem","Temperature","TUSEMIN","proxCmd","Table","rowDam","rowDut","DevTools","comp","show","DesktopTable","StyledSpan","SearchInput","IconWrapper","Label","KeyCodes","comma","slash","enter","delimiters","DUTIrList","actionOpts","selectedDUTSource","wantSetIrSource","ownershipOpts","ownershipFilter","tablePage","tablePageSize","totalItems","allChecked","viewAllClients","manageAllClients","viewMultipleClients","Header","Cell","MCHN_BRAND","slice","MCHN_MODEL","damInop","relay","StatusBox","lastCommTs","every","handleGetDUTS","onlyPossibleAutomation","SKIP","LIMIT","city","selectedDevs","ReactTags","tags","handleDelete","tag","handleAddition","allowDragDrop","allowDeleteFromEmptyInput","inputFieldPosition","minQueryLength","EmptyWrapper","DataTable","isUnit","onPageChange","page","currentPage","irSourceDev","dutCommandTypes","sourceIrCodes","configs","targetDutId","responses","confirmIRSource","CustomInput","GreyInputBorder","ConsumptionContainer","ConsumptionRow","DateRow","InputLabel","Blue700","DateLabel","InputText","input","Form","form","CicleDetailContainer","TitleSelectRow","CustomInputCicle","_templateObject18","Grey030","GreyLight","CicleInfoContainer","_templateObject19","CicleInfoRow","_templateObject20","CicleDateInfoRow","_templateObject21","ItemRow","_templateObject22","ItemDateRow","_templateObject23","ItemTitle","_templateObject24","ItemSubTitle","_templateObject25","_templateObject26","IconWrapperView","_templateObject27","Content","_templateObject28","BaseLinesBool","_templateObject29","ContentEnergyMeter","_templateObject30","_templateObject31","Black","Unit","_templateObject32","Test","_templateObject33","InputRow","_templateObject34","ContentDate","_templateObject35","Pink400","StyledCalendarIcon","_templateObject36","BtnExport","_templateObject37","ExportWorksheet","ModalTitle2","_templateObject38","IconWrapper2","_templateObject39","SectionContainer","_templateObject40","_templateObject41","SeeAssociationGroups","_templateObject42","ModalDesktop","_templateObject43","_templateObject44","MobileWrapper","_templateObject45","ModalSection","_templateObject46","Grey100","ModalTitleContainer","_templateObject47","_templateObject48","_templateObject49","Grey200","ModalDisassociate","_templateObject50","EditCicleContainer","_templateObject51","ModelRateContainer","_templateObject52","CancelButton","_templateObject53","RateGroupsTitle","_templateObject54","ContentTab","_templateObject55","StyledList","ul","_templateObject56","StyledItem","li","_templateObject57","StyledName","Grey500","ModalTitle3","_templateObject58","LabelSwitch","_templateObject59","CloseBtn","_templateObject60","Blue200","_templateObject61","CustomInputConstructedArea","_templateObject62","parseProgrammingString","pString","pData","startHM","endHM","desc","isDefault","rgx","matched","period","wholeDay","fillDescription","getDaySched","workPeriods","workPeriodExceptions","day","asDate","dayWeek","getUTCDay","dayDate","sched","getDayProgDesc","dayProgInfo","modes","allow","forbid","toLocaleLowerCase","clearProg","permission","start","end","FormAssociateDevs","groupsList","handlePaste","setUnits","clipboardData","getData","trim","activeElement","HTMLElement","blur","FormEditClass","classInfo","listUnitsSelect","editingExtras","selectedUnits","CLASS_ID","CLASS_TYPE","CLASS_NAME","pastedItems","onlyIds","forEach","oldClassUnitsList","oldClassUnitsIds","getClassUnits","onPaste","SelectMultiple","haveFuzzySearch","handleSelectItem","ButtonClear","FakeLink","unitIdsList","UNIT_IDS","_response","FormEditDut","roomTypes","stateChanged","changed","roomType","RTYPE_ID","warn","ENVIRONMENT_ID","ENVIRONMENT_NAME","DRI_ID","VAV_ID","weekDaysList","mon","tue","wed","thu","fri","sat","sun","SchedulesList","devSched","wantDelException","wantAddProg","wantEditDay","wantRemoveDay","dayProgs","excepts","week","dayName","isBlank","exceptions","prog","dateYMD","mt","readOnly","ItemWrapper","pr","ProgTable","TextProgTabDay","TextProgTabMode","pl","pb","ProgTableExc","SchedulesEdit","selectedDay","onConfirmProg","isSending","exception_date","ruleException","allowForbid","weekDays","start_time","end_time","formErrors","days","editProg","SelectDay","isSelected","ErrorMessage","mr","ml","start_index","test","horas","Number","minutos","end_index","validateForm","SchedulesRemove","onConfirm","isRemoving","isBold","Grey300","_ref4","verifyExistOrReturnString","FormEditRoomType","roomTypeInfo","schedulesTypeActive","editDayString","monTypesSelected","RTYPE_NAME","TUSEMAX","fullProg","CO2MAX","HUMIMAX","HUMIMIN","verifyExistItemOrReturnNull","parseDecimalNumber","modalContent","dayString","columnGap","isOk","validateParams","fullProgToWorkPeriods","SelectedContainer","Selected","EmptyLabel","Arrow","isOpen","Base","borderProperty","SelectedLabel","ListItem","Grey050","List","BlueBar","isLast","hideSelected","innerRef","useRef","setIsOpen","clickOutsideCallback","useCallback","useOuterClickNotifier","isOption","option","renderIcon","iconName","Icon","IconNames","ref","toggle","emptyLabel","closeOnSelect","formatDisplayedValue","suggestedNewValues","changeMultipleSelection","ExtrasList","wantDelete","wantEdit","wantAdd","ExtrasEdit","editedItem","FormEditExtras","unitId","wantClose","activeView","editedIndex","EXTRA_DATA","fetchServerData","onWantRemoveItem","onConfirmItem","middleware","thunk","InitialState","devInfo","store","createStore","applyMiddleware","saveSessionStorageItem","sessionStorage","setItem","removeSessionStorageItem","removeItem","getSessionStorageItem","jsonTryParse","getCachedDevInfoSync","getState","getCachedDevInfo","onlyCached","forceFresh","arguments","info","dut_aut","dri","dma","dal","dmt","optsDescs","driApplicationOpts","VAV","Fancoil","driMeterApplications","ET330","EM210","driVAVsApplications","driVAVApplicationsOptions","driFancoilsApplications","driChillerCarrierApplications","vavFancoilValveTypes","driChillerCarrier30HXParams","circuitAParams","CP_A1","unitMeasurement","CP_A2","CAPA_T","DP_A","SP_A","SCT_A","SST_A","CPA1_OP","CPA2_OP","DOP_A1","DOP_A2","CPA1_DGT","CPA2_DGT","EXV_A","HR_CP_A1","HR_CP_A2","CPA1_TMP","CPA2_TMP","CPA1_CUR","CPA2_CUR","circuitBParams","CP_B1","CP_B2","CAPB_T","DP_B","SP_B","SCT_B","SST_B","CPB1_OP","CPB2_OP","DOP_B1","DOP_B2","CPB1_DGT","CPB2_DGT","EXV_B","HR_CP_B1","HR_CP_B2","CPB1_TMP","CPB2_TMP","CPB1_CUR","CPB2_CUR","driChillerCarrierGeneral30HXParams","CHIL_S_S","CAP_T","DEM_LIM","LAG_LIM","SP","CTRL_PNT","EMSTOP","COND_LWT","COND_EWT","COOL_LWT","COOL_EWT","COND_SP","CHIL_OCC","STATUS","driChillerCarrierAlarmParams","alarm_1","alarm_2","alarm_3","alarm_4","alarm_5","driChillerCarrier30XAParams","OP_A","SLT_A","HR_CP_A","OP_B","SLT_B","HR_CP_B","driChillerCarrierGeneral30XAParams","CTRL_TYP","SLC_HM","SP_OCC","OAT","HR_MACH","HR_MACH_B","driMetersCfgs","application","protocol","serialMode","modbusBaudRate","parity","stopBits","telemetryInterval","driSlaveId","driProtocolsOpts","driParityOpts","Desabilitado","Ímpar","Par","driLayerOpts","Ethernet","driStopBitsOpts","modbusBaudRateOpts","currentCapacityOpts","installationTypeOpts","driApplicationCfgs","Tabs","links","ulRef","link","currCont","current","innerWidth","offsetLeft","scrollLeft","handleScrollTo","EnergyMeterForm","_state$energyMetersDa2","_state$energyMetersDa3","clearEnergyForm","checkMultipleEnergyMeters","useTranslation","borderLeftColor","borderLeftWidth","borderLeftStyle","borderRadius","borderRightColor","borderRightWidth","borderRightStyle","borderTopColor","borderTopWidth","borderTopStyle","borderBottomColor","borderBottomWidth","borderBottomStyle","paddingLeft","paddingBotoom","_state$energyMetersDa","SERIAL","energyMetersData","meterSerial","MANUFACTURER","selectedManufacturer","meterDriId","selectedMeterModel","filteredModelsList","selectedCurrentCapacity","selectedInstallationType","nameOfEstablishment","aligndiv","SelectNew","manufacturersList","modelsList","model","MANUFACTURER_ID","CicleDetail","_state$vigencyCicle$W","_state$vigencyCicle$W2","_state$vigencyCicle$W3","_state$vigencyCicle$W4","_state$vigencyCicle$W5","_state$vigencyCicle$W6","_state$vigencyCicle$W7","_state$vigencyCicle$W8","_state$vigencyCicle$W9","_state$vigencyCicle$W10","_state$vigencyCicle$C","rateModels","formUnitState","selectedModel","modelOptions","energyRate","vigencyCicle","vigencyModel","modelName","selectedModelId","modelId","rateCicles","loadVigencyCicle","START_CICLE_DATE","END_CICLE_DATE","groupName","subGroupName","rateModalityName","WHITERATE_PARAMETERS","RATE_PONTA","START_PONTA","END_PONTA","FIRST_MID_RATE","START_FIRST_MID_RATE","END_FIRST_MID_RATE","LAST_MID_RATE","START_LAST_MID_RATE","END_LAST_MID_RATE","RATE_OUTPONTA","CONVENTIONALRATE_PARAMETERS","RATE","PIS","COFINS","ICMS","iframe","img","DragContainer","isPadding","DropzoneArea","maxFiles","fileDropped","extensions","acceptedFiles","fileRejections","isDragActive","getRootProps","getInputProps","useDropzone","accept","onDrop","preview","createObjectURL","filesNames","deleteSims","deleteArray","sim","listSimcards","ICCID","OLDICCID","ICCIDS","editUpdateSims","listToSet","listSimEdit","ACCESSPOINT","MODEM","MACACCESSPOINT","MACREPEATER","addPhotosSims","listAddPhotos","simInfo","simcard","iccid","referenceId","ID","referenceType","deletePhotosSims","deleteListPhotos","filename","formValidators","login","required","loginExtra","consumerUnit","password","comboHydrometerOptions","FormEditUnit","_unitInfo$AMOUNT_PEOP","_unitInfo$CONSTRUCTED","_formData$CONSTRUCTED2","_formData$distributor","moment","locale","countries","states","timezones","distributors","setFiles","isBaselineOpen","supervisors","selectedDistributor","isBaselineEdit","isBaselineValuesEdit","accessPoints","additionalDistributorInfo","accessPointsAvailable","energyMeters","waterMeters","selectedSupplier","hydrometerModel","installationDate","meterWaterId","totalCapacity","totalOfReservoirs","installationLocal","otherInstallationLocal","focused","isAllEnergyMetersFromDiel","modalAddSimcard","formSimcard","pontoAcesso","modem","macPontoAcesso","macRepetidor","itemDesc","modalDesc","editDeleteSim","modalDeleteSim","PasswordInputType","ToggleIcon","usePasswordToggle","visible","setVisiblity","visiblity","TARIFA_KWH","PRODUCTION","Boolean","city_item","state_item","country_item","distributor","DISTRIBUTOR_ID","LOGIN","login_extra","LOGIN_EXTRA","consumer_unit","CONSUMER_UNIT","PASSWORD","baselineValues","baselineTemplate","baselineId","ADDITIONAL_DISTRIBUTOR_INFO","timezone","area","TIMEZONE_AREA","TIMEZONE_OFFSET","TIMEZONE_ID","AMOUNT_PEOPLE","CONSTRUCTED_AREA","usersList","setUsersList","isAccessDistributorEdit","comboLocalOptions","isAllDiel","meter","_meter$selectedManufa","includeAdmins","oldSupervisorsList","oldSupervisorsEmail","supervisor","oldSupervisors","USER","getClientUsers","updateAccessDistributorData","_state$energyMeters","capacityTc","installationType","_devInfo$dri","_devInfo$dri$varsCfg","_devInfo$dri$varsCfg$","_devInfo$dri2","_devInfo$dri2$varsCfg","_devInfo$dri2$varsCfg2","ENERGY_DEVICE_ID","varsCfg","varsList","address","_installationTypeOpts","manufacturer","MODEL","ESTABLISHMENT_NAME","getEnergyData","_state$waterMeters","meterId","integrId","_info$installationDat","supplier","hasDefaultOption","installationLocation","quantityOfReservoirs","getWaterData","getListSimcards","queryPars","linkBase","tabs","aba","categoria","energyTabs","register","handleSubmit","watch","formState","errors","useForm","filtStates","COUNTRY_ID","filtCities","unitStatus","flexFlow","onSubmit","responseBaseline","responseAccessDistributor","_formData$CONSTRUCTED","amountPeople","amountPeopleValue","isNaN","isInteger","verifyAmountPeople","RATE_MODEL_ID","reqDataAccessDistributor","reqBaseline","BASELINE_ID","BASELINE_TEMPLATE_ID","BASELINE_TEMPLATE_TAG","reqBaselineValues","USER_ID","Headers2","selectedCountry","selectedState","suffix","SelectSearch","printOptions","filterOptions","fuzzySearch","_state$distributors$f","_state$accessPoints$f","distributorTag","access_points","handleAccessPoints","InputNew","isInputFilled","formLabel","FormEditBaselines","onHandlePrice","month","price","baselineIndex","findIndex","BASELINE_MONTH","BASELINE_PRICE","BASELINE_KWH","onHandleKwh","kwh","onHandleBaselineTemplate","onHandleBaselineId","onHandleIsBaselineEdit","onHandleIsBaselineValuesEdit","SingleDatePicker","onDateChange","dateEnd","onFocusChange","numberOfMonths","isOutsideRange","dmaData","DMA_ID","laagerData","meters","energyMeter","meterReqData","_energyMeter$selected","_energyMeter$selected2","driCfg","driId","_error$response3","_error$response4","handleSubmitEnergyMeterInfo","HYDROMETER_MODEL","defaultInstallationLocation","INSTALLATION_LOCATION","INSTALLATION_DATE","format","TOTAL_CAPACITY","QUANTITY_OF_RESERVOIRS","CHANGED_BY_UNIT","changedByUnit","handleSubmitWaterMeterInfo","catch","SubmitSimcards","FormEditModel","_state$selectedDistri","itemToEdit","groupOptions","subGroupOptions","rateModalities","distributorOptions","selectedGroup","selectedSubgroup","selectedModality","rateGroups","rateSubGroups","loadConfig","distributorLabel","distributorId","subGroup","subgroup","rateModality","modality","MODEL_ID","MODEL_NAME","SUBGROUP_ID","RATEMODALITY_ID","FormEditAssociation","associationInfo","associationsList","selectedUnit","unitGroupsList","selectedGroups","ASSOC_ID","ASSOC_NAME","GROUPS","unitIds","getUnitGroups","ModalContainer","ModalHeader","borderColor","POSITION","_group$POSITION","groups","TableClasses","onDeleteClick","onEditClick","classesUnitsList","filterClassUnits","classUnits","getClassesUnits","TableModels","onDeleteModelClick","onDeleteCicleClick","openEditCicle","openCreateEditModel","models","_item$rateCicles","_item$rateCicles2","hide","onClickHide","cicle","CICLE_ID","CICLE_NAME","ChevronTop","ChevronBottom","TableDuts","vavsList","setIsLoad","_renderVar","selectOption","sortOrder","orderColum","numSelect","selectedRType","filteredRows","setFilteredRows","listEnvironments","setEnvironments","routeParams","useParams","getDataPerPage","columnsEnvironment","checkItem","newItem","ENV_ID","isChecked","isCheckedItem","filterItem","notCheckAllItems","notIncludes","checkAllItems","sortedRows","newSortOrder","dynamicSort","handleSetOrderColumn","Pagination","onNextPage","onPreviousPage","ModalEnvironment","updateOrDelete","arrayPromisse","arr","DEVS_INFO","verifyRoute","setsIsLoading","zIndex","TableFreeDevices","freeDevs","selectionChanged","freeDevChecked","TableRoomTypes","schedCol","DUTS_COUNT","DRIS_COUNT","button","MosaicMachineList","TableList","TooltipContainer","getStatusColor","isPrimary","background","font","TableExpandButton","health","healthLevelColor","dat","TransparentLink","TableItemCell","TableUnits","unitsDisp","unitsDispLoading","onToggleReportClick","waterList","renderUnits","listChecked","setListChecked","unitsSupervisorsList","getUnitsSupervisors","acessor","FaTools","LATLON","DISABREP","ENERGY_METER","WATER_METER","_unitsDisp$item$UNIT_","_unitsDisp$item$UNIT_2","water","DEVICES","DACS_COUNT","DAMS_COUNT","AVAILABILITY_LAST_7_DAYS","avgDisp","formatNumberWithFractionDigits","toFixed","RESPONSIBLE","unitSupervisors","NOME","SOBRENOME","filterUnitSupervisors","REPORT","METER_ENEGY_DEVICE","METER_WATER_INTEGR","checkBox","multipleConfig","keySearch","isAutomation","_state$application","isFancoil","driApplication","isVAV","isFancoilVavAutomation","checkNewProtocolsValues","cfg","getKeyByValue","object","FormEditMachine","_props$machineWithAss","_props$machineWithAss2","_props$machineWithAss3","isViewMachine","selectedApplication","selectedChillerModel","selectedChillerLine","driInfo","driProtocol","driLayer","driParity","driStopBits","driSendInterval","driCfgFile","isChillerCarrier","machine","machineWithAsset","unitName","brandName","BRAND","GROUP_TYPE","refrigerationCapacity","assets","reduce","accumulator","AST_ROLE","CAPACITY_PWR","refrigerationFluid","FLUID_TYPE","applic","MCHN_APPL","ratedPower","MACHINE_RATED_POWER","automationDevId","capacityMeasurementUnit","asset","CAPACITY_UNIT","refDUTId","assetsSumRatedPower","MCHN_KW","handleChangeAssets","assetsForm","sumRatedPower","roleId","sumRefrigerationCapacity","condensers","checkDevExistsAnotherAsset","devCode","assetToIgnore","assetId","verifyPermissions","isInstaller","_profile$adminClientP","adminClientProg","CLIENT_MANAGE","_state$driInfo","_state$driInfo$info","verifyAutomPermission","indexAux","_asset$CAPACITY_PWR","_asset$MCHN_KW","AST_DESC","datId","DAT_ID","role","AST_TYPE","devIdPersisted","devClientAssetId","DEV_CLIENT_ASSET_ID","datIndex","DAT_INDEX","ASSET_ID","chillerModel","CHILLER_MODEL_NAME","chillerModelValue","CHILLER_MODEL_ID","chillerLine","CHILLER_LINE_NAME","chillerLineValue","CHILLER_LINE_ID","nominalCapacity","NOMINAL_CAPACITY","nominalVoltage","NOMINAL_VOLTAGE","nominalFrequency","NOMINAL_FREQUENCY","setDriCfg","_getKeyByValue","_getKeyByValue2","_getKeyByValue3","_getKeyByValue4","_getKeyByValue5","_driCfg$driConfigs","_driCfg$driConfigs$fi","_driCfg$driConfigs2","_driCfg$driConfigs2$f","_driCfg$driConfigs3","_driCfg$driConfigs3$f","_driCfg$driConfigs$fi2","_driCfg$driConfigs4","_driCfg$driConfigs4$f","_driCfg$driConfigs4$f2","_driCfg$driConfigs$fi3","_driCfg$driConfigs5","_driCfg$driConfigs5$f","_driCfg$driConfigs5$f2","_formData$assets$0$ch","_formData$assets$","_driCfg$varsList","_driCfg$varsList$find","_driCfg$varsList$find2","_driCfg$varsList$find3","defaultConfig","driConfigs","uploadSelectedDriConfigFile","_formData$assets$2","getDriApplication","sendInterval","slaveId","_state$selectedCurren","_state$selectedInstal","intervalTmp","createVariables","_state$driCfgFile","SYSTEM_NAME","worksheetName","onStateSelected","_formData$assets$5","getDriInfo","_formData$assets$3","_formData$assets$4","assetsWithoutName","_formData$machine$aut4","_props$machineWithAss4","reqCombos","combos","devAut","value1","value2","isDut","formatedDate","groupResponse","FRIGO_CAPACITY","FRIGO_CAPACITY_UNIT","RATED_POWER","SUM_RATED_POWER_CONDENSERS","assetsOriginal","DEVICE_CODE","DAT_COUNT","OLD_DEV_ID","UPDATE_MACHINE_RATED_POWER","TYPE_CFG","CHILLER_CARRIER_MODEL_ID","_formData$machine$aut","_formData$machine$aut2","_formData$machine$aut3","isDam","isDri","FormMachine","registerParente","onHandleChangeMachine","machineForm","onHandleChangeAsset","unitsOpt","modelsChillerList","comboOpts","handleSelectedApplication","handleSelectedChillerCarrier","selectedChillerCarrier","handleSelectedChillerModel","handleSelectedChillerLine","FormAssetsList","onHandleDeleteAsset","onHandleChange","ViewCAG","ViewMachine","preventDefault","FormEditCreateCicle","cicleBaseInfo","dateStart","focusedEnd","dateStartEnd","dateEndF","formCicle","ponta","outPonta","startPonta","endPonta","firstMidRate","startFirstMidRate","endFirstMidRate","lastMidRate","startLastMidRate","endLastMidRate","rate","_itemToEdit$WHITERATE","_itemToEdit$WHITERATE2","_itemToEdit$WHITERATE3","_itemToEdit$WHITERATE4","_itemToEdit$WHITERATE5","_itemToEdit$WHITERATE6","_itemToEdit$WHITERATE7","_itemToEdit$WHITERATE8","_itemToEdit$WHITERATE9","_itemToEdit$WHITERATE10","_itemToEdit$CONVENTIO","loadEditCicle","_ref5","_ref6","_ref7","_ref8","_ref9","_ref10","_ref11","_ref12","_ref13","_ref14","_ref15","_ref16","_ref17","_state$dateStart","_state$dateStartEnd","_state$dateStartEnd2","createEditCicle","FormEditCicle","openCreateEditCicle","FormEditHeatExchanger","heatExchangerInfo","brandList","T_MIN","T_MAX","DELTA_T_MIN","DELTA_T_MAX","BaseSpan","suffixLength","GreyInputPlaceholder","defineLabelColor","TextInfo","TextInfoLoading","InputWithValidation","cProps","onEnterKey","validateFunction","newDevice","hasMachine","setLoading","setStatus","setAllowedMonitoring","InputValidationContext","htmlFor","onKeyPress","nativeEvent","keyCode","visibility","TextStatus","textStatus","textStatusOkDAM","textStatusNotOkDAM","associated","SideBar","SelectDMTport","eletricCircuitId","addUnitToString","propOrNullValue","getParamNumber","param","FormEditUtility","utilityInfo","utilityType","hasMonitoring","DMT_CODE","DAL_CODE","DAM_ILLUMINATION_CODE","selectPortNow","PORT","FEEDBACK","hasDatId","DAT_CODE","buttonDisabled","portsOpt","feedbackOpt","applicationOpts","getDmtPortsOpts","ports","MONITORING_DEVICE","NEW_UTILITY_TYPE","port","nobreakId","feedbacks","getDalPortsOpts","illuminationId","fb","getPortsOpts","opts","portsInfo","propOrEmpty","prop","allowedMonitoring","portProp","labelProp","hasPort","UNIT","APPLICATION","INSTALLATION_DATA","INPUT_VOLTAGE","OUTPUT_VOLTAGE","NOMINAL_POTENTIAL","BATTERY_LIFE","NOMINAL_BATTERY_LIFE","INPUT_ELECTRIC_CURRENT","OUTPUT_ELECTRIC_CURRENT","NOMINAL_BATTERY_CAPACITY","GRID_VOLTAGE","GRID_CURRENT","getFormDataInitialState","isLessThanZero","number","confirmNobreak","propOrNull","confirmIllumination","_formData$GRID_VOLTAG","hasDevice","hasDmt","hasDal","hasDam","feedback","gridVoltageSplitted","validateMonitoringDmtUtility","ans","freePorts","handleValidateFunction","freeDevice","validateMonitoringDamIlluminationUtility","validateMonitoringIllumination","notValidate","monitoringDeviceForm","labels","deviceCode","deviceIdText","devicePortText","monitoringText","ToggleSwitchMini","opacity","UtilityIcon","noSuffixBorder","_result$action","_result$action2","sliceStr","len","addUnit","ViewUtility","onClickEdit","additionalParameters","setAdditionalParameters","utilityValues","feedBack","devicePort","installationData","toLocaleDateString","inputVoltage","outputVoltage","gridCurrent","gridVoltage","nominalPotential","nominalBatteryLife","inputElectricCurrent","outputElectricCurrent","nominalBatteryCapacity","dmtCode","nobreakPort","datCode","formatUtilityInfo","NOBREAK_ID","parameters","getNobreakAdditionalParameters","verifyInfoAdditionalParameters","ClientPanelLayout","manageSomeClient","prefix","CSVheader","modalOptions","daysOfTheWeek","modalWidthByType","modalPaddingByType","ClientPanelPage","selectedClient","singleClientViewId","ClientPanel","clientInfo","deviceLink","PROP","csvLinkEl","cicleToEdit","isLoadingDuts","units","energyMetersList","timezonesList","statesList","citiesList","countriesList","accessPointsList","damsListDac","environmentList","drisList","machinesWithAssetsList","classesList","distributorsList","showDAMs","showDUTs","selectedMachine","selectedAssociation","selectedDut","selectedRoomType","selectedAlert","selectedClass","selectedRateModel","selectedRateCicle","selectedHeatExchanger","lastDate","subtract","selectedDate","datesRange","getDatesRange","focusedInput","gettingCsv","associationsColumns","showGroups","openCreateEditAssociation","groupColumns","openCreateEditGroup","machineColumns","openCreateEditMachine","heatExchangerColumns","deleteHeatExchanger","openCreateEditHeatExchangere","heatExchangersList","nobreaksColumns","getUtilityActionColumns","illuminationColumns","selectedUtilityItem","selectedUtility","iluminationList","nobreakList","actionColumns","openViewUtility","openCreateEditUtility","resetParamsUrl","setEnvironmentList","environments","newListEnvFiltered","listIds","DUT_CODE","ENVIRONMENTS_ROOM_TYPES_ID","PLACEMENT","ISVISIBLE","temprtAlert","clientIds","INCLUDE_INSTALLATION_UNIT","nobreak","illum","rtypes","fullName","countryId","providers","stateFullName","fluids","types","brands","roles","applics","chillerModels","chillerLines","brand","fluid","line","processReceivedServerData","getDispCsvData","formattedCSV","dispList","unitDisp","startDate","YMD","endDate","disp","_disp$disponibility","cliente","clientName","unidade","disponibilidade","disponibility","dia","d1","m1","d2","m2","diff","click","rType","_machine$dacs","DEVS_QUANTITY","association","GROUPS_COUNT","vav","openCreateEditUnit","isView","openEditDut","openCreateEditRoomType","openCreateEditClass","deleteUtility","deleteNobreaks","ILLUMINATION_ID","deleteIlluminations","deleteEnvironment","env","afterCreateEditClass","utilityButtons","float","getModels","profilePerms","AccordionV2","opened","openedExtraHeader","calculateClientUnitsDisp","getDuts","ModelRate","_ref19","_ref18","isChiller","deleteGroup","deleteAssociation","_ref27","_ref28","_ref29","getEnvironments","bool","rtype","StyledLine","hideEmptyTable","bottom","_ref20","_ref21","_ref22","_ref23","found","_ref24","cicleInfo","ShowAssociationGroups","_ref25","_ref26","_ref30","isBefore","alignSelf","CSVLink","DMY","replaceAll","separator","asyncOnClick","enclosingCharacter","_ref31","ModalMobile","closeModal","LayerBackgroundModal","GreyDefaultCardBorder","PictureBox","MaskPhone","generateNameFormatted","subName","FORM_VALIDATORS","email","phone","validate","RegExp","cnpj","EditClient","useRouteMatch","fabricante","picture","setPicture","setClientType","enabled","setEnabled","phoneNumber","setPhoneNumber","setCnpj","setClientInfo","client","auxClientType","CNPJ","PHONE","defaultParams","handleChange","MaskCnpj","Image","FaRegTrashAlt","selectPictureFile","htmlNode","getElementById","onchange","reader","FileReader","readAsDataURL","tabIndex","FaFileUpload","Radio","Group","AntSwitch","SelectContainer","LoaderContainer","FaultsRow","FaultsLayout","APPROVAL_DESCS","APPROVED","REJECTED","ERASED","PENDING","RESTABLISHED","RESTAB_WAITING","RESTAB_PENDING","FaultsList","selectPositionX","selectPositionY","filterOpts","statusSelection","healthSelection","unitSelection","clientSelection","dataSelection","faults_count","tomorrow","add","isModalOpen","multiDays","useLocation","faultType","splitPath","filterFaultsBySearchTerms","filteredFaults","term","shouldSkipTerm","filterFaultRowsByTerm","hLevelDesc","faultRow","origem","applyFilters","primDet","isSameOrAfter","isSameOrBefore","faultyDacs","expirationLimit","devType","faults","fdetected","falha","buildFaultLine","healthLevelDesc","H_INDEX","rowkey","loadData","filteredDacs","_state$dataSelection","auxiliarFilteredDacs","_falha$firstRiseTS","_falha$firstRiseTS$su","_falha$lastRiseTS","_falha$lastRiseTS$sub","lastActionTime","lastAction","faultName","origin","firstRiseTS","ultDet","lastRiseTS","statusDesc","TABLE_COLUMNS","HealthIcon","fault","checkable","checkValue","clientX","clientY","handleFaultItemClick","selectedDacFaults","faultId","exportResponse","revokeObjectURL","download","applyActionToSelectedDacs","selectedFaults","faultAction","dev_id","ignore","FaultsListDAM","faultyDams","selectedDamFaults","applyActionToSelectedDams","FaultsListInstallation","startTime","falhas","dacInfos","dacFaults","faultsList","fault_time","former","notif_type","return_time","dacInfo","fault_name","flattenedData","flatMap","dataEntrada","dataSaida","InputNumber","StyleSelect","CustomAnalysis","ExportarDevs","isExportingDacs","exportDacsList","exportDutsList","exportDamsList","TemprtMediaDUTs","render_","isExporting","dayStart","exportList","updateDataLimits","newDataLimits","currentDataLimits","minVar","calculateAxisInfo","dataLimits","numOfBoolVars","booleanTypes","minTval","maxTval","minPval","maxPval","minCO2val","maxCO2val","hasTdata","hasPdata","minHum","maxHum","varLimits","Pressure","CO2","Humidity","presentLimits","hasCO2data","hasHum","getInitialLimits","minTicks","tInfo","pInfo","minTtick","maxTtick","Math","ceil","floor","minPtick","maxPtick","getMinTicks","L1start","boolVarStep","minTaxisVal","tempLimits","tempTicks","lineType","lineBase","presLimits","presTicks","minTAxisVal","totalSteps","round","positiveSteps","negativeSteps","pStepSize","getPresLimitsAndTicks","co2Limits","co2Ticks","co2Info","stepSize","minVal","maxVal","getCO2LimitsAndTicks","updateBoolY","varTypes","ticksValues","lineData","pop","ticks","tick_0","tick_1","calcTickLimits","element","L","convertBoolValue","Lval","lineIndex","fillMaxMin","maxY","minY","fillSteps","y_orig","steps","s","y_chart","GraphWrapper","ColoredDottedLine","ColoredLine","CheckboxLine","DesktopWrapper","CardWrapper","CustomLabel","angle","LightGrey_v3","NoGraph","colorList","varsProperties","Tamb","colorDefault","colorFanCoil","Pink100","Tsuc","colorHeat","Tliq","Psuc","Pliq","Tsc","Tsh","Lcmp","Levp","Lcut","Orange600","L1raw","L1fancoil","deltaT","Icomp","Green_v2","Vinsuf","Yellow_v3","varsFix","processFaultsData","histData","faultsChart","lines","colorIndex","lineId","isBool","booleanLines","axisCalc","leftLimits","leftTicks","boolTicksNames","calculateGraphData","DACHistoricContents","onDevInfoUpdate","dacId","xDomain","xTicks","refAreaLeft","refAreaRight","numDays","chartData","vars","numDeparts","selectedL1Sim","gotHwCfg","withFaults","withPsuc","getEndTime","usePsi","prefsObj","pressureUnit","axisDataLimits","axisInfo","graphEnable","t_lim","deltaT_lim","hwCfg","hasPliq","hasPsuc","hasTsc","hasTsh","hasAutomation","isFanCoil","processFault","faultsHist","definitions","gravityTranslation","periodStart","source","approvalState","approved","isPermDetected","permanence_detected","restab","CheckPermDetected","fault_id","faultText","gravity","duration","utc","timestamp","asHours","time","insertVars","chartVars","tsucIndex","tliqIndex","DAC_APPL","axisId","temp","csvValueFormatter","numberValue","parseFloat","onMultidaysClick","tickXLabelFormaterDay","hour","dd","getDate","padStart","mm","getMonth","dateFinal","tickXLabelFormaterHour","sign","hh","abs","CsvLabelFromaterData","min","ss","_state$devInfo","_state$devInfo2","dayYMD","selectedParams","commonX","limts","psuc","DAC_TYPE","debug_L1_fancoil","boolLines","from","_","startOf","faultParams","endOf","faultDefs","faultDef","defs","getFaultHistory","P0Psuc","P1Psuc","P0Pliq","P1Pliq","SELECTED_L1_SIM","heatExchangeId","HEAT_EXCHANGER_ID","renderQuarterTickHour","tickProps","textAnchor","getCsvData","_state$devInfo7","_state$devInfo8","_state$devInfo9","_state$devInfo10","totalNumDeparts","indexNumDeparts","_state$devInfo3","_state$devInfo4","_state$devInfo5","_state$devInfo6","valueNumDeparts","insertNumDeparts","EVAPORATOR_MODEL_ID","INSUFFLATION_SPEED","penultimo","temperatureLabel","typeLoading","returnNoGraph","isFanCoilOrHeatExchanger","verifyClientsFeature","_state$devInfo11","_state$devInfo12","verifyhasAutomationNotFancoil","verifyEvaporatorAndInsufflation","isUsePsei","DateRangePicker","startDateId","endDateId","onDatesChange","noBorder","BtnExportReduced","shouldCloseOnSelect","userSelect","minHeight","Overlay","ResponsiveContainer","LineChart","right","onMouseDown","activeLabel","onMouseMove","onMouseUp","CartesianGrid","XAxis","allowDataOverflow","tickFormatter","domain","xAxisId","tickLine","axisLine","allowDuplicatedCategory","tick","YAxis","yAxisId","CustomTickTemp","interval","content","_state$devInfo13","_state$devInfo14","CustomTickPress","orientation","Tooltip","isAnimationActive","labelFormatter","formatter","varInfo","isPressure","Line","dot","animationDuration","refArea","ReferenceArea","deltaTReferenceLines","ReferenceLine","temperatureReferenceLines","lineChartFancoilHeatExchanger","lineLimitsTemperature","featureClientsEvaporatorAndInsufflation","FaultsChart","onFaultsCheck","ScatterChart","active","local","allowDecimals","CustomYTick","Scatter","isDet","shape","Dot","anchor","WrapperDesktop","WrapperMobile","AnalysisFilters","filters","dateValuePicker","getSelectedDate","isValid","renderOption","snapshot","icon","sortedFilters","_opt$options$","multiple","uniqueSelect","setOnChange","displayFormat","isAfter","DielTool","dielTool","onApply","MachineConsumption","machinesCsvLinkEl","groupedMachines","dateList","mdate","totalGreenAntCons","totalGreenAntInvoice","totalAirCondCons","savings_kWh","getDatesList","year","dayEnd","dacList","machinesCsvData","getMachinesCsvData","includeConsumption","cons","extTemp","extTempMax","extTempMin","CONSUMPTION","DAY_HOURS_ON","DAT_REPORT","meanT","maxT","minT","dayInfo","DAC_KW","sumCons","DAC_NAME","pot","kw","coloredCons","consH","consKWH","handleGetUnitInfo","consumo","minimum","maximum","usage","DeviceTelemetry","deviceTelemetryCsvLinkEl","groupedDevs","yesterday","hourStart","hourStartMilliSeconds","hourEnd","hourEndMilliSeconds","energyApiResponse","assetsList","initTimeSave","initTime","endTime","numMilliseconds","alertColor","dutList","damList","driList","deviceTelemetryCsvData","handleDevices","device","promises","handleDacData","paramsDac","promise","websocketHistory","tamb","tliq","tsuc","tsc","tsh","lcmp","lcut","levp","handleDutData","paramsDut","setDutData","asTable","dutsTemprt","labels_State","c","telemetry","setDutsTemprt","isDutDuo","handleDriData","_state$energyMeter","_state$energyMeter2","paramsDri","_device$dris","en_at_tri","dris","energy","limits","selectedTime","OperationMode","operationMode","Setpoint","setpoint","Status","limiteMax","limiteMin","handleDamData","paramsDam","_state$groupedDevs","energy_device_id","serial","handleEnergyMeter","updateDevsLists","pliq","_state$energyMeter5","currentTime","CsvLabelFromaterDataMilliSeconds","_telemetry","formatTelemetriesCurrent","csvOperationModeFormatter","addFiveSeconds","_state$energyMeter3","_state$energyMeter4","tamb_DAC","tliq_DAC","tsuc_DAC","sinal_DAC","pliq_DAC","psuc_DAC","tsh_DAC","tsc_DAC","state_DUT","mode_DUT","prog_DUT","temp_DUT","_state$energyApiRespo","energy_DRI","operationMode_DRI","setpoint_DRI","status_DRI","limiteMax_DRI","limiteMin_DRI","state_DAM","mode_DAM","prog_DAM","MedicaoTempDuts","periodTelemetria","workPeriod","dutsInfo","selectedDuts","usageData","work","_state$workPeriod$ite","getTempsCsvData","currentDate","initialDate","finalDate","timeDiff","telemetriaFilter","ManualDevCommand","FerramentasDiel","CoolAutomation","customers","sites","devices","systems","coolAutUnits","gridCells","gridColumns","associatedDevices","dielUnits","groupedEvents","combo_selectedDielUnit","combo_selectedCoolAutDevice","valsTransl","customer","_sites","site","_devices","_customer","_systems","_site","system","_units","_device","_system","operationStatuses","operationModes","fanModes","swingModes","unitTypes","outdoorUnitTasks","customerCells","siteCells","isConnected","deviceCells","operationStatus","systemCells","activeFanMode","activeOperationMode","activeOperationStatus","activeSetpoint","activeSwingMode","ambientTemperature","task","systemCell","deviceCell","siteCell","customerCell","generateGrid","evtGrp","firstTs","lastTs","comboLabel","dielUnitId","coolAutSystemId","dataSource","GridContainer","header","cell","gridRowEnd","colStatus","colSite","colDevice","colSystem","colResources","colEventType","colCode","colDescription","evCount","DRIUnits","combo_selectedDRI","TableBasic","GreenAntMeters","sortedUnits","freeMeters","combo_dielUnit","combo_greenantMeter","units2","GA_METER","associatedUnits","disassociatedUnits","disassociatedMeters","organizationName","uid","Water","freeDmas","combo_meters","combo_supplier","metersList","disassociatedDmas","associatedMetersId","customer_id","_state$combo_meters","Integrations","allTabs","SensorsConfig","sensorsList","selectedSensor","SENSOR_ID","openCreateEditSensor","TableSensors","sensor","FormEditSensor","sensorInfo","MULT_LIN","OFST","MULT_QUAD","idTouched","SENSOR_NAME","colorPalete","ChartLine","indexes","_v","formaterXTick","tickSecondX","tooltipXLabelFormater","_accessor","_payload","varsInfo","LegendaGroup","onCheckboxChanging","onColorChanging","shouldBeChecked","setAllGroup","Legenda","_lineInfo","lineInfo","displayColorPickerFor","onLineColorClick","SketchPicker","ServersMonitoring","loadingOtherCharts","loadingBrokersMonit","formExport","timespan","tsStart","exporting","serversList","brokersMonit","datePickerFocused","list2","serverData","serverItem","isBrokerDiel","records","isBroker2Dynamo","disk_info","isIotRelay","payload_ts","charts","flatRecords","flattenRecords","createChartsBroker2Dynamo","createChartsIotRelay","brokersMonHist1","createChartsBrokerDiel2","commonx","fetchBrokersMonit","chartId","hex","toLocaleTimeString","toLocaleString","tsEnd","telm","ts","est_conn","b0_conn_arr","brokers_stats","conn_arr","b0_conn_closed","conn_closed","b0_est_conn","b0_pub_brtodv","pub_brtodv","b0_pub_others","pub_others","b0_subscr","subscr","b0_tls_err","tls_err","b1_conn_arr","b1_conn_closed","b1_est_conn","b1_pub_brtodv","b1_pub_others","b1_subscr","b1_tls_err","disk_info_free","free","disk_info_total","total","loadavg_fifteen","loadavg","fifteen","loadavg_five","five","loadavg_one","one","mem_info_avail","mem_info","avail","mem_info_buffers","buffers","mem_info_cached","cached","mem_info_free","mem_info_swap_free","swap_free","mem_info_swap_total","swap_total","mem_info_total","http_reqs","command_reqs","b0_commands_sent","commands_sent","b0_commands_error","commands_error","b1_commands_sent","b1_commands_error","numBrokers","record","clientes","mqttAct","conexoes","nColor","rec","refTs","unico","HeaderCellOrder","DataCellCenter","DataCellRight","CustomSelect","QuickSelection","_props$excludeSelects","_props$excludeSelects2","showDialog","setShowDialog","setDate","ClickAwayListener","onClickAway","handleClickAway","m","textDecorationLine","isShortMode","boxShadow","Grid","excludeSelects","setValueState","_sessionStorage$getIt","getCitiesList","citiesListOpts","stateId","selectedCityOpts","getUnitsList","unitsListOpts","selectedUnitOpts","getStatesList","statesListOpts","selectedStateOpts","getDeviceInfo","ajustParams","filterStyle","onKeyDown","UtilFilter","_props$listFilters37","_props$listFilters38","_props$listFilters39","_props$listFilters40","_props$listFilters41","_props$listFilters42","_props$listFilters43","_props$listFilters44","_props$listFilters45","_props$listFilters46","_props$listFilters47","_props$listFilters48","_props$listFilters49","_props$listFilters50","_props$listFilters51","_props$listFilters52","_props$listFilters53","_props$listFilters54","_props$listFilters55","_props$listFilters56","_props$listFilters57","_props$listFilters58","_props$listFilters59","_props$listFilters60","_props$listFilters61","_props$listFilters62","_props$listFilters63","_props$listFilters64","_props$listFilters65","_props$listFilters66","_props$state$selected","_props$state","showFilter","closeDefault","clientsListOpts","selectedClientOpts","statesListFilterOpts","citiesListFilterOpts","unitsFilterOpts","supervisorListOpts","supervisorFilterListOpts","classesListOpts","classesNamesListOpts","classesNamesFilterListOpts","selectedSupervisorOpts","selectedClassesOpts","selectedClassesNamesOpts","selectedConnectionOpts","selectedStatusOpts","selectedSupplierOpts","selectedHealthOpts","selectedTemperatureOpts","selectedControlOpts","selectedModeEcoOpts","selectedPeriodOpts","selectedTimeRange","selectedDataTypeOpts","selectedAnalysisOpts","countryListOpts","selectStartOperationOpts","selectEndOperationOpts","selectedOperationStatusOpts","selectedOwnershipFilter","infoType","selectedInfoExib","selectedDevId","selectedNotificationType","selectedNotificationSubtype","selectedNotificationDestinatary","selectedDateStart","selectedDateEnd","selectFocused","destinataryListOps","buttonName","isFilterButton","typesNotificationFilterOpts","typesNotificationListOpts","subtypesNotificationFilterOpts","subtypesNotificationListOpts","isClearFilter","selectedFiltersColumns","CLIENT","STATE","CITY","SUPERVISOR","isDesktop","matchMedia","matches","clearFilters","_props$listFilters","fixedPeriod","removeAllFilters","listFilters","informationsUnits","dates","isUnits","statusUnitsCheck","onAply","filteredUtilities","utilities","STATE_UF","connection","needFilter","getValues","_props$listFilters2","_props$listFilters3","_props$listFilters4","_props$listFilters5","_props$listFilters6","_props$listFilters7","_props$listFilters8","INCLUDE_CITIES","INCLUDE_STATES","CITIES","STATES","getClientsList","typeValueName","getCountry","_state$unitsListOpts","formattedData","unit_id","supervisorOptions","existingSupervisor","unit_ids","getSupervisorsList","listClasses","listClassesNames","listItem","class","getClassesList","_props$state2","_props$state2$selecte","_props$state4","_props$state4$selecte","_props$state6","_props$state6$selecte","_props$state$selected2","_props$state$selected3","hasPrefilters","_props$state3","selectedCity","_props$state5","_props$state7","selectedTemperature","selectedSupervisor","_props$state8","setVariables","getPreFilteredParams","defineSessionStorage","onChangeClient","filteredArray","selectedClients","onChangeClientAux","selectedValues","filteredStates","st","filteredCities","filteredUnits","isClientMatching","isCityMatching","filteredSupervisors","onChangeState","selectedStates","onChangeStateAux","isStateMatching","_unit$state","onChangeCity","selectedCities","onChangeCityAux","ct","_unit$state2","onChangeUnit","u","onChangeClassesNames","classesNames","selectedClasses","classItem","onChangeSupervisor","_props$listFilters24","_props$listFilters25","_props$listFilters26","_props$listFilters27","_props$listFilters28","_props$listFilters29","_props$listFilters30","_props$listFilters31","_props$listFilters32","_props$listFilters33","_props$listFilters34","_props$listFilters35","_props$listFilters36","_props$listFilters12","_props$listFilters13","_props$listFilters14","_props$listFilters15","_props$listFilters16","_props$listFilters17","_props$listFilters18","selectedClientFilter","setVariablesUsuals","selectedConnection","selectedStatus","selectedHealth","selectedControlType","selectedEcoMode","selectedDataType","selectedAnalysis","selectedOperationStatus","_props$listFilters19","selectSupplier","setVariablesWater","_props$listFilters20","_props$listFilters21","_props$listFilters22","_props$listFilters23","setVariablesNotification","_props$listFilters9","_props$listFilters10","typeId","_props$listFilters11","CLIENT_IDS","adminUsers","fullList","FULLNAME","adminUser","getDestinataryListOpts","handleClickChange","updateCheckInformations","getColorExpandIcon","handleRemoveFilterAux","filtersSelected","valueRemoved","updateOpts","alterDate","newDate","today","monthDate","getFullYear","minute","second","millisecond","FiltersContainer","transition","FilterOption","onChangeClasses","optionsConnetions","StatusIcon","optionsConnetionsName","TempHigh","TempGreat","TempLow","NoTempData","onChangeNotificationTypes","removeYearFilter","isPeriodLabel","HoverExportList","isMaxOneMonthPeriod","startDatePlaceholderText","endDatePlaceholderText","ContainerDateNew","ArrowButton","ContentDateNew","DatePicker","maxDate","toDate","dateFormat","showMonthYearPicker","rotate","onSelectedOwnership","setProg","searchLabel","CleanBtn","textTransform","ControlFilter","filterFooter","FiltersSelected","handleRemoveAllFilters","handleRemoveFilter","columnKey","filterIndex","handleRemoveCategoryFilter","exportFunc","CustomFilter","stateFilter","csvHeader","tab","verifyParams","openExportList","closeExportList","modeExportList","formatterCSV","averageDur","autonon","ExportBtn","ModalWindowStyled","topBorder","ContainerModal","TitleModal","SubtitleModal","OptionExportList","isCompleteList","isCustomList","ContainerCheckbox","informationsUnitsCheck","checkCity","checkUnit","checkMachines","checkEnvironments","checkUtilities","checkStartMonitoring","checkWaterDevices","checkEnergyDevices","checkAutomationDevices","checkMonitoringDevices","checkStatus","ContainerArea","closeOnSelected","sizeToByteConversion","measure","property","aa","bb","_a$property","_a$property2","_b$property","_b$property2","SimCards","simCardsList","simCardsListFiltered","selectedSim","resetSolicitado","empresa","setOrderColum","applyTextFilter","chevron","getSoldPlanMeta","soldplan","operadora","reset","mensalidade","getSimOperatorVivo","ratType","solution","tns","planSize","planMeasure","soldplan__consumption_f","consumptionSize","consumptionMeasure","line__total_f","consumptionMB","consumptionPercent","planSizeInBytes","onlineStatus","status__name","soldplan__name","lastConn","last_conn","lastDisc","last_disc","consumption","accessPoint","accessPointMAC","repeaterMAC","associationDate","formatSimTns","meta","saldo","online","ultimaConexao","formatSimMeta","vivo","_sim$gprsStatus","_sim$gprsStatus2","_sim$gprsStatus3","_sim$gprsStatus4","_sim$gprsStatus5","gprsStatus","lastConnStart","lastConnStop","gb","consumptionMonthly","formatSimVivo","_dev$stateId","_dev$cityId","_dev$unitId","_dev$clientId","clearFilter","Trans","i18nKey","_item$consumption","shift","solicitarReset","openEditSimCard","FormEditItem","comboClients","comboUnits","loadUnitsClient","ASSOCIATION_DATE","ProjetoBBLayout","AnsLayout","PowerBIEmbedContainer","PowerBIEmbedTitle","ProjetoBBKPIs","PowerBIEmbed","embedConfig","embedUrl","accessToken","tokenType","TokenType","Embed","settings","panes","expanded","BackgroundType","Transparent","eventHandlers","Map","detail","cssClassName","ProjetoBBANS","ProjetoBBCronograma","IconBiggerWrapper","AssetConnection","RSSI","wsl","onWsOpen","onWsMessage","beforeWsClose","useWebSocketLazy","dac_id","dam_id","verifyAndUpdateDataStatus","rssiDesc","handleDamStatusMessage","handleDacTelemetryMessage","handleDacOnlineStatusMessage","handleDevsTelemetryMessage","_props$DEV_AUT","rssi","formatRssiIcon","AssetTree","automationSelected","isAutomationelected","groupSelected","isGroupSelected","selectCard","onHandleSelectCard","borderCard","borderLeftCard","cardName","devIdText","cardRootDescription","maxSize","overExtended","nameDisplay","textOverflow","overflowX","whiteSpace","formatItemIcon","shouldShowHealthIcon","_asset$DEV_ID","AUTOM_ID","machineId","partes","indexOf","splitUrl","assetfilter","overflow","borderLeft","borderBottom","formatHealthIcon","DataText","AssetStatus","TIMESTAMP","LAST_TELEMETRY","oldDate","lteQuality","lastMessageTS","lteNetworkRsrpQuality","LTE_NETWORK","LTE_RSRP","getLteQuality","verifyAndUpdateDataStatusAndRSSI","handleDacIdMessage","deviceTimestamp","handleDevIdMessage","dateLastTelemetry","dateDays","checkLastTemetry","statusText","rssiText","onlyIcon","isMobile","withoutMarginTop","mimWidth","h1","_state$devInfo2$dam","_state$devInfo$dam7","_state$damRealTimeInf","_state$damRealTimeInf2","_state$damRealTimeInf3","_state$devInfo$dam8","wantSaveVent","hideId","editingVentilation","submittingVentilation","ventInput","ventTime","ecoModeCfg","relDutInfo","damRealTimeInfo","ecoModeCfgs","lws","SELF_REFERENCE","saveVentilation","_state$devInfo$dam6","supportsVentEnd","begin","_state$devInfo$dam","_state$devInfo$dam2","_state$devInfo$dam3","_state$devInfo$dam4","_state$devInfo$dam5","ENABLE_ECO","ECO_CFG","ROOM_DESC","ventilation","Ventilacao","ModoEco","StyledText","MAXIMUM_TEMPERATURE","assetLayout","returnDamId","onConfirmExcept","changeExceptionMode","newMode","DamScheduleSummary","dutControlOperation","wantSaveCtrl","editingTemprtControl","CTRLOPER_item","temprtControl","TSETPOINT","temperature","LTCRIT","LTC","LTINF","LTI","TemperatureControl","setPoint","isFinite","DutScheduleSummary","AssetLayout","screenInfo","verifyDevIdStartsWith","devInit","isDacPage","isDamPage","isDutPage","isDriPage","isAssetPage","devAssociated","showDutDuoUsage","_screenInfo$dutAutoma","dutAutomationInfo","placement","hasNonDutDeviceInAssets","verifyShowDutDuoUsage","bcrumbs","unshift","Breadcrumb2","items","timezoneArea","timezoneGmt","forceHideHealthTab","isDuoSelected","assetRoleSelected","isUserManut","NotyNumStyle","NotyIconStyle","ControlButtonIcon","ControlButton","NotyNumStyleMini","NotyIconStyleMini","ControlButtonIconMini","ControlButtonMini","TextLine","WeekDayButton","SchedCardContainer","Sidebar","DefaultModeContainer","VarsCardTitle","VarName","VarValue","relevance","VarUnit","CardContainer","VarContainer","CardElev","RealTimeBox","Bluebar","ConteinerTitle","ContentRealTime","ControlButtonIconFancoil","larger","NotyNumCornerStyle","Slider","Cursor","onOff","WaterTooltip","Calendar","Timer","ParamName","ParamTitle","ParamValue","SetpointButton","up","down","ModalContainerLoading","DriSchedModeOpts","DRIScheduleSummary","_varsCfg$application","_state$driScheds","_state$driScheds2","_state$driScheds3","_state$driScheds4","_state$driScheds5","_state$driScheds6","_state$driScheds7","_state$driExceptionSc","_state$driScheds8","_state$driExceptionSc2","_state$devInfo$dri2","layout","driScheds","driExceptionScheds","modalEditSchedule","showScheds","showExceptions","shouldRender","loadingSchedule","driInterval","totalScheds","generateDaysObject","getSchedTimesValues","BEGIN_TIME","start_time_error","END_TIME","end_time_error","getSchedExceptionValues","isException","exceptionDate","EXCEPTION_DATE","repeatYearly","EXCEPTION_REPEAT_YEARLY","getSchedSetpointValues","useSetpoint","MODE","setpointValue","getSchedModeValues","useMode","editAddProgramming","DAYS","schedId","SCHED_ID","addEdit","ACTIVE","operation","OPERATION","selectedDays","formatStringToDate","deleteProgramming","verifyProfileCanManageProgramming","img_schedule","showList","_state$devInfo$dri","SchedCard","canManageProgramming","onEdit","onDelete","exception","ExceptionSchedCard","DRISchedForm","_props$driCfg","_props$driCfg2","_props$driCfg3","_props$driCfg4","_props$driCfg5","_props$driCfg6","_props$driCfg7","_props$driCfg8","_props$driCfg9","_props$driCfg10","entireDay","editSetpoint","selectDay","wordBreak","fontStyle","img_mode_cool","img_mode_fan","fontVariantNumeric","_props$driCfg11","_props$driCfg12","_props$driCfg13","_props$driCfg14","_props$driCfg15","_props$driCfg16","wordWrap","LimitExceedTooltip","warnMessage","ViewAllContainer","AssetInfo","_state$assets$state$s9","_state$AUTOM_ID5","additionalMachineParameters","assetSelected","selectedIndex","placementSelected","AUTOM_DEVICE_ID","GROUP_INSTALLATION_DATE","GROUP_MODEL","selectedDevInfo","getCarouselId","getReferenceTypeDevAut","_state$AUTOM_ID2","_state$AUTOM_ID3","_state$AUTOM_ID4","devInfoRes","verifyDevInfo","verifyGroupInfo","assetsApiResponse","condenser","evaporator","heatExchanger","_assetsApiResponse$DU","astRoleIndex","DEVICE_ID","AST_ROLE_NAME","AST_ROLE_INDEX","_itemDev$dac","_itemDev$dac2","_itemDev$dac3","itemDev","DAC_MODEL","DEVICE_TIMESTAMP","DAT_BEGMON","groupIdToRequest","assetApiResponse","_itemDev$dac4","_itemDev$dac5","_itemDev$dac6","verifyAssetInfo","_state$assets$state$s","devAux","_state$assets$state$s2","endsWith","handleUrl","_state$AUTOM_ID","cachedDutInfo","_cachedDutInfo$info","checkSetDutPlacement","MACHINE_ID","getMachineAdditionalParameters","devSelected","devText","editDevice","showStatus","_state$assets$state$s4","_state$assets$state$s5","getEditDevicePermissions","selectedDecideName","_state$dutAutomationI","_state$dutAutomationI2","_state$dutAutomationI3","_state$dutAutomationI4","_state$assets$state$s6","_state$dutAutomationI5","shouldForceHideHealthTab","buildScreenInfoParams","urlAux","_state$assets$state$s7","_state$assets$state$s8","isAssetWithoutIdSelected","_devText","_devText2","_devText3","getIsDevice","alignContent","brandText","_state$assets$","modelText","_state$assets$state$s3","capacityPowerText","_state$assets","capacityUnitText","fluidTypeText","monitorationDateAux","instalationDateText","Carousel","getImages","listAll","_item$DEV_ID","_item$DEV_ID2","listGroup","postImage","photo","deleteImage","imageUrl","beginAssetIdIndex","beginDacIdIndex","EditAssetInfo","indexId","UNIT_ID_item","GROUP_ID_item","MCHN_APPL_item","FLUID_TYPE_item","AST_TYPE_item","MCHN_ENV_item","MCHN_BRAND_item","CAPACITY_UNIT_item","yesNo","valueN","valueNinv","capacUnits","envs","filtComboOpts","_formData$CLIENT_ID_i","_devInfoData$CAPACITY","_devInfoData$MCHN_KW","devInfoData","FormAsset","assetNumber","_assetIndex","devIdChanged","_formData$asset$devId","AnalysisLayout","AnalysisEmpty","healthCodes","Machines","stateIds","cityIds","arrayFormat","formattedPreFilter","formattedFilter","columnsMobile","columnsDesktop","searchValue","wantSetClient","dielClientId","timeOutId","orderBy","code","cellGroup","ternaryAux","cellGroupAsset","ASSET_NAME","urlDac","orderColumn","OrderableHeaderCell","onColumnClick","devicesLabel","columnClientName","saveSessionFilters","DUT_DUO_ID","col_H_DESC","DAC_COMIS","dacData","switchDacMonitoring","verifyObject","getParamsToCallDacsAndAssetsList","_state$ownershipFilte","_state$orderBy$","orderByProp","orderByDesc","healthIndexes","searchMachine","loadSessionFilters","dacsAndAssetsList","H_DESC","awaitData","verifyExist","includeHealthDesc","includeSensorInfo","includeCapacityKW","includeLastMeasures","formattedMachineCSV","healthDate","H_DATE","healthDesc","fluidType","appl","DAC_ENV","p0var","P0_POSITN","p0sensor","P0_SENSOR","p1var","P1_POSITN","p1sensor","P1_SENSOR","capkw","capacityKW","P0Raw","P1Raw","selectedAssets","confirmSetClient","FullProgEdit","_state$ventTime","activePage","editingSetpointDut","programmingData","formValues","setpointDut","holidaysList","dateDMY","DAT_FER","dayProg","set_allowForbid","editDayProg","removeProg","exceptionsItems","EditProg","DESC_FER","handleSelectDay","selectedHoliday","ProgOverview","devConfigOpts","serializeDayProg","serializeFullProg2","descWeekList","fullDescWeek","fullDescVent","descExceptList","fullDescExcept","serializeFullProg","fullDesc","ScheduleCheck","damInf","currentS","desiredS","desired","fetchListFromServer","ElevatedCard","GridCell","BatchSchedule","initialProg","expectedProgS","ids","damIds","ColorChangeBtn","blueVersion","TransparentLinkDut","IconWrapperSearch","BtnClean","BlueSelectedSpan","ZoomOut","CloseBtnIcon","TextLabel","OptionColor","StyledReactTooltip","ColorChangeBtnSvg","ColorChangeBtnWithHover","ListBoxOptionColor","namedTicks","unitProps","CustomPowerTick","truthy","EnvGroupAnalysis","ambientes","conjuntos","utilitarios","includePower","includeDme","L1only","temperatureLimits","splitLcmp","unitCoordinate","grupos","loadingData","exportLoading","selectedVars","trooms","l1s","tambs","powers","troomsOpened","l1sOpened","tambsOpened","powersOpened","utilitiesOpened","troomsFiltered","l1sFiltered","tambsFiltered","powersFiltered","tInmetFiltered","utilitiesFiltered","tInmet","selectedTrooms","selectedTambs","selectedPowers","selectedTInmets","selectedL1s","selectedUtilities","allCheck","humLimits","humTicks","powerLimits","powerTicks","displayColorPicker","useMinGraphData","useMaxGraphData","weatherStationsData","addDacGroupByType","grupo","aux","lineColor","gData","verifyDacsProps","verifyDrisProps","VARS","INS_GROUP_ID","verifyEnvProps","verifyGroupsProps","_props$weatherStation","weatherStations","CD_ESTACAO","DC_NOME","DISTANCIA_EM_KM","verifyWeatherStationsProps","linerColor","verifyGreenAntPowerProps","verifyDMEPowerProps","util","TYPE","verifyUtilityProps","verifyExternalProps","calcNumDays","indexIni","indexEnd","getTemperatureLimitLines","fetchMissingData","dateChanged","getRoomTempGraphData","_grupo$devs4","isVav","_dut$DEV_ID","TempAmb","isL1","showLine","getVavRoomTempGraphData","isDutDuoInsuf","identifyDutDuoInsuf","_dut$VARS","_dut$VARS2","Temperature_1","eCO2","_dut$DEV_ID2","_dut$DEV_ID3","getDutGraphData","calculateEnergyLimits","eConsumption","isDme","maxValue","minValue","getDMEGraphData","energyPower","energyConsumption","power","pot_ap_tri","xInsert","handleCommonX","energyGraph","_energy$power","momentCurrent","timestampObj","timestampFr","getHours","getMinutes","getSeconds","pos","elemento","powerCurrent","energyGraphDME","powerLast","powerFirst","handleEnergyGraphDME","getDMTGraphData","utilVar","getUtilityGraphData","_grupo$devs5","getNobreakData","_grupo$devs6","dalCode","_utilitarios$find","Feedback","utilId","utilFeedbackPort","getIlluminationData","fetchGraphData","_grupo$devs","getTambGraphData","_grupo$devs2","getLcmpGraphData","_grupo$devs3","ValveOn","getValveOnGraphData","getGreenAntGraphData","stations","stationsTemps","temperatures","distance","getTinmetGraphData","updateTempLimits","updatePowerLimits","updateCO2Limits","handleBooleanData","lData","isNobreak","getVarsData","indexBool","selectedVar","yData","tick_2","getBoolTicksNames","requireCsvExport","dacsTamb","dacsL1","dutsTemp","unitsPower","tempInmet","dayAux","addDays_YMD","paramsAux","requireMultiDaysCsv","responsesData","Blob","onSelectDevice","selectedDevicesState","updatedVars","handleSelect","replaceLastCharacters","getFilterOptions","setSearchState","clearGroup","CustomTooltipContent","customTooltipProps","lat","lon","newPayload","indexToInsert","o","DefaultTooltipContent","getOptionLink","optionName","propsOption","_snapshot","_deviceGroup$group5","_deviceGroup$group5$G","_deviceGroup$group6","_deviceGroup$group7","deviceGroup","deviceId","troom","l1","inmet","findDeviceGroup","changeCheckbox","tempValue","_deviceGroup$group","getIndex","showCheckbox","tempItem","_deviceGroup$group2","co2Item","_deviceGroup$group3","humItem","_deviceGroup$group4","changeGroupsColor","g","_tag","DomProps","onBlur","ModalColorsWindow","handleModalClose","renderModalGroups","groupData","handleClose","isValidArrOfNumbers","n","isNotDefault","isXDomainValid","_data","dx","tickMargin","contentStyle","_index","_varInfo$type","formattedLabel","formatLabel","unitMeasure","formattedValue","ColorsPalet","DevLayout","isDutAut","isDal","isDmt","_devInfo$dut","permissionManageClient","handleSelectTitle","DamSchedule","DamScheduleContents","hideAnalysis","isSaving","fetchDamInfo","groupIds","filteredByGroupName","handleGetDamProgramming","newProg","cloneProg","saveProg","newprog","MobileTable","descOper","onlyfan","enabling","disabling","eco","CSVHeader","DamsList","React","isProg","setIsProg","setIsDesktop","firstLoading","screenSize","outputJSXSchedule","schedule","outputSchedule","hasMultSchedule","handleGetDAMS","ecoModeEnabled","temprtSetpoint","referenceTemperature","specialColor","getDailySchedule","dutLastProg","damLastProg","_damLastProg$week$key","_damLastProg$week$key2","_damLastProg$week$key3","_dutLastProg$week$key","_dutLastProg$week$key2","_dutLastProg$week$key3","controlMode","ecoMode","temprtAlerts","devAutomation","DUT_LASTPROG","DAM_LASTPROG","DUT_NEED_MULT_SCHEDULES","ajustObjectOfDev","_state$orderBy$2","DamHistoryContents","dutRoomName","damCharts","dutChart","dutDuoChartNotAut","conclusionsDam","dacsCharts","dacsCols","newCharts","daySched","leftTicksLabels","stepTicksNames","rightLimits","rightTicks","rightTickLabels","ecoCmd","dutT","dutL1","setFormattedDate","getTranslatedInstallationLocation","getDamTemperatureLabel","T0_POSITION","getDamTemperature1Label","T1_POSITION","addDamDefaultLines","clone","hovertemplate","humidity","customdata","yaxis","_state$devInfo$dam10","_state$devInfo$dam9","_state$dutChart","_state$devInfo$dam11","_state$devInfo$dam12","_state$dutChart2","temprt","addDamTemperatureLines","nameTemp1","_state$dutRoomName","temprt1","nameTemp2","addDutChartLines","parsedGraphData","_state$dutChart4","_state$dutChart5","_state$dutChart6","_state$dutChart7","_state$dutChart8","_state$dutChart9","_item$y","_item$y2","limTmax","_item$y3","limTmin","_item$y4","tSetpoint","setpointHist","dash","_item$y6","_item$y5","addDutHistereseLines","_state$devInfo$dam13","_state$dutChart3","CAN_SELF_REFERENCE","UPPER_HYSTERESIS","LOWER_HYSTERESIS","valueOrEmptyArr","updateChartData","_parsedGraphData$duts","_state$devInfo$dam14","comprHistory","provision_error","processReceivedHistoryDAM","damTemperature","damTemperature_1","createDacLines","dacLine","_comprHistory$dacsInf","dacInf","dacsInfo","usePeriod","useFactor","potNominal","conclusions","stateStats","cond1_hit","cond1_miss","cond2_hit","cond2_miss","ecoFull_hit","noEcoVent_hit","dutsDuoNotAut","_state$dutChart11","max","setDutsLimits","setDamsLimits","setDutsDuoLimits","maxAxisVal","minDataVal","maxDataVal","steppedLines","allTicks","ticksNames","endValue","varsTicks","nTicks","varTicks","tickValue","stepIndex","vs","updateAxis","addDamSelfReferenceLines","addDacLines","chart","_comprHistory$asTable","_comprHistory$Mode","_comprHistory$State","_comprHistory$ecoCmd","_comprHistory$prog","dacsRows","labelsMode","labelsState","labelsEcoCmd","labelsProg","formatAsTable","_state$dutChart$limTm","_state$dutChart$limTm2","_state$dutChart10","_state$dutChart10$tem","setTemprtLimits","_state$damCharts$limT","_state$damCharts$limT2","setDamsTLimits","_state$devInfo$dam15","_state$devInfo$dam16","setDamsTempLimits","_state$devInfo$dam17","setDamsTemp1Limits","_state$dutDuoChartNot5","_state$dutDuoChartNot6","_state$dutDuoChartNot","_state$dutDuoChartNot2","setDutsDuoTemprtLimits","_state$dutDuoChartNot3","_state$dutDuoChartNot4","setDutsDuoTemprt1Limits","_devInfo$dam","_devInfo$dam2","_dutInfo$dut$ROOM_NAM","_dutInfo$dut","Datepicker","Plot","showlegend","legend","l","pad","xaxis","showgrid","zeroline","showline","tick0","dtick","range","tickformat","hoverformat","tickvals","ticktext","yaxis2","overlaying","side","hovermode","hoverdistance","hoverlabel","bgcolor","responsive","idac","irow","HistoryContainerQA","css","DateExportRow","ResultContainer","AnalisysResult","NoAnalisysSelected","DateWrapper","DateButton","DateButtonActions","ResultsResume","ResultsContent","ResultsContentEF","qtdCharacteres","EnergyEfficiencyItem","EnergyEfficiencyBar","barColor","barHeight","ExportButton","ShowProblemDataWrapper","NoInfoTooltip","UnitLink","LoaderOverlay","TableWrapper","SelectOptionStyled","EmptyDocumentIcon","ticksXgraph","DUTHistoryContents","graphDataX","useCO2LimitGraphData","showLimits","showCO2Limits","isDutQA","groupGraph","eCO2Ticks","eCO2Domain","humLineInfo","lineColorObj","isDisplayColorVisible","limitColorObj","colorLimit","isVisible","isLimitVisible","tempLineInfo","temp1LineInfo","L1LineInfo","co2LineInfo","hasL1","setIsModalOpen","setGraphEnable","TVOC","L1","setAxisInfo","_dutHist$daySched","_dutHist$daySched2","_dutHist$daySched3","_dutHist$daySched4","_dutHist$Temperature","_dutHist$L","_dutHist$L$y","dutHist","num","Filtering","DesktopFiltering","returnUnityMeasure","CustomTooltip","limitData","limitInfo","minTemp","maxTemp","CustomTooltipGroup","_data$Temperature","_data$Temperature_","_data$Humidity","_data$eCO","_data$L","Temperature1","groupLimitsTip","returnTooltip","returnTooltipGroup","xaxisObject","ticksFormater","DutQAHistory","_graphDataX$Humidity","_graphDataX$Humidity2","_graphDataX$eCO","_state$devInfo$dut","_state$devInfo2$dut","_state$devInfo3$dut","_state$devInfo4$dut","_state$devInfo5$dut","_state$devInfo6$dut","_graphDataX$Temperatu","_state$devInfo7$dut","_state$devInfo8$dut","_graphDataX$Temperatu4","_graphDataX$Temperatu5","_graphDataX$Temperatu6","_graphDataX$Temperatu7","_graphDataX$Temperatu8","_graphDataX$Humidity3","_state$devInfo9$dut","_state$devInfo10$dut","_graphDataX$eCO2","_state$devInfo11$dut","labelTemp","labelTemp1","hasData","menorNumber","generateTicks","step","firstTick","additionalTicks","CustomTickGraph","CheckBoxLines","GraphLineChart","xaxisProps","yaxisProps","lineProps","_graphDataX$Temperatu2","_graphDataX$Temperatu3","_graphDataX$L","_graphDataX$L2","referenceProps","segment","_graphDataX$Humidity4","_graphDataX$eCO3","NoDataInTable","RenderModalLines","LineInfo","_state$graphDataX","_state$graphDataX$Tem","_state$graphDataX2","_state$graphDataX2$Te","_state$graphDataX3","_state$graphDataX3$Hu","_state$graphDataX4","_state$graphDataX4$eC","_state$graphDataX5","_state$graphDataX5$L","operation_mode","_graphDataX$commonX","ifOverflow","MonthViewBtnText","DashedColoredLine","InfoText","ChangeColor","setColor","ButtonChangeColor","ChangeColorDialog","onClose","open","lineHeight","setSelected","description","showPickerColor","setShowPickerColor","Dialog","itemData","onChangeComplete","StyledLabel","ContainerParameters","SearchInputStyled","SelectedContent","HorizontalLineSelectParameters","BorderSubItem","InfoSelected","InputStyledSelected","isLeft","ContainerNotSelectedParams","ContainerGraphParamsChange","lengthArraySample","MenuFixedContainer","historySelected","GreenBlob","YellowBlob","RedBlob","GreyBlob","BlackBlob","ProgressBarContainer","ProgressBarChildren","progress","TopTitle","CellLabel","BtnOrderColumns","NoDataComponent","FilterColumnsIcon","OrderColumnModal","ModalSubTitle","HorizontalLine","OlhoAberto","OlhoFechado","ThreeDotsVerticalIcon","handleChangeVisibility","handleMoveItem","drop","useDrop","collect","monitor","handlerId","getHandlerId","hover","_ref$current","hoverBoundingRect","getBoundingClientRect","hoverMiddleY","hoverClientY","getClientOffset","isDragging","drag","useDrag","ModalOrderColumns","handleSubmitModal","handleCancelModal","handleChangeColumns","handleDragColumn","handleResetColumns","originalColumns","setOriginalColumns","hasColumnVisible","setHasColumnVisible","hasError","setHasError","handleVisibility","hasColumnVisibleAux","paddingX","paddingY","DndProvider","backend","HTML5Backend","AlarmIcon","controlColumnsConfig","reorderList","itemsList","AlarmsHistory","setIsLoading","renderState","setSelectedFilters","setSortBy","selectedFilters","setAlarmHistoryColumns","showModalOrderColumns","tablePagination","orderedHistAlarms","filterColumns","ALARM_CODE","DESCRIPTION","REASON_ALARM","ACTION_TAKEN","RESET_TYPE","CAUSE","controlColumns","filterChanged","GenerateItemColumn","handleSort","hasFilter","onChangeFilter","handleChangeFilters","onSelectAllOptions","handleSelectAllFilters","filterAll","alarm","ReturnLabelContent","original","disableSortBy","FormatDateColumn","START_DATE","END_DATE","VerifyColumns","reason_alarm","action_taken","reset_type","cause","columnsData","setColumnsData","setControlColumns","verifyAlarmRegistered","alarmKey","i18next","exists","handleCloseModal","sortByAux","handleGetAlarmsHist","sortByColumn","sortByDesc","_params$filterParams","pageAux","filterParams","alarmsHist","ORDER_BY","filterBy","alarms","alarmsWithExtraInfo","handleGetExtraInfoALarm","handleSetColumnsData","newColumns","handleSetExportColumns","newColumnsData","_columns$find3","columnTable","columnsToExport","col","exportAlarmHistoryColumns","handleUpdateFiltersAux","selectedFilterColumns","allAlarmsCodes","filterColumnsAux","handleGetAllFilters","_columns$find","selectedFilterAlarms","columnObj","columnName","valueObj","ModalLoading","noDataComponent","NoPeriodSelected","noBorderBottom","handleSearchWithFilters","NoColumnsSelected","handleChangePage","columnId","updatedColumns","_columns$find2","prevState","dataAux","dataMoment","dateFormated","hourFormated","daysWeek","getListDays","daysBetweenDates","getDaysBetweenDates","dataPeriodOut","listDays","numPoints","hourGraph","agruparPorData","listDates","objectDatesArrayNull","record_date","arrayNull","valuesFinal","arraySeparadasPorDia","chavesObjeto","novoArray","currentIndex","finalDoDia","setSeconds","currentObj","nextObj","nextTime","parameter_value","criarNovoArrayDuplicandoOsValoresPeloTempo","arrayDatasOrganizadas","acc","formatterxAxis","changedParams","_state$listDays$","_state$listDays","isDifferentMonth","_state$listDays2","getDay","monthPart","returnXAxis","boundaryGap","splitLine","lineStyle","dataXChangedParams","dataX","axisLabel","fontFamily","rich","axisTick","recordDate","_recordDate$index","dateFull","seconds","hours","minutes","secs","formattedHours","formattedMinutes","formattedSeconds","secondsToTime","getDataToGraphsAndSetMaxValues","allWithoutDefault","percentArray","countValuesUniMed","sendToGraphDefault","sendToGraphPercent","newState","isCircuit","unidMed","_item$data","setCircuitMaxValueAndCounter","C","kPa","A","H","P","darkenColor","amount","hexToRgb","rgbToHex","toHex","setTimeToLoop","countHour","counter","fillMissingIntervals","dataArray","filledData","dataMap","isSame","ObjectXAData","ObjectHXData","cap_t","cond_ewt","cond_lwt","cool_ewt","cool_lwt","ctrl_pnt","dp_a","dp_b","hr_cp_a","hr_cp_b","hr_mach","hr_mach_b","oat","op_a","op_b","sct_a","sct_b","slt_a","slt_b","sp","sp_a","sp_b","sst_a","sst_b","capa_t","capb_t","cond_sp","cpa1_cur","cpa1_dgt","cpa1_op","cpa1_tmp","cpa2_cur","cpa2_dgt","cpa2_op","cpa2_tmp","cpb1_cur","cpb1_dgt","cpb1_op","cpb1_tmp","cpb2_cur","cpb2_dgt","cpb2_op","cpb2_tmp","dem_lim","device_code","dop_a1","dop_a2","dop_b1","dop_b2","exv_a","exv_b","hr_cp_a1","hr_cp_a2","hr_cp_b1","hr_cp_b2","lag_lim","GenerateGraphSample","arrayData","xAxis","haveTitle","countUniMed","toolbox","chartRef","objectData","verifyIndexY","returnWitchUniMedHave","haveCelcius","haveHour","haveKpa","haveAmper","havePercent","generateAxisConfig","align","splitNumber","minInterval","formattedNumber","nameTextStyle","generateCleanConfig","quantEspaco","returnSide","condition","returnOffsetHour","returnOffsetAmper","yAxisDecide","yAxisNotPorcent","haveOnlyLeftKpa","decideSideAmper","decideSideKpa","decideSide","decideSideCelcius","returnGraphNotPorcent","getTitle","textStyle","formatUnidMed","_objectData$item$seri","uniMed","seriesName","handleRenderChiller","echarts","chartInstance","showLoading","seriesData","stack","smooth","symbolSize","yAxisIndex","resize","setOption","haveToolbox","grid","containLabel","tooltip","trigger","nameChiller","dataIndex","arrayA","arrayB","dataObject","newSeriesName","cssObject","tooltipContentFactory","formatterTooltip","yAxis","series","dispatchAction","dataZoomSelectActive","newObjectData","hideLoading","zoomTooltipOff","GenerateGraphGeralAlarmMaintaince","yAxisNames","getBallColor","verifyNullOrSum","sum","newSeries","formatterDataIfGroupGraph","chillerConfig","arrayNames","v1","titleName","TooltipComponent","GridComponent","VisualMapComponent","SVGRenderer","UniversalTransition","listStatusNames","listMaintenceNames","listGeneralNames","listCompStatusNames","listAlarmNames","createOptionParameter","arrayDefault","arrayCompStatus","applicationType","ChillerParameters","getYAxisNames","handleOptionsParametersHX","OptionsParameters","handleOptionsParametersXA","record_dates","optionsParameters","selectedParameters","sendToCompStatus","sendGraphDefaultGrouped","selectedAlarm","selectedGeneral","selectedMaintence","selectedCompStatusA1","selectedCompStatusA2","selectedCompStatusB1","selectedCompStatusB2","groupGraphValues","haveData","changeData","searchData","textAlertParameters","handleGetParamsHistory","_response$paramsLists","_response$paramsLists2","_response$paramsLists3","_response$paramsLists4","_response$paramsLists5","_response$paramsLists6","_response$paramsLists7","_response$paramsLists8","_response$paramsLists9","_response$paramsLists10","_response$paramsLists11","_response$paramsLists12","_response$paramsLists13","_response$paramsLists14","_response$paramsLists15","_response$paramsLists16","_response$paramsLists17","_response$paramsLists18","HOUR_GRAPHIC","paramsLists","paramsChanged","paramsGrouped","dataProcessed","pointsObj","results","sumData","count","processData","recordDates","recordStatusObject","dateObj","createRecordStatusObject","valoresPorPropriedade","propriedades","objeto","chave","valor","chaveLower","separarValoresPorPropriedade","statusValues","parameter_name","compStatusValuesB1","compStatusValuesB2","compStatusValuesA1","compStatusValuesA2","geralValues","alarmValues","arrayStatus","arrayGeral","arrayAlarm","arrayCpb1","arrayCpb2","arrayCpa1","arrayCpa2","changeDataOptionsParameters","transformDataFunction","geral","manutencao","alarme","arrayFiltered","valoresExcluidos","Set","has","getObjectsFiltered","sendToCompGraph","arrayValues","numeros","gerarNumerosAteMaximoDataXChangedParams","handleBlur","handleColorInputClick","stopPropagation","addValuesParametersCircuit","stringName","filterValuesParametersCircuit","circuitName","op","minHeigth","AValues","BValues","selectedParameter","customElements","_state$optionsParamet","onMouseOutCapture","selectedColor","darkenedColor","styleBox","haveCountSelect","limitSelect","AlertMessage","arrayLength","onAnimationEnd","SemParametros","isGraphGeral","feature","dataZoom","xAxisIndex","zoom","back","filterMode","restore","saveAsImage","isZooming","handleZoom","on","AlertTextParameters","ChillerCarrierHistory","_props$model","focus","setFocus","paramsHistorySelected","elementRef","handleDateChange","selectedTimeRangeAux","handleExport","handleExportAlarms","scroll","_state$startDate","showYearPicker","isFlexivel","PADDING_TICKS","TOTAL_TICKS","LIMIT_TOTAL_TICKS","LIMITS_SETPOINT","stepper","totalTicks","newTicks","generateTicksByStepper","auxMax","auxMin","limitMinByStepper","generateTicksByRange","lastTick","addTicks","stepperSize","totalDifference","divideDifference","remainingDifference","minArray","maxArray","minIndex","maxIndex","roundedTicks","CsvLabelFormatterData","tickXLabelFormatterDay","tickXLabelFormatterHour","tooltipXLabelFormatter","varsPropertiesFancoil","DutTemp","EcoSetpoint","ThermOn","FanStatus","Lock","CustomTick","baseSetpointMinLimit","stepperGraph","generateLabel","CustomTickMode","CustomCompressorTickMode","CustomTickVAV","modeTicks","thermOnTicks","valveOnTicks","lockTicks","CustomTickFancoil","fanTicks","DriHistory","_state$driInfo18","_state$driInfo19","_state$driInfo20","_state$driInfo20$vars","_state$driInfo21","_state$driInfo21$vars","_state$driInfo22","_state$driInfo22$vars","_state$driInfo23","_state$driInfo24","_state$driInfo24$vars","_state$driInfo25","_state$driInfo25$vars","_state$driInfo26","_state$driInfo26$vars","associatedDacsId","setpointLimits","setpointTicks","modeLimits","vavModeLimits","vavModeTicks","fancoilModeTicks","fancoilModeLimits","customPointLimit","valveOnChecked","thermOnChecked","fanStatusChecked","baseSetpointTicks","yDomain","associatedDutsDuoId","associatedDutsDuo","selectedDutsDuo","_state$driInfo$varsCf","updateMinMaxSetpoint","newSetpoints","newSetpointsTicks","newSetpointsLimit","checkAgroupGraphData","baseTicks","differenceTicks","createAdditionalTicksFancoil","customPointTick","updatedBaseTick","getChartDacs","_state$driInfo5","_state$driInfo5$varsC","_dri$associatedDacs","promiseDacs","resultPromises","labelDifference","_varsProperties$param","_varsProperties$param2","_varsProperties$param3","_varsProperties$param4","_varsProperties$param5","_varsProperties$param6","TsucChecked","TliqChecked","TambChecked","getChartDutsDuo","_state$driInfo6","_state$driInfo6$varsC","_dri$associatedDutsDu","promisesDutsDuo","dutDuo","temperatureGraphValues","dutDuoId","_varsProperties$param7","_varsProperties$param8","_varsProperties$param9","_state$driInfo7","_state$driInfo7$varsC","_state$driInfo8","_state$driInfo8$varsC","_state$driInfo9","_state$driInfo9$varsC","chartsData","_state$driInfo2","_state$driInfo2$varsC","_state$driInfo3","_varsProperties$key","_varsProperties$key2","_varsProperties$key3","_varsProperties$EcoSe","_varsProperties$EcoSe2","_varsProperties$EcoSe3","_state$devInfo$varsCf","_state$driInfo4","ECO_OFST_START","_labels$id","_state$chartData$vars","_state$driInfo14","_state$driInfo14$vars","_state$driInfo15","_state$driInfo15$vars","_state$driInfo16","_state$driInfo16$vars","_state$driInfo17","_state$driInfo17$vars","getDataToChangeColor","_state$driInfo10","_state$driInfo10$vars","_state$driInfo11","_state$driInfo11$vars","_state$driInfo12","_state$driInfo12$vars","_state$driInfo13","_state$driInfo13$vars","Graph","_state$driInfo27","_state$driInfo27$vars","_state$driInfo28","_state$driInfo28$ecoC","_state$associatedDacs","dutTemp","tusemax","tusemin","ecoSetpoint","tempAmb","thermOn","valveOn","fanStatus","lock","_state$chartData$vars2","defaultVars","mapping","getDataByVars","tooltipFancoilFormater","baseValueLimit","valueForLabel","operationalModeFancoilLabel","toolTipFormater","operationalModeCarrierEcoSplitLabel","operationalModeVavLabel","statusLabelMap","Bloqueio","toolTipFormaterDac","returnSizeGraph","isNumber","customSizeGraph","getParamsColor","_state$chartData$vars3","fancoilGroupGraphDataKey","chartDataInfo","chartDataVar","dacsSteps","chartDataIValue","valueChart","onClickDutDuoCheckboxTemperature","selectedDutDuo","_chartData$Temperatur","_chartData$Temperatur2","_chartData$Temperatur3","_chartData$Temperatur4","_chartData$vars","_chartData$vars2","_chartData$vars3","_chartData$vars4","_chartData$vars5","_chartData$vars6","_chartData$vars7","_chartData$vars8","_chartData$vars9","_chartData$vars10","_chartData$vars11","_chartData$vars12","selectedDac","_chartData$vars13","_chartData$vars14","ContainerCardWater","NameCardItem","BorderSpan","ContainerCalendar","ContainerInfoCalendar","ContainerDatesCalendar","ContainerItemDateCalendar","handleGetDatesParams","chartMode","isComparing","cardYear","dateParams","utcOffset","EnergyCardContext","EnergyCardProvider","isLoadingFilters","setIsLoadingFilters","cardControlTab","setCardControlTab","cardDate","setCardDate","isApiDate","verifyDate","tabIsLoading","setTabIsLoading","insights","trends","handleSetIsLoadingFilters","handleChangeTab","newTab","handleSetTabIsLoading","handleSetCardDate","useEnergyCard","SelectOptionDropdownWrapper","Dropdown","DropdownHeader","DropdownContent","DropdownOption","DropdownYearButtons","capitalizeFirstLetter","charAt","MONTH_MODE","SelectOptionDropdown","yearSelected","monthSelected","yearOptions","monthOptions","handleClickOutside","handleChangeDate","handleGetYearIndex","handleGetMonthIndex","monthLabel","yearLabel","handleMonthHasData","checkCanClick","direction","currentYearIndex","reverse","breakLoop","currentMonthIndex","breakLoopMonth","getArrayDaysOfMonth","mes","ano","numDias","CheckboxContent","SelectedDate","BarchartWrapper","BarChart","CanvasRenderer","daysOfWeek","ConsumptionChart","forwardRef","_profile$permissions","cardMonth","filterDatesChart","handleClickBarChart","handleChangeComparingChart","chartWrapperStyle","consumptionChartStyle","canCompare","isAdmin","energyCard","isComparingChart","isOpenComparingDropdown","viewTratedData","calculateDelta","firstNumber","secondNumber","handleGetDataChart","checkProblemDataIsInvalid","chartValue","hasProblemData","dataIsInvalid","checkProblemDataIsProcessed","dataIsProcessed","createTratedDataElement","createTooltipHTML","tooltipTitle","consumptionValue","consumptionMeasurement","totalChargedData","totalUnits","deltaValue","flags","deltaElement","createDeltaElement","signal","rotation","infoIcon","tratedData","createTooltipElement","delta","_value$consumption","_value$totalCharged","_value$totalUnits","totalCharged","convertEnergy","tooltipElement","createIsProblemTooltipHTML","tooltipFactory","yearMode","tooltipDate","monthName","compareYear","chartValueCompare","compare","compareElement","chartValueCurrent","currentElement","monthMode","compareMonthName","isNotComparing","xAxisFactory","handleGetXAxisYearMode","monthsOfYear","monthsOfYearFormatted","prevYear","currentMonth","prevYearMonths","currentYearMonths","xAxisFormatterFactory","dateChart","hasProblemDataIsProcessed","hasProblemDataIsInvalid","problemDataIndicator","monthDay","weekDayIndex","yAxisFormatter","valueDemandConverted","valueDemandUnitMeasurement","barWidthFactory","isNotExpanded","formatSeriesChart","itemStyle","seriesFactory","currentFormattedData","compareFormattedData","barWidth","handleUpdateChartDates","onClickComparePeriod","useImperativeHandle","barchartDom","barChart","barClicked","barchartOptions","axisPointer","shadowStyle","shadowBlur","shadowOffsetY","shadowOffsetX","showMaxLabel","warnIcon","image","incoerentIcon","handleRenderBarchart","INCOERENT_ICON","WARNING_ICON","EnergyHistory","energyCardFilters","insideFilters","handleIsComparing","handleResetDates","historyChartData","isLoadingChart","isOpenFilterHeader","monthChartSelected","yearChartSelected","handleGetChartData","chartModeParam","datesParams","startDateToCompare","endDateToCompare","filterType","energyHistParams","startObject","monthClicked","yearSelectedComparing","monthSelectedComparing","namesMonths","completeNameMonths","completeNumberMonths","GenerateGraphWater","waterCard","unitMeasuere","isHistory","last12Months","showForecast","handleClickBar","litersSelected","idioma","arrayDataFiltered","xAxisNames","barWidthHistory","getDateTooltip","_arrayData$value$0$da","_arrayData$value$0$da2","_arrayData$value$0$da3","_arrayData$value$0$da4","_arrayData$value$0$da5","_arrayData$value$0$da6","_arrayData$value$0$da7","_arrayData$value$0$da8","_arrayData$value$0$da9","_arrayData$value$0$da10","number_devices","isEstimated","handleWeekDay","dayWeekName","handleRenderWater","_item$day","_item$day2","_item$day3","_item$day4","_item$day5","_item$day6","_item$year","_item$day7","_item$day8","_item$day9","_item$year2","isProblemData","nameLocation","numberString","formatNumber","barCategoryGap","HoverConsumptionInfo","HoverMeterInfo","ContainerCaption","ContainerArrowLeft","ContainerArrowRight","LabelData","ContainerUsageDiff","ButtonReturnPeriod","ContainerIcon","period_usage_up","WaterHistory","_profile$prefsObj","shouldNotDisplayLiters","setShouldNotDisplayLiters","loadingNewData","lastStartDate","lastEndDate","graphDataForecast","cubicMetersGraphData","cubicMetersGraphDataForecast","graphLegend","periodIsMonthOrFlexible","maxUsage","lastReadingDate","daily_average","period_usage","period_usage_last","predicted","predictedLastMonth","forecastUsage","isCurrentMonth","consumptionByDayOfWeek","yearGraphic","arrowDisabled","periodHist","startDateHist","endDateHist","lastStartDateHist","lastEndDateHist","weekdaysMin","returnObjects","updateLocale","numberArr","_currentDayData$daily","currentDay","currentDayData","dailyReadings","dayUsage","getValueOrZero","getGraphDataAndForecast","responseUsage","LAST_START_DATE","LAST_END_DATE","YEAR_GRAPHIC","LAAGER_CODE","getResponseUsage","handlePeriodUsageDiff","maxUsageForecast","predictedConsumption","forecast","getForecast","currDate","setHours","dataDate","information_date","verifyConsumptionInMeterCubic","cubicMetersHistGraphData","estimatedUsage","dailyHistReadings","readings","readTime","cubicMetersHistGraphDataForecast","isMoment","formattedDate","formattedLastDate","getDisabledButton","currentWeek","currentYear","differenceInDays","newEndDate","isNextMonth","usageLast","diffPercent","Infinity","setForecastStates","_responseUsage","_responseUsage$histor","parseISO","dailyReading","graphDataDaily","getDailyData","dateArray","strDate","getOthersPeriodData","_info$installationDat2","dmaId","last_reading_date","getMeasureUnit","formatConsumption","small","dateInit","formattedDateInit","formattedDateEnd","formattedLastDateInit","formattedLastDateEnd","handleDateChangeLeft","maxEndDate","isAfterMaxEndDate","isOutsideCurrentMonth","handleDateChangeRight","timeSelected","endDateFormat","startDateFormat","eventOff","clickable","DateCaption","ConsumptionInfoCaption","dataId","legendHover","widthIcon","minimumFractionDigits","maximumFractionDigits","months","DevHistory","isDma","DAM_DISABLED","DUTAUT_DISABLED","isAutomationOnly","getDevInfo","dutSelected","_state$devInfo$info","getScreen","ContainerInfo","ContainerText","OverLay","ContainerEcoMode","HoverEcoLocal","DutSchedulesList","schedules","ScheduleViewCard","cardPosition","hideButtons","ExceptionViewCard","InfoItem","InfoGraphCont","ButtonAddAssociationsDal","ContainerUseIndex","TextPNoMargin","TextPMargin","ContainerInfoIndexUse","ContainerWithBorderInfo","ContainerGraphicIndexUsage","ContainerDalTree","ContainerInfoDalProfoile","FlexRowColumn","FlexRowColumn1250","UtilityTree","_props$lastTelemetry","utils","deviceSelected","isDevSelected","utilSelected","isUtilSelected","larguraPage","onresize","clientWidth","utilityStatus","Nobreak","Bateria","Desligado","Indisponível","Illumination","Ligado","extraInfo","_util$DAT_CODE","_util$DMT_CODE","CIRCUIT_ID","CustomSelectDutsReference","ContainerDuts","DutItemStyle","HeaderVisibility","UnderlineBtn","Separator","DocumentationContainer","ExibInvisibleFile","DocumentationContainerArea","SelectAndDownloadArea","ItemDoc","InibVisibilityAddDoc","BoxResponsive","EditAreaDocs","_props$color","ObservationAreaContainer","TitleInfoObservation","ContainerObservationsItems","ContainerEditDeleteObs","ContainerObservation","TextObsUnit","TextObsUnitExpand","IconsContainerObs","ContainerHtmlObs","TextProgressBar","SmallWarningIcon","validateStringTimeInterval","milliseconds","parseDamProgToDalProg","damProg","uniqueProgs","scheds","schedBase","DAL_ID","TITLE","exceptBase","REPEAT_YEARLY","DALSchedule","_state$dalScheds19","_state$dalScheds20","_state$dalScheds21","illumId","illumName","dalScheds","dalExceptions","modalEditException","loadingSet","dalSchedsToEdit","dalExceptsToDelete","illumWithConflict","editAddException","editAddSched","_item$TITLE","_item$TITLE2","exceptionId","deleteSchedule","getScheds","_state$dalScheds7","_state$dalScheds8","DELETE","canEdit","_state$dalScheds9","_state$dalScheds10","deleteException","_state$dalExceptions7","_state$dalExceptions8","except","_state$dalExceptions9","_state$dalExceptions10","changeShowExceptions","changeDefaultMode","defaultMode","editDefaultMode","changeHasEdited","handleHasEdited","damSched","checkConvergence","currentScheds","newSched","convergence","compareTimes","_newSched$ID","newDays","getNewSchedDays","convergenceDays","deleteSched","foundConvergence","checkDalSchedsCardsConflicts","newScheds","persisted","daysProgs","hasConflict","schedsIdToEdit","deletedIds","inserted","INSERT","edited","EDIT","editedIds","schedsToValidate","persistedWithoutEditeds","dayScheds","checkConvAns","delete","time_1","time_2","hasHoursConflicts","exceptsIds","j","_excepts$i","_excepts$j","handleDayExceptsInsertion","dayExcepts","dateDM","_dayExcepts$dateDM","YEARLY","_dayExcepts$dateDM2","dateY","checkNotYearlyExcept","yearlyExcepts","checkExceptsConvergence","exceptsIdToDelete","checkDalCardsExceptsConflicts","newExceptions","exceptsToValidate","getDayExcepts","_dayExcepts$date","validateScheds","illumsWithConflict","foundConflict","dalSchedValidation","dalExceptsValidation","validateDalScheds","saveUtilitySched","isModal","_state$dalScheds14","_state$dalScheds15","_state$dalScheds16","_state$dalScheds17","_state$dalScheds18","_state$dalExceptions11","_state$dalExceptions12","_state$dalScheds11","_state$dalScheds12","_state$dalScheds13","styledIcon","DALScheduleContent","isEditDAL","isEditUtility","exceededExceptionLimit","setExceededExceptionLimit","hyphens","_state$dalSchedsToEdi","_state$dalSchedsToEdi2","_state$dalExceptsToDe","_state$dalExceptsToDe2","schedsToEdit","schedsToSend","editInfo","exceptsToDelete","exceptsToSend","hasToDelete","EXCEPTION_ID","SCHEDS","EXCEPTIONS","DalSchedForm","_state$dalScheds","_state$dalScheds2","addNewSched","_state$dalScheds3","_state$dalScheds4","_state$modalEditSched","_state$modalEditSched2","_state$modalEditSched3","_state$modalEditSched4","_state$dalScheds5","_state$dalScheds6","_state$modalEditSched5","_state$modalEditSched6","_state$modalEditSched7","_state$modalEditSched8","editSched","DalExceptionForm","_state$dalExceptions","_state$dalExceptions2","addNewException","_state$dalExceptions3","_state$dalExceptions4","_state$modalEditExcep","_state$modalEditExcep2","_state$dalExceptions5","_state$dalExceptions6","_state$modalEditExcep3","_state$modalEditExcep4","editException","_props$dalScheds$","_props$dalScheds","_props$dalExceptions","_props$dalScheds2","_props$dalExceptions2","defaultModeOpts","DEFAULT_MODE","exceptionList","AddToltipIfDisabled","_props$modalEditSched2","_props$modalEditSched3","_props$modalEditSched4","_props$modalEditSched5","_props$modalEditSched6","_props$modalEditSched7","_props$modalEditSched8","_props$modalEditSched","checkedColor","_props$modalEditExcep","formatDays","renderEditButtons","renderWeekDaysButtons","DalInfo","_dalInfo$dal","_profile$adminClientP2","dalInfo","illuminationList","handleGetImages","handlePostImage","handleDeleteImage","renderImages","renderDeviceInfo","_dalInfo$dal2","_state$lastTelemetry","_state$lastTelemetry2","_state$utils$state$se","_state$utils$state$se2","_profile$adminClientP3","ContainerInfoUsageIndex","ContainerCardDmtUsage","InfoItemShort","NobreakInfo","_nobreakStatus$util$S","_nobreakStatus$util$S2","screen","nobreakStatus","columnItemWidth","deviceLabel","noOpStatus","RenderImagesDmtNobreak","DMT_ID","IlluminationInfo","_illuminationStatus$u","_illuminationStatus$u2","_util$PORT","_util$FEEDBACK","feedbackStatus","setFeedbackStatus","illuminationStatus","utilIllumination","forceReload","DmtInfo","_dmtInfo$dmt","dmtInfo","utilitiesList","portList","_dmtInfo$dmt2","DevInfo","verifyTranslation","temperatureControlState","lastTelemetryTS","DUTS_SCHEDULES","SCHEDULES_ACTIVE_QUANTITY","DUTS_EXCEPTIONS","redirectToIntegrations","handleDamMessages","handleDacMessages","handleDutMessages","handleGetDACImages","handlePostDACImage","handleDeleteDACImage","handleGetDUTImages","handlePostDUTImage","handleDeleteDUTImage","handleGetDAMImages","handlePostDAMImage","handleDeleteDAMImage","handleGetDRIImages","handlePostDRIImage","handleDeleteDRIImage","openModalDutSchedulesList","automation","ctrl_mode","SCHEDULE_STATUS","getDutAutExtraInfo","NewCard","renderScheds","ScheduleButton","handleOnClick","SCHEDULE_TOTAL_QUANTITY","DUT_SCHEDULE_ID","outros","habilitadoDesabilitado","_devInfo$dam3","permissionProfile","UNIT_MANAGE","isEditEnable","verifyCapacityPower","_devInfo$dac","_devInfo$dac2","_devInfo$dac3","_devInfo$dac$DAC_DESC","_devInfo$dac$DAC_DESC2","_getTranslatedInstall","BT_ID","dam_mode","DAC_DESC","renderDevInfo","StatusL1","DivisionLine","TSPAN","ONLINE_TIMEOUT","invBool","formatTimeToTimeAxios","CustomTickTime","initialTimeRef","ChartRealTime","_state$devInfo$dac","styleLabelTemperature","styleLabelPressure","DacFluid","tickCount","CommandStatus","labelGreen","labelRed","statusColor","additionalStyles","_state$devInfo2$dac","styleText","styleFluidType","RealTimeDesktop","_state$devInfo3$dac","_state$lastData$Tamb","_state$lastData","_state$lastData2","_state$lastData3","_state$lastData4","_state$lastData5","_state$lastData6","_state$lastData7","_state$lastData8","_state$lastData9","_state$lastData10","_state$lastData11","_state$lastData12","_state$lastData13","_state$lastData14","_state$lastData15","_state$lastData16","_state$lastData17","_state$lastData18","_state$lastData19","_state$lastData20","_state$lastData21","_state$lastData22","_state$devInfo4$dac","lastData","verifyIsHeatExchanger","verifyIsFancoilOrHeatExchanger","debugFaults","_state$devInfo5$dac","_state$devInfo6$dac","RealTimeMobile","_state$lastData23","_state$lastData24","_state$devInfo7$dac","_state$lastData25","_state$lastData26","_state$lastData27","_state$lastData28","_state$lastData29","_state$lastData30","_state$lastData31","_state$lastData32","_state$lastData33","_state$lastData34","_state$lastData35","_state$lastData36","_state$lastData37","_state$lastData38","_state$lastData39","_state$lastData40","_state$lastData41","flexBasis","RealTimeContents","hasNewTelm","calculate_L1_fancoil","onTelmTimer","timezoneOffset","convertToPsi","currentData","yLcmp","yLevp","yLcut","addTelemetryPoint","processReceivedTelemetry","condDesc","prevL1start","historyPromise","intervalLength_s","intervalLength","tzOffset","dateWithOffset","histResp","devHist","newData","initialTimestamp","timeAxis","datIni","LcmpHist","LevpHist","LcutHist","TambHist","TsucHist","TliqHist","PsucHist","PliqHist","TscHist","TshHist","deltaTHist","NaN","processReceivedHistory","chartPoints","newPoint","chartTimeIni","lastPoint","timeEndThreshold","updateDamStatus","DamControl","onStateChanged","sendDamMode","safeWaitMode","sendDamRelay","safeWaitRelay","manualCommandsEnabled","damStateIsEco","uncheckedColor","SetpointButtonMobile","DamRealTimeContents","_getTemperature","_state$devInfo$dam$MI","_state$devInfo$dam$MA","_getTemperature2","ecoModeActing","optionsControlMode","iconSelected","optionsOperationMode","disableOperationMode","disableSetpoint","dutIrCommands","_message$data","_message$data2","_message$data3","defineSelectedOptions","controlModeCurrent","controlModeNew","operationModeCurrent","optionControlModeSelected","getDialColor","BlueSecondary_v3","MINIMUM_TEMPERATURE","GreenLight","changeSetpoint","newSetpoint","selectControleMode","selectOperationMode","optionOperationModeSelected","getTemperature","getReturnTemperature","_state$devInfo$DEV_ID","SETPOINT_ECO_REAL_TIME","supportsExtTherm","getInsufflationTemperature","showInsufTemp","_getInsufflationTempe","objectFit","EcoModeIcon","DamEcoCard","damInfo","damEco","Dial","showIndicator","OptionsWithIcon","mobile","el","tagName","parentElement","strokeMiterlimit","LightLightGrey_v3","ry","DutAutControl","transmittingCommand","emmitDutCommand","CMD_TYPE","DutAutRealTimeContents","telemetryDutAut","progState","telemetryDut","CTRLOPER","identifyDutIrCommands","dutIrCmds","CMD_DESC","t1","TEMPER","t2","T","ehDesl","ehVent","ehRefr","M","avaliacao","identificado","cmdName","EnvironmentRealTimeContents","_state$data","dutStats","dutType","timerChangeSetpoint","floatingControlMode","floatingControlFan","floatingControlSwing","getDutType","_state$dutIrCommands","_state$dutIrCommands$","tempDefault","_command$cmdName","_command$cmdName2","IR_ID","CMD_NAME","getClosestSetpointCommand","_state$dutIrCommands2","cmd","_value$cmdName","_cmd$cmdName","_value$cmdName2","cmdSetpoint","valueSetpoint","dayIni","dutIrCodes","setOperationMode","_state$dutIrCommands3","_command$cmdName3","co2","hum","LightOrange","labelTempRetorno","labelTempInsuf","tempOrDutDuo","BoxWrapper","getOperationModeIcon","_state$dutIrCommands4","_command$cmdName4","setOperationStatus","img_power_grey","img_power","getOperationStatusIcon","DmaRealTime","DmaRealTimeContents","getCurrDate","yyyy","_state$graphDataCubic","_state$graphData","telemetries","graphDataCubic","lastConsumption","lastConsumptionCube","changeSamplingPeriod","samplingPeriod","pulses","saved_data","dateStr","dArr","reformatDate","litersPerPulse","updateGraphData","currValue","dataCopy","dataCopyCubic","CustomizedToolTip","LabelInfo","LineLegend","FanOnIcon","FanOffIcon","ValveOpenedIcon","ValveClosedIcon","DriScheduleList","onAddEdit","onChangeShowException","hideAddButton","limitExceeded","checkExceptionDate","exceptionToCompare","checkWeekDayCommon","days1","days2","checkTimeConflict","intervalToCompare","EditScheduleModal","validateSchedule","refetch","generateAddDriScheduleInput","generateUpdateDriScheduleInput","DriScheduleContent","fixedContent","msgError","validateException","DriScheduleModal","RssiComponent","showLabel","verifyAndUpdateRSSI","ikron03availableErrors","multkAvailableErrors","getMagnitudeOrder","LN10","DriRealTimeContents","_state$devInfo$dri$va4","_state$devInfo$dri$va5","_state$vavTempAmb","_state$devInfo$dri$va6","_state$devInfo$dri5","_state$devInfo$dri5$v","_state$devInfo$dri$va7","_state$devInfo$dri6","_state$devInfo$dri6$v","_state$vavSetpoint$to","_state$vavSetpoint","_state$devInfo$dri7","_state$devInfo$dri7$f","_state$fancoilTempAmb","_state$devInfo$dri8","_state$devInfo$dri8$f","_state$devInfo$dri9","_state$devInfo$dri9$f","_state$devInfo$dri10","_state$devInfo$dri10$","_state$devInfo$dri11","_state$devInfo$dri11$","_state$fancoilSetpoin","_state$devInfo$dri$va8","_state$telemetries$v_","_state$telemetries$v_2","_state$telemetries$i_","_state$telemetries$i_2","_state$telemetries$po","_state$telemetries$po2","_state$telemetries$v_3","_state$telemetries$v_4","_state$telemetries$i_3","_state$telemetries$i_4","_state$telemetries$po3","_state$telemetries$po4","_state$telemetries$v_5","_state$telemetries$v_6","_state$telemetries$i_5","_state$telemetries$i_6","_state$telemetries$po5","_state$telemetries$po6","_state$telemetries$v_7","_state$telemetries$v_8","_state$telemetries$i_7","_state$telemetries$i_8","_state$telemetries$po7","_state$telemetries$po8","_state$telemetries$v_9","_state$telemetries$v_10","_state$telemetries$v_11","_state$telemetries$v_12","_state$telemetries$v_13","_state$telemetries$v_14","_state$telemetries$i_9","_state$telemetries$i_10","_state$telemetries$i_11","_state$telemetries$i_12","_state$telemetries$i_13","_state$telemetries$i_14","_state$telemetries$po9","_state$telemetries$po10","_state$telemetries$po11","_state$telemetries$po12","_state$telemetries$po13","_state$telemetries$po14","_state$telemetries$po15","_state$telemetries$po16","_state$telemetries$fp","_state$telemetries$fp2","_state$telemetries$fp3","_state$telemetries$fp4","_state$telemetries$fp5","_state$telemetries$fp6","_state$telemetries$fp7","_state$telemetries$fp8","_state$devInfo$dri$va9","_state$devInfo$dri$va10","_state$devInfo$dri$va11","CONT_WS_REQUEST","isTelemetryNull","installationError","desktopWidth","isSendingSetpoint","vavSetpoint","vavTempAmb","vavValve","vavLock","fancoilSetpoint","fancoilTempAmb","fancoilValve","fancoilFan","activeFancoilOperationMode","activeMachineStatus","showCurves","totalOrMedium","phaseA","phaseB","phaseC","sendingNewFancoilMode","driState","setDriState","totalSchedules","showScheduleModal","energyState","setEnergyState","windowSize","setWindowSize","debouncedRender","useDebouncedRender","verifyMeterIsSchneiderPm210","formatPowerAux","sendDriSetpoint","VALUE","updateTimeReceiveTelemetries","sendOnOffCommand","changeVAVSetpoint","changeVAVLock","changeFancoilSetpoint","onClickMode","_state$devInfo$dri$va","scrollBy","_state$devInfo$dri$va2","setFancoilOperationMode","shiftedTime","_state$devInfo$dri$va3","vavCfg","_state$devInfo$dri2$v","_state$devInfo$dri3","_state$devInfo$dri3$v","_state$devInfo$dri4","_state$devInfo$dri4$v","_state$devInfo2$dri$v","applicationDri","pot_at_a","pot_at_b","pot_at_c","verifyDriTypeToFormatPower","v_avg","v_a","v_b","v_c","i_total","i_a","i_b","i_c","pot_at_total","pot_at_tri","addEnergyParams","checkLastTimeStamp","Temp","MachineStatus","convertErrorTelemetry","erro","updateRssi","defaultValue","isDRIFancoil","callDriSchedules","schedulesList","_devInfo$dri$varsCfg3","_devInfo$dri$varsCfg4","_devInfo$dri$varsCfg5","_devInfo$dri$varsCfg2","isDRIVav","getTimezoneOffset","handleWindowResize","withCommands","ToggleSwitch","fancoilCfg","FANCOIL_ID","THERM_T_MIN","THERM_T_MAX","rowGap","img_mode_off","getFancoilOperationModeIcon","getFancoilOperationModeLabel","minTickGap","dataMin","dataMax","tel","CheckboxMaterial","disableRipple","fp","fp_a","fp_b","fp_c","convertKronErrorTelemetry","availableErrors","erroBin","msg","bit","GraphContainer","TitleFieldNobreak","TitleColumn","DmtRealTime","dmtId","DmtRealTimeContent","_state$state$electric","electricalNetwork","F1","F2","F3","F4","portInfo","listNobreaks","listIllumination","getPortsInfoGraph","NobreakCustomTick","labelFormater","getTelemetryValue","getTelemetryIllumination","NobreakGraph","illumination","IlluminationGraph","GraphContainerAll","CustomTickFeedback","DalRealTimeContent","Control","Relays","scale","DevRealTime","setDevice","setScreenDevice","Edit","Remove","Add","DutSchedule","DutScheduleContents","editedDay","schedProm","DevSchedule","CardIntem","allowedMeterModelsDriSlaveId","DriConfigParameters","_state$driMeterModel4","_state$driMeterModel5","_state$driMeterModel6","verifyDisabled","_state$driMeterModel","driMeterModel","_state$driMeterModel3","disabledDriProtocol","_state$driMeterModel2","disableDriLayer","Manufacturer","fancoil","valveManuf","fancoilValveManuf","otherValveManuf","valveModel","boxManuf","vavBoxManuf","vavBoxModel","fancoilManuf","otherFancoilManuf","fancoilModel","DriConfigAutomation","resetCfgFields","setDriApplication","roomName","selectedValveModel","thermManuf","driVavFancoilModel","DriConfigChillerCarrier","_state$formData$GROUP","_state$formData$UNIT_","_state$formData$GROUP2","_state$formData$ASSET","_state$formData$GROUP3","_state$formData$ASSET2","_state$formData$ASSET3","updateAssets","setVariablesChiller","ClearSelect","onClickClear","ASSET_ID_item","driChillerCarrierLine","driChillerCarrierModel","_state$driChillerCarr","_state$driChillerCarr2","DriConfigEnergyMeter","meterModels","_defaultConfig$driSla","establishmentName","DriConfigSchedulesAutomation","isFirstRender","valueOrNull","DriConfig","_state$formData$UNIT_3","_props$devInfoResp$dr","_props$devInfoResp$dr2","_props$devInfoResp$dr3","_props$devInfoResp$dr4","_state$formData$CLIEN9","_state$formData$CLIEN10","_state$formData$CLIEN11","_state$formData$UNIT_10","_state$formData$CLIEN12","_state$formData$UNIT_11","_state$formData$UNIT_12","listModelsChiller","vavLoaded","fancoilLoaded","enableEco","applications","REL_DUT_ID_item","ENABLE_ECO_item","ECO_MODE_CFG_item","ECO_INTERVAL_TIME","ECO_OFST_END","persistedAssetDevice","devInfoResp","rooms","roomDutInfo","setDriApplicationEnergy","setDriApplicationVAV","setDriApplicationFancoil","setDriApplicationChillerCarrier","setDriApplicationCarrierEcosplit","chillerName","setDriApplicationChillerName","getOptionByValue","_options$find","loadPlaceConfig","fetchUnits","updateGroups","_state$formData$CLIEN","_driCfg$chillerName","ASSET_ROLE","_findCapacity$address","_findCapacity$address2","_driCfg$varsList2","_findInstallationType","_findInstallationType2","_state$driMeterModel$","_driCfg$varsList3","_driCfg$varsList3$fin","_driCfg$varsList3$fin2","_driCfg$varsList3$fin3","findCapacity","findInstallationType","_driCfg$application","_driCfg$application2","_driInfo$establishmen","_devInfoResp$dri","_devInfoResp$dri2","_devInfoResp$dri3","_value$THERM_MANUF","_value$VALVE_MANUF","_value$VALVE_MODEL","_vavFancoilValveTypes","_value$BOX_MANUF","_value$BOX_MODEL","_value$ROOM_NAME","THERM_MANUF","VALVE_MANUF","VALVE_MODEL","VALVE_TYPE","BOX_MANUF","BOX_MODEL","_value$THERM_MANUF2","_value$THERM_MODEL","_value$VALVE_MANUF2","_value$VALVE_MODEL2","_vavFancoilValveTypes2","_value$FANCOIL_MANUF","_value$FANCOIL_MODEL","THERM_MODEL","FANCOIL_MANUF","FANCOIL_MODEL","loadEcoConfig","_state$comboOpts$enab","_state$comboOpts$ecoM","_driCfg$ecoCfg$ECO_IN","_driCfg$ecoCfg$ECO_IN2","_driCfg$ecoCfg$ECO_OF","_driCfg$ecoCfg$ECO_OF2","_driCfg$ecoCfg$ECO_OF3","_driCfg$ecoCfg$ECO_OF4","ECO_INT_TIME","verifyComboLabel","_props$devInfoResp","_props$devInfoResp$in","verifyMeterModelsSort","getDutsList","getEnergyComboOpts","getChillerComboOpts","getVavComboOpts","getFancoilComboOpts","isReturn","verifyOpenPermissionAndClients","formattedList","verifyOpenModalAndStates","verifyOpenModalAndCities","dielManuf","manuf","driMeterModelsSort","LINE_NAME","formattedListModels","vavs","vavsForEach","fancoils","fancoilForEach","_state$formData$UNIT_2","_state$formData$CLIEN4","_state$formData$UNIT_4","groupFiltered","_state$formData$UNIT_5","_state$formData$UNIT_6","machinesAssetsList","_state$formData$CLIEN5","lastApplication","verifyDriProtocol","verifyDriProtocolAndModel","_state$driVavFancoilM","verifyValveType","remove","vavUpdate","fancoilUpdate","_state$persistedAsset","_state$formData$UNIT_8","_state$formData$UNIT_9","_state$formData$CLIEN7","_state$formData$CLIEN8","systemName","_state$driChillerCarr3","_state$listModelsChil","_state$listModelsChil2","_state$driChillerCarr5","_state$listModelsChil3","_state$listModelsChil4","_state$driChillerCarr4","_state$driChillerCarr6","handleEditAsset","_state$formData$UNIT_7","_state$formData$CLIEN6","energyMeterSetAndDelete","getDefaultSendInterval","resetAutomationField","returnExistOrValue1","item2","isFancoilVavApplication","automationTabVisible","onSelectClient","_state$formData$CLIEN2","_state$formData$CLIEN3","updateUnits","onSelectUnit","_getKeyByValue6","saveAutomationInfo","EditDevInfoDRI","onDataUpdate","varsConfigInput","RouterEditDal","when","onQuit","onSave","currentPath","setCurrentPath","unblock","block","handleSairSemSalvar","canRoute","handleSalvarSair","EditDalInfo","_state$selectedPort2","_state$selectedFeedba2","_state$illuminationLi","clientsOpts","unitsOpts","utilitiesOpts","selectedPort","selectedFeedback","replaceIllum","clientChanged","unitChanged","deletionList","illuminationScheds","hasEdited","isOverLimit","nonAssociatedIllums","fetchClientData","feedbackPorts","getDalPortsInfo","saveDalInfo","illumErrors","removed","ilumn","_ilumn$PORT","_ilumn$FEEDBACK","currIllumInfo","_ilumn$PORT2","_ilumn$FEEDBACK2","defaultIllum","shouldOpen","handlePortChange","oldPort","_state$type","_state$type2","old","handleRemoveIllum","illumIndex","removedIllum","handleSchedChanges","utilIndex","_state$selectedPort","_state$selectedFeedba","isNew","IllumItem","illumInfo","portsList","feedbacksList","schedChanges","handleDefaultMode","valid","clearPort","_illumInfo$PORT","_illumInfo$FEEDBACK","removeIllumAssociation","margingTop","_illumInfo$PORT2","filterIllumFeedbackOpts","_illumInfo$FEEDBACK2","EditDmtInfo","_state$utilitiesList","handleProp","portsToEdit","openDeleteModal","selectedElectricNetwork","replaceUtility","replaceUtilityIdx","deleteUtilityIdx","updateDimensions","setElectricNetwork","electricNetworkIdx","DISSOCIATE","setDefaultElectricNetworkPort","numberOfNobreaks","defaultPort","getUnitOpts","getDmtPortsInfo","utilitiesFromUnit","associateds","dissociateds","getUtilitiesOpts","setUnitInfo","setSelectedValues","hasNobreak","hasElectricNetwork","getNumberOfNobreaks","handleNewUtility","nonAssociatedUtilities","utilites","getNonAssociatedUtilities","setNewUtilityPort","cancel","utility","utilityIdx","utilityListIdx","clearUnitInfo","removeElectricNetwork","electricCircuitIdx","dissociateElectricNetwork","UtilityItem","renderList","EditDevInfo","_state$devInfo53","_state$devInfo53$dut","_devInfo$dam18","_state$devInfo54","_state$devInfo54$dam","_state$devInfo55","_state$devInfo55$dam","_state$devInfo56","_state$devInfo56$dam","_state$devInfo57","_state$devInfo57$dam","resendTimeError","setResendTimeError","sendAndDisableAut","setSendAndDisableAut","damFuNomCalc","DAT_BEGAUT","ENVIRONMENT_ID_item","DUTAUTCFG_item","ENABLE_ECO_local","ECO_CFG_item","DAC_APPL_item","DAC_TYPE_item","DAC_ENV_item","DAC_BRAND_item","DAC_MODIF_item","DAC_COMIS_item","DAC_HEAT_EXCHANGER_item","P0_POSITION","P1_POSITION","T2_POSITION","USE_RELAY_item","PLACEMENT_item","DAM_PLACEMENT_item","SENSOR_AUTOM","RESENDPER","DAC_COP","FU_NOM","configTsensors","TEMPERATURE_OFFSET","ECO_SETPOINT","ECO_LTC","ECO_LTI","ECO_UPPER_HYSTERESIS","ECO_LOWER_HYSTERESIS","ECO_SCHEDULE_START_BEHAVIOR_item","EXT_THERM_CFG","COMPRESSOR_NOMINAL_CURRENT","EQUIPMENT_POWER_item","DAM_INSTALLATION_LOCATION_item","T0_POSITION_DAM","T1_POSITION_DAM","EVAPORATOR_MODEL_item","automationTabHasBeenSelected","optionsEco","optionsEcoLocal","pPositions","tPositions","applicsNew","damPlacement","sensorAutom","sensorDamDuo","dutAutCfg","psens","scheduleStartBehavior","heatExchangerTypes","dutScheduleStartBehavior","dutScheduleEndBehavior","dutForcedBehavior","damInstallationLocation","evaporatorModels","extThermCfg","equipmentPower","P0raw","P1raw","offsetChecked","hysteresisChecked","dutCompatibilityHysteresisEco2","subcards","relevances","DUTS_SCHEDULES_FILTERED","DUTS_SCHEDULES_DELETED","DUTS_EXCEPTIONS_FILTERED","DUTS_EXCEPTIONS_DELETED","selectedSchedule","selectedIndexSchedule","selectedException","selectedIndexException","NEED_MULT_SCHEDULES","CHANGE_EXCEPTION_PARAMETERS","irCommands","persisted_USE_RELAY_item","isLoadingUnitInfo","dacDamEcoDetails","ecoModeDetails","checkGroupAutomated","groupsDevice","returnCheck","dev_aut","checkIsDutRef","validateDacAppConfig","_formData$DAC_APPL_it3","isValidationOk","getPsucAndPliq","_formData$DAC_APPL_it","applicationConfig","validatePsucAndPliq","_formData$DAC_APPL_it2","DAC_HEAT_EXCHANGER_ID","validateDacApp","valueOrNumber","handleDacWithDam","_formData$USE_RELAY_i","_formData$ENABLE_ECO_","_formData$ECO_CFG_ite","USE_RELAY","_formData$ECO_SCHEDUL","SCHEDULE_START_BEHAVIOR","setDacWithDamInfo","saveDacInfo","formatDacData","_state$persisted_USE_","_formData$CLIENT_ID_i2","_formData$UNIT_ID_ite2","_formData$GROUP_ID_it","_formData$FLUID_TYPE_","_formData$DAC_TYPE_it","_formData$CAPACITY_UN","_formData$EQUIPMENT_P","_formData$DAC_ENV_ite","_formData$DAC_BRAND_i","_formData$DAC_MODIF_i","_formData$DAC_COMIS_i","_formData$DAC_HEAT_EX","_formData$REL_DUT_ID_","currentUseRelayValue","considerDutRef","l1SimMode","EQUIPMENT_POWER","DAC_BRAND","DAC_MODIF","T0_T1_T2","_formData$ASSET_ID_it","_formData$ASSET_ID_it2","validateDacData","_formData$T0_POSITION","_formData$T1_POSITION","_formData$T2_POSITION","sendDacData","validateDamParams","damData","_damData$groups","showDamWarnings","setDamDataWithCanSelfReference","_state$devInfo8$dam","_state$devInfo9$dam","_formData$REL_DUT_ID_5","_formData$REL_DUT_ID_6","checkDamFields","saveDamInfo","formatDamData","_formData$CLIENT_ID_i3","_formData$UNIT_ID_ite3","_formData$ENABLE_ECO_2","_formData$ECO_CFG_ite2","_formData$REL_DUT_ID_2","_formData$REL_DUT_ID_3","_formData$REL_DUT_ID_4","_state$devInfo7$dam","_formData$DAM_INSTALL","_formData$DAM_PLACEME","_formData$DAM_PLACEME2","_formData$T0_POSITION2","_formData$DAM_PLACEME3","_formData$T1_POSITION2","ENABLE_ECO_LOCAL","HAD_AUTOMATION_SETTING_CHANGED","_formData$ECO_SCHEDUL2","redirectToProfile","handleDutsCommandsWithoutMultScheds","dutProgramming","deleteDayProg","scheduleAux","PERMISSION","handleDutsCommandsWithoutMultSchedsPart1","handleDutsCommandsWithoutMultSchedsPart2","handleEqualsExcepts","scheduleReference","SCHEDULE_END_BEHAVIOR","ACTION_MODE","ACTION_TIME","ACTION_POST_BEHAVIOR","FORCED_BEHAVIOR","setDutExcepts","setDutExceptsFiltered","handleDutAut","dutData","dutSchedules","dutExceptions","_state$devInfo16","_state$devInfo16$dut_","_formData$DUTAUTCFG_i7","_formData$MCHN_BRAND_","_formData$DUTAUTCFG_i","_formData$DUTAUTCFG_i2","beginDutAutValidations","UPDATE_AUTOM_INFO","_state$devInfo14$dut","_formData$SENSOR_AUTO","_state$devInfo15","_state$devInfo15$dut","_formData$SENSOR_AUTO2","_dutData$PLACEMENT","setDutAutEquipInfo","isDevicesConnecteds","scheduleCompare","bothSchedulesActives","checkWeekDayCommun","conflict","SCHEDULE_TITLE","checkCardsNoConflicts","_formData$DUTAUTCFG_i8","checkSchedulesConfigurationDifferent","checkExceptionsHasSameProperties","compareWithAllOthersSchedules","checkScheduleAndExceptions","checkNeedMultipleSchedule","_formData$DUTAUTCFG_i3","_formData$DUTAUTCFG_i4","_state$irCommands$fin","hasIrCode","IR_ID_COOL","deletedId","deleted","handleDutSched","_state$irCommands$fin2","handleDutSchedWithoutMultProg","resendPER","PORTCFG","USE_IR","setDutAutTimeAndConf","handleDutsExcepts","_state$irCommands$fin3","DUT_EXCEPTION_ID","EXCEPTION_TITLE","EXCEPTION_STATUS_ID","_formData$DUTAUTCFG_i5","_formData$DUTAUTCFG_i6","handleDutsCommands","sendDutAutData","saveDutInfo","_formData$CLIENT_ID_i5","_formData$UNIT_ID_ite5","_formData$CLIENT_ID_i6","_formData$UNIT_ID_ite6","dutBeginValidations","environmentToCheck","_formData$ENVIRONMENT","formatDutData","_formData$PLACEMENT_i2","_formData$CLIENT_ID_i4","_formData$UNIT_ID_ite4","_formData$ENVIRONMENT2","_devInfo","handleDutAsset","_state$devInfo17","_state$devInfo17$dut","_formData$SENSOR_AUTO3","_state$devInfo18","_state$devInfo18$dut","_formData$SENSOR_AUTO4","_dutData$PLACEMENT2","sendDutData","saveDriInfo","_formData$CLIENT_ID_i7","_formData$UNIT_ID_ite7","driData","cfgsList","_itemJ$address","_itemJ$address2","_itemJ$address3","itemJ","handleDriConfig","urlBase","getDAMFUnom","_state$devInfo19","_state$devInfo20","_state$devInfo20$dam","begMonDate","begAutDate","utc1","UTC","utc2","dateDiffInDays","usageList","usageListFiltered","hoursOn","fu","getDutAutConfig","_b","self","fetchEndpoints","_response$damInstalla","fetchGroupsAndUnits","fetchEnvironments","valueOrEmptyString","setDacFormData","_devInfo$dac9","_devInfo$dac10","_devInfo$dac11","_devInfo$dac12","_devInfo$dac13","_devInfo$dac14","_devInfo$dac15","_devInfo$dac16","_devInfo$dac17","_devInfo$dac18","_devInfo$dac19","setDacL1","_devInfo$dac4","_devInfo$dac5","_devInfo$dac6","setDacApplication","_devInfo$dac7","_devInfo$dac8","setDacSensors","getOriginalInfoAssets","setDutFormData","_devInfo$dut$TEMPERAT","_devInfo$dut2","_devInfo$dut_aut4","_devInfo$dut_aut5","_devInfo$dut_aut6","_devInfo$dut_aut7","portCfg","autCfg","setDutAutConfig","setFormDataValues","_devInfo$dut_aut3","_devInfo$dut_aut","COMPATIBLE_MODES","_devInfo$dut_aut2","setDutAutFormData","setFormDataDates","_devInfo$dam4","_devInfo$dam5","_devInfo$dam6","_devInfo$dam7","_devInfo$dam8","_devInfo$dam9","_devInfo$dam10","_devInfo$dam11","_devInfo$dam12","_devInfo$dam13","_devInfo$dam14","_devInfo$dam15","_devInfo$dam16","setDamFormData","devGroups","_devInfo$dut_aut8","_devInfo$dut_aut9","_devInfo$dut_aut10","_devInfo$dut_aut11","_devInfo$dut_aut12","_devInfo$dut_aut13","_devInfo$dut_aut14","_devInfo$dut_aut15","setDutAutMachine","getDutsSchedAndExcepts","_state$devInfo21","_state$devInfo21$dut","getDevType","cardsCfg","heatExchangers","onSelectApplication","formatGroups","dacsAutoList","_state$devInfo22","_state$devInfo23","_state$devInfo24","withDacAut","_formData$CLIENT_ID_i8","_state$devInfo25","_state$devInfo26","_formData$ENVIRONMENT3","setFormData","environment","ENVIRONMENT_LABEL","_state$devInfo27","_state$devInfo27$dut","fancoilLabel","_formData$DAC_APPL_it4","_formData$DAC_APPL_it5","_state$devInfo28","_state$devInfo28$dac","_state$devInfo29","_state$devInfo29$dac","_formData$DAC_APPL_it6","dacApplic","changeDacPropertiesByMachine","_state$machinesAssets","_state$devInfo30","_state$devInfo30$dac","_state$devInfo31","_state$devInfo31$dac","_state$devInfo32","_state$devInfo32$dac","_formData$GROUP_ID_it2","filterByUnitId","_formData$CLIENT_ID_i9","_state$devInfo33","_state$devInfo34","_state$devInfo34$dac","_state$devInfo35","_state$devInfo36","_formData$UNIT_ID_ite8","_devInfo$dam17","_formData$CLIENT_ID_i10","_formData$UNIT_ID_ite9","_formData$UNIT_ID_ite10","afterCreateUnit","_formData$UNIT_ID_ite11","afterCreateGroup","_formData$UNIT_ID_ite12","groupItem","changeSelectedL1Sim","_state$devInfo37","_state$devInfo38","_devInfo2","_devInfo3","_devInfo4","_devInfo5","_devInfo6","_devInfo7","_state$devInfo39","_state$devInfo39$dut","isOnlyDutRef","dutAutEnabled","_obj$REL_DUT_ID_item$","editSchedule","saveSchedule","scheduleId","_schedule","saveException","bothSchedulesAllow","exceptionAsScheduleConfig","schedule1","schedule2","hasSetPoint","hasLtc","hasLti","hasEco2Options","hasForcedOptions","getModifications","hasActionMode","hasActionPostBehavior","hasActionTime","getModificationsSobDemanda","resultInitial","configResultSobDemanda","_state$devInfo40","_state$devInfo41","increaseDecreaseIntervalTime","increaseDecreaseSetpoint","increaseDecreaseUpperHysterese","increaseDecreaseLowerHysterese","dutDuoFancoil","_devInfo8","_devInfo8$dut","renderDutDuoEquipFields","_formData$PLACEMENT_i3","renderDutEquipFields","_state$devInfo42","_state$devInfo42$dut","onWheel","renderAssetsFields","_formData$GROUP_ID_it5","_formData$GROUP_ID_it6","_formData$ASSET_ID_it3","_formData$GROUP_ID_it3","changePropertiesByMachine","_formData$GROUP_ID_it7","_find","selectedAsset","_formData$GROUP_ID_it4","_formData$ASSET_ID_it4","changePropertiesByAsset","renderDacEquipFields","_state$devInfo43","_state$devInfo44","_state$persistedAsset2","_comboOpts$evaporator","_formData$EVAPORATOR_","_state$devInfo45","_state$devInfo46","_state$persistedAsset3","_state$persistedAsset4","renderHeatExchangerFields","renderDamDuoEquipFields","_formData$DAM_PLACEME4","_formData$T0_POSITION3","_formData$T1_POSITION3","_formData$DAC_APPL_it7","_formData$DAC_TYPE_it2","_formData$DAC_HEAT_EX2","_formData$DAC_HEAT_EX3","_formData$DAC_HEAT_EX4","_formData$DAC_HEAT_EX5","_formData$DAC_HEAT_EX6","_formData$DAC_HEAT_EX7","_formData$DAC_HEAT_EX8","_formData$DAC_HEAT_EX9","renderDamEcoFields","_state$devInfo49","_state$devInfo49$dam","_state$devInfo50","_state$devInfo50$dam","InputCalculator","onIncreaseDecrease","lowerLimit","inicio","final","verifyVariableExistence","variable","exeption","_state$driInfo$dri","renderDriConfig","_formData$CLIENT_ID_i11","_formData$CLIENT_ID_i12","_formData$UNIT_ID_ite13","_formData$UNIT_ID_ite14","_state$devInfo47","_state$devInfo48","_formData$DAM_INSTALL2","renderEquipmentInfo","verifyDamAndRelDutId","unity","BackupEcoV2DamDac","_state$devInfo51","_state$devInfo51$dam","_state$devInfo52","_state$devInfo52$dam","value3","renderEco1Fields","verifyDamAndDamDisabled","radius","onHandleEdit","onHandleDelete","renderDutAutSchedule","saveDevInfo","ScheduleEditCard","cardIndex","onHandleSave","onHandleCancel","ExceptionEditCard","renderModal","_formData$PLACEMENT_i","_formData$UNIT_ID_ite","deleteAutAndDisassociate","IrTable","IrTableCell","IrTableCell2","getDutDefaultTemps","temps","DutIrManagement","_state$modalCmdType$C3","_state$modalCmdType$C4","modify","haveError","savingCmdType","savingCmdsTable","savingFakeCmds","deletingSelectedCmds","selectedDutCommands","defaultIrList","irList","loadedIrList","dutDefaultTemps","dutCommandActions","probableIrCommands","loadedIrModel","checkedAllCodes","lastIr","isOld","timer","modalCmdType","CMD_ACTION","learnActive","rends","openEdit","savingModel","permissionGeral","probableCommands","_x$ircodes","ircodes","levenshtein","dropdown_text","fetchIRCommandSets","msgType","msgData","sendCommandsTableToDut","clearEditItemValues","cmdDesc","cmdDescTemp","getCommandTemp","RouterPrompt","cancelText","okText","onOK","MdArrowDropDown","MdArrowRight","_state$MCHN_BRAND_ite","_state$devInfo6$dut_a","_state$devInfo6$dut_a2","ir_command","clonedIrCodes","commands","idx","ir","IrReadFaintIcon","IrReadIcon","wantEditItem","TransmitIcon","deleteIrCode","deleteAllSelectedCommands","_state$modalCmdType$C","_state$modalCmdType$C2","tempCodes","Environments","invisibleDuts","measuring_point","_props$VARS","getParamsToCallEnvironmentsListPage","searchEnvironment","USEPERIOD_INDEX_INI","USEPERIOD_INDEX_END","nowShifted","todayWeek","todaySchedule","nowIndex","getUTCHours","getUTCMinutes","checkDutsLimits","formatDut","invisibleDutsCount","clientlist","measuring","useFilter","dacs_all","duts_all","dams_all","dacs_filt","duts_filt","dams_filt","countriesPositions","statesPositions","citiesPositions","optionsCountry","optionsState","optionsCity","optionsUnits","country","handleFilterChanged","handleFilterState","handleFilterCity","handleFilterUnit","permissionsIncludeInstallationUnit","responseDacs","responseDuts","responseCountries","responseStates","responseCities","handleGetDacs","MapCard","PopupContainer","ContainerSearch","Geolocation","center","setCenter","setZoom","isDisabledButton","machines","dutsAndMachines","LeafletIcon","Default","prototype","_getIconUrl","fac","mergeOptions","iconUrl","MarkerIcon","iconRetinaUrl","iconSize","iconAnchor","shadowSize","setToInitialStateMap","handleSelectGeolocation","handleSelectCountry","handleSelectState","handleSelectCity","handleSelectUnit","DesktopGeoFilter","handleMapGeolocation","MobileGeoFilter","minZoom","maxZoom","onzoomend","layers","_layers","_zoom","i2","layerId","layer","_icon","setIcon","TileLayer","attribution","Marker","riseOnHover","Popup","FilterGeo","SearchsGeoloc","bg","convertCoolAutomationSchedTime","formatSchedules","devsSched","CoolAutomationRealTime","_props$coolAutomation","_props$coolAutomation2","_state$selectedScheds","_state$selectedScheds2","_state$selectedScheds3","_state$selectedScheds4","setWidth","loadingTelemetry","lastRefresh","allUnits","indoorUnits","outdoorUnits","coolAutomation","selectedScheds","selectedUnitId","unitLastTelemetry","siteTemprt","modalSchedulesList","atualizarUnits","coolAutDeviceId","img_mode_heat","img_mode_auto","img_mode_dry","img_mode_cool_off","setFanMode","fanMode","setSwingMode","swingMode","sendSSetpoint","selectedSchedules","_props$coolAutomation3","_sched$unitName","isDisabled","powerOnTime","powerOffTime","refreshUnitsTimer","setInterval","clearInterval","coolAutUnitId","parseCoolAutVarName","handleResize","mobileWitdh","UnitsTable","paddingInline","UnitRow","operationStatuse","img_fan_1_low","img_fan_2","img_fan_3","img_fan_auto","img_fan_4_high","img_fan_0_off","getFanModeIcon","img_swing_1_low","img_swing_4","img_swing_3","img_swing_2","img_swing_5_high","img_swing_auto","img_swing_off","getSwingModeIcon","varItem","InfoCellWrapper","InfoCellTitle","InfoCellValueWrapper","InfoCellValue","InfoCellUnit","CoolAutomationSchedForm","onNewConfirm","newScnhedule","onEditConfirm","newSchedule","ast","namePart","unitPart","formatHours","textHours","textMinutes","CoolAutomationHist","loadingChart","loadingUnitsList","ticksLabels","deviceUnits","checkedBefore","linesCont","linesDisc","linesLeft","minLval","maxLval","maxLtick","minLtick","fillDynamicValues","IntegrLayout","integrType","buildTabLink","IntegrInlineTabs","IntegrBreadCrumbs","automatedMachine","CoolAutomationEdit","schedInfo","CoolAutomationSchedTable","onSwitchClick","hasActions","daysTransl","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday","TableScheds","rowVar","StatusDevice","DRIPRofile","_varsCfg$worksheetNam","getDriModel","IntegrDevInfo","vertical","equipType","IntegrWaterInfo","bateryState","setBateryState","rfModule","setRfModule","setLastReadingDate","lastRSSI","setLastRSSI","laagerUsage","batery_state","module_rf","verifyLastReadingDateLaager","_response$data","_response$data$RSSI","_response$data2","wrap","order","handleDate","_devInfo$installation","_devInfo$installation2","thousandPointFormat","flexShrink","IntegrPerfil","_state$devInfoResp","_state$devInfoResp$in","_state$devInfoResp2","IntegrPerfilContents","editLink","coolautomation","varscards","varId","subcard","valUnit","_devInfoResp$info","CardElement","comboOptions","WaterProfileEdit","_state$clientId","_state$unitId","prevQuantityOfReservoirs","prevHydrometerModel","prevTotalCapacity","prevInstallationDate","prevInstallationLocation","handleUpdateIntegrPerfil","setInstallationLocation","setHydrometerModel","setInstallationDate","setTotalCapacity","setQuantityOfReservoirs","calendarFocused","setCalendarFocused","otherLocation","setOtherLocation","isOtherSelected","setIsOtherSelected","onSelectHydrometer","onSelectInstallationLocation","_err$response","waterVars","CardsConfig","newCardName","newSubcardName","newRelevance","addNewCard","itemName","removeCard","addNewSubcard","removeSubcard","addNewRelevance","removeRelevance","currVal","IntegrEdit","_rowVar$valUnit","save","IntegrHistory","UnitLayout","hasChiller","hasNess","hasLaager","hasVrf","bcrumbItems","_unitInfo$arrayChille","arrayChiller","Breadcrumb3","UnitNess","_state$unitInfo","fetchUnitInfo","UnitNessContent","iframeLoading","onLoad","WaterRealTimeContents","informationSection","varsCards","getVarValue","varsValues","cardTitle","subcardTitle","subCards","ProgressBar","counterState","setCounter","prev","getAlarmInfo","blob","getGeralStatusInfo","getEmergencyStopInfo","StatusCard","geralStatus","emergencyStop","tablet","handleFontSize","handleSpaceRight","MonitoringCard","lteNetwork","lteRSRP","rssiQuality","getRssiQuality","signals","getCompressorInfo","tmpLimits","evaporatorSP","evaporatorInputTemp","evaporatorOutputTemp","condenserInputTemp","condenserOutputTemp","compressorOleoA1","compressorOleoA2","compressorOleoB1","circuitSucA","circuitSucB","circuitDescB","circuitDescA","getTemperatureColor","decideCSS","valueNot","valueTrue","ChillerCard","compressorB1","compressorA1","compressorA2","capacityCA","capacityCB","compressorOleoA","compressorOleoB","formatTmp","tmp","maxTmp","numberBeforeDotMaxTmp","tmpSplitted","numberBeforeDotTmp","Compressors30hxValuesCard","PressureValuesCard","ImageValueCard","TemperatureValuesCard","setArrows","_formatTmp","_formatTmp2","_formatTmp3","_formatTmp4","_formatTmp5","includeArrows","getMarginLeft","ItemValueDescription","variavel","isEnd","nameVariavel","Point","marginX","ChillerCarrierHX","ChillerCarrierXA","selectedCircuit","setSelectedCircuit","generalParams","setGeneralParams","paramsCircuitA","setParamsCircuitA","paramsCircuitB","setParamsCircuitB","filteredParams","setFilteredParams","setSearchText","AddTooltipIfOverflow","currentMeasurement","ReturnLabelLimits","formatValue","circuit","personalizedValues","returnUnitMeasurementFormated","buildRowsFromParams","circuitType","rows","_param$unitMeasuremen","_paramLimits$key","_paramLimits$key2","paramLimits","handleClickCircuitType","verifyCircuitType","handleSearch","handleOrderRows","sortedParams","columnA","columnB","columnAValue","columnBValue","handleSortLimits","isStringA","isStringB","localeCompare","handleOrderAux","handleChangeSearchText","CircuitTypeButton","GetTemperatureColor","valueCell","ReturnColumnBackground","selectedCategory","category","ReturnFontWeight","ChillerAlarms","alarmsGenerated","setAlarmsGenerated","orderedAlarms","setOrderedAlarms","lastAlarms","setLastAlarms","alarmsList","setAlarmsList","setShowModalOrderColumns","initVerifyAlarms","setInitVerifyAlarms","formatedValue","formatedText","lastMinute","moreThanHour","ReturnLabelDate","DATE","dateInMinutes","calculateDiffDatesInMinutes","milliSecondsDiff","handleSortAlarmCode","alarmParams","newAlarms","newTelemetryAlarms","removedAlarms","lastAlarmValue","actualAlarmsList","resolved_alarms","actualAlarms","alarm_code","handleRemoveAlarms","alarmsListAux","dateNow","alarmInfo","datetime","handleAlarmCode","verifyAlarms","updatedAlarms","updateAlarmTimes","allAlarms","res","_alarms$","_alarms$2","_alarms$3","_alarms$4","_alarms$5","_alarms$6","_alarms$7","_alarms$8","_alarms$9","_alarms$10","lastAlarmsAux","handleActualAlarms","reduceWidth","DriChillerCarrierRealTime","_state$model","_state$model2","chillerCarrier30HX","chillerCarrier30XA","generalParams30HX","generalParams30XA","_props$varsList","inputRow","Alias","Unidade","updateInfoParams","dateDifference","checkLastTelemetry","roundOnePlace","_state$generalParams","_state$generalParams2","ALM","updateChillerCarrierTelemetry30XA","IntegrRealTime","IntegrRealTimeContents","ExternalLink","_props$color2","pageLocale","prev_page","next_page","prev_5","next_5","prev_3","next_3","IntegrsList","allRows","suppliersList","verticalList","_state$selectSupplier","dispositivo","fornecedor","handleGetIntegrationsList","includeInstallationUnit","_state$selectedCity","_state$selectedState","_state$selectedUnit","_state$selectedUnit2","_state$selectedClient","_state$selectedClient2","_state$selectedConnec","_err","handleGetIntegrationsListEnergy","_state$selectedCity3","_state$selectedState3","_state$selectedUnit5","_state$selectedUnit6","_state$selectedClient5","_state$selectedClient6","_state$selectedConnec3","handleSuppliersList","rowSupplier","handleVerticalList","rowVertical","handleInfoLinkUnit","infoLink","_state$selectedCity2","_state$selectedState2","_state$selectedUnit3","_state$selectedUnit4","_state$selectedClient3","_state$selectedClient4","_state$selectedConnec2","handleGetIntegrationsListWater","handleGetPromises","integrDefaultPage","_dev$STATE_ID","_dev$CITY_ID","_dev$UNIT_ID","_dev$CLIENT_ID","_dev$integrId","defaultCurrent","Units","lastPageRequestTs","unitlistfilter","startOperation","endOperation","includeInstallationUnits","setInformationsUnits","formatDate","dateString","_props$chillers","chillers","RowHealth","redHealth","TempColor","NewUnitsHealthIcon","yellowHealth","orangeHealth","greenHealth","greyHealth","blackHealth","TOTAL_CHARGES","formatTotal","TOTAL_MEASURED","RowTemp","highQtd","goodQtd","lowQtd","offQtd","isCharge","decimalPlaces","handleCSVHeader","handleCSVHeaderComplete","handleCSVHeaderCustom","StatusCell","production","PRODUCTION_TIMESTAMP","ExpandAll","ExpandBtn","verifyUnitAndClientToSend","_state$searchState","handleHealthUnit","insufDutId","insufDut","convertDateFormat","getUtilitiesCSV","nobreaks","NOBREAK_NAME","getWaterDevicesCSV","getEnergyDevicesCSV","energyInfo","dme","getAutomationDevicesCSV","getMonitoringDevicesCSV","setFiltersAndList","listFilter","updatedUnit","waterDevices","energyDevices","automationDevices","monitoringDevices","handleCSVData","verifyMobile","compileEnergyData","firstDate","sampleWithParams","sample","dataStruct","firstDay","lastDay","dayInMonth","dayOfWeek","dayNumber","totalMeasured","hourValues","generateDataStruct","compiledEnergyData","measures","_dataStruct$key$day","compiledData","properties","daysData","dayIndex","dayData","percentageTotalMeasured","hoursSorted","hourIndex","_nextHourDataVec","hourDataVec","nextHourDataVec","_daysData","hourDataValue","nextHourValue","maxDayTotalMeasured","yPointsHoursMeasured","formatData","Section","ChevronDown","ChevronUp","TopDate","GreyDark","CardNoService","registerLocale","ptBR","DataExportModal","exportType","energyMeterDataType","closeExportModal","periodParams","HeatmapWrapper","HeatmapChart","Heatmap","telemetryData","handlePrepareXAxis","handlePrepareYAxis","heatmapData","demands","handlePrepareData","handleRenderHeatmap","startDateTimestamp","endDateTimestamp","arrOfDates","controlDate","prData","isSameHour","isSameDay","avg_demand","average_demand","xIndex","xAxisFormatter","weekDay","visualMapFormatter","tooltipFormatter","valueDemand","valueHour","stringDate","enUS","stringHour","stringMax","stringAvg","stringMin","_Number","_Number2","_Number3","maxValueDemandConverted","maxValueDemandUnitMeasurement","max_demand","medValueDemandConverted","medValueDemandUnitMeasurement","minValueDemandConverted","minValueDemandUnitMeasurement","min_demand","_telemetryData$max_de","_telemetryData$max_de2","heatmapDom","heatmapChart","heatmapConfig","splitArea","showMinLabel","emphasis","borderWidth","visualMap","calculable","orient","itemWidth","gradientColor","TelemetryChartsLegend","LinechartWrapper","TitleComponent","ToolboxComponent","LegendComponent","Linechart","_telemetryData$demand","demandData","handleRenderStackedLine","intervalMinutes","startHour","endHour","times","formattedTime","hour12","setMinutes","axisValue","valueSplitedHour","valueSplitedMinute","valueEndHourString","linechartDom","lineChart","linechartOptions","showSymbol","legendHoverLink","areaStyle","symbol","TelemetryDemandCard","handleChangeRangeType","backBarchart","cardLabel","typeChart","setTypeChart","chartFactory","heatmap","linechart","TelemetryCard","CardHeader","TabOptions","TabOption","metersColors","EnergyEfficiency","_state$unitInfo5","_state$unitInfo6","_state$energyMetersLi","_state$energyMetersLi2","_state$unitInfo7","_state$energyMetersLi3","_state$unitInfo8","_state$energyMetersLi5","_state$demandsData","_state$demandsData$de","_state$unitInfo10","_state$unitInfo11","_state$groupedMachine","monthNames","energyCsvLinkEl","unitHasDacs","averageTariff","consumptionSum","opportunity","greenAntSum","greenAntInvoiceSum","sumSavingsKWh","higherConsumptionCounter","mediumConsumptionCounter","lowerConsumptionCounter","zeroConsumptionCounter","savingTarifa","dataTotalConsPercent","automationSavings","showMachines","showInvoice","showEnergyMeter","invoices","maxTotalCharges","maxTotalMeasured","yPointsTotalCharges","yPointsTotalMeasured","demandsByMeter","consumption_by_device_machine","maxTotalDemandsMeasured","maxTotalDemandMeasured","maxTotalDemandMeasuredAllMeters","yPointsDemandTotalMeasured","validInvoiceMonth","currentMonthNumber","currentYearNumber","energyCsvData","exportInvoices","openExportModal","energyMetersFiltered","selectedEnergyMeters","metersTotalDemand","yPointsDemandTotalMeasuredAllMeters","totalConsupmtionPeriod","demandsData","loadingTelemetryInfos","consumptionFlags","shouldShowConsumptionByMeter","setShouldShowConsumptionByMeter","setSelectedDay","selectedDayMeter","setSelectedDayMeter","selectedDayMeterStr","setSelectedDayMeterStr","timeRangeDayOrWeek","padronizedRawParams","padronizedParamsMultipleMeters","v_ab","v_bc","v_ca","pot_ap_a","pot_ap_b","pot_ap_c","pot_re_a","pot_re_b","pot_re_c","v_tri_ln","v_tri_ll","pot_re_tri","en_re_tri","freq","demanda_at","demanda_med_at","getCombinedLists","_device$DAC_ID","_device$DAC_NAME","auxCombinedLists","_sumCons","utilizationTime","sumConsComputedDataService","consByComputedDataService","total_refrigeration_consumption","total_utilization_time","verifyDataByComputedDataService","getDateStartAndDateEnd","totalKwh","totalCost","calc","getDates","apiResponse","periodEnd","baseline_id","messageError","getInvoices","handleCommonFunctionsGetEnergy","handleGetEnergy","handleGetEnergyByComputedDataService","handleGetRefrigerationConsumptionByComputedDataService","previousDay","verifyDates","calculateTotalDemand","calculeYTicks","calculePercentageBar","greenAntResponse","_item$invoice","consumedEnergy","invoice","getUnitConsumptionGreenAnt","combinedList","getDevsWithMachinesList","verifyConsumptionActualDay","_groupedMachines$dev$","_groupedMachines$dev$2","_groupedMachines$dev$3","_groupedMachines$dev$4","machineHasDacs","percent","rangeCons","consumptionCounter","totalConstPercent","verifyTotalConsPercent","hoursBlocked","countersByDay","totalEst","verifyHoursBlocked","_dat$savings_kWh","verifySumSavings","_energyMeter$ENERGY_D","energyData","calculateMaxTotalDemandMeasured","verifyEnergyData","getHoursConsumption","energyInfoByMeter","GET_HOURS_CONSUMPTION","_energy$ENERGY_DEVICE","_meterInfo$consumptio","meterInfo","consumptionByDevice","meterConsumptionFormatted","_state$demandsByMeter","filterByNull","handleGetTelemetryInfos","refrigerationInfo","total_consumption","_state$demandsByMeter2","randomMeter","totalDemand","_Object$keys","_state$demandsByMeter4","totalDayInfo","_state$demandsByMeter3","hoursInfo","_state$demandsByMeter5","hourInfo","currHourTotalMeasured","_state$demandsByMeter6","_state$demandsByMeter7","auxPointsTotalCharges","auxPointsTotalMeasured","auxPointsDemandTotalMeasured","demand","auxPointsHoursMeasured","auxPointsDemandTotalMeasuredAllMeters","percentageTotalCharges","totalCharges","percentageBaselinePrice","baselinePrice","percentageBaselineKwh","baselineKwh","getEnergyCsvData","getEnergyCsvHeaders","getEnergyCsvHourData","_state$demandsByMeter8","_state$unitInfo3","_state$demandsByMeter9","dayHour","_state$demandsByMeter10","_state$demandsByMeter11","currMeterDemand","electricCircuitsSelected","energyDeviceId","energyDevice","ELECTRIC_CIRCUIT_ID","ELECTRIC_CIRCUIT_IDS","onSelectMeter","IconChevrot","_window$open","_state$energyMetersLi4","_state$unitInfo9","EnergyMeterDemand","totalConsumptionPeriod","handleGetTelemetryMonth","handleGetTelemetryDay","getTelemetryCardLabel","EnergyEfficiencyInvoice","shouldExport","EnergyEfficiencyGeneral","EnergyEfficiencyMachines","EnergyEfficiencyMachine","newPeriodParams","energyApiResponses","_meter$ENERGY_DEVICE_","workBook","XLSX","book_new","_state$unitInfo2","Estabelecimento","workSheet","json_to_sheet","book_append_sheet","getEnergyCsvAllData","cond","handleGetEnergyCsv","_state$unitInfo4","handle","Schedules","closeScheduleModal","onConfirmRemoveProg","onDelException","contents","getActivePage","SelectedInput","DropdownMenu","strong","SetPointRow","SetPoint","ArrowUp","ArrowDown","TempSetPoint","Arrows","StatusContainer","IconWiFiRealTime","DriAutMachine","_devAutData$dri","_devAutData$dri$varsC","_devAutData$dri$varsC2","_devAutData$dri$varsC3","_devAutData$dri2","devAutData","statusOptions","_devAutData$dri3","_devAutData$dri3$vars","_devAutData$dri3$vars2","_devAutData$dri3$vars3","_devAutData$dri4","sendOffCommand","styles","RouterLink","LabelDevice","DutAutMachine","_state$data2","_state$data3","_state$data4","dutCommands","openScheduleDialogForDutAut","dutCommand","getDevInfoAndDutCommands","isSetpoint","_state$dutIrCommands5","Subtitle","RealTimeContainer","ListItemContainer","ListItemDataContainer","DataContainer","diagnosisColor","unavailable","malfunctioning","diagnosisText","diagnosisIcon","HeatExchangerInfo","_state$heatInfo","_state$heatInfo2","heatInfo","diagnosis","rebuild","MachineAutomation","openScheduleDialogFor","openConfirmStatusChange","automationOption","statusOption","automationOptions","HealthContainer","DuoTempContainer","UsageContainer","MachineInformation","dutsDuo","profilePermissionAllClients","dacName","MEAN_USE","assetInfo","_assetInfo$DAT_ID2","verifyLinkAssetWithDut","_assetInfo$DAT_ID","verifyLinkAsset","WaterTemperatureTooltipContainer","WaterTemperatureTooltipLabel","h4","SetpointTitle","SetpointMeasure","WaterTemperatureTooltipInfo","_temperatures$inlet","_temperatures$outlet","disable","inlet","outlet","WaterDacInfo","setTemperature","MachineDacInformation","WaterDutDuoInfo","MachineDutDuoInformation","_dutDuo$status","dutDuoName","MachineDatInformation","ModeContainer","IconWatchButton","SwitchContainer","DriContainer","SetPointContainer","SetPointLabel","ControlButtonLabel","DriSelectContainer","DamControlOperation","currentOption","sendOperation","selectContainerReference","openSelectList","setOpenSelectList","currentOperation","getOperationModeByOption","getOptionByOperationMode","DriControlOperation","currentOperationMode","currentSetPoint","setCurrentOperationMode","oldOperationMode","sendDriOperationMode","MachineDriAutomation","_state$activeMachineS","_state$setPoint","isSendingOperationMode","isOffMode","disabledSetpointButton","maxSetpoint","setShowScheduleModal","getOperationModeLabel","_response$data$Mode","_response$data$Setpoi","actualMode","_devAutData$dri2$vars","_devAutData$dri2$vars2","_devAutData$dri2$vars3","finally","machineStatus","getOperationMode","MachineDamAutomation","setMode","setRssi","previousState","MachineAutomationFancoil","devsAutData","damOptions","dats","MosaicListItemTitle","datItem","statusOptionsDamApp","urlResult","linkToMachine","MosaicListItem","_group$duts","_heatExchangerInfo","dutsCommands","hasHeatExchanger","dipositiv","Fragment","_heatExchangerInfo2","MachineTable","machineItems","windowWidth","setWindowWidth","getWindowWidth","setRows","enableSorting","isExpandable","machineItem","getTableMachine","lastCommTS","getLastAtt","dense","MachineHeaderContainer","ViewModeButton","TitleRow","SubTitle","DevId","Phrase","ConfirmContainer","ConfirmStatus","DenyStatus","OptionExportReport","HoverExportReport","ContainerDate","DividerDate","VisualizationMode","AreaCheck","AreaRadio","ContainerCheckboxWithRadio","describeUsage","trunc","UnitDetailDACsDAMs","orderedAssociations","isMachineMosaicView","orderedAssociationGroups","orderedGroups","associationsAndGroups","machineTableItems","usageHistoryDetailsModal","statusOnly","_devsList$find","_row$dam","_dam$Mode","_dam$State","setDamOptions","isManualCommandsEnabled","setIsManualCommandsEnabled","updateDacStatus","hasDacsOrDatsOrDri","groupList","updateDutStatus","driMachine","_payload$data","calculateSize","devAuts","DEV_IDs","devIds","getDevAutsDataAndDutsCommands","_group$dutsDuo","_group$dutsDuo2","LinkRouter","HeaderContainer","MosaicList","InvisibleDutsMosaic","SuperiorBar","LateralBar","ListItemDutQA","ItemAreaColorHealth","InformationContainer","InformationLabel","InformationValue","InformationUnit","dutQA","_dut$tpstats","_dut$tpstats2","infoItemQA","getColorHumi","getColorCo2","gridColumnStart","gridColumnEnd","gridRowStart","getCardColor","tpstats","fontSizeWord","healthColor","unitMed","fontSizeValue","cardDut","isDutQa","med","TableItemTemperature","InfoInvisibleDuts","dutColumns","DutTable","notVisible","filterDuts","listViewInvisibleDuts","setListViewInvisibleDuts","countInvisible","allDuts","UnitMapListMapsHeader","SelectSearchStyled","UnitMapView","_selectedUnitMap$POIN3","unitMaps","isUpdatedDuts","selectedUnitMap","setSelectedUnitMap","showHiddenEnvironment","setShowHiddenEnvironment","countHiddenEnvironment","setCountHiddenEnvironment","mapPinsFilter","setMapPinsFilter","pinsData","setPins","resetPins","useUnitMap","handleSetPoints","points","pins","pin","defaultPin","POINT_ID","POINT_X","POINT_Y","HUMIDITY","TEMPERATURE","POINTS","visiblePoints","point","counterHiddenEnvironment","_newPoints","arrayIdFilterDuts","newPoints","_selectedUnitMap$POIN","_selectedUnitMap$POIN2","NAME_GP","GROUNDPLAN_ID","unitMapId","newUnitMap","Divider","IMAGE","ImageZoom","hasDragPin","onPinDrag","tempAlert","co2Max","humi","humimax","humimin","UnitDetailDUTs","stateUnitDetail","updateDuts","this","createState","mosaicViewInvisibleDuts","setMosaicViewInvisibleDuts","notVisibleDuts","setNotVisibleDuts","environmentVisualizationOrder","setEnvironmentVisualizationOrder","orderedDuts","setOrderedDuts","setFilter","environmentContentType","setEnvironmentContentType","setIsUpdatedDuts","updateDutInfo","unorderedDuts","filterRoom","filterTemperatureLower","filterTemperatureHighest","tempA","tempB","filterExeption","dutsFilterVisibility","filteredEnvironments","Accordion","BsFillGridFill","BsList","newFilter","mosaic","InfoDuts","countInvisibleDuts","UnitMapProvider","MosaicContainer","BorderTop","ProgWrapper","ButtomStatus","ButtomStatusOn","ButtomStatusOff","ModalStatusDivisor","ModalStatus","ConfirmStatusChange","closeConfirmStatusChange","commandLabel","noInfoItem","getNobreakStatus","PORT_ELETRIC","electricNetworkPort","getIlluminationStatus","openModalStatus","closeModalStatus","_telemetry$dev_id","_telemetry$dev_id2","_telemetry$dev_id3","illumStatus","_telemetry$Feedback","illumPort","hasOnline","getIlluminationDeviceStatus","illumState","illumMode","ModalStatusIllumination","getIlluminationDamStatus","getIlluminationMode","_utilityInfo$DEVICE_C","_utilityInfo$DEVICE_C2","_telemetry$Mode","modeAux","MosaicCard","_utilityInfo$DEVICE_C3","_utilityInfo$DEVICE_C4","_utilityInfo$DEVICE_C6","_utilityInfo$DEVICE_C7","_utilityInfo$PORT","utilType","getUtilType","setSafeWaitMode","_setState","isConfirmStatusChangeOpen","statusChangeCommand","selectedDamId","localModalStatus","telemetryCurrent","_utilityInfo$DEVICE_C5","changeDamMode","checkedOn","_setCheckedOn","checkedOff","_setCheckedOff","switchProgOn","emptyProg","refModal","contains","NobreakTable","filterNobreaks","nobreakColumns","IlluminationTable","filterIlluminations","getIlluminationColumns","UnitDetailUtilities","mosaicView","setMosaicView","utilitiesVisualizationOrder","setUtilitiesVisualizationOrder","startedWslNobreak","startedWslIllumination","loadedData","illuminations","nobreaksList","illuminationsList","dmtIds","dalIds","nobreaksListOpts","illuminationsListOpts","orderedNobreaksList","setOrderedNobreaksList","orderedIlluminationsList","setOrderedIlluminationsList","wslNoBreak","wslIllumination","_state$nobreaks","_state$illuminations","getUtilitiesStatus","ascendingOrderStatus","statusA","descendingOrderStatus","unorderedNobreaks","orderedNobreaks","unorderedIlluminations","orderedIlluminations","sortingAlphabetNobreak","sortingAscendingStatusNobreak","sortingDescendingStatusNobreak","sortingAlphabetIllumination","sortingAscendingStatusIllumination","sortingDescendingStatusIllumination","getBackgroundTabs","getCursorTabs","getBorderBottomTabs","nobreaksUtilities","illuminationsUtilities","getUtilitiesInfo","UnitDetail","isMounted","groupsFull","dutsFilt","associationsFull","isScheduleModalOpen","selectedDutId","showExportReport","reportMode","focusedStart","modeView","selectedExportsRealTime","setIsMachineMosaicView","machineVisualizationOrder","setMachineVisualizationOrder","setMachineTableItems","orderedData","setOrderedData","setOrderedAssociations","orderedGroup","setOrderedGroup","orderedAssociationGroup","setOrderedAssociationGroup","handleClickExport","handleExportPreventiveReport","downloadLink","DATA_ENVIRONMENTS","EXPORTATION","exportEnvironmentMosaic","DATA_MACHINE","DATA_SISTEM_MACHINE","exportMachineMosaic","handleExportRealTimeReport","sortHealth","_a$dacs$","_b$dacs$","sortPower","_a$dacs$2","_b$dacs$2","sortConsuption","_a$dacs$3","_b$dacs$3","sortUsage","_a$dacs$4","_b$dacs$4","arrayTempoA","arrayTempoB","filterVisualizationOrder","unorderedGroups","orderedGropsList","sortAlphabeticalOrder","formatOrderedGroups","localMachineTableItems","_group$dats$find","formatGroupDacs","formatGroupDats","_group$dats$find2","ValveState","formatGroupDris","orderedGroupData","getOrderedGroup","orderedAssociationData","getAssociationOrderedGroup","arrayOrdered","ordered","_dacsList","_damsList","_dutsList","_vavsList","_dutDuosList","_assetsList","includeMeanTemperature","dutDuosList","IS_VISIBLE","usageHistory","_filteredByGroupName$","_filteredByGroupName$2","damsObj","_group$DEV_AUT","_group$DEV_AUT2","associationGroups","associationGroup","_state$groups$find","_state$groups$find$du","createAssociationsAndGroups","debugTemplate","closeExportReport","formattedUnitMaps","PARAMS","handleGetUnitMaps","useLayoutEffect","InputSearchDesktopWrapper","_item$ROOM_NAME","isReportWeekly","ToolIcon","isReportRealTime","openDirection","ModalRealTimeReport","AreaExportContent","UnitIntegratedAnalysis","energyList","validateAndAddUtilItem","_groupsList","buildDacsItems","buildDutsItems","vavEnv","vavGroup","vavGroupInfo","buildVAVsItems","buildUtilitiesItems","hasEnergyInfo","UnitWater","_state$devInfoResp$in2","queryParams","URLSearchParams","get","supplierCheck","unitMeter","checkSupplier","unitMetersList","noStatus","DocumentationFiles","documentations","selectedDocumentations","setSelectedDocumentations","selectedAll","setSelectedAll","selectFiles","setSelectedFiles","documentationsVisible","setDocumentationsVisible","doc","UNIT_SKETCH_ID","filterDocs","filterFile","handleSelectDocs","SKETCH_NAME","FILENAME","isParceiroValidador","unitSketchId","pdfResponse","extension","downloadFiles","DateButtonExport","onFocusedUpdate","onClickDownload","isNegative","whole","decimal","UnitProfile","_state$meanDevsDisp","devsDispLoading","devsDisp","meanDevsDisp","isClientManage","isUnitManage","navigateUrl","navigate","ADDRESS","flagExportCSV","maquina","ambiente","processDataAndDownloadCSV","ObservationUnit","openModalEditAdd","isEditModal","openModalDelete","listObservations","getObservationList","verifyWhoIsObservation","permissionOnlyEditOwn","permissionEditAll","obs","handleSendObs","TextObservation","DATE_OBS","UserAndIcons","IconsEditExclude","ModalAddEditObservations","getObservations","ModalDeleteObservation","setText","OBS","textAreaRef","observation","deleteObs","expand","setExpand","html","setHtml","updatedHtml","clean","DOMPurify","TextWithHtml","htmlContent","parsedHtml","ReactHtmlParser","ChillerInlineTabs","UnitCAG","_state$devInfoResp$dr","setAba","setDeviceId","setLinks","listDriChiller","listIntegrationInfo","_unitInfo$arrayChille2","_state$listDriChiller","MACHINE_NAME","handleGetDrisInfo","foundItem","varsConfig","_varsConfig","VARSCFG","maxChar","ChilerAbas","_state$listDriChiller2","_state$devInfoResp$dr2","returnAbasChiller","UnitVRF","devicesList","selectedDevice","isLoadingDevice","keyframes","Circular","Circle","LoaderWithText","A350","checkDevOnline","devsErrors","Motivo","selectedsStates","selectedsCities","selectedsUnits","selectedProgs","stringsToCheck","checkedWords","stringToCheck","searchItem","normalize","stringsPassed","passedAllSearchs","filterString","ILLUMINATION_NAME","handleProgFilter","hasSchedule","HAS_SCHEDULE","IlluminationMultipleProgFilter","query","_item$name","illuminationsGroupedBySite","CHECKED","clearStateFilter","clearCityFilter","clearUnitFilter","clearProgFilter","IlluminationMultipleProgItemList","_state$illuminationsG","_state$illuminationsG2","cutText","COLLAPSED","ILLUMINATIONS","_illum$ILLUMINATION_N","changeCircuitStatus","illumDevId","ILLUM_DEV_ID","isAllChecked","IlluminationMultipleProgList","allCollapsed","setAllCollapsed","HandleIllumScheds","_state$illumException5","_state$illumScheds5","_state$illumScheds6","_state$illumException6","_state$illumException7","_state$illumException8","illumScheds","showExcepts","illumExceptions","damDevSched","selectedDam","needDamMultipleScheds","needOverwriteDamSchedule","illuminationsWithNumberExceptions","getDalScheds","checkNeedMultipleCards","daysWithProg","daysWithExcepts","checkDamConvergence","checkDamSchedConvergence","newExcepts","checkDamExceptConvergence","illumination_id","existingIndex","numberExceptions","checkDalCardsExceptsLimits","selectedDevList","persistedSched","validateDevsScheds","handleDalSchedules","handleNewDalSaving","handleDamWithoutMultipleScheds","basedOnExcept","trueOpt","falseOpt","_state$illumScheds4","_state$illumException","clearAllAdded","illuminationName","checkIlluminationExceptions","pendingIllumns","refreshIlumnsList","closeOnClick","draggable","_state$illumScheds","_state$illumScheds2","_state$illumScheds3","_state$illumException2","_state$illumException3","_state$illumException4","IlluminationMultipleProg","clearAllExcepts","clearAllScheds","isFetching","groupIlluminations","groupedIlums","getIlluminations","clearAllPersisted","FROM_MULTIPLE_PROGRAMMING","handleClearAllDal","handleClearAllDam","pendingIllums","refreshIllumnsList","parseDamList","groupsIds","groupsNames","hasProgramming","parseDutList","_dut$CTRLOPER","_dut$PORTCFG","sortLocation","dev_1","dev_2","sortDut","dut_1","dut_2","sortDam","dam_1","dam_2","temprtControlModeDetails","defaultFormData","USE_IR_item","ECO_TIME_INTERVAL_HYSTERESIS","ECO_DUT_SCHEDULE_START_BEHAVIOR_item","ECO_DUT_SCHEDULE_END_BEHAVIOR_item","FORCED_BEHAVIOR_item","ClearFilterButton","memo","flexGrowFields","DutFilter","_state$selectedDutAut","_state$selectedProgra","isFiltering","onClickFilter","selectedConnections","selectedDutControlOperations","selectedDutAutConfigurations","selectedProgrammingMult","connectionsOptions","dutControlOperationOptions","dutAutCfgOptions","handleSearchDelete","handleSearchAddition","onFilterStateChange","onFilterCityChange","onFilterUnitChange","onFilterConnectionsChange","connections","getStateUnitCitiesList","flexGrow","dutAutConfigurations","controlOperations","programmingMult","hasProgrammingMult","dutAutConfigs","dutControlOperations","getCheckStatusKey","toggleAllDevicesFromKey","checkDecimalPlace","isAllDevicesSelected","toggleSelectAllDevices","verifyValueDefinedNotEmpty","FilterColumn","keyProp","toggleAllDevicesFromValue","verticalAlign","alignLeft","ItemTable","_dev$name","stateName","onClickDevCheck","toggleAllDevices","TableHeader","TableVirtuoso","components","fixedHeaderContent","itemContent","useWindowScroll","SelectAllDevices","isAllSelected","onClickSelect","batchRequests","numberPromises","copyPromises","chunks","arrCopy","chunk","chunkArray","HandleDamSelfReferenceInfos","dutReference","selfReference","minimumTemperature","maximumTemperature","onChangeMaximumTemperature","onChangeMinimumTemperature","HandleRoomName","canSelfReference","dutsListToReference","onSelectDutReference","selfReferenceOption","dutsReferenceUnit","HandleGroupName","sizeStringLimit","DamTable","dutsToReference","DamFilter","selectedEcoModes","selectedControlModes","selectedProgramming","programmingOptions","controlModesOptions","ecoModesOptions","onClickFilterButton","onFilterEcoModesChange","ecoModes","onFilterControlModesChange","controlModes","onFilterProgrammingChange","programming","DefaultDeviceTable","idKey","nameKey","onClickSelectDevice","selectAllDevicesElement","devTypesList","SelectDevType","defaultDev","onFilterDevChange","selectedDevType","setSelectedDevType","ProgrammingProgress","currentDevices","totalDevices","MultipleDevProg","_state$formData$FORCE","_state$formData$USE_I","showNewParametersDAM3","selectedModeToDut","DUTS_SCHEDULES_TO_ADD","DUTS_EXCEPTIONS_TO_ADD","selectExceptionDate","filteredDevList","progressState","setProgressState","getDutsToReference","getUnitDevicesInfoByClientId","getDacsList","getUnitDevicesInfo","removeIlluminations","onlyWithAutomation","_x$VARS","getUnitDevicesInfoByUnitId","damDacEcoV2","damDacEcoV2Description","dacConfigOpts","damConfigOpts","dutConfigOpts","EcoV2","possibleValues","dutCardsSchedulesExceptionsConfig","dutsErrors","dutsOffline","DUTS_SCHEDULES_PERSISTED","clearDeviceProgramming","handleDutMessageError","clearCards","clearProgramming","curstor","_state$formData$CTRLO","_state$formData$FORCE2","_state$formData$FORCE3","getDaysWithNewProgramming","daysWithProgramming","isAllDisabled","checkCardsCompatibility","checkCompatibiltyWithOperationMode","dutsIncompatibles","_irCommands$find","addExceptionsToClean","DUTS_EXCEPTIONS_PERSISTED","specificDay","sendDutDeviceSchedule","_state$formData$USE_I10","_state$formData$USE_I12","_state$formData$USE_I13","_state$formData$USE_I14","FINAL_DUTS_SCHEDULES","FINAL_DUTS_EXCEPTIONS","getDutIrCodesList","indexToRemove","hasSameDate","_state$formData$USE_I11","_irCommands$find2","_irCommands$find3","_irCommands$find4","_state$formData$USE_I17","_state$formData$USE_I15","_state$formData$USE_I2","_state$formData$USE_I3","_state$formData$USE_I4","_state$formData$USE_I5","_state$formData$USE_I6","_state$formData$USE_I7","_state$formData$USE_I8","_state$formData$USE_I9","scheduleToProgrammming","prepareDutProgramming","_state$formData$USE_I16","onCompleteProgressDevice","sendDutSchedule","hasOutdatedOnDemandFw","notAcceptActionPostBehavior","isFwVersionGreatestOrEqual","CURRFW_VERS","canUpdateSched","devicesIdWithErrors","devicesIdsOffline","pendingDevs","refreshDevsList","clearExceptions","clearDeviceException","forcedBehavior","dutsToCheck","dutsCompatibility","dutIds","dutsCompatibles","compatible","getDevProperties","enabledEco","ctrlOperation","autConfiguration","clearSelectedNonFilterResults","filteredResults","nonFilteredSelectedResults","callDutsFilter","_verifyValueDefinedNo","_verifyValueDefinedNo2","automationConfig","formatDutsList","onClickSelectAllDevices","adjustProgrammingFilter","callDamsFilter","formatDamsList","renderFullProgEdit","RenderDevicesTable","unitIdKey","onClickSelectAllDevicesList","errorsList","_formData$ENABLE_ECO_3","MULT_PROG_SCREEN","damsOffline","IGNORE_SET_SENSORS","devErr","_err$response2","damIndex","sendDamSchedule","damsErrors","handleDamMessageError","validateEco2","_formData$USE_IR_item","_formData$CTRLOPER_it","_formData$FORCED_BEHA","useIrValue","ltc","lti","upperHysteresis","lowerHysteresis","validateEco2Values","_irCommands$find5","dutsIdsIncompatibles","temperaturesForcedSetpoint","isFromMultipleProg","RoomsList","ROOM_ID","GeneralData","_props$amountPeople","_state$constructedAre3","_state$constructedAre4","_state$numberPeople$t","_state$numberPeople3","selectedTimezone","timezonesOptions","isLoadingModalAdd","originalDocs","deleteDocs","numberDeleteDocs","modalEdit","modalAddDocs","modalDeleteDoc","checkInibVisibility","editDoc","editDocsList","deleteDocsList","addDocsList","isChangeName","constructedArea","numberPeople","getDocsUnit","sketchesList","sortedDocs","verifyExistNameSketch","setDocumentations","saveTimezone","timezoneId","_state$constructedAre","_state$constructedAre2","_state$numberPeople","_state$numberPeople2","sendArrayEditUnit","nameSketch","FILE","configArrayToSendAddDocs","sketchList","configArrayToEditSent","configArrayToDeleteSend","timezoneItem","timezoneUnitId","filteredTimezone","getTimeZonesOptions","handleKeyPress","which","ItemDocElement","ModalSetInfo","hasItem","addDeleteInList","filterExtension","splitString","editMap","docs","newEditDocsList","newDocumentations","setVisibility","setCheckInibVisibility","decideFunction","newFiles","lastModified","configArrayToSend","cols","EnvironmentVisibility","DutItem","sendDuts","NewUnitMapButton","UnitMapListMapsContent","UnitMapSearchInput","UnitMapSearchWrapper","UnitMapPreviewStyled","UnitMapPreviewHeaderStyled","UnitMapContentStyled","UnitMapContentImgStyled","UnitMapContentOverlayStyled","DeleteModal","TextContent","DeleteModalFooter","UnitMapPreview","unitMap","handleEditUnitMap","handleDeleteUnitMap","handleClickSeeMap","setOpenDeleteModal","isOverflowingTitle","setIsOverflowingTitle","onMouseOver","wrapper","offsetWidth","scrollWidth","RedDark","UnitMapModalViewStyled","UnitMapModalViewHeader","UnitMapViewModal","unitMapData","setIsShowListUnitMap","setIsEditingFlow","resetUnitMap","_unitMapData$POINTS","_unitMapData$POINTS2","newPins","UnitMapModalStyled","UnitMapHeader","FileDropStyled","FileDrop","FileDropContent","MediumGrey","fileDropHasError","UnitMapFooter","formFieldsValidator","checkers","initialValues","touched","checkField","checker","Function","validateSync","checkAll","requiredStringField","UnitMapModal","isEditing","handleConfirmModal","setFileDropHasError","unitMapSchema","yup","unitMapValuesState","initialFile","unitMapValues","unitMapErrors","handleValidateForm","checkForm","checkFileDrop","onError","onReset","fileDropConfig","UnitMapListMaps","handleListUnitMap","setUnitMap","setUnitMaps","openUnitMapViewModal","setOpenUnitMapViewModal","openUnitMapModal","setOpenUnitMapModal","stateBox","renderBox","unitMapsId","UnitMapViewMapHeader","UnitMapViewMapFooter","UnitMapViewMap","_unitMapData$file","addPin","removePin","movePin","handleCreateUnitMap","handleAddPoints","openEditModal","setOpenEditModal","selectedDevices","selectedValuesFullInfo","handleGetUnitDevices","_unitMapData$POINTS3","_unitMapData$POINTS4","_unitMapData$POINTS5","_unitMapData$POINTS6","pinsApi","_value$value","filterDevicesSelected","_value$value2","verifySelected","newPinId","_removePinId$","removePinId","handleChangePins","groundPlanId","UnitMap","isShowList","EditUnitDevProg","permissionProg","SchedTurnConfig","routePars","roomInf","newRoomName","newPeriodDays","numPeriods","newStartDate","roomId","progs","ON","OFF","schedTurn","datRef","turns","newRoom","SchedEditor","fullSched","BatchInputDACs","selectedTypeSolution","sended","parsedCols","parsedRows","parsedColsAdditionalParameters","resultadoEnvio","energyOpts","selectedTypeOfSolution","fetchedColumns","example","fileRef","tableCols","onChange_textAreaUnidades","AUTOM_ENABLE","PHOTO_1","PHOTO_2","PHOTO_3","PHOTO_4","PHOTO_5","added","ignored","reason","onDoubleClick","exportUnitMachines","BatchInputDAMs","_state$columns","_state$columns2","_state$columns3","_state$columns4","_state$columns5","_state$columns6","_state$columns7","_state$columns8","_state$columns9","_state$columns10","exampleList","_item","AUT_GROUP","BatchInputDUTs","_state$columns11","_state$columns12","_state$columns13","_state$columns14","dutPlacement","AUTOM_CFG","MONIT_MACHINE","BottonTypeSolution","isClicked","PreFillGuideArea","ContainerExportationAndDowload","getNormalizedOpt","optList","BatchInputDRIs","_state$columns15","_state$columns16","_state$columns17","_state$columns18","_state$columns19","_state$columns20","_state$columns21","_state$columns22","GROUP","ROOM","ENERGY_METER_SERIAL","ENERGY_METER_MODEL","TC_CAPACITY","INSTALLATION_TYPE","TELEMETRY_INTERVAL","_getNormalizedOpt","meterModel","vavModel","BatchInputEnvironmentTypes","roomtypes","BatchInputSupervisors","BatchInputInvoices","fourDocsResult","DISTRIBUTOR_NAME","BASELINE_TEMPLATE","JANUARY_PRICE","JANUARY_KWH","FEBRUARY_PRICE","FEBRUARY_KWH","MARCH_PRICE","MARCH_KWH","APRIL_PRICE","APRIL_KWH","MAY_PRICE","MAY_KWH","JUNE_PRICE","JUNE_KWH","JULLY_PRICE","JULLY_KWH","AUGUST_PRICE","AUGUST_KWH","SEPTEMBER_PRICE","SEPTEMBER_KWH","OCTOBER_PRICE","OCTOBER_KWH","NOVEMBER_PRICE","NOVEMBER_KWH","DECEMBER_PRICE","DECEMBER_KWH","sendToFourDocs","hydrometerModels","BatchInputDMAs","dmas","METER_ID","SUPPLIER","IconArea","CustomizedButton","colorIcon","PreFillGuide","typeOfSolution","unitMachine","unitMachineIds","unitMachineLabel","timezoneList","setTimezonesList","valuesDefault","tranformeArrayInValue","getTimezones","valuesTable","fancoilsManuf","ValuesTableTable","typeHeader","tableValuesCell","verifyParam","BatchInputUnified","_state$comboOpts$unit","typesOfSolutions","setTypesOfSolutions","verifyColumn","verifyRowsAdditionalParameter","additionalColumns","rowAdditionalParams","verifyColumnWithoutLabel","unified","dielManufInfo","filteredModels","thermManufOpts","fancoilManufOpts","valveManufOpts","fancoilsThermManuf","fancoilsValveManuf","generateFancoilOptions","matchingUnits","newSelectedUnits","_state$comboOpts$unit2","allOptions","selectAllUnit","onFilterSolutionChange","solutions","newTypeChecked","newTypeSolutionSelect","selectAll","typeOfSolutions","exportUnitUnified","exportExempleFileUnified","tableColsAdditionalParameters","SOLUTION_TYPE","COUNTRY","TIME_ZONE","UNIT_STATUS","LATLONG","SIMCARD_PHOTO1","SIMCARD_PHOTO2","SIMCARD_PHOTO3","SKETCH_1","SKETCH_2","SKETCH_3","SKETCH_4","SKETCH_5","PHOTO_DEVGROUPS_1","PHOTO_DEVGROUPS_2","PHOTO_DEVGROUPS_3","PHOTO_DEVGROUPS_4","PHOTO_DEVGROUPS_5","DEV_AUTOM_ID","SENSORS_DUT_DUO","DAM_INSTALLATION_LOCATION","DAM_PLACEMENT","DAM_T0_POSITION","DAM_T1_POSITION","PHOTO_AUTOM_DEV_1","PHOTO_AUTOM_DEV_2","PHOTO_AUTOM_DEV_3","PHOTO_AUTOM_DEV_4","PHOTO_AUTOM_DEV_5","PHOTO_DUT_1","PHOTO_DUT_2","PHOTO_DUT_3","PHOTO_DUT_4","PHOTO_DUT_5","EVAPORATOR_MODEL","COMPRESSOR_RLA","PHOTO_ASSET_1","PHOTO_ASSET_2","PHOTO_ASSET_3","PHOTO_ASSET_4","PHOTO_ASSET_5","PHOTO_DAC_1","PHOTO_DAC_2","PHOTO_DAC_3","PHOTO_DAC_4","PHOTO_DAC_5","ELECTRIC_CIRCUIT_NAME","ENERGY_DEVICES_INFO_ID","ID_MED_ENERGY","NUM_SERIE_MED_ENERGY","MODEL_MED_ENERGY","CAPACITY_TCA","INSTALLATION_ELETRICAL_TYPE","SHIPPING_INTERVAL","ROOM_VAV","PHOTO_DRI_1","PHOTO_DRI_2","PHOTO_DRI_3","PHOTO_DRI_4","PHOTO_DRI_5","WATER_INSTALLATION_DATE","TOTAL_RESERVOIRS","PHOTO_DMA_1","PHOTO_DMA_2","PHOTO_DMA_3","PHOTO_DMA_4","PHOTO_DMA_5","UTILITY_ID","UTILITY_NAME","INSTALLATION_DATE_UTIL","DISTRIBUTOR","ENTRY_VOLTAGE","OUT_VOLTAGE","POT_NOMINAL","AUTON_NOMINAL","MAINS_CURRENT","ASSOCIATE_DEV","ASSOCIATE_DEV_PORT","FEEDBACK_DAL","ASSOCIATE_ASSET","PHOTO_DMT","PHOTO_DAL","PHOTO_UTILITY","ADDITIONAL_PARAMETERS","datas","BatchInput","idcliente","tipo","CardUntitled","ChangePassword","setLocale","mixed","oldPassword","newPassword","confirmPassword","Breadcrumb","ProfilesTable","EditInfo","lastName","simulateProfile","simularPerfilParceiroValidador","simularPerfilInstalador","notifsBy","notifsby","cProfiles","radioState","waterMeasuring","submitProfileSim","fakeProfile","clients_v2","PERMS","UNITS","PERMS_U","setUpdatedProfile","withManagerPermission","OptionsSelect","updatedData","NOTIFSBY","PREFS","changeLanguage","profileSim","EditLink","StyleSelectedOptions","parseDataWater","pressure","Settings","profileData","phonenb","icone","brasilIcon","usaIcon","FormEditValue","currentValue","PHONENB","refreshUserProfile","TOKEN","ExpansionBody","SectionTitle","ExpansionPanel","withStyles","root","borderTopLeftRadius","borderTopRightRadius","borderBottomLeftRadius","borderBottomRightRadius","MuiExpansionPanel","ExpansionPanelSummary","MuiExpansionPanelSummary","ExpansionPanelDetails","theme","spacing","MuiExpansionPanelDetails","Help","setExpanded","panel","newExpanded","square","expandIcon","Typography","Desktop","Mobile","DataCard","DataItem","NewNotificationsLayout","ButtonAdd","BlueMenu","WrapperClickOut","wrapperRef","handleClickOutsideComponent","ModalCreateNotification","OptionWrapper","OptionMenu","OptionItem","Item","notifFreq","DAY","WEEK","MONTH","NONE","Notifications","notifications","modalDelete","notifId","modalWindow","owner","notification","destiny","handleGetNotification","specials","isMasterUser","responseUnitrepList","FREQ","formatterData","typeIds","subtypeIds","destinataryIds","dests","onClear","StyledCard","HeaderCard","BodyCard","Modal","modalOpen","listOfDutNotifs","getDutNotifTemperature","dutName","getDutDescription","OffsetContainer","Offset","initFormFields","notifType","notifCond","condValue","condSecondaryValue","FormEditNotification","_formValues$notifType","notificationType","notifInfo","isSpecialNotif","isRegularFault","multiUsers","multiClient","isSubmitting","users","freqs","notifTypes","allGroups","formFields","checkboxOption","usesDacFilters","usesDutFilters","isWaterNotification","setFormField","clientSelected","filterComboOptions","sel_units","elem","selectAllOptions","_notifInfo","frequencyOptions","_group$unit","_dut$unit","_comboOpts$units","_comboOpts$allGroups","_comboOpts$allDuts","_comboOpts$units2","_comboOpts$allGroups2","_comboOpts$allDuts2","_comboOpts$units3","_comboOpts$allGroups3","_comboOpts$allDuts3","COND_PARS","FILT_IDS","FILT_TYPE","COND_VAR","ops","COND_OP","COND_VAL","COND_SECONDARY_VAL","NOTIF_DESTS","handleGetInfos","tip","unit2","haveSelectAll","_formValues$notifType2","notifTypeId","notifEnvironment","notifMachine","selected_duts","selected_groups","selected_units","cond_pars","NOTIF_ID","NOTIF_TYPE","_formValues$notifType3","handleSubmitNotification","EnergyCardsWrapper","EnergyCardsEmpty","EnergyNotifCardContainer","EnergyNotification","_profile$singleClient","notifTitle","notifTypeOpts","selectedNotifType","notifCards","allReceivers","receiversFullList","receiversList","selectedReceivers","loadedNotifInfo","handleGetPageData","_state$clientsList$fi","dmeList","_notifInfo$FILT_IDS","unitSelected","_notifInfo$FILT_IDS2","subList","renderSelectedUnitOptions","getUsersList","filt","_user$unitIds","filterUsersList","_jsonTryParse","_notifInfo$NOTIF_DEST","energyCards","loadNotifInfo","field","_option$subList","unitIndex","justifySelf","inv","condOper","limiarInput","allDays","allHours","instant","endOfDay","EnergyNotifCard","deleteNotifCard","getFiltInfoNotif","schedIndex","startNumber","endNumber","invalidInterval","oneHourDiff","notifValidation","ENERGY_CARDS","condOperOptions","handleLimiarInput","Notification","_state$notifInfo","handleGetNotifInfo","CardHeaderContent","FilterHeader","FilterHeaderButton","CardContent","CardContentFooter","InsightsFooter","ShowListButton","controlColumnsConfigs","sufix","ShowProblemData","tooltipId","iconColor","showValue","invalidPercentage","StringLabel","displayValue","LinkedStringLabel","ValueTotalCharged","isPositiveValue","nullableData","ValueTrated","auxValue","percentageConsumption","refrigerationConsumptionPercentage","RankingLabel","procelRangking","ProcelCategoryLabel","procelCategory","tickets","currentTicket","ticket","VarConsumptionLabel","consumptionPreviousPercentage","_profile$permissions2","PopoverFilters","_filterOption$value","_filterOption$options2","onOpenPopover","setOnOpenPopover","filterOption","infoOptions","Popover","onOpenChange","_filterOption$options","prevOnOpenPopover","asChild","ButtonFilters","sideOffset","PopoverContent","PopoverHeader","selectedOption","textUnderlineOffset","EnergyAnalisys","_formatNumberWithFrac","_formatNumberWithFrac2","_formatNumberWithFrac3","isShowCalendar","setIsShowCalendar","filteredColumnsModal","exportColumns","setExportColumns","filteredColumnsTable","_state$filtersData","_state$filtersData$cl","_state$selectedFilter","_state$selectedFilter2","handleSortData","columnSort","filtersData","_state$filtersData2","_state$filtersData2$s","_state$selectedFilter3","_state$selectedFilter4","_state$filtersData3","_state$filtersData3$c","_state$selectedFilter5","_state$selectedFilter6","_state$filtersData4","_state$filtersData4$u","_state$selectedFilter7","_state$selectedFilter8","procelRanking","GenerateEfColumn","energyEfficiency","OrderColumn","consumptionByArea","refrigerationConsumption","PercentageTableLabel","refCapacity","ValueLabelWithSufix","haveInfo","refrigerationConsumptionByArea","ValueLabelWithSufixNullable","showModelsCard","showTableCard","haveAnalisysResult","hasResult","showResult","totalCities","totalStates","showCalendar","procell","currentSort","pagination","itemsPerPage","getUnitListInfo","resetPagination","categoryFilter","sortParams","orderByField","orderByType","resume","procelItems","qtd","procel","totalCITIES","totalSTATES","handleGetFilters","sortDataColumn","filtersParams","handleExportEnergyAnalysis","handleFeedDefaultFilters","pageFilters","handleTransformFilterApi","handleLoadPrevData","searchParams","procellFilters","selectedTicket","defaultFilterOptions","handleSetDefaultFilters","isQuickSelection","endDateAux","replaceState","DayPickerRangeController","renderCalendarInfo","onOutsideClick","QuickSelectionV2","dateRanges","handleGetMaxQtdCharacteres","higherNumber","_filteredColumnsTable","_filteredColumnsTable2","ColumnsTableConfig","EnergyCardFooter","handleChangeTableFilters","procellLetters","totalUnitsWithConstructedArea","showTable","setShowTable","tableData","setTableData","handleGetTableData","handleFormatterFilterParams","letter","updatedFilters","callHandleChange","handleResetFilters","showTablePrevState","newFilters","TabOptionCard","arrayItems","onClickFunc","EnergyEfficiencyStyled","EnergyEfficiencyHeader","ConsumptionStyled","ConsumptionResultContainer","ConsumptionResultData","ConsumptionResultHighlight","HighlightData","DeltaInfo","isPositive","NoAnalisysWarning","EnergyEfficiencyTicketStyled","EnergyEfficiencyTicketData","isActivate","EnergyEfficiencyTicket","handleClickTicket","handleRedirect","EnergyInsights","_state$energyInsights","_state$historyChartDa","_state$historyChartDa2","handleChangeProcellFilters","handleResetProcellFilters","handleGetTotalUnits","energyInsightsData","energyInsightsSummary","procellFiltersSelected","handleFormatAndConvertNumber","convertedNumber","numberUnit","handleLoadData","procellUnits","flat","containsProcel","containsAnalysisData","averageConsumption","totalConsumption","averageConsumptionPreviousMonthPercentage","handleGetInsightsProcel","procelUnitsFilter","_data$totalUnitsWithC","updateFilters","handleResetProcell","insideFiltersEncoded","TrendsFooter","TrendsFooterData","TrendsChart","trendChartData","showConsumptionPredict","dayChart","trendDay","trendsData","trend","previousTrendDay","consumptionDay","formatterAux","consumptionForecast","consumptionPercentage","formatterNumbers","formatterSeries","trendsFormatted","consumptionForecastGraphic","consumptionOverTarget","consumptionTarget","consumptionTotal","actualDate","isOverTarget","showForecastBar","trendConsumption","isBeforeActualDate","stackStrategy","formatterBackground","backgroundArray","totalConsumtionPercentage","monthlyForecastPercentage","monthlyForecast","monthlyTarget","EnergyTrend","trendsChartData","handleGetTrendsData","EnergyCard","historyChartRef","footerRef","filterDatesCard","tableFilters","cardTabs","handleUpdateTab","cardContentFactory","handleGetDatesFilter","letters","checkMonthCanClick","checkYearCanClick","handleSelectYear","handleSelectMonth","generateArrayDates","anoInicio","anoFim","intervalo","dataAtual","tabType","years","yearArray","monthArray","yearTrated","apiYear","monthTrated","apiMonth","breakLoopYear","CardManager","CalendarWater","setDateCalendar","selectedYear","openDates","setOpenDates","setDates","neighbors","setNeighbors","previous","next","findNeighbors","previousYear","nextYear","hasUsage","client_ids","state_ids","city_ids","getDatesOfCalendar","DefaultTableLabel","DefaultTableLabelUnit","DefaultTableLabelUnitLink","CardWaterTable","handleGetDevInfo","infoTableData","filterDataTable","getUnitConsumptionWater","columnsTable","_state$filterColumns$","client_name","handleChangeFilter","handleSelectAll","_item$value","_state$filterColumns$2","state_name","_item$value2","_state$filterColumns$3","city_name","_item$value3","_state$filterColumns$4","unit_name","_item$value4","usage_people","usage_area","getPages","parameter","comparison","sortByParameter","waterPag","firstSearch","useFilters","acessorFilterChange","curr","scrollbarWidth","borderRow","WaterCard","_props$paramsForLoadD12","_props$paramsForLoadD13","_props$paramsForLoadD14","_props$paramsForLoadD15","setFilterDataTable","_props$paramsForLoadD","_props$paramsForLoadD2","showAsHistory","showEnergyEfficiencyInvoices","historyData","paramsForLoadData","transformAndRemoveDuplicates","acessor2","unique","transformedArray","setParams","_params$unit_ids","_params$client_ids","paramsNew","_props$paramsForLoadD3","_props$paramsForLoadD4","_props$paramsForLoadD5","_props$paramsForLoadD6","_props$paramsForLoadD7","_props$paramsForLoadD8","_props$paramsForLoadD9","_props$paramsForLoadD10","_props$paramsForLoadD11","setParamsProps","_JSON$parse","isTable","daysInMonth","getConsumptionWater","BtnList","enCA","AUTOMATION_STATS_INITIAL_VALUE","automated","powerTR","notAutomated","dacAutomation","damAutomation","dutAutomation","scheduleOnly","ecoOnly","scheduleAndEco","noEcoNoSched","ENERGY_EFFICIENCY_INITIAL_VALUE","savings","greenAntConsumption","condenserConsumption","unhealthyConsumption","Overview","initialFilterOptions","selectedFilter","supervisorsList","utilsCount","ativo","offline","maquinas","catalogadas","monitoradas","unMonitored","energia","agua","iluminacao","envCardLoadDataParams","devicesCount","onlineDevs","offlineDevs","unitsCount","onlineUnits","offlineUnits","automationStats","automationList","automationPag","invoicedList","measurementUnit","hideDefaultTab","isLoadingAutomationTypeList","isLoadingEfficiencyOverviewCard","isLoadingEfficiencyOverviewCardInvoiceTab","isLoadingClassesList","isLoadingUnitsList","isLoadingCitiesList","isLoadingStatesList","isLoadingOnlineDevicesOverview","isLoadingAutomationOverviewCard","automationTypeList","energyEfficiencyInvoiceTab","invoicesTotal","unitsInvoice","multipleToYMeasured","calculeYInvoicesTicks","getWaterDevices","getEnergyDevices","getEnvironmentList","environmentsList","paramsCommon","getMachinesList","STATE_IDS","CITY_IDS","countUnits","classId","currentClass","supervisorIds","saveOverviewFilters","loadOverviewFilters","buildSelectedFilter","verifyFilter","_verifyFilter","_verifyFilter2","_verifyFilter3","verifyAllFilters","ConnectedDevices","unitsSelected","EnvCard","enableHistoryTab","MachineCard","PageTitle","specialClients","IntegrationNess","machinesHealthNow","green","yellow","orange","red","deactiv","others","machinesHealthBefore","machinesTRs","dutsCount","dutsTempOk","dutsTempHigh","dutsTempLow","dutsNoTempData","apiAuth","errorMessage","healthHistory","healthHistoryDuration","asSeconds","asMinutes","asDays","asWeeks","asMonths","DefaultCard","TabsContainer","TabsList","TabItem","NavLink","TABS","Layout","isThereATabWithExactPath","exact","ListContainer","LoadingSpinner","TVStatusValues","Agendado","EmAndamento","AguardandoAprovacao","Finalizado","Reagendado","Column","ColumnTitle","Value","DeleteTVModal","setVisible","handleTechnicalVisitDelete","centered","onOk","bodyStyle","footer","TECNICO_NOME","TECNICO_SOBRENOME","doesPictureUriExists","labelSpanVisible","PhotoBox","pictureUri","previewOverlayContainerHeight","setPreviewOverlayContainerHeight","previewOverlayContainerWidth","setPreviewOverlayContainerWidth","setLabelSpanVisible","spanRef","node","onMouseEnter","onMouseLeave","ShowTVModal","technicalVisitId","setData","VTDATE","VTTIME","PLANTABAIXA_IMG","AUTORIZACAO_IMG","OBSERVACAO","RESPONSAVEL_NOME","TECNICO_PHONE","isDurationVisible","ListItemContent","ListItemBtnsContainer","ListTitleContainer","CaretsContainer","Caret","SpeakWithTechnicianModal","userData","setUserData","tvData","setTvData","clientData","setClientData","technicalVisitData","TECNICO_ID","textDecorationColor","RG","FaUser","COMMENTS","handleEditItem","handleDeleteItem","handleAccompanyItem","handleVisualizeItem","handleApproveItem","handleRescheduleItem","isShowTVModalVisible","setIsShowTVModalVisible","isDeleteTVModalVisible","setIsDeleteTVModalVisible","isSpeakWithTechnicianModalVisible","setIsSpeakWithTechnicianModalVisible","ShowBtn","EditBtn","DeleteBtn","AccompanyBtn","SpeakWithTechnicianBtn","VisualizeBtn","ApproveBtn","RescheduleBtn","ACTION_BTNS_FOR_EACH_STATUS_MAPPER","STATUS_ID","ListTitle","FaCaretUp","FaCaretDown","TVList","activeTab","handleOrdenation","CardSubHeader","pluralLabel","TVListing","_TABS$find","statusFilter","setStatusFilter","setSearchTerm","technicalVisitsList","setTechnicalVisitsList","filteredTechnicalVisitsList","setFilteredTechnicalVisitsList","listOfTechnicalVisits","fetchTechnicalVisitsList","handleTechnicalVisitsFiltering","filteredVisits","visit","rawVisit","asc","technicalVisitsListCopy","statusOrdenation","statusId","tv","attrs","outline","InputDate","setFocused","onFocus","InputContainer","InputHour","handleCaretClick","newValue","hourSplited","applySuffixToInputValue","originalText","sanitizePattern","newText","normalizedText","handleInputValueChange","negativeNumbersAllowed","TextArea","onDeleteRequest","FaTimes","Col","ColSection","SectionDescription","ClimatizationParameterContainer","ClimatizationValueBox","ClimatizationSwitchContainer","UploadPhotoBtn","Footer","TVRegistration","setTechnicalVisitData","availableClients","setAvailableClients","choosenClient","setChoosenClient","previousChoosenCompany","availableUnits","setAvailableUnits","choosenUnit","setChoosenUnit","availableTvCharacteristics","setAvailableTvCharacteristics","choosenTvCharacteristics","setChoosenTvCharacteristics","canSelectQuantityOfEnvironments","setCanSelectQuantityOfEnvironments","quantityOfEnvironments","setQuantityOfEnvironments","canSelectQuantityOfMachines","setCanSelectQuantityOfMachines","quantityOfMachines","setQuantityOfMachines","blueprintPictures","setBlueprintPictures","autorizationPictures","setAutorizationPictures","availableTechnicalUsers","setAvailableTechnicalUsers","choosenTechnicalUser","setChoosenTechnicalUser","choosenTVDate","setChoosenTVDate","choosenTVScheduledTime","setChoosenTVScheduleTime","observations","setObservations","fieldsValidation","setFieldsValidation","clientsMant","setClientsMant","choosenCompany","setChoosenCompany","getDefaultData","handleClientChange","COMPANY","handleCompanyChange","listOfClients","filteredListOfTvCharacteristics","characteristic","CHARACTERISTIC","getTechnicalVisitData","technicalVisitInfo","listOfUnits","listOfUsers","technicalUser","CLIENT_BIND","AMBIENTES","MAQUINAS","CARACTERISTICA","handlePictureFileSelection","fileIdentifier","random","onclick","handlePictureDeleteRequest","newBlueprintPictures","newAutorizationPictures","validateFields","technician","doesDataIsValid","defaultData","goBack","Switch","MdFileUpload","company","newTime","TVRegistrationPage","TVListingPage","textFilter","PERFIL_DESC","clientNames","Users","indicadorLinguagem","isActiveColor","visibleCols","LAST_ACCESS","modalType","userSelected","isButtonDisabled","modalClose","includeAllUsers","perfil","IS_ACTIVE","handlerGetUsers","filterMobile","convertToSortableDate","convertedA","convertedB","allowFullScreen","mensagem","_list","paddingBlock","marginInline","profiles_v2","clientsUser","deactivateUser","clientsIds","reactivateUser","ClientItem","programacaoMultipla","setProgramacaoMultipla","listUnits","setListUnits","userType","handleClientTypeChange","checkClients","setClients","cProg","selectTypeProfile","newClients","toggleCheckbox","onChangeUnitsSelection","EditUser","editedUserId","cpf","setCpf","editedUserClients","sendEmail","clientBind","extraErrors","userPicture","clearErrors","defaultValues","shouldUnregister","lastname","userInfo","verifyPermission","verifyPermissionProg","CLBIND_ID","fillUnitsLists","perms","verifyPermissionState","auxiliarClients","manageMultipleClients","checkFieldsValidation","newErrors","verifyProfileInstalador","clientIdStr","verifyClientAdminProg","verifiedSomeUnitSelected","profileAddPermis","profilePerClient","someUnitSelected","allUnitsSelected","verifyProfileClientNull","handleFormSubmition","commonParams","tecnicoParams","formatAndSend","verifyNewUserType","newCProfiles","sigla","checkProfiles","newUserType","MaskCPF","Space","ClientMultipleProg","Background","LogoContainer","MenuItem","MenuHighlight","GrenTab","MenuItemName","MenuMobile","setIsModalNavItemsOpen","ActionableWrapper","setClientIds","itemsMenu","getUserClientId","LogoCelciusColor","ItemsMenu","NavItem","UserContainer","WrapperItem","RelativeWrapper","CloseWrapper","ModalNavItems","IconRotate","Topbar","MobileNavbarWrapper","isModalNavItemsOpen","isModalUserOpen","setIsModalUserOpen","me","useDispatch","IconSidebar","UserIcon","logout","PrivateRouteWrapper","isMenuOpen","PrivateRoute","component","Component","DesktopNavbar","MobileNavbar","PublicRoute","noRedirect","SpecialRoute","Comparative","_state$data$0$unit$UN","initialState","showGraph","timeRanges","graphColors","totalEnergy","totalEnergyPerMonth","view","setView","byMonth","byHour","byDay","calculateEnergyConsumed","referData","buildCsvLine","getCsvDataByDay","getCsvDataByMonth","getCsvDataByHour","getFormattedDate","parseEnergyConsumptionValue","container","xs","payloadItem","PercentageComponent","arrowConsumption","selectUnit","handleChangeSelectedTimeRange","DateInput","timeRange","_data$unit$UNIT_ID","deleteData","dataElement","requests","reqParam","calculateTotalMeasuredByHour","itemEnergyPerMonth","monthInYear","calculateTotalMeasuredByMonth","calculateTotalMeasuredByDay","calculateTotalMeasured","ComposedChart","Ano","Mês","Semana","Flexível","Bar","_state$data$0$energyD3","_state$data$0$energyD","_state$data$0$energyD2","getBarDataKey","barSize","_data$energyData","_data$energyData$en_a","_data$energyData2","DownloadUnitReport","downloaded","setDownloaded","arrTitleFile","getUnitReport","PrivateWithRedirectRoute","urlPath","FaultsDisable","typeFaults","responseTypeFaults","Devices","associatedsDevicesList","notAssociatedsDevicesList","devicesListFiltered","associatedsDevicesListFiltered","notAssociatedsDevicesListFiltered","devicesColumns","infoTypeOpts","verificationItemFilter","arraySelected","ASSOCIATED","getDevTab","_dev$CLIENT_NAME","_dev$STATE","_dev$CITY_NAME","_dev$UNIT_NAME","_dev$DEVICE_CODE","_dev$STATUS","_dev$MAC","DEVICE","MAC","IconDiv","UtilityLayout","utilInfo","isIllumination","UtilityInfo","_state$utilInfo","getUtilityInfo","IlluminationEdit","_state$utilInfo2","_state$utilInfo2$GRID","_state$utilInfo3","_state$utilInfo4","_state$utilInfo5","_state$utilInfo6","_state$utilInfo7","setForm","backToLastRoute","getExtraUtilityInfo","_utilInfo$GRID_VOLTAG","_utilInfo$GRID_CURREN","updateForm","getDevicePortsInfo","confirmEditUtil","setDmtIllumination","setDalIllumination","setDamIllumination","NobreakEdit","_state$utilInfo8","_state$utilInfo9","_state$utilInfo10","_state$utilInfo11","_state$utilInfo12","_state$utilInfo13","_state$utilInfo14","_state$utilInfo15","EditUtilityInfo","PowerGraphic","ContainerTimer","MarginWrapper","Graphic","TextStyled","TextDataTimer","TextDataPower","TextDataKwh","ElipseTimer","CustomMonthXAxis","realLiveHistorical","RenderUsageInformation","_state$mostradores","_state$mostradores2","_state$mostradores3","toolTipLabelFormater","formaterHourTick","valueFormated","sec","decimalHourToTime","graphFormattedWeekDays","dat_report_week","mostradores","tempoLigado_hours","tempoLigado_text","consumo_kwh","num_partidas","_state$realLiveHistor","_state$dacInfo4","_state$dacInfo5","_state$dacInfo6","_state$dacInfo7","dots","greenAreas","formatArrHistory","dayPane","_state$dacInfo3","realLiveData","weekPane","_state$dacInfo2","monthPane","_state$dacInfo","yearData","yearPane","Usage","tempoBloqueado_text","tempoBloqueado_hours","RESET_USAGE_RATES","updateCharts","dat_report_month","day_hours_on","day_num_departs","day_hours_blocked","ac","av","bc","bv","a1","a2","a3","b1","b2","b3","xi","xf","areas","findGreenAreas","formatTime","weekday","datIniD","datEndD","setUTCMonth","getUTCMonth","monthIni","numMonths","MONTH_HOURS_ON","MONTH_NUM_DEPARTS","MONTH_HOURS_BLOCKED","MONTH_REPORT","periodYM","regex","getValue","IconWrapperMini","IconWrapperBig","nobreakLabelFormater","func","illumLabelFormater","UtilityCustomTick","DmtUtilityHistoryCard","widthPageCard","timeUsingBattery","timeFormater","getFormattedTimeFromHour","getDateFromHour","getUsageIndexPageInitialState","advancedMode","onRangeTypeChange","handleGetInfo","endpoint","allParams","xticks","showWarning","toastId","DmtUsageIndex","_state$vars$consumpti","utilityId","showAllWarnings","_state$devInfo$dmt","_state$devInfo$dmt$ut","_state$devInfo2$dmt","_state$devInfo2$dmt$u","_state$devInfo3$dmt","_state$devInfo4$dmt","hasUtilities","hasUtilitiesWithPort","electricNet","handleGetDmtInfo","handleOnDateChange","hasVars","getOwnPropertyNames","getCsvHeader","varsKeys","getCsvBody","formatCsvDatetime","_state$vars$utilId$co","IllumCustomTick","CorrectIncorrectIcon","feedbackValue","relayValue","isEqual","IlluminationHistoryCard","widthPage","customTick","getUsageTimeFormatted","secondsOn","getUsageTime","pointsResolution","getConsumption","feedbackUsage","feedbackConsumption","relayUsage","relayConsumption","renderConsumptionInfo","_props$feedback","_props$relay","DalUsageIndex","_state$devInfo3$dal","illuminationInfo","handleGetDalInfo","formatCsvValue","_state$devInfo$dal","_state$devInfo2$dal","_state$vars$Feedback2","_state$vars$Feedback","DutDuoUsage","resetUsageRates","_histData$hoursOnL","_histData$hoursOnL2","hoursOnL1","selectDayTimeRange","_hoursOnL","selectWeekTimeRange","selectMonthTimeRange","selectYearTimeRange","DevUsageIndex","UtilityUsageIndex","UtilityRealTime","confirmChange","Relay","optionsLightStatus","getCurrentOptions","newRelayStatus","lightStatusCurrent","lightStatusNew","sendDalStatus","newStatus","relays","_telemetry$Relays3","_telemetry$Feedback3","_telemetry$Mode2","_telemetry$Relays","_telemetry$Relays2","_telemetry$Feedback2","updateUtilStatus","disableAutomationButtons","isCommandAvailable","ConfirmChangeModal","automId","selectedMode","sendDalMode","automationAndStatusInfo","fadeInAnimation","slideDownAnimation","slideOutAnimation","BackgroundContainer","MainContentContainer","ComponentContainer","WelcomeText","ProgressContainer","CreditPowered","MainContent","LoginInput","Login","setIsLogin","dashPage","topage","checkingSSO","formLoginValues","formLoginErrors","loginWithCredentials","dataToFront","prefsOverview","ordernedCards","listIdClients","PER_CLIENT","logoutUrl","_err$response$data","codeError","errorCode","ForgotPasswordInput","ForgotPassword","isEnergia","formForgotPasswordValues","formForgotPasswordErrors","NewLoginWrapper","setModalOpen","isLogin","PolimorphicGradientBackground","CelciusWhiteLogo","LogoDielPowered","DielDarkLogo","GooglePlayLogo","handleRedirectToGooglePlay","ModalPrivacyPolicies","ContainerDST","ContainerAreas","InputAreasContainer","HorarioVerao","listAreas","selectedAreas","hourInitial","minuteInitial","hourFinal","minuteFinal","dateInitial","sendMessageDST","AccordionTitle","AccordionInfo","ContainerViewNotification","WaterIcon","CircleCheckFill","TypeIcon","subType","returnOffset","gmt","tz","isDST","CustomAccordion","_notification$detecti","_notification$detecti2","notificationId","tabName","handleViewNotification","getToLink","setOpen","detections","NotificationsEmpty","NewNotifications","_state$notificationsF","notificationsFilteredFeed","notificationsFilteredHistory","notificationsFiltered","callCount","tablePageFeed","tablePageHistory","tablePageSizeFeed","tablePageSizeHistory","totalItemsFeed","totalItemsHistory","feedCanHandle","historyCanHandle","canHandle","informationDates","setInformationDates","dataResponse","isViewed","skip","_informationDates$dat","_informationDates$dat2","getDateSendAccordion","dateDetection","diffMin","diffHr","diffDay","getDescriptionAccordion","typeName","getDescriptionAccordionEnergy","getDescriptionAccordionEnvironment","getDescriptionAccordionHealth","getDescriptionAccordionWater","_notification$energy","_notification$energy2","_notification$energy3","_notification$energy4","_notification$energy5","_notification$energy6","isGreaterString","isGreater","isCompiledString","momentString","isInstantaneous","_notification","_notification$machine","machineHealth","healthIndex","_notification$water","_notification$water2","_notification$water3","getTypeAccordion","viewNotification","getTrasparentLinkTo","detection","getUnitConsumption","measuringUnit","updatePeriodDates","viewAllNotifications","_notification$machine2","_notification$energy7","_notification$water4","_notification$energy8","_notification$water5","_notification$machine3","dateSend","healthIndexName","_notification$energy9","_notification$water6","assetName","report","SelectedStatusText","StatusText","StyledBox","CustomButton","GreenButton","YellowButton","OrangeButton","RedButton","GreyButton","DarkGreyButton","SaveButton","TContainer","THeader","thereIsValue","DataCentered","Health","_state$detectedFaults","_state$modalEditObser2","descObs","setDescObs","currentHealthIndex","currentHealthTitle","currentLaudo","currentPosCauses","selectedLevelTitle","newHealthIndex","showAddObservation","newLaudo","detectedFaults","healthHist","modalEditObservation","laudos","buildLaudoFullText","laudo","pcauses","fullText","causesDesc","_pcauses$id","verifyHealthStatus","healthStatus","faultData","fdata","faultDesc","severity","faultLevel","titulo","actionAprove","actionTaken","limit24h","actionTime","buildDetectedFault","handleGetDevHealth","_devInfo$dac$DAC_APPL","possibleCauses","healthList","assetTypeSelector","P_CAUSES","_possibleCauses$id","selector","filterLaudo","onLevelClick","wantEditAddProgramming","observationId","OBS_DESC","observationsList","HEALTH_MANAGEMENT","selectedLaudo","saveHealthInfo","labelDescHealth","descricao","causa","possCauses","changeType","itemDate","wantDeleteHistoryEvent","wantDeleteObservation","maxLength","_state$modalEditObser","observationDesc","editObservation","saveNewObservation","ManagementFaults","setActive","faultIdPressed","setFaultIdPressed","setDescription","setReload","responseFaults","responseUnit","IconButton","Reativar","Desativar","TextareaAutosize","DevHealth","ProjetoBBCadastroAC","pageName","ProjetoBBNobreak","embedRef","setReport","pages","setPages","reportPages","reportInstance","powerbi","navigateToPage","displayName","ProjetoBBANSRecente","AnalysisEnergy","CSVHeaderNobreak","CSVHeaderIllumination","getUtilityType","Utilities","commonColumns","getStatusIcon","getToolTip","getDurationIcon","getConnectionIcon","getIlluminationStatusIcon","selectedStatusConvert","handleSelectedStatusConvert","_dev$STATE_UF","_dev$NAME","_dev$DAT_CODE","_dev$averageDur","_dev$autonon","_dev$connection","RedirectUtilities","ContainerCard","ForgotPasswordCard","StyledButton","ResetPassword","pass","ButtonOptions","DataExportRow","ColumnTotalValues","ContainerButtonOpen","ContainerProg","PopoverContentDevAut","PopoverContainerDevAut","marquee","TooltipText","MarqueeContainer","MarqueeContent","MarqueeText","TooltipWrapper","maxChart","contentWidth","GenerateColorIcon","ValueNumberFormatComma","PopoverDevAut","rel","progReturn","_week$day","_week$day2","_week$day3","_week$day4","ValueProgDayWeek","multi_scheds","ColumnTemperature","isSetPoint","nameEnv","isTemperature","renderContent","TooltipWhite","GenerateColumnValue","LinkedStringLabelMachine","controlColumnsMachineConfigs","totalParametersColumns","valuesControlMode","valuesAssetsStateDevice","Evaporadora","Disabled","Others","Condensadora","valuesControlState","Enabled","Ventilation","NO_ACTION","Forbid","Heat","transformScheduleData","groupedSchedules","scheduleTitle","capitalize","transformScheduleExceptionData","healthValues","MachinesAnalisys","_state$totalItems$TOT","_state$totalItems$TOT2","hasOneClient","isFirstReload","isLoadingTotal","isLoadingTable","isLoadingModal","showSched","isMonitoring","openInfoMachine","TOTAL_CAPACITY_PWR","TOTAL_MACHINE_KW","TOTAL_UNITS","TOTAL_ASSETS","TOTAL_CITY","TOTAL_STATE","TOTAL_MACHINES","TOTAL_H_INDEX100","TOTAL_H_INDEX50","TOTAL_H_INDEX75","TOTAL_H_INDEX25","TOTAL_H_INDEX2","TOTAL_H_INDEX4","TOTAL_H_INDEX_NULL","TOTAL_ONLINE","TOTAL_OFFLINE","listMachine","machinesTypes","stateDev","tipoMaquina","TEMPERATURE1","TOTAL_DEV_COUNT","conexao","saudeAtual","TOTAL_CAPACITY_CONDENSER","LAST_PROG","arrowValue","_state$filtersData$st","_state$filtersData$ci","_state$filtersData$un","_state$filtersData$ma","_state$filtersData$ma2","word","ValueMachineTypeFormated","MACHINE_TYPE","_state$filtersData$st2","ValueStateMachine","_valuesControlState$v","_valuesControlState$v2","STATE_CONN","counts","ValueMachineHealth","ASSETS","_state$filtersData$te","progValidation","parseProg","GenerateIconAutomationValue","_state$filtersData$op","modeValue","ValueMachineControlMode","DUT_MULT_SCHEDULE_DAYS","dev_aut_conn","countOn","STATUS_WIFI","ValueMachineConection","columnsSubTable","_a","_c","conn","ValueStateAssetMachine","_valuesAssetsStateDev","_valuesAssetsStateDev2","GenerateConectionIcon","filterLastProg","controlColumnsFilter","_item$accessor","setFiltersAndReturn","getTotalInfoMachines","getMachineList","getFilters","first","_filters$MACHINES_TYP","CLIENTS","MACHINES","MACHINES_TYPES","_state$currentSort$ty","_state$selectedFilter9","itemsStateDev","itemsOperationModes","_filter$value","_filter$value2","typeOrdered","onlyAut","operation_modes","resetPage","filterParamsSet","toogleAsset","filterClient","filterMappings","filterKey","filterAllKey","getInfos","excep","getSchedDut","controlDataFiltered","_column$id","MonitoringButton","toogleIsMonitoring","haveProg","handleExportMachineAnalysis","_state$totalItems$ite","_state$totalItems$ite2","isFirstReloadComponent","IsFirstReloadComponent","haveAssets","haveSubTable","openAllSubTables","openArrows","OrderColumnArrow","GenerateItemColumnArrow","subTableItem","itemId","haveItem","ArrowValue","assetOpen","hasAsset","_columnsTable$find","_columnsTable$find2","handleChangePagination","SchedModalOpen","openButton","setOpenButton","verifyMonitoring","Routes","BrowserRouter","getUserConfirmation","NewLogin","DevLogs","useGaTracker","initialized","setInitialized","ReactGA","initialize","pageview","GlobalStyles","createGlobalStyle","ReFlexbox","breakpoints","App","isOpenMenu","checkingAuthToken","posthog","init","api_host","disable_session_recording","identifyUser","isTracker","startSessionRecording","isAxiosError","fetchUserProfile","TourProvider","ThemeProvider","ToastContainer","autoClose","hideProgressBar","newestOnTop","rtl","pauseOnFocusLoss","pauseOnHover","toastClassName","TOP_RIGHT","closeButton","apm","initApm","serviceName","serverUrl","secretToken","verifyServerCert","pageLoadTransactionName","elasticApm","ReactDOM","StrictMode","Router","UnitMapContext","setIsEditing","setIsShowList","setUnitMapData","setPinsData","prevData","pinId","updatedPins","switchPins","oldPinId","newPin","editing","GROUND_PLAN_IDS","FILE_NAME","StyledList2","StyledLink2","timeout_ms","renderWaiting","renderTimer","createDebouncedRender","HeaderWrapper","StyledArrowIcon","TitleWrapper","StyledTitle","StyledTitle3","CollapsedContent","getUserLanguage","verifyIsNull","digits","stringValue","exec","closest","ModalBackground","ModalContentWithBorderTop","asStr","Primary","Secondary","BlueWhite","RedInvert","LightRed","Blue","BlueInvert","DarkBlue","VeryLightBlue","BorderBlue","RedInvertWithBorder","DropdownItem","DropdownItemTitle","isDropdownOpen","setIsDropdownOpen","dropdownRef","MoreIcon","handleToggleExpanded","handleToggleVisibility","_permissions$PER_UNIT","CLIENT_VIEW","MANAGE_ALL_CLIENTS_AND_DACS","VIEW_ALL_CLIENTS_DACS_GROUPS_UNITS","PER_UNIT","onOuterClick","rota","_profile3","profileStringfim","clientsfim","transaction","startTransaction","addFilter","transactions","_profile","username","spans","_profile2","subtype","setUserContext","TourContext","highlight","MoverCards","ExpansaoRemocao","_tour$find","stepHistory","setStepHistory","tour","prevHistory","tourStep","tour_finished","finishTour","isTourActive","currentStep","tourFinished","useTour","initReactI18next","returnNull","lng","fallbackLng","interpolation","escapeValue","transSupportBasicHtmlNodes","transKeepBasicHtmlNodesFor","resources","en","translation","enJson","ptBRJson","base","MenuOpen","CardsContainer","ColTitle","ColTitleCenter","BodyList","ColCenter","HealthIndexIcon","HealthToolTipDiv","ToolTipRowTitle","ToolTipTitle","HealthDesc","HealtLastAtt","ButtonTypeSolution","ContainerNobreak","ContainerTypeOfSolutionsButton","NameStyle","NameStyleNobreak","ColNobreak","Cards","machineWithoutDevices","toggleSortCardEnvironments","sortColEnvironments","sortDirEnvironments","temperatureIcon","sortColMachines","sortDirMachines","sortColIllumination","sortDirIllumination","sortColNobreak","sortDirNobreak","typeofSolution","bottomEnvironments","sortedEnviroments","hasIconA","isAuto","hasIconB","sensitivity","sortedRoomName","sortedDevIdDes","MachineAndUtilityCardUnit","HealthToolTip","stateMachine","setStateMachine","dacsVavsList","DEV_AUTO","sortedMachines","sorted","ascendSort","setTypeOfSolution","constA","constB","comparativeGeneric","constante","sortedIllumination","HeaderMachine","ButtonsTypeOfSolution","HeaderSolutions","TypeSolutionNobreak","TypeSolutionIllumination","AVERAGEDUR","AUTON","CONNECTION","bottomMachines","toggleSortCardMachines","arraySolutions","bottomIllumination","toggleSortCardIllumination","arrayHeaderIllumination","CardsRow","DataCellCard","colSpan","ClickableSpan","onSearchText","cellIndex","panelScreen","COLUMN_NAME","verifyColumnValue","COLUMN_VALUE","verifyParameter","unusedItems","formattedValues","analise","unidades","editar","notificacoes","gerenciamento","usuarios","configuracoes","integrated","setPath","timezoneInfo","setTimezoneInfo","realPath","initializeBreadCrump","newPath","unitIdIndex","linkPath","TimezoneWarn","isGraterThan20","parts","itemText","PaginationContainer","Page","ButtonPage","ChevronLeft","ChevronRight","CheckboxStyle","setOrderColumn","setSortOrder","setCurrentPage","selectedData","checkedItems","toogleChecked","btn","CheckedAll","AllChecked","ischecked","idsNotIncludes","Checked","ModalDefault","supervisorList","allOfOption","setWeeklyReport","setResponsible","sendItems","selectedItemsList","itemsUnits","UNITS_IDS","SUPERVISOR_ID","SELECTED","setChecked","check","TourColumn","Stepper","Step","completed","HighlightChildren","hightlight","TourPopover","onNextStepClick","handleEndTour","handleNextStep","textWrap","overlayInnerStyle","Blue100","Blue600","MediumBlue","VeryDarkGrey","DarkGrey70","LightGrey","Red_v2","Yellow_v2","Orange_v2","Orange_v3","Grey_v3","Menu","styledInput","extraProps","numberStr","initialSortBy","maxItens","defaultColumn","getTableProps","getTableBodyProps","headerGroups","prepareRow","useTable","useSortBy","useResizeColumns","StyledTable","StyledHead","headerGroup","StyledTableRow","getHeaderGroupProps","StyledTableHeader","getHeaderProps","getSortByToggleProps","ArrowTable","getResizerProps","isopen","isSortedDesc","isSorted","selectTableHeadContentColor","StyledBody","getRowProps","StyledCell","cells","hasInternalLink","getCellProps","AssetsColumnsSubTable","StyledSubTableHeader","LineSubTable","_props$columnsSubTabl","StyledSubCell","LineSubItemTable","textAux","truncatedText","visibleColumns","columnValue","columnsVisible","disabledSortBy","fadeOut","noOp","ContainerTimezoneDST","timezoneRef","animationState","setAnimationState","lastUnitId","handleAnimationEnd","animationName","DynRow","NewCardPersonalized","ServerStyledBorder","ContainerIconImage","ItemValue","ItemVal","BoxHover","EmptyCard","AddCard","DraggableCard","moveCard","setIsDragging","lastStep","onDragStart","dataTransfer","onDragOver","DraggableArea","addCard","enabledCards","disabledCards","PlusOutlined","MenuLogo","setToogleAnalise","setToggleNotificacoes","CustomLogo","MenuExpandido","ExpandirMenu","InfoHeader","MenuLink","linkTo","actions","altImage","subItem","SubItemMenu","BorderHorizontalSubItem","MenuSubItemName","MenuItemImg","MenuWrapper","prevCards","setPrevCards","toogleAnalise","toggleNotificacoes","isConfirmation","setIsConfirmation","isClickedAnalise","setIsClicked","isClickedNotificacoes","setIsClickedNotificacoes","countNotifications","toggleModal","getMenuSubItemAnalise","getMenuSubItemNotif","subItemsAnalise","subItemsNotificacoes","fetchCount","menuIsActive","menuLinkIsActive","firstStep","secoundStep","thirdStep","VisaoGeral","MenuLinkActions","Analise","ContainerSubItem","Notificacoes","NotificationBadge","isPlus","Usuarios","Configuracoes","Creditos","AcceptationModalSubTitle","AcceptationModalButton","UserOptions","Welcome","Expand","LogoutIcon","UserGuideIcon","ConfigIcon","ModalUserGuide","menuToggle","handleEsc","frameBorder","refContainer","hasToken","showUserGuide","setShowUserGuide","checkableItem","checkHandler","_formData$baselineTem","baselineTemplates","setBaselineTemplates","selectedTemplate","januaryPrice","januaryKwh","febuaryPrice","febuaryKwh","marchPrice","marchKwh","aprilPrice","aprilKwh","mayPrice","mayKwh","junePrice","juneKwh","jullyPrice","jullyKwh","augustPrice","augustKwh","septemberPrice","septemberKwh","octoberPrice","octoberKwh","novemberPrice","novemberKwh","decemberPrice","decemberKwh","maskInput","isPrice","Intl","NumberFormat","initialMaskInput","baselineTemplatesAux","baselineTemplateAux","template","baselineAux","_baselineAux","_baselineAux2","_baselineAux3","_baselineAux4","_baselineAux5","_baselineAux6","_baselineAux7","_baselineAux8","_baselineAux9","_baselineAux10","_baselineAux11","_baselineAux12","_baselineAux13","_baselineAux14","_baselineAux15","_baselineAux16","_baselineAux17","_baselineAux18","_baselineAux19","_baselineAux20","_baselineAux21","_baselineAux22","_baselineAux23","_baselineAux24","getBaselineInfo","getBaselineTemplates","defaultDateRanges","_props$height","IconWrapperHealth","rest","identify","maintainer","admin","instalador","validator","ItemTitleTotal","ItemLegend","ItemCompare","RedTriangleUp","RedTriangleDown","GreenTriangleUp","GreenTriangleDown","IconContainer","shouldBeConnected","currentStatus","reconnectTimer","connectTimeout","listeners","connectToServer","close","WebSocket","onSocketOpen","onSocketClose","onSocketError","onSocketMessage","publish","addListener","callback","removeListener","sendJson","cb","onOpen","onMessage","beforeClose","wsh","started","wscallback","HaveSelectAllSelectedContainer","LabelPlaceholder","FuzzySearchLabel","FuzzySearchSelectedLabel","LimitBoxInfo","linksRight","headerRefs","createRef","_link$link","dataVectors","isBool01","invertBool","formatDamParameters","damSelfRefInfo","getTlim","_dut$daySched","getTSetpoint","_dut$daySched2","fixLimits","formatDutParameters","_dut$isDutDuo","temp1","formatDacParameters","groupDacs","dacHist","formatSetpointHist","energyValue","referenceVersion","devFwVersion","rVersion0","rVersion1","rVersion2","dVersion0","dVersion1","dVersion2","HealthWrapper","with","StateLabelChecked","StateLabelUnchecked","SliderMini","CursorMini","variantWidth","auto","bloq","sLabel","setUTCDate","getUTCDate","xPoint","dayStartYMD","hourFormatted","minFormatted","secFormatted","numberOfDays","getTimeFromHour","setMonth","setFullYear","topMenuToogle","InputMasked","InputDefault","MaskedInput","props2","tips","inputRef","setSearch","fuzzySearchSelectedLabel","selectedLabel","toggleAndFocusInputs","_inputRef$current","_option$propLabel","_option$propLabel$toL","labelOnTop","formatedDisplayedValue","filteredOptions","_ref3$trim","searchLC","_option$propLabel2","isSelected1","_inputRef$current2","isSelected2","haveCustomElements","CustomSlider","DownloadBox","EmptyText","EmptyImages","ContainerSlider","ContainerOptions","ContainerImageSecondary","ContainerImage","ImageSecondary","Close","ModalText","showButton","images","setImages","isOver","setIsOver","currentImageUrlToModal","setCurrentImageUrlToModal","fetchImages","handleUploadImage","fileResult","compressPromise","quality","CustomArrow","dotsClass","infinite","speed","slidesToShow","slidesToScroll","nextArrow","prevArrow","appendDots","customPaging","removeImage","Field","ItemBox","hr","LabelWrap","StyledLinkLast","TimezoneInfo","isFocused","setFocusedInput","yearItemNumber","Layer","SwitchButton","SwitchText","switchOn","AntSwitchWrapper","switchBase","palette","common","white","primary","main","thumb","track","OriginalAntSwitch","FormGroup","ItemValueCurrency","ItemValueUnit","NoInformation","LabelObs","ChartLegendContainer","ChartLegendTitle","ChartInfoContainer","ChartInfoTitle","ChartInfoDataContainer","ChartInfo","_energyEfficiencyOver","_energyEfficiencyOver2","energyEfficiencyOverview","oneUnit","opportunityPercent","totalPercent","verifyPercentOverLimit","getBackgroundColor","isCondenserGreater","calculateRightBorderRadius","displayConsumption","_energyEfficiencyOver3","_energyEfficiencyOver4","greenAntPrice","condenserPrice","effectiveGreenAntSum","effectiveConsumptionSum","effectiveAverageTariff","handleGetLegendTratedData","percentageNumber","aviso_ico","alginItems","calculateConsumption","getConsumptionPrice","sx","InvoiceChart","downloadingPdf","showBaselines","toggleSwitchInvoice","setToggleSwitchInvoice","tickYLabelFormatter","switchInvoice","valueFormatted","measurementUnitAux","tickXLabelFormaterMonth","dateAux","numMonth","tickXLabelFormaterYear","yy","ToolTipContents","_props$invoices$dayIn","dateFrom","periodFrom","dateUntil","periodUntil","timeDifference","daysDifference","tooltipCustom","differencePrice","differenceKwh","variationPrice","ternaryAuxArrow","ternaryAuxSignal","variationPriceExib","variationKwh","variationKwhExib","decimalPalcesToMeasured","isReduced","percentageInvoices","displayBaselineOption","displayPdfOption","downloadPdf","ChartContainer1","ChartContainer","BarContainerReduced","BarContainer","_label","HorizontalGrid","VerticalLabels","BarSubContainer","Baseline","tooltipHolder","XAxisReduced","CsvHeader","formattedCsv","ItemValueInt","TootipTexName","TootipTexValue","TootipTex","CardLine","ZeroConsumo","MenorConsumo","MedioConsumo","MaiorConsumo","ExpandButton","ItemValueDecimal","BarColor","StatusButtonOn","StatusButtonOff","CustomLegendUl","CustomLegendLi","LegendIcon","SeparationLine","_dac$dacs","expandMachines","setDataObject","comsumptionT","comsumptionKWH","_machine$id","_machine$id2","dacTempAvg","dacTempMax","dacTempMin","verifyMachineExternalTemperature","verifyShowExternalTemperatureY","getChartData","verifyMachineDevIdIsDac","dayConsumption","totalSaving","CustomizedAxisTick","_text$","_text$2","_groupInfo$dacTempAvg","_groupInfo$dacTempMax","_groupInfo$dacTempMin","_machine","Legend","iconType","entry","changeChartMode","getRefPeriod","DemandChart","StyledDivider","defaultYTicks","metersColor","weekDayNames","toggleChartMode","selectedDayCurrent","_value","consumptionLabelFormatter","_value2","_valueFormatted","_dateAux$getDate$toSt","tickXLabelFormaterWeekDay","isLastDayOfWeek","handleGetTratedIcon","_props$demandsByMeter","_props$metersTotalDem","consumptionByMeter","weekDayName","meterCurrent","_props$demandsByMeter2","_props$demandsByMeter3","_props$metersTotalDem2","_selectedDay$hours$","_selectedDay$hours$ho","demandToShow","_props$demandsByMeter4","_props$demandsByMeter5","sumTotalDemands","calculateTotal","resultValue","resultUnit","initWeek","handleGetTratedData","lengthConstant","percentageValue","countDataIsInvalid","countDataIsProcessed","showTooltip","handleGetBarColor","handleCanView","monthDataLength","dayDataLength","canView","handleCanClick","_state$selectedDay","_hour$percentageTotal","DayBarContainer","_props$demandsByMeter6","_props$demandsByMeter7","_props$demandsByMeter8","_props$demandsByMeter9","_props$demandsByMeter10","_props$demandsByMeter11","MonthBarContainer","BarSubContainerMultipleMeters","_demand$percentageTot","_hour$hour","getEstablishmentName","levelsList","hIndex","buttonText","HealthHistoryContents","isMachine","setIsMachine","_props$healthHistory","levels","lInfo","disabledLevels","chartVals_dayPerct_Machine","chartVals_dayCount_Machine","chartVals_dayPerct_TR","chartVals_dayCount_TR","TR","selPercentageMachine","selPercentageTR","daysList","topValueMachine","topValueTR","vertGridMachine","vertGridTR","stepMachine","stepTR","maxCount","maxTR","dayHealth","daySelectedCount","daySelectedTR","dayTotalCount","dayTotalTR","dayDMY","containerSizeMachine","containerSizeTR","dayGreenPrctMachine","dayGreenMachine","dayROYPrctMachine","dayROYMachine","dayGreenPrctTR","dayGreenTR","dayROYPrctTR","dayROYTR","selectedCount","selectedTR","lastDayDMY","machineCard","healthLevelsLink","Correto","Urgente","Desativada","generateLink","lId","TooltipLevelContainer","TooltipIconContainer","StyledBox2","HealthCircle","HorizHealthSubContainer","HorizHealthSubTop","HealthButtonUnSelectedMobile","HealthButtonUnSelected","HealthButtonSelectedMobile","HealthButtonSelected","switchLevel","HealthButtonIconContainer","HealthButtonCount","HealthButtonText","HealthButtonLink","daysRange","HEALTH_INITIAL_VALUE","DATE_FORMAT","dacColumns","_state$healthHistory2","isLoadingHealthOverviewNow","isLoadingHealthOverviewBefore","isLoadingHealthHistoryChart","isLoadingDacsList","machinesPag","formatSelectedFilter","healthHistoryChart","refDate","calculateReferenceDate","startYMD","generateDaysList","reqs","atDayYMD","fetchHealthOverviewData","handleGetDacsInfo","healthNow","healthBefore","processedDacs","definedStates","stateInString","totalMachines","compareMachinesGreen","compareMachinesYellow","compareMachinesOrange","compareMachinesRed","compareMachinesDeactiv","compareMachinesOthers","machineCardDaysRange","_state$healthHistory","borderCollapse","_utils$nobreak","_utils$nobreak2","_utils$iluminacao","_utils$iluminacao2","_utils$maquinas","_utils$maquinas2","_utils$maquinas3","_utils$ambientes","_utils$ambientes2","_utils$energia","_utils$energia2","_utils$agua","_utils$agua2","_utils$iluminacao3","_utils$iluminacao4","_utils$nobreak3","_utils$nobreak4","utilitaries","BsSquareFill","Active","Energy","Lighting","Nobreaks","categoriesList","high","good","low","AmbsHistoryContents","roomsHistory","_props$roomsHistory","categories","cInfo","disabledCategories","chartVals_dayPerct","chartVals_dayCount","selPercentage","topValue","vertGrid","containerSize","tooltip2Title","cId","envCard","EnvBlocks","squareSize","dutListCloneHigh","dutListCloneOk","dutListCloneLow","dutListCloneNoData","_state$roomsHistory2","isLoadingRoomsOverviewChart","isLoadingRoomsHistoryChart","isLoadingRoomsList","totalRoomsData","roomsPag","processedDuts","ncols_float","sqrt","nrows_float","nrows1","ncols1","cell_size1","ncols2","nrows2","cell_size2","nrows","ncols","cell_size","initialStep","envCardDaysRange","_state$roomsHistory","getRoomsList","roomsList","cardParams","roomsHistoryChart","historyOnly","invisible","roomsOverviewChart","_props$machine$capaci","_props$comboOpts$bran","_props$comboOpts$type","_props$comboOpts$flui","_props$comboOpts$appl","_props$asset","_props$asset2","_formData$unitId","_formData$typeValue","_formData$brandValue","_formData$applicValue","_formData$refrigerati","_formDataAsset$chille","_formDataAsset$chille2","_formDataAsset$datId","_formDataAsset$devId","_formDataAsset$datId2","_formDataAsset$devId2","_formDataAsset$nomina","_formDataAsset$nomina2","_formDataAsset$nomina3","handleSwitchAutomation","machineAutomation","switchCapacity","switchAutomation","setSwitchAutomation","switchRefDut","setSwitchRefDut","switchDat","setSwitchDat","switchDev","setSwitchDev","chillerModelsFilter","setChillerModelsFilter","brandValue","typeValue","refrigerationFluidValue","applicValue","formDataAsset","setFormDataAsset","handleFormDataAsset","paramAsset","handleFormDataFind","paramFind","arrayParamFind","_arrayParamFind$find","notSelectedChillerCarrier","updateMachineData","_props$asset3","_props$asset4","_props$asset5","_props$asset6","_props$asset7","_props$asset8","_props$asset9","_props$asset10","_props$asset11","_props$asset12","_props$asset13","_props$asset14","_props$asset15","_props$asset16","_props$asset17","_props$asset18","_props$asset$capacity","_props$asset19","_props$asset20","_props$asset21","_props$asset22","_props$asset23","_props$asset24","_props$asset25","_props$asset26","_props$asset27","_props$asset28","_props$asset29","_props$asset30","chillerIds","lineName","errorOrUndefined","unitAux","typeAux","brandId","brandAux","applicId","applicAux","PlaceholderWrapper","fluidId","fluidAux","chillerLineId","chillerLineAux","chillerModelId","chillerModelAux","chillerInfo","roleAux","widht","readonly","assetList","pressedNewAsset","deleteAsset","handleChangeAsset","assetsAux","fetchAssets","_formData$roleId","setSwitchCapacity","isCondenser","setIsCondenser","isEvaporator","setIsEvaporator","numAtivo","_props$machine","_props$machine$type","_props$machine2","_props$machine2$appli","_props$machine3","_props$machine3$brand","_props$machine4","FieldCAG","twoDigits","_dutControlOperation$","_props$schedule$SETPO","operationText","showSetPoint","showLtc","showLti","showForcedOptions","_props$schedule","_props$schedule2","_props$schedule3","_props$schedule4","_props$schedule5","_props$schedule6","_props$schedule7","_props$schedule8","_props$schedule9","_props$schedule10","_props$schedule11","_props$schedule12","_props$schedule13","_props$schedule14","_props$schedule14$SET","_props$schedule15","_props$schedule15$LTC","_props$schedule16","_props$schedule16$LTI","_props$schedule17","_props$schedule17$UPP","_props$schedule18","_props$schedule18$LOW","_props$schedule19","_props$schedule20","_props$schedule21","_props$schedule22","_props$schedule25","_props$schedule27","_props$schedule29","_props$schedule31","_props$schedule32","_props$schedule33","_props$schedule34","_props$schedule35","_props$schedule36","_props$schedule37","_props$schedule38","_props$schedule39","_props$schedule40","_props$schedule41","actionModes","getActionKeyFromValue","_props$schedule23","_props$schedule24","SCHEDULE_START_BEHAVIOR_item","_props$schedule26","SCHEDULE_END_BEHAVIOR_item","_props$schedule28","_props$schedule30","allDay","showEco2Options","showSetPointForced","fwVersion","_props$temperaturesFo","_props$schedule42","_props$schedule43","persistedForcedCool","forcedSetpointDefault","_props$schedule44","setpointDefault","setpointForced","valideForcedOptions","getFWVersion","withRender","_props$schedule45","_props$schedule46","_props$schedule47","setFormDataDays","_props$schedule48","_state$formData$SETPO","_state$formData$LTC","_state$formData$LTI","_state$formData$LTI2","_state$formData$UPPER","_state$formData$LOWER","_state$formData$LTC2","_state$formData$LTI3","_state$formData$SETPO2","_state$formData$UPPER2","_state$formData$LOWER2","checkScheduleToSave","addVariationVariableVerificationVersion","addScheduleStartAndEndBehavior","SobDemanda","BackupEcoV2","exceptionTitle","_props$exception","_props$exception2","_props$exception3","_props$exception4","_props$exception5","_props$exception6","_props$exception7","_props$exception8","_props$exception9","_props$exception9$SET","_props$exception10","_props$exception10$LT","_props$exception11","_props$exception11$LT","_props$exception12","_props$exception12$UP","_props$exception13","_props$exception13$LO","_props$exception14","_props$exception15","_props$exception16","_props$exception17","_props$exception20","_props$exception22","_props$exception24","_props$exception26","_props$exception27","_props$exception28","_props$exception29","_props$exception30","_props$exception31","_props$exception32","_props$exception33","_props$exception34","_props$exception35","_props$exception36","_props$exception18","_props$exception19","_props$exception21","_props$exception23","_props$exception25","_props$exception37","_props$exception38","_props$exception39","_props$temperaturesFo2","_props$exception40","_props$exception41","_props$exception42","_props$exception43","checkExceptionToSave","increaseDecrease","SelectValue","InputValue","increaseDecreaseValue","increase","valueReturn","increaseDecreaseValueList","ShowHideButton","showMobileInfo","_state$mainOption","_state$mainOption2","_state$mainOption3","_state$mainOption3$la","_state$mainOption4","mainOption","selectedPrevious","selectItem","CenterModal","showPrompt","setShowPrompt","handleCancel","handleOK","StyledModalPrivacyPolicies","ModalPrivacyPoliciesHeader","ModalPrivacyPoliciesActionButtons","StyledProgress","StyledProgressDone","movePolimorphicLightBlue","movePolimorphicShapeGreen","gradientAnimation","GradientBackground","BackgroundChildreen","GradientsContainer","PolimorphicShapeGreen","polimorphicShapeGreen","PolimorphicShapeLightBlue","polimorphicShapeLightBlue","CardFooter","FooterInfos","_telemetryData$max_de3","_telemetryData$max_de4","_telemetryData$max_de5","_telemetryData$min_de","_telemetryData$min_de2","_telemetryData$min_de3","_telemetryData$min_de4","ImageZoomWrapper","ImageZoomActions","ImageZoomActionButton","viewMode","ContentWrapper","haveOverflow","StatusColor","ActionButtons","Pin","_pin$ROOM_NAME","handleEditPin","colorsOption","blue","gray","limit","handleGetStatusColor","handleGetPinTemperature","PinEditModalStyled","PinEditModalContent","SearchInputWrapper","PinEditModal","setDevices","selectOptions","setSelectOptions","switchedPin","setSwitchedPin","devicesFormatted","oldPin","PinTooltipStyled","Contents","isDUTQA","PinTooltip","handleGetPinInfo","imageScale","setImageScale","imageWidth","setImageWidth","imageHeight","setImageHeight","imagePosition","setImagePosition","positionX","positionY","updatePosition","setUpdatePosition","isLoadingImage","setIsLoadingImage","showImage","setShowImage","transformRef","selectedPinId","setSelectedPinId","handleOnLoadImage","wrapperElement","querySelector","adjustXValue","adjustYValue","setTransform","pointerEvents","handleSetImageSize","imageElement","TransformWrapper","centerOnInit","onTransformed","maxScale","minScale","TransformComponent","Draggable","onDrag","horizontalAdjusts","popover","draggElement","rectTooltip","rectWrapper","transformation","getComputedStyle","scaleFactor","adjustedTop","adjustedLeft","handleMouseOver","onMouseOut","zoomIn","zoomOut","LabelStyled","dropzone","isDragAccept","isDragReject","Filters","BtnActionFilters","BtnFiltersWrapper","BtnFilters","BtnFiltersDropdown","BtnBasic","wrapperRefs","openDropdown","setOpenDropdown","_wrapperRefs$current$","filterLength","selectTableHeadProps","log_dev_cmd","waitingResponse","log_dev_ctrl","aggregatedLogs_all","aggregatedLogs_visible","resultDevId","customFilter","liveLogActive","ocultarSyncDebug","ocultarEcoRt","qPars","periodIni","periodFin","logsSorter","beginSearch","resetResults","dynamoTable","continuesAfter","isIgnored","msgtype","message_type","rt","eval","isWaitingResults"],"mappings":"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","file":"static/js/main.57e29ee6.chunk.js","sourcesContent":["/* eslint-disable @typescript-eslint/explicit-module-boundary-types */\r\nimport React, {\r\n createContext, useReducer, useContext, useEffect, ReactNode, useMemo,\r\n} from 'react';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { apiCall } from '~/providers';\r\n\r\nexport interface ICard {\r\n type: number;\r\n position: number;\r\n title: string;\r\n isActive: boolean;\r\n isExpanded: boolean;\r\n}\r\n\r\ntype Action =\r\n | { type: 'TOGGLE_ACTIVE'; payload: number }\r\n | { type: 'TOGGLE_EXPANDED'; payload: number }\r\n | { type: 'CHANGE_ORDER'; payload: { dragIndex: number; hoverIndex: number } }\r\n | { type: 'SAVE_STATE' }\r\n | { type: 'RESET_ALL', payload: ICard[] };\r\n\r\ninterface CardContextState {\r\n cards: ICard[];\r\n dispatch: React.Dispatch;\r\n}\r\n\r\nconst CardContext = createContext(undefined);\r\n\r\nexport const CardProvider = ({ children }: { children: ReactNode }) => {\r\n const user = getUserProfile();\r\n\r\n const submitCards = async (cards: ICard[]) => {\r\n try {\r\n await apiCall('/users/set-prefs-overview', { userId: user.user, prefs: cards });\r\n } catch (error) {\r\n console.error('Erro ao salvar preferências do usuário', error);\r\n }\r\n };\r\n\r\n const reducer = (state: ICard[], action: Action): ICard[] => {\r\n switch (action.type) {\r\n case 'TOGGLE_ACTIVE':\r\n return state.map((card) => (card.type === action.payload ? { ...card, isActive: !card.isActive } : card));\r\n case 'TOGGLE_EXPANDED':\r\n return state.map((card) => (card.type === action.payload ? { ...card, isExpanded: !card.isExpanded } : card));\r\n case 'CHANGE_ORDER': {\r\n const { dragIndex, hoverIndex } = action.payload;\r\n const dragCard = state[dragIndex];\r\n const newCards = [...state];\r\n newCards.splice(dragIndex, 1);\r\n newCards.splice(hoverIndex, 0, dragCard);\r\n return newCards.map((card, index) => ({ ...card, position: index }));\r\n }\r\n case 'SAVE_STATE':\r\n submitCards(state);\r\n return state;\r\n case 'RESET_ALL':\r\n if (action.payload.length === 0) {\r\n return [];\r\n }\r\n\r\n return action.payload;\r\n default:\r\n return state;\r\n }\r\n };\r\n\r\n const [cards, dispatch] = useReducer(reducer, []);\r\n\r\n useEffect(() => {\r\n if (user && user.user) {\r\n (async () => {\r\n try {\r\n const response = await apiCall('/users/get-prefs-overview', { userId: user.user });\r\n if (response) {\r\n const orderedCards: any = response.prefs.sort((a: any, b: any) => a.position - b.position);\r\n dispatch({ type: 'RESET_ALL', payload: orderedCards });\r\n }\r\n } catch (error) {\r\n console.error('Erro ao obter preferências do usuário', error);\r\n }\r\n })();\r\n }\r\n }, [user.user]);\r\n\r\n const contextValue = useMemo(() => ({ cards, dispatch }), [cards, dispatch]);\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nexport const useCard = () => {\r\n const context = useContext(CardContext);\r\n if (!context) {\r\n throw new Error('useCardContext deve ser usado dentro de um CardProvider');\r\n }\r\n return context;\r\n};\r\n","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TopTitle\":\"styles_TopTitle__1BryA\",\"TopDate\":\"styles_TopDate__1dXkZ\",\"ChartContainer1\":\"styles_ChartContainer1__1FHnc\",\"ChartContainer\":\"styles_ChartContainer__Q_I9u\",\"HealthButtonSelected\":\"styles_HealthButtonSelected__3bMrz\",\"HealthButtonUnSelected\":\"styles_HealthButtonUnSelected__2czsG\",\"HealthButtonIconContainer\":\"styles_HealthButtonIconContainer__1azc_\",\"HealthButtonCount\":\"styles_HealthButtonCount__1yJio\",\"HealthButtonText\":\"styles_HealthButtonText__1XL8w\",\"HorizHealthSubContainer\":\"styles_HorizHealthSubContainer__1C2VP\",\"HorizHealthSubTop\":\"styles_HorizHealthSubTop__2suzz\",\"HealthCircle\":\"styles_HealthCircle__1aFSB\",\"TooltipLevelContainer\":\"styles_TooltipLevelContainer__3XMYv\",\"TooltipIconContainer\":\"styles_TooltipIconContainer__1F_UU\",\"OverLay\":\"styles_OverLay__nrhQF\",\"StyledBox\":\"styles_StyledBox__3wQj7\",\"StyledBox2\":\"styles_StyledBox2__EDOKv\",\"BarContainer\":\"styles_BarContainer__X6LJ3\",\"BarSubContainer\":\"styles_BarSubContainer__3PV_0\",\"HorizontalGrid\":\"styles_HorizontalGrid__2z4NR\",\"VerticalGrid\":\"styles_VerticalGrid__5I-kU\",\"VerticalLabels\":\"styles_VerticalLabels__1932i\",\"tooltipHolder\":\"styles_tooltipHolder__3qVqR\",\"tooltip2Title\":\"styles_tooltip2Title__3iNrZ\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"TopTitle\":\"styles_TopTitle__Or8fd\",\"TopDate\":\"styles_TopDate__3TRit\",\"ChartContainer1\":\"styles_ChartContainer1__1Vbex\",\"ChartContainer\":\"styles_ChartContainer__e_22q\",\"HealthButtonLink\":\"styles_HealthButtonLink__3aD1g\",\"HealthButtonSelected\":\"styles_HealthButtonSelected__3Xux4\",\"HealthButtonSelectedMobile\":\"styles_HealthButtonSelectedMobile__2ojeN\",\"HealthButtonUnSelected\":\"styles_HealthButtonUnSelected__3GlPV\",\"HealthButtonUnSelectedMobile\":\"styles_HealthButtonUnSelectedMobile__3eZTW\",\"HealthButtonIconContainer\":\"styles_HealthButtonIconContainer__1ae7b\",\"HealthButtonCount\":\"styles_HealthButtonCount__3Ijwo\",\"HealthButtonText\":\"styles_HealthButtonText__153KE\",\"HorizHealthSubContainer\":\"styles_HorizHealthSubContainer__UOzO-\",\"HorizHealthSubTop\":\"styles_HorizHealthSubTop__3B-fK\",\"HealthCircle\":\"styles_HealthCircle__HaP_2\",\"TooltipLevelContainer\":\"styles_TooltipLevelContainer__2s-R1\",\"TooltipIconContainer\":\"styles_TooltipIconContainer__wJLSl\",\"OverLay\":\"styles_OverLay__2JLM7\",\"Icon\":\"styles_Icon__2qadU\",\"StyledBox\":\"styles_StyledBox__38Ll9\",\"StyledBox2\":\"styles_StyledBox2__2sQH4\",\"BarContainer\":\"styles_BarContainer__23bSD\",\"BarSubContainer\":\"styles_BarSubContainer__1hQcm\",\"HorizontalGrid\":\"styles_HorizontalGrid__3fcrI\",\"VerticalGrid\":\"styles_VerticalGrid__1T9iX\",\"VerticalLabels\":\"styles_VerticalLabels__pSlHK\"};","// extracted by mini-css-extract-plugin\nmodule.exports = {\"ChartContainer1\":\"styles_ChartContainer1__3uWZs\",\"ChartContainer\":\"styles_ChartContainer__LKBGJ\",\"OverLay\":\"styles_OverLay__1sXHB\",\"StyledBox\":\"styles_StyledBox__aaV4l\",\"StyledBox2\":\"styles_StyledBox2__1B0mc\",\"MonthBarContainer\":\"styles_MonthBarContainer__3ulSU\",\"DayBarContainer\":\"styles_DayBarContainer__1b9Ba\",\"BarContainerReduced\":\"styles_BarContainerReduced__1sgSZ\",\"XAxis\":\"styles_XAxis__2aoW5\",\"XAxisReduced\":\"styles_XAxisReduced__RUAFi\",\"BarSubContainer\":\"styles_BarSubContainer__27Ti1\",\"BarSubContainerMultipleMeters\":\"styles_BarSubContainerMultipleMeters__1-d-z\",\"HorizontalGrid\":\"styles_HorizontalGrid__3hwAL\",\"Baseline\":\"styles_Baseline__2L7mb\",\"VerticalGrid\":\"styles_VerticalGrid__3T9j3\",\"VerticalLabels\":\"styles_VerticalLabels__1AoQS\",\"tooltipHolder\":\"styles_tooltipHolder__3VXMS\",\"tooltipCustom\":\"styles_tooltipCustom__vNsqr\"};","/* eslint-disable import/no-named-as-default-member */\r\n/* eslint-disable import/no-named-as-default */\r\nimport axios, { AxiosRequestConfig } from 'axios';\r\n\r\nimport ThenArg from 'helpers/ThenArg';\r\n\r\nimport API_private from './types/api-private';\r\nimport API_public from './types/api-public';\r\nimport API_uploadService from './types/api-upload-service';\r\nimport { apmElastic } from 'helpers/apmElastic';\r\n\r\nconst isProductionFront = [\r\n 'celsius360.dielenergia.com',\r\n 'dap.dielenergia.com',\r\n 'dash.dielenergia.com',\r\n 'energia.dielenergia.com',\r\n 'hvac.dielenergia.com',\r\n].includes(window.location.host);\r\n\r\n// localStorage.setItem('@diel:custom-backend', 'http://localhost:8443');\r\n// localStorage.setItem('@diel:custom-backend', 'https://api-qa.dielenergia.com');\r\n\r\nexport const __API__ = localStorage.getItem('@diel:custom-backend')\r\n || process.env.REACT_APP_API_URL\r\n || 'http://api.unknown-host'; // force error\r\n\r\nlet _backendDescriptionToShow: string|null = null;\r\ntry {\r\n const apiHostName = new URL(__API__).hostname;\r\n switch (apiHostName) {\r\n case 'api.dielenergia.com': { _backendDescriptionToShow = 'SERVIDOR DE PRODUÇÃO!'; break; }\r\n case 'api-qa.dielenergia.com': { _backendDescriptionToShow = 'QA'; break; }\r\n case 'api-test.dielenergia.com': { _backendDescriptionToShow = 'TIMEZONE'; break; }\r\n case 'api-dev-nav.dielenergia.com': { _backendDescriptionToShow = 'DEV-NAV'; break; }\r\n case 'api-demo.dielenergia.com': { _backendDescriptionToShow = 'DEMONSTRAÇÃO'; break; }\r\n default: { _backendDescriptionToShow = 'SERVIDOR DE TESTES'; break; }\r\n }\r\n\r\n if (isProductionFront && (apiHostName === 'api.dielenergia.com')) { _backendDescriptionToShow = null; }\r\n} catch (err) { console.error(err); }\r\n\r\nexport const backendDescriptionToShow = _backendDescriptionToShow;\r\n\r\nexport const __WS_URL__ = process.env.REACT_APP_WEBSOCKET_URL || `ws${__API__.substring(4)}:8010/wsfront`;\r\n\r\nconst defaultOptions = {\r\n baseURL: __API__,\r\n};\r\n\r\nconst instance = axios.create(defaultOptions);\r\n\r\ninstance.interceptors.request.use((config) => {\r\n if (localStorage.getItem('@diel:token')) {\r\n config.headers.Authorization = `Bearer ${localStorage.getItem('@diel:token')}`;\r\n }\r\n return config;\r\n});\r\n\r\ninstance.interceptors.response.use(\r\n (response) => response,\r\n (error) => {\r\n if (error && error.response && error.response.status === 401) {\r\n localStorage.clear();\r\n }\r\n if (\r\n error\r\n && error.response\r\n && error.response.status === 401\r\n && window.location.pathname !== '/login'\r\n && window.location.pathname !== '/esqueceu-senha'\r\n && window.location.pathname !== '/configuracoes/alterar-senha'\r\n ) {\r\n window.location.href = '/login';\r\n } else {\r\n return Promise.reject(error);\r\n }\r\n },\r\n);\r\n\r\nexport function reqWithCredentials(authHeader: string, route: string, body?: string|{}) {\r\n const config: AxiosRequestConfig = {\r\n method: 'post',\r\n baseURL: __API__,\r\n url: route,\r\n data: body,\r\n headers: {},\r\n };\r\n if (authHeader && authHeader.length > 10) config.headers.Authorization = authHeader;\r\n return axios(config);\r\n}\r\n\r\nexport function unicodeBase64(str: string) {\r\n const encoded = encodeURIComponent(str);\r\n const equivString = encoded.replace(/%([0-9A-F]{2})/g, (match, p1) => String.fromCharCode(parseInt(`0x${p1}`, 16)));\r\n return btoa(equivString);\r\n}\r\n\r\nasync function dielApiPost(route: string, body?: any) {\r\n const token = localStorage.getItem('@diel:token');\r\n const prefsStorage = (localStorage.getItem('@diel:profile') && JSON.parse(localStorage.getItem('@diel:profile')!).prefs) || undefined;\r\n const formatLanguage = (prefsStorage && JSON.parse(prefsStorage).language) || 'pt';\r\n const authorization = (token && `Bearer ${token}`);\r\n apmElastic(route);\r\n\r\n const config: AxiosRequestConfig = {\r\n method: 'post',\r\n baseURL: __API__,\r\n url: route,\r\n data: body,\r\n headers: {\r\n 'Accept-Language': formatLanguage || undefined,\r\n },\r\n };\r\n if (authorization && authorization.length > 10) config.headers.Authorization = authorization;\r\n return axios(config);\r\n}\r\n\r\ntype FullApi = API_private & API_public & API_uploadService;\r\nexport type ApiResps = {\r\n [Route in keyof FullApi]: ThenArg>;\r\n};\r\nexport type ApiParams = {\r\n [Route in keyof FullApi]: Parameters[0];\r\n};\r\n\r\nexport function apiCall(key: Key, reqParams?: Parameters[0]): ReturnType {\r\n return dielApiPost(key, reqParams).then((r) => r.data) as any;\r\n}\r\n\r\nexport function apiCall2(route: Key, reqParams: Parameters[0], authToken: string): ReturnType {\r\n const config: AxiosRequestConfig = {\r\n method: 'post',\r\n baseURL: __API__,\r\n url: route,\r\n data: reqParams,\r\n headers: {},\r\n };\r\n if (authToken && authToken.length > 10) config.headers.Authorization = authToken;\r\n return axios(config).then((r) => r.data) as any;\r\n // .catch((e) => {\r\n // return checkAxiosError(e);\r\n // })\r\n}\r\n\r\nfunction toFormData(reqParams: { [name: string]: string|Blob|Array|Array|null|number|boolean }) {\r\n const formData = new FormData();\r\n for (const [propName, propVal] of Object.entries(reqParams)) {\r\n if (Array.isArray(propVal)) {\r\n for (const propValItem of propVal) {\r\n formData.set(propName, propValItem);\r\n }\r\n } else if (propVal != null) {\r\n if (typeof propVal === 'number' || typeof propVal === 'boolean') {\r\n formData.set(propName, propVal.toString());\r\n } else {\r\n formData.set(propName, propVal);\r\n }\r\n }\r\n }\r\n return formData;\r\n}\r\n\r\nexport const apiSpecial = {\r\n '/devs/upload-new-firmware-version': (reqParams: ApiParams['/devs/upload-new-firmware-version']&{ file: Blob }) => instance.post('/devs/upload-new-firmware-version', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-dacs-batch': (reqParams: ApiParams['/check-client-dacs-batch']&{ file: Blob }) => instance.post('/check-client-dacs-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/export-client-dacs-batch-input': (reqParams: ApiParams['/export-client-dacs-batch-input']) => instance.post('/export-client-dacs-batch-input', reqParams, { responseType: 'blob' }),\r\n '/check-client-duts-batch': (reqParams: ApiParams['/check-client-duts-batch']&{ file: Blob }) => instance.post('/check-client-duts-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-dmas-batch': (reqParams: ApiParams['/check-client-dmas-batch']&{ file: Blob }) => instance.post('/check-client-dmas-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-dams-batch': (reqParams: ApiParams['/check-client-dams-batch']&{ file: Blob }) => instance.post('/check-client-dams-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-supervisors-batch': (reqParams: ApiParams['/check-client-supervisors-batch']&{ file: Blob }) => instance.post('/check-client-supervisors-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-units-batch': (reqParams: ApiParams['/check-client-units-batch']&{ file: Blob }) => instance.post('/check-client-units-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-roomtypes-batch': (reqParams: ApiParams['/check-client-roomtypes-batch']&{ file: Blob }) => instance.post('/check-client-roomtypes-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-assets-batch': (reqParams: ApiParams['/check-client-assets-batch']&{ file: Blob }) => instance.post('/check-client-assets-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/check-client-unified-batch': (reqParams: ApiParams['/check-client-unified-batch']&{ file: Blob }) => instance.post('/check-client-unified-batch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/upload-dri-varscfg': (reqParams: ApiParams['/upload-dri-varscfg']&{ file: Blob }) => instance.post('/upload-dri-varscfg', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/dac/export-unit-report': (reqParams: ApiParams['/dac/export-unit-report']) => instance.post('/dac/export-unit-report', reqParams, { responseType: 'blob' }),\r\n '/dac/export-preventive-report': (reqParams: ApiParams['/dac/export-preventive-report']) => instance.post('/dac/export-preventive-report', reqParams, { responseType: 'blob' }),\r\n '/export-dacs-faults': (reqParams: ApiParams['/export-dacs-faults']) => instance.post('/export-dacs-faults', reqParams, { responseType: 'blob' }),\r\n '/devtools/export-dacs-info': (reqParams: ApiParams['/devtools/export-dacs-info']) => instance.post('/devtools/export-dacs-info', reqParams, { responseType: 'blob' }),\r\n '/devtools/export-duts-info': (reqParams: ApiParams['/devtools/export-duts-info']) => instance.post('/devtools/export-duts-info', reqParams, { responseType: 'blob' }),\r\n '/devtools/export-dams-info': (reqParams: ApiParams['/devtools/export-dams-info']) => instance.post('/devtools/export-dams-info', reqParams, { responseType: 'blob' }),\r\n '/analise-integrada-export': (reqParams: ApiParams['/analise-integrada-export']) => instance.post('/analise-integrada-export', reqParams, { responseType: 'blob' }),\r\n '/unit/export-real-time': (reqParams: ApiParams['/unit/export-real-time']) => instance.post('/unit/export-real-time', reqParams, { responseType: 'blob' }),\r\n '/unit/upload-ground-plan': (reqParams: ApiParams['/unit/upload-ground-plan']&{ photo: Blob }) => instance.post('/unit/upload-ground-plan', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/upload-service/upload-image': (reqParams: ApiParams['/upload-service/upload-image']&{ file: Blob }) => instance.post('/upload-service/upload-image', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n '/upload-service/upload-sketch': (reqParams: ApiParams['/upload-service/upload-sketch']&{ file: Blob }) => instance.post('/upload-service/upload-sketch', toFormData(reqParams), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data),\r\n};\r\n\r\ninterface ApiWithUpload {\r\n '/devs/upload-new-firmware-version': { file: Blob },\r\n '/check-client-dacs-batch': { file: Blob },\r\n '/check-client-duts-batch': { file: Blob },\r\n '/check-client-dmas-batch': { file: Blob },\r\n '/check-client-dams-batch': { file: Blob },\r\n '/check-client-dris-batch': { file: Blob },\r\n '/check-client-supervisors-batch': { file: Blob },\r\n '/check-client-units-batch': { file: Blob },\r\n '/check-client-roomtypes-batch': { file: Blob },\r\n '/check-client-assets-batch': { file: Blob },\r\n '/check-client-invoices-batch': { file: Blob },\r\n '/check-client-unified-batch': { file: Blob },\r\n '/upload-service/upload-sketch': { file: Blob },\r\n '/upload-dri-varscfg': { file: Blob|null },\r\n '/vt/set-vt-info': { PLANTABAIXA_IMG: string[], AUTORIZACAO_IMG: string[] },\r\n '/vt/update-vt-info': { PLANTABAIXA_IMG: string[], AUTORIZACAO_IMG: string[] },\r\n '/unit/upload-ground-plan': { photo: Blob },\r\n '/upload-service/upload-image': { file: Blob }\r\n}\r\nexport function apiCallFormData(key: Key, reqParams: Parameters[0], files: ApiWithUpload[Key]) {\r\n return instance.post(key, toFormData({ ...reqParams, ...files }), { headers: { 'content-type': 'multipart-form-data' } }).then((r) => r.data);\r\n}\r\n\r\ninterface ApiWithDownload {\r\n '/export-client-dacs-batch-input': true,\r\n '/dac/export-unit-report': true,\r\n '/dac/export-preventive-report': true,\r\n '/export-dacs-faults': true,\r\n '/devtools/export-dacs-info': true,\r\n '/devtools/export-duts-info': true,\r\n '/devtools/export-dams-info': true,\r\n '/analise-integrada-export': true,\r\n '/export-client-assets-batch-input': true,\r\n '/export-client-unified-batch-input': true,\r\n '/invoice/get-invoice-pdf': true,\r\n '/upload-service/download-sketches': true,\r\n '/devtools/brokers-monitor-disconnected-devs': true,\r\n '/devtools/export-duts-mean-temperatures': true,\r\n '/get-assets-sheet-manual': true,\r\n '/get-private-unit-report-file': true,\r\n '/devtools/export-duts-temperatures': true,\r\n '/devtools/export-waters-usages': true,\r\n '/unified/export-unified-example': true,\r\n '/unit/export-real-time': true,\r\n '/dri/export-chiller-alarms-hist': true,\r\n '/energy/export-energy-analysis-list': true,\r\n '/machines/export-machines-analysis-list': true,\r\n}\r\nexport function apiCallDownload(key: Key, reqParams: Parameters[0]) {\r\n return instance.post(key, reqParams, { responseType: 'blob' });\r\n}\r\n","import { createContext, useState } from 'react';\r\n\r\ntype MenuType = boolean;\r\n\r\ntype PropsMenuContext = {\r\n menuToogle: MenuType,\r\n setMenuToogle: React.Dispatch>;\r\n};\r\n\r\nconst DEFAULTVALUEMENU = {\r\n menuToogle: true,\r\n setMenuToogle: () => {},\r\n};\r\n\r\nconst MenuContext = createContext(DEFAULTVALUEMENU);\r\n\r\nexport default MenuContext;\r\n","type LogoIconProps = {\r\n};\r\n\r\nexport const LogoIcon = ({ ...props }: LogoIconProps): JSX.Element => \"Logo\";\r\n","type HamburgerIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const HamburgerIcon = ({ color, ...props }: HamburgerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '../styles/colors';\r\n\r\ntype SpeedometerIconProps = {\r\n percentage?: number;\r\n}\r\n\r\nexport const SpeedometerIcon = ({ percentage = 100, ...props }: SpeedometerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {percentage}\r\n {' '}\r\n %\r\n \r\n \r\n);\r\n\r\nconst Container = styled.div``;\r\n\r\nconst Chart = styled.div`\r\n width: 100%;\r\n margin-top: 50%;\r\n padding: 0 40px;\r\n position: relative;\r\n`;\r\n\r\nconst Svg = styled.svg`\r\n width: calc(100% - 80px);\r\n position: absolute;\r\n bottom: 0;\r\n`;\r\n\r\nconst Pointer = styled.span<{ percentage }>`\r\n width: 20%;\r\n height: 2px;\r\n position: absolute;\r\n left: calc(50% + 1px);\r\n bottom: 0;\r\n background-color: ${colors.DarkGrey};\r\n transform: rotate(${({ percentage }) => (percentage ? `-${percentage}` : 0)}deg);\r\n transform-origin: bottom left;\r\n &:before {\r\n width: 10px;\r\n height: 10px;\r\n background-color: ${colors.DarkGrey};\r\n content: '';\r\n display: block;\r\n border-radius: 50%;\r\n margin: 0;\r\n padding: 0;\r\n transform: translateY(-40%);\r\n }\r\n`;\r\n\r\nconst Percentage = styled.span<{ percentage }>`\r\n display: inline-block;\r\n text-align: center;\r\n width: 100%;\r\n font-size: 2em;\r\n font-weight: bold;\r\n color: ${({ percentage }) => (percentage <= 25 ? colors.Red : percentage <= 50 ? colors.Orange : percentage <= 75 ? colors.Yellow : colors.Green)};\r\n`;\r\n","type GlobeIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const GlobeIcon = ({ color }: GlobeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ListIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const ListIcon = ({ color }: ListIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type WarningIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const WarningIcon = ({ color, ...props }: WarningIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type GearIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const GearIcon = ({ color, ...props }: GearIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ExitIconProps = {\r\n colors?: string;\r\n}\r\n\r\nexport const ExitIcon = ({ colors }: ExitIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type BellIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const BellIcon = ({ color, ...props }: BellIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","interface ExpandIconProps extends React.SVGProps {\r\n color?: string;\r\n className?: string;\r\n style?: {};\r\n}\r\n\r\nexport const ExpandIcon = ({\r\n color, className, style, ...props\r\n}: ExpandIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","interface NewExpandIconProps extends React.SVGProps {\r\n color?: string;\r\n className?: string;\r\n style?: {};\r\n }\r\n\r\nexport const NewExpandIcon = ({\r\n color, className, style, ...props\r\n}: NewExpandIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n","type GraphIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const GraphIcon = ({ color, ...props }: GraphIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type NotepadIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const NotepadIcon = ({ color, ...props }: NotepadIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type PeopleIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PeopleIcon = ({ color, ...props }: PeopleIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type CheckboxIconProps = {\r\n color?: string;\r\n size?: number;\r\n}\r\n\r\nexport const CheckboxIcon = ({ color, size }: CheckboxIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type InfoIconProps = {\r\n color?: string;\r\n width?: string;\r\n};\r\n\r\nexport const InfoIcon = ({ width, color, ...props }: InfoIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type RealTimeIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const RealTimeIcon = ({ color, ...props }: RealTimeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype CronometerIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport const CronometerIcon = ({ color = colors.Grey400, width = '174px', ...props }: CronometerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ClockIconProps = {\r\n color?: string;\r\n size?: number;\r\n}\r\n\r\nexport const ClockIcon = ({ color, size = 20, ...props }: ClockIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype CO2IconProps = {\r\n width?: string;\r\n height?: string;\r\n color?: string;\r\n style?: {};\r\n}\r\n\r\nexport const CO2Icon = ({\r\n width = '24px',\r\n height = '24px',\r\n color = colors.Grey400,\r\n ...props\r\n}: CO2IconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const CO2IconV2 = ({\r\n width = '27px',\r\n height = '30px',\r\n color = '#464555',\r\n ...props\r\n}: CO2IconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type PerformanceIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PerformanceIcon = ({ color, ...props }: PerformanceIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type PaperIconProps = {\r\n}\r\n\r\nexport const PaperIcon = ({ ...props }: PaperIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype CalendarIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport const CalendarIcon = ({ color = colors.Grey400, width = '24px', ...props }: CalendarIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type CalendarSimpleIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport const CalendarSimpleIcon = ({ color, width = '18px', ...props }: CalendarSimpleIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type CalendarPlusIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const CalendarPlusIcon = ({ color }: CalendarPlusIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type ArrowBackIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ArrowBackIcon = ({ color }: ArrowBackIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ArrowNextIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ArrowNextIcon = ({ color }: ArrowNextIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type TimeIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const TimeIcon = ({ color, ...props }: TimeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype ArrowIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ArrowIcon = ({ color, ...props }: ArrowIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type AddImageIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const AddImageIcon = ({ color, ...props }: AddImageIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype TermometerIconProps = {\r\n variant?: string;\r\n width?: string;\r\n color?: string;\r\n children?: string;\r\n}\r\n\r\nexport const TermometerIcon = ({\r\n variant, width = '24px', color = colors.Grey400, ...props\r\n}: TermometerIconProps): JSX.Element => {\r\n switch (variant) {\r\n case 'primary':\r\n return (\r\n \r\n \r\n \r\n );\r\n default:\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n};\r\n","import { colors } from '../styles/colors';\r\n\r\ntype TermometerSubIconProps = {\r\n width?: string;\r\n color?: string;\r\n}\r\n\r\nexport const TermometerSubIcon = ({ width = '24px', color = colors.Grey400 }: TermometerSubIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype HumidityIconProps = {\r\n color?: string;\r\n variant?: string;\r\n width?: string;\r\n};\r\n\r\nexport const HumidityIcon = ({\r\n variant, width = '24px', color = colors.Grey400, ...props\r\n}: HumidityIconProps): JSX.Element => {\r\n switch (variant) {\r\n case 'primary':\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n default:\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n};\r\n","type PressureIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PressureIcon = ({ color, ...props }: PressureIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type SwitchIconProps = {\r\n}\r\n\r\nexport const SwitchIcon = ({ ...props }: SwitchIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from 'styles/colors';\r\n\r\ninterface CloseIconProps extends React.SVGProps {\r\n color?: string;\r\n size?: string;\r\n onClick?: () => void;\r\n}\r\n\r\nexport const CloseIcon = ({\r\n size = '10px', color = colors.Grey400, onClick, ...props\r\n}: CloseIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type DownloadImageIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const DownloadImageIcon = ({ color, ...props }: DownloadImageIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type TimerIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const TimerIcon = ({ color, ...props }: TimerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { useState, useEffect } from 'react';\r\n\r\nimport { RadialBar, RadialBarChart } from 'recharts';\r\n\r\nimport { colors } from '../styles/colors';\r\n\r\ntype RadialChartIconProps = {\r\n data?: any;\r\n fill?: string;\r\n}\r\n\r\ntype GraphData = {\r\n name: string;\r\n value: number;\r\n fill: string;\r\n};\r\n\r\nexport const RadialChartIcon = ({ data = 0, fill }: RadialChartIconProps): JSX.Element => {\r\n const [graphData, setGraphData] = useState([]);\r\n\r\n useEffect(() => {\r\n setGraphData([\r\n {\r\n name: '18-24',\r\n value: 24,\r\n fill: colors.White,\r\n },\r\n {\r\n name: '18-24',\r\n value: 24,\r\n fill: colors.White,\r\n },\r\n {\r\n name: '18-24',\r\n value: 24,\r\n fill: colors.White,\r\n },\r\n {\r\n name: 'unknow',\r\n value: data,\r\n fill: (fill || colors.BlueChart),\r\n },\r\n ]);\r\n }, [data]);\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n","type PowerIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PowerIcon = ({ color }: PowerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type KwhIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const KwhIcon = ({ color }: KwhIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype ButtonPowerIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport const ButtonPowerIcon = ({ width = '160px', color = colors.Grey400, ...props }: ButtonPowerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type SubCoolingIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const SubCoolingIcon = ({ color, ...props }: SubCoolingIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type SuperHeatingIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const SuperHeatingIcon = ({ color, ...props }: SuperHeatingIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type AlertIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const AlertIcon = ({ color, ...props }: AlertIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype AddIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const AddIcon = ({ color = colors.Grey400, ...props }: AddIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type HistoryIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const HistoryIcon = ({ color, ...props }: HistoryIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type DeleteOutlineIconProps = {\r\n colors?: string;\r\n size?: string;\r\n\r\n}\r\n\r\nexport const DeleteOutlineIcon = ({ colors, size, ...props }: DeleteOutlineIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type DeactivateUserIconProps = {\r\n colors?: string;\r\n size?: string;\r\n}\r\n\r\nexport const DeactivateUserIcon = ({ colors, size, ...props }: DeactivateUserIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n","type ReactivateUserIconProps = {\r\n colors?: string;\r\n size?: string;\r\n}\r\n\r\nexport const ReactivateUserIcon = ({ colors, size, ...props }: ReactivateUserIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype EditIconProps = {\r\n color?: string;\r\n variant?: string;\r\n width?: string;\r\n}\r\n\r\nexport const EditIcon = ({\r\n variant, width = '24px', color = colors.Grey400, ...props\r\n}: EditIconProps): JSX.Element => {\r\n switch (variant) {\r\n case 'secondary':\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n case 'note':\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n default:\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n};\r\n","type EnergyIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const EnergyIcon = ({ color, height, width }: EnergyIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype SaveIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport const SaveIcon = ({ width = '24px', color = colors.Grey400, ...props }: SaveIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\n\r\ntype HealthMeterIconProps = {\r\n level?: number;\r\n};\r\n\r\nexport const HealthMeterIcon = ({ level = 100, ...props }: HealthMeterIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n\r\n {level === 25 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {level === 50 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {level === 75 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {level === 100 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n 1\r\n \r\n \r\n \r\n \r\n 2\r\n \r\n \r\n \r\n \r\n 3\r\n \r\n \r\n \r\n \r\n 4\r\n \r\n \r\n \r\n);\r\n\r\n// rect style=\"fill:#00FF00;fill-opacity:1;stroke:none;\"\r\nconst RectOpaque = styled.rect`\r\n fill: ${({ color }) => color};\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n// rect style=\"fill:#000000;fill-opacity:0.3;stroke:none;\"\r\nconst RectShadow = styled.rect`\r\n fill: #000000;\r\n fill-opacity: 0.3;\r\n stroke: none;\r\n`;\r\n// text style=\"font-weight:normal;font-size:8px;font-family:sans-serif;fill:#000000;fill-opacity:1;stroke:none;\"\r\nconst Text = styled.text<{ bold }>`\r\n font-weight: ${({ bold }) => (bold ? 'bold' : 'normal')};\r\n font-size: 0.5em;\r\n font-family: 'Inter';\r\n fill: #000000;\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n// tspan style=\"stroke-width:0.3;\"\r\nconst TSpan = styled.tspan`\r\n stroke-width: 0.3;\r\n`;\r\n// path style=\"fill:#000000;fill-opacity:1;stroke:none;\"\r\nconst IconPath = styled.path`\r\n fill: #000000;\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\ntype HealthIndexRedIconProps = {\r\n}\r\n\r\nexport const HealthIndexRedIcon = ({ ...props }: HealthIndexRedIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst IconPath = styled.path`\r\n fill: #000000;\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\ntype HealthIndexOrangeIconProps = {\r\n}\r\n\r\nexport const HealthIndexOrangeIcon = ({ ...props }: HealthIndexOrangeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst IconPath = styled.path`\r\n fill: #000000;\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\ntype HealthIndexYellowIconProps = {\r\n}\r\n\r\nexport const HealthIndexYellowIcon = ({ ...props }: HealthIndexYellowIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst IconPath = styled.path`\r\n fill: #000000;\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\ntype HealthIndexGreenIconProps = {\r\n}\r\n\r\nexport const HealthIndexGreenIcon = ({ ...props }: HealthIndexGreenIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst IconPath = styled.path`\r\n fill: #000000;\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n","type HealthDisabledIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const HealthDisabledIcon = ({ color = '#4e4e4e' }: HealthDisabledIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\n\r\ntype MagnifyingIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const MagnifyingIcon = ({ color, ...props }: MagnifyingIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst CCircle = styled.circle`\r\n fill: none;\r\n fill-opacity: 1;\r\n stroke: ${({ color }) => color || '#000000'};\r\n stroke-width: 0.44591081;\r\n stroke-miterlimit: 4;\r\n stroke-dasharray: none;\r\n stroke-opacity: 1;\r\n`;\r\nconst CPath = styled.path`\r\n fill: none;\r\n stroke: ${({ color }) => color || '#000000'};\r\n stroke-width: 0.44591081;\r\n stroke-linecap: butt;\r\n stroke-linejoin: miter;\r\n stroke-miterlimit: 4;\r\n stroke-dasharray: none;\r\n stroke-opacity: 1;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\ntype ClientsIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ClientsIcon = ({ color, ...props }: ClientsIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nconst CPath = styled.path`\r\n fill: ${({ color }) => color || '#000000'};\r\n fill-opacity: 1;\r\n stroke: none;\r\n stroke-width: 0.0237061;\r\n stroke-miterlimit: 4;\r\n stroke-dasharray: none;\r\n stroke-opacity: 1;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\ntype AdminIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const AdminIcon = ({ color, ...props }: AdminIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nconst CPath = styled.path`\r\n fill: ${({ color }) => color || '#000000'};\r\n fill-opacity: 1;\r\n stroke: none;\r\n stroke-width: 0.0237061;\r\n stroke-miterlimit: 4;\r\n stroke-dasharray: none;\r\n stroke-opacity: 1;\r\n`;\r\n","type SearchIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const SearchIcon = ({ color = 'black', ...props }: SearchIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type SearchInputIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const SearchInputIcon = ({ color }: SearchInputIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\n\r\ntype ExportDocumentIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ExportDocumentIcon = ({ color, ...props }: ExportDocumentIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst IconPath = styled.path`\r\n fill-opacity: 1;\r\n stroke: none;\r\n`;\r\n","type OutOfSpecificationIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const OutOfSpecificationIcon = ({ color = 'white', ...props }: OutOfSpecificationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type UrgentMaintenanceIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const UrgentMaintenanceIcon = ({ color = 'white', ...props }: UrgentMaintenanceIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type OperatingCorrectlyIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const OperatingCorrectlyIcon = ({ color = 'white', ...props }: OperatingCorrectlyIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ImminentRiskIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ImminentRiskIcon = ({ color = 'white', ...props }: ImminentRiskIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type HighTemperatureIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const HighTemperatureIcon = ({ color = 'white', ...props }: HighTemperatureIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type LowTemperatureIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const LowTemperatureIcon = ({ color = 'white', ...props }: LowTemperatureIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type DottedLineIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const DottedLineIcon = ({ color = '#000', ...props }: DottedLineIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type LineIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const LineIcon = ({ color = '#000', ...props }: LineIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const DashedLineIcon = ({ color = '#000', ...props }: LineIconProps) : JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type UnknownHealthIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const UnknownHealthIcon = ({ color = '#fff', ...props }: UnknownHealthIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type UnknownHealthDarkIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const UnknownHealthDarkIcon = ({ color = '#fff', ...props }: UnknownHealthDarkIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\n\r\ntype AcceptIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const AcceptIcon = ({ color, ...props }: AcceptIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nconst CPath = styled.path`\r\n fill:${({ color }) => (color || '#000000')};\r\n fill-opacity:1;\r\n stroke:${({ color }) => (color || '#000000')};\r\n stroke-width:0.44591081;\r\n stroke-linecap:butt;\r\n stroke-linejoin:miter;\r\n stroke-miterlimit:4;\r\n stroke-dasharray:none;\r\n stroke-opacity:1;\r\n`;\r\n","export const ClientPanelIcon = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ExportWorksheetProps = {\r\n color?: string;\r\n }\r\n\r\nexport const ExportWorksheetIcon = ({ color, ...props }: ExportWorksheetProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ZoomOutProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ZoomOutIcon = ({ color, ...props }: ZoomOutProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const ExportPdfIcon = ({ ...props }): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ThunderIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const ThunderIcon = ({ color, ...props }: ThunderIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type OpenEyeIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const OpenEyeIcon = ({ color = '#202370', ...props }: OpenEyeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type CloseEyeIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const CloseEyeIcon = ({ color = '#202370', ...props }: CloseEyeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type NoSignalIconProps = {\r\n color?: string;\r\n colorSecundary?: string;\r\n width?: string;\r\n heigth?: string;\r\n}\r\n\r\nexport const NoSignalIcon = ({ color = '#E6E1E1', colorSecundary = '#8B8B8B', ...props }: NoSignalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type BadSignalIconProps = {\r\n color?: string;\r\n colorSecundary?: string;\r\n}\r\n\r\nexport const BadSignalIcon = ({ color = '#E6E1E1', colorSecundary = '#363BC4' }: BadSignalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type RegularSignalIconProps = {\r\n color?: string;\r\n colorSecundary?: string;\r\n}\r\n\r\nexport const RegularSignalIcon = ({ color = '#E6E1E1', colorSecundary = '#363BC4' }: RegularSignalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type GoodSignalIconProps = {\r\n color?: string;\r\n colorSecundary?: string;\r\n}\r\n\r\nexport const GoodSignalIcon = ({ color = '#E6E1E1', colorSecundary = '#363BC4' }: GoodSignalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type GreatSignalIconProps = {\r\n color?: string;\r\n width?: string;\r\n heigth?: string;\r\n}\r\n\r\nexport const GreatSignalIcon = ({ color = '#363BC4', ...props }: GreatSignalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type BoxIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const BoxIcon = ({ color = '#363BC4', ...props }: BoxIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ChipIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ChipIcon = ({ color = '#363BC4', ...props }: ChipIconProps): JSX.Element => (\r\n // eslint-disable-next-line react/no-unknown-property\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type LayersIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const LayersIcon = ({ color = '#363BC4', ...props }: LayersIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type WifiMiniOnIconProps = {\r\n color?: string;\r\n size?: number;\r\n}\r\n\r\nexport const WifiMiniOnIcon = ({ color = '#363BC4', size }: WifiMiniOnIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type WifiMiniOffIconProps = {\r\n color?: string;\r\n size?: number;\r\n}\r\n\r\nexport const WifiMiniOffIcon = ({ color = '#C6C6C6', size }: WifiMiniOffIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ArrowUpIconProps = {\r\n color?: string;\r\n style?: {};\r\n heigth?: string;\r\n width?: string;\r\n}\r\n\r\nexport const ArrowUpIcon = ({ color = '#000000', ...props }: ArrowUpIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const ArrowUpIconV2 = ({\r\n color = '#202370', width = '12', heigth = '11', ...props\r\n}: ArrowUpIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ArrowDownIconProps = {\r\n color?: string;\r\n style?: {};\r\n heigth?: string;\r\n width?: string;\r\n}\r\n\r\nexport const ArrowDownIcon = ({ color = '#000000', ...props }: ArrowDownIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const ArrowDownIconV2 = ({\r\n color = '#202370', width = '13', heigth = '12', ...props\r\n}: ArrowDownIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type unitIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const UnitIcon = ({ color = '#363BC4' }: unitIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type StatisticsIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const StatisticsIcon = ({ color = 'white' }: StatisticsIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type NewImminentRiskIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const NewImminentRiskIcon = ({ color = 'white' }: NewImminentRiskIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type TemperatureIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const TemperatureIcon = ({\r\n color = '#363BC4',\r\n}: TemperatureIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type LightProps = {\r\n heigth?: string\r\n width?: string\r\n color?: string;\r\n}\r\n\r\nexport const LightOnIcon = ({ heigth = '19', width = '19', color }: LightProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type LightProps = {\r\n heigth?: string\r\n width?: string\r\n color?: string;\r\n}\r\n\r\nexport const LightOffIcon = ({ heigth = '17', width = '15', color }: LightProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ExitButtonProps = {\r\n colors?: string;\r\n }\r\n\r\nexport const ExitButtonIcon = ({ colors = 'white' }: ExitButtonProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type WatchIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const WatchIcon = ({ color = '#878787' }: WatchIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type PenIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PenIcon = ({ color = 'black' }: PenIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type VAVOpenedIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const VAVOpenedIcon = ({ color, ...props }: VAVOpenedIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type VAVClosedIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const VAVClosedIcon = ({ color }: VAVClosedIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type LockIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const LockOpenedIcon = ({ color, ...props }: LockIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport const LockClosedIcon = ({ color, ...props }: LockIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type CoolIconProps = {\r\n color?: string;\r\n colorSecundary?: string;\r\n width?: string;\r\n height?: string\r\n}\r\n\r\nexport const CoolIcon = ({\r\n color = '#363BC4', width, height, colorSecundary = 'white',\r\n}: CoolIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type InformationIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const InformationIcon = ({ color = '#6A6A6A' }: InformationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type LocalOperationIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const LocalOperationIcon = ({ color = '#363BC4' }: LocalOperationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type RemoteAutoIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const RemoteAutoIcon = ({ color = '#363BC4' }: RemoteAutoIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type RemoteManualIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const RemoteManualIcon = ({ color = '#363BC4' }: RemoteManualIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype FanIconProps = {\r\n color?: string;\r\n width?: string;\r\n variant?: string;\r\n}\r\n\r\nexport const FanIcon = ({\r\n width = '24px', color = colors.Grey400, variant, ...props\r\n}: FanIconProps): JSX.Element => {\r\n switch (variant) {\r\n case 'primary':\r\n return (\r\n \r\n \r\n \r\n );\r\n default:\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n};\r\n","type BlockIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const BlockIcon = ({ color = '#363BC4' }: BlockIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type EvapIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const EvapReturnIcon = ({\r\n color = '#373737',\r\n ...props\r\n}: EvapIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport const EvapInsufIcon = ({\r\n color = '#373737',\r\n ...props\r\n}: EvapIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","export const ReferenceIcon = () => (\r\n \r\n \r\n \r\n \r\n);\r\n","type ComparativeIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const ComparativeIcon = ({ color = '#3F3F3F', width = '24', height = '14' }:ComparativeIconProps) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ThermostatIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ThermostatIcon = ({ color = '#363BC4' }: ThermostatIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type AddIconProps = {\r\n color?: string;\r\n width?: string;\r\n heigth?: string;\r\n}\r\n\r\nexport const AddPlusIcon = ({ ...props }: AddIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type NothingRegisteredProps = {\r\n color?: string;\r\n};\r\n\r\nexport const NothingRegistered = ({ color = '#818181' }: NothingRegisteredProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type DeleteSimpleIconProps = {\r\n color?: string;\r\n size?: number;\r\n}\r\n\r\nexport const DeleteSimpleIcon = ({ color = '#6A6A6A', size = 19, ...props }: DeleteSimpleIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type MonitoringIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const MonitoringIcon = ({ color = '#363BC4', ...props }: MonitoringIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type PortIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const PortIcon = ({\r\n color = '#363BC4', width = '14', height = '15', ...props\r\n}: PortIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n","type DatIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const DatIcon = ({ color = '#363BC4', ...props }: DatIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type CheckDeviceIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const CheckDeviceIcon = ({ color = '#363BC4', ...props }: CheckDeviceIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","export const PortEnableIcon = (): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","export const PortDisabledIcon = (): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type FilterIconProps = {\r\n color?: string;\r\n style?: {};\r\n heigth?: string;\r\n width?: string;\r\n}\r\n\r\nexport const FilterIcon = ({\r\n color = '#363BC4', width = '16', heigth = '15', ...props\r\n}: FilterIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ExportIconProps = {\r\n color?: string;\r\n style?: {};\r\n heigth?: string;\r\n width?: string;\r\n}\r\n\r\nexport const ExportIcon = ({\r\n color = '#363BC4', width = '19', heigth = '19', ...props\r\n}: ExportIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type BatteryIconProps = {\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const BatteryIcon = ({ width = '20', height = '12', ...props }: BatteryIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type EnergyIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const EnergyNobreakIcon = ({ color }: EnergyIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type EnergyIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const NobreakOffIcon = ({ color = '#363BC4' }: EnergyIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type BatteryFullIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const BatteryFullIcon = ({ color = '#363BC4', width = '19', height = '12' }: BatteryFullIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n","type BatteryMidIconIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const BatteryMidIcon = ({ color = '#363BC4' }: BatteryMidIconIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type BatteryLowIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const BatteryLowIcon = ({ color = '#363BC4' }: BatteryLowIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type EletricalNetworkIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const EletricNetworkIcon = ({ color = '#363BC4', ...props }: EletricalNetworkIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type EnergyIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const NobreakIcon = ({ color }: EnergyIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","export const CircleCheckGreen = (): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","export const CircleNotCheckRed = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const CircleWarningYellow = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const LuzAcesa = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const LuzApagada = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const CorrectIcon = (): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const IncorrectIcon = (): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","export function BluePaper() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default BluePaper;\r\n","type TPenBlue = {\r\n color?: string\r\n}\r\n\r\nexport function PenBlue({ color }: TPenBlue) {\r\n let ColorChose = '#363BC4';\r\n if (color) {\r\n ColorChose = color;\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default PenBlue;\r\n","type TTrashSample = {\r\n color?: string\r\n}\r\n\r\nexport function TrashSample({ color }: TTrashSample) {\r\n let ColorChose = '#363BC4';\r\n if (color) {\r\n ColorChose = color;\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default TrashSample;\r\n","type CompleteListProps = {\r\n color?: string;\r\n width?: string;\r\n};\r\n\r\nexport const CompleteListIcon = ({ width, color, ...props }: CompleteListProps): JSX.Element => (\r\n \r\n\r\n \r\n \r\n);\r\n","type CustomListProps = {\r\n color?: string;\r\n width?: string;\r\n};\r\n\r\nexport const CustomListIcon = ({ width, color, ...props }: CustomListProps): JSX.Element => (\r\n \r\n\r\n \r\n \r\n \r\n);\r\n","type ClockDurationIconProps = {\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const ClockDurationIcon = ({ width = '15', height = '15', ...props }: ClockDurationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ProgIconProps = {\r\n size?: string\r\n color?: string\r\n cursor?: string\r\n}\r\n\r\nexport const ProgIcon = ({ size = '19px', color = '#363BC4', ...props }: ProgIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type FoldedIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport function FoldedSheet({ color, width }: FoldedIconProps) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default FoldedSheet;\r\n","type LinkIconProps = {\r\n color?: string;\r\n height?: string;\r\n width?: string;\r\n };\r\n\r\nexport const LinkIcon = ({ color, height, width }: LinkIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type AlertSignalIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const AlertSignalIcon = ({ color }: AlertSignalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","export const SimcardIcon = ({ color, width, height }: { color?: string, width?: string, height?: string }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const PaperBloomIcon = () => (\r\n \r\n \r\n \r\n);\r\n","export const EditPenPaperIcon = () => (\r\n \r\n \r\n \r\n);\r\n","export const DeleteTrashIcon = () => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","interface CollapseIconProps extends React.SVGProps {\r\n color?: string;\r\n className?: string;\r\n style?: {};\r\n}\r\n\r\nexport const CollapseIcon = ({\r\n color, className, style, ...props\r\n}: CollapseIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","interface ExpandCardIconProps extends React.SVGProps {\r\n color?: string;\r\n className?: string;\r\n style?: {};\r\n}\r\n\r\nexport const ExpandCardIcon = ({\r\n color, className, style, ...props\r\n}: ExpandCardIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type EditIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const EditIconPaperPen = ({ color }: EditIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type PinIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PinIcon = ({ color = '#3F3F3F', ...props }: PinIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type PlusRoundedIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const PlusRoundedIcon = ({ color = '#363BC4', ...props }: PlusRoundedIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","interface TrashRoundedIconProps extends React.SVGProps {\r\n color?: string;\r\n handleClick?: () => void\r\n}\r\n\r\nexport const TrashRoundedIcon = ({ color = '#363BC4', handleClick, ...props }: TrashRoundedIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type EditPenIconProps = {\r\n color?: string;\r\n handleClick?: () => void\r\n}\r\n\r\nexport const EditPenIcon = ({ color = '#363BC4', handleClick, ...props }: EditPenIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type SeeEyeIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const SeeEyeIcon = ({ color = '#363BC4', ...props }: SeeEyeIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type ImageIconProps = {\r\n color?: string;\r\n};\r\n\r\nexport const ImageIcon = ({\r\n color = '#363BC4',\r\n ...props\r\n}: ImageIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type CheckIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const CheckIcon = ({ color = '#5AB365', ...props }: CheckIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ZoomMoreIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ZoomMoreIcon = ({ color = '#363BC4', ...props }: ZoomMoreIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ZoomLessIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ZoomLessIcon = ({ color = '#363BC4', ...props }: ZoomLessIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type ResetZoomIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ResetZoomIcon = ({ color = '#363BC4', ...props }: ResetZoomIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type OrderIconProps = {\r\n color?: string\r\n cursor?: string\r\n orderDesc?: boolean\r\n}\r\n\r\nexport const OrderIcon = ({ color = '#363BC4', ...props }: OrderIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type DatIconProps = {\r\n color?: string;\r\n }\r\n\r\nexport const DateIcon = ({ color = '#363BC4', ...props }: DatIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type FilterIconV2nProps = {\r\n color?: string;\r\n }\r\n\r\nexport const FilterIconV2 = ({ color }: FilterIconV2nProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type WarnIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n};\r\n\r\nexport const WarnIcon = ({\r\n color = '#F3B107', width = '15', height = '13', ...props\r\n}: WarnIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type EditNotificationIconProps = {\r\n width?: string;\r\n height?: string;\r\n heightSvg?: string;\r\n widthSvg?: string;\r\n}\r\n\r\nexport const EditNotificationIcon = ({\r\n width, height, heightSvg, widthSvg,\r\n}: EditNotificationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type DeleteNotificationIconProps = {\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const DeleteNotificationIcon = ({ width, height }: DeleteNotificationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type ClientNotificationIconProps = {\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const ClientNotificationIcon = ({ width, height }: ClientNotificationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type UnitNotificationIconProps = {\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const UnitNotificationIcon = ({ width, height }: UnitNotificationIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type ArrowLeftIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ArrowLeftIcon = ({ color = 'black', ...props }: ArrowLeftIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ArrowRightIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ArrowRightIcon = ({ color = '#B7B7B7', ...props }: ArrowRightIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","interface UrgentHealthIconProps {\r\n color?: string;\r\n height?: string;\r\n width?: string;\r\n}\r\n\r\nexport const UrgentHealthIcon = ({ color, height, width }: UrgentHealthIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","interface RiskHealthIconProps {\r\n color?: string;\r\n height?: string;\r\n width?: string;\r\n}\r\n\r\nexport const RiskHealthIcon = ({ color, height, width }: RiskHealthIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","interface OutHealthIconProps {\r\n color?: string;\r\n height?: string;\r\n width?: string;\r\n}\r\n\r\nexport const OutHealthIcon = ({ color, height, width }: OutHealthIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","export const CelciusLogo = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const Seta = ({ color }: { color?: string }) => (\r\n \r\n \r\n \r\n);\r\n","type ChillerIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ChillerIcon = ({ color = '#363BC4', ...props }: ChillerIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const CelciusColorLogo = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export function SpringerLogo({ color }: { color?: string }) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","export function MachineIcon() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","export function MonitoramentoIcon() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","export function ArrowDownAnalisys() {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","export function NoWifi({ width, height }: { width?: string, height?: string }) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","export function CompDisabled({ width, height }: { width?: string, height?: string }) {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","export function OnIcon({ color }: { color?: string }) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","export function FanBlueIcon({ width, height }: { width?: string, height?: string }) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","export function ColumnIcon({ width, height }: { width?: string, height?: string }) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n","interface ITimezone {\r\n color?: string,\r\n width?: string,\r\n height?: string\r\n}\r\n\r\nexport const TimezoneIcon = ({ color, width, height }: ITimezone): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","interface ITimezoneDST {\r\n color?: string,\r\n width?: string,\r\n height?: string\r\n}\r\n\r\nexport const TimezoneDSTIcon = ({ color, width, height }: ITimezoneDST): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","type ThermostatCircleIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ThermostatCircleIcon = ({ color = '#363BC4' }: ThermostatCircleIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","type ThermostatSquareIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ThermostatSquareIcon = ({ color = '#363BC4' }: ThermostatSquareIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n\r\n);\r\n","export function Compressor({ width, height }: { width?: string, height?: string }) {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","type InfoLinkIconProps = {\r\n width?: string;\r\n};\r\n\r\nexport const InfoLinkIcon = ({ width }: InfoLinkIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type WaterOutletProps = {\r\n width?: string;\r\n height?: string;\r\n color?: string;\r\n}\r\n\r\nexport const WaterOutlet = ({ width = '7px', height = '12px', color = '#363BC4' }: WaterOutletProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","type WaterInletProps = {\r\n width?: string;\r\n height?: string;\r\n color?: string;\r\n}\r\n\r\nexport const WaterInlet = ({ width = '7px', height = '12px', color = '#363BC4' }: WaterInletProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const OpenTab = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const IconHIndex2 = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","export const IconHIndex4 = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","export const IconHIndex25 = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","export const IconHIndex50 = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const IconHIndex75 = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","export const IconHIndex100 = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\ntype TrashIconProps = {\r\n color?: string;\r\n width?: string;\r\n}\r\n\r\nexport const TrashIcon = ({ width = '24px', color = colors.Grey400, ...props }: TrashIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n\r\nexport const SmallTrashIcon = ({\r\n width = '20px', color = 'black', ...props\r\n}: TrashIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const CardUntitled = styled.div`\r\npadding: 32px;\r\nmargin-top: 24px;\r\nborder-radius: 16px;\r\nbox-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const Wrapper = styled.div<{overflowHidden: boolean}>(({ overflowHidden }) => `\r\nwidth: 100%;\r\nheight: 100%;\r\nborder: 1px solid #D7D7D7;\r\nborder-radius: 4px;\r\nbackground-color: ${colors.White};\r\n${overflowHidden && 'overflow: hidden'};\r\n`);\r\nexport const Title = styled.div`\r\ndisplay: flex;\r\nborder-radius: 4px 4px 0 0;\r\njustify-content: space-between;\r\nalign-items: center;\r\npadding: 5px 12px;\r\nbackground-color: ${colors.BlueSecondary};\r\n`;\r\nexport const ChildrenWrapper = styled.div`\r\npadding: 20px 29px;\r\nmin-height: 0;\r\nborder-radius: 0 0 4px 4px;\r\nposition: relative;\r\n@media (min-width: 992px) {\r\n padding: 16px 30px;\r\n}\r\n`;\r\nexport const ChildrenWrapperNoPadding = styled.div`\r\nmin-height: 0;\r\nborder-radius: 0 0 4px 4px;\r\nbackground-color: ${colors.White};\r\n`;\r\nexport const Text = styled.span`\r\nfont-weight: bold;\r\nfont-size: 1.125em;\r\ncolor: ${colors.White};\r\n`;\r\n\r\nexport const ChildrenWrapperNoPaddingRelative = styled.div`\r\nmin-height: 0;\r\nborder-radius: 0 0 4px 4px;\r\nposition: relative;\r\nbackground-color: ${colors.White};\r\n`;\r\n","import {\r\n Wrapper,\r\n Title,\r\n ChildrenWrapper,\r\n ChildrenWrapperNoPadding,\r\n ChildrenWrapperNoPaddingRelative,\r\n Text,\r\n} from './styles';\r\n\r\ntype CardProps = {\r\n title?: string;\r\n children: JSX.Element | (JSX.Element[]) | null | string;\r\n IconsContainer?: React.ComponentType;\r\n noPadding?: boolean;\r\n noPaddingRelative?: boolean;\r\n overflowHidden?: boolean;\r\n wrapperStyle?: React.CSSProperties;\r\n}\r\n\r\nexport const Card = ({\r\n title = '', children, IconsContainer, noPadding = false, noPaddingRelative = false, overflowHidden = false, wrapperStyle = {},\r\n}: CardProps): JSX.Element => (\r\n \r\n \r\n <Text>{title || ''}</Text>\r\n {IconsContainer && <IconsContainer />}\r\n \r\n {noPadding && !noPaddingRelative && (\r\n \r\n {' '}\r\n {children}\r\n \r\n )}\r\n {!noPadding && !noPaddingRelative && (\r\n \r\n {' '}\r\n {children}\r\n \r\n )}\r\n {noPaddingRelative && (\r\n \r\n {' '}\r\n {children}\r\n \r\n )}\r\n \r\n);\r\n","import { Route, Redirect } from 'react-router-dom';\r\n\r\nexport const Route404 = ({ ...params }): JSX.Element => {\r\n const isLogged = !!localStorage.getItem('@diel:token');\r\n return (\r\n (isLogged ? : )}\r\n />\r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { Button } from '~/components';\r\nimport { colors } from '~/styles/colors';\r\nimport { CloseIcon } from '~/icons';\r\n\r\nexport const SimpleButton = styled(Button)`\r\n width: initial;\r\n padding: 8px 15px;\r\n margin: 7px 7px;\r\n`;\r\n\r\nexport const ContainerInputs = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n max-width: 42rem;\r\n justify-content: center`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n position: relative;\r\n`;\r\n\r\nexport const LoaderContainer = styled.div`\r\n position: absolute;\r\n left: 50%;\r\n top: 50%;\r\n transform: translate3d(-50%, -50%, 0);\r\n width: 100%;\r\n background-color: rgba(255, 255, 255, 0.6);\r\n height: 100%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n`;\r\n\r\nexport const Scroll = styled.div`\r\n overflow-x: auto;\r\n`;\r\n\r\nexport const Container = styled.table`\r\n width: 100%;\r\n`;\r\n\r\nexport const Head = styled.thead`\r\n text-align: left;\r\n`;\r\n\r\nexport const Body = styled.tbody`\r\n overflow-x: scroll;\r\n`;\r\n\r\nexport const HeaderCell = styled.th`\r\n padding: 0 10px;\r\n color: ${colors.DarkGrey};\r\n background-color: ${colors.White};\r\n border-bottom: solid 1px ${colors.Grey};\r\n`;\r\n\r\nexport const HeaderTitle = styled.div`\r\n align-items: center;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: flex-start;\r\n position: relative;\r\n font-size: 0.75em;\r\n`;\r\n\r\nexport const Data = styled.td`\r\n color: ${colors.DarkGrey};\r\n min-width: 100px;\r\n padding: 0 10px;\r\n`;\r\n\r\nexport const Row = styled.tr`\r\n height: 50px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\n\r\nexport const SelectButton = styled.span`\r\n padding: 5px 10px;\r\n border-radius: 3px;\r\n border: 1px solid ${colors.DarkGrey};\r\n cursor: pointer;\r\n`;\r\n\r\nexport const CloseModal = styled(CloseIcon)`\r\n width: 0.8rem;\r\n height: 0.8rem;\r\n cursor: pointer;\r\n`;\r\n\r\nexport const ModalTitle = styled.h3`\r\n color: ${colors.Blue500};\r\n`;\r\n\r\nexport const ModalText = styled.p`\r\n font-size: 1em;\r\n color: ${colors.Grey400};\r\n width: 95%;\r\n margin-bottom: 35px;\r\n`;\r\n\r\nexport const ModalCancel = styled.p`\r\n font-size: 1em;\r\n color: ${colors.Blue300};\r\n text-decoration: underline;\r\n width: 100%;\r\n text-align: center;\r\n margin-top: 8px;\r\n &:hover {\r\n color: ${colors.Blue400};\r\n }\r\n`;\r\n","import { useState, useEffect } from 'react';\r\n\r\nimport i18n from '~/i18n';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { withRouter } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n Input, Button, SearchBox, Loader, InputSearch, NewTable, ModalWindow,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DeleteOutlineIcon } from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { AxiosError } from 'axios';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n ContainerInputs,\r\n SelectButton,\r\n SimpleButton,\r\n CloseModal,\r\n ModalTitle,\r\n ModalCancel,\r\n} from './styles';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nasync function deleteCity(rowData) {\r\n if (!window.confirm(t('desejaExcluirCidade', { cityName: rowData.name }))) return;\r\n try {\r\n await apiCall('/dac/remove-city', { cityId: rowData.id });\r\n window.location.reload();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n}\r\n\r\nconst AdmCities = () => {\r\n const [state, render, setState] = useStateVar({\r\n loading: false, // setLoading\r\n cities: [] as {\r\n id: string\r\n state: string\r\n name: string\r\n lat: string\r\n lon: string\r\n }[], // set_cities\r\n citiesFiltered: [] as {\r\n id: string\r\n state: string\r\n name: string\r\n lat: string\r\n lon: string\r\n }[], // set_cities\r\n searchResults: [] as {\r\n ROW_ID?: string\r\n COUNTRY_NAME: string\r\n STATE_ID: string\r\n CITY_ID: string\r\n NAME: string\r\n LAT: number\r\n LONG: number\r\n }[], // set_searchResults\r\n globalCitiesSearchText: '', // set_searchText\r\n values: { // set_values\r\n CITY_ID: '',\r\n NAME: '',\r\n COUNTRY_NAME: '',\r\n COUNTRY_LAT: '',\r\n COUNTRY_LON: '',\r\n STATE_CODE: '',\r\n STATE_NAME: '',\r\n LAT: '',\r\n LON: '',\r\n STATE_LAT: '',\r\n STATE_LON: '',\r\n },\r\n searchState: '',\r\n });\r\n const [showModal, setShowModal] = useState(false);\r\n\r\n function setValue(newValues: Partial<(typeof state)['values']>) {\r\n Object.assign(state.values, newValues);\r\n render();\r\n }\r\n\r\n async function submitNewCity() {\r\n try {\r\n setState({ loading: true });\r\n await apiCall('/dac/add-new-city', state.values);\r\n window.location.reload();\r\n } catch (err) {\r\n console.log(err);\r\n const error = err as AxiosError;\r\n if (error.response?.status !== 500) {\r\n toast.error(error.response?.data);\r\n } else {\r\n toast.error(t('houveErro'));\r\n }\r\n } finally {\r\n setState({ loading: false });\r\n }\r\n }\r\n\r\n function fillCityInfo(row) {\r\n state.values.CITY_ID = row.CITY_ID;\r\n state.values.STATE_NAME = row.STATE_NAME;\r\n state.values.STATE_CODE = row.STATE_CODE;\r\n state.values.COUNTRY_NAME = row.COUNTRY_NAME;\r\n state.values.COUNTRY_LAT = row.COUNTRY_LAT;\r\n state.values.COUNTRY_LON = row.COUNTRY_LON;\r\n state.values.LAT = row.CITY_LAT ? String(row.CITY_LAT) : '';\r\n state.values.LON = row.CITY_LON ? String(row.CITY_LON) : '';\r\n state.values.STATE_LAT = row.STATE_LAT ? String(row.STATE_LAT) : '';\r\n state.values.STATE_LON = row.STATE_LON ? String(row.STATE_LON) : '';\r\n state.values.NAME = row.CITY_NAME && row.CITY_NAME.length > 1 ? row.CITY_NAME[0] + row.CITY_NAME.substr(1).toLowerCase() : row.CITY_NAME;\r\n render();\r\n }\r\n\r\n function searchCities() {\r\n (async function () {\r\n if (!state.globalCitiesSearchText) {\r\n setState({ searchResults: [] });\r\n return;\r\n }\r\n try {\r\n const { list } = await apiCall('/dac/search-city-info', { id: state.globalCitiesSearchText });\r\n state.searchResults = list;\r\n for (const row of state.searchResults) {\r\n row.ROW_ID = `${row.LAT}x${row.LONG}`;\r\n }\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }());\r\n }\r\n\r\n useEffect(searchCities, [state.globalCitiesSearchText]);\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n const response = await apiCall('/dac/get-cities-list', {});\r\n setState({ cities: response.list, citiesFiltered: response.list });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }());\r\n }, []);\r\n\r\n const columns = [\r\n {\r\n name: 'country',\r\n value: t('pais'),\r\n accessor: 'country',\r\n },\r\n {\r\n name: 'state',\r\n value: t('estado'),\r\n accessor: 'state',\r\n },\r\n {\r\n name: 'id',\r\n value: 'ID',\r\n accessor: 'id',\r\n },\r\n {\r\n name: 'name',\r\n value: t('nome'),\r\n accessor: 'name',\r\n },\r\n {\r\n name: 'lat',\r\n value: t('latitude'),\r\n accessor: 'lat',\r\n },\r\n {\r\n name: 'lon',\r\n value: t('longitude'),\r\n accessor: 'lon',\r\n },\r\n {\r\n name: 'actions',\r\n value: t('acoes'),\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n
\r\n deleteCity(props)} colors={undefined} />\r\n
\r\n ),\r\n },\r\n ];\r\n\r\n const columnsSearch = [\r\n {\r\n name: 'country',\r\n value: t('pais'),\r\n accessor: 'COUNTRY_NAME',\r\n },\r\n {\r\n name: 'state',\r\n value: t('estado'),\r\n accessor: 'STATE_CODE',\r\n },\r\n {\r\n name: 'id',\r\n value: 'ID',\r\n accessor: 'CITY_ID',\r\n },\r\n {\r\n name: 'name',\r\n value: t('nome'),\r\n accessor: 'CITY_NAME',\r\n },\r\n {\r\n name: 'lat',\r\n value: 'Lat.',\r\n accessor: 'CITY_LAT',\r\n },\r\n {\r\n name: 'lon',\r\n value: 'Long.',\r\n accessor: 'CITY_LON',\r\n },\r\n {\r\n name: 'actions',\r\n value: t('acoes'),\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n
\r\n fillCityInfo(props)}>{t('selecionar').toLocaleUpperCase()}\r\n
\r\n ),\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaCidades')}\r\n \r\n \r\n {state.loading && }\r\n {(!state.loading) && (\r\n
\r\n
\r\n setShowModal(true)}>{t('botaoAdicionarCidade')}]}\r\n />\r\n
\r\n )}\r\n {\r\n showModal && (\r\n {\r\n setShowModal(false);\r\n setState({\r\n searchResults: [],\r\n values: {\r\n CITY_ID: '',\r\n NAME: '',\r\n COUNTRY_NAME: '',\r\n COUNTRY_LAT: '',\r\n COUNTRY_LON: '',\r\n STATE_NAME: '',\r\n STATE_CODE: '',\r\n LAT: '',\r\n LON: '',\r\n STATE_LAT: '',\r\n STATE_LON: '',\r\n },\r\n globalCitiesSearchText: '',\r\n });\r\n }}\r\n >\r\n \r\n \r\n {t('botaoAdicionarCidade')}\r\n {\r\n setShowModal(false);\r\n setState({\r\n searchResults: [],\r\n values: {\r\n CITY_ID: '',\r\n NAME: '',\r\n COUNTRY_NAME: '',\r\n COUNTRY_LAT: '',\r\n COUNTRY_LON: '',\r\n STATE_NAME: '',\r\n STATE_CODE: '',\r\n LAT: '',\r\n LON: '',\r\n STATE_LAT: '',\r\n STATE_LON: '',\r\n },\r\n globalCitiesSearchText: '',\r\n });\r\n }}\r\n />\r\n \r\n \r\n \r\n
\r\n setValue({ NAME: e.target.value })}\r\n />\r\n setValue({ CITY_ID: e.target.value })}\r\n />\r\n
\r\n
\r\n setValue({ LAT: e.target.value })}\r\n />\r\n setValue({ LON: e.target.value })}\r\n />\r\n
\r\n
\r\n { setValue({ STATE_NAME: e.target.value }); }}\r\n />\r\n {\r\n if (e.target.value.length <= 3) {\r\n setValue({ STATE_CODE: e.target.value });\r\n }\r\n }}\r\n />\r\n
\r\n
\r\n setValue({ STATE_LAT: e.target.value })}\r\n />\r\n setValue({ STATE_LON: e.target.value })}\r\n />\r\n
\r\n setValue({ COUNTRY_NAME: e.target.value })}\r\n />\r\n
\r\n setValue({ COUNTRY_LAT: e.target.value })}\r\n />\r\n setValue({ COUNTRY_LON: e.target.value })}\r\n />\r\n
\r\n \r\n {\r\n setShowModal(false);\r\n setState({\r\n searchResults: [],\r\n values: {\r\n CITY_ID: '',\r\n NAME: '',\r\n COUNTRY_NAME: '',\r\n COUNTRY_LAT: '',\r\n COUNTRY_LON: '',\r\n STATE_CODE: '',\r\n STATE_NAME: '',\r\n LAT: '',\r\n LON: '',\r\n STATE_LAT: '',\r\n STATE_LON: '',\r\n },\r\n globalCitiesSearchText: '',\r\n });\r\n }}\r\n >\r\n {t('botaoCancelar')}\r\n \r\n
\r\n
\r\n \r\n {\r\n setState({ globalCitiesSearchText: e.target.value });\r\n }}\r\n />\r\n {state.searchResults.length > 0 && (\r\n \r\n )}\r\n \r\n
\r\n \r\n )\r\n }\r\n \r\n );\r\n};\r\n\r\nconst AdmCitiesWrapper = withRouter(AdmCities);\r\n\r\nexport { AdmCitiesWrapper as AdmCities };\r\nexport default withTransaction('AdmCities', 'component')(AdmCities);\r\n","export default __webpack_public_path__ + \"static/media/status_late.cfb3f088.svg\";","export default __webpack_public_path__ + \"static/media/status_offline.9f1cc089.svg\";","export default __webpack_public_path__ + \"static/media/status_online.c8e37bb1.svg\";","export function filterByColumns(array: S[], columns: (keyof S)[], searchText: string): S[] {\r\n searchText = searchText.toLowerCase();\r\n if (!searchText) return [...array];\r\n const searchTerms = searchText.split('/').filter((x) => !!x);\r\n return array.filter((item) => {\r\n for (const searchTerm of searchTerms) {\r\n const found = columns.some((colName) => {\r\n if (item[colName] && (item[colName] as unknown as string).toLowerCase && (item[colName] as unknown as string).toLowerCase().includes(searchTerm)) {\r\n return true;\r\n }\r\n });\r\n if (!found) return false;\r\n }\r\n return true;\r\n });\r\n}\r\n\r\nexport function orderByColumns(array: any[], column: string, descending: boolean) {\r\n function sorter(a: any, b: any) {\r\n if ((a[column]) && (!b[column])) return -1;\r\n if ((!a[column]) && (b[column])) return 1;\r\n if (a[column] > b[column]) return 1;\r\n if (a[column] < b[column]) return -1;\r\n return 0;\r\n }\r\n function revSorter(a: any, b: any) {\r\n return -sorter(a, b);\r\n }\r\n return array.sort(descending ? revSorter : sorter);\r\n}\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const StyledSpan = styled.span`\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const ModalContent = styled.div`\r\n width: 400px;\r\n`;\r\n\r\nexport const FileInput = styled.label`\r\n border-radius: 32px;\r\n border-style: solid;\r\n border-width: 1px;\r\n cursor: pointer;\r\n font-size: 1em;\r\n font-family: 'Open Sans', sans-serif;\r\n font-weight: bold;\r\n outline: none;\r\n padding: 8px 0px;\r\n text-decoration: none;\r\n text-transform: uppercase;\r\n transition: all 0.2s ease-in-out;\r\n width: 100%;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n background-color: ${colors.Pink200};\r\n border-color: ${colors.Pink200};\r\n color: ${colors.White};\r\n transition: all 0.3s ease-in-out;\r\n &:hover {\r\n background-color: ${colors.Pink300};\r\n border-color: ${colors.Pink300};\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.35), 0px 11px 15px rgba(85, 97, 115, 0.25);\r\n }\r\n`;\r\n\r\nexport const FwVersTable = styled.div<{ limitSize }>(({ limitSize }) => `\r\n display: flex;\r\n flex-wrap: nowrap;\r\n margin-top: 30px;\r\n border-left: 1px solid lightgrey;\r\n ${limitSize ? 'max-height: 240px; overflow-y: hidden;' : ''}\r\n`);\r\nexport const ViewMoreArrow = styled.p<{ viewMore }>(\r\n ({ viewMore }) => `\r\n span {\r\n font-size: 1em;\r\n color: ${colors.Grey400};\r\n }\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n svg {\r\n margin-left: 12px;\r\n transition: all 0.2s;\r\n transform: rotate(${viewMore ? '-180' : '0'}deg);\r\n }\r\n`,\r\n);\r\nexport const TableNew = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n\r\nexport const TableNew2 = styled.table`\r\n white-space: nowrap;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n & tbody {\r\n border: 1px solid ${colors.Grey};\r\n & tr {\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n }\r\n & td {\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n }\r\n }\r\n & thead {\r\n & tr {\r\n height: 40px;\r\n display: table-row;\r\n }\r\n & th {\r\n flex: 1;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0 10px;\r\n word-break: normal;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n }\r\n }\r\n`;\r\n\r\n/*\r\nTODO:\r\nCriar um outro modal que permite escolher uma versão de firmware para cada hw_rev e mostra uma tabela com os DEVs, a versão atual, a versão enviada e o resultado da requisição.\r\n*/\r\n","import { useState, useEffect, useMemo } from 'react';\r\n\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport IconLate from 'assets/img/status_late.svg';\r\nimport IconOffline from 'assets/img/status_offline.svg';\r\nimport IconOnline from 'assets/img/status_online.svg';\r\nimport {\r\n Button,\r\n InputSearch,\r\n Loader,\r\n Checkbox,\r\n Select,\r\n RadioButton,\r\n ModalWindow,\r\n} from 'components';\r\nimport { filterByColumns, orderByColumns } from 'helpers/filterByColumns';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { ArrowIcon } from 'icons';\r\nimport { apiCall, apiCallFormData } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n StyledLink,\r\n ModalContent,\r\n FileInput,\r\n FwVersTable,\r\n ViewMoreArrow,\r\n TableNew2,\r\n} from './styles';\r\nimport { useHistory } from 'react-router-dom';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\ninterface FirmwareRow {\r\n path: string\r\n date: string\r\n fwType: 'prod' | 'test'\r\n fwFamily: string // dac4, dut3, dal0...\r\n fwVers: string\r\n versionNumber?: {\r\n vMajor: number\r\n vMinor: number\r\n vPatch: number\r\n vExtra?: string\r\n }\r\n fDate?: string\r\n fPath?: string\r\n}\r\n\r\ninterface DeviceRow {\r\n DEV_ID: string\r\n STATE_ID: string\r\n CITY_NAME: string\r\n UNIT_NAME: string\r\n UNIT_ID: number\r\n status: string\r\n machineName: string\r\n CLIENT_NAME: string\r\n OTAPROCSTATUS: string\r\n FWVERSSTATUS: string\r\n\r\n devIdFamily?: string\r\n firmwareText?: string\r\n checked?: boolean\r\n rowKey?: string\r\n last_update_result?: string\r\n\r\n col_firmware_s?: string\r\n\r\n fwInfo?: {\r\n hardware_type: string\r\n firmware_version: string\r\n last_update_result?: string\r\n }\r\n versionNumber?: {\r\n vMajor: number\r\n vMinor: number\r\n vPatch: number\r\n vExtra?: string\r\n }\r\n}\r\n\r\nconst exceptionsToRule = ['dac2', 'dac3', 'dac4', 'dut', 'dut3', 'dam2', 'dam3', 'dal'];\r\n\r\nexport interface PageState {\r\n allDevs: DeviceRow[],\r\n filteredMachines: DeviceRow[],\r\n isLoading: boolean,\r\n waitingRequest: boolean,\r\n csvData: {}[],\r\n searchState: string\r\n fwVersionsAllTypes: FirmwareRow[],\r\n fwVersionsRows: FirmwareRow[],\r\n fwCols: string[],\r\n fwFolders: string[],\r\n limitItems: number\r\n lastScrollTop: number\r\n openModal: null|'ModalAddFirmware'|'ModalSendOtaUpdate'|'ModalUpdateResult'|'ModalReqVersResult'|'ModalReqCertResult'\r\n modalReqUpdate: {\r\n fw: {\r\n [hwRev: string]: FirmwareRow|null\r\n }\r\n sending: boolean\r\n },\r\n modalUpdateResult: {\r\n devs: { devId: string, fwPath: string, status?: string }[]\r\n },\r\n modalReqVersResult: {\r\n devs: { devId: string }[]\r\n },\r\n modalReqCertResult: {\r\n devs: { devId: string }[]\r\n },\r\n fwStageFilter: 'prod'|'test'\r\n renderUpper: () => void\r\n renderDevsTable: () => void\r\n}\r\n\r\nexport const AdmFirmware = () => {\r\n const history = useHistory();\r\n const [state, render, setState] = useStateVar(() => {\r\n const { preFiltered } = queryString.parse(history.location.search);\r\n const state: PageState = {\r\n allDevs: [],\r\n filteredMachines: [],\r\n isLoading: true,\r\n waitingRequest: false,\r\n csvData: [],\r\n searchState: (preFiltered || '').toString(),\r\n fwVersionsAllTypes: [],\r\n fwVersionsRows: [],\r\n fwCols: [],\r\n fwFolders: [],\r\n limitItems: 50,\r\n lastScrollTop: 0,\r\n openModal: null,\r\n modalReqUpdate: {\r\n fw: {},\r\n sending: false,\r\n },\r\n modalUpdateResult: {\r\n devs: [],\r\n },\r\n modalReqVersResult: {\r\n devs: [],\r\n },\r\n modalReqCertResult: {\r\n devs: [],\r\n },\r\n fwStageFilter: 'prod',\r\n renderUpper: () => {}, // will be replaced\r\n renderDevsTable: () => {}, // will be replaced\r\n };\r\n\r\n return state;\r\n });\r\n\r\n async function handleGetData() {\r\n try {\r\n setState({ isLoading: true });\r\n\r\n const [\r\n { list: _fwsList, fwHwRevs: fwFamilies },\r\n { list: devsList },\r\n ] = await Promise.all([\r\n apiCall('/devs/get-firmware-versions-v2', {}),\r\n apiCall('/devs/get-devs-fwinfo-v2', {}),\r\n ]);\r\n const fwsList: FirmwareRow[] = _fwsList;\r\n\r\n const fwColumns: string[] = (fwFamilies || []).map((x) => x.toUpperCase());\r\n for (const fw of fwsList) {\r\n fw.fDate = new Date(new Date(fw.date).getTime() - 3 * 60 * 60 * 1000).toISOString().substr(0, 19).replace('T', ' ');\r\n if (!fw.fwFamily) continue;\r\n const fCol = fw.fwFamily.toUpperCase();\r\n if (!fwColumns.includes(fCol)) {\r\n fwColumns.push(fCol);\r\n }\r\n fw.fPath = `[${fw.fwFamily}] ${fw.fwVers}`;\r\n }\r\n state.fwCols = fwColumns.sort();\r\n state.fwVersionsAllTypes = fwsList;\r\n state.fwVersionsRows = state.fwVersionsAllTypes.filter((item) => (!state.fwStageFilter) || (item.fwType === state.fwStageFilter));\r\n\r\n const fwFolders: { [type: string]: true } = {};\r\n for (const fwFolder of fwColumns) {\r\n fwFolders[fwFolder.toLowerCase()] = true;\r\n }\r\n\r\n const allDevs: DeviceRow[] = devsList;\r\n\r\n for (const dev of allDevs) {\r\n const { fwInfo, versionNumber } = dev;\r\n\r\n if (fwInfo && fwInfo.hardware_type) {\r\n fwFolders[fwInfo.hardware_type] = true;\r\n }\r\n const devIdFamily = dev.DEV_ID.substring(0, 4).toLowerCase();\r\n if ((devIdFamily.length === 4) && (devIdFamily[0] === 'd') && (devIdFamily[3] >= '0') && (devIdFamily[3] <= '9')) {\r\n dev.devIdFamily = devIdFamily;\r\n }\r\n\r\n dev.firmwareText = fwInfo ? `[${fwInfo.hardware_type}] ${fwInfo.firmware_version}` : '-';\r\n dev.checked = false;\r\n dev.rowKey = dev.DEV_ID;\r\n dev.last_update_result = fwInfo && fwInfo.last_update_result;\r\n\r\n dev.col_firmware_s = fwInfo && `[${fwInfo.hardware_type}] ${fwInfo.firmware_version}`;\r\n dev.versionNumber = versionNumber || { vMajor: 0, vMinor: 0, vPatch: 0 };\r\n }\r\n state.allDevs = allDevs;\r\n state.fwFolders = Object.keys(fwFolders);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível carregar os dados das máquinas');\r\n }\r\n state.isLoading = false;\r\n render();\r\n }\r\n\r\n useEffect(() => {\r\n handleGetData();\r\n }, []);\r\n\r\n useEffect(() => {\r\n function onScroll() {\r\n if (!state.limitItems) return;\r\n if (state.limitItems >= state.filteredMachines.length) return;\r\n const scrollBottom = document.documentElement.scrollTop + window.innerHeight;\r\n const distanceToEnd = document.documentElement.scrollHeight - scrollBottom;\r\n if (!(distanceToEnd < 500)) return;\r\n if (state.lastScrollTop >= document.documentElement.scrollTop) return;\r\n setState({\r\n limitItems: state.limitItems + 200,\r\n lastScrollTop: document.documentElement.scrollTop,\r\n });\r\n }\r\n window.addEventListener('scroll', onScroll);\r\n return () => window.removeEventListener('scroll', onScroll);\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Máquinas\r\n \r\n \r\n {state.isLoading && }\r\n {(!state.isLoading) && (\r\n <>\r\n {/* Parte superior da página e modais (tudo que não é a tabela de dispositivos). Renderização mais leve. */}\r\n \r\n\r\n {/* Tabela dos dispositivos. Renderização pesada. */}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nfunction UpperControls(props: { pageState: PageState }) {\r\n const [profile] = useState(getUserProfile);\r\n const { pageState: state } = props;\r\n const [localState, renderUpper, setLocalState] = useStateVar({\r\n viewMoreFws: false,\r\n debounceTimer: null as null|NodeJS.Timeout,\r\n availableActions: [\r\n { label: 'Enviar Atualização', value: 'update' },\r\n { label: 'Solicitar Versão', value: 'fw-info' },\r\n { label: 'Solicitar Certificado', value: 'cert-info' },\r\n ],\r\n firmwareFamilies: {} as {\r\n // Tem que ter todos os hardwares que serão usados como título das colunas\r\n // Embaixo vai ter uma coluna por major\r\n [fwColName: string]: {\r\n [vMajorName: string]: {\r\n fwVers: string\r\n fPath: string\r\n fDate: string\r\n }[]\r\n }\r\n },\r\n });\r\n state.renderUpper = renderUpper;\r\n\r\n const moreThanTen = state.fwVersionsRows.length > 10;\r\n const checkedDevs = state.filteredMachines.filter((dev) => dev.checked);\r\n\r\n function wantUploadFirmware() {\r\n state.openModal = 'ModalAddFirmware';\r\n state.renderUpper();\r\n }\r\n\r\n function debounceRenderTable() {\r\n if (localState.debounceTimer) clearTimeout(localState.debounceTimer);\r\n localState.debounceTimer = setTimeout(() => state.renderDevsTable(), 200);\r\n }\r\n\r\n async function applyActionToSelected(action: string) {\r\n if (state.waitingRequest) return;\r\n if (!checkedDevs.length) return;\r\n if (action === 'update') {\r\n wantUpate();\r\n }\r\n if (action === 'fw-info') {\r\n wantGetFwInfo();\r\n }\r\n if (action === 'cert-info') {\r\n wantGetCertInfo();\r\n }\r\n }\r\n\r\n function wantUpate() {\r\n if (!checkedDevs.length) return;\r\n state.openModal = 'ModalSendOtaUpdate';\r\n state.renderUpper();\r\n }\r\n\r\n function wantGetFwInfo() {\r\n state.modalReqVersResult.devs = checkedDevs.map((dev) => ({\r\n devId: dev.DEV_ID,\r\n }));\r\n state.openModal = 'ModalReqVersResult';\r\n state.renderUpper();\r\n }\r\n\r\n function wantGetCertInfo() {\r\n state.modalReqCertResult.devs = checkedDevs.map((dev) => ({\r\n devId: dev.DEV_ID,\r\n }));\r\n state.openModal = 'ModalReqCertResult';\r\n state.renderUpper();\r\n }\r\n\r\n useEffect(() => {\r\n state.fwVersionsRows = state.fwVersionsAllTypes.filter((item) => (!state.fwStageFilter) || (item.fwType === state.fwStageFilter));\r\n renderUpper();\r\n }, [state.fwStageFilter]);\r\n\r\n useEffect(() => {\r\n localState.firmwareFamilies = {};\r\n for (const fwRow of state.fwVersionsRows) {\r\n const fwColName = fwRow.fwFamily.toUpperCase();\r\n const vMajorName = fwRow.versionNumber!.vMajor.toString();\r\n if (!localState.firmwareFamilies[fwColName]) {\r\n localState.firmwareFamilies[fwColName] = {};\r\n }\r\n const hwFirmwares = localState.firmwareFamilies[fwColName];\r\n if (!hwFirmwares[vMajorName]) {\r\n hwFirmwares[vMajorName] = [];\r\n }\r\n hwFirmwares[vMajorName].push({\r\n fwVers: fwRow.fwVers,\r\n fPath: fwRow.fPath!,\r\n fDate: fwRow.fDate!,\r\n });\r\n }\r\n renderUpper();\r\n }, [state.fwVersionsRows]);\r\n\r\n return (\r\n <>\r\n {/* Tabela de versões de firmware existentes, botão de upload e explicação das colunas */}\r\n \r\n {profile.permissions.isAdminSistema && (\r\n
\r\n
\r\n \r\n
\r\n
\r\n { state.fwStageFilter = 'prod'; renderUpper(); }} label=\"Produção\" />\r\n
\r\n
\r\n { state.fwStageFilter = 'test'; renderUpper(); }} label=\"Teste\" />\r\n
\r\n
\r\n )}\r\n
\r\n \r\n {state.fwCols.map((fwColName) => (\r\n \r\n
{fwColName}
\r\n
\r\n {Object.keys(localState.firmwareFamilies[fwColName] || {}).map((vMajorName) => (\r\n
\r\n {localState.firmwareFamilies[fwColName][vMajorName].map((fw) => (\r\n
\r\n
\r\n {fw.fwVers}\r\n
\r\n \r\n \r\n {fw.fDate}\r\n \r\n \r\n
\r\n ))}\r\n
\r\n ))}\r\n
\r\n
\r\n ))}\r\n \r\n {(!state.fwVersionsRows.length)\r\n &&
(nenhum)
}\r\n {(moreThanTen)\r\n && (\r\n \r\n \r\n setLocalState({ viewMoreFws: !localState.viewMoreFws })}>\r\n {localState.viewMoreFws ? 'Ver menos' : 'Ver mais'}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n
\r\n

\r\n A coluna "Status OTA" é uma mensagem que o firmware envia pelo broker sobre o processo de OTA dele.\r\n

\r\n

\r\n A coluna "Versão Correta" indica se o dispositivo está com a versão de firmware esperada.\r\n
\r\n Se um usuário vai nessa tela e solicita OTA para a versão 2_0_15, por exemplo, e o dispositivo informa que está nessa mesma versão, a coluna vai mostrar "OK".\r\n
\r\n Se o dispositivo não estiver na versão solicitada, vai aparecer "DIFF".\r\n
\r\n Se não for uma versão limpa, vai aparecer "DIRTY".\r\n
\r\n E qualquer outro caso, por exemplo quando se exclui um firmware do sistema, vai aparecer "ERR".\r\n

\r\n

\r\n A coluna "Comando OTA" se refere ao estado da estratégia do DAP de reenvio de comandos de OTA. As etapas são:\r\n
\r\n 0 - Ninguém solicitou OTA ainda;\r\n
\r\n 1 - Algum usuário solicitou OTA mas o dispositivo ainda não recebeu o comando;\r\n
\r\n 2 - O dispositivo recebeu o comando mas ainda não baixou o arquivo;\r\n
\r\n 3 - O dispositivo já solicitou o arquivo mas não está na versão certa ainda;\r\n
\r\n 4 - O dispositivo já solicitou o arquivo e já está na versão certa;\r\n
\r\n

\r\n

\r\n A estratégia de reenvios só opera nos estados 1 e 2 e só para versões "limpas", incluindo as de teste.\r\n

\r\n

\r\n Se o dispositivo já começou a fazer o download e por algum motivo ainda não está na versão certa (estado 3) a estratégia não tenta novamente pelo risco de fazer o dispositivo entrar em um loop infinito de ficar baixando firmware.\r\n

\r\n

\r\n Hoje esta tela mostra a versão atual do firmware mas não mostra a versão que o usuário solicitou para enviar.\r\n

\r\n
\r\n
\r\n\r\n {/* Campo de busca/filtro e combo-box de ações para os dispositivos selecionados */}\r\n \r\n \r\n \r\n \r\n \r\n { state.searchState = e.target.value; state.limitItems = 200; state.lastScrollTop = 0; state.renderUpper(); debounceRenderTable(); }}\r\n />\r\n \r\n \r\n \r\n {(checkedDevs.length > 0) && (\r\n state.waitingRequest\r\n ? \r\n : (\r\n applyActionToSelected(opt.value)}\r\n />\r\n )\r\n )}\r\n \r\n
 
\r\n
\r\n
\r\n
\r\n\r\n {/* Modais */}\r\n {(state.openModal === 'ModalAddFirmware') && }\r\n {(state.openModal === 'ModalSendOtaUpdate') && }\r\n {(state.openModal === 'ModalUpdateResult') && }\r\n {(state.openModal === 'ModalReqVersResult') && }\r\n {(state.openModal === 'ModalReqCertResult') && }\r\n \r\n );\r\n}\r\n\r\nfunction DevsTable(props: { pageState: PageState }) {\r\n const { pageState: state } = props;\r\n const [localState, renderDevsTable, setLocalState] = useStateVar({\r\n sortBy: 'CLIENT_NAME',\r\n });\r\n state.renderDevsTable = renderDevsTable;\r\n\r\n state.filteredMachines = useMemo(() => {\r\n const columns: (keyof typeof state.allDevs[0])[] = ['STATE_ID', 'CITY_NAME', 'UNIT_NAME', 'CLIENT_NAME', 'machineName', 'DEV_ID', 'firmwareText', 'status', 'last_update_result', 'OTAPROCSTATUS', 'FWVERSSTATUS'];\r\n const filtered = filterByColumns(state.allDevs, columns, state.searchState);\r\n if (localState.sortBy) {\r\n orderByColumns(filtered, localState.sortBy, false);\r\n }\r\n return filtered;\r\n }, [state.searchState, state.allDevs]);\r\n\r\n function toggleCheckAll() {\r\n const checkState = !(state.filteredMachines[0] && state.filteredMachines[0].checked);\r\n for (const dev of state.filteredMachines) {\r\n dev.checked = checkState;\r\n }\r\n state.renderUpper();\r\n state.renderDevsTable();\r\n }\r\n\r\n function setSorting(column: string) {\r\n setLocalState({ sortBy: column });\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n setSorting('STATE_ID')}>Estado\r\n setSorting('CITY_NAME')}>Cidade\r\n setSorting('CLIENT_NAME')}>Cliente\r\n setSorting('UNIT_NAME')}>Unidade\r\n setSorting('machineName')}>Grupo\r\n setSorting('DEV_ID')}>Dispositivo\r\n setSorting('status')}>Status\r\n setSorting('col_firmware_s')}>Firmware\r\n setSorting('last_update_result')}>Status OTA\r\n setSorting('FWVERSSTATUS')}>Versão Correta\r\n setSorting('OTAPROCSTATUS')}>Comando OTA\r\n \r\n \r\n \r\n \r\n {state.filteredMachines.filter((x, i) => (i < state.limitItems)).map((dev) => (\r\n \r\n {dev.STATE_ID || '-'}\r\n {dev.CITY_NAME || '-'}\r\n {dev.CLIENT_NAME || '-'}\r\n {dev.UNIT_ID ? {dev.UNIT_NAME} : '-'}\r\n {dev.machineName || '-'}\r\n {dev.DEV_ID}\r\n {(dev.status === 'ONLINE') ? : (dev.status === 'OFFLINE') ? : (dev.status === 'LATE') ? : (dev.status || '-')}\r\n {(dev.col_firmware_s || '-')}\r\n {dev.last_update_result || '-'}\r\n {dev.FWVERSSTATUS || '-'}\r\n {dev.OTAPROCSTATUS || '-'}\r\n \r\n \r\n ))}\r\n \r\n \r\n {(state.limitItems < state.filteredMachines.length)\r\n && (\r\n

\r\n Carregando mais itens... (\r\n {state.limitItems}\r\n {' '}\r\n /\r\n {' '}\r\n {state.filteredMachines.length}\r\n )\r\n

\r\n )}\r\n
\r\n
\r\n );\r\n}\r\n\r\nfunction RowCheckbox(props: { dev: DeviceRow, pageState: PageState }) {\r\n const { dev, pageState: state } = props;\r\n const [, renderCheckbox] = useState({});\r\n return { dev.checked = !dev.checked; renderCheckbox({}); state.renderUpper(); }} />;\r\n}\r\n\r\nfunction ModalAddFirmware(props: { pageState: PageState }) {\r\n const pageState = props.pageState;\r\n const [state, render, setState] = useStateVar({\r\n selectedFwFolder: null as null|string,\r\n file: null as null|(Blob&{name: string}),\r\n sending: false,\r\n });\r\n async function confirmAddFirmware() {\r\n if (!state.file) {\r\n toast.error('Selecione um arquivo');\r\n return;\r\n }\r\n if (!state.selectedFwFolder) {\r\n toast.error('Selecione uma pasta');\r\n return;\r\n }\r\n if (!pageState.fwStageFilter) {\r\n toast.error('Não foi possível identificar o tipo de firmware');\r\n return;\r\n }\r\n try {\r\n setState({ sending: true });\r\n await apiCallFormData('/devs/upload-new-firmware-version', {\r\n fileName: state.file.name,\r\n fwStage: pageState.fwStageFilter,\r\n fwFamily: state.selectedFwFolder,\r\n }, {\r\n file: state.file,\r\n });\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.sending = false;\r\n render();\r\n }\r\n\r\n return (\r\n { pageState.openModal = null; pageState.renderUpper(); }}>\r\n \r\n
\r\n { state.selectedFwFolder = item; render(); }}\r\n notNull\r\n />\r\n
\r\n
 
\r\n
\r\n {(state.file && state.file.name) || ''}\r\n { state.file = e.target.files[0]; render(); }}>\r\n \r\n Selecionar Arquivo\r\n \r\n \r\n \r\n
\r\n
 
\r\n
\r\n {state.sending\r\n ? \r\n : }\r\n { pageState.openModal = null; pageState.renderUpper(); }}\r\n variant=\"grey\"\r\n >\r\n Cancelar\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nfunction ModalSendOtaUpdate(props: { fwVersionsRows: FirmwareRow[], checkedDevs: DeviceRow[], pageState: PageState }) {\r\n const { fwVersionsRows, checkedDevs, pageState } = props;\r\n\r\n const [state, render, setState] = useStateVar({\r\n devIdFamilies: {} as {\r\n [devIdFamily: string]: {\r\n options: FirmwareRow[]\r\n selected: FirmwareRow\r\n }\r\n },\r\n invalidDevices: {} as {\r\n [devId: string]: string,\r\n },\r\n sending: false,\r\n });\r\n\r\n useEffect(() => {\r\n for (const dev of checkedDevs) {\r\n if ((!dev.devIdFamily) || (!dev.versionNumber)) {\r\n state.invalidDevices[dev.DEV_ID] = 'Firmware não identificado';\r\n continue;\r\n }\r\n if (!state.devIdFamilies[dev.devIdFamily]) {\r\n const compatibleVersions = pageState.fwVersionsRows.filter((fw) => {\r\n const { canUpdate } = checkCanUpdate(dev, fw);\r\n return !!canUpdate;\r\n });\r\n if (compatibleVersions.length === 0) {\r\n state.invalidDevices[dev.DEV_ID] = 'Nenhuma versão compatível';\r\n continue;\r\n }\r\n state.devIdFamilies[dev.devIdFamily] = {\r\n options: compatibleVersions,\r\n selected: compatibleVersions[0],\r\n };\r\n }\r\n const { canUpdate } = checkCanUpdate(dev, state.devIdFamilies[dev.devIdFamily].selected);\r\n if (!canUpdate) {\r\n state.invalidDevices[dev.DEV_ID] = 'Versão não compatível';\r\n continue;\r\n }\r\n }\r\n render();\r\n }, []);\r\n\r\n async function confirmRequestUpdate() {\r\n const devs: typeof pageState.modalUpdateResult.devs = [];\r\n\r\n const msgCantUpdate: string[] = [];\r\n\r\n for (const dev of checkedDevs) {\r\n if (state.invalidDevices[dev.DEV_ID]) continue;\r\n const fw = state.devIdFamilies[dev.devIdFamily!].selected;\r\n const { canUpdate, outMsg } = checkCanUpdate(dev, fw);\r\n if (!canUpdate) {\r\n msgCantUpdate.push(outMsg);\r\n continue;\r\n }\r\n devs.push({\r\n devId: dev.DEV_ID,\r\n fwPath: fw.path,\r\n });\r\n }\r\n\r\n if (msgCantUpdate.length > 0) {\r\n toast.error(`Os seguintes dispositivos não podem ser alterados para outra família: \\n${msgCantUpdate.join(';\\n')}`);\r\n return;\r\n }\r\n\r\n if (!window.confirm(`Deseja atualizar o firmware de ${devs.length} equipamento(s)?`)) {\r\n return;\r\n }\r\n\r\n pageState.modalUpdateResult.devs = devs;\r\n pageState.openModal = 'ModalUpdateResult';\r\n pageState.renderUpper();\r\n }\r\n\r\n return (\r\n { pageState.openModal = null; pageState.renderUpper(); }}>\r\n \r\n {Object.keys(state.devIdFamilies).map((devIdFamily) => (\r\n
\r\n { state.devIdFamilies[devIdFamily].selected = item; render(); }}\r\n notNull\r\n />\r\n
\r\n ))}\r\n
\r\n {checkedDevs.map((dev) => (\r\n
\r\n [\r\n {dev.devIdFamily}\r\n ] \r\n {dev.DEV_ID}\r\n
\r\n ))}\r\n
\r\n
 
\r\n
\r\n {state.sending\r\n ? \r\n : }\r\n { pageState.openModal = null; pageState.renderUpper(); }}\r\n variant=\"grey\"\r\n >\r\n Cancelar\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nfunction ModalUpdateResult(props: { pageState: PageState }) {\r\n const state = props.pageState;\r\n const [, render_modal] = useStateVar(() => {\r\n sendAll();\r\n return {};\r\n });\r\n\r\n function sendAll(isRetry?: boolean) {\r\n for (const dev of state.modalUpdateResult.devs) {\r\n sendCommand(dev, isRetry);\r\n }\r\n }\r\n\r\n function sendCommand(dev, isRetry) {\r\n if (dev.status === 'Comando enviado!') return;\r\n dev.status = 'Aguardando resposta...';\r\n Promise.resolve().then(async () => {\r\n try {\r\n if (dev.fwPath) {\r\n const pars = { devId: dev.devId, path: dev.fwPath, waitLonger: isRetry };\r\n await apiCall('/dev/command-ota', pars);\r\n dev.status = 'Comando enviado!';\r\n } else {\r\n dev.status = 'Não foi possível identificar o firmware!';\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n dev.status = 'Houve erro';\r\n }\r\n render_modal();\r\n });\r\n }\r\n\r\n const thereWasErr = state.modalUpdateResult.devs.some((dev) => (dev.status === 'Houve erro'));\r\n\r\n return (\r\n { state.openModal = null; state.renderUpper(); }}>\r\n \r\n
\r\n {state.modalUpdateResult.devs.map((dev) => (\r\n
\r\n {dev.devId}\r\n :\r\n {' '}\r\n {dev.status}\r\n
\r\n ))}\r\n
\r\n
\r\n {(thereWasErr)\r\n && (\r\n \r\n )}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nfunction ModalReqVersResult(props: { pageState: PageState }) {\r\n const state = props.pageState;\r\n type SubProps = {\r\n dev: {\r\n devId: string\r\n status?: string\r\n }\r\n };\r\n function DevLine(subProps: SubProps) {\r\n const { dev } = subProps;\r\n const [, renderLine] = useState(() => {\r\n dev.status = 'Aguardando resposta...';\r\n return {};\r\n });\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n try {\r\n const pars = { devId: dev.devId };\r\n await apiCall('/dev/request-firmware-info', pars);\r\n dev.status = 'Recebido!';\r\n } catch (err) {\r\n console.log(err);\r\n dev.status = 'Houve erro';\r\n }\r\n renderLine({});\r\n });\r\n }, []);\r\n return (\r\n
\r\n {dev.devId}\r\n :\r\n {' '}\r\n {dev.status}\r\n
\r\n );\r\n }\r\n\r\n return (\r\n { state.openModal = null; state.renderUpper(); }}>\r\n \r\n
\r\n {state.modalReqVersResult.devs.map((dev) => )}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nfunction ModalReqCertResult(props: { pageState: PageState }) {\r\n const state = props.pageState;\r\n function DevLine({ dev }) {\r\n const [, renderLine] = useState(() => {\r\n dev.status = 'Aguardando resposta...';\r\n return {};\r\n });\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n try {\r\n await apiCall('/request-dev-cert-check', { devId: dev.devId });\r\n dev.status = 'Recebido!';\r\n } catch (err) {\r\n console.log(err);\r\n dev.status = 'Houve erro';\r\n }\r\n renderLine({});\r\n });\r\n }, []);\r\n return (\r\n
\r\n {dev.devId}\r\n :\r\n {' '}\r\n {dev.status}\r\n
\r\n );\r\n }\r\n\r\n return (\r\n { state.openModal = null; state.renderUpper(); }}>\r\n \r\n
\r\n {state.modalReqCertResult.devs.map((dev) => )}\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\n// Não é permitido atualização de versão de uma major para outra; tanto downgrade quanto upgrade (ex: 2.x.x para 3.x.x ou vice versa)\r\n// com exceção para famílias 1 e 2 dos dispositivos 'dac2', 'dac3', 'dac4', 'dut', 'dut3', 'dam2' e 'dam3' (ex: 1.x.x para a 2.x.x)\r\n// e dispositivos sem versão (tageados), em que nesse caso podem atualizar apenas para versão que seja refatorada\r\nfunction checkCanUpdate(currFwInfo: DeviceRow, wantedFwInfo: FirmwareRow) {\r\n const devId = currFwInfo.DEV_ID;\r\n\r\n // Se não soubermos a versão atual do dispositivo, não permite atualizar\r\n const currMajor = currFwInfo.versionNumber?.vMajor || null;\r\n const newMajor = wantedFwInfo.versionNumber?.vMajor || null;\r\n if ((!currMajor) || (!currFwInfo.fwInfo)) {\r\n return { canUpdate: false, outMsg: `${devId} com versão desconhecida` };\r\n }\r\n\r\n // Restrição pelo DEVID e coluna. Dispositivos só devem ser capazes de atualizar suas versões de acordo com a coluna certa com as iniciais igual ao DEVID.\r\n // \"fwFamily\" é a pasta (do S3) que contém o arquivo de firmware e é também o nome da coluna na tela de firmwares.\r\n if ((wantedFwInfo.fwFamily.length === 4) && devId.toLowerCase().startsWith(wantedFwInfo.fwFamily.toLowerCase())) {\r\n // OK, caso padrão\r\n } else if ((wantedFwInfo.fwFamily === 'dut') && ['DUT0', 'DUT1', 'DUT2'].includes(devId.toUpperCase().substring(0, 4))) {\r\n // OK, dispositivos com o DEVID iniciado em DUT0, DUT1 e DUT2 podem receber firmware da coluna DUT\r\n } else if ((wantedFwInfo.fwFamily === 'dma0') && ['DMA1'].includes(devId.toUpperCase().substring(0, 4))) {\r\n // OK, dispositivos com DEVID iniciado em DMA1 podem receber versões de firmware da coluna DMA0\r\n } else {\r\n return { canUpdate: false, outMsg: `Não pode atualizar ${devId} pois a pasta do firmware (${wantedFwInfo.path}) não corresponde ao dev_id` };\r\n }\r\n\r\n // Legado tem formato: \"1_3_4\"\r\n // Refatorado tem formato: \"v3.2.0\", \"v4.1.1-1-g21fcc67-dirty\", \"d80e580-dirty\", \"085427f\"\r\n // Observei que atualmente versão major 1 e 2 é sempre legado, refatorado é a partir de versão major 3.\r\n const newIsLegacy = wantedFwInfo.fwVers.includes('_');\r\n const newIsRefactor = !newIsLegacy;\r\n\r\n // Não é permitido atualização de versão de uma major para outra; tanto downgrade quanto upgrade (ex: 2.x.x para 3.x.x ou vice versa)\r\n // Compatibilidade de Versões de major. Versões de firmware na linha 2_x_x, v3.x.x ou v4.x.x só podem receber versões da mesma linha.\r\n if (newMajor === currMajor) {\r\n // OK, caso padrão\r\n } else if ((currMajor === 1) && (newMajor === 2) && ['DAC2', 'DAC3', 'DAC4'].includes(devId.toUpperCase().substring(0, 4))) {\r\n // OK, dispositivos com o DEVID iniciado em DAC2, DAC3 e DAC4 E versão de firmware 1_x_x podem receber versões de firmware na linha 2_x_x\r\n // Antes esta regra se aplicava também a: 'dut', 'dut3', 'dam2', 'dam3'\r\n } else if ((!currMajor) && newIsRefactor) {\r\n // OK, dispositivos sem versão (tageados) podem atualizar apenas para versão que seja refatorada\r\n } else {\r\n return { canUpdate: false, outMsg: `Não pode atualizar ${devId} mudando da versão ${currFwInfo.fwInfo?.firmware_version} para ${wantedFwInfo.fwVers}` };\r\n }\r\n\r\n return { canUpdate: true, outMsg: '' };\r\n}\r\n\r\nexport default withTransaction('AdmFirmware', 'component')(AdmFirmware);\r\n","import { useState, useMemo } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n Button, Input, Select, Checkbox,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nexport const FormEditGroup = (props: {\r\n groupInfo?: {\r\n GROUP_ID: number\r\n GROUP_NAME: string\r\n UNIT_ID: number\r\n DEV_AUT: string\r\n DUT_ID: string\r\n }\r\n unitInfo?: {\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n }\r\n unitsList?: {\r\n UNIT_ID: number\r\n }[]\r\n dutsList?: {\r\n ROOM_NAME: string\r\n DEV_ID: string\r\n UNIT_ID: number\r\n roomDutLabel?: string\r\n automationEnabled: boolean\r\n }[]\r\n damsList?: {\r\n DAM_ID: string\r\n UNIT_ID: number\r\n }[]\r\n dacsList?: {\r\n DAC_ID: string\r\n GROUP_ID: number\r\n automationEnabled: boolean\r\n }[]\r\n clientId: number\r\n onSuccess: (result: { item: {}, action: string, changedAssociation: boolean }) => void\r\n onCancel: () => void\r\n}): JSX.Element => {\r\n const {\r\n groupInfo, unitInfo, unitsList, dutsList, damsList, dacsList, clientId, onSuccess, onCancel,\r\n } = props;\r\n const [state, render, setState] = useStateVar(() => {\r\n if (dutsList) {\r\n for (const dutItem of dutsList) {\r\n dutItem.roomDutLabel = dutItem.ROOM_NAME ? `${dutItem.ROOM_NAME} (${dutItem.DEV_ID})` : dutItem.DEV_ID;\r\n }\r\n }\r\n\r\n const state = {\r\n submitting: false,\r\n formData: {\r\n GROUP_ID: (groupInfo && groupInfo.GROUP_ID) || null,\r\n GROUP_NAME: (groupInfo && groupInfo.GROUP_NAME) || '',\r\n unit: unitInfo || (unitsList && groupInfo && groupInfo.UNIT_ID && unitsList.find((unit) => unit.UNIT_ID === groupInfo.UNIT_ID)) || null,\r\n selectedDacs: {} as { [dacId: string]: boolean },\r\n autom: (groupInfo && groupInfo.DEV_AUT && damsList && damsList.find((item) => item.DAM_ID === groupInfo.DEV_AUT)) || null,\r\n dut: (groupInfo && groupInfo.DUT_ID && dutsList && dutsList.find((item) => item.DEV_ID === groupInfo.DUT_ID)) || null,\r\n associatedDacs: null as null|({ DAC_ID: string, automationEnabled: boolean }[]),\r\n },\r\n warningMessage: null as null|string,\r\n };\r\n\r\n const { formData } = state;\r\n if (formData.GROUP_ID && dacsList) {\r\n formData.associatedDacs = dacsList.filter((dac) => dac.GROUP_ID === formData.GROUP_ID);\r\n for (const dac of dacsList) {\r\n formData.selectedDacs[dac.DAC_ID] = (dac.GROUP_ID != null && dac.GROUP_ID === formData.GROUP_ID);\r\n }\r\n }\r\n\r\n return state;\r\n });\r\n\r\n const { formData } = state;\r\n function set_formData(v) { state.formData = v; render(); }\r\n const isEdit = !!formData.GROUP_ID;\r\n\r\n const filteredDuts = useMemo(() => {\r\n if (!dutsList) return [];\r\n if (!formData.unit) return dutsList;\r\n return dutsList.filter((x) => x.UNIT_ID === formData.unit!.UNIT_ID);\r\n }, [formData.unit]);\r\n const filteredDams = useMemo(() => {\r\n if (!damsList) return [];\r\n if (!formData.unit) return damsList;\r\n return damsList.filter((x) => x.UNIT_ID === formData.unit!.UNIT_ID);\r\n }, [formData.unit]);\r\n\r\n function checkAutomationConstraints() {\r\n // Check if the machine has DACs with automation enabled\r\n const automationDevs = [] as string[];\r\n const selectedAutDacs = [] as string[];\r\n for (const dac of (formData.associatedDacs || [])) {\r\n if (dac.automationEnabled && formData.selectedDacs[dac.DAC_ID]) {\r\n automationDevs.push(dac.DAC_ID);\r\n selectedAutDacs.push(dac.DAC_ID);\r\n }\r\n }\r\n\r\n if (formData.dut && formData.dut.automationEnabled) {\r\n automationDevs.push(formData.dut.DEV_ID);\r\n }\r\n\r\n if (formData.autom) {\r\n if (!automationDevs.includes(formData.autom.DAM_ID)) {\r\n automationDevs.push(formData.autom.DAM_ID);\r\n }\r\n }\r\n\r\n state.warningMessage = null;\r\n if (automationDevs.length > 1) {\r\n state.warningMessage = automationDevs.join(', ');\r\n }\r\n\r\n return selectedAutDacs;\r\n }\r\n\r\n async function confirm() {\r\n let response = null as null|{};\r\n let action = null as null|string;\r\n let changedAssociation = false;\r\n try {\r\n if (!formData.GROUP_NAME) {\r\n alert('É necessário informar um nome para o grupo');\r\n return;\r\n }\r\n\r\n const associations = {\r\n REL_DEV_AUT: (formData.autom && formData.autom.DAM_ID) || null,\r\n REL_DUT_ID: (formData.dut && formData.dut.DEV_ID) || null,\r\n };\r\n\r\n // Check if there is DAC with automation enabled\r\n for (const dac of (formData.associatedDacs || [])) {\r\n if (dac.automationEnabled) {\r\n if (associations.REL_DEV_AUT && (associations.REL_DEV_AUT !== dac.DAC_ID)) {\r\n alert(`Não é permitido selecionar 2 dispositivos de automação\\nna mesma máquina: ${associations.REL_DEV_AUT} e ${dac.DAC_ID}`);\r\n return;\r\n }\r\n associations.REL_DEV_AUT = dac.DAC_ID;\r\n }\r\n }\r\n\r\n // Check if selected DUT has automation enabled\r\n if (associations.REL_DEV_AUT && associations.REL_DUT_ID) {\r\n if (formData.dut!.automationEnabled) {\r\n alert(`Não é permitido selecionar 2 dispositivos de automação\\nna mesma máquina: ${associations.REL_DEV_AUT} e ${associations.REL_DUT_ID}`);\r\n return;\r\n }\r\n }\r\n\r\n if (isEdit) {\r\n // if (state.originalDuts && state.originalDuts.some(dutId => dutId !== reqData.REL_DUT_ID)) {\r\n // changedAssociation = true;\r\n // } else if (state.originalDams.length !== formData.dams.length) {\r\n // changedAssociation = true;\r\n // } else {\r\n // for (const damId of reqData.damIds) {\r\n // if (!state.originalDams.includes(damId)) {\r\n // changedAssociation = true;\r\n // }\r\n // }\r\n // }\r\n state.submitting = true; render();\r\n if (formData.associatedDacs) {\r\n for (const dac of formData.associatedDacs) {\r\n if (!formData.selectedDacs[dac.DAC_ID]) {\r\n changedAssociation = true;\r\n await apiCall('/dac/set-dac-info', { DAC_ID: dac.DAC_ID, GROUP_ID: null });\r\n }\r\n }\r\n }\r\n response = await apiCall('/clients/edit-group', {\r\n GROUP_ID: formData.GROUP_ID!,\r\n GROUP_NAME: formData.GROUP_NAME!,\r\n REL_DEV_AUT: associations.REL_DEV_AUT,\r\n REL_DUT_ID: associations.REL_DUT_ID,\r\n CLIENT_ID: clientId,\r\n });\r\n action = 'edit';\r\n } else {\r\n if (!formData.unit) {\r\n alert('É necessário selecionar a unidade');\r\n return;\r\n }\r\n state.submitting = true; render();\r\n response = await apiCall('/dac/add-new-group', {\r\n UNIT_ID: (formData.unit && formData.unit.UNIT_ID),\r\n GROUP_NAME: formData.GROUP_NAME!,\r\n REL_DAM_ID: (associations.REL_DEV_AUT?.startsWith('DAM') || associations.REL_DEV_AUT?.startsWith('DAC')) && associations.REL_DEV_AUT || null,\r\n REL_DRI_ID: associations.REL_DEV_AUT?.startsWith('DRI') && associations.REL_DEV_AUT || null,\r\n REL_DEV_AUT: associations.REL_DEV_AUT,\r\n REL_DUT_ID: associations.REL_DUT_ID,\r\n CLIENT_ID: clientId,\r\n });\r\n action = 'new';\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.submitting = false; render();\r\n if (response && action) onSuccess({ item: response, action, changedAssociation });\r\n }\r\n\r\n const selectedAutDacs = checkAutomationConstraints();\r\n let allowedDams;\r\n if (selectedAutDacs.length > 0) {\r\n allowedDams = filteredDams.filter((dam) => selectedAutDacs.includes(dam.DAM_ID));\r\n } else {\r\n allowedDams = filteredDams;\r\n }\r\n\r\n return (\r\n
\r\n {unitsList && (\r\n { set_formData({ ...formData, unit: item }); }}\r\n disabled={isEdit}\r\n />\r\n )}\r\n {((!unitsList) && unitInfo && unitInfo.UNIT_NAME) && (\r\n
\r\n Unidade:\r\n {unitInfo.UNIT_NAME}\r\n
\r\n )}\r\n 250}\r\n error={state.formData.GROUP_NAME.length > 250 ? 'O campo deve ter entre 3 e 250 caracteres.' : undefined}\r\n onChange={(event) => set_formData({ ...formData, GROUP_NAME: event.target.value })}\r\n />\r\n {((filteredDams.length > 0) || (groupInfo && groupInfo.DEV_AUT)) && (\r\n { formData.autom = item; render(); }}\r\n />\r\n )}\r\n {((filteredDuts.length > 0) || (groupInfo && groupInfo.DUT_ID)) && (\r\n { formData.dut = item; render(); }}\r\n />\r\n )}\r\n {(dacsList || []).map((dac) => (\r\n { formData.selectedDacs[dac.DAC_ID] = !formData.selectedDacs[dac.DAC_ID]; render(); }}\r\n style={{ marginTop: '10px' }}\r\n />\r\n ))}\r\n {(state.warningMessage) && (\r\n
\r\n Múltiplos dispositivos de automação selecionados:\r\n {' '}\r\n
\r\n {state.warningMessage}\r\n
\r\n )}\r\n \r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const StyledSpan = styled.span`\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const FwVersTable = styled.div<{ limitSize, numCols }>(({ limitSize, numCols }) => `\r\n display: grid;\r\n grid-column-gap: 20px;\r\n grid-template-columns:${' auto'.repeat(numCols)};\r\n margin-top: 30px;\r\n ${limitSize ? 'max-height: 240px; overflow-y: hidden;' : ''}\r\n`);\r\nexport const ViewMoreArrow = styled.p<{ viewMore }>(\r\n ({ viewMore }) => `\r\n span {\r\n font-size: 1em;\r\n color: ${colors.Grey400};\r\n }\r\n &:hover {\r\n cursor: pointer;\r\n }\r\n svg {\r\n margin-left: 12px;\r\n transition: all 0.2s;\r\n transform: rotate(${viewMore ? '-180' : '0'}deg);\r\n }\r\n`,\r\n);\r\nexport const TableNew2 = styled.table`\r\n white-space: nowrap;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n & tbody {\r\n border: 1px solid ${colors.Grey};\r\n & tr {\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n }\r\n & td {\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n }\r\n }\r\n & thead {\r\n & tr {\r\n height: 40px;\r\n display: table-row;\r\n }\r\n & th {\r\n flex: 1;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0 10px;\r\n word-break: normal;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n }\r\n }\r\n`;\r\n","import { useEffect } from 'react';\r\n\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport {\r\n Loader, ModalWindow,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { FormEditGroup } from 'pages/ClientPanel/FormEditGroup';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n TableNew2,\r\n} from './styles';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport const AdminGroupAutomation = ({ history }) => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const { preFiltered } = queryString.parse(history.location.search);\r\n const state = {\r\n list: [] as ApiResps['/get-machines-automation-info']['list'],\r\n filteredList: [] as ApiResps['/get-machines-automation-info']['list'],\r\n damsListFull: [] as ApiResps['/dam/get-dams-list']['list'],\r\n dacsListFull: [] as ApiResps['/dac/get-dacs-list']['list'],\r\n dutsListFull: [] as ApiResps['/dut/get-duts-list']['list'],\r\n limitItems: 50,\r\n lastScrollHeight: 0,\r\n isLoading: true,\r\n editingGroup: null as null|{\r\n group: ApiResps['/get-machines-automation-info']['list'][0],\r\n damsList: ApiResps['/dam/get-dams-list']['list'],\r\n dacsList: ApiResps['/dac/get-dacs-list']['list'],\r\n dutsList: ApiResps['/dut/get-duts-list']['list'],\r\n },\r\n };\r\n\r\n return state;\r\n });\r\n\r\n function openEditGroup(groupId: number) {\r\n const group = groupId && state.list.find((row) => row.GROUP_ID === groupId) || null;\r\n if (!group) {\r\n state.editingGroup = null;\r\n return;\r\n }\r\n state.editingGroup = {\r\n group,\r\n dacsList: state.dacsListFull.filter((dac) => (dac.UNIT_ID === group.UNIT_ID) && ((dac.GROUP_ID == null) || (dac.GROUP_ID === group.GROUP_ID))),\r\n dutsList: state.dutsListFull.filter((dut) => dut.UNIT_ID === group.UNIT_ID),\r\n damsList: state.damsListFull.filter((dam) => dam.UNIT_ID === group.UNIT_ID),\r\n };\r\n state.editingGroup.damsList = state.editingGroup.damsList.filter((dam) => {\r\n const dac = dam.isDac && state.editingGroup!.dacsList.find((dac) => dac.DAC_ID === dam.DAM_ID) || null;\r\n if (dac && dac.GROUP_ID !== group.GROUP_ID) return false;\r\n return true;\r\n });\r\n render();\r\n }\r\n\r\n async function handleGetData() {\r\n try {\r\n setState({ isLoading: true });\r\n const [\r\n { list },\r\n { list: damsListFull },\r\n { list: dacsListFull },\r\n { list: dutsListFull },\r\n ] = await Promise.all([\r\n apiCall('/get-machines-automation-info', {}),\r\n apiCall('/dam/get-dams-list', { includeDacs: true }),\r\n apiCall('/dac/get-dacs-list', {}),\r\n apiCall('/dut/get-duts-list', {}),\r\n ]);\r\n state.list = list;\r\n state.damsListFull = damsListFull;\r\n state.dacsListFull = dacsListFull;\r\n state.dutsListFull = dutsListFull;\r\n state.filteredList = state.list.filter((x) => x.problemsFound && x.problemsFound.length);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n useEffect(() => {\r\n handleGetData();\r\n }, []);\r\n\r\n useEffect(() => {\r\n function onScroll() {\r\n if (!state.limitItems) return;\r\n if (state.limitItems >= state.filteredList.length) return;\r\n const scrollBottom = document.documentElement.scrollTop + window.innerHeight;\r\n const distanceToEnd = document.documentElement.offsetHeight - scrollBottom;\r\n if (!(distanceToEnd < 500)) return;\r\n if (state.lastScrollHeight >= document.documentElement.offsetHeight) return;\r\n setState({\r\n limitItems: state.limitItems + 200,\r\n lastScrollHeight: document.documentElement.offsetHeight,\r\n });\r\n }\r\n window.addEventListener('scroll', onScroll);\r\n return () => window.removeEventListener('scroll', onScroll);\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Máquinas\r\n \r\n \r\n {state.isLoading && }\r\n {(!state.isLoading) && (\r\n <>\r\n {state.editingGroup && (\r\n setState({ editingGroup: null })}>\r\n setState({ editingGroup: null })}\r\n onSuccess={() => { toast.success('Atualize a página'); setState({ editingGroup: null }); }}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n CLIENT_NAME\r\n UNIT_NAME\r\n GROUP_NAME\r\n dacs\r\n DAM_ID\r\n DUT_ID\r\n problemsFound\r\n \r\n \r\n \r\n {state.filteredList.filter((x, i) => (i < state.limitItems)).map((group) => (\r\n \r\n {group.CLIENT_NAME}\r\n {group.UNIT_NAME}\r\n \r\n openEditGroup(group.GROUP_ID)}>\r\n {group.GROUP_NAME}\r\n \r\n \r\n \r\n {group.dacs.map((dac) => (\r\n
\r\n \r\n {dac.DAC_ID}\r\n \r\n {dac.automationEnabled && ' (aut)'}\r\n
\r\n )) || '-'}\r\n \r\n \r\n {group.DEV_AUT && (\r\n \r\n {group.DEV_AUT}\r\n \r\n ) || '-'}\r\n {group.DAM_DUT_REF && (\r\n \r\n {` (${group.DAM_DUT_REF})`}\r\n \r\n )}\r\n \r\n \r\n {group.DUT_ID && (\r\n
\r\n \r\n {group.DUT_ID}\r\n \r\n {group.dutAutomationEnabled && ' (aut)'}\r\n
\r\n ) || '-'}\r\n \r\n \r\n {group.problemsFound && group.problemsFound.map((problem) =>
{problem}
)}\r\n \r\n \r\n ))}\r\n \r\n
\r\n {(state.limitItems < state.filteredList.length)\r\n && (\r\n

\r\n Carregando mais itens... (\r\n {state.limitItems}\r\n {' '}\r\n /\r\n {' '}\r\n {state.filteredList.length}\r\n )\r\n

\r\n )}\r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('AdminGroupAutomation', 'component')(AdminGroupAutomation);\r\n","export function getObjects(obj, val) {\r\n let objects: any[] = [];\r\n for (const i in obj) {\r\n if (!obj.hasOwnProperty(i)) continue;\r\n\r\n if (obj[i] && typeof obj[i] === 'object') {\r\n objects = objects.concat(getObjects(obj[i], val));\r\n } else if (obj[i]?.toString().toLowerCase().includes(val.toString().toLowerCase())) {\r\n if (objects.lastIndexOf(obj) === -1) {\r\n objects.push(obj);\r\n }\r\n }\r\n }\r\n return objects;\r\n}\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const Scroll = styled.div`\r\n overflow-x: auto;\r\n`;\r\n\r\nexport const Container = styled.table`\r\n width: 100%;\r\n`;\r\n\r\nexport const Head = styled.thead`\r\n text-align: left;\r\n`;\r\n\r\nexport const Body = styled.tbody`\r\n overflow-x: scroll;\r\n`;\r\n\r\nexport const HeaderCell = styled.th`\r\n padding: 0 10px;\r\n color: ${colors.DarkGrey};\r\n background-color: ${colors.White};\r\n border-bottom: solid 1px ${colors.Grey};\r\n`;\r\n\r\nexport const HeaderTitle = styled.div`\r\n align-items: center;\r\n cursor: pointer;\r\n display: flex;\r\n justify-content: flex-start;\r\n position: relative;\r\n font-size: 0.75em;\r\n`;\r\n\r\nexport const Data = styled.td`\r\n color: ${colors.DarkGrey};\r\n min-width: 100px;\r\n padding: 0 10px;\r\n`;\r\n\r\nexport const Row = styled.tr`\r\n height: 50px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\n","/* eslint-disable react/no-unknown-property */\r\nimport { useEffect, useState } from 'react';\r\n\r\nimport { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Box } from 'reflexbox';\r\nimport {\r\n Loader,\r\n Button,\r\n ActionButton,\r\n InputSearch,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DeleteOutlineIcon, EditIcon } from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { colors } from 'styles/colors';\r\nimport { getObjects } from '~/helpers/getObjetcs';\r\nimport {\r\n Scroll,\r\n Container,\r\n Head,\r\n Body,\r\n HeaderCell,\r\n HeaderTitle,\r\n Data,\r\n Row,\r\n} from './styles';\r\n\r\nexport const ClientsList = (props: { fabricantes?: boolean }): JSX.Element => {\r\n const { fabricantes } = props;\r\n const [state, _render, setState] = useStateVar({\r\n clients: [] as {\r\n CLIENT_ID: number;\r\n NAME: string;\r\n EMAIL?: string;\r\n PICTURE?: string;\r\n ENABLED?: string;\r\n clientType: ('cliente' | 'fabricante' | 'mantenedor' | 'parceira')[];\r\n }[],\r\n clientsFiltered: [] as {\r\n CLIENT_ID: number;\r\n NAME: string;\r\n EMAIL?: string;\r\n PICTURE?: string;\r\n ENABLED?: string;\r\n clientType: ('cliente' | 'fabricante' | 'mantenedor' | 'parceira')[];\r\n }[],\r\n loading: false,\r\n nomesTipos: {} as { [k: string]: string },\r\n searchText: '',\r\n });\r\n\r\n useEffect(() => {\r\n getAllClients();\r\n }, []);\r\n\r\n const onSearch = (e) => {\r\n setState({ searchText: e.target.value });\r\n\r\n if (e.target.value) {\r\n setState({ clientsFiltered: state.clientsFiltered.filter((row) => getObjects(row, e.target.value).length) });\r\n } else {\r\n setState({ clientsFiltered: state.clients });\r\n }\r\n };\r\n\r\n async function getAllClients() {\r\n try {\r\n setState({ loading: true });\r\n const response = await apiCall('/clients/get-clients-list', { full: true });\r\n if (response) {\r\n for (const row of response.list) {\r\n if (row.ENABLED === '1') row.ENABLED = 'SIM';\r\n if (row.ENABLED === '0') row.ENABLED = 'NÃO';\r\n }\r\n const filterData = response.list.filter((row) => {\r\n if (fabricantes && !(row.PERMS_C || '').includes('[F]')) return false;\r\n return true;\r\n })\r\n .sort((a, b) => (a.NAME >= b.NAME ? 1 : -1));\r\n state.nomesTipos = {};\r\n for (const { cod2, label } of Object.values(response.clientTypes || {})) {\r\n state.nomesTipos[cod2] = label;\r\n }\r\n setState({ clients: filterData });\r\n setState({ clientsFiltered: filterData });\r\n }\r\n } catch (error) { console.log(error); toast.error('Houve erro'); }\r\n setState({ loading: false });\r\n }\r\n\r\n async function deleteClient(rowData) {\r\n try {\r\n if (!window.confirm(`Deseja excluir o cliente ${rowData.NAME}?`)) return;\r\n await apiCall('/clients/remove-client', { clientId: rowData.CLIENT_ID, keepDevsData: true });\r\n window.location.reload();\r\n } catch (error) { console.log(error); toast.error('Houve erro'); }\r\n }\r\n\r\n if (state.loading) {\r\n return ;\r\n }\r\n return (\r\n <>\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n Logo\r\n \r\n \r\n \r\n \r\n Nome\r\n \r\n \r\n \r\n \r\n Email\r\n \r\n \r\n \r\n \r\n Tipo\r\n \r\n \r\n \r\n \r\n Habilitado\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.clientsFiltered.map((item) => (\r\n \r\n \r\n \r\n \r\n {item.NAME || '-'}\r\n {item.EMAIL || '-'}\r\n {(item.clientType || []).map((x) => state.nomesTipos[x] || x).join(', ')}\r\n {item.ENABLED}\r\n \r\n deleteClient(item)} variant=\"red-inv\">\r\n \r\n \r\n \r\n {}}\r\n variant=\"blue-inv\"\r\n >\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { Helmet } from 'react-helmet';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport { ClientsList } from '../ClientsList';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { t } from 'i18next';\r\n\r\nexport const ClientsListWrapper = (): JSX.Element => (\r\n <>\r\n \r\n {t('celcius360Empresas')}\r\n \r\n \r\n \r\n \r\n);\r\n\r\nexport default withTransaction('ClientsListWrapper', 'component')(ClientsListWrapper);\r\n","import styled from 'styled-components';\r\n\r\nimport {\r\n Button,\r\n} from '~/components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\n\r\nexport const TableHead = styled.thead`\r\n`;\r\n\r\nexport const TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\n\r\nexport const HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\n\r\nexport const DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\n\r\nexport const Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\n\r\nexport const HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n\r\nexport const SimpleButton = styled(Button)`\r\n width: initial;\r\n padding: 8px 15px;\r\n margin: 7px 7px;\r\n`;\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n Input, ModalWindow, ActionButton, Button, Loader, Select,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DeleteOutlineIcon } from 'icons';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport { ClientsList } from '../ClientsList';\r\nimport {\r\n TableContainer,\r\n TableHead,\r\n TableBody,\r\n HeaderCell,\r\n DataCell,\r\n Row,\r\n HeaderRow,\r\n SimpleButton,\r\n} from './styles';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport const DevManufacts = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n list: [] as {\r\n IDSTART: string;\r\n IDEND: string;\r\n CLIENT_ID: number;\r\n CLIENT_NAME: string;\r\n }[],\r\n manufacturers: [] as {\r\n CLIENT_ID: number;\r\n NAME: string;\r\n PERMS_C: string;\r\n EMAIL?: string | undefined;\r\n PICTURE?: string | undefined;\r\n ENABLED?: string | undefined;\r\n clientType: ('cliente'|'fabricante'|'mantenedor'|'parceira')[];\r\n CNPJ?: string | undefined;\r\n PHONE?: string | undefined;\r\n }[],\r\n openModal: false,\r\n loading: true,\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n async function fetchData() {\r\n try {\r\n state.loading = true; render();\r\n const [\r\n { list },\r\n { list: clientsList },\r\n ] = await Promise.all([\r\n apiCall('/config/get-manufact-devs', {}),\r\n apiCall('/clients/get-clients-list', {}),\r\n ]);\r\n state.list = list;\r\n state.manufacturers = clientsList.filter((item) => (item.PERMS_C || '').includes('[F]'));\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.loading = false; render();\r\n }\r\n async function deleteItem(item) {\r\n try {\r\n if (window.confirm(`Deseja excluir a faixa ${item.IDSTART} - ${item.IDEND}?`)) {\r\n await apiCall('/config/delete-manufact-devs', { IDSTART: item.IDSTART, IDEND: item.IDEND });\r\n window.location.reload();\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateItem({ item: responseData }) {\r\n try {\r\n state.openModal = false;\r\n await fetchData();\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Configurações\r\n \r\n \r\n {state.loading && }\r\n {(!state.loading)\r\n && (\r\n
\r\n
\r\n
\r\n
 
\r\n setState({ openModal: true })}>Adicionar Faixa\r\n
\r\n \r\n \r\n \r\n Faixa\r\n Fabricante\r\n \r\n \r\n \r\n \r\n {state.list.map((item) => (\r\n \r\n {`${item.IDSTART} - ${item.IDEND}`}\r\n {item.CLIENT_NAME}\r\n \r\n deleteItem(item)} variant=\"red-inv\">\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n
\r\n \r\n {state.openModal\r\n ? (\r\n \r\n { state.openModal = false; render(); }}\r\n onSuccess={afterCreateItem}\r\n />\r\n \r\n ) : <> }\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nfunction FormEdit({ manufacturers, onSuccess, onCancel }) {\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n IDSTART: '',\r\n IDEND: '',\r\n CLIENT_ID_item: manufacturers[0] || null,\r\n });\r\n\r\n async function confirm() {\r\n let response = null as null|ApiResps['/config/add-manufact-devs'];\r\n try {\r\n state.submitting = true; render();\r\n const reqData = {\r\n IDSTART: state.IDSTART,\r\n IDEND: state.IDEND,\r\n CLIENT_ID: state.CLIENT_ID_item.CLIENT_ID,\r\n };\r\n response = await apiCall('/config/add-manufact-devs', reqData);\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.submitting = false; render();\r\n if (response) onSuccess({ item: response });\r\n }\r\n\r\n return (\r\n
\r\n { setState({ IDSTART: event.target.value }); }}\r\n />\r\n
\r\n { setState({ IDEND: event.target.value }); }}\r\n />\r\n
\r\n { setState({ CLIENT_ID_item: item }); }}\r\n notNull\r\n />\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\nexport default withTransaction('DevManufacts', 'component')(DevManufacts);\r\n","import styled from 'styled-components';\r\n\r\nexport const ContainerInputs = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n max-width: 300px;\r\n`;\r\n\r\nexport const DynRow = styled.div`\r\n display: grid;\r\n grid-template-columns: 170px 50px 50px 50px 50px 50px 50px;\r\n`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CardTitle = styled.h3`\r\n cursor: pointer;\r\n text-decoration: underline;\r\n`;\r\n","import {\r\n Button,\r\n Loader,\r\n Input,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nexport function ComandosDevel(): JSX.Element {\r\n const [state, render, setState] = useStateVar({\r\n comandoDevel: '',\r\n comandoDevelParams: '{}',\r\n enviando: false,\r\n });\r\n\r\n async function sendDevelCommand() {\r\n if (state.enviando) return;\r\n try {\r\n setState({ enviando: true });\r\n const reqParams = { ...JSON.parse(state.comandoDevelParams || '{}'), command: state.comandoDevel };\r\n await apiCall('/devtools/run-command', reqParams);\r\n alert('Sucesso');\r\n } catch (err) { console.log(err); alert('Erro'); }\r\n setState({ enviando: false });\r\n }\r\n\r\n return (\r\n
\r\n { state.comandoDevel = e.target.value; render(); }}\r\n placeholder=\"Comando\"\r\n />\r\n
\r\n { state.comandoDevelParams = e.target.value; render(); }}\r\n placeholder=\"Parâmetros\"\r\n />\r\n \r\n
\r\n );\r\n}\r\n","import {\r\n Button,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocket } from 'helpers/wsConnection';\r\n\r\nexport function IoTMonitoring(): JSX.Element {\r\n const [state, render, setState] = useStateVar({\r\n monitorDevMessages: 'DEV011119999',\r\n iotMessages: [] as { key: string, topic: string, payload: string }[],\r\n socket: null as null|WebSocket,\r\n });\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n function onWsOpen(wsConn) {\r\n state.socket = wsConn.socket;\r\n }\r\n function onWsMessage(message) {\r\n if (message.type === 'iotMessage') iotMessageReceived(message.data);\r\n }\r\n\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'subscribeTelemetry', data: {} });\r\n }\r\n\r\n function iotMessageReceived(iotMessage) {\r\n console.log(iotMessage);\r\n if (iotMessage && iotMessage.topic) {\r\n iotMessage.key = Date.now();\r\n state.iotMessages.push(iotMessage);\r\n render();\r\n }\r\n }\r\n\r\n function monitorDevMessages() {\r\n if (state.socket && state.socket.readyState === 1) {\r\n const request = { type: 'monitorDevMessages', data: { devId: state.monitorDevMessages } };\r\n state.socket.send(JSON.stringify(request));\r\n }\r\n }\r\n\r\n return (\r\n
\r\n { state.monitorDevMessages = e.target.value; render(); }}\r\n />\r\n \r\n {state.iotMessages.map((message) => (\r\n
\r\n Tópico:\r\n {' '}\r\n {message.topic}\r\n {' '}\r\n - Payload:\r\n {' '}\r\n {message.payload}\r\n
\r\n ))}\r\n
\r\n );\r\n}\r\n","import {\r\n Button,\r\n Loader,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport styled from 'styled-components';\r\n\r\ninterface PeriodData {\r\n permission: 'allow' | 'forbid'\r\n start: string // '00:00'\r\n end: string // '23:59'\r\n indexIni: number\r\n indexEnd: number\r\n days: string[]\r\n fullDay: boolean\r\n}\r\n\r\ninterface Resposta {\r\n agora: string,\r\n damEcoDebug: {\r\n [damId: string]: {\r\n ecoCfg: {\r\n ENABLE_ECO: number\r\n ECO_CFG: string\r\n ECO_OFST_START: number\r\n ECO_OFST_END: number\r\n ECO_INT_TIME: number\r\n SCHEDULE_START_BEHAVIOR: string\r\n SETPOINT: number\r\n LTC: number\r\n LTI: number\r\n UPPER_HYSTERESIS: number\r\n LOWER_HYSTERESIS: number\r\n SELF_REFERENCE: number\r\n MINIMUM_TEMPERATURE: number\r\n MAXIMUM_TEMPERATURE: number\r\n CAN_SELF_REFERENCE: number\r\n splitCond: boolean\r\n },\r\n lastDamTelem: {\r\n lastTelemetry: {\r\n dev_id: string\r\n timestamp: string\r\n Mode?: 'Auto' | 'Manual' | 'Local'\r\n State?: 'allow' | 'forbid' | 'onlyfan' | 'enabling' | 'disabling' | 'eco' | 'thermostat'\r\n status?: string\r\n Temperature?: string\r\n Temperature_1?: string\r\n }\r\n },\r\n damSched_current: PeriodData,\r\n damEcoState: {\r\n sleep_ts?: number,\r\n sleep_ts_eco_v2?: number,\r\n sleep_ts_eco_v2_to_cool?: number,\r\n cmd_state?: string,\r\n cmd_exp?: number,\r\n condensersEnabled?: boolean,\r\n duts: {\r\n [dutId: string]: {\r\n telmTS: number\r\n accLOW: number\r\n accAfterCool?: number\r\n }\r\n },\r\n stagesEcoV2?: 'before-setpoint'|'after-LTC'|'after-LTI',\r\n counterToLog?: number,\r\n },\r\n assocDuts: {\r\n [dutId: string]: {\r\n lastDutTelem: {\r\n dev_id: string;\r\n timestamp: string;\r\n Temperature: number;\r\n Temperature_1: number;\r\n Humidity: number;\r\n eCO2: number;\r\n TVOC: number;\r\n raw_eCO2: number;\r\n Tmp: number;\r\n operation_mode: number;\r\n },\r\n dutSched_current: PeriodData,\r\n TUSEMIN: number,\r\n proxCmd: string,\r\n }\r\n },\r\n }\r\n }\r\n}\r\n\r\nexport function EcoModeDebug(): JSX.Element {\r\n const [state, render, setState] = useStateVar({\r\n enviando: false,\r\n dams: [] as {\r\n damId: string\r\n cmd_state: string\r\n cmd_exp: string\r\n state: string\r\n mode: string\r\n SETPOINT: string\r\n duts: {\r\n dutId: string,\r\n T0: string,\r\n TUSEMIN: string,\r\n proxCmd: string,\r\n }[]\r\n }[],\r\n });\r\n\r\n async function solicitar() {\r\n if (state.enviando) return;\r\n try {\r\n setState({ enviando: true, dams: [] });\r\n const response = await apiCall('/realtime/devtools/debug_dam_ecomode', {}) as Resposta;\r\n state.dams = [];\r\n for (const [damId, ecoInfo] of Object.entries(response.damEcoDebug)) {\r\n const duts: (typeof state)['dams'][number]['duts'] = [];\r\n state.dams.push({\r\n damId,\r\n cmd_state: ecoInfo.damEcoState?.cmd_state || '',\r\n cmd_exp: ecoInfo.damEcoState?.cmd_exp ? new Date(ecoInfo.damEcoState.cmd_exp).toISOString() : '',\r\n state: ecoInfo.lastDamTelem?.lastTelemetry?.State || '',\r\n mode: ecoInfo.lastDamTelem?.lastTelemetry?.Mode || '',\r\n SETPOINT: String(ecoInfo.ecoCfg?.SETPOINT ?? ''),\r\n duts,\r\n });\r\n for (const [dutId, dutInfo] of Object.entries(ecoInfo.assocDuts)) {\r\n duts.push({\r\n dutId,\r\n T0: String(dutInfo.lastDutTelem?.Temperature ?? ''),\r\n TUSEMIN: String(dutInfo.TUSEMIN ?? ''),\r\n proxCmd: dutInfo.proxCmd || '',\r\n });\r\n }\r\n }\r\n alert('Sucesso');\r\n } catch (err) { console.log(err); alert('Erro'); }\r\n setState({ enviando: false });\r\n }\r\n\r\n return (\r\n
\r\n \r\n {(state.dams.length > 0) && (\r\n <>\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {(state.dams || []).map((rowDam) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
DAMEco CMDCmd DateModeStateSetpointDUTs
{rowDam.damId}{rowDam.cmd_state}{rowDam.cmd_exp}{rowDam.mode}{rowDam.state}{rowDam.SETPOINT}\r\n \r\n \r\n {(rowDam.duts || []).map((rowDut) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
{rowDut.dutId}{rowDut.T0}{rowDut.TUSEMIN}{rowDut.proxCmd}
\r\n
\r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nconst Table = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Loader,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n Card,\r\n CardTitle,\r\n} from './styles';\r\nimport { ComandosDevel } from './ComandosDevel';\r\nimport { IoTMonitoring } from './IoTMonitoring';\r\nimport { EcoModeDebug } from './EcoModeDebug';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport function DevTools(): JSX.Element {\r\n const [state, render, setState] = useStateVar(() => ({\r\n loading: true,\r\n cards: [\r\n { comp: , title: 'Comandos Devel' },\r\n { comp: , title: 'IoT Monitoring' },\r\n { comp: , title: 'EcoMode DAM Debug' },\r\n ] as { comp: JSX.Element, title: string, show?: boolean }[],\r\n }));\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n async function fetchData() {\r\n try {\r\n setState({ loading: true });\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loading: false });\r\n }\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Development Tools\r\n \r\n \r\n {state.loading && }\r\n {(!state.loading) && (\r\n <>\r\n {state.cards.map((card, i) => (\r\n \r\n <>\r\n { card.show = !card.show; render(); }}>\r\n

\r\n { card.title }\r\n

\r\n
\r\n {card.show && card.comp}\r\n \r\n
\r\n ))}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default withTransaction('DevTools', 'component')(DevTools);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const DesktopTable = styled.div`\r\n display: none;\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nexport const StyledSpan = styled.span`\r\n color: ${colors.Grey400};\r\n font-size: 1em;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n font-size: 1em;\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n margin-left: 16px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n margin-top: 15px;\r\n margin-right: 15px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const Label = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-top: 6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n","import React, { useState, useEffect, useMemo } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { WithContext as ReactTags } from 'react-tag-input';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport {\r\n DataTable, Button, EmptyWrapper, Loader, StatusBox, Checkbox, Select, InputSearch,\r\n} from '~/components';\r\nimport { TableColumn } from '~/components/DataTable';\r\nimport { ModalWindow } from '~/components/ModalWindow';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { SearchIcon } from '~/icons';\r\nimport { AdminLayout } from '~/pages/Admin/AdminLayout';\r\nimport { apiCall, ApiResps } from '~/providers';\r\n\r\nimport {\r\n DesktopTable,\r\n StyledSpan,\r\n StyledLink,\r\n SearchInput,\r\n IconWrapper,\r\n Label,\r\n} from './styles';\r\n\r\nimport '~/assets/css/ReactTags.css';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nconst KeyCodes = {\r\n comma: 188,\r\n slash: 191,\r\n enter: [10, 13],\r\n};\r\n\r\nconst delimiters = [...KeyCodes.enter, KeyCodes.comma, KeyCodes.slash];\r\n\r\nexport const DUTIrList = (): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n actionOpts: [] as {}[],\r\n selectedDUTSource: '',\r\n wantSetIrSource: false,\r\n ownershipOpts: [\r\n { value: 'CLIENTS', label: 'De clientes' },\r\n { value: 'N-COMIS', label: 'Não-comissionados' }, // aqueles com DEV_ID default de firmware\r\n { value: 'N-ASSOC', label: 'Não-associados' }, // Aqueles que já tem DEV_ID próprio, mas não possuem cliente associado\r\n { value: 'MANUFAC', label: 'Comissionados em Fábrica' }, // Aqueles que já tem DEV_ID próprio, e possuem cliente SERDIA\r\n { value: 'D-TESTS', label: 'Em testes' }, // Aqueles que estão associados ao cliente DIEL ENERGIA LTDA.\r\n { value: 'ALLDEVS', label: 'Todos' },\r\n ],\r\n ownershipFilter: null as null|{ value: string },\r\n isLoading: false, // setIsLoading\r\n csvData: [], // setCsvData\r\n duts: [] as (ApiResps['/dut/get-duts-list']['list'][number] & { checked?: boolean })[],\r\n searchState: [] as { text: string }[], // setSearchState\r\n tablePage: 1,\r\n tablePageSize: 50,\r\n totalItems: 0,\r\n allChecked: false,\r\n };\r\n\r\n if (profile.viewAllClients) {\r\n state.ownershipFilter = state.ownershipOpts[0];\r\n }\r\n\r\n if (profile.manageAllClients) {\r\n state.actionOpts = [{ label: 'Copiar Códigos IR', value: 'set-ir' }];\r\n }\r\n return state;\r\n });\r\n\r\n async function applyActionToSelected(action, list) {\r\n try {\r\n const selectedDevs = list.filter((dev) => dev.checked);\r\n\r\n if (!selectedDevs.length) return;\r\n\r\n if (action === 'set-ir') {\r\n // const ids = selectedDevs.map((x) => x.DEV_ID);\r\n // console.log(`setting IR codes for ${ids}`);\r\n // history.push(`/painel/copy-ir/?ids=${encodeURIComponent(ids.join('*'))}`);\r\n state.wantSetIrSource = true;\r\n render();\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function confirmIRSource() {\r\n try {\r\n const selectedDevs = state.duts.filter((dev) => dev.checked);\r\n const irSourceDev = state.selectedDUTSource;\r\n const { list, dutCommandTypes } = await apiCall('/get-dut-ircodes-list', { devId: irSourceDev });\r\n\r\n const sourceIrCodes = list;\r\n await Promise.all(\r\n selectedDevs.map(async (dev) => {\r\n const response = await apiCall('/write-dut-command-by-ircode', { configs: sourceIrCodes, targetDutId: dev.DEV_ID });\r\n if (!response.success || response.success !== true) {\r\n toast.error(`Houve erro ao gravar códigos para ID ${dev.DEV_ID} no banco de dados!`);\r\n }\r\n else {\r\n try {\r\n const response = await apiCall('/resend-dut-ir-codes', {\r\n devId: dev.DEV_ID,\r\n });\r\n if (response.responses.some((x) => !x.success || x.success !== true)) {\r\n toast.error(`Houve erro ao gravar códigos IR no DUT ${dev.DEV_ID}`);\r\n }\r\n }\r\n catch (err) {\r\n toast.error(`Houve erro ao gravar códigos IR no DUT ${dev.DEV_ID}`);\r\n }\r\n }\r\n }),\r\n );\r\n // for (const dev of selectedDevs) { // sequential writing. I don't know whether I can put it all in a single Promise.all()\r\n // const response = await apiCall('/write-dut-command-by-ircode', { configs: sourceIrCodes, targetDutId: dev.DEV_ID });\r\n // if (!response.success || response.success !== true) {\r\n // toast.error(`Houve erro ao gravar códigos para ID ${dev.DEV_ID} no banco de dados!`);\r\n // }\r\n // else {\r\n // try {\r\n // const response = await apiCall('/resend-dut-ir-codes', {\r\n // devId: dev.DEV_ID,\r\n // });\r\n // if (response.responses.some((x) => !x.success || x.success !== true)) {\r\n // toast.error(`Houve erro ao gravar códigos IR no DUT ${dev.DEV_ID}`);\r\n // }\r\n // }\r\n // catch (err) {\r\n // toast.error(`Houve erro ao gravar códigos IR no DUT ${dev.DEV_ID}`);\r\n // }\r\n // }\r\n // }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n const columns = useMemo(() => {\r\n const columns = [] as TableColumn[];\r\n\r\n if (profile.viewMultipleClients) {\r\n columns.push({\r\n Header: 'Cliente',\r\n accessor: 'col_CLIENT_NAME',\r\n Cell: (props) => (props.CLIENT_NAME ? {props.CLIENT_NAME} : '-'),\r\n });\r\n }\r\n columns.push({\r\n Header: 'Unidade',\r\n accessor: 'UNIT_NAME',\r\n Cell: (props) => <>{props.unit.id && props.unit.name ? {props.unit.name} : '-'},\r\n });\r\n columns.push({\r\n Header: 'Marca',\r\n accessor: 'MCHN_BRAND',\r\n Cell: (props) => {(props.MCHN_BRAND && props.MCHN_BRAND.length > 100 ? (props.MCHN_BRAND).slice(0, 100).concat('...') : props.MCHN_BRAND || '-')},\r\n });\r\n columns.push({\r\n Header: 'Modelo',\r\n accessor: 'MCHN_MODEL',\r\n Cell: (props) => {(props.MCHN_MODEL && props.MCHN_MODEL.length > 100 ? (props.MCHN_MODEL).slice(0, 100).concat('...') : props.MCHN_MODEL || '-')},\r\n });\r\n columns.push({\r\n Header: 'Dispositivo',\r\n accessor: 'devId',\r\n Cell: (props) => (\r\n <>\r\n {props.devId\r\n ? (\r\n \r\n {props.devId}\r\n \r\n )\r\n : (\r\n '-'\r\n )}\r\n \r\n ),\r\n });\r\n columns.push({\r\n Header: 'Controle',\r\n accessor: 'Mode',\r\n Cell: (props) => (\r\n <>\r\n {props.mode}\r\n \r\n ),\r\n });\r\n columns.push({\r\n Header: 'Operação',\r\n accessor: 'State',\r\n Cell: (props) => (\r\n <>\r\n {props.relay}\r\n \r\n ),\r\n });\r\n columns.push({\r\n Header: 'Conexão',\r\n accessor: 'status',\r\n Cell: (props) => {props.status},\r\n });\r\n\r\n if (profile.manageAllClients) {\r\n columns.push({\r\n Header: 'Última vez visto',\r\n accessor: 'col_lastseen',\r\n Cell: (props) => (props.lastCommTs || '-'),\r\n });\r\n }\r\n\r\n if (state.actionOpts.length > 0) {\r\n columns.push({\r\n Header: (\r\n !!dut.checked) && state.duts.length > 0}\r\n onClick={() => {\r\n setState({ allChecked: !(state.duts.every((dut) => !!dut.checked) && state.duts.length > 0) });\r\n for (const dut of state.duts) {\r\n dut.checked = state.allChecked;\r\n }\r\n render();\r\n }}\r\n />\r\n ),\r\n accessor: 'col_selection',\r\n Cell: (props) => { props.checked = !props.checked; render(); }} />,\r\n });\r\n }\r\n\r\n return columns;\r\n }, [(state.duts.every((dut) => !!dut.checked) && state.duts.length > 0)]);\r\n\r\n async function handleGetDUTS() {\r\n try {\r\n setState({ isLoading: true });\r\n\r\n const { list, totalItems } = await apiCall('/dut/get-duts-list', {\r\n onlyPossibleAutomation: true,\r\n SKIP: (state.tablePage - 1) * state.tablePageSize,\r\n LIMIT: state.tablePageSize,\r\n searchTerms: state.searchState.map((x) => x.text.toLowerCase()),\r\n ownershipFilter: (state.ownershipFilter && state.ownershipFilter.value) || undefined,\r\n });\r\n\r\n for (const dev of list) {\r\n // dev.State = descOper[dev.State] || dev.State;\r\n if (dev.Mode === 'Auto') dev.Mode = 'Automático';\r\n if (dev.lastCommTs) { dev.lastCommTs = dev.lastCommTs.replace('T', ' '); }\r\n\r\n Object.assign(dev, {\r\n state: dev.STATE_ID || '-',\r\n city: dev.CITY_NAME || '-',\r\n unit: { id: dev.UNIT_ID, name: dev.UNIT_NAME } || '-',\r\n // group: dev.machineName || '-',\r\n devId: dev.DEV_ID || '-',\r\n mode: dev.Mode || '-',\r\n relay: dev.State || '-',\r\n status: dev.status || '-',\r\n });\r\n }\r\n\r\n state.totalItems = totalItems;\r\n state.duts = list;\r\n } catch {\r\n toast.error('Não foi possível carregar os dados.');\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n const onPageChange = (page) => {\r\n state.tablePage = page;\r\n render();\r\n handleGetDUTS();\r\n };\r\n\r\n const handleSearchDelete = (i) => {\r\n state.tablePage = 1;\r\n state.searchState = state.searchState.filter((tag, index) => index !== i);\r\n render();\r\n handleGetDUTS();\r\n };\r\n\r\n const handleSearchAddition = (tag) => {\r\n state.tablePage = 1;\r\n state.searchState = [...state.searchState, tag];\r\n render();\r\n handleGetDUTS();\r\n };\r\n\r\n useEffect(() => {\r\n handleGetDUTS();\r\n }, [state.tablePage]);\r\n\r\n useEffect(() => {\r\n state.tablePage = 1;\r\n render();\r\n handleGetDUTS();\r\n }, [state.ownershipFilter]);\r\n\r\n useEffect(() => {\r\n handleGetDUTS();\r\n }, []);\r\n\r\n const selectedDevs = state.duts.filter((dev) => dev.checked);\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - DUT IR\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {(profile.viewAllClients)\r\n && (\r\n \r\n { state.ownershipFilter = opt; render(); }}\r\n notNull\r\n />\r\n \r\n )}\r\n \r\n {(selectedDevs.length > 0) && (\r\n applyActionToSelected(opt.value, selectedDevs)}\r\n />\r\n )}\r\n \r\n
\r\n
\r\n
\r\n {state.isLoading\r\n ? (\r\n \r\n \r\n \r\n )\r\n : (\r\n <>\r\n \r\n {state.duts\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n \r\n Não foi possível carregar os dados\r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n {(state.wantSetIrSource) && (\r\n \r\n

Selecione o DUT origem dos comandos

\r\n {/* {\r\n dut;\r\n return dut.devId;\r\n })}\r\n propLabel=\"NAME\"\r\n value={state.selectedDUTSource}\r\n placeholder=\"DUT\"\r\n onSelect={(e) => { state.selectedDUTSource = e; render(); }}\r\n /> */}\r\n setState({ selectedDUTSource: e.target.value })}\r\n />\r\n
\r\n {\r\n await confirmIRSource();\r\n state.wantSetIrSource = false; render();\r\n }}\r\n variant=\"primary\"\r\n >\r\n Salvar\r\n \r\n \r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('DUTIrList', 'component')(DUTIrList);\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\nimport { CalendarIcon, ExportWorksheetIcon } from '~/icons';\r\nimport {\r\n Button,\r\n} from 'components';\r\nimport { Link, NavLink } from 'react-router-dom';\r\n\r\nexport const InfoSIMCARD = styled.div`\r\n min-width: 90px;\r\n p {\r\n color: #000;\r\n font-size: 12px;\r\n font-style: normal;\r\n font-weight: 400;\r\n }\r\n label {\r\n font-size: 11px;\r\n color: #202370;\r\n font-weight: 700;\r\n }\r\n`;\r\n\r\nexport const ContainerIconsSimcard = styled.div`\r\n display: flex;\r\n gap: 20px;\r\n @media (max-width: 476px) {\r\n width: 100%;\r\n border-bottom: 1px solid rgba(197, 197, 197, 0.56);\r\n }\r\n`;\r\n\r\nexport const ContainerDescEditSim = styled.div`\r\n border-right: 1px solid rgba(197, 197, 197, 0.56);\r\n display: flex;\r\n gap: 10px;\r\n padding-right: 20px;\r\n margin-left: 20px;\r\n @media (max-width: 476px) {\r\n width: 100%;\r\n margin-top: 10px;\r\n margin-bottom: 10px;\r\n border-right: unset;\r\n }\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder}\r\n`;\r\n\r\nexport const ModalContainer = styled.div`\r\n width: 100%;\r\n border-radius: 4px;\r\n`;\r\n\r\nexport const FakeLink = styled.span`\r\n color: black;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n`;\r\n\r\nexport const Title = styled.span`\r\n font-size: 14px\r\n font-weight: bold;\r\n color: #4c4c4c;\r\n`;\r\n\r\nexport const ConsumptionContainer = styled.span`\r\n padding-top: 14px;\r\n display: flex;\r\n flex-direction: column;\r\n width: 625px;\r\n justify-content: space-between;\r\n height: 600px;\r\n marginLeft: 5px;\r\n`;\r\n\r\nexport const ConsumptionRow = styled.span`\r\n display: flex;\r\n flex-direction: row;\r\n width: 100%;\r\n marginLeft: 5px;\r\n`;\r\n\r\nexport const DateRow = styled.span`\r\n display: flex;\r\n flex-direction: row;\r\n width: 370px;\r\n marginLeft: 5px;\r\n`;\r\n\r\nexport const InputLabel = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 5px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const DateLabel = styled.span`\r\n width: 30px;\r\n transition: all 0.2s\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const InputText = styled.input`\r\nmargin-left: 3px;\r\ntype: text;\r\nborder: none;\r\noutline: none;\r\nborderBottom: none;\r\nwidth: 100px;\r\n::-webkit-inner-spin-button{\r\n -webkit-appearance: none;\r\n margin: 0;\r\n}\r\n::-webkit-outer-spin-button{\r\n -webkit-appearance: none;\r\n margin: 0;\r\n}\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 12px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const Form = styled.form`\r\n display: flex;\r\n width: '100&';\r\n flex-direction: column;\r\n `;\r\nexport const CicleDetailContainer = styled.form`\r\n margin: -28px 10px;\r\n display: flex;\r\n width: 570px;\r\n flex-direction: column;\r\n padding-right: 15px;\r\n`;\r\nexport const TitleSelectRow = styled.form`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n`;\r\n\r\nexport const CustomInputCicle = styled.div`\r\n font-size: 12px;\r\n color: #000;\r\n width: 45%;\r\n border: 1px solid ${colors.Grey030};\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 1px solid ${colors.GreyLight};\r\n`;\r\n\r\nexport const CicleInfoContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n`;\r\n\r\nexport const CicleInfoRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n padding-top: 15px;\r\n`;\r\n\r\nexport const CicleDateInfoRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: flex-start;\r\n padding-top: 15px;\r\n`;\r\n\r\nexport const ItemRow = styled.div`\r\n width: 20%;\r\n display: flex;\r\n flex-direction: column;\r\n text-align: left;\r\n`;\r\n\r\nexport const ItemDateRow = styled.div`\r\n width: 200px;\r\n display: flex;\r\n flex-direction: column;\r\n text-align: left;\r\n`;\r\n\r\nexport const ItemTitle = styled.div`\r\n width: 120%;\r\n color: #202370;\r\n font-weight: bold;\r\n font-size: 14px;\r\n`;\r\nexport const ItemSubTitle = styled.div`\r\n font-size: 12px;\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n margin-top: 15px;\r\n margin-right: 15px;\r\n cursor: pointer;\r\n position: relative;\r\n top: -10px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const IconWrapperView = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n position: relative;\r\n margin-right: 15px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const Content = styled.div`\r\n width: 90%;\r\n position: relative;\r\n margin: 30px 80px 40px;\r\n display: flex;\r\n justify-content: space-between;\r\n @media (max-width: 568px) {\r\n flex-direction: column;\r\n margin: 20px 10px;\r\n align-items: center;\r\n }\r\n`;\r\n\r\nexport const BaseLinesBool = styled.div`\r\n align-items: center;\r\n display: flex;\r\n flex-direction: row;\r\n font-weight: bold;\r\n font-size: 16px;\r\n margin-left: 15px;\r\n margin: 30px;\r\n width: 100px;\r\n height: 30px;\r\n border: solid 1x black;\r\n`;\r\n\r\nexport const ContentEnergyMeter = styled.div`\r\n position: relative;\r\n display: flex;\r\n margin: 30px 100px 40px;\r\n justify-content: space-between;\r\n gap: 40px;\r\n flex-direction: column;\r\n\r\n @media (max-width: 568px) {\r\n margin: 20px 10px;\r\n align-items: center;\r\n }\r\n`;\r\n\r\nexport const Text = styled.text`\r\ncolor: ${colors.Black};\r\n`;\r\n\r\nexport const Unit = styled.div`\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n background-color: #F2F0F0;\r\n font-size: 13px;\r\n text-align: center;\r\n color: #818181;\r\n height: 25px;\r\n margin-left: 3px;\r\n padding-left: 7px;\r\n padding-right: 7px;\r\n`;\r\n\r\nexport const Test = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n width: 35%;\r\n height: 50px;\r\n padding: 8px;\r\n`;\r\n\r\nexport const InputRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n position: relative;\r\n width: 95%;\r\n height: 50px;\r\n`;\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.Pink200};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.Pink200};\r\n border: 1px double ${colors.Pink200};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.Pink400};\r\n border: 1px double ${colors.Pink400};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.Pink200};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.Pink400};\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const BtnExport = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n width: fit-content;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n ${Text} {\r\n color: ${colors.White}\r\n }\r\n }\r\n`;\r\n\r\nexport const ExportWorksheet = styled(ExportWorksheetIcon)(\r\n () => `\r\n color: #363BC4\r\n`,\r\n);\r\n\r\nexport const ModalTitle2 = styled.div`\r\n color: black;\r\n font-weight: bold;\r\n font-size: 1rem;\r\n`;\r\n\r\nexport const IconWrapper2 = styled.div`\r\n cursor: pointer;\r\n`;\r\n\r\nexport const SectionContainer = styled.div`\r\n padding: 15px 22px 22px 15px;\r\n`;\r\n\r\nexport const SimpleButton = styled(Button)`\r\n width: initial;\r\n padding: 8px 15px;\r\n margin: 7px 7px;\r\n`;\r\n\r\nexport const SeeAssociationGroups = styled.p`\r\ncolor: black;\r\ntext-decoration: underline;\r\ncursor: pointer;\r\nmargin-top: 0;\r\nmargin-bottom: 0;\r\n`;\r\n\r\nexport const ModalDesktop = styled.div`\r\n display: none;\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nexport const Container = styled.div`\r\n`;\r\n\r\nexport const MobileWrapper = styled.div`\r\n top: 0;\r\n left: 0;\r\n display: block;\r\n position: fixed;\r\n background-color: ${colors.White};\r\n width: 100%;\r\n height: 100vh;\r\n z-index: 1;\r\n overflow-y: auto;\r\n overflow-x: hidden;\r\n transition: all 0.5s ease-in-out;\r\n\r\n @media (min-width: 568px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nexport const ModalSection = styled.div`\r\n width: 100%;\r\n height: 80px;\r\n background: ${colors.Grey030};\r\n border-bottom: 2px solid ${colors.Grey100};\r\n box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);\r\n`;\r\n\r\nexport const ModalTitleContainer = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: 100%;\r\n width: 100%;\r\n padding: 16px;\r\n svg {\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const ModalTitle = styled.span`\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const ModalCancel = styled.p`\r\n cursor: pointer;\r\n font-size: 1em;\r\n color: ${colors.Grey200};\r\n text-decoration: underline;\r\n width: 140px;\r\n text-align: left;\r\n margin-top: 10px;\r\n margin-left: 5px;\r\n &:hover {\r\n color: ${colors.Blue400};\r\n }\r\n`;\r\nexport const ModalDisassociate = styled.p`\r\n cursor: pointer;\r\n font-size: 1em;\r\n color: ${colors.Red};\r\n text-decoration: underline;\r\n width: 140px;\r\n text-align: left;\r\n margin-top: 10px;\r\n margin-left: 5px;\r\n &:hover {\r\n color: ${colors.Blue400};\r\n }\r\n`;\r\n\r\nexport const EditCicleContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n height: 750px;\r\n justifyContent: space-between;\r\n padding: 5%;\r\n`;\r\n\r\nexport const ModelRateContainer = styled.div`\r\n display: flex;\r\n flex-drection: row;\r\n width: 400px;\r\n padding-top: 20px;\r\n justify-content: space-between;\r\n margin-left: 5px;\r\n`;\r\n\r\nexport const CancelButton = styled.div`\r\n text-decoration: underline;\r\n color: #6C6B6B;\r\n`;\r\n\r\nexport const RateGroupsTitle = styled.div`\r\n color: #202370;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const ContentTab = styled.div`\r\ndisplay: flex;\r\nalign-items: center;\r\npadding: 0;\r\nheight: 35px;\r\nmax-width: 100%;\r\nborder-bottom: 2px solid ${colors.Grey100};\r\njustify-content: space-between;\r\nmargin-bottom: 10px;\r\nmargin-top: 25px;\r\n@media (max-width: 768px) {\r\n height: 50px;\r\n overflow-x: scroll;\r\n}\r\n`;\r\n\r\nexport const StyledList = styled.ul`\r\ndisplay: flex;\r\nflex-direction: row;\r\nalign-items: center;\r\njustify-content: flex-start;\r\nlist-style: none;\r\npadding: 0;\r\nli:not(:first-child) {\r\n margin-left: 32px;\r\n}\r\n.active {\r\n color: ${colors.Blue300}; // texto nav maior\r\n}\r\n`;\r\n\r\nexport const StyledItem = styled.li`\r\ndisplay: flex;\r\nalign-items: center;\r\njustify-content: center;\r\nflex-direction: column;\r\nwhite-space: nowrap;\r\n`;\r\n\r\nexport const StyledName = styled.span<{ isActive: boolean }>(({ isActive }) => `\r\ncolor: ${isActive ? colors.Blue300 : colors.Grey500};\r\nfont-size: 14px;\r\nfont-weight: bold;\r\ntext-decoration: none;\r\nmargin-top: 10px;\r\n :hover {\r\n color: ${colors.Blue300};\r\n }\r\n\r\n`);\r\n\r\nexport const ModalTitle3 = styled.div`\r\n color: black;\r\n font-weight: bold;\r\n font-size: 0.9rem;\r\n`;\r\n\r\nexport const LabelSwitch = styled.span`\r\n display: inline-block;\r\n max-width: 70px;\r\n font-size: 14px;\r\n @media (max-width: 400px) {\r\n font-size: 9px;\r\n }\r\n`;\r\n\r\nexport const CloseBtn = styled.span`\r\n color: ${colors.Blue200};\r\n text-decoration: underline;\r\n font-size: 10px;\r\n :hover {\r\n color: ${colors.Blue400};\r\n }\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n margin: 0 8px 0 8px;\r\n`;\r\n\r\nexport const CustomInputConstructedArea = styled.div`\r\n span:nth-child(3) {\r\n top: 30% !important;\r\n }\r\n`;\r\n","import { DayProg } from 'providers/types';\r\nimport { t } from 'i18next';\r\n\r\ninterface ProgData {\r\n type: string,\r\n startHM: string,\r\n endHM: string,\r\n desc: string,\r\n isDefault: boolean,\r\n}\r\n\r\nexport function parseProgrammingString(pString: string) {\r\n const pData: ProgData = {\r\n type: 'disabled', startHM: '00:00', endHM: '23:59', desc: t('diaTodo'), isDefault: true,\r\n };\r\n if (pString) {\r\n const rgx = /^(\\w+)(;(\\d\\d:\\d\\d)-(\\d\\d:\\d\\d))?$/;\r\n const matched = pString.match(rgx);\r\n if (matched) {\r\n const [, , period, startHM, endHM] = matched;\r\n let [, type] = matched;\r\n if (type === 'allow') type = 'enabled';\r\n if (type === 'forbid') type = 'disabled';\r\n if (['disabled', 'enabled'].includes(type)) pData.type = type;\r\n else {\r\n console.log('Invalid programming string:', pString);\r\n }\r\n if (period) {\r\n pData.startHM = startHM;\r\n pData.endHM = endHM;\r\n }\r\n pData.isDefault = false;\r\n } else {\r\n console.log('Invalid programming string:', pString);\r\n }\r\n }\r\n fillDescription(pData);\r\n return pData;\r\n}\r\n\r\nexport function fillDescription(pData: ProgData) {\r\n const wholeDay = (pData.startHM === '00:00') && (pData.endHM === '23:59');\r\n if (wholeDay) {\r\n if (pData.type === 'enabled') pData.desc = t('diaTodo');\r\n else if (pData.type === 'disabled') pData.desc = t('naoMonitorado');\r\n else pData.desc = t('desconhecido');\r\n return;\r\n }\r\n if (pData.type === 'enabled') pData.desc = t('horarioAte', { startHM: pData.startHM, endHM: pData.endHM });\r\n else pData.desc = t('desconhecido');\r\n}\r\n\r\nexport function describeDay(dayString: string) {\r\n if (dayString === 'mon') return t('diaSeg');\r\n if (dayString === 'tue') return t('diaTer');\r\n if (dayString === 'wed') return t('diaQua');\r\n if (dayString === 'thu') return t('diaQui');\r\n if (dayString === 'fri') return t('diaSex');\r\n if (dayString === 'sat') return t('diaSab');\r\n if (dayString === 'sun') return t('diaDom');\r\n if (dayString.match(/^\\d\\d\\d\\d-\\d\\d-\\d\\d$/)) {\r\n return `${dayString.substr(0, 4)}/${dayString.substr(5, 2)}/${dayString.substr(8, 2)}`;\r\n }\r\n return dayString;\r\n}\r\n\r\nexport function getDaySched(workPeriods: { [day: string]: string }, workPeriodExceptions: { [day: string]: string }, day?: string) {\r\n const asDate = day ? new Date(`${day}T00:00:00Z`) : new Date(Date.now() - 3 * 60 * 60 * 1000);\r\n const dayWeek = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'][asDate.getUTCDay()];\r\n const dayDate = asDate.toISOString().substr(0, 10);\r\n const sched = { ...workPeriods, ...workPeriodExceptions };\r\n const todaySchedule = sched && (sched[dayDate] || sched[dayWeek]);\r\n const pData = parseProgrammingString(todaySchedule);\r\n return pData;\r\n}\r\n\r\nexport function getDayProgDesc(dayProgInfo: DayProg|null) {\r\n // {\"permission\":\"allow\",\"start\":\"07:30\",\"end\":\"17:05\"}\r\n const modes: { [k: string]: string } = {\r\n allow: t('permitido'),\r\n forbid: t('desligado').toLocaleLowerCase(),\r\n };\r\n if (!dayProgInfo) return t('semInformacoes');\r\n if (dayProgInfo.clearProg) return t('semProgramacao');\r\n if (dayProgInfo.permission && dayProgInfo.start && dayProgInfo.end) {\r\n if (dayProgInfo.permission === 'allow') {\r\n return `${t('horarioDeAte', { start: dayProgInfo.start, end: dayProgInfo.end })}`.replace(t('de00.00ate23.59'), t('diaTodo'));\r\n }\r\n return `${modes[dayProgInfo.permission] || dayProgInfo.permission} ${t('horarioEntre', { start: dayProgInfo.start, end: dayProgInfo.end })}`.replace(` ${t('entre00.00e23.59')}`, ` ${t('diaTodo')}`);\r\n }\r\n\r\n return t('semInformacoes');\r\n}\r\n","import { useState } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Button, Select } from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { apiCall } from '~/providers';\r\n\r\nexport const FormAssociateDevs = ({\r\n clientId, devsList, unitsList, groupsList, onSuccess, onCancel,\r\n}): JSX.Element => {\r\n const [state, render] = useStateVar({\r\n submitting: false,\r\n dacs: null,\r\n duts: null,\r\n });\r\n const [formData, set_formData] = useState({\r\n unit: null,\r\n group: null,\r\n });\r\n state.dacs = devsList.filter((dev) => dev.type === 'DAC');\r\n state.duts = devsList.filter((dev) => dev.type === 'DUT');\r\n\r\n async function confirm() {\r\n let success = false;\r\n try {\r\n // @ts-ignore\r\n if ((!state.dacs.length) && (!state.duts.length)) {\r\n alert('Nenhum dispositivo para associar');\r\n return;\r\n }\r\n // @ts-ignore\r\n if (!formData.unit) {\r\n alert('Unidade não selecionada');\r\n return;\r\n }\r\n // @ts-ignore\r\n if (state.dacs.length && (!formData.group)) {\r\n alert('Máquina não selecionada');\r\n return;\r\n }\r\n state.submitting = true; render();\r\n // @ts-ignore\r\n for (const dev of state.dacs) {\r\n await apiCall('/dac/set-dac-info', {\r\n // @ts-ignore\r\n DAC_ID: dev.DEV_ID, CLIENT_ID: clientId, UNIT_ID: formData.unit.UNIT_ID, GROUP_ID: formData.group.GROUP_ID,\r\n }).then((data) => ({ data }));\r\n }\r\n // @ts-ignore\r\n for (const dev of state.duts) {\r\n // @ts-ignore\r\n await apiCall('/dut/set-dut-info', { DEV_ID: dev.DEV_ID, CLIENT_ID: clientId, UNIT_ID: formData.unit.UNIT_ID }).then((data) => ({ data }));\r\n }\r\n success = true;\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.submitting = false; render();\r\n if (success) onSuccess({});\r\n }\r\n\r\n function set_group(item) {\r\n formData.group = item;\r\n if (item && !formData.unit) {\r\n const unit = unitsList.find((unit) => unit.UNIT_ID === item.UNIT_ID);\r\n if (unit) formData.unit = unit;\r\n }\r\n set_formData({ ...formData });\r\n }\r\n\r\n return (\r\n
\r\n { set_formData({ ...formData, unit: item, group: null }); }}\r\n />\r\n
\r\n {/* @ts-ignore */}\r\n {groupsList && (state.dacs.length > 0)\r\n && (\r\n ((!formData.unit) || group.UNIT_ID === formData.unit.UNIT_ID))}\r\n propLabel=\"GROUP_NAME\"\r\n value={formData.group}\r\n placeholder=\"Máquina\"\r\n // eslint-disable-next-line react/jsx-no-bind\r\n onSelect={set_group}\r\n // @ts-ignore\r\n disabled={!formData.unit}\r\n />\r\n )}\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","export const handlePaste = (event: React.ClipboardEvent, setUnits) => {\r\n const pastedData = event.clipboardData.getData('Text');\r\n const pastedItems = pastedData.split(/\\r?\\n/).map((item) => item.trim());\r\n setUnits(pastedItems);\r\n if (document.activeElement instanceof HTMLElement) {\r\n document.activeElement.blur();\r\n }\r\n};\r\n","import { useState, useMemo, useEffect } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Input, SelectMultiple,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport { handlePaste } from '~/helpers/pasteHelper';\r\nimport { ButtonClear } from '../Analysis/styles';\r\nimport { t } from 'i18next';\r\n\r\nexport const FormEditClass = ({\r\n clientId, onSuccess, onCancel, classInfo, unitsList,\r\n}): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n listUnitsSelect: unitsList.map((item) => ({ value: item.UNIT_ID, name: item.UNIT_NAME, checked: false })) as { name: string, value: number, checked: boolean }[],\r\n submitting: false,\r\n editingExtras: false,\r\n isLoading: false,\r\n selectedUnits: [] as any,\r\n formData: {\r\n CLASS_ID: (classInfo && classInfo.CLASS_ID) || null,\r\n // @ts-ignore\r\n CLASS_TYPE: (classInfo && classInfo.CLASS_TYPE) || '',\r\n // @ts-ignore\r\n CLASS_NAME: (classInfo && classInfo.CLASS_NAME) || '',\r\n },\r\n isEdit: !!(classInfo && classInfo.CLASS_ID),\r\n });\r\n\r\n async function getClassUnits() {\r\n if (state.formData.CLASS_ID) {\r\n const { list: oldClassUnitsList } = await apiCall('/clients/get-class-units', { CLASS_ID: state.formData.CLASS_ID, CLIENT_ID: clientId });\r\n const oldClassUnitsIds = oldClassUnitsList.map((unit) => unit.UNIT_ID);\r\n state.listUnitsSelect.forEach((item) => { if (oldClassUnitsIds.includes(item.value)) item.checked = true; });\r\n render();\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n setState({ listUnitsSelect: unitsList.map((item) => ({ value: item.UNIT_ID, name: item.UNIT_NAME, checked: false })) });\r\n getClassUnits();\r\n }, []);\r\n\r\n async function confirm() {\r\n let response: ({ CLASS_ID: number} | null) = null;\r\n let action = null;\r\n try {\r\n state.submitting = true; render();\r\n const reqData = {\r\n CLASS_ID: state.formData.CLASS_ID || undefined,\r\n CLIENT_ID: clientId,\r\n CLASS_TYPE: state.formData.CLASS_TYPE || null,\r\n CLASS_NAME: state.formData.CLASS_NAME || null,\r\n };\r\n if (state.isEdit) {\r\n // @ts-ignore\r\n response = await apiCall('/clients/edit-client-class', reqData);\r\n const unitIdsList = state.listUnitsSelect.filter((x) => x.checked).map((item) => item.value);\r\n await apiCall('/clients/set-class-units', { UNIT_IDS: unitIdsList, CLASS_ID: reqData.CLASS_ID, CLIENT_ID: clientId });\r\n // @ts-ignore\r\n action = 'edit';\r\n } else {\r\n // @ts-ignore\r\n response = await apiCall('/clients/add-client-class', reqData);\r\n const unitIdsList = state.listUnitsSelect.filter((x) => x.checked).map((item) => item.value);\r\n await apiCall('/clients/set-class-units', { UNIT_IDS: unitIdsList, CLASS_ID: response?.CLASS_ID, CLIENT_ID: clientId });\r\n // @ts-ignore\r\n action = 'new';\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n state.submitting = false; render();\r\n if (response && action) onSuccess({ item: response, action });\r\n }\r\n\r\n // function onStateSelected(item) {\r\n // formData.state_item = item;\r\n // // @ts-ignore\r\n // const selectedState = formData.state_item && formData.state_item.STATE_ID;\r\n // // @ts-ignore\r\n // if (formData.city_item && formData.city_item.STATE_ID !== selectedState) {\r\n // formData.city_item = null;\r\n // }\r\n // render();\r\n // }\r\n\r\n // if (formData.city_item && !formData.state_item) {\r\n // // @ts-ignore\r\n // formData.state_item = states.find((item) => item.STATE_ID === formData.city_item.STATE_ID);\r\n // }\r\n\r\n // const filtCities = useMemo(() => {\r\n // if (!formData.state_item) return cities;\r\n // // @ts-ignore\r\n // return cities.filter((city) => city.STATE_ID === formData.state_item.STATE_ID);\r\n // }, [formData.state_item, cities]);\r\n\r\n function setUnits(pastedItems) {\r\n const matchingUnits = (state.listUnitsSelect || []).filter((unit) => pastedItems?.includes(unit.name)).map((unit) => unit);\r\n const onlyIds = matchingUnits.map((item) => item.value);\r\n state.listUnitsSelect.forEach((item) => {\r\n if (onlyIds.includes(item.value)) item.checked = true;\r\n });\r\n render();\r\n }\r\n\r\n function handleSelectItem(value) {\r\n const item = state.listUnitsSelect.find((item) => item.value === value.value);\r\n if (item) item.checked = !value.checked;\r\n render();\r\n }\r\n\r\n function clearSelected() {\r\n state.listUnitsSelect = state.listUnitsSelect.map((item) => ({ ...item, checked: false }));\r\n render();\r\n }\r\n\r\n return (\r\n
\r\n { state.formData.CLASS_TYPE = event.target.value; render(); }}\r\n />\r\n
\r\n { state.formData.CLASS_NAME = event.target.value; render(); }}\r\n />\r\n
handlePaste(e, setUnits)}>\r\n x.checked)}\r\n haveFuzzySearch\r\n search\r\n propLabel=\"name\"\r\n placeholder=\"Unidades\"\r\n onSelect={(item) => handleSelectItem(item)}\r\n />\r\n \r\n clearSelected()}>\r\n {t('limpar')}\r\n \r\n
\r\n
\r\n {(state.isEdit)\r\n && (\r\n
\r\n setState({ editingExtras: true })}>Metadados\r\n
\r\n )}\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n );\r\n};\r\n\r\nconst FakeLink = styled.span`\r\n color: black;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n`;\r\n","import { useState } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Button, Input, Select } from '~/components';\r\nimport { apiCall } from '~/providers';\r\n\r\nexport const FormEditDut = ({\r\n dutInfo, unitInfo, unitsList, roomTypes, onSuccess, onCancel,\r\n}): JSX.Element => {\r\n const [, stateChanged] = useState({});\r\n const [state] = useState({\r\n changed() { stateChanged({}); },\r\n submitting: false,\r\n formData: {\r\n DEV_ID: dutInfo.DEV_ID,\r\n ROOM_NAME: (dutInfo && dutInfo.ROOM_NAME) || '',\r\n unit: unitInfo || (unitsList && dutInfo && dutInfo.UNIT_ID && unitsList.find((unit) => unit.UNIT_ID === dutInfo.UNIT_ID)) || null,\r\n roomType: (dutInfo && dutInfo.RTYPE_ID && roomTypes.find((item) => item.RTYPE_ID === dutInfo.RTYPE_ID)) || null,\r\n },\r\n });\r\n\r\n const { formData } = state;\r\n\r\n async function confirm() {\r\n let response = null as null|string;\r\n let action = null;\r\n try {\r\n state.submitting = true; state.changed();\r\n const reqData = {\r\n DEV_ID: formData.DEV_ID,\r\n UNIT_ID: formData.unit && formData.unit.UNIT_ID,\r\n ROOM_NAME: formData.ROOM_NAME || null,\r\n RTYPE_ID: (formData.roomType && formData.roomType.RTYPE_ID) || null,\r\n CLIENT_ID: dutInfo.CLIENT_ID,\r\n };\r\n // @ts-ignore\r\n action = 'set';\r\n if (dutInfo.DEV_ID === '-') {\r\n response = await apiCall('/environments/edit-environment', {\r\n ENVIRONMENT_ID: dutInfo.ENVIRONMENT_ID,\r\n ENVIRONMENT_NAME: reqData.ROOM_NAME,\r\n RTYPE_ID: reqData.RTYPE_ID,\r\n UNIT_ID: reqData.UNIT_ID,\r\n CLIENT_ID: dutInfo.CLIENT_ID,\r\n });\r\n }\r\n if (dutInfo.DEV_ID.startsWith('DUT')) {\r\n // @ts-ignore\r\n response = await apiCall('/dut/set-dut-info', { ...reqData, ENVIRONMENT_ID: dutInfo.ENVIRONMENT_ID || undefined }).then((data) => ({ data }));\r\n }\r\n if (dutInfo.DEV_ID.startsWith('DRI')) {\r\n await apiCall('/dri/set-dri-info', { DRI_ID: formData.DEV_ID, UNIT_ID: formData.unit && formData.unit.UNIT_ID });\r\n response = await apiCall('/dri/update-dri-vav', { VAV_ID: formData.DEV_ID, ROOM_NAME: formData.ROOM_NAME || null, RTYPE_ID: (formData.roomType && formData.roomType.RTYPE_ID) || null });\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.submitting = false; state.changed();\r\n // @ts-ignore\r\n if (response && action) onSuccess({ item: response.data, action });\r\n }\r\n\r\n return (\r\n
\r\n {unitsList\r\n && (\r\n { toast.warn('Ambiente não pode ser alterado de unidade! Apenas dispositivo relacionado ao ambiente será realocado!'); state.formData.unit = item; state.changed(); }}\r\n />\r\n )}\r\n { state.formData.ROOM_NAME = event.target.value; state.changed(); }}\r\n />\r\n {(roomTypes.length > 0)\r\n && (\r\n { state.formData.roomType = item; state.changed(); }}\r\n />\r\n )}\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { ChangeEvent, useEffect, useState } from 'react';\r\n\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Input, Loader, RadioButton, Checkbox,\r\n} from 'components';\r\nimport { getDayProgDesc } from 'helpers/scheduleData';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { EditIcon, TrashIcon } from 'icons';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\nimport { colors } from 'styles/colors';\r\n\r\nconst weekDaysList = {\r\n mon: 'Seg',\r\n tue: 'Ter',\r\n wed: 'Qua',\r\n thu: 'Qui',\r\n fri: 'Sex',\r\n sat: 'Sáb',\r\n sun: 'Dom',\r\n};\r\n\r\nexport function SchedulesList(props: {\r\n devSched: FullProg_v4,\r\n wantDelException: ((date: string) => void)|null,\r\n wantAddProg: (() => void)|null,\r\n wantEditDay: ((day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => void)|null,\r\n wantRemoveDay: ((day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => void)|null,\r\n isLoading: boolean,\r\n readOnly?: boolean,\r\n}): JSX.Element {\r\n const {\r\n devSched, wantDelException, wantAddProg, wantEditDay, wantRemoveDay, isLoading,\r\n } = props;\r\n const [state, render, setState] = useStateVar({\r\n dayProgs: [] as {\r\n day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun',\r\n dayName: string,\r\n text: string,\r\n isBlank: boolean,\r\n }[],\r\n excepts: [] as { dateYMD: string, date: string, text: string }[],\r\n });\r\n\r\n useEffect(() => {\r\n const daysList: (keyof typeof weekDaysList)[] = ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'];\r\n if (!devSched.week) devSched.week = {};\r\n state.dayProgs = daysList.map((day) => ({\r\n day,\r\n dayName: weekDaysList[day],\r\n text: getDayProgDesc((devSched.week && devSched.week[day]) || null),\r\n isBlank: !(devSched.week && devSched.week[day]),\r\n }));\r\n state.excepts = Object.entries(devSched.exceptions || {}).map(([day, prog]) => ({\r\n dateYMD: day,\r\n date: `${day.substr(8, 2)}/${day.substr(5, 2)}/${day.substr(0, 4)}`,\r\n text: getDayProgDesc(prog),\r\n }));\r\n render();\r\n }, [devSched]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n {(!isLoading) ? (\r\n <>\r\n \r\n \r\n
\r\n
\r\n {(!props.readOnly) && (\r\n \r\n )}\r\n  \r\n
\r\n \r\n \r\n \r\n \r\n 0) ? 1 / 2 : 1]} pr={[0, 0, 0, 0, 40]}>\r\n Funcionamento\r\n {state.dayProgs.map((item) => (\r\n \r\n {item.dayName}\r\n {item.text}\r\n
\r\n {(item.isBlank || props.readOnly)\r\n ?
 
\r\n : (\r\n <>\r\n { wantRemoveDay && wantRemoveDay(item.day); }}>\r\n \r\n \r\n { wantEditDay && wantEditDay(item.day); }}>\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n {(state.excepts.length > 0) && (\r\n \r\n Exceções\r\n {state.excepts.map((item) => (\r\n \r\n {item.date}\r\n {item.text}\r\n
\r\n {(!props.readOnly) && (\r\n wantDelException && wantDelException(item.dateYMD)}>\r\n \r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n )}\r\n
\r\n
\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport function SchedulesEdit(props: {\r\n devSched: FullProg_v4,\r\n selectedDay: null|('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n onConfirmProg: (days: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')[], prog: DayProg) => void,\r\n onCancel: () => void,\r\n isSending: boolean,\r\n}) {\r\n const {\r\n devSched, selectedDay, onConfirmProg, onCancel, isSending,\r\n } = props;\r\n\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n exception_date: '',\r\n ruleException: 'rule' as 'rule'|'exception',\r\n allowForbid: 'allow' as 'allow'|'forbid',\r\n weekDays: Object.entries(weekDaysList).map(([day, name]) => ({ name, day: day as keyof typeof weekDaysList, checked: false })),\r\n start_time: '',\r\n end_time: '',\r\n formErrors: {\r\n start_time: '',\r\n end_time: '',\r\n days: '',\r\n },\r\n };\r\n\r\n const editProg = selectedDay && devSched.week && devSched.week[selectedDay];\r\n if (editProg) {\r\n for (const item of state.weekDays) {\r\n item.checked = (item.day === selectedDay);\r\n }\r\n state.start_time = editProg.start || '';\r\n state.end_time = editProg.end || '';\r\n }\r\n\r\n return state;\r\n });\r\n\r\n function handleSelectDay(day: { checked: boolean }) {\r\n day.checked = !day.checked;\r\n render();\r\n }\r\n\r\n function validateForm() {\r\n let start_index = null as null|number;\r\n if (!/^\\d\\d:\\d\\d$/.test(state.start_time)) {\r\n state.formErrors.start_time = 'O campo de tempo inicial é obrigatório';\r\n } else {\r\n const horas = Number(state.start_time.substr(0, 2));\r\n const minutos = Number(state.start_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n state.formErrors.start_time = 'Valor inválido';\r\n } else {\r\n state.formErrors.start_time = '';\r\n start_index = horas * 60 + minutos;\r\n }\r\n }\r\n if (!/^\\d\\d:\\d\\d$/.test(state.end_time)) {\r\n state.formErrors.end_time = 'O campo de tempo final é obrigatório';\r\n } else {\r\n const horas = Number(state.end_time.substr(0, 2));\r\n const minutos = Number(state.end_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n state.formErrors.end_time = 'Valor inválido';\r\n } else {\r\n const end_index = horas * 60 + minutos;\r\n if (start_index != null && !(end_index >= start_index)) {\r\n state.formErrors.end_time = 'Valor inválido';\r\n } else {\r\n state.formErrors.end_time = '';\r\n }\r\n }\r\n }\r\n if (state.ruleException === 'rule') {\r\n if (!state.weekDays.some((item) => item.checked)) {\r\n state.formErrors.days = 'É necessário selecionar no mínimo um dia';\r\n } else {\r\n state.formErrors.days = '';\r\n }\r\n } else if (state.ruleException === 'exception') {\r\n if (state.exception_date.length !== 10 || state.exception_date.includes('_')) {\r\n state.formErrors.days = 'A data da exceção é obrigatória';\r\n } else {\r\n state.formErrors.days = '';\r\n }\r\n }\r\n render();\r\n return !(state.formErrors.start_time || state.formErrors.end_time || state.formErrors.days);\r\n }\r\n\r\n function handleSubmit() {\r\n if (!validateForm()) return;\r\n const prog = {\r\n permission: state.allowForbid,\r\n start: state.start_time,\r\n end: state.end_time,\r\n };\r\n if (state.ruleException === 'rule') {\r\n const days = state.weekDays.filter((item) => item.checked).map((item) => item.day);\r\n onConfirmProg(days, prog);\r\n }\r\n // else if (state.ruleException === 'exception') {\r\n // const { exception_date } = state;\r\n // const day = `${exception_date.substr(6, 4)}-${exception_date.substr(3, 2)}-${exception_date.substr(0, 2)}`;\r\n // onConfirmExcept(day, prog);\r\n // }\r\n }\r\n\r\n return (\r\n \r\n
\r\n \r\n \r\n ) => { state.start_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n ) => { state.end_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n { state.start_time = '00:00'; state.end_time = '23:59'; render(); }}\r\n />\r\n \r\n \r\n Dias\r\n \r\n \r\n {state.weekDays.map((item) => (\r\n { handleSelectDay(item); }}\r\n >\r\n {item.name}\r\n \r\n ))}\r\n \r\n \r\n x.checked).length === 7)}\r\n onClick={() => { state.weekDays.forEach((x) => x.checked = true); render(); }}\r\n />\r\n \r\n \r\n {state.formErrors.days && {state.formErrors.days}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function SchedulesRemove(props: {\r\n selectedDay: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n onConfirm: (day: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')) => void,\r\n onCancel: () => void,\r\n isRemoving: boolean,\r\n}) {\r\n const {\r\n selectedDay, onConfirm, onCancel, isRemoving,\r\n } = props;\r\n return (\r\n <>\r\n \r\n \r\n Tem certeza que deseja excluir esta programação?\r\n \r\n \r\n \r\n \r\n
{ onCancel(); }}>\r\n \r\n
\r\n
\r\n \r\n
onConfirm(selectedDay)}>\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nconst Text = styled.p<{ isBold?: boolean }>(\r\n ({ isBold }) => `\r\n margin-bottom: ${isBold ? 0 : '1em'};\r\n margin-top: ${isBold ? '1em' : 0};\r\n color: ${isBold ? colors.Grey300 : colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n `,\r\n);\r\n\r\nconst ProgTable = styled.div`\r\n display: grid;\r\n grid-template-columns: 43px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst ProgTableExc = styled.div`\r\n display: grid;\r\n grid-template-columns: 90px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst TextProgTabDay = styled.span`\r\n color: ${colors.Grey300};\r\n font-weight: bold;\r\n`;\r\n\r\nconst TextProgTabMode = styled.div`\r\n display: grid;\r\n grid-template-columns: auto auto;\r\n`;\r\n\r\nconst ItemTitle = styled.h3`\r\n margin-bottom: 0;\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Blue300};\r\n`;\r\n\r\nconst ItemWrapper = styled.div`\r\n width: 100%;\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n cursor: pointer;\r\n`;\r\n\r\nconst SelectDay = styled.div<{ isSelected: boolean, ruleException: 'rule'|'exception' }>(\r\n ({ isSelected, ruleException }) => `\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n width: 48px;\r\n height: 32px;\r\n box-sizing: border-box;\r\n border-radius: 8px;\r\n margin-left: 2px;\r\n margin-right: 2px;\r\n background-color: ${ruleException === 'rule' ? (isSelected ? colors.Blue300 : colors.White) : colors.White};\r\n border: 1px solid ${ruleException === 'rule' ? colors.Blue300 : colors.Grey200};\r\n color: ${ruleException === 'rule' ? (isSelected ? colors.White : colors.Blue300) : colors.Grey200};\r\n `,\r\n);\r\n\r\nconst ErrorMessage = styled.span`\r\n color: ${colors.Red};\r\n font-size: 0.75em;\r\n`;\r\n","import { ChangeEvent, useEffect, useState } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Button, Input, Checkbox } from 'components';\r\nimport parseDecimalNumber from 'helpers/parseDecimalNumber';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { SchedulesList, SchedulesRemove, SchedulesEdit } from 'pages/Analysis/SchedulesModals/RoomSchedule';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\n\r\ntype TDayString = ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun');\r\n\r\nfunction verifyExistOrReturnString(item) {\r\n if (item != null && String(item)) {\r\n return String(item);\r\n }\r\n return '';\r\n}\r\n\r\nexport const FormEditRoomType = (props: {\r\n roomTypeInfo: {\r\n RTYPE_ID: number\r\n RTYPE_NAME: string\r\n TUSEMIN: number\r\n TUSEMAX: number\r\n fullProg: FullProg_v4\r\n CO2MAX: number\r\n HUMIMAX: number\r\n HUMIMIN: number\r\n }\r\n clientId: number\r\n onSuccess: (pars: { action: string, item: {} }) => void\r\n onCancel: () => void\r\n}): JSX.Element => {\r\n const {\r\n roomTypeInfo, clientId, onSuccess, onCancel,\r\n } = props;\r\n const [state, render, setState] = useStateVar({\r\n schedulesTypeActive: 'List',\r\n submitting: false,\r\n editDayString: null as null|TDayString,\r\n monTypesSelected: [] as string[],\r\n formData: {\r\n RTYPE_ID: (roomTypeInfo?.RTYPE_ID) || null,\r\n RTYPE_NAME: (roomTypeInfo?.RTYPE_NAME) || '',\r\n TUSEMIN: verifyExistOrReturnString(roomTypeInfo?.TUSEMIN),\r\n TUSEMAX: verifyExistOrReturnString(roomTypeInfo?.TUSEMAX),\r\n fullProg: (roomTypeInfo?.fullProg) || {},\r\n CO2MAX: verifyExistOrReturnString(roomTypeInfo?.CO2MAX),\r\n HUMIMAX: verifyExistOrReturnString(roomTypeInfo?.HUMIMAX),\r\n HUMIMIN: verifyExistOrReturnString(roomTypeInfo?.HUMIMIN),\r\n },\r\n });\r\n const { formData } = state;\r\n const isEdit = !!formData.RTYPE_ID;\r\n\r\n useEffect(() => {\r\n if (formData.TUSEMAX || formData.TUSEMIN) {\r\n state.monTypesSelected.push('temp');\r\n render();\r\n }\r\n if (formData.CO2MAX) {\r\n state.monTypesSelected.push('co2');\r\n render();\r\n }\r\n if (formData.HUMIMAX || formData.HUMIMIN) {\r\n state.monTypesSelected.push('humi');\r\n render();\r\n }\r\n }, []);\r\n\r\n function verifyExistItemOrReturnNull(type, item) {\r\n if (!state.monTypesSelected.includes(type)) {\r\n return null;\r\n }\r\n if (item) {\r\n return parseDecimalNumber(item);\r\n }\r\n return null;\r\n }\r\n\r\n function validateParams() {\r\n let isOk = true;\r\n if (state.monTypesSelected.includes('co2')) {\r\n if (Number(state.formData.CO2MAX) < 0) {\r\n toast.error('CO2 não pode ser negativo');\r\n isOk = false;\r\n }\r\n }\r\n if (state.monTypesSelected.includes('humi')) {\r\n if (Number(state.formData.HUMIMIN) < 0 || Number(state.formData.HUMIMAX) < 0) {\r\n toast.error('Umidade não pode ser negativa');\r\n isOk = false;\r\n }\r\n if (Number(state.formData.HUMIMIN) > 100 || Number(state.formData.HUMIMAX) > 100) {\r\n toast.error('Umidade não pode ser maior que 100%');\r\n isOk = false;\r\n }\r\n if (Number(state.formData.HUMIMAX) < Number(state.formData.HUMIMIN)) {\r\n toast.error('Umidade máxima não pode ser menor que a mínima');\r\n isOk = false;\r\n }\r\n }\r\n if (state.monTypesSelected.includes('temp')) {\r\n if (Number(state.formData.TUSEMAX) < Number(state.formData.TUSEMIN)) {\r\n toast.error('Temperatura máxima não pode ser menor que a mínima');\r\n isOk = false;\r\n }\r\n }\r\n return isOk;\r\n }\r\n\r\n async function confirm() {\r\n let response = null as null|{};\r\n let action = null as null|string;\r\n if (!formData.RTYPE_NAME) {\r\n alert('É necessário definir o nome');\r\n return;\r\n }\r\n if (Object.keys(formData.fullProg.week).length === 0) {\r\n alert('É necessário definir uma programação');\r\n return;\r\n }\r\n if (!validateParams()) {\r\n return;\r\n }\r\n try {\r\n state.submitting = true; render();\r\n if (isEdit) {\r\n response = await apiCall('/clients/edit-roomtype', {\r\n RTYPE_ID: formData.RTYPE_ID!,\r\n RTYPE_NAME: formData.RTYPE_NAME,\r\n TUSEMIN: verifyExistItemOrReturnNull('temp', formData.TUSEMIN),\r\n TUSEMAX: verifyExistItemOrReturnNull('temp', formData.TUSEMAX),\r\n CLIENT_ID: clientId,\r\n workPeriods: fullProgToWorkPeriods(formData.fullProg),\r\n CO2MAX: verifyExistItemOrReturnNull('co2', formData.CO2MAX),\r\n HUMIMAX: verifyExistItemOrReturnNull('humi', formData.HUMIMAX),\r\n HUMIMIN: verifyExistItemOrReturnNull('humi', formData.HUMIMIN),\r\n });\r\n action = 'edit';\r\n } else {\r\n response = await apiCall('/clients/add-new-roomtype', {\r\n RTYPE_ID: formData.RTYPE_ID || null,\r\n RTYPE_NAME: formData.RTYPE_NAME,\r\n TUSEMIN: verifyExistItemOrReturnNull('temp', formData.TUSEMIN),\r\n TUSEMAX: verifyExistItemOrReturnNull('temp', formData.TUSEMAX),\r\n CLIENT_ID: clientId,\r\n workPeriods: fullProgToWorkPeriods(formData.fullProg),\r\n CO2MAX: verifyExistItemOrReturnNull('co2', formData.CO2MAX),\r\n HUMIMAX: verifyExistItemOrReturnNull('humi', formData.HUMIMAX),\r\n HUMIMIN: verifyExistItemOrReturnNull('humi', formData.HUMIMIN),\r\n });\r\n action = 'new';\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.submitting = false; render();\r\n if (response && action) onSuccess({ item: response, action });\r\n }\r\n\r\n async function onConfirmProg(days: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')[], prog: DayProg) {\r\n if (state.schedulesTypeActive === 'Edit' && ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'].includes(state.editDayString!)) {\r\n delete formData.fullProg.week[state.editDayString!];\r\n }\r\n for (const selectedDay of days) {\r\n formData.fullProg.week[selectedDay] = prog;\r\n }\r\n state.editDayString = null;\r\n state.schedulesTypeActive = 'List';\r\n render();\r\n }\r\n\r\n function onConfirmRemoveProg(day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') {\r\n delete formData.fullProg.week[day];\r\n state.schedulesTypeActive = 'List';\r\n render();\r\n }\r\n\r\n let modalContent = null as null|JSX.Element;\r\n if (state.schedulesTypeActive === 'Edit') {\r\n modalContent = (\r\n { state.schedulesTypeActive = 'List'; render(); }}\r\n onConfirmProg={onConfirmProg}\r\n isSending={false}\r\n />\r\n );\r\n }\r\n if (state.schedulesTypeActive === 'Remove') {\r\n modalContent = (\r\n setState({ schedulesTypeActive: 'List', editDayString: null })}\r\n isRemoving={false}\r\n />\r\n );\r\n }\r\n if (state.schedulesTypeActive === 'Add') {\r\n modalContent = (\r\n { state.schedulesTypeActive = 'List'; render(); }}\r\n onConfirmProg={onConfirmProg}\r\n isSending={false}\r\n />\r\n );\r\n }\r\n if (state.schedulesTypeActive === 'List') {\r\n modalContent = (\r\n { state.schedulesTypeActive = 'Add'; render(); }}\r\n wantRemoveDay={(dayString) => { state.editDayString = dayString; state.schedulesTypeActive = 'Remove'; render(); }}\r\n wantEditDay={(dayString) => { state.editDayString = dayString; state.schedulesTypeActive = 'Edit'; render(); }}\r\n wantDelException={null}\r\n isLoading={false}\r\n />\r\n );\r\n }\r\n\r\n return (\r\n
\r\n {(state.schedulesTypeActive === 'List')\r\n && (\r\n
\r\n ) => { state.formData.RTYPE_NAME = event.target.value; render(); }}\r\n />\r\n
Monitoramento:
\r\n
\r\n {\r\n state.monTypesSelected.includes('temp') ? state.monTypesSelected = state.monTypesSelected.filter((r) => r !== 'temp') : state.monTypesSelected.push('temp');\r\n render();\r\n }}\r\n />\r\n
\r\n {\r\n state.monTypesSelected.includes('humi') ? state.monTypesSelected = state.monTypesSelected.filter((r) => r !== 'humi') : state.monTypesSelected.push('humi');\r\n render();\r\n }}\r\n />\r\n
\r\n {\r\n state.monTypesSelected.includes('co2') ? state.monTypesSelected = state.monTypesSelected.filter((r) => r !== 'co2') : state.monTypesSelected.push('co2');\r\n render();\r\n }}\r\n />\r\n
\r\n {state.monTypesSelected.includes('temp') && (\r\n
\r\n ) => { state.formData.TUSEMIN = event.target.value; render(); }}\r\n />\r\n ) => { state.formData.TUSEMAX = event.target.value; render(); }}\r\n />\r\n
\r\n )}\r\n {state.monTypesSelected.includes('humi') && (\r\n
\r\n 100 ? '1px solid red' : '1px solid gray' }}\r\n type=\"text\"\r\n value={formData.HUMIMIN}\r\n placeholder=\"Umidade mínima [%]\"\r\n onChange={(event: ChangeEvent) => { state.formData.HUMIMIN = event.target.value; render(); }}\r\n />\r\n 100 ? '1px solid red' : '1px solid gray' }}\r\n type=\"text\"\r\n value={formData.HUMIMAX}\r\n placeholder=\"Umidade máxima [%]\"\r\n onChange={(event: ChangeEvent) => { state.formData.HUMIMAX = event.target.value; render(); }}\r\n />\r\n
\r\n )}\r\n {state.monTypesSelected.includes('co2') && (\r\n
\r\n ) => { state.formData.CO2MAX = event.target.value; render(); }}\r\n />\r\n
\r\n )}\r\n
\r\n )}\r\n
\r\n {modalContent}\r\n
\r\n {(state.schedulesTypeActive === 'List')\r\n && (\r\n
\r\n \r\n \r\n
\r\n )}\r\n
\r\n );\r\n};\r\n\r\n// in ts version 4.1.2 prog.start and prog.end erro ts2532 object possibly undefined !!\r\nfunction fullProgToWorkPeriods(fullProg: FullProg_v4) {\r\n const workPeriods: { [day: string]: string } = {};\r\n for (const [day, prog] of Object.entries(fullProg.week || {})) {\r\n workPeriods[day] = `enabled;${prog.start}-${prog.end}`;\r\n }\r\n for (const [day, prog] of Object.entries(fullProg.exceptions || {})) {\r\n workPeriods[day] = `enabled;${prog.start}-${prog.end}`;\r\n }\r\n return workPeriods;\r\n}\r\n","import React, { useState } from 'react';\r\nimport { CloseEyeIcon, OpenEyeIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport styled from 'styled-components';\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n margin-top: 15px;\r\n margin-right: 15px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const usePasswordToggle = () => {\r\n const [visible, setVisiblity] = useState(false);\r\n\r\n const Icon = (\r\n setVisiblity((visiblity) => !visiblity)}>\r\n {!visible ? : }\r\n \r\n );\r\n\r\n const InputType = visible ? 'text' : 'password';\r\n\r\n return [InputType, Icon];\r\n};\r\n","import styled from 'styled-components';\r\n\r\nimport { ExpandIcon } from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const IconWrapper = styled.div<{ disabled }>(({ disabled }) => `\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n width: 16px;\r\n height: 16px;\r\n ${disabled ? 'cursor: not-allowed;' : 'cursor: pointer;'}\r\n`);\r\n\r\nexport const SelectedContainer = styled.div`\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-start;\r\n padding: 10px;\r\n height: 25px;\r\n margin-top: 5px;\r\n min-width: 40%;\r\n max-width: 80%;\r\n border-radius: 5px;\r\n`;\r\n\r\nexport const Selected = styled.span`\r\n font-weight: bold;\r\n font-size: 0.75em;\r\n margin-left: 5px;\r\n color: ${colors.Blue300};\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n`;\r\n\r\nexport const EmptyLabel = styled.div`\r\n height: 19px;\r\n`;\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n height: 48px;\r\n width: calc(100% - 34px);\r\n`;\r\n\r\nexport const Arrow = styled(ExpandIcon)<{ isOpen: boolean }>`\r\n transform: rotate(${(props) => (props.isOpen ? '180' : '360')}deg);\r\n transition: all 0.2s;\r\n margin: 14px 16px 14px 5px;\r\n`;\r\n\r\nexport const Container = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n`;\r\n\r\nexport const Base = styled.div<{ error: string | undefined, disabled: boolean | undefined, isOpen: boolean, isSelected: boolean, onClick:() => void }>`\r\n box-sizing: border-box;\r\n position: relative;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n min-height: 48px;\r\n cursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\r\n border: ${(props) => {\r\n let borderProperty = '1px solid ';\r\n if (props.error) borderProperty += colors.Red;\r\n else props.isOpen ? borderProperty += colors.Blue700 : borderProperty += colors.GreyInputBorder;\r\n return `${borderProperty};`;\r\n }};\r\n border-radius: ${(props) => (props.isOpen ? '5px 5px 0px 0px' : '5px')};\r\n color: ${(props) => {\r\n if (props.disabled) return 'rgba(62, 71, 86, 0.2);';\r\n return props.isSelected ? '#000;' : 'rgba(62, 71, 86, 0.3);';\r\n }};\r\n`;\r\n\r\nexport const Label = styled.span<{ error: string | undefined, isSelected: boolean | undefined, isOpen: boolean, disabled: boolean | undefined }>(\r\n ({\r\n error, isSelected, isOpen, disabled,\r\n }) => `\r\n transition: all 0.2s;\r\n margin-left: 16px;\r\n font-size: 12px;\r\n position: absolute;\r\n font-weight: bold;\r\n top: 5px;\r\n color: ${error ? colors.Red : colors.Blue700};\r\n ${disabled ? `color: ${colors.Grey200};` : ''}\r\n ${(isOpen || isSelected)\r\n && `\r\n top: 2px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 12px;\r\n `}\r\n`,\r\n);\r\n\r\nexport const SelectedLabel = styled.span<{ disabled }>(({ disabled }) => `\r\n font-size: 12px;\r\n margin-left: 16px;\r\n margin-bottom: -6px;\r\n margin-top: 7px;\r\n color: ${colors.Black};\r\n ${disabled ? `color: ${colors.Grey200};` : ''}\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n`);\r\n\r\nexport const ListItem = styled.div<{ isSelected: boolean }>`\r\n position: relative;\r\n height: 48px;\r\n padding: 14px 16px;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background-color: ${(props) => (props.isSelected ? '' : colors.Grey050)};\r\n }\r\n\r\n span {\r\n font-size: 0.875em;\r\n color: ${(props) => (props.isSelected ? colors.Grey400 : colors.Grey300)};\r\n }\r\n`;\r\n\r\nexport const List = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background-color: ${colors.White};\r\n min-height: 48px;\r\n position: absolute;\r\n top: 103%;\r\n width: 100%;\r\n z-index: 10;\r\n height: auto;\r\n max-height: 316px;\r\n overflow-y: scroll;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n\r\n ${ListItem} {\r\n &:last-child {\r\n border-radius: 0px 0px 8px 8px;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n }\r\n }\r\n`;\r\n\r\nexport const BlueBar = styled.div<{ isLast: boolean }>`\r\n width: 4px;\r\n height: 48px;\r\n background-color: ${colors.Blue300};\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n border-bottom-left-radius: ${(props) => props.isLast && '8px;'};\r\n`;\r\n\r\nexport const Error = styled.span`\r\n color: ${colors.Red};\r\n display: block;\r\n margin: 5px;\r\n text-align: left;\r\n font-size: 0.75em;\r\n height: 24px;\r\n`;\r\n","import {\r\n useState, useRef, useCallback, CSSProperties,\r\n ReactElement,\r\n} from 'react';\r\n\r\nimport { useOuterClickNotifier } from '../../hooks/useOuterClickNotifier';\r\nimport { CloseIcon } from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\n\r\nimport {\r\n IconWrapper,\r\n SelectedContainer,\r\n Selected,\r\n EmptyLabel,\r\n Wrapper,\r\n Arrow,\r\n Container,\r\n Base,\r\n Label,\r\n SelectedLabel,\r\n ListItem,\r\n List,\r\n BlueBar,\r\n Error,\r\n} from './styles';\r\nimport * as IconNames from 'icons';\r\n\r\nexport type Option = {\r\n label: string;\r\n value: string;\r\n iconName: keyof typeof IconNames;\r\n}\r\n\r\ntype SelectProps = {\r\n label?: string;\r\n placeholder?: string;\r\n hideSelected?: boolean;\r\n onSelect: (value: any | Option) => any;\r\n options?: any | Option[];\r\n value?: any;\r\n error?: string;\r\n propLabel?: string;\r\n notNull?: boolean;\r\n disabled?: boolean;\r\n style?: CSSProperties;\r\n}\r\n\r\nexport const Select = ({\r\n label, placeholder, hideSelected = false, onSelect, options, value, error, propLabel = 'label', notNull = false, disabled = undefined, ...props\r\n}: SelectProps): JSX.Element => {\r\n const innerRef = useRef(null);\r\n const [isOpen, setIsOpen] = useState(false);\r\n const clickOutsideCallback = useCallback((e) => setIsOpen(false), []);\r\n useOuterClickNotifier(clickOutsideCallback, innerRef);\r\n const toggle = () => setIsOpen(!isOpen);\r\n\r\n function isOption(option: unknown): option is Option {\r\n return !!option && !!(option as Option).label && !!(option as Option).value;\r\n }\r\n\r\n function renderIcon(option: Option): ReactElement | null {\r\n if (!option.iconName) {\r\n return null;\r\n }\r\n const Icon = IconNames[option.iconName];\r\n\r\n return (\r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n return (\r\n \r\n {} : toggle}>\r\n \r\n \r\n {\r\n !isOpen && !value && (\r\n
\r\n {placeholder}\r\n
\r\n )\r\n }\r\n {value ? {(value && (value[propLabel] === 'ET330' ? 'ET330 (Padrão Diel)' : value[propLabel])) || String(value)} : isOpen && }\r\n
\r\n \r\n \r\n {value && (!notNull) && !hideSelected && (\r\n \r\n {} : () => onSelect('')}>\r\n \r\n \r\n {(value && (value[propLabel] === 'ET330' ? 'ET330 (Padrão Diel)' : value[propLabel])) || String(value)}\r\n \r\n )}\r\n {error && {typeof (error) === 'string' ? error : 'Campo incorreto.'}}\r\n {isOpen && (\r\n \r\n {options.map((option, index) => {\r\n const isSelected = isOption(option) ? value === option.value : value === option;\r\n const isLast = index === options.length - 1;\r\n return (\r\n {\r\n onSelect(option);\r\n setIsOpen(false);\r\n }}\r\n >\r\n {isSelected && }\r\n {isOption(option) && renderIcon(option)}\r\n {(option && (option[propLabel] === 'ET330' ? 'ET330 (Padrão Diel)' : option[propLabel])) || option}\r\n \r\n );\r\n })}\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nimport { ExpandIcon } from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const IconWrapper = styled.div<{ disabled }>(({ disabled }) => `\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n width: 16px;\r\n height: 16px;\r\n ${disabled ? 'cursor: not-allowed;' : 'cursor: pointer;'}\r\n`);\r\n\r\nexport const SelectedContainer = styled.div`\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-start;\r\n padding: 10px;\r\n height: 25px;\r\n margin-top: 10px;\r\n min-width: 40%;\r\n max-width: 70%;\r\n border-radius: 5px;\r\n`;\r\n\r\nexport const Selected = styled.span`\r\n font-weight: bold;\r\n font-size: 0.75em;\r\n margin-left: 5px;\r\n color: ${colors.Blue300};\r\n`;\r\n\r\nexport const EmptyLabel = styled.div`\r\n height: 19px;\r\n`;\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n height: 48px;\r\n`;\r\n\r\nexport const Arrow = styled(ExpandIcon)<{ isOpen: boolean }>`\r\n transform: rotate(${(props) => (props.isOpen ? '180' : '360')}deg);\r\n transition: all 0.2s;\r\n margin: 14px 16px 14px 5px;\r\n`;\r\n\r\nexport const Container = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n`;\r\n\r\nexport const Base = styled.div<{ error: string | undefined, disabled: boolean | undefined, isOpen: boolean, isSelected: boolean, onClick:() => void }>`\r\n box-sizing: border-box;\r\n position: relative;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n min-height: 48px;\r\n cursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\r\n border: ${(props) => {\r\n let borderProperty = '1px solid ';\r\n if (props.error) borderProperty += colors.Red;\r\n else props.isOpen ? borderProperty += colors.Blue700 : borderProperty += colors.GreyInputBorder;\r\n return `${borderProperty};`;\r\n }};\r\n border-radius: ${(props) => (props.isOpen ? '5px 5px 0px 0px' : '5px')};\r\n color: ${(props) => {\r\n if (props.disabled) return 'rgba(62, 71, 86, 0.2);';\r\n return props.isSelected ? '#000;' : 'rgba(62, 71, 86, 0.3);';\r\n }};\r\n`;\r\n\r\nexport const Label = styled.span<{ error: string | undefined, isSelected: boolean | undefined, isOpen: boolean, disabled: boolean | undefined }>(\r\n ({\r\n error, isSelected, isOpen, disabled,\r\n }) => `\r\n transition: all 0.2s;\r\n margin-left: 16px;\r\n font-size: 12px;\r\n position: absolute;\r\n font-weight: bold;\r\n top: 5px;\r\n color: ${error ? colors.Red : colors.Blue700};\r\n ${(isOpen || isSelected)\r\n && `\r\n top: 2px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n `}\r\n ${disabled ? `color: ${colors.Grey200};` : ''}\r\n`,\r\n);\r\n\r\nexport const SelectedLabel = styled.span<{ disabled }>(({ disabled }) => `\r\n font-size: 12px;\r\n margin-left: 16px;\r\n margin-bottom: -6px;\r\n margin-top: 7px;\r\n color: ${colors.Black};\r\n ${disabled ? `color: ${colors.Grey200};` : ''}\r\n`);\r\n\r\nexport const ListItem = styled.div<{ isSelected: boolean }>`\r\n position: relative;\r\n height: 48px;\r\n padding: 14px 16px;\r\n cursor: pointer;\r\n\r\n &:hover {\r\n background-color: ${(props) => (props.isSelected ? '' : colors.Grey050)};\r\n }\r\n\r\n span {\r\n font-size: 0.875em;\r\n color: ${(props) => (props.isSelected ? colors.Grey400 : colors.Grey300)};\r\n }\r\n`;\r\n\r\nexport const List = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background-color: ${colors.White};\r\n min-height: 48px;\r\n position: absolute;\r\n top: 103%;\r\n width: 100%;\r\n z-index: 1;\r\n height: auto;\r\n max-height: 316px;\r\n overflow-y: scroll;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n\r\n ${ListItem} {\r\n &:last-child {\r\n border-radius: 0px 0px 8px 8px;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n }\r\n }\r\n`;\r\n\r\nexport const BlueBar = styled.div<{ isLast: boolean }>`\r\n width: 4px;\r\n height: 48px;\r\n background-color: ${colors.Blue300};\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n border-bottom-left-radius: ${(props) => props.isLast && '8px;'};\r\n`;\r\n\r\nexport const Error = styled.span`\r\n color: ${colors.Red};\r\n display: block;\r\n margin: 5px;\r\n text-align: left;\r\n font-size: 0.75em;\r\n height: 24px;\r\n`;\r\n","import { useState, useRef, useCallback } from 'react';\r\n\r\nimport { useOuterClickNotifier } from '../../hooks/useOuterClickNotifier';\r\nimport { CloseIcon } from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\n\r\nimport {\r\n IconWrapper,\r\n SelectedContainer,\r\n Selected,\r\n EmptyLabel,\r\n Wrapper,\r\n Arrow,\r\n Container,\r\n Base,\r\n Label,\r\n SelectedLabel,\r\n ListItem,\r\n List,\r\n BlueBar,\r\n Error,\r\n} from './styles';\r\n\r\ntype SelectMultipleProps = {\r\n label: string;\r\n placeholder: string;\r\n onSelect: any;\r\n options?: any;\r\n values?: any;\r\n disabled?: boolean;\r\n error?: string;\r\n emptyLabel?: string;\r\n propLabel?: string;\r\n closeOnSelect?: any;\r\n}\r\n\r\nfunction changeMultipleSelection(item, values) {\r\n if (!item) return [];\r\n return values.includes(item) ? values.filter((x) => x !== item) : values.concat([item]);\r\n}\r\n\r\nexport const SelectMultiple = ({\r\n label, placeholder, onSelect, options, values, disabled = undefined, error, emptyLabel = undefined, propLabel = 'name', closeOnSelect = false, ...props\r\n}: SelectMultipleProps): JSX.Element => {\r\n const innerRef = useRef(null);\r\n const [isOpen, setIsOpen] = useState(false);\r\n if (disabled) setIsOpen(false);\r\n const clickOutsideCallback = useCallback((e) => setIsOpen(false), []);\r\n useOuterClickNotifier(clickOutsideCallback, innerRef);\r\n const toggle = () => setIsOpen(!isOpen);\r\n\r\n function formatDisplayedValue(values) {\r\n if (values.length === 0) return emptyLabel || '';\r\n if (values.length === 1) return values[0][propLabel];\r\n if (values.length > 1) return `${values.length} seleções`;\r\n return '';\r\n }\r\n\r\n return (\r\n \r\n 0} disabled={disabled} onClick={disabled ? () => {} : toggle}>\r\n \r\n \r\n {\r\n !isOpen && values.length === 0 && (\r\n
\r\n {placeholder}\r\n
\r\n )\r\n }\r\n {(values.length > 0) ? {formatDisplayedValue(values)} : isOpen && }\r\n
\r\n \r\n \r\n {(values.length > 0) && (\r\n \r\n {} : () => onSelect('', options, [])}>\r\n \r\n \r\n {formatDisplayedValue(values)}\r\n \r\n )}\r\n {error && {typeof (error) === 'string' ? error : 'Campo incorreto.'}}\r\n {isOpen && (\r\n \r\n {options.map((option, index) => {\r\n const isSelected = values.includes(option);\r\n const isLast = index === options.length - 1;\r\n return (\r\n {\r\n let suggestedNewValues = null;\r\n try {\r\n suggestedNewValues = changeMultipleSelection(option, values);\r\n } catch (err) { console.log(err); }\r\n onSelect(option, options, suggestedNewValues);\r\n if (closeOnSelect) setIsOpen(false);\r\n }}\r\n >\r\n {isSelected && }\r\n {option[propLabel]}\r\n \r\n );\r\n })}\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import { useEffect } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n ActionButton, Button, Input, Loader,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { EditIcon, DeleteOutlineIcon } from '~/icons';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport function ExtrasList({\r\n list, wantDelete, wantEdit, wantAdd,\r\n}) {\r\n return (\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {list.map((row, index) => (\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
NomeValor\r\n
{row[0]}{row[1]}\r\n wantDelete(index)} variant=\"red-inv\">\r\n \r\n \r\n wantEdit(index)} variant=\"blue-inv\">\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function ExtrasEdit({ editedItem = null, onConfirm, onCancel }) {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isEdit: !!editedItem,\r\n // @ts-ignore\r\n name: (editedItem && editedItem[0]) || '',\r\n // @ts-ignore\r\n value: (editedItem && editedItem[0]) || '',\r\n formErrors: {\r\n name: '',\r\n value: '',\r\n },\r\n };\r\n return state;\r\n });\r\n\r\n function validateForm() {\r\n state.formErrors.name = state.name ? '' : 'O nome é obrigatório';\r\n state.formErrors.value = state.value ? '' : 'O valor é obrigatório';\r\n render();\r\n return !(state.formErrors.name || state.formErrors.value);\r\n }\r\n\r\n function confirm() {\r\n if (!validateForm()) return;\r\n onConfirm([state.name, state.value]);\r\n }\r\n\r\n return (\r\n
\r\n setState({ name: event.target.value })}\r\n />\r\n setState({ value: event.target.value })}\r\n />\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function FormEditExtras({ unitId, wantClose }) {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n loading: false,\r\n list: [] as string[][],\r\n activeView: 'List',\r\n submitting: false,\r\n // @ts-ignore\r\n editedIndex: null as number,\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchServerData();\r\n }, []);\r\n\r\n async function fetchServerData() {\r\n try {\r\n state.loading = true; render();\r\n const unitInfo = await apiCall('/clients/get-unit-info', { unitId });\r\n const list = JSON.parse(unitInfo.EXTRA_DATA || '[]');\r\n if (!(list instanceof Array)) throw Error('Invalid EXTRA_DATA.');\r\n for (const row of list) {\r\n if (!(row instanceof Array)) throw Error('Invalid EXTRA_DATA.');\r\n if (row.length !== 2) throw Error('Invalid EXTRA_DATA.');\r\n if (typeof row[0] !== 'string') throw Error('Invalid EXTRA_DATA.');\r\n if (typeof row[1] !== 'string') throw Error('Invalid EXTRA_DATA.');\r\n // if (row && (row.length === 2) && (row[0] || row[1])) { } // OK\r\n // else continue;\r\n // state.list.push([\r\n // row[0] || '',\r\n // row[1] || '',\r\n // ]);\r\n }\r\n state.list = list;\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.loading = false; render();\r\n }\r\n\r\n async function confirm() {\r\n try {\r\n state.submitting = true; render();\r\n await apiCall('/clients/edit-unit', {\r\n UNIT_ID: unitId,\r\n EXTRA_DATA: JSON.stringify(state.list),\r\n });\r\n toast.success('Salvo!');\r\n wantClose();\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.submitting = false; render();\r\n }\r\n\r\n function onConfirmItem(item) {\r\n if (state.editedIndex != null) {\r\n state.list[state.editedIndex] = item;\r\n } else {\r\n state.list.push(item);\r\n }\r\n console.log(item, state.editedIndex, state.list[state.editedIndex]);\r\n state.activeView = 'List';\r\n render();\r\n }\r\n\r\n function onWantRemoveItem(index: number) {\r\n if (!window.confirm('Deseja excluir?')) return;\r\n state.list.splice(index, 1);\r\n // @ts-ignore\r\n setState({ activeView: 'List', editedIndex: null });\r\n }\r\n\r\n let modalContent = null;\r\n if (state.activeView === 'List') {\r\n // @ts-ignore\r\n modalContent = (\r\n setState({ activeView: 'Edit', editedIndex: null })}\r\n wantEdit={(index) => setState({ activeView: 'Edit', editedIndex: index })}\r\n wantDelete={(index) => { onWantRemoveItem(index); }}\r\n />\r\n );\r\n }\r\n if (state.activeView === 'Edit') {\r\n // @ts-ignore\r\n modalContent = (\r\n { onConfirmItem(item); }}\r\n // @ts-ignore\r\n onCancel={() => setState({ activeView: 'List', editedIndex: null })}\r\n />\r\n );\r\n }\r\n\r\n return (\r\n
\r\n {state.loading\r\n ? \r\n : (\r\n <>\r\n {modalContent}\r\n {(state.activeView === 'List')\r\n && (\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n )}\r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nconst Table = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import { createStore, applyMiddleware, Reducer } from 'redux';\r\nimport thunk from 'redux-thunk';\r\n\r\n// import logger from 'redux-logger'\r\nimport { ApiResps } from 'providers';\r\n\r\nconst middleware = [thunk];\r\n// if (process.env.NODE_ENV === 'development') {\r\n// middleware.push(logger)\r\n// }\r\n\r\nexport type DevFullInfo = ApiResps['/get-dev-full-info']['info'] & {\r\n dac?: ApiResps['/get-dev-full-info']['dac']\r\n dut?: ApiResps['/get-dev-full-info']['dut']\r\n dam?: ApiResps['/get-dev-full-info']['dam']\r\n dut_aut?: ApiResps['/get-dev-full-info']['dut_aut']\r\n dri?: ApiResps['/get-dev-full-info']['dri']\r\n dma?: ApiResps['/get-dev-full-info']['dma']\r\n dal?: ApiResps['/get-dev-full-info']['dal']\r\n dmt?: ApiResps['/get-dev-full-info']['dmt']\r\n optsDescs?: ApiResps['/get-dev-full-info']['optsDescs']\r\n};\r\n\r\ntype StoreData = {\r\n devInfo: DevFullInfo\r\n};\r\n\r\nconst InitialState: StoreData = {\r\n devInfo: {} as any,\r\n};\r\n\r\nconst reducer: Reducer = function (state: StoreData|undefined, action: { type: string, payload?: any }) {\r\n if (!state) {\r\n state = { ...InitialState };\r\n }\r\n switch (action && action.type) {\r\n case 'SET_DEV_INFO':\r\n state.devInfo = action.payload || {};\r\n break;\r\n case 'RESET_DATA':\r\n return { ...InitialState };\r\n // return {};\r\n // return null;\r\n }\r\n return state;\r\n};\r\n\r\nconst store = createStore(reducer, applyMiddleware(...middleware));\r\nexport default store;\r\n","import store from 'store';\r\nimport { apiCall, ApiResps } from '../providers';\r\nimport jsonTryParse from './jsonTryParse';\r\n\r\n// sessionStorage.setItem('key', 'value'); // Save data to sessionStorage\r\n// let data = sessionStorage.getItem('key'); // Get saved data from sessionStorage\r\n// sessionStorage.removeItem('key'); // Remove saved data from sessionStorage\r\n// sessionStorage.clear(); // Remove all saved data from sessionStorage\r\n\r\nexport function saveSessionStorageItem(key: string, value) {\r\n sessionStorage.setItem(key, JSON.stringify(value));\r\n}\r\n\r\nexport function removeSessionStorageItem(key: string) {\r\n sessionStorage.removeItem(key);\r\n}\r\n\r\nexport function getSessionStorageItem(key: string) {\r\n const data = sessionStorage.getItem(key);\r\n return jsonTryParse(data || '');\r\n}\r\n\r\nfunction getExistingDevInfo() {\r\n const data = localStorage.getItem('DEV-INFO');\r\n if (data) {\r\n try {\r\n return JSON.parse(data);\r\n } catch (err) { }\r\n }\r\n return null;\r\n}\r\n\r\n// async function getCachedDacInfo (devId: string) {\r\n// let data = getExistingDevInfo()\r\n// if (data && data.DAC_ID === devId) return data\r\n// const response = await api['/dac/get-dac-info']({ DAC_ID: devId }).then(data => ({ data }))\r\n// data = response.data.info\r\n// setCachedDacInfo(data)\r\n// return data\r\n// }\r\n\r\n// async function getCachedDutInfo (devId: string, forceNew: boolean) {\r\n// let data = getExistingDevInfo()\r\n// if ((!forceNew) && data && data.DEV_ID === devId) return data\r\n// const response = await api['/dut/get-dut-info']({ DEV_ID: devId })\r\n// data = {\r\n// ...response.info,\r\n// workPeriods: response.workPeriods,\r\n// workPeriodExceptions: response.workPeriodExceptions,\r\n// }\r\n// setCachedDutInfo(data)\r\n// return data\r\n// }\r\n\r\n// async function getCachedDamInfo (devId: string) {\r\n// let data = getExistingDevInfo()\r\n// if (data && data.DAM_ID === devId) return data\r\n// const response = await api['/dam/get-dam-info']({ DAM_ID: devId }).then(data => ({ data }))\r\n// data = response.data.info\r\n// setCachedDamInfo(data)\r\n// return data\r\n// }\r\n\r\n// function setCachedDacInfo (data: any) {\r\n// localStorage.setItem('DEV-INFO', JSON.stringify(data))\r\n// }\r\n\r\n// function setCachedDutInfo (data: any) {\r\n// localStorage.setItem('DEV-INFO', JSON.stringify(data))\r\n// }\r\n\r\n// function setCachedDamInfo (data: any) {\r\n// localStorage.setItem('DEV-INFO', JSON.stringify(data))\r\n// }\r\n\r\nexport type DevInfo = ApiResps['/get-dev-full-info']['info'] & {\r\n dac: ApiResps['/get-dev-full-info']['dac'],\r\n dam: ApiResps['/get-dev-full-info']['dam'],\r\n dut: ApiResps['/get-dev-full-info']['dut'],\r\n dut_aut: ApiResps['/get-dev-full-info']['dut_aut'],\r\n dri: ApiResps['/get-dev-full-info']['dri'],\r\n dma: ApiResps['/get-dev-full-info']['dma'],\r\n optsDescs: ApiResps['/get-dev-full-info']['optsDescs'],\r\n}\r\n\r\nexport function getCachedDevInfoSync(devId: string) { // : DevInfo|null\r\n const { devInfo } = store.getState();\r\n if ((devInfo && devInfo.DEV_ID) === devId) {\r\n return devInfo;\r\n }\r\n return null;\r\n}\r\n\r\nexport function getCachedDevInfo(devId: string, { onlyCached = false, forceFresh = false } = {}) { // : Promise\r\n return Promise.resolve().then(async () => {\r\n let { devInfo } = store.getState();\r\n if ((!forceFresh) && (devInfo && devInfo.DEV_ID) === devId) {\r\n return devInfo;\r\n }\r\n if (onlyCached) return null;\r\n const response = await apiCall('/get-dev-full-info', { DEV_ID: devId });\r\n devInfo = {\r\n ...response.info,\r\n dac: response.dac,\r\n dam: response.dam,\r\n dut: response.dut,\r\n dut_aut: response.dut_aut,\r\n dri: response.dri,\r\n dma: response.dma,\r\n dal: response.dal,\r\n dmt: response.dmt,\r\n optsDescs: response.optsDescs,\r\n };\r\n store.dispatch({ type: 'SET_DEV_INFO', payload: devInfo });\r\n return devInfo;\r\n });\r\n}\r\n","import { Option } from 'components/NewSelect';\r\nimport { t } from 'i18next';\r\n\r\nexport const driApplicationOpts = {\r\n 'Carrier ECOSPLIT': 'carrier-ecosplit',\r\n 'Medidor de Energia': 'medidor-energia',\r\n VAV: 'vav',\r\n 'Modbus Genérico': 'modbus-generico',\r\n Fancoil: 'fancoil',\r\n 'Chiller Carrier': 'chiller-carrier',\r\n};\r\n\r\nexport const driMeterApplications = {\r\n ET330: 'cg-et330',\r\n 'Nexus II': 'abb-nexus-ii',\r\n 'ETE-30': 'abb-ete-30',\r\n EM210: 'cg-em210',\r\n 'MULT-K': 'kron-mult-k',\r\n 'MULT-K 05': 'kron-mult-k-05',\r\n 'MULT-K 120': 'kron-mult-k-120',\r\n 'iKRON 03': 'kron-ikron-03',\r\n 'Schneider PM2100': 'schneider-eletric-pm2100',\r\n 'Schneider PM210': 'schneider-electric-pm210',\r\n};\r\n\r\nexport const driVAVsApplications = {\r\n 'BAC-6000': 'vav-bac-6000',\r\n 'BAC-2000': 'vav-bac-2000',\r\n 'BAC-6000 AMLN': 'vav-bac-6000-amln',\r\n};\r\n\r\nexport const driVAVApplicationsOptions: Option[] = [\r\n { label: 'BAC6000 AMLN', value: 'BAC-6000 AMLN', iconName: 'ThermostatCircleIcon' },\r\n { label: 'BAC6000 MLN', value: 'BAC-6000', iconName: 'ThermostatCircleIcon' },\r\n { label: 'BAC2000 MLN', value: 'BAC-2000', iconName: 'ThermostatSquareIcon' },\r\n];\r\n\r\nexport const driFancoilsApplications = {\r\n 'BAC-6000': 'fancoil-bac-6000',\r\n 'BAC-2000': 'fancoil-bac-2000',\r\n 'BAC-6000 AMLN': 'fancoil-bac-6000-amln',\r\n};\r\n\r\nexport const driChillerCarrierApplications = {\r\n '30HXE': 'chiller-carrier-30hxe',\r\n '30GXE': 'chiller-carrier-30gxe',\r\n '30HXF': 'chiller-carrier-30hxf',\r\n '30XAB': 'chiller-carrier-30xab',\r\n};\r\n\r\nexport const vavFancoilValveTypes: { name: string, value: string}[] = [\r\n { name: t('valvulaProporcional010V'), value: 'PROPORTIONAL' },\r\n { name: t('valvulaOnOff'), value: 'ON-OFF' },\r\n];\r\n\r\nexport const driChillerCarrier30HXParams = {\r\n circuitAParams: {\r\n CP_A1: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CP_A2: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CAPA_T: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DP_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SCT_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SST_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA1_OP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA2_OP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DOP_A1: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DOP_A2: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA1_DGT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA2_DGT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n EXV_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_CP_A1: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_CP_A2: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA1_TMP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA2_TMP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA1_CUR: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPA2_CUR: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n },\r\n circuitBParams: {\r\n CP_B1: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CP_B2: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CAPB_T: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DP_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SCT_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SST_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB1_OP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB2_OP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DOP_B1: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DOP_B2: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB1_DGT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB2_DGT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n EXV_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_CP_B1: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_CP_B2: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB1_TMP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB2_TMP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB1_CUR: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CPB2_CUR: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n },\r\n};\r\n\r\nexport const driChillerCarrierGeneral30HXParams = {\r\n CHIL_S_S: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CAP_T: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DEM_LIM: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n LAG_LIM: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CTRL_PNT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n EMSTOP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COND_LWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COND_EWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COOL_LWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COOL_EWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COND_SP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CHIL_OCC: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n STATUS: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n};\r\n\r\nexport const driChillerCarrierAlarmParams = {\r\n alarm_1: null as number | null,\r\n alarm_2: null as number | null,\r\n alarm_3: null as number | null,\r\n alarm_4: null as number | null,\r\n alarm_5: null as number | null,\r\n};\r\n\r\nexport const driChillerCarrier30XAParams = {\r\n circuitAParams: {\r\n DP_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SCT_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SST_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n OP_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SLT_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_CP_A: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n },\r\n circuitBParams: {\r\n DP_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SCT_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SST_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n OP_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SLT_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_CP_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n },\r\n};\r\n\r\nexport const driChillerCarrierGeneral30XAParams = {\r\n STATUS: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CHIL_S_S: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CHIL_OCC: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CTRL_TYP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SLC_HM: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CAP_T: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n DEM_LIM: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n SP_OCC: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n CTRL_PNT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n OAT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n EMSTOP: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_MACH: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COOL_EWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COOL_LWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COND_EWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n COND_LWT: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n HR_MACH_B: { value: null as number | null, name: null as string | null, unitMeasurement: null as string | null },\r\n};\r\n\r\nexport const driMetersCfgs = {\r\n ET330: {\r\n application: 'cg-et330',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'Nexus II': {\r\n application: 'abb-nexus-ii',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'ETE-30': {\r\n application: 'abb-ete-30',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '2-stop-bits',\r\n telemetryInterval: 900,\r\n driSlaveId: '174',\r\n },\r\n EM210: {\r\n application: 'cg-em210',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'MULT-K': {\r\n application: 'kron-mult-k',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'MULT-K 05': {\r\n application: 'kron-mult-k-05',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'MULT-K 120': {\r\n application: 'kron-mult-k-120',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'iKRON 03': {\r\n application: 'kron-ikron-03',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'Schneider PM2100': {\r\n application: 'schneider-eletric-pm2100',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n },\r\n 'Schneider PM210': {\r\n application: 'schneider-electric-pm210',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: 9600,\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n telemetryInterval: 900,\r\n driSlaveId: '1',\r\n },\r\n};\r\n\r\nexport const driProtocolsOpts = {\r\n 'Modbus TCP': 'modbus-tcp',\r\n 'Modbus RTU': 'modbus-rtu',\r\n 'Carrier ECOSPLIT': 'carrier-ecosplit',\r\n};\r\n\r\nexport const driParityOpts = {\r\n Desabilitado: 'desabilitado',\r\n Ímpar: 'impar',\r\n Par: 'par',\r\n};\r\n\r\nexport const driLayerOpts = {\r\n 'RS-485': 'rs-485',\r\n 'RS-232': 'rs-232',\r\n Ethernet: 'ethernet',\r\n};\r\n\r\nexport const driStopBitsOpts = {\r\n '1 Stop Bit': '1-stop-bit',\r\n '1.5 Stop Bits': '1.5-stop-bits',\r\n '2 Stop Bits': '2-stop-bits',\r\n};\r\n\r\nexport const modbusBaudRateOpts = ['4800', '9600', '19200', '115200', '921600'];\r\n\r\nexport const currentCapacityOpts = [\r\n { name: '50A', value: '50' },\r\n { name: '75A', value: '75' },\r\n { name: '100A', value: '100' },\r\n { name: '150A', value: '150' },\r\n { name: '200A', value: '200' },\r\n { name: '250A', value: '250' },\r\n { name: '300A', value: '300' },\r\n { name: '350A', value: '350' },\r\n { name: '400A', value: '400' },\r\n { name: '500A', value: '500' },\r\n { name: '600A', value: '600' },\r\n { name: '630A', value: '630' },\r\n { name: '800A', value: '800' },\r\n { name: '1000A', value: '1000' },\r\n { name: '1200A', value: '1200' },\r\n { name: '1500A', value: '1500' },\r\n { name: '1600A', value: '1600' },\r\n { name: '2000A', value: '2000' },\r\n { name: '2500A', value: '2500' },\r\n];\r\n\r\nexport const metersWithCurrCapacityConfig = ['ET330'] as string[];\r\n\r\nexport const installationTypeOpts = {\r\n ET330: [\r\n { name: 'Rede Bifásica', value: '2' },\r\n { name: 'Rede Trifásica sem neutro', value: '1' },\r\n { name: 'Rede Trifásica com neutro', value: '0' },\r\n ],\r\n EM210: [\r\n { name: 'Rede Bifásica', value: '2' },\r\n { name: 'Rede Trifásica sem neutro', value: '1' },\r\n { name: 'Rede Trifásica com neutro', value: '0' },\r\n ],\r\n 'MULT-K 120': [\r\n { name: 'Rede Bifásica', value: '2' },\r\n { name: 'Rede Trifásica sem neutro', value: '1' },\r\n { name: 'Rede Trifásica com neutro', value: '0' },\r\n ],\r\n};\r\n\r\nexport const driApplicationCfgs = {\r\n ET330: {\r\n application: 'cg-et330',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'Nexus II': {\r\n application: 'abb-nexus-ii',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'ETE-30': {\r\n application: 'abb-ete-30',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '2-stop-bits',\r\n },\r\n 'Carrier ECOSPLIT': {\r\n application: 'carrier-ecosplit',\r\n protocol: 'carrier-ecosplit',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n EM210: {\r\n application: 'cg-em210',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'MULT-K': {\r\n application: 'kron-mult-k',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'MULT-K 05': {\r\n application: 'kron-mult-k-05',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'MULT-K 120': {\r\n application: 'kron-mult-k-120',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'iKRON 03': {\r\n application: 'kron-ikron-03',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'BAC-6000': {\r\n application: 'vav-bac-6000',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'BAC-6000 AMLN': {\r\n application: 'vav-bac-6000-amln',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'BAC-2000': {\r\n application: 'vav-bac-2000',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'Schneider PM2100': {\r\n application: 'schneider-eletric-pm2100',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n '30HXE': {\r\n application: 'chiller-carrier-30hxe',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n '30GXE': {\r\n application: 'chiller-carrier-30gxe',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n '30HXF': {\r\n application: 'chiller-carrier-30hxf',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n '30XAB': {\r\n application: 'chiller-carrier-30xab',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n 'Chiller-Default': {\r\n application: 'chiller-carrier-30xab',\r\n protocol: 'modbus-rtu',\r\n serialMode: 'rs-485',\r\n modbusBaudRate: '9600',\r\n parity: 'desabilitado',\r\n stopBits: '1-stop-bit',\r\n },\r\n} as {\r\n [key: string]: {\r\n application: string,\r\n protocol: string,\r\n serialMode: string,\r\n modbusBaudRate: string,\r\n parity: string,\r\n stopBits: string,\r\n }\r\n};\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const Content = styled.div`\r\ndisplay: flex;\r\nalign-items: center;\r\npadding: 0;\r\nmargin: 0;\r\nheight: 35px;\r\nmax-width: 100%;\r\njustify-content: space-between;\r\nborder-bottom: 1px solid ${colors.Grey};\r\n@media (max-width: 768px) {\r\n height: 50px;\r\n overflow-x: scroll;\r\n}\r\n`;\r\n\r\nexport const StyledList = styled.ul`\r\ndisplay: flex;\r\nflex-direction: row;\r\nalign-items: center;\r\njustify-content: flex-start;\r\nlist-style: none;\r\npadding: 0;\r\nli:not(:first-child) {\r\n margin-left: 12px;\r\n}\r\n`;\r\n\r\nexport const StyledItem = styled.li`\r\ndisplay: flex;\r\nalign-items: center;\r\njustify-content: center;\r\nflex-direction: column;\r\nwhite-space: nowrap;\r\ntext-decoration: none;\r\n\r\n`;\r\n\r\nexport const StyledLink = styled(Link)<{ isActive: boolean }>(({ isActive }) => `\r\ncolor: black;\r\nfont-size: 14px;\r\nfont-weight: ${isActive ? 'bold' : 'none'};\r\ntext-decoration: none;\r\nbackground-color: ${isActive ? colors.White : colors.Grey050};\r\nwidth: 100%;\r\nheight: 100%;\r\npadding: 8px 50px;\r\nborder-style: solid;\r\nborder-color: ${colors.Grey100};\r\nborder-width: 1px 1px 0;\r\nborder-radius: 5px 5px 0px 0px;\r\nmargin-top: 11px;\r\n:hover{\r\n text-decoration: none;\r\n color: black;\r\n}\r\n`);\r\n","import { useRef } from 'react';\r\nimport {\r\n Content,\r\n StyledList,\r\n StyledItem,\r\n StyledLink,\r\n} from './styles';\r\n\r\nfunction handleScrollTo(currCont: { current }, ulRef) {\r\n try {\r\n if (currCont && currCont.current && ulRef && ulRef.current && window !== undefined && window.innerWidth < currCont.current.offsetLeft) {\r\n ulRef.current.scrollLeft = currCont.current.offsetLeft;\r\n }\r\n } catch (err) { console.log(err); }\r\n}\r\n\r\nexport function Tabs({ links }) {\r\n const ulRef = useRef(null);\r\n\r\n return (\r\n \r\n \r\n {links.map((link) => {\r\n if (link.isActive) handleScrollTo(link.ref, ulRef);\r\n return (\r\n \r\n {link.title}\r\n \r\n );\r\n })}\r\n \r\n \r\n );\r\n}\r\n","import { Flex } from 'reflexbox';\r\nimport '~/assets/css/ReactTags.css';\r\nimport { Input } from 'components';\r\nimport { Select as SelectNew } from 'components/NewSelect';\r\nimport {\r\n currentCapacityOpts,\r\n installationTypeOpts,\r\n} from '~/helpers/driConfigOptions';\r\nimport { colors } from '~/styles/colors';\r\nimport { DeleteOutlineIcon } from '~/icons';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '~/providers';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport const EnergyMeterForm = (props: {\r\n state: any,\r\n render: () => void\r\n clearEnergyForm: (index: number) => void,\r\n index: number,\r\n unitInfo?: {\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n LAT: string\r\n LON: string\r\n TARIFA_KWH: number\r\n CITY_ID: string\r\n STATE_ID: string\r\n DISTRIBUTOR_ID: number\r\n ADDITIONAL_DISTRIBUTOR_INFO: string\r\n CONSUMER_UNIT: string\r\n LOGIN: string\r\n LOGIN_EXTRA: string\r\n PASSWORD: string\r\n STATUS: string\r\n },\r\n clientId: number,\r\n checkMultipleEnergyMeters: () => void\r\n}): JSX.Element => {\r\n const {\r\n state, index, clearEnergyForm, render, clientId, unitInfo, checkMultipleEnergyMeters,\r\n } = props;\r\n const { t } = useTranslation();\r\n const handleDeleteMeter = async () => {\r\n try {\r\n await apiCall('/energy/delete-energy-info', {\r\n SERIAL: state.energyMetersData[index].meterSerial,\r\n MANUFACTURER: state.energyMetersData[index].selectedManufacturer?.NAME,\r\n DRI_ID: state.energyMetersData[index].meterDriId,\r\n CLIENT_ID: clientId,\r\n UNIT_ID: unitInfo?.UNIT_ID,\r\n });\r\n state.energyMetersData.splice(index, 1);\r\n toast.success(t('sucessoDeletarMedidor'));\r\n if (state.energyMetersData.length === 0) {\r\n state.energyMetersData.push({\r\n selectedManufacturer: null,\r\n selectedMeterModel: null,\r\n filteredModelsList: [],\r\n meterDriId: '',\r\n meterSerial: '',\r\n selectedCurrentCapacity: null,\r\n selectedInstallationType: null,\r\n nameOfEstablishment: '',\r\n });\r\n }\r\n render();\r\n } catch (err) {\r\n console.error(err);\r\n toast.error(t('erroDeletarMedidor'));\r\n }\r\n };\r\n\r\n return (\r\n\r\n \r\n \r\n \r\n {t('medidorEnergia')}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n e?.NAME === 'Diel Energia')}\r\n value={state.energyMetersData[index].selectedManufacturer}\r\n label={t('fabricante')}\r\n placeholder={t('selecionarFabricante')}\r\n propLabel=\"NAME\"\r\n hideSelected\r\n onSelect={(value) => {\r\n clearEnergyForm(index);\r\n if (value !== state.energyMetersData[index].selectedManufacturer) {\r\n state.energyMetersData[index].selectedManufacturer = value;\r\n state.energyMetersData[index].filteredModelsList = state.modelsList.filter((model) => model.MANUFACTURER_ID === value.MANUFACTURER_ID);\r\n } else {\r\n state.energyMetersData[index].selectedManufacturer = null;\r\n }\r\n checkMultipleEnergyMeters();\r\n render();\r\n }}\r\n />\r\n { state.energyMetersData[index].selectedMeterModel = value; render(); }}\r\n disabled={!state.energyMetersData[index].selectedManufacturer}\r\n />\r\n {(!state.energyMetersData[index].selectedManufacturer || state.energyMetersData[index].selectedManufacturer.NAME === 'Diel Energia') && (\r\n { state.energyMetersData[index].meterDriId = e.target.value; render(); }}\r\n disabled={!state.energyMetersData[index].selectedManufacturer}\r\n />\r\n )}\r\n { state.energyMetersData[index].meterSerial = e.target.value; render(); }}\r\n disabled={!state.energyMetersData[index].selectedManufacturer}\r\n />\r\n\r\n {state.energyMetersData[index].selectedMeterModel?.NAME === 'ET330' && (\r\n <>\r\n { state.energyMetersData[index].selectedCurrentCapacity = value; render(); }}\r\n disabled={!state.energyMetersData[index].selectedManufacturer}\r\n />\r\n { state.energyMetersData[index].selectedInstallationType = value; render(); }}\r\n disabled={!state.energyMetersData[index].selectedManufacturer}\r\n />\r\n \r\n\r\n )}\r\n {(state.energyMetersData[index].selectedManufacturer && state.energyMetersData[index].selectedManufacturer.NAME === 'Diel Energia') && (\r\n\r\n { state.energyMetersData[index].nameOfEstablishment = e.target.value; render(); }}\r\n disabled={!state.energyMetersData[index].selectedManufacturer}\r\n />\r\n\r\n )}\r\n \r\n \r\n\r\n ); };\r\n","import { useStateVar } from '~/helpers/useStateVar';\r\nimport {\r\n CicleDetailContainer,\r\n TitleSelectRow,\r\n CustomInputCicle,\r\n CicleInfoContainer,\r\n CicleInfoRow,\r\n ItemRow,\r\n ItemSubTitle,\r\n ItemTitle,\r\n ItemDateRow,\r\n CicleDateInfoRow,\r\n} from './styles';\r\nimport { RateModelsType } from './ClientPanel';\r\nimport { useEffect } from 'react';\r\nimport { Select } from '~/components/NewSelect';\r\n\r\ntype RateCicle = {\r\n CICLE_ID: number\r\n MODEL_ID: number\r\n START_CICLE_DATE: string\r\n END_CICLE_DATE: string\r\n PIS: number\r\n VIGENCYCICLE: boolean,\r\n COFINS: number\r\n ICMS: number\r\n CONVENTIONALRATE_PARAMETERS?: {\r\n RATE: string\r\n CONVENTIONALRATE_ID: number,\r\n }\r\n WHITERATE_PARAMETERS?: {\r\n WHITERATE_ID: number,\r\n RATE_PONTA: string,\r\n RATE_OUTPONTA: string,\r\n START_PONTA: string,\r\n END_PONTA: string,\r\n FIRST_MID_RATE: string,\r\n START_FIRST_MID_RATE: string,\r\n END_FIRST_MID_RATE: string,\r\n LAST_MID_RATE?: string,\r\n START_LAST_MID_RATE: string,\r\n END_LAST_MID_RATE: string,\r\n },\r\n}\r\n\r\nexport const CicleDetail = ({ rateModels, formUnitState }: { rateModels?: RateModelsType[], formUnitState: any }): JSX.Element => {\r\n const [state, render] = useStateVar(() => {\r\n const state = {\r\n selectedModel: '' as string,\r\n modelOptions: [] as string[],\r\n energyRate: '' as string,\r\n vigencyCicle: {} as RateCicle,\r\n vigencyModel: {} as RateModelsType,\r\n };\r\n return state;\r\n });\r\n\r\n function setUpInfos() {\r\n if (rateModels) {\r\n rateModels.forEach((model) => state.modelOptions.push(model.modelName));\r\n }\r\n }\r\n\r\n function loadVigencyCicle(modelName: string) {\r\n state.selectedModel = modelName;\r\n const model = rateModels?.find((model) => model.modelName === modelName);\r\n formUnitState.selectedModelId = model?.modelId;\r\n const vigencyCicle = model?.rateCicles[0];\r\n if (vigencyCicle) state.vigencyCicle = vigencyCicle;\r\n if (model) state.vigencyModel = model;\r\n render();\r\n }\r\n\r\n useEffect(() => {\r\n setUpInfos();\r\n render();\r\n }, []);\r\n\r\n return (\r\n \r\n \r\n \r\n Consumo\r\n \r\n \r\n
\r\n { loadVigencyCicle(value); }}\r\n closeOnSelect\r\n placeholder=\"Selecione um modelo\"\r\n />\r\n
\r\n
\r\n
\r\n { !state.selectedModel ? (<>Selecione um modelo de tarifa) : (\r\n \r\n \r\n \r\n \r\n Início do ciclo vigente\r\n \r\n \r\n {state.vigencyCicle.START_CICLE_DATE }\r\n \r\n \r\n
\r\n\r\n {state.vigencyCicle.END_CICLE_DATE && (\r\n <>\r\n \r\n \r\n Fim do ciclo vigente\r\n \r\n \r\n {state.vigencyCicle.END_CICLE_DATE}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n Grupo\r\n \r\n \r\n {state.vigencyModel.groupName}\r\n \r\n \r\n \r\n \r\n Subgrupo\r\n \r\n \r\n {state.vigencyModel.subGroupName}\r\n \r\n \r\n \r\n \r\n Tipo de tarifa\r\n \r\n \r\n {state.vigencyModel.rateModalityName}\r\n \r\n \r\n \r\n { state.vigencyModel.rateModalityName === 'Branca' ? (\r\n <>\r\n \r\n \r\n \r\n Ponta\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.RATE_PONTA}\r\n \r\n \r\n \r\n \r\n Horário inicio\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.START_PONTA}\r\n \r\n \r\n \r\n \r\n Horário fim\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.END_PONTA}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Faixa intermediária inicial\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.FIRST_MID_RATE}\r\n \r\n \r\n \r\n \r\n Horário inicio\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.START_FIRST_MID_RATE}\r\n \r\n \r\n \r\n \r\n Horário fim\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.END_FIRST_MID_RATE}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Faixa intermediária Final\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.LAST_MID_RATE}\r\n \r\n \r\n \r\n \r\n Horário inicio\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.START_LAST_MID_RATE}\r\n \r\n \r\n \r\n \r\n Horário fim\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.END_LAST_MID_RATE}\r\n \r\n \r\n \r\n \r\n \r\n \r\n Fora ponta\r\n \r\n \r\n {state.vigencyCicle.WHITERATE_PARAMETERS?.RATE_OUTPONTA}\r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n Tarifa\r\n \r\n \r\n {state.vigencyCicle.CONVENTIONALRATE_PARAMETERS?.RATE}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n PIS\r\n \r\n \r\n {`${state.vigencyCicle.PIS}%`}\r\n \r\n \r\n \r\n \r\n COFINS\r\n \r\n \r\n {`${state.vigencyCicle.COFINS}%`}\r\n \r\n \r\n \r\n \r\n ICMS\r\n \r\n \r\n {`${state.vigencyCicle.ICMS}%`}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nexport const Container = styled.div`\r\n border: 1px dashed #BFBFBF;\r\n border-radius: 8px;\r\n`;\r\n\r\nexport const IframeBox = styled.iframe`\r\n width: 100%;\r\n height: 100%;\r\n min-height: 700px;\r\n min-width: 700px;\r\n`;\r\nexport const Image = styled.img`\r\n width: 80px;\r\n height: 80px;\r\n`;\r\n\r\nexport const FilesPreview = styled.div`\r\n display: flex;\r\n min-width: 800px;\r\n min-height: auto;\r\n img {\r\n max-width: 100%;\r\n height: 100%;\r\n background-size: cover;\r\n }\r\n`;\r\n\r\nexport const FilesContainer = styled.div`\r\n display: flex;\r\n justify-content: center;\r\n text-align: center;\r\n padding: 10px;\r\n`;\r\nexport const DragContainer = styled.div<{ isPadding }>(\r\n ({ isPadding }) => `\r\n background: #FFFFFF;\r\n border: 2px dashed #BFBFBF;\r\n border-radius: 8px;\r\n margin: 22px 22px 10px 22px;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n font-weight: 500;\r\n font-size: 13px;\r\n line-height: 16px;\r\n font-family: 'Inter';\r\n gap: 10px;\r\n padding: 50px;\r\n h6 {\r\n font-weight: 500;\r\n font-size: 13px;\r\n line-height: 16px;\r\n }\r\n h5 {\r\n font-size: 13px;\r\n line-height: 16px;\r\n color: #AEAEAE;\r\n }\r\n p {\r\n font-size: 13px;\r\n line-height: 16px;\r\n color: blue;\r\n text-decoration-line: underline;\r\n margin: 0;\r\n }\r\n div {\r\n display: flex;\r\n gap: 3px;\r\n }\r\n h3 {\r\n font-size: 13px;\r\n color: red;\r\n }\r\n h4 {\r\n font-size: 13px;\r\n color: green;\r\n }\r\n iframe {\r\n background-size: ${isPadding ? 'cover' : 'unset'};\r\n }\r\n`,\r\n);\r\n","import { Accept, useDropzone } from 'react-dropzone';\r\nimport {\r\n DragContainer,\r\n} from './styles';\r\nimport { t } from 'i18next';\r\nimport { BluePaper } from '~/icons';\r\n\r\ninterface IDropArea {\r\n maxFiles: number,\r\n fileDropped: (value: any) => void\r\n files: any[],\r\n title?: string,\r\n extensions: Accept\r\n}\r\n\r\nexport const DropzoneArea = ({\r\n maxFiles, fileDropped, files, title, extensions,\r\n}: IDropArea) => {\r\n const {\r\n acceptedFiles,\r\n fileRejections,\r\n isDragActive,\r\n getRootProps,\r\n getInputProps,\r\n } = useDropzone({\r\n maxFiles,\r\n accept: extensions,\r\n onDrop: (acceptedFiles) => {\r\n fileDropped(\r\n acceptedFiles.map((file) => Object.assign(file, {\r\n preview: URL.createObjectURL(file),\r\n })),\r\n );\r\n },\r\n });\r\n\r\n const filesNames = acceptedFiles.map((file: any) =>
{file.path}
);\r\n\r\n function titleReturn() {\r\n if (title) return title;\r\n return t('arrasteNoMaximo5Documentos', { maxFiles });\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n {(acceptedFiles.length > 0) && (\r\n
\r\n

{t('arquivoAceito')}

\r\n
{filesNames}
\r\n
\r\n )}\r\n {(fileRejections.length > 0) && (

{t('arquivoRejeitado')}

)}\r\n {(!isDragActive && files.length === 0) && (\r\n <>\r\n \r\n
\r\n
\r\n { maxFiles > 1 ? titleReturn() : t('arrasteUmDocumentoOu') }\r\n
\r\n

{`${maxFiles === 1 ? t('facaUploadArquivo') : t('facaUploadArquivos')}`}

\r\n
\r\n
{t('arquivosJpgPngBpmPdf')}
\r\n \r\n )}\r\n
\r\n
\r\n );\r\n};\r\n","import { toast } from 'react-toastify';\r\nimport { apiCall, apiCallFormData } from '~/providers';\r\nimport { t } from 'i18next';\r\n\r\nexport type TSIMCARD = {\r\n ID: number\r\n ICCID: string\r\n CLIENT?: number\r\n UNIT?: number\r\n ACCESSPOINT?: string\r\n MODEM?: string\r\n MACACCESSPOINT?: string\r\n MACREPEATER?: string\r\n ASSOCIATION_DATE?: string|null\r\n NAME?: string|null\r\n OLDICCID?: string|null\r\n IMAGES?: { name: string, url: string }[]\r\n};\r\n\r\nexport async function handleSubmitSimcards(state, setState, render) {\r\n try {\r\n setState({ isLoading: true });\r\n render();\r\n const listToSet = state.listSimEdit.filter((sim) => {\r\n const item = state.listSimcards.find((item) => item.ICCID === sim.ICCID || item.ICCID === sim.OLDICCID);\r\n if (!item || item.ICCID !== sim.ICCID || item.ACCESSPOINT !== sim.ACCESSPOINT || sim.MODEM !== item.MODEM || item.MACACCESSPOINT !== sim.MACACCESSPOINT || item.MACREPEATER !== sim.MACREPEATER) {\r\n return true;\r\n }\r\n return false;\r\n });\r\n const deleteArray = state.deleteSims.filter((sim) => state.listSimcards.find((item) => item.ICCID === sim.ICCID));\r\n if (deleteArray.length) {\r\n await apiCall('/sims/delete-sim', { ICCIDS: deleteArray });\r\n }\r\n await Promise.all(listToSet.map((sim) => {\r\n apiCall('/sims/set-sim-info', sim);\r\n }));\r\n await Promise.all(state.listAddPhotos.map((item) =>\r\n {\r\n const simInfo = state.listSimcards.find((simcard) => simcard.ICCID === item.iccid);\r\n if (simInfo) {\r\n apiCallFormData('/upload-service/upload-image', { referenceId: simInfo.ID, referenceType: 'SIMCARDS' }, { file: item.file });\r\n }\r\n }));\r\n if (state.deleteListPhotos.length) {\r\n await Promise.all(state.deleteListPhotos.map((item) =>\r\n {\r\n const simInfo = state.listSimcards.find((simcard) => simcard.ICCID === item.iccid);\r\n if (simInfo) {\r\n apiCall('/upload-service/delete-image', { referenceId: simInfo.ID, referenceType: 'SIMCARDS', filename: item.filename });\r\n }\r\n }));\r\n }\r\n } catch (err) {\r\n toast.error(t('erroSalvar'));\r\n }\r\n setState({ isLoading: false });\r\n render();\r\n}\r\n\r\nexport async function deleteSims(state) {\r\n const deleteArray = state.deleteSims.filter((sim) => state.listSimcards.find((item) => item.ICCID === sim.ICCID || item.ICCID === sim.OLDICCID));\r\n if (deleteArray.length) {\r\n await apiCall('/sims/delete-sim', { ICCIDS: deleteArray });\r\n }\r\n}\r\n\r\nexport async function editUpdateSims(state) {\r\n const listToSet = state.listSimEdit.filter((sim) => {\r\n const item = state.listSimcards.find((item) => item.ICCID === sim.ICCID || item.ICCID === sim.OLDICCID);\r\n if (!item || item.ICCID !== sim.ICCID || item.ACCESSPOINT !== sim.ACCESSPOINT || sim.MODEM !== item.MODEM || item.MACACCESSPOINT !== sim.MACACCESSPOINT || item.MACREPEATER !== sim.MACREPEATER) {\r\n return true;\r\n }\r\n return false;\r\n });\r\n await Promise.all(listToSet.map((sim) => {\r\n apiCall('/sims/set-sim-info', sim);\r\n }));\r\n}\r\n\r\nexport async function addPhotosSims(state) {\r\n await Promise.all(state.listAddPhotos.map((item) =>\r\n {\r\n const simInfo = state.listSimcards.find((simcard) => simcard.ICCID === item.iccid);\r\n if (simInfo) {\r\n apiCallFormData('/upload-service/upload-image', { referenceId: simInfo.ID, referenceType: 'SIMCARDS' }, { file: item.file });\r\n }\r\n }));\r\n}\r\n\r\nexport async function deletePhotosSims(state) {\r\n if (state.deleteListPhotos.length) {\r\n await Promise.all(state.deleteListPhotos.map((item) =>\r\n {\r\n const simInfo = state.listSimcards.find((simcard) => simcard.ICCID === item.iccid);\r\n if (simInfo) {\r\n apiCall('/upload-service/delete-image', { referenceId: simInfo.ID, referenceType: 'SIMCARDS', filename: item.filename });\r\n }\r\n }));\r\n }\r\n}\r\n","import {\r\n useState,\r\n useMemo,\r\n useEffect,\r\n useRef,\r\n} from 'react';\r\nimport { t } from 'i18next';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex } from 'reflexbox';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { usePasswordToggle } from '~/hooks/usePasswordToggle';\r\nimport '~/assets/css/ReactTags.css';\r\nimport {\r\n Button, Input, ModalWindow, Select,\r\n} from 'components';\r\nimport { Input as InputNew } from 'components/NewInputs/Default';\r\nimport { Select as SelectNew } from 'components/NewSelect';\r\nimport { useForm } from 'react-hook-form';\r\nimport parseDecimalNumber from 'helpers/parseDecimalNumber';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport queryString from 'query-string';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { apiCall, apiCallFormData, ApiResps } from '../../providers';\r\nimport { SelectMultiple } from '~/components/NewSelectMultiple';\r\nimport { GetUsersListType } from '~/metadata/GetUsersList';\r\nimport {\r\n FormEditBaselines,\r\n} from '~/components/FormEditBaselines';\r\nimport { FormEditExtras } from './UnitExtras';\r\nimport { Headers2 } from '../Analysis/Header';\r\nimport { getCachedDevInfo } from '~/helpers/cachedStorage';\r\nimport { AxiosError } from 'axios';\r\nimport moment from 'moment';\r\n\r\nimport {\r\n CustomInput,\r\n BaseLinesBool,\r\n Label,\r\n Form,\r\n IconWrapper,\r\n Content,\r\n ContentEnergyMeter,\r\n ContentDate,\r\n StyledCalendarIcon,\r\n ModalCancel,\r\n ModalDisassociate,\r\n InfoSIMCARD,\r\n ContainerIconsSimcard,\r\n ContainerDescEditSim,\r\n CustomInputConstructedArea,\r\n} from './styles';\r\n\r\nimport {\r\n currentCapacityOpts,\r\n driMetersCfgs,\r\n installationTypeOpts,\r\n} from '~/helpers/driConfigOptions';\r\nimport { SingleDatePicker } from 'react-dates';\r\nimport { Tabs } from '~/components/Tabs';\r\nimport { EnergyMeterForm } from './EnergyMeterForm';\r\nimport { colors } from '~/styles/colors';\r\nimport i18n from '~/i18n';\r\nimport { CicleDetail } from './CicleDetail';\r\nimport {\r\n ArrowDownIcon,\r\n ArrowUpIcon,\r\n DeleteTrashIcon,\r\n EditPenPaperIcon,\r\n PaperBloomIcon,\r\n SimcardIcon,\r\n} from '~/icons';\r\nimport { RateModelsType } from './ClientPanel';\r\nimport { DropzoneArea } from '~/components/Dropzone';\r\nimport {\r\n TSIMCARD,\r\n addPhotosSims,\r\n deletePhotosSims,\r\n deleteSims,\r\n editUpdateSims,\r\n} from '~/helpers/simcards';\r\n\r\ntype Inputs = {\r\n login: string,\r\n loginExtra: string,\r\n password: string,\r\n consumerUnit: string,\r\n};\r\n\r\nconst formValidators = {\r\n login: {\r\n required: false,\r\n },\r\n loginExtra: {\r\n required: false,\r\n },\r\n consumerUnit: {\r\n required: false,\r\n },\r\n password: {\r\n required: false,\r\n },\r\n};\r\n\r\nconst comboHydrometerOptions: string[] = ['Elster S120 (1 L/pulso)', 'ZENNER ETKD-P-N (10 L/pulso)', 'ZENNER MTKD-AM-I (10 L/pulso)',\r\n 'Saga Unijato US-1.5 (1 L/pulso)', 'Saga Unijato US-3.0 (1 L/pulso)', 'Saga Unijato US-5.0 (1 L/pulso)'];\r\n\r\nconst comboLocalOptions: string[] = [\r\n 'Em série com o hidrômetro da unidade',\r\n \"Próximo à caixa d'agua\",\r\n 'Somente sensor no hidrômetro da unidade',\r\n 'Outro',\r\n];\r\n\r\ninterface IEnergyMeter {\r\n selectedManufacturer: null | { MANUFACTURER_ID: number, NAME: string };\r\n meterSerial: string;\r\n meterDriId: string;\r\n selectedMeterModel: null | { MODEL_ID: number, MANUFACTURER_ID: number, NAME: string };\r\n selectedCurrentCapacity: null | { name: string, value: string };\r\n selectedInstallationType: null | { name: string, value: string };\r\n nameOfEstablishment?: string;\r\n filteredModelsList: { MODEL_ID: number, MANUFACTURER_ID: number, NAME: string }[],\r\n}\r\n\r\ninterface IEnergyMeterToSend {\r\n SERIAL?: string\r\n MANUFACTURER: string\r\n MODEL: string\r\n DRI_ID?: string\r\n ESTABLISHMENT_NAME?: string\r\n DRI_CFG?: {\r\n driId: string\r\n application: string\r\n protocol: string\r\n modbusBaudRate?: string\r\n telemetryInterval?: string\r\n serialMode?: string\r\n parity?: string\r\n stopBits?: string\r\n capacityTc?: string\r\n worksheetName?: string\r\n }\r\n}\r\n\r\nexport const FormEditUnit = (props: {\r\n rateModels?: RateModelsType[],\r\n unitInfo?: {\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n LAT: string\r\n LON: string\r\n TARIFA_KWH: number\r\n CITY_ID: string\r\n STATE_ID: string\r\n STATE_NAME: string\r\n COUNTRY_NAME: string\r\n DISTRIBUTOR_ID: number\r\n ADDITIONAL_DISTRIBUTOR_INFO: string\r\n CONSUMER_UNIT: string\r\n LOGIN: string\r\n LOGIN_EXTRA: string\r\n PASSWORD: string\r\n STATUS: string\r\n PRODUCTION: boolean\r\n TIMEZONE_AREA: string\r\n TIMEZONE_ID: number\r\n TIMEZONE_OFFSET: number\r\n AMOUNT_PEOPLE: string\r\n CONSTRUCTED_AREA?: string\r\n }\r\n clientId: number,\r\n onSuccess: (result: { item: {}, action: string }) => void\r\n onCancel: () => void\r\n states: { STATE_ID: string, COUNTRY_ID: number }[]\r\n cities: { CITY_ID: string, STATE_ID: string }[]\r\n timezones: { value: number, label: string }[]\r\n countries: { COUNTRY_NAME: string, COUNTRY_ID: number }[]\r\n distributors?: { value: number, name: string }[]\r\n accessPoints?: {\r\n name: string,\r\n cnpjs: string[],\r\n access_points: string[]\r\n }[]\r\n energyMeters?: ApiResps['/energy/get-energy-list']['list'],\r\n waterMeters?: ApiResps['/get-integrations-list']['list']\r\n}): JSX.Element => {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const history = useHistory();\r\n const {\r\n unitInfo = undefined, clientId, onSuccess, onCancel, countries, states, cities, timezones, distributors,\r\n } = props;\r\n const [files, setFiles] = useState([]);\r\n const [state, render, setState] = useStateVar({\r\n selectedModelId: null as number | null,\r\n isBaselineOpen: false,\r\n submitting: false,\r\n editingExtras: false,\r\n supervisors: [] as { USER: string }[],\r\n distributors: props.distributors as { value: number, name: string, tag: string }[],\r\n selectedDistributor: '' as string,\r\n isLoading: false as boolean,\r\n isBaselineEdit: false as boolean,\r\n isBaselineValuesEdit: false as boolean,\r\n accessPoints: props.accessPoints as {name: string, access_points: string[]}[],\r\n additionalDistributorInfo: '' as string,\r\n accessPointsAvailable: [] as string[],\r\n manufacturersList: [] as { MANUFACTURER_ID: number, NAME: string, }[],\r\n modelsList: [] as { MODEL_ID: number, MANUFACTURER_ID: number, NAME: string }[],\r\n energyMeters: props.energyMeters,\r\n energyMetersData: [] as IEnergyMeter[],\r\n waterMeters: props.waterMeters,\r\n selectedSupplier: '' as string,\r\n hydrometerModel: '' as string,\r\n installationDate: '' as any,\r\n meterWaterId: '' as string,\r\n totalCapacity: '',\r\n totalOfReservoirs: '',\r\n installationLocal: '',\r\n otherInstallationLocal: '',\r\n focused: false,\r\n isAllEnergyMetersFromDiel: true,\r\n listSimcards: [] as TSIMCARD[],\r\n listSimEdit: [] as TSIMCARD[],\r\n modalAddSimcard: false,\r\n formSimcard: {\r\n iccid: '',\r\n pontoAcesso: '',\r\n modem: '',\r\n macPontoAcesso: '',\r\n macRepetidor: '',\r\n },\r\n itemDesc: {} as TSIMCARD,\r\n deleteSims: [] as { ICCID: string }[],\r\n isEdit: false,\r\n modalDesc: false,\r\n editDeleteSim: {} as TSIMCARD | null,\r\n listAddPhotos: [] as {\r\n iccid: string,\r\n file: Blob\r\n }[],\r\n deleteListPhotos: [] as {\r\n filename: string,\r\n iccid: string,\r\n }[],\r\n modalDeleteSim: false,\r\n });\r\n const [PasswordInputType, ToggleIcon] = usePasswordToggle();\r\n const [formData] = useState({\r\n UNIT_ID: (unitInfo && unitInfo.UNIT_ID) || null,\r\n UNIT_NAME: (unitInfo && unitInfo.UNIT_NAME) || '',\r\n LAT: (unitInfo && unitInfo.LAT) || '',\r\n LON: (unitInfo && unitInfo.LON) || '',\r\n TARIFA_KWH: (unitInfo && unitInfo.TARIFA_KWH && String(unitInfo.TARIFA_KWH)) || '',\r\n PRODUCTION: (unitInfo && unitInfo.PRODUCTION !== undefined ? Boolean(unitInfo.PRODUCTION) : null),\r\n city_item: (unitInfo && unitInfo.CITY_ID && cities.find((item) => item.CITY_ID === unitInfo.CITY_ID)) || null,\r\n state_item: (unitInfo && unitInfo.STATE_ID && states.find((item) => item.STATE_ID === unitInfo.STATE_NAME)) || null,\r\n country_item: (unitInfo && unitInfo.COUNTRY_NAME && countries.find((item) => item.COUNTRY_NAME === unitInfo.COUNTRY_NAME)) || null,\r\n distributor: (unitInfo && unitInfo.DISTRIBUTOR_ID && distributors && distributors.find((item) => item.value === unitInfo.DISTRIBUTOR_ID)) || null,\r\n accessPoints: [],\r\n login: (unitInfo && unitInfo.LOGIN) || '',\r\n login_extra: (unitInfo && unitInfo.LOGIN_EXTRA) || '',\r\n consumer_unit: (unitInfo && unitInfo.CONSUMER_UNIT) || '',\r\n password: (unitInfo && unitInfo.PASSWORD) || '',\r\n baselineValues: [] as {\r\n BASELINE_MONTH: number,\r\n BASELINE_KWH: number,\r\n BASELINE_PRICE: number,\r\n }[],\r\n baselineTemplate: {} as {value: number, name: string, tag: string},\r\n baselineId: null as null|number,\r\n additionalDistributorInfo: unitInfo && unitInfo.ADDITIONAL_DISTRIBUTOR_INFO || '',\r\n status: unitInfo && unitInfo.STATUS || null,\r\n timezone: unitInfo && { area: `${unitInfo.TIMEZONE_AREA} (${unitInfo.TIMEZONE_OFFSET})`, id: unitInfo.TIMEZONE_ID } || {} as { area: string, id: number },\r\n AMOUNT_PEOPLE: unitInfo?.AMOUNT_PEOPLE ?? '',\r\n CONSTRUCTED_AREA: unitInfo?.CONSTRUCTED_AREA ?? null,\r\n });\r\n\r\n const [usersList, setUsersList] = useState([]);\r\n const isEdit = !!formData.UNIT_ID;\r\n const isAccessDistributorEdit = !!formData.distributor;\r\n const comboLocalOptions: string[] = [\r\n t('emSerieHidrometroUnidade'),\r\n t('proximoCaixaDagua'),\r\n t('somenteSensorHidrometroUnidade'),\r\n t('outro'),\r\n ];\r\n async function getClientUsers(unitId?: number) {\r\n const response = await apiCall('/users/list-users', { CLIENT_ID: clientId, includeAdmins: false });\r\n setUsersList(response.list);\r\n if (unitId) {\r\n const { list: oldSupervisorsList } = await apiCall('/clients/get-unit-supervisors', { UNIT_ID: unitId });\r\n const oldSupervisorsEmail = oldSupervisorsList.map((supervisor) => supervisor.EMAIL);\r\n const oldSupervisors = response.list.filter((user) => oldSupervisorsEmail.includes(user.USER));\r\n setState({ supervisors: oldSupervisors });\r\n }\r\n }\r\n\r\n function handleAccessPoints() {\r\n const distributorTag = (state.distributors.find((item) => item.value === Number(state.selectedDistributor)))?.tag;\r\n setState({ accessPointsAvailable: state.accessPoints.find((item) => item.name === distributorTag)?.access_points });\r\n }\r\n\r\n const checkMultipleEnergyMeters = () => {\r\n let isAllDiel = true;\r\n state.energyMetersData.forEach((meter) => {\r\n if (meter.selectedManufacturer?.NAME !== 'Diel Energia') {\r\n isAllDiel = false;\r\n }\r\n });\r\n setState({ isAllEnergyMetersFromDiel: isAllDiel });\r\n };\r\n\r\n function handlePrice(month, price) {\r\n const baselineIndex = formData.baselineValues.findIndex((item) => item.BASELINE_MONTH === month);\r\n price = price != null ? price.replace('R$ ', '') : price;\r\n if (baselineIndex > -1) {\r\n formData.baselineValues[baselineIndex].BASELINE_PRICE = Number(price);\r\n }\r\n else {\r\n formData.baselineValues.push({ BASELINE_MONTH: month, BASELINE_PRICE: Number(price), BASELINE_KWH: 0 });\r\n }\r\n }\r\n\r\n function handleKwh(month, kwh) {\r\n const baselineIndex = formData.baselineValues.findIndex((item) => item.BASELINE_MONTH === month);\r\n kwh = kwh != null ? kwh.replace('kWh ', '') : kwh;\r\n if (baselineIndex > -1) {\r\n formData.baselineValues[baselineIndex].BASELINE_KWH = Number(kwh);\r\n }\r\n else {\r\n formData.baselineValues.push({ BASELINE_MONTH: month, BASELINE_PRICE: 0, BASELINE_KWH: Number(kwh) });\r\n }\r\n }\r\n\r\n function handleBaselineId(baselineId) {\r\n formData.baselineId = baselineId;\r\n }\r\n\r\n function handleBaselineTemplate(baselineTemplate: {value: number, name: string, tag: string}) {\r\n formData.baselineTemplate = { value: baselineTemplate.value, name: baselineTemplate.name, tag: baselineTemplate.tag };\r\n }\r\n\r\n function handleBaselineEdit(isBaselineEdit: boolean) {\r\n state.isBaselineEdit = isBaselineEdit;\r\n }\r\n\r\n function handleBaselineValuesEdit(isBaselineValuesEdit: boolean) {\r\n state.isBaselineValuesEdit = isBaselineValuesEdit;\r\n }\r\n\r\n function onFilterDistributorChange(distributor) {\r\n state.selectedDistributor = distributor;\r\n render();\r\n formData.additionalDistributorInfo = '';\r\n handleAccessPoints();\r\n }\r\n\r\n async function getEnergyData(unitId?: number) {\r\n const { manufacturersList, modelsList } = await apiCall('/energy/get-energy-combo-opts', {});\r\n setState({ manufacturersList, modelsList });\r\n\r\n if (!unitId) return;\r\n const energyMeters = state.energyMeters?.filter((meter) => meter.UNIT_ID === unitId);\r\n\r\n if (!energyMeters) return;\r\n for (const meter of energyMeters) {\r\n let capacityTc : string;\r\n let installationType: string;\r\n if (meter && meter.MANUFACTURER === 'Diel Energia') {\r\n const devInfo = await getCachedDevInfo(meter.ENERGY_DEVICE_ID, { forceFresh: true });\r\n capacityTc = devInfo?.dri?.varsCfg?.varsList.find((x) => x.name === 'Capacidade TC')?.address.value;\r\n installationType = devInfo?.dri?.varsCfg?.varsList.find((x) => x.name === 'Tipo Instalação')?.address.value;\r\n }\r\n if (meter) {\r\n const manufacturer = manufacturersList.find((x) => x.NAME === meter.MANUFACTURER);\r\n state.energyMetersData.push({\r\n selectedManufacturer: manufacturer || null,\r\n selectedMeterModel: modelsList.find((x) => x.NAME === meter.MODEL) || null,\r\n filteredModelsList: state.modelsList.filter((model) => model.MANUFACTURER_ID === manufacturer?.MANUFACTURER_ID),\r\n meterDriId: meter.MANUFACTURER === 'Diel Energia' ? meter.ENERGY_DEVICE_ID : '',\r\n meterSerial: meter.SERIAL,\r\n selectedCurrentCapacity: currentCapacityOpts?.find((opt) => opt.value === (Number(capacityTc) / 2).toString()) || null,\r\n selectedInstallationType: installationTypeOpts[meter.MODEL]?.find((opt) => opt.value === installationType) || null,\r\n nameOfEstablishment: meter.ESTABLISHMENT_NAME,\r\n });\r\n }\r\n }\r\n if (state.energyMetersData.length === 0) {\r\n state.energyMetersData.push({\r\n selectedManufacturer: null,\r\n selectedMeterModel: null,\r\n filteredModelsList: [],\r\n meterDriId: '',\r\n meterSerial: '',\r\n selectedCurrentCapacity: null,\r\n selectedInstallationType: null,\r\n nameOfEstablishment: '',\r\n });\r\n }\r\n checkMultipleEnergyMeters();\r\n }\r\n\r\n async function getWaterData(unitId?: number) {\r\n if (unitId) {\r\n const meter = state.waterMeters?.find((meter) => meter.UNIT_ID === unitId);\r\n const meterId = meter?.integrId;\r\n if (meterId) {\r\n const { info } = await apiCall('/get-integration-info', { supplier: (meterId.startsWith('DMA') ? 'diel-dma' : 'laager'), integrId: meterId });\r\n const hasDefaultOption = comboLocalOptions.includes(info.installationLocation || '');\r\n setState({\r\n selectedSupplier: info.supplier,\r\n hydrometerModel: info.hydrometerModel || '',\r\n installationDate: info.installationDate ? moment(info.installationDate?.substring(0, 10)) : null,\r\n meterWaterId: meterId,\r\n totalCapacity: String(info.totalCapacity) || '',\r\n totalOfReservoirs: String(info.quantityOfReservoirs) || '',\r\n });\r\n if (hasDefaultOption) {\r\n setState({\r\n installationLocal: info.installationLocation || '',\r\n otherInstallationLocal: '',\r\n });\r\n } else if (info.installationLocation && info.installationLocation !== '') {\r\n setState({\r\n installationLocal: 'Outro',\r\n otherInstallationLocal: info.installationLocation,\r\n });\r\n }\r\n }\r\n }\r\n }\r\n\r\n async function getListSimcards(unitId?: number) {\r\n try {\r\n if (unitId) {\r\n const list = await apiCall('/sims/get-unit-sims', { unitId });\r\n setState({ listSimcards: list, listSimEdit: list });\r\n }\r\n } catch (err) {\r\n toast.error('Nao foi possivel buscar a lista de SIMCARD da unidade');\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n getClientUsers(unitInfo?.UNIT_ID);\r\n updateAccessDistributorData();\r\n getEnergyData(unitInfo?.UNIT_ID);\r\n getWaterData(unitInfo?.UNIT_ID);\r\n getListSimcards(unitInfo?.UNIT_ID);\r\n }, []);\r\n\r\n const updateAccessDistributorData = () => {\r\n if (clientId == null) return;\r\n state.isLoading = true;\r\n setValue('login', formData.login);\r\n setValue('loginExtra', formData.login_extra);\r\n setValue('consumerUnit', formData.consumer_unit);\r\n state.isLoading = false;\r\n };\r\n\r\n function verifyAmountPeople(amountPeople) {\r\n const amountPeopleValue = Number(amountPeople);\r\n if (amountPeopleValue && (Number.isNaN(amountPeopleValue) || amountPeopleValue <= 0 || !Number.isInteger(amountPeopleValue))) {\r\n toast.error(t('numeroPessoasDeveSerUmNumeroInteiro'));\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n const handleFormSubmition = async ({\r\n consumerUnit, login, password, loginExtra,\r\n }: Inputs) => {\r\n let response = null as null|{\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n LAT: string\r\n LON: string\r\n CITY_ID: string\r\n CITY_NAME: string\r\n STATE_ID: string\r\n GA_METER?: number\r\n PRODUCTION?: boolean\r\n TARIFA_DIEL?: 0|1\r\n AMOUNT_PEOPLE?: number\r\n };\r\n\r\n let responseAccessDistributor = null as {\r\n UNIT_ID: number\r\n DISTRIBUTOR_ID: number\r\n CONSUMER_UNIT: string\r\n LOGIN: string\r\n LOGIN_EXTRA: string\r\n DISTRIBUTOR_LABEL: string\r\n STATUS: string\r\n }|null;\r\n\r\n let responseBaseline: {\r\n UNIT_ID: number,\r\n BASELINE_ID: number,\r\n BASELINE_TEMPLATE_ID: number,\r\n BASELINE_TEMPLATE_TAG: string,\r\n }|null;\r\n\r\n let action = null as null|string;\r\n try {\r\n state.submitting = true; render();\r\n\r\n const reqData = {\r\n UNIT_ID: formData.UNIT_ID || undefined,\r\n CLIENT_ID: clientId,\r\n UNIT_NAME: formData.UNIT_NAME,\r\n LAT: formData.LAT || null,\r\n LON: formData.LON || null,\r\n TARIFA_KWH: parseDecimalNumber(formData.TARIFA_KWH) || null,\r\n CITY_ID: formData.city_item && formData.city_item.CITY_ID,\r\n STATE_ID: formData.state_item && formData.state_item.STATE_ID,\r\n // eslint-disable-next-line no-unneeded-ternary\r\n PRODUCTION: formData.PRODUCTION,\r\n TIMEZONE_ID: formData.timezone.id,\r\n AMOUNT_PEOPLE: formData.AMOUNT_PEOPLE || null,\r\n CONSTRUCTED_AREA: formData.CONSTRUCTED_AREA ?? null,\r\n };\r\n if (verifyAmountPeople(reqData.AMOUNT_PEOPLE)) {\r\n return;\r\n }\r\n if (isEdit) {\r\n response = await apiCall('/clients/edit-unit', {\r\n ...reqData,\r\n ...(formData.AMOUNT_PEOPLE !== '' ? { AMOUNT_PEOPLE: formData.AMOUNT_PEOPLE } : { AMOUNT_PEOPLE: null }),\r\n ...(formData.CONSTRUCTED_AREA !== '' ? { CONSTRUCTED_AREA: formData.CONSTRUCTED_AREA } : { CONSTRUCTED_AREA: null }),\r\n UNIT_ID: formData.UNIT_ID!,\r\n RATE_MODEL_ID: state.selectedModelId,\r\n });\r\n action = 'edit';\r\n } else {\r\n response = await apiCall('/dac/add-client-unit', {\r\n ...reqData,\r\n ...(formData.CONSTRUCTED_AREA !== '' ? { CONSTRUCTED_AREA: formData.CONSTRUCTED_AREA } : { CONSTRUCTED_AREA: null }),\r\n ...(formData.AMOUNT_PEOPLE !== '' ? { AMOUNT_PEOPLE: formData.AMOUNT_PEOPLE } : { AMOUNT_PEOPLE: null }),\r\n });\r\n formData.UNIT_ID = response.UNIT_ID;\r\n action = 'new';\r\n }\r\n\r\n if (state.selectedDistributor === '' && formData.distributor) {\r\n state.selectedDistributor = formData.distributor.value.toString();\r\n }\r\n\r\n if (response && state.selectedDistributor && login) {\r\n const reqDataAccessDistributor = {\r\n UNIT_ID: response.UNIT_ID,\r\n CLIENT_ID: clientId,\r\n DISTRIBUTOR_ID: Number(state.selectedDistributor) || undefined,\r\n ADDITIONAL_DISTRIBUTOR_INFO: state.additionalDistributorInfo || undefined,\r\n CONSUMER_UNIT: consumerUnit || null,\r\n LOGIN: login || null,\r\n PASSWORD: password || null,\r\n LOGIN_EXTRA: loginExtra || null,\r\n STATUS: formData.status || null,\r\n };\r\n\r\n if (isAccessDistributorEdit) {\r\n responseAccessDistributor = await apiCall('/clients/edit-access-distributor', reqDataAccessDistributor);\r\n }\r\n else {\r\n responseAccessDistributor = await apiCall('/clients/add-access-distributor', reqDataAccessDistributor);\r\n }\r\n }\r\n\r\n if (response && formData.baselineTemplate) {\r\n const reqBaseline = {\r\n CLIENT_ID: clientId,\r\n UNIT_ID: response.UNIT_ID,\r\n BASELINE_ID: formData.baselineId || undefined,\r\n BASELINE_TEMPLATE_ID: formData.baselineTemplate.value,\r\n };\r\n\r\n if (reqBaseline.BASELINE_ID || reqBaseline.BASELINE_TEMPLATE_ID) {\r\n if (state.isBaselineEdit) {\r\n responseBaseline = await apiCall('/clients/edit-baseline', { ...reqBaseline, BASELINE_ID: formData.baselineId! });\r\n }\r\n else {\r\n responseBaseline = await apiCall('/clients/add-baseline', reqBaseline);\r\n }\r\n\r\n if (responseBaseline && responseBaseline.BASELINE_TEMPLATE_TAG === 'manual') {\r\n const reqBaselineValues = {\r\n CLIENT_ID: clientId,\r\n UNIT_ID: response.UNIT_ID,\r\n BASELINE_ID: responseBaseline.BASELINE_ID,\r\n baselineValues: formData.baselineValues,\r\n };\r\n\r\n await apiCall('/clients/set-baseline-values', reqBaselineValues);\r\n }\r\n }\r\n }\r\n\r\n if (unitInfo) {\r\n if (state.supervisors.length > 0) {\r\n await Promise.all(state.supervisors.map((user: { USER: string }) => apiCall('/clients/set-unit-supervisors', {\r\n USER_ID: user.USER,\r\n UNIT_ID: unitInfo.UNIT_ID,\r\n })));\r\n } else {\r\n await apiCall('/clients/clear-unit-supervisors', { UNIT_ID: unitInfo.UNIT_ID });\r\n }\r\n }\r\n } catch (err) {\r\n const error = err as AxiosError;\r\n console.log(err);\r\n if (error.response?.status !== 500) {\r\n toast.error(`${error.response?.data}`);\r\n } else {\r\n toast.error(t('erroDadosGerais'));\r\n }\r\n }\r\n state.submitting = false; render();\r\n if (response && (responseAccessDistributor || state.selectedDistributor === '' || isAccessDistributorEdit) && action) onSuccess({ item: { response, responseAccessDistributor }, action });\r\n };\r\n\r\n async function handleSubmitEnergyMeterInfo() {\r\n try {\r\n const meters: IEnergyMeterToSend[] = [];\r\n for (const energyMeter of state.energyMetersData) {\r\n if (energyMeter.selectedManufacturer && energyMeter.selectedMeterModel) {\r\n const meterReqData: IEnergyMeterToSend = {\r\n MANUFACTURER: energyMeter.selectedManufacturer.NAME,\r\n MODEL: energyMeter.selectedMeterModel.NAME,\r\n DRI_ID: energyMeter.meterDriId,\r\n SERIAL: energyMeter.meterSerial,\r\n CLIENT_ID: clientId,\r\n UNIT_ID: formData.UNIT_ID,\r\n ESTABLISHMENT_NAME: energyMeter.nameOfEstablishment,\r\n };\r\n meters.push(meterReqData);\r\n }\r\n }\r\n await apiCall('/energy/set-energy-list-info', { meters, CLIENT_ID: clientId, UNIT_ID: formData.UNIT_ID });\r\n toast.success('Sucesso na associação dos medidores de energia');\r\n\r\n for (const energyMeter of state.energyMetersData) {\r\n if (energyMeter.selectedManufacturer && energyMeter.selectedMeterModel) {\r\n if (energyMeter.meterDriId) {\r\n const driCfg = driMetersCfgs[energyMeter.selectedMeterModel.NAME];\r\n driCfg.driId = energyMeter.meterDriId;\r\n driCfg.capacityTc = energyMeter.selectedCurrentCapacity?.value;\r\n driCfg.installationType = energyMeter.selectedInstallationType?.value;\r\n apiCallFormData('/upload-dri-varscfg', driCfg, { file: null });\r\n }\r\n }\r\n }\r\n } catch (err) {\r\n const error = err as AxiosError;\r\n console.log(err);\r\n if (error.response?.status !== 500) {\r\n toast.error(`${error.response?.data}`);\r\n } else {\r\n toast.error(t('erroAssociacaoMedidorEnergia'));\r\n }\r\n }\r\n }\r\n\r\n async function handleDisassociation() {\r\n try {\r\n if (state.selectedSupplier && state.meterWaterId) {\r\n if (state.selectedSupplier === 'Diel') {\r\n const dmaData: any = { DMA_ID: state.meterWaterId };\r\n dmaData.UNIT_ID = null;\r\n await apiCall('/dma/set-dma-info', dmaData);\r\n\r\n toast.success(t('sucessoDesassociacaoDma'));\r\n } else if (state.selectedSupplier === 'Laager') {\r\n const laagerData: any = { integrId: state.meterWaterId };\r\n laagerData.UNIT_ID = null;\r\n\r\n await apiCall('/laager/set-meter-info', {\r\n unitId: laagerData.UNIT_ID,\r\n meterId: laagerData.integrId,\r\n });\r\n\r\n toast.success(t('sucessoDesassociacaoLaager'));\r\n }\r\n }\r\n } catch (err) { console.log(err);\r\n toast.error(t('erroDesassociacaoMedidorAgua'));\r\n }\r\n }\r\n async function handleSubmitWaterMeterInfo() {\r\n try {\r\n if (state.selectedSupplier && state.meterWaterId) {\r\n if (state.selectedSupplier === 'Diel') {\r\n const dmaData: any = { DMA_ID: state.meterWaterId };\r\n\r\n dmaData.UNIT_ID = unitInfo && unitInfo.UNIT_ID ? unitInfo.UNIT_ID : (formData.UNIT_ID ? formData.UNIT_ID : null);\r\n dmaData.UNIT_NAME = unitInfo && unitInfo.UNIT_NAME ? unitInfo.UNIT_NAME : null;\r\n dmaData.CLIENT_ID = clientId || null;\r\n dmaData.HYDROMETER_MODEL = state.hydrometerModel ? state.hydrometerModel : null;\r\n const defaultInstallationLocation = state.installationLocal !== 'Outro' && state.installationLocal !== '' ? state.installationLocal : null;\r\n dmaData.INSTALLATION_LOCATION = state.installationLocal === 'Outro' && state.otherInstallationLocal !== '' ? state.otherInstallationLocal : defaultInstallationLocation;\r\n dmaData.INSTALLATION_DATE = state.installationDate !== '' && state.installationDate !== null ? moment(state.installationDate).format('YYYY-MM-DD') : moment().format('YYYY-MM-DD');\r\n dmaData.TOTAL_CAPACITY = state.totalCapacity ? Number(state.totalCapacity) : null;\r\n dmaData.QUANTITY_OF_RESERVOIRS = state.totalOfReservoirs ? Number(state.totalOfReservoirs) : null;\r\n dmaData.CHANGED_BY_UNIT = true;\r\n\r\n await apiCall('/dma/set-dma-info', dmaData);\r\n\r\n toast.success(t('sucessoAdicaoDma'));\r\n } else if (state.selectedSupplier === 'Laager') {\r\n const laagerData: any = { integrId: state.meterWaterId };\r\n\r\n laagerData.UNIT_ID = unitInfo && unitInfo.UNIT_ID ? unitInfo.UNIT_ID : (formData.UNIT_ID ? formData.UNIT_ID : null);\r\n laagerData.hydrometerModel = state.hydrometerModel ? state.hydrometerModel : null;\r\n const defaultInstallationLocation = state.installationLocal !== 'Outro' && state.installationLocal !== '' ? state.installationLocal : null;\r\n laagerData.installationLocation = state.installationLocal === 'Outro' && state.otherInstallationLocal !== '' ? state.otherInstallationLocal : defaultInstallationLocation;\r\n laagerData.installationDate = state.installationDate !== '' && state.installationDate !== null ? moment(state.installationDate).format('YYYY-MM-DD') : moment().format('YYYY-MM-DD');\r\n laagerData.totalCapacity = state.totalCapacity ? Number(state.totalCapacity) : null;\r\n laagerData.quantityOfReservoirs = state.totalOfReservoirs ? Number(state.totalOfReservoirs) : null;\r\n\r\n await apiCall('/laager/set-meter-info', {\r\n unitId: laagerData.UNIT_ID,\r\n meterId: laagerData.integrId,\r\n installationLocation: laagerData.installationLocation,\r\n installationDate: laagerData.installationDate,\r\n totalCapacity: laagerData.totalCapacity,\r\n quantityOfReservoirs: laagerData.quantityOfReservoirs,\r\n hydrometerModel: laagerData.hydrometerModel,\r\n changedByUnit: true,\r\n\r\n });\r\n\r\n toast.success(t('sucessoAssociacaoMedidorAgua'));\r\n }\r\n }\r\n } catch (err) { console.log(err);\r\n toast.error(t('erroAdicaoDmaOuAssociacaoMedidorAgua'));\r\n }\r\n }\r\n\r\n async function SubmitSimcards() {\r\n await Promise.all([\r\n deleteSims(state),\r\n editUpdateSims(state),\r\n addPhotosSims(state),\r\n deletePhotosSims(state),\r\n ]).then(() => {\r\n toast.success(t('sucessoSalvar'));\r\n }).catch(() => {\r\n toast.error(t('erroSalvar'));\r\n });\r\n }\r\n\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n\r\n const tabs = [\r\n {\r\n title: t('dadosGerais'),\r\n link: `${linkBase}`,\r\n isActive: !queryPars.aba,\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('energia'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'energia', categoria: 'fatura' })}`,\r\n isActive: (queryPars.aba === 'energia'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('agua'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'water' })}`,\r\n isActive: (queryPars.aba === 'water'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n // {\r\n // title: 'SIMCARD',\r\n // link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'simcard' })}`,\r\n // isActive: (queryPars.aba === 'simcard'),\r\n // visible: true,\r\n // ref: useRef(null),\r\n // },\r\n ];\r\n\r\n const energyTabs = [\r\n {\r\n title: 'Faturas',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, categoria: 'fatura' })}`,\r\n isActive: (queryPars.categoria === 'fatura'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'Medidores',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, categoria: 'medidor-de-energia' })}`,\r\n isActive: (queryPars.categoria === 'medidor-de-energia'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n const {\r\n register, setValue, handleSubmit, watch, formState: { errors },\r\n } = useForm({\r\n mode: 'all',\r\n });\r\n\r\n function onCountrySelected(item) {\r\n formData.country_item = item;\r\n const selectedCountry = formData.country_item && formData.country_item.COUNTRY_ID;\r\n if (formData.state_item && formData.state_item.COUNTRY_ID !== selectedCountry) {\r\n formData.state_item = null;\r\n formData.city_item = null;\r\n }\r\n render();\r\n }\r\n\r\n function onStatusUnitSelected(item) {\r\n if (item === t('emOperacao')) {\r\n formData.PRODUCTION = true;\r\n } else if (item === t('emInstalacao')) {\r\n formData.PRODUCTION = false;\r\n }\r\n render();\r\n }\r\n\r\n function onStateSelected(item) {\r\n formData.state_item = item;\r\n const selectedState = formData.state_item && formData.state_item.STATE_ID;\r\n if (formData.city_item && formData.city_item.STATE_ID !== selectedState) {\r\n formData.city_item = null;\r\n }\r\n render();\r\n }\r\n\r\n const filtStates = useMemo(() => {\r\n if (!formData.country_item) return states;\r\n return states.filter((state) => state.COUNTRY_ID === formData.country_item!.COUNTRY_ID);\r\n }, [formData.country_item, states]);\r\n\r\n const filtCities = useMemo(() => {\r\n if (!formData.state_item) return cities;\r\n return cities.filter((city) => city.STATE_ID === formData.state_item!.STATE_ID);\r\n }, [formData.state_item, cities]);\r\n\r\n const unitStatus = [\r\n t('emInstalacao'),\r\n t('emOperacao'),\r\n ];\r\n\r\n function clearEnergyForm(index: number) {\r\n state.energyMetersData[index].selectedMeterModel = null;\r\n state.energyMetersData[index].meterDriId = '';\r\n state.energyMetersData[index].meterSerial = '';\r\n state.energyMetersData[index].selectedCurrentCapacity = null;\r\n state.energyMetersData[index].filteredModelsList = [];\r\n render();\r\n }\r\n\r\n function onDateChange(date, dateEnd) {\r\n state.installationDate = date;\r\n render();\r\n }\r\n\r\n function setUnitStatus(status: boolean|null) {\r\n if (status === true) {\r\n return t('emOperacao');\r\n } if (status === false) {\r\n return t('emInstalacao');\r\n }\r\n return null;\r\n }\r\n\r\n return (\r\n state.editingExtras\r\n ? (\r\n setState({ editingExtras: false })}\r\n />\r\n )\r\n : (\r\n
\r\n
\r\n
\r\n \r\n {t('adicionarUnidade')}\r\n \r\n
\r\n \r\n
\r\n {tabs[0].isActive\r\n && (\r\n
\r\n
\r\n \r\n {t('localizacao')}\r\n { formData.UNIT_NAME = event.target.value; render(); }}\r\n data-test-id=\"nomeUnidade\"\r\n />\r\n {\r\n setState({ supervisors: newValues });\r\n }\r\n }\r\n data-test-id=\"selectResponsaveis\"\r\n />\r\n \r\n \r\n { formData.city_item = item; render(); }}\r\n disabled={!formData.state_item}\r\n data-test-id=\"selectCidade\"\r\n />\r\n { formData.timezone = { area: e.label, id: e.value }; render(); }}\r\n data-test-id=\"selectFuso\"\r\n />\r\n { formData.LAT = event.target.value; render(); }}\r\n data-test-id=\"latitude\"\r\n />\r\n { formData.LON = event.target.value; render(); }}\r\n data-test-id=\"longitude\"\r\n />\r\n \r\n { formData.AMOUNT_PEOPLE = event.target.value; render(); }}\r\n />\r\n \r\n {\r\n formData.CONSTRUCTED_AREA = event.target.value;\r\n render();\r\n }}\r\n suffix=\"m²\"\r\n />\r\n \r\n \r\n {t('outrosDados')}\r\n \r\n { formData.TARIFA_KWH = event.target.value; render(); }}\r\n data-test-id=\"tarifaMedia\"\r\n />\r\n \r\n\r\n
\r\n\r\n
\r\n )}\r\n {tabs[1].isActive\r\n && (\r\n
\r\n\r\n \r\n
\r\n\r\n
\r\n {\r\n energyTabs[1].isActive && (\r\n \r\n {state.energyMetersData.map((meter, index) => ) }\r\n {(state.energyMetersData.length < 4 && state.isAllEnergyMetersFromDiel) && (\r\n {\r\n if (state.energyMetersData.length < 4) {\r\n state.energyMetersData.push({\r\n selectedManufacturer: null,\r\n selectedMeterModel: null,\r\n filteredModelsList: [],\r\n meterDriId: '',\r\n meterSerial: '',\r\n selectedCurrentCapacity: null,\r\n selectedInstallationType: null,\r\n nameOfEstablishment: '',\r\n });\r\n render();\r\n }\r\n }}\r\n >\r\n Cadastrar novo medidor\r\n\r\n

\r\n )}\r\n
\r\n )\r\n }\r\n {energyTabs[0].isActive && (\r\n
\r\n \r\n \r\n \r\n Distribuidora\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n setState({ additionalDistributorInfo: item })}\r\n />\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n {ToggleIcon}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {\r\n props.rateModels ? (\r\n \r\n \r\n \r\n )\r\n : (\r\n

\r\n Nenhum modelo de tarifa criado\r\n

\r\n )\r\n }\r\n \r\n {\r\n state.isBaselineOpen = !state.isBaselineOpen;\r\n render();\r\n }}\r\n >\r\n { state.isBaselineOpen ? () : () }\r\n
\r\n Baseline\r\n \r\n {\r\n state.isBaselineOpen && (\r\n \r\n \r\n \r\n )\r\n }\r\n
\r\n )}\r\n
\r\n )}\r\n {tabs[2].isActive\r\n && (\r\n
\r\n
\r\n\r\n \r\n {t('medidorDeAgua')}\r\n \r\n\r\n \r\n\r\n {\r\n setState({ hydrometerModel: item });\r\n }}\r\n label={t('hidrometro')}\r\n placeholder={t('selecioneHidrometro')}\r\n hideSelected\r\n style={{ margin: '10px 0px', width: '260px' }}\r\n />\r\n\r\n setState({ totalCapacity: e.target.value })}\r\n />\r\n\r\n setState({ totalOfReservoirs: e.target.value })}\r\n />\r\n \r\n\r\n \r\n {t('dispositivo')}\r\n \r\n\r\n \r\n {\r\n setState({ selectedSupplier: item });\r\n }}\r\n notNull\r\n style={{ margin: '10px 0px', width: '260px' }}\r\n />\r\n {\r\n setState({ installationLocal: item });\r\n }}\r\n notNull\r\n style={{ margin: '10px 0px', width: '260px' }}\r\n disabled={!state.selectedSupplier}\r\n />\r\n setState({ otherInstallationLocal: e.target.value })}\r\n disabled={state.installationLocal !== t('outro')}\r\n />\r\n setState({ meterWaterId: e.target.value })}\r\n disabled={!state.selectedSupplier}\r\n />\r\n \r\n \r\n { state.focused = focused; render(); }}\r\n id=\"datepicker\"\r\n disabled={!state.selectedSupplier}\r\n numberOfMonths={1}\r\n isOutsideRange={() => false}\r\n\r\n />\r\n \r\n \r\n \r\n\r\n
\r\n {t('desassociarDispositivo')}\r\n\r\n
\r\n )}\r\n {/* {tabs[3].isActive\r\n && (\r\n <>\r\n {state.listSimEdit.length > 0 ? (\r\n \r\n ) : (\r\n \r\n )}\r\n {\r\n state.modalAddSimcard && (\r\n { setState({ modalAddSimcard: false, isEdit: false, editSim: null }); setFiles([]); }}\r\n edit={state.isEdit}\r\n editSim={state.editDeleteSim}\r\n state={state}\r\n setState={setState}\r\n unitId={unitInfo?.UNIT_ID}\r\n clientId={clientId}\r\n files={files}\r\n setFiles={setFiles}\r\n />\r\n )\r\n }\r\n {\r\n state.modalDesc && (\r\n setState({ modalDesc: false })} />\r\n )\r\n }\r\n {\r\n state.modalDeleteSim && (\r\n { setState({ modalDeleteSim: false, editDeleteSim: null }); setFiles([]); }} sim={state.editDeleteSim} state={state} setState={setState} />\r\n )\r\n }\r\n \r\n\r\n )} */}\r\n
\r\n {t('botaoCancelar')}\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n {\r\n if (queryPars.aba === 'energia') {\r\n handleSubmitEnergyMeterInfo();\r\n } else if (queryPars.aba === 'water') {\r\n handleSubmitWaterMeterInfo();\r\n } else if (queryPars.aba === 'simcard') {\r\n SubmitSimcards();\r\n } }}\r\n data-test-id=\"botaoSalvarUnidade\"\r\n >\r\n {t('salvarDados')}\r\n \r\n {/* @ts-ignore */}\r\n
\r\n
\r\n \r\n
\r\n )\r\n );\r\n};\r\n\r\nconst Infos = ({ label, value }) => (\r\n \r\n \r\n

{value || '-'}

\r\n
\r\n);\r\n\r\nexport function SimcardContainerList({\r\n state, setState, total, botao,\r\n}) {\r\n const newArraySort = state.listSimEdit.sort((a, b) => {\r\n if (a.ICCID > b.ICCID) {\r\n return 1;\r\n }\r\n if (a.ICCID < b.ICCID) {\r\n return -1;\r\n }\r\n // a must be equal to b\r\n return 0;\r\n });\r\n return (\r\n
\r\n {\r\n total && (\r\n
\r\n

Total Adicionado:

\r\n {state.listSimEdit.length > 1 ? ` ${state.listSimEdit.length} SIMCARDS` : ` ${state.listSimEdit.length} SIMCARD`}\r\n
\r\n )\r\n }\r\n \r\n
\r\n {\r\n newArraySort.map((sim, index) => (\r\n \r\n \r\n \r\n \r\n \r\n {sim.ICCID}\r\n \r\n {`SIMCARD ${index + 1}`}\r\n
\r\n
\r\n \r\n \r\n
setState({ modalDesc: true, itemDesc: sim })}>\r\n \r\n
\r\n
setState({ modalAddSimcard: true, isEdit: true, editDeleteSim: sim })}>\r\n \r\n
\r\n
\r\n
setState({ modalDeleteSim: true, editDeleteSim: sim })}>\r\n \r\n
\r\n
\r\n
\r\n ))\r\n }\r\n
\r\n {\r\n botao && (\r\n \r\n )\r\n }\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function NoSimcardAdd({ setState, botao, where }) {\r\n return (\r\n \r\n \r\n \r\n {t('unidadesemSimcards')}\r\n {t('Paraadicionarcliqueno')}\r\n \r\n {t('botão')}\r\n {' '}\r\n {t(where)}\r\n \r\n
\r\n {\r\n botao && (\r\n \r\n )\r\n }\r\n
\r\n );\r\n}\r\n\r\nexport function ModalDeleteSimcard({\r\n closeModal, sim, state, setState,\r\n}) {\r\n function removeFromArray() {\r\n const newArray = state.listSimEdit.filter((simCard) => simCard.ICCID !== sim.ICCID);\r\n setState({\r\n listSimEdit: [...newArray],\r\n deleteSims: [...state.deleteSims, { ICCID: sim.ICCID, OLDICCID: sim.OLDICCID }],\r\n });\r\n closeModal();\r\n }\r\n\r\n return (\r\n closeModal()} style={{ width: 355, padding: '20px 30px' }}>\r\n
\r\n \r\n Deletar SIMCARD\r\n
\r\n

\r\n Tem certeza que deseja deletar o SIMCARD\r\n
\r\n {sim.ICCID}\r\n ?\r\n

\r\n \r\n removeFromArray()}\r\n >\r\n {t('deletar')}\r\n \r\n closeModal()}>{t('botaoCancelar')}\r\n
\r\n \r\n );\r\n}\r\n\r\nexport function ModalDescSimcard({ sim, closeModal }) {\r\n return (\r\n closeModal()} style={{ width: 355, padding: '10px 30px' }}>\r\n

Visualizar SIMCARD

\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

Fotos do SIMCARD

\r\n
\r\n {\r\n sim.IMAGES.map((item) => (\r\n \r\n downloadFile(item.preview || item.url, item.name || item.filename, !!item.url)}\r\n />\r\n
\r\n ))\r\n }\r\n
\r\n\r\n closeModal()}>{t('fechar')}\r\n \r\n );\r\n}\r\n\r\nfunction downloadFile(url, fileName, baix) {\r\n if (baix) {\r\n window.open(url, '_blank');\r\n } else {\r\n fetch(url, { method: 'get', mode: 'no-cors', referrerPolicy: 'no-referrer' })\r\n .then((res) => res.blob())\r\n .then((res) => {\r\n const aElement = document.createElement('a');\r\n aElement.setAttribute('download', fileName);\r\n const href = URL.createObjectURL(res);\r\n aElement.href = href;\r\n aElement.setAttribute('target', '_blank');\r\n aElement.click();\r\n URL.revokeObjectURL(href);\r\n });\r\n }\r\n}\r\n\r\nexport function ModalAddSimcard({\r\n closeModal, edit, editSim, state, setState, unitId, clientId, files, setFiles,\r\n}) {\r\n const [stateAdd, _render, setStateAdd] = useStateVar({\r\n iccid: '',\r\n pontoAcesso: '',\r\n modem: '',\r\n macPontoAcesso: '',\r\n macRepetidor: '',\r\n dropzoneArea: false,\r\n files: [] as any[],\r\n oldFiles: [] as any[],\r\n filesEditDelete: [] as any[],\r\n });\r\n\r\n useEffect(() => {\r\n if (edit) {\r\n setStateAdd({\r\n iccid: editSim?.ICCID,\r\n pontoAcesso: editSim?.ACCESSPOINT,\r\n modem: editSim?.MODEM,\r\n macPontoAcesso: editSim?.MACACCESSPOINT,\r\n macRepetidor: editSim?.MACREPEATER,\r\n dropzoneArea: false,\r\n oldFiles: editSim?.IMAGES,\r\n });\r\n }\r\n }, []);\r\n\r\n function addInArraySimcard() {\r\n if (!edit) {\r\n if (state.listSimEdit.find((sim) => stateAdd.iccid === sim.ICCID) || !stateAdd.iccid) {\r\n toast.error('ICCID já existente na Unidade ou Vazio');\r\n return;\r\n }\r\n setState({\r\n listSimEdit: [...state.listSimEdit, {\r\n ICCID: stateAdd.iccid,\r\n OLDICCID: stateAdd.iccid,\r\n CLIENT: clientId,\r\n UNIT: unitId,\r\n ACCESSPOINT: stateAdd.pontoAcesso,\r\n MODEM: stateAdd.modem,\r\n MACACCESSPOINT: stateAdd.macPontoAcesso,\r\n MACREPEATER: stateAdd.macRepetidor,\r\n IMAGES: [...stateAdd.files, ...stateAdd.oldFiles],\r\n }],\r\n });\r\n } else {\r\n const newArray = state.listSimEdit.filter((sim) => sim.ICCID !== editSim.ICCID);\r\n setState({\r\n listSimEdit: [...newArray, {\r\n ICCID: stateAdd.iccid,\r\n OLDICCID: editSim?.ICCID,\r\n CLIENT: clientId,\r\n UNIT: unitId,\r\n ACCESSPOINT: stateAdd.pontoAcesso,\r\n MODEM: stateAdd.modem,\r\n MACACCESSPOINT: stateAdd.macPontoAcesso,\r\n MACREPEATER: stateAdd.macRepetidor,\r\n IMAGES: [...stateAdd.files, ...stateAdd.oldFiles],\r\n }],\r\n });\r\n }\r\n for (const file of stateAdd.files) {\r\n setState({\r\n listAddPhotos: [...state.listAddPhotos, { iccid: stateAdd.iccid, file }],\r\n });\r\n }\r\n setState({\r\n deleteListPhotos: [...state.deleteListPhotos, ...stateAdd.filesEditDelete],\r\n });\r\n closeModal();\r\n setFiles([]);\r\n }\r\n\r\n function deleteImageArray(image) {\r\n let array;\r\n let oldArray;\r\n if (image.url && image.name) {\r\n setStateAdd({\r\n filesEditDelete: [...stateAdd.filesEditDelete, {\r\n filename: image.name,\r\n iccid: stateAdd.iccid,\r\n }],\r\n });\r\n array = stateAdd.files.filter((item) => item.url !== image.url);\r\n oldArray = stateAdd.oldFiles.filter((item) => item.url !== image.url);\r\n } else {\r\n array = stateAdd.files.filter((item) => item.preview !== image.preview);\r\n oldArray = stateAdd.oldFiles.filter((item) => item.preview !== image.preview);\r\n }\r\n setStateAdd({\r\n files: array,\r\n oldFiles: oldArray,\r\n });\r\n }\r\n\r\n return (\r\n closeModal()} style={{ width: 400, padding: 40 }}>\r\n

{!edit ? t('adicionarSIMCARD') : t('editarSIMCARD')}

\r\n \r\n setStateAdd({ iccid: e.target.value })}\r\n />\r\n
\r\n setStateAdd({ pontoAcesso: e.target.value })}\r\n />\r\n setStateAdd({ modem: e.target.value })}\r\n />\r\n
\r\n
\r\n setStateAdd({ macPontoAcesso: e.target.value })}\r\n />\r\n setStateAdd({ macRepetidor: e.target.value })}\r\n />\r\n
\r\n
\r\n

Fotos do SIMCARD

\r\n \r\n
\r\n {\r\n ([...stateAdd.files, ...stateAdd.oldFiles] || []).map((item) => (\r\n \r\n downloadFile(item.preview || item.url, item.name || item.filename, !!item.url)}\r\n />\r\n
deleteImageArray(item)}>\r\n \r\n
\r\n
\r\n ))\r\n }\r\n
\r\n setStateAdd({ dropzoneArea: true })}\r\n >\r\n +\r\n
\r\n
\r\n {\r\n stateAdd.dropzoneArea && (\r\n { setStateAdd({ dropzoneArea: false }); setFiles([]); }} style={{ width: 400, padding: 20 }}>\r\n

\r\n Adicionar fotos: \r\n (png, jpeg, jpg)\r\n

\r\n \r\n { setStateAdd({ dropzoneArea: false }); setFiles([]); }}>{t('botaoCancelar')}\r\n \r\n
\r\n )\r\n }\r\n \r\n { closeModal(); setFiles([]); }}>{t('botaoCancelar')}\r\n \r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport { Button, Input } from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\n\r\nimport { Select } from '~/components/NewSelect';\r\nimport { apiCall } from '~/providers';\r\nimport { CustomInput, Label } from './styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { RateModels } from './Tables/TableModels';\r\n\r\ntype typeProps = {\r\n clientId: number,\r\n onCancel: () => void,\r\n itemToEdit?: null | RateModels,\r\n isEdit?: boolean,\r\n}\r\nexport const FormEditModel = ({\r\n clientId, onCancel, isEdit = false, itemToEdit,\r\n}: typeProps): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n options: {} as {\r\n rateModalities: {\r\n name: string,\r\n value: number,\r\n }[],\r\n rateGroups: {\r\n name: string,\r\n value: number,\r\n }[],\r\n rateSubGroups: {\r\n name: string,\r\n value: number,\r\n groupId: number,\r\n }[],\r\n distributors: {\r\n name: string,\r\n value: number,\r\n }[],\r\n },\r\n groupOptions: [] as string[],\r\n subGroupOptions: [] as string[],\r\n rateModalities: [] as string[],\r\n distributorOptions: [] as { name: string, value: number }[],\r\n selectedGroup: '',\r\n selectedSubgroup: '',\r\n selectedModality: '',\r\n selectedDistributor: {} as { name: string, value: number },\r\n modelName: '',\r\n });\r\n\r\n function getSubGroups(group: string): string[] {\r\n if (group === 'B') return state.subGroupOptions;\r\n return [];\r\n }\r\n\r\n async function loadConfig() {\r\n const options = await apiCall('/load-model-options', { clientId });\r\n setState({\r\n options,\r\n groupOptions: options.rateGroups.map((group) => group.name).filter((name) => name !== 'A'),\r\n subGroupOptions: options.rateSubGroups.map((group) => group.name),\r\n rateModalities: options.rateModalities.map((group) => group.name),\r\n distributorOptions: options.distributors,\r\n });\r\n }\r\n\r\n function loadEdit() {\r\n if (itemToEdit) {\r\n state.modelName = itemToEdit.modelName;\r\n state.selectedDistributor = { name: itemToEdit.distributorLabel, value: itemToEdit.distributorId };\r\n state.selectedSubgroup = itemToEdit.subGroupName;\r\n state.selectedModality = itemToEdit.rateModalityName;\r\n state.selectedGroup = itemToEdit.groupName;\r\n render();\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n loadConfig();\r\n loadEdit();\r\n }, []);\r\n\r\n async function confirm() {\r\n try {\r\n const subGroup = state.options.rateSubGroups.find((subgroup) => subgroup.name === state.selectedSubgroup);\r\n const rateModality = state.options.rateModalities.find((modality) => modality.name === state.selectedModality);\r\n\r\n if (itemToEdit) {\r\n await apiCall('/update-model-rate', {\r\n MODEL_ID: itemToEdit.modelId,\r\n MODEL_NAME: state.modelName,\r\n DISTRIBUTOR_ID: state.selectedDistributor.value,\r\n SUBGROUP_ID: subGroup?.value,\r\n RATEMODALITY_ID: rateModality?.value,\r\n });\r\n toast.success('Modelo editado');\r\n onCancel();\r\n window.location.reload();\r\n } else if (subGroup && rateModality) {\r\n await apiCall('/create-model-rate', {\r\n CLIENT_ID: clientId,\r\n MODEL_NAME: state.modelName,\r\n DISTRIBUTOR_ID: state.selectedDistributor.value,\r\n SUBGROUP_ID: subGroup.value,\r\n RATEMODALITY_ID: rateModality.value,\r\n });\r\n toast.success('Modelo criado');\r\n onCancel();\r\n window.location.reload();\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro ao criar um modelo');\r\n }\r\n state.submitting = false; render();\r\n }\r\n\r\n return (\r\n
\r\n

\r\n { itemToEdit ? 'Editar Modelo' : 'Criar novo Modelo' }\r\n

\r\n { state.modelName = event.target.value; render(); }}\r\n />\r\n
\r\n
\r\n\r\n {\r\n state.selectedGroup = value;\r\n state.subGroupOptions = getSubGroups(value);\r\n state.selectedSubgroup = '';\r\n render();\r\n }\r\n }\r\n />\r\n
\r\n\r\n
\r\n {\r\n setState({ selectedSubgroup: value });\r\n }\r\n }\r\n />\r\n
\r\n\r\n
\r\n\r\n {\r\n setState({ selectedModality: value });\r\n }\r\n }\r\n />\r\n \r\n
\r\n \r\n {\r\n setState({ selectedDistributor: state.distributorOptions.find((distributor) => distributor.value === Number(value)) });\r\n console.log(state.selectedDistributor);\r\n }}\r\n closeOnSelect={false}\r\n />\r\n
\r\n
\r\n\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n
\r\n {/* @ts-ignore */}\r\n

\r\n Cancelar\r\n

\r\n
\r\n
\r\n );\r\n};\r\n","import { useState, useMemo, useEffect } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport { Button, Input, ActionButton } from 'components';\r\nimport parseDecimalNumber from 'helpers/parseDecimalNumber';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport { SelectMultiple } from '~/components/NewSelectMultiple';\r\nimport { Select } from '~/components/NewSelect';\r\nimport { GetUsersListType } from '~/metadata/GetUsersList';\r\nimport { DeleteOutlineIcon, CloseIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport { FormEditExtras } from './UnitExtras';\r\n\r\nexport const FormEditAssociation = ({\r\n clientId, onSuccess, onCancel, associationInfo, unitsList, associationsList,\r\n}): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n selectedUnit: null as null|{ UNIT_ID: number },\r\n unitGroupsList: [] as {\r\n GROUP_ID: number;\r\n GROUP_NAME: string;\r\n DEV_AUT: string;\r\n DUT_ID: string;\r\n UNIT_ID: number;\r\n UNIT_NAME: string;\r\n CITY_NAME: string;\r\n STATE_ID: string;\r\n }[],\r\n selectedGroups: [] as {\r\n GROUP_ID: number|null;\r\n GROUP_NAME: string|null;\r\n DEV_AUT: string|null;\r\n DUT_ID: string|null;\r\n UNIT_ID: number|null;\r\n UNIT_NAME: string|null;\r\n CITY_NAME: string|null;\r\n STATE_ID: string|null;\r\n POSITION: number|null;\r\n }[],\r\n });\r\n const [formData] = useState({\r\n // @ts-ignore\r\n ASSOC_ID: (associationInfo && associationInfo.ASSOC_ID) || null,\r\n // @ts-ignore\r\n ASSOC_NAME: (associationInfo && associationInfo.ASSOC_NAME) || '',\r\n // @ts-ignore\r\n GROUPS: (associationInfo && associationInfo.GROUPS) || null,\r\n UNIT_ID: (associationInfo && associationInfo.UNIT_ID) || null,\r\n });\r\n const isEdit = !!formData.ASSOC_ID;\r\n\r\n async function getUnitGroups() {\r\n const groupsList = await apiCall('/clients/get-groups-list', { unitIds: (state.selectedUnit && [state.selectedUnit.UNIT_ID]) || undefined });\r\n state.unitGroupsList = groupsList;\r\n render();\r\n }\r\n\r\n function addGroup() {\r\n const list = state.selectedGroups;\r\n list.push({\r\n GROUP_ID: null,\r\n GROUP_NAME: null,\r\n DEV_AUT: null,\r\n DUT_ID: null,\r\n UNIT_ID: null,\r\n UNIT_NAME: null,\r\n CITY_NAME: null,\r\n STATE_ID: null,\r\n POSITION: null,\r\n });\r\n setState({ selectedGroups: list });\r\n }\r\n\r\n useEffect(() => {\r\n if (isEdit) {\r\n state.selectedGroups = [...associationInfo.GROUPS];\r\n setState({ selectedUnit: unitsList.find((unit) => unit.UNIT_ID === associationInfo.UNIT_ID) });\r\n }\r\n if (state.selectedUnit) {\r\n getUnitGroups();\r\n }\r\n }, [state.selectedUnit]);\r\n\r\n async function confirm() {\r\n let response: ({ ASSOC_ID: number} | null) = null;\r\n let action = null;\r\n try {\r\n state.submitting = true; render();\r\n const groups = state.selectedGroups.map((group) => ({ GROUP_ID: group.GROUP_ID, POSITION: group.POSITION }));\r\n groups.forEach((group) => {\r\n if (!group.GROUP_ID || !group.POSITION) {\r\n throw Error('Todas as máquinas devem estar preenchidas');\r\n }\r\n });\r\n const reqData = {\r\n ASSOC_ID: formData.ASSOC_ID || undefined,\r\n CLIENT_ID: clientId,\r\n ASSOC_NAME: formData.ASSOC_NAME || null,\r\n UNIT_ID: formData.UNIT_ID || null,\r\n GROUPS: groups,\r\n };\r\n if (isEdit) {\r\n // @ts-ignore\r\n response = await apiCall('/clients/edit-association', reqData);\r\n // @ts-ignore\r\n action = 'edit';\r\n } else {\r\n // @ts-ignore\r\n response = await apiCall('/clients/add-new-association', reqData);\r\n // @ts-ignore\r\n action = 'new';\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n state.submitting = false; render();\r\n if (response && action) onSuccess({ item: response, action });\r\n }\r\n\r\n return (\r\n \r\n \r\n

{`${isEdit ? 'Editar' : 'Adicionar'} Grupo de Máquinas`}

\r\n onCancel()}\r\n >\r\n \r\n \r\n
\r\n \r\n
\r\n

Geral

\r\n
\r\n
\r\n { formData.ASSOC_NAME = event.target.value; render(); }}\r\n />\r\n
\r\n
\r\n {\r\n formData.UNIT_ID = value.UNIT_ID;\r\n setState({ selectedUnit: value });\r\n }\r\n }\r\n />\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Adicionar Máquinas ao Grupo

\r\n \r\n Adicionar\r\n \r\n
\r\n {state.selectedGroups.map((group, index) => (\r\n \r\n {\r\n state.selectedGroups[index] = { ...value, POSITION: index + 1 };\r\n render();\r\n }\r\n }\r\n />\r\n {\r\n if (!Number.isNaN(Number(event.target.value))) {\r\n state.selectedGroups[index].POSITION = Number(event.target.value);\r\n render();\r\n }\r\n }}\r\n />\r\n { state.selectedGroups.splice(index, 1); render(); }} variant=\"red-inv\" style={{ marginLeft: '10px' }}>\r\n \r\n \r\n
\r\n ))}\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nconst FakeLink = styled.span`\r\n color: black;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n cursor: pointer;\r\n`;\r\n\r\nconst ModalContainer = styled.div`\r\n width: 100%;\r\n border-radius: 4px;\r\n`;\r\n\r\nconst ModalHeader = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n background-color: #4950CC;\r\n color: #fff;\r\n margin: 0px 0px;\r\n border-radius: 5px 5px 0px 0px;\r\n padding: 20px 20px;\r\n height: 40px;\r\n align-items: center;\r\n`;\r\n\r\nconst ModalContent = styled.div`\r\n padding: 50px;\r\n`;\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport styled from 'styled-components';\r\n\r\nimport { apiCall } from 'providers';\r\nimport { ActionButton, Loader } from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { DeleteOutlineIcon, EditIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableClasses = ({\r\n list, onDeleteClick, onEditClick, clientId,\r\n}): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const [state, setState] = useState({\r\n isLoading: true,\r\n classesUnitsList: [] as {}[][],\r\n });\r\n\r\n async function getClassesUnits() {\r\n const classesUnitsList: { UNIT_ID: string, NOME: string, SOBRENOME: string }[][] = await Promise.all(list.map(async (item) => {\r\n const { list } = await apiCall('/clients/get-class-units', { CLASS_ID: item.CLASS_ID, CLIENT_ID: clientId });\r\n return list;\r\n }));\r\n setState({ isLoading: false, classesUnitsList });\r\n }\r\n\r\n useEffect(() => {\r\n getClassesUnits();\r\n }, []);\r\n\r\n function filterClassUnits(index) {\r\n const classUnits = state.classesUnitsList[index];\r\n if (classUnits && classUnits.length > 0) {\r\n return (\r\n
\r\n {`${classUnits.length} unidades`}\r\n
\r\n );\r\n }\r\n return '0 unidades';\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n Tipo\r\n Nome do Grupo\r\n Unidades\r\n {(profile.manageAllClients)\r\n && }\r\n \r\n \r\n \r\n { list.map((item, index) => (\r\n \r\n {item.CLASS_TYPE}\r\n {item.CLASS_NAME}\r\n {filterClassUnits(index)}\r\n {(profile.manageAllClients)\r\n && (\r\n \r\n onDeleteClick(item)} variant=\"red-inv\">\r\n \r\n \r\n onEditClick(item)} variant=\"blue-inv\">\r\n \r\n \r\n \r\n )}\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nconst TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\nconst TableHead = styled.thead`\r\n`;\r\nconst TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\nconst HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\nconst DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\nconst Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\nconst HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n","import { useState } from 'react';\r\nimport styled from 'styled-components';\r\nimport { ActionButton } from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport {\r\n ArrowDownIcon, ArrowUpIcon, DeleteOutlineIcon, EditIcon, AddPlusIcon,\r\n} from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { CicleType } from '../ClientPanel';\r\n\r\nexport type RateCicleType = {\r\n CICLE_ID: number\r\n MODEL_ID: number\r\n START_CICLE_DATE : string\r\n END_CICLE_DATE: string\r\n PIS: number\r\n COFINS: number\r\n ICMS: number\r\n CONVENTIONALRATE_PARAMETERS?: {\r\n RATE: string\r\n CONVENTIONALRATE_ID: number,\r\n }\r\n WHITERATE_PARAMETERS?: {\r\n WHITERATE_ID: number,\r\n RATE_PONTA: string,\r\n RATE_OUTPONTA: string,\r\n START_PONTA: string,\r\n END_PONTA: string,\r\n FIRST_MID_RATE: string,\r\n START_FIRST_MID_RATE: string,\r\n END_FIRST_MID_RATE: string,\r\n LAST_MID_RATE?: string,\r\n START_LAST_MID_RATE: string,\r\n END_LAST_MID_RATE: string,\r\n },\r\n}\r\n\r\nexport type RateModels = {\r\n hide: boolean,\r\n modelName: string,\r\n modelId: number,\r\n distributorId: number,\r\n subGroupId: number,\r\n subGroupName: string,\r\n rateGroupId: number,\r\n groupName: string,\r\n rateModalityId: number,\r\n rateModalityName: string,\r\n distributorTag: string,\r\n distributorLabel: string,\r\n rateCicles: RateCicleType[]\r\n}\r\n\r\ntype ModelProps = {\r\n rateModels: RateModels[],\r\n onDeleteModelClick: (item: { MODEL_ID: number, MODEL_NAME: string }) => Promise,\r\n onDeleteCicleClick: (item: { CICLE_ID: number, CICLE_NAME: string }) => Promise,\r\n onEditClick: () => void,\r\n clientId: number,\r\n openEditCicle: (ModelRate: CicleType, itemToEdit?: RateCicleType) => void,\r\n openCreateEditModel: (itemToEdit?) => void,\r\n}\r\n\r\nexport const TableModels = ({\r\n rateModels,\r\n onDeleteModelClick,\r\n onDeleteCicleClick,\r\n openEditCicle,\r\n openCreateEditModel,\r\n}: ModelProps): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const [, render] = useStateVar({\r\n isLoading: true,\r\n classesUnitsList: [] as {}[][],\r\n models: [],\r\n });\r\n\r\n function onClickHide(item) {\r\n rateModels.forEach((model) => {\r\n if (model.modelId === item.modelId) {\r\n model.hide = !model.hide;\r\n }\r\n render();\r\n });\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n Modelo\r\n Vigência\r\n Modalidade\r\n Subgrupo\r\n Distribuidora\r\n {(profile.manageAllClients)\r\n && }\r\n \r\n \r\n \r\n { rateModels && rateModels.map((item) => (\r\n <>\r\n \r\n \r\n
onClickHide(item)}>\r\n { item.hide ? : }\r\n
\r\n
\r\n {item.modelName}\r\n \r\n {item.rateModalityName}\r\n {item.subGroupName}\r\n {item.distributorLabel}\r\n {(profile.manageAllClients)\r\n && (\r\n \r\n onDeleteModelClick({ MODEL_ID: item.modelId, MODEL_NAME: item.modelName })} variant=\"red-inv\">\r\n \r\n \r\n openCreateEditModel(item)} variant=\"blue-inv\">\r\n \r\n \r\n \r\n )}\r\n
\r\n\r\n { item.hide && item.rateCicles?.length > 0 ? item.rateCicles.map((cicle, key) => (\r\n \r\n \r\n \r\n { key === 0 ? (\r\n
openEditCicle({\r\n modelId: item.modelId, groupName: item.groupName, subGroupName: item.subGroupName, rateModalityName: item.rateModalityName,\r\n })}\r\n >\r\n \r\n
\r\n ) :
}\r\n

\r\n {`Ciclo ${key + 1}`}\r\n

\r\n \r\n \r\n { `${cicle.START_CICLE_DATE} - ${cicle.END_CICLE_DATE ? cicle.END_CICLE_DATE : ''}` }\r\n \r\n \r\n \r\n \r\n {(profile.manageAllClients)\r\n && (\r\n \r\n onDeleteCicleClick({ CICLE_ID: cicle.CICLE_ID, CICLE_NAME: `Ciclo ${key + 1}` })} variant=\"red-inv\">\r\n \r\n \r\n openEditCicle({\r\n modelId: item.modelId, groupName: item.groupName, subGroupName: item.subGroupName, rateModalityName: item.rateModalityName,\r\n }, cicle)}\r\n >\r\n \r\n \r\n \r\n )}\r\n \r\n )) : item.hide && (\r\n \r\n \r\n \r\n
openEditCicle({\r\n modelId: item.modelId, groupName: item.groupName, subGroupName: item.subGroupName, rateModalityName: item.rateModalityName,\r\n })}\r\n >\r\n \r\n
\r\n

\r\n Criar novo ciclo\r\n

\r\n
\r\n \r\n \r\n \r\n \r\n {(profile.manageAllClients) && item.hide && item.rateCicles?.length > 0\r\n ? (\r\n \r\n {}} variant=\"red-inv\">\r\n \r\n \r\n {}} variant=\"blue-inv\">\r\n \r\n \r\n \r\n ) : ()}\r\n
\r\n ) }\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nconst TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\nconst TableHead = styled.thead`\r\n`;\r\nconst TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\nconst HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\nconst DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\nconst Row = styled.tr`\r\n height: 40px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\nconst HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\nexport const TableHead = styled.thead`\r\n`;\r\nexport const TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\nexport const HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\nexport const DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\nexport const Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\nexport const HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n\r\nexport const ChevronTop = styled.span`\r\n border-style: solid;\r\n border-width: 0.25em 0.25em 0 0;\r\n content: '';\r\n display: inline-block;\r\n height: 0.45em;\r\n left: 0.15em;\r\n position: relative;\r\n top: 0.15em;\r\n transform: rotate(-45deg);\r\n vertical-align: top;\r\n width: 0.45em;\r\n margin-left: 10px;\r\n margin-top: 3px;\r\n`;\r\n\r\nexport const ChevronBottom = styled.span`\r\n border-style: solid;\r\n border-width: 0.25em 0.25em 0 0;\r\n content: '';\r\n display: inline-block;\r\n height: 0.45em;\r\n left: 0.15em;\r\n position: relative;\r\n top: 0;\r\n transform: rotate(135deg);\r\n vertical-align: top;\r\n width: 0.45em;\r\n margin-left: 10px;\r\n margin-top: 3px;\r\n`;\r\n","import { useState, useEffect, useMemo } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { InputSearch } from '../../../components/InputSearch';\r\nimport {\r\n TableContainer,\r\n ChevronBottom,\r\n ChevronTop,\r\n HeaderRow,\r\n HeaderCell,\r\n Row,\r\n DataCell,\r\n TableBody,\r\n TableHead,\r\n} from './styles';\r\nimport {\r\n ActionButton,\r\n Button,\r\n Checkbox,\r\n ModalWindow,\r\n Loader,\r\n} from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { DeleteOutlineIcon, EditIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { SearchInput, Label } from '~/pages/Analysis/styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { dynamicSort, Pagination } from '~/components/NewTable';\r\nimport { apiCall } from '~/providers';\r\nimport { toast } from 'react-toastify';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { getObjects } from '~/helpers/getObjetcs';\r\nimport { useParams } from 'react-router-dom';\r\nimport { SimpleButton } from '~/pages/Admin/AdmCities/styles';\r\n\r\nexport const TableDuts = ({\r\n list,\r\n vavsList,\r\n onEditClick,\r\n onDeleteClick,\r\n roomTypes,\r\n render,\r\n pageSize,\r\n setIsLoad,\r\n}): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const [state, _renderVar, setState] = useStateVar(() => {\r\n const state = {\r\n selectOption: '' as any,\r\n searchText: '',\r\n currentPage: 1,\r\n sortOrder: '+',\r\n orderColum: '',\r\n isLoading: false,\r\n numSelect: 0,\r\n selectedRType: undefined,\r\n };\r\n return state;\r\n });\r\n const [filteredRows, setFilteredRows] = useState(list.concat(vavsList));\r\n const [listEnvironments, setEnvironments] = useState<{ DEV_ID: string, ENV_ID: number }[]>([]);\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ clientId: string }>();\r\n function getPages() {\r\n return filteredRows.map((item, index) => ({ ...item, key: `${index} ${item.DEV_ID} ${item.ENVIRONMENT_ID}` })).slice((state.currentPage - 1) * pageSize, state.currentPage * pageSize);\r\n }\r\n\r\n async function verifyRoute(arrayPromisse, clientId, type) {\r\n if (state.selectOption === 'deleteEnvironments') {\r\n await Promise.all(\r\n arrayPromisse.map((arr) => apiCall('/dut/delete-environments', { DEVS_INFO: arr, CLIENT_ID: clientId })),\r\n ).then(() => {\r\n toast.success(t('ambientesDeletadosComSucesso'));\r\n toast.info(t('dutsNaoForamDeletados'));\r\n setEnvironments([]);\r\n setState({ selectOption: '', selectedRType: undefined });\r\n render();\r\n }).catch((err) => {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n setState({ selectOption: '' });\r\n });\r\n } else {\r\n await Promise.all(\r\n arrayPromisse.map((arr) => apiCall('/dut/set-dut-rtype-v2', { DEVS_INFO: arr, CLIENT_ID: clientId, RTYPE_ID: type === 'clear' ? null : state.selectedRType })),\r\n ).then(() => {\r\n toast.success(t('tipoAmbientesAlteradoSucesso'));\r\n toast.info(t('ambientesSemNomeDefinidoNaoForamAlterados'));\r\n setEnvironments([]);\r\n setState({ selectOption: '', selectedRType: undefined });\r\n render();\r\n }).catch((err) => {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n setState({ selectOption: '' });\r\n });\r\n }\r\n }\r\n\r\n async function updateOrDelete(type) {\r\n if (listEnvironments.length > 0) {\r\n if (state.selectOption !== 'deleteEnvironments' && type !== 'clear' && !state.selectedRType) {\r\n toast.error(t('selecioneOTipoDeAmbiente'));\r\n return;\r\n }\r\n const arrayPromisse: { DEV_ID: string, ENV_ID: number }[][] = [];\r\n const clientId = (routeParams.clientId && Number(routeParams.clientId)) || null;\r\n for (let i = 0; i < listEnvironments.length; i += 100) {\r\n arrayPromisse.push(listEnvironments.slice(i, i + 100));\r\n }\r\n await verifyRoute(arrayPromisse, clientId, type);\r\n setState({ isLoading: true });\r\n } else {\r\n toast.error(t('deveSelecionarPeloMenos1Ambiente'));\r\n setState({ selectOption: '', selectedRType: undefined });\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n const getDataPerPage = useMemo(() => getPages(), [filteredRows, state.currentPage, pageSize]);\r\n useEffect(() => {\r\n setFilteredRows(list.concat(vavsList));\r\n setState({ currentPage: 1 });\r\n }, [list, vavsList]);\r\n\r\n useEffect(() => {\r\n setState({ numSelect: listEnvironments.length });\r\n }, [listEnvironments]);\r\n\r\n const onSearch = (e) => {\r\n setState({ searchText: e.target.value });\r\n\r\n if (e.target.value) {\r\n setFilteredRows(list.concat(vavsList).filter((row) => getObjects(row, e.target.value).length));\r\n } else {\r\n setFilteredRows(list.concat(vavsList));\r\n }\r\n\r\n setState({ orderColum: 'name' });\r\n setState({ sortOrder: '+' });\r\n setState({ currentPage: 1 });\r\n };\r\n\r\n const columnsEnvironment = [\r\n {\r\n label: t('nome'),\r\n value: 'name',\r\n accessor: 'ROOM_NAME',\r\n },\r\n {\r\n label: t('tipo'),\r\n value: 'type',\r\n accessor: 'RTYPE_NAME',\r\n },\r\n {\r\n label: t('unidade'),\r\n value: 'unit',\r\n accessor: 'UNIT_NAME',\r\n },\r\n {\r\n label: t('pais'),\r\n value: 'country',\r\n accessor: 'COUNTRY_NAME',\r\n },\r\n {\r\n label: t('estado'),\r\n value: 'state',\r\n accessor: 'STATE_ID',\r\n },\r\n {\r\n label: t('cidade'),\r\n value: 'city',\r\n accessor: 'CITY_NAME',\r\n },\r\n ];\r\n\r\n const handleSetOrderColumn = (column) => {\r\n let newSortOrder = '+';\r\n if (state.orderColum === column.value && state.sortOrder === '+') {\r\n newSortOrder = '-';\r\n }\r\n let sortedRows;\r\n if (state.orderColum === column.value && state.sortOrder === newSortOrder) {\r\n setState({ orderColum: '' });\r\n setState({ sortOrder: '' });\r\n } else {\r\n sortedRows = [...filteredRows].sort(dynamicSort(column, newSortOrder));\r\n setState({ orderColum: column.value });\r\n setState({ sortOrder: newSortOrder });\r\n }\r\n\r\n if (state.currentPage !== 1) {\r\n setState({ currentPage: 1 });\r\n }\r\n\r\n setFilteredRows(sortedRows);\r\n };\r\n\r\n const chevron = () => {\r\n if (state.sortOrder === '+') {\r\n return ;\r\n }\r\n return ;\r\n };\r\n\r\n function checkItem(item) {\r\n const newItem = item.DEV_ID !== '-' ? 'DEV_ID' : 'ENV_ID';\r\n const value = newItem === 'ENV_ID' ? item.ENVIRONMENT_ID : item.DEV_ID;\r\n if (listEnvironments.some((dut) => dut[newItem] === value)) {\r\n setEnvironments(listEnvironments.filter((dev) => dev[newItem] !== value));\r\n item.checked = false;\r\n } else {\r\n item.checked = true;\r\n setEnvironments([...listEnvironments, {\r\n DEV_ID: item.DEV_ID,\r\n ENV_ID: item.ENVIRONMENT_ID,\r\n }]);\r\n }\r\n }\r\n function checkAllItems() {\r\n setFilteredRows(filteredRows.map((item) => ({ ...item, checked: true })));\r\n const notIncludes = filteredRows.filter((item) => {\r\n const key = item.DEV_ID !== '-' ? 'DEV_ID' : 'ENV_ID';\r\n const value = key === 'ENV_ID' ? item.ENVIRONMENT_ID : item.DEV_ID;\r\n return !listEnvironments.some((dut) => dut[key] === value);\r\n });\r\n setEnvironments([...listEnvironments, ...notIncludes.map((item) => ({\r\n DEV_ID: item.DEV_ID,\r\n ENV_ID: item.ENVIRONMENT_ID,\r\n }))]);\r\n }\r\n\r\n function notCheckAllItems() {\r\n setFilteredRows(filteredRows.map((item) => ({ ...item, checked: false })));\r\n const includes = listEnvironments.filter((item) => {\r\n const key = item.DEV_ID !== '-' ? 'DEV_ID' : 'ENVIRONMENT_ID';\r\n const value = key === 'ENVIRONMENT_ID' ? item.ENV_ID : item.DEV_ID;\r\n return !filteredRows.some((filterItem) => filterItem[key] === value);\r\n });\r\n setEnvironments([...includes]);\r\n }\r\n\r\n const onPreviousPage = () => {\r\n if (state.currentPage > 1) {\r\n setState({ currentPage: state.currentPage - 1 });\r\n }\r\n };\r\n\r\n const onNextPage = () => {\r\n if (state.currentPage * pageSize < filteredRows.length) {\r\n setState({ currentPage: state.currentPage + 1 });\r\n }\r\n };\r\n\r\n function isChecked() {\r\n return !filteredRows.some((item) => {\r\n const key = item.DEV_ID !== '-' ? 'DEV_ID' : 'ENV_ID';\r\n const value = key === 'ENV_ID' ? item.ENVIRONMENT_ID : item.DEV_ID;\r\n return !listEnvironments.some((dev) => dev[key] === value);\r\n });\r\n }\r\n\r\n function isCheckedItem(item) {\r\n const key = item.DEV_ID !== '-' ? 'DEV_ID' : 'ENV_ID';\r\n const value = key === 'ENV_ID' ? item.ENVIRONMENT_ID : item.DEV_ID;\r\n return listEnvironments.some((dev) => dev[key] === value);\r\n }\r\n\r\n if (state.isLoading) {\r\n return ;\r\n }\r\n\r\n return (\r\n <>\r\n {(profile.manageAllClients) && (\r\n \r\n
\r\n { setState({ selectOption: 'deleteEnvironments' }); }}>Excluir Ambientes\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {\r\n profile.manageAllClients && (\r\n \r\n \r\n \r\n { setState({ selectOption: value }); }}\r\n />\r\n
\r\n \r\n )\r\n }\r\n
\r\n
\r\n \r\n \r\n \r\n {profile.manageAllClients && (\r\n \r\n {\r\n !isChecked() ? checkAllItems() : notCheckAllItems();\r\n }}\r\n />\r\n \r\n )}\r\n {\r\n columnsEnvironment.map((column) => (\r\n handleSetOrderColumn(column)}>\r\n {column.label}\r\n {' '}\r\n {state.orderColum === column.value ? chevron() : ''}\r\n \r\n ))\r\n }\r\n {(profile.manageAllClients)\r\n && }\r\n \r\n \r\n \r\n {getDataPerPage.map((item) => (\r\n \r\n {profile.manageAllClients && (\r\n \r\n {\r\n checkItem(item);\r\n }}\r\n />\r\n \r\n )}\r\n {item.ROOM_NAME || item.DEV_ID || '-'}\r\n {item.RTYPE_NAME || '-'}\r\n {item.UNIT_NAME || '-'}\r\n {item.COUNTRY_NAME || '-'}\r\n {item.STATE_ID || '-'}\r\n {item.CITY_NAME || '-'}\r\n {(profile.manageAllClients)\r\n && (\r\n \r\n {item.ENVIRONMENT_ID ? (\r\n { setIsLoad(true); onDeleteClick(item); checkItem(item); setIsLoad(false); }} variant=\"red-inv\">\r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n )}\r\n onEditClick(item.unit, item)} variant=\"blue-inv\">\r\n \r\n \r\n \r\n )}\r\n \r\n ))}\r\n \r\n \r\n \r\n {\r\n ((state.selectOption === 'setEnvironmentType') || (state.selectOption === 'deleteEnvironments')) && (\r\n \r\n )\r\n }\r\n \r\n );\r\n};\r\n\r\nfunction ModalEnvironment({\r\n state,\r\n setState,\r\n roomTypes,\r\n listEnvironments,\r\n setEnvironments,\r\n render,\r\n t,\r\n updateOrDelete,\r\n selectedRType,\r\n}) {\r\n const [isLoading, setsIsLoading] = useState(false);\r\n const title = state.selectOption === 'deleteEnvironments' ? t('deletarAmbientes') : t('definirTipoAmbiente');\r\n const send = state.selectOption === 'deleteEnvironments' ? t('deletar') : t('aplicar');\r\n return (\r\n \r\n

\r\n {title}\r\n

\r\n
\r\n {\r\n state.selectOption !== 'deleteEnvironments' && (\r\n <>\r\n \r\n
\r\n \r\n { setState({ selectedRType: value }); render(); }}\r\n />\r\n
\r\n
\r\n {\r\n if (window.confirm(t('confirmaExcluirTipoAmbiente'))) {\r\n setsIsLoading(true);\r\n setState({ selectedRType: null });\r\n updateOrDelete('clear');\r\n setsIsLoading(false);\r\n }\r\n }}\r\n >\r\n {t('limparAmbientes')}\r\n

\r\n \r\n )\r\n }\r\n {\r\n (state.selectOption === 'deleteEnvironments') && (\r\n \r\n {t('voceTemCertezaDeletarAmbientes')}\r\n

\r\n )\r\n }\r\n \r\n setState({ selectOption: '' })}\r\n >\r\n {t('cancelar')}\r\n

\r\n
\r\n
\r\n );\r\n}\r\n","import { useState } from 'react';\r\n\r\nimport styled from 'styled-components';\r\n\r\nimport { Checkbox } from '~/components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableFreeDevices = ({ freeDevs, selectionChanged }): JSX.Element => {\r\n const [, stateChanged] = useState({});\r\n return (\r\n \r\n \r\n \r\n Tipo\r\n ID\r\n Conexão\r\n Seleção\r\n \r\n \r\n \r\n {(freeDevs.map((devInfo) => (\r\n \r\n {devInfo.type}\r\n {devInfo.DEV_ID}\r\n {devInfo.status}\r\n \r\n {['DAC', 'DUT'].includes(devInfo.type)\r\n && (\r\n { devInfo.freeDevChecked = !devInfo.freeDevChecked; stateChanged({}); selectionChanged(); }}\r\n />\r\n )}\r\n \r\n \r\n )))}\r\n \r\n \r\n );\r\n};\r\n\r\nconst TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\nconst TableHead = styled.thead`\r\n`;\r\nconst TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\nconst HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\nconst DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\nconst Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\nconst HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n","import { useState } from 'react';\r\n\r\nimport styled from 'styled-components';\r\n\r\nimport { ActionButton } from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { DeleteOutlineIcon, EditIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableRoomTypes = ({ roomTypes, onDeleteClick, onEditClick }): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n return (\r\n \r\n \r\n \r\n Nome\r\n T-min\r\n T-max\r\n Horário\r\n CO2-max\r\n Umi-min\r\n Umi-max\r\n Dispositivos\r\n {(profile.manageAllClients)\r\n && }\r\n \r\n \r\n \r\n {roomTypes.map((item) => (\r\n \r\n {item.RTYPE_NAME}\r\n {item.TUSEMIN == null ? '-' : `${item.TUSEMIN} °C`}\r\n {item.TUSEMAX == null ? '-' : `${item.TUSEMAX} °C`}\r\n {item.schedCol || '-'}\r\n {item.CO2MAX == null ? '-' : `${item.CO2MAX} ppm`}\r\n {item.HUMIMIN == null ? '-' : `${item.HUMIMIN}%`}\r\n {item.HUMIMAX == null ? '-' : `${item.HUMIMAX}%`}\r\n {item.DUTS_COUNT + item.DRIS_COUNT}\r\n {(profile.manageAllClients)\r\n && (\r\n \r\n onDeleteClick(item)} variant=\"red-inv\">\r\n \r\n \r\n onEditClick(item)} variant=\"blue-inv\">\r\n \r\n \r\n \r\n )}\r\n \r\n ))}\r\n \r\n \r\n );\r\n};\r\n\r\nconst TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\nconst TableHead = styled.thead`\r\n`;\r\nconst TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\nconst HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\nconst DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\nconst Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\nconst HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const StyledSpan = styled.span`\r\nfont-size: 1em;\r\nfont-weight: bold;\r\ncolor: ${colors.Grey400};\r\n`;\r\n\r\nexport const MachineHeaderContainer = styled.div`\r\n display: flex;\r\n flex: 1;\r\n align-items: flex-start;\r\n\r\n .input-container {\r\n display: flex;\r\n flex: 1;\r\n justify-content: flex-end;\r\n\r\n > div {\r\n height: 50px;\r\n min-width: 250px;\r\n }\r\n\r\n > div + div {\r\n margin-left: 32px;\r\n height: 50px;\r\n }\r\n }\r\n`;\r\n\r\nexport const ViewModeButton = styled.button<{ isActive: boolean }>`\r\n cursor: pointer;\r\n width: 80px;\r\n height: 26px;\r\n background-color: #ffffff;\r\n\r\n border: ${(props) => (props.isActive ? '2px solid #363bc4' : 0)};\r\n border-radius: 5px;\r\n\r\n font-size: 11px;\r\n font-weight: 600;\r\n color: ${(props) => (props.isActive ? '#363BC4' : '#7A7A7A')};\r\n\r\n > span {\r\n margin-right: 2px;\r\n }\r\n\r\n & + & {\r\n margin-left: 10px;\r\n }\r\n\r\n transition: filter 0.3s;\r\n\r\n &:hover {\r\n filter: brightness(0.9);\r\n }\r\n`;\r\n\r\nexport const MosaicMachineList = styled.div`\r\n display: flex;\r\n flex-flow: wrap;\r\n gap: 16px;\r\n\r\n max-height: 634px;\r\n width: 100%;\r\n margin-bottom: 20px;\r\n padding: 30px;\r\n border: 1px solid #d7d7d7;\r\n border-radius: 8px;\r\n\r\n overflow-y: scroll;\r\n`;\r\n\r\nexport const TableList = styled.div`\r\n margin: 20px 0 20px 0;\r\n`;\r\n\r\nexport const TooltipContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n\r\n > span {\r\n font-size: 9px;\r\n line-height: 11px;\r\n color: #656565;\r\n }\r\n\r\n > strong {\r\n font-size: 10px;\r\n line-height: 12px;\r\n }\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\n min-height: 48px;\r\n max-width: 250px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #818181;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const Link = styled.div`\r\n font-size: 11px;\r\n line-height: 13px;\r\n color: #363BC4;\r\n text-decoration: underline;\r\n\r\n margin-top: 6px;\r\n\r\n cursor: pointer;\r\n`;\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\nimport { healthLevelColor } from '~/components/HealthIcon';\r\n\r\nconst getStatusColor = (isPrimary: boolean, status: number) => {\r\n if (isPrimary) {\r\n if (status === 1) {\r\n return { background: '#363BC4', border: '#363BC4', font: '#FFFFFF' };\r\n }\r\n\r\n return { background: '#B8B8B8', border: '#B8B8B8', font: '#FFFFFF' };\r\n }\r\n\r\n if (status === 1) {\r\n return { background: '#FFFFFF', border: '#3DD598', font: '#3DD598' };\r\n }\r\n\r\n return { background: '#FFFFFF', border: '#FF5454', font: '#FF5454' };\r\n};\r\n\r\nexport const TableExpandButton = styled.button`\r\n width: 25px;\r\n height: 25px;\r\n\r\n background-color: #ffffff;\r\n border: 0.8px solid rgba(71, 71, 71, 0.31);\r\n border-radius: 8px;\r\n\r\n cursor: pointer;\r\n`;\r\n\r\nexport const Icon = styled.div<{ health: number }>`\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n width: 19px;\r\n height: 19px;\r\n border-radius: 5px;\r\n background-color: ${({ health }) => healthLevelColor(health)};\r\n\r\n > svg {\r\n width: 11px;\r\n height: 11px;\r\n }\r\n`;\r\n\r\nexport const StatusBox = styled.div<{ isPrimary: boolean, status: number, dat?: boolean }>`\r\n width: 40px;\r\n height: 13px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n\r\n border: 1px solid ${({ isPrimary, status, dat }) => (dat ? '#B8B8B8' : getStatusColor(isPrimary, status).border)};\r\n background-color: ${({ isPrimary, status, dat }) => (dat ? '#FFFFFF' : getStatusColor(isPrimary, status).background)};\r\n border-radius: 4px;\r\n\r\n color: ${({ isPrimary, status, dat }) => (dat ? '#B8B8B8' : getStatusColor(isPrimary, status).font)};\r\n font-weight: bold;\r\n font-size: 6px;\r\n line-height: 7px;\r\n text-transform: uppercase;\r\n\r\n & + & {\r\n margin-left: 6px;\r\n }\r\n`;\r\n\r\nexport const TransparentLink = styled(Link)`\r\n color: inherit;\r\n text-decoration: inherit;\r\n &:hover {\r\n color: inherit;\r\n text-decoration: inherit;\r\n }\r\n`;\r\n\r\nexport const TableItemCell = styled.div`\r\n font-size: 12.6px;\r\n`;\r\n","import { useEffect, useState } from 'react';\r\nimport { ApiResps, apiCall } from '../../../providers';\r\nimport {\r\n ActionButton,\r\n Loader,\r\n NewTable,\r\n} from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { DeleteOutlineIcon, EditIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { FaTools } from 'react-icons/fa';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { TooltipContainer } from '~/pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/styles';\r\nimport { TableItemCell } from '~/pages/Analysis/Units/UnitDetail/UnitDetailDACsDAMs/components/MachineTable/styles';\r\nimport { GetUsersListType } from '~/metadata/GetUsersList';\r\nimport { useParams } from 'react-router-dom';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const TableUnits = ({\r\n list, energyMeters, unitsDisp, unitsDispLoading, onDeleteClick, onEditClick, onToggleReportClick, waterList, renderUnits,\r\n}): JSX.Element => {\r\n const { clientId } = useParams<{ clientId: string }>();\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n const [usersList, setUsersList] = useState([]);\r\n const [listChecked, setListChecked] = useState(list.map((item) => ({ ...item, checked: false })));\r\n const [state, setState] = useState({\r\n isLoading: true,\r\n unitsSupervisorsList: [] as { UNIT_ID: number, NOME: string, SOBRENOME: string }[],\r\n });\r\n\r\n async function getClientUsers(unitId?: number) {\r\n const response = await apiCall('/users/list-users', { CLIENT_ID: Number(clientId), includeAdmins: false });\r\n setUsersList(response.list);\r\n }\r\n\r\n async function getUnitsSupervisors() {\r\n const data = await apiCall('/clients/get-unit-supervisors', { UNIT_IDS: list.map((unit) => unit.UNIT_ID) });\r\n const unitsSupervisorsList = data.list;\r\n setState({ isLoading: false, unitsSupervisorsList });\r\n }\r\n\r\n useEffect(() => {\r\n getUnitsSupervisors();\r\n getClientUsers();\r\n setListChecked(list.map((item) => ({ ...item, checked: false })));\r\n }, [list]);\r\n\r\n const columns = [\r\n {\r\n name: 'id',\r\n value: 'ID',\r\n accessor: 'UNIT_ID',\r\n width: 47,\r\n },\r\n {\r\n name: 'name',\r\n value: t('nome'),\r\n accessor: 'UNIT_NAME',\r\n },\r\n profile.manageAllClients && {\r\n name: 'status',\r\n value: t('status'),\r\n acessor: 'PRODUCTION',\r\n render: (props) => (\r\n props.PRODUCTION === 0 ? (\r\n <>\r\n \r\n \r\n Em instalação\r\n \r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n
\r\n )\r\n ),\r\n },\r\n {\r\n name: 'country',\r\n value: t('pais'),\r\n accessor: 'COUNTRY_NAME',\r\n },\r\n {\r\n name: 'state',\r\n value: t('estado'),\r\n accessor: 'STATE_ID',\r\n },\r\n {\r\n name: 'city',\r\n value: t('cidade'),\r\n accessor: 'CITY_NAME',\r\n },\r\n {\r\n name: 'latlon',\r\n value: 'LAT e LONG',\r\n accessor: 'LATLON',\r\n width: 160,\r\n render: (props) => (\r\n
\r\n {`${props.LATLON}`}\r\n \r\n
\r\n

{`LAT: ${props.LAT}`}

\r\n

{`LON: ${props.LON}`}

\r\n
\r\n \r\n
\r\n ),\r\n },\r\n {\r\n name: 'devices',\r\n value: t('dispositivos'),\r\n accessor: 'DEVICES',\r\n },\r\n {\r\n name: 'disp',\r\n value: t('disponibilidadeUltimos7Dias'),\r\n accessor: 'AVAILABILITY_LAST_7_DAYS',\r\n },\r\n {\r\n name: 'resp',\r\n value: t('responsaveis'),\r\n accessor: 'RESPONSIBLE',\r\n },\r\n profile.manageAllClients && {\r\n name: 'relatorio',\r\n value: t('relatorio'),\r\n accessor: 'REPORT',\r\n render: (props) => (\r\n
onToggleReportClick(props)} style={{ cursor: 'pointer' }}>{props.submitting ? '...' : (props.DISABREP ? '(desativado)' : '(ativado)')}
\r\n ),\r\n },\r\n {\r\n name: 'distributor',\r\n value: t('distribuidora'),\r\n accessor: 'DISTRIBUTOR_LABEL',\r\n },\r\n {\r\n name: 'Modelo',\r\n value: 'Modelo de tarifa',\r\n accessor: 'MODEL_NAME',\r\n },\r\n {\r\n name: 'energyMeter',\r\n value: t('medidorEnergia'),\r\n accessor: 'METER_ENEGY_DEVICE',\r\n render: (props) => (\r\n
\r\n {props.ENERGY_METER.length !== 0 ? (\r\n
\r\n {props.ENERGY_METER.map((meter, index) => (\r\n <>\r\n {index === 0 && {meter.MANUFACTURER}}\r\n {meter.MANUFACTURER === 'Diel Energia' && (\r\n {meter.ENERGY_DEVICE_ID}\r\n )}\r\n {meter.SERIAL}\r\n \r\n ))}\r\n
\r\n ) : ('-')}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'waterMeter',\r\n value: t('medidorDeAgua'),\r\n accessor: 'METER_WATER_INTEGR',\r\n render: (props) => (\r\n
\r\n {props.WATER_METER ? (\r\n
\r\n {props.WATER_METER.supplier === 'Diel' ? 'Diel Energia' : props.WATER_METER.supplier}\r\n {props.WATER_METER.integrId}\r\n
\r\n ) : ('-')}\r\n
\r\n ),\r\n },\r\n profile.manageAllClients && {\r\n name: 'actions',\r\n value: t('acoes'),\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n
\r\n onDeleteClick(props)} variant=\"red-inv\">\r\n \r\n \r\n onEditClick(\r\n props,\r\n )}\r\n variant=\"blue-inv\"\r\n >\r\n \r\n \r\n
\r\n ),\r\n },\r\n ].filter((x) => !!x);\r\n\r\n function filterUnitSupervisors(unitId) {\r\n const unitSupervisors = state.unitsSupervisorsList.filter((unit) => unit.UNIT_ID === unitId);\r\n if (unitSupervisors && unitSupervisors.length > 0) {\r\n return (\r\n
\r\n {unitSupervisors.map((supervisor) => (\r\n
\r\n {`${supervisor.NOME} ${supervisor.SOBRENOME}`}\r\n
\r\n ))}\r\n
\r\n );\r\n }\r\n return '-';\r\n }\r\n\r\n if (state.isLoading) {\r\n return ;\r\n }\r\n return (\r\n <>\r\n {listChecked.map((item) => {\r\n item.ENERGY_METER = energyMeters.filter((meter) => meter.UNIT_ID === item.UNIT_ID);\r\n item.WATER_METER = waterList.find((water) => water.UNIT_ID === item.UNIT_ID);\r\n item.DEVICES = (item.DACS_COUNT + item.DUTS_COUNT || 0 + item.DAMS_COUNT + item.DRIS_COUNT) || '-';\r\n item.AVAILABILITY_LAST_7_DAYS = unitsDispLoading ? () : (unitsDisp[item.UNIT_ID]?.avgDisp != null ? `${formatNumberWithFractionDigits(unitsDisp[item.UNIT_ID]?.avgDisp.toFixed(1))}%` : '(sem cálculo)');\r\n item.RESPONSIBLE = state.isLoading ? () : filterUnitSupervisors(item.UNIT_ID);\r\n item.REPORT = item.submitting ? '...' : (item.DISABREP ? '(desativado)' : '(ativado)');\r\n item.METER_ENEGY_DEVICE = item.ENERGY_METER.map((x) => x.ENERGY_DEVICE_ID).join(';') || '-';\r\n item.METER_WATER_INTEGR = (item.WATER_METER && item.WATER_METER.integrId) || '-';\r\n })}\r\n\r\n { state.isLoading = true; renderUnits(); }}\r\n keySearch=\"searchUnits\"\r\n />\r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\nimport { CalendarIcon, ExportWorksheetIcon } from '~/icons';\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder}\r\n`;\r\n\r\nexport const ModalContainer = styled.div`\r\n width: 100%;\r\n border-radius: 4px;\r\n`;\r\n\r\nexport const FakeLink = styled.span`\r\n color: black;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const Form = styled.form`\r\n display: flex;\r\n width: '100%';\r\n flex-direction: column;\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n margin-top: 15px;\r\n margin-right: 15px;\r\n cursor: pointer;\r\n position: relative;\r\n top: -10px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const Content = styled.div`\r\n position: relative;\r\n margin: 30px 100px 40px;\r\n display: flex;\r\n justify-content: space-between;\r\n\r\n @media (max-width: 568px) {\r\n flex-direction: column;\r\n margin: 20px 10px;\r\n align-items: center;\r\n }\r\n`;\r\n\r\nexport const Text = styled.text`\r\ncolor: ${colors.Black};\r\n`;\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.Pink200};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.Pink200};\r\n border: 1px double ${colors.Pink200};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.Pink400};\r\n border: 1px double ${colors.Pink400};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.Pink200};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.Pink400};\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const BtnExport = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n width: fit-content;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n ${Text} {\r\n color: ${colors.White}\r\n }\r\n }\r\n`;\r\n\r\nexport const ExportWorksheet = styled(ExportWorksheetIcon)(\r\n () => `\r\n color: #363BC4\r\n`,\r\n);\r\n","import { DriConfigState } from '~/pages/Analysis/Integrations/IntegrEdit/types';\r\n\r\nexport function isAutomation(state: DriConfigState): boolean {\r\n return state.application?.value === 'automation';\r\n}\r\n\r\nexport function isFancoil(state: DriConfigState): boolean {\r\n return isAutomation(state) && state.driApplication === 'Fancoil';\r\n}\r\n\r\nexport function isVAV(state: DriConfigState): boolean {\r\n return isAutomation(state) && state.driApplication === 'VAV';\r\n}\r\n\r\nexport function isFancoilVavAutomation(state: DriConfigState): boolean {\r\n return isAutomation(state) && (isFancoil(state) || isVAV(state));\r\n}\r\n\r\nexport function checkNewProtocolsValues(cfg, type: 'device'|'modbus', value: string) {\r\n if (cfg.protocol != null) {\r\n return cfg.protocol === value;\r\n }\r\n if (type === 'device') {\r\n return cfg['device-protocol'] === value;\r\n }\r\n return cfg['modbus-protocol'] === value;\r\n}\r\n","import {\r\n useState,\r\n useMemo,\r\n useEffect,\r\n useRef,\r\n} from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\nimport { Flex } from 'reflexbox';\r\nimport '~/assets/css/ReactTags.css';\r\nimport {\r\n Button,\r\n FormMachine,\r\n FormAssetsList,\r\n ViewMachine,\r\n ViewCAG,\r\n} from 'components';\r\nimport { useForm } from 'react-hook-form';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport queryString from 'query-string';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { apiCall, apiCallFormData, ApiResps } from 'providers';\r\n\r\nimport { FormEditExtras } from '../UnitExtras';\r\nimport { Headers2 } from '../../Analysis/Header';\r\nimport { AxiosError } from 'axios';\r\n\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n Form,\r\n} from './styles';\r\nimport {\r\n driApplicationCfgs,\r\n driChillerCarrierApplications, driLayerOpts, driParityOpts, driProtocolsOpts, driStopBitsOpts,\r\n} from '~/helpers/driConfigOptions';\r\nimport { checkNewProtocolsValues } from '~/helpers/driConfig';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nfunction getKeyByValue(object, value) {\r\n return Object.keys(object).find((key) => object[key] === value);\r\n}\r\n\r\ntype Inputs = {\r\n login: string,\r\n loginExtra: string,\r\n password: string,\r\n consumerUnit: string,\r\n finished: boolean,\r\n name: string | null,\r\n model: string | null,\r\n refrigerationCapacity: string | null,\r\n refrigerationFluid: string | null,\r\n ratedPower: string | null,\r\n installationDate: string | null,\r\n automationDevId: string | null,\r\n};\r\n\r\ntype Machine = {\r\n groupId: number | null,\r\n name: string,\r\n unitId: number,\r\n unitName: string | null,\r\n brandName: string | null,\r\n type: string | null,\r\n model: string | null,\r\n refrigerationCapacity: string | null,\r\n refrigerationFluid: string | null,\r\n applic: string | null,\r\n ratedPower: string | null,\r\n installationDate: string | null,\r\n automationDevId: string | null,\r\n capacityMeasurementUnit: string | null,\r\n refDUTId: string | null\r\n assetsSumRatedPower: string | null,\r\n};\r\n\r\ntype Asset = {\r\n index: number,\r\n name: string,\r\n installationLocation: string | null,\r\n datId: string | null,\r\n devId: string | null,\r\n roleId: number | null,\r\n role: string | null,\r\n type: string | null,\r\n brandName: string | null,\r\n model: string | null,\r\n refrigerationCapacity: string | null,\r\n ratedPower: string | null,\r\n refrigerationFluid: string | null,\r\n capacityMeasurementUnit: string | null,\r\n devClientAssetId: number | null,\r\n datIndex: number | null,\r\n devIdPersisted: string | null,\r\n assetId: number | null,\r\n chillerModel: string | null,\r\n chillerModelValue: number | null,\r\n chillerLine: string | null,\r\n chillerLineValue: number | null,\r\n nominalCapacity: number | null,\r\n nominalVoltage: number | null,\r\n nominalFrequency: number | null,\r\n};\r\n\r\nexport const FormEditMachine = (props: {\r\n unitInfo?: {\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n LAT: string\r\n LON: string\r\n TARIFA_KWH: number\r\n CITY_ID: string\r\n STATE_ID: string\r\n DISTRIBUTOR_ID: number\r\n CONSUMER_UNIT: string\r\n LOGIN: string\r\n LOGIN_EXTRA: string\r\n PASSWORD: string\r\n }\r\n unitsList: {\r\n value: number\r\n name: string\r\n }[]\r\n modelsChillerList: {\r\n id: number\r\n modelName: string\r\n lineName: string\r\n nominalCapacity: number\r\n nominalVoltage: number\r\n nominalFrequency: number\r\n }[]\r\n comboOpts: {\r\n fluids: { value: number, name: string, id: string, }[],\r\n types: { value: number, name: string, id: string, }[],\r\n brands: { value: number, name: string, id: string, }[],\r\n applics: { value: number, name: string, id: string, }[],\r\n roles: { value: number, name: string }[],\r\n chillerModels: { value: number, name: string }[],\r\n chillerLines: { value: number, name: string }[],\r\n }\r\n machineWithAsset?: {\r\n GROUP_ID: number\r\n GROUP_NAME: string\r\n DUT_ID: string\r\n DEV_AUT: string | null\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n CITY_NAME: string\r\n STATE_ID: string\r\n MODEL: string | null\r\n INSTALLATION_DATE: string | null\r\n GROUP_TYPE: string | null\r\n BRAND: string | null\r\n FRIGO_CAPACITY: number | null\r\n FRIGO_CAPACITY_UNIT: string | null\r\n FLUID_TYPE: string | null\r\n RATED_POWER: number | null\r\n DEVS_COUNT: number,\r\n ASSETS_COUNT: number,\r\n MCHN_APPL: string | null,\r\n MACHINE_RATED_POWER: number,\r\n assets: {\r\n DAT_ID: string | null\r\n AST_DESC: string\r\n INSTALLATION_LOCATION: string | null\r\n AST_TYPE: string | null\r\n CAPACITY_PWR: number | null\r\n CAPACITY_UNIT: string | null\r\n CLIENT_ID: number | null\r\n FLUID_TYPE: string | null\r\n GROUP_ID: number | null\r\n MCHN_APPL: string | null\r\n MCHN_BRAND: string | null\r\n MCHN_ENV: string | null\r\n MCHN_KW: number | null\r\n MCHN_MODEL: string | null\r\n UNIT_ID: number\r\n INSTALLATION_DATE: string | null\r\n AST_ROLE: number | null\r\n DEV_ID: string | null\r\n DEV_CLIENT_ASSET_ID: number | null\r\n DAT_INDEX: number | null\r\n ASSET_ID: number\r\n CHILLER_MODEL_NAME: string | null\r\n CHILLER_MODEL_ID: number | null\r\n CHILLER_LINE_NAME: string | null\r\n CHILLER_LINE_ID: number | null\r\n NOMINAL_CAPACITY: number | null\r\n NOMINAL_VOLTAGE: number | null\r\n NOMINAL_FREQUENCY: number | null\r\n }[]\r\n }\r\n dacsList?: {\r\n DAC_ID: string\r\n GROUP_ID: number\r\n automationEnabled: boolean\r\n }[]\r\n clientId: number\r\n isViewMachine?: boolean\r\n onSuccess: (result: { item: {}, action: string }) => void\r\n onCancel: () => void\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n const {\r\n unitInfo = undefined, clientId, onSuccess, onCancel,\r\n } = props;\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n isLoading: false as boolean,\r\n key: 1 as number,\r\n isViewMachine: props.isViewMachine as boolean,\r\n sending: false,\r\n selectedApplication: false as boolean,\r\n selectedChillerModel: false as boolean,\r\n selectedChillerLine: false as boolean,\r\n driInfo: null as null|ApiResps['/get-integration-info'],\r\n driProtocol: null as null | string,\r\n driLayer: null as null | string,\r\n modbusBaudRate: '',\r\n driParity: null as null | string,\r\n driStopBits: null as null | string,\r\n driSendInterval: '',\r\n selectedCurrentCapacity: null as null | { name: string, value: string },\r\n selectedInstallationType: null as null | { name: string, value: string },\r\n driSlaveId: '',\r\n driCfgFile: null as null | (Blob & { name: string }),\r\n isChillerCarrier: false as boolean,\r\n\r\n });\r\n\r\n const [formData] = useState({\r\n UNIT_ID: (unitInfo && unitInfo.UNIT_ID) || null,\r\n machine: {\r\n groupId: props.machineWithAsset && props.machineWithAsset.GROUP_ID || null as number | null,\r\n name: props.machineWithAsset && props.machineWithAsset.GROUP_NAME || '' as string,\r\n unitId: props.machineWithAsset && props.machineWithAsset.UNIT_ID || 0 as number,\r\n unitName: props.machineWithAsset && props.machineWithAsset.UNIT_NAME || '' as string | null,\r\n brandName: props.machineWithAsset && props.machineWithAsset.BRAND || '' as string | null,\r\n type: props.machineWithAsset && props.machineWithAsset.GROUP_TYPE || '' as string | null,\r\n model: props.machineWithAsset && props.machineWithAsset.MODEL || '' as string | null,\r\n refrigerationCapacity: props.machineWithAsset ? props.machineWithAsset.assets.reduce((accumulator, object) => (object.AST_ROLE === 2 ? accumulator + Number(object.CAPACITY_PWR) : accumulator), 0).toString() : null,\r\n refrigerationFluid: props.machineWithAsset && props.machineWithAsset.FLUID_TYPE || '' as string | null,\r\n applic: props.machineWithAsset && props.machineWithAsset.MCHN_APPL || '' as string | null,\r\n ratedPower: props.machineWithAsset?.MACHINE_RATED_POWER?.toString() || '' as string | null,\r\n installationDate: props.machineWithAsset && props.machineWithAsset.INSTALLATION_DATE || '' as string | null,\r\n automationDevId: (props.machineWithAsset && (props.machineWithAsset.DEV_AUT)) || '' as string | null,\r\n capacityMeasurementUnit: props.machineWithAsset && props.machineWithAsset.assets.find((asset) => asset.AST_ROLE === 2)?.CAPACITY_UNIT || 'TR' as string | null,\r\n refDUTId: props.machineWithAsset && (props.machineWithAsset.DUT_ID !== props.machineWithAsset.DEV_AUT) && props.machineWithAsset.DUT_ID || '' as string | null,\r\n assetsSumRatedPower: props.machineWithAsset ? props.machineWithAsset.assets.reduce((accumulator, object) => (object.AST_ROLE === 2 ? accumulator + Number(object.MCHN_KW) : accumulator), 0).toString() : null,\r\n },\r\n assets: [] as {\r\n index: number,\r\n name: string,\r\n installationLocation: string | null,\r\n datId: string | null,\r\n devId: string | null,\r\n roleId: number | null,\r\n role: string | null,\r\n type: string | null,\r\n brandName: string | null,\r\n model: string | null,\r\n refrigerationCapacity: string | null,\r\n ratedPower: string | null,\r\n refrigerationFluid: string | null,\r\n capacityMeasurementUnit: string | null,\r\n devIdPersisted: string | null,\r\n devClientAssetId: number | null,\r\n datIndex: number | null,\r\n assetId: number | null,\r\n chillerModel: string | null,\r\n chillerModelValue: number | null,\r\n chillerLine: string | null,\r\n chillerLineValue: number | null,\r\n nominalCapacity: number | null,\r\n nominalVoltage: number | null,\r\n nominalFrequency: number | null,\r\n }[],\r\n });\r\n\r\n const isEdit = !!formData.machine.groupId;\r\n\r\n useEffect(() => {\r\n if (isEdit || state.isViewMachine) {\r\n if (props.machineWithAsset) {\r\n let indexAux = 0;\r\n for (const asset of props.machineWithAsset.assets) {\r\n formData.assets.push({\r\n index: indexAux,\r\n name: asset.AST_DESC || '',\r\n installationLocation: asset.INSTALLATION_LOCATION || '',\r\n datId: asset.DAT_ID || '',\r\n devId: asset.DEV_ID || '',\r\n roleId: asset.AST_ROLE || 0,\r\n role: '',\r\n type: asset.AST_TYPE || '',\r\n brandName: asset.MCHN_BRAND || '',\r\n model: asset.MCHN_MODEL || '',\r\n refrigerationCapacity: asset.CAPACITY_PWR?.toString() || '',\r\n ratedPower: asset.MCHN_KW?.toString() || '',\r\n refrigerationFluid: asset.FLUID_TYPE || '',\r\n capacityMeasurementUnit: asset.CAPACITY_UNIT || 'TR',\r\n devIdPersisted: asset.DEV_ID || null,\r\n devClientAssetId: asset.DEV_CLIENT_ASSET_ID || null,\r\n datIndex: asset.DAT_INDEX || null,\r\n assetId: asset.ASSET_ID,\r\n chillerModel: asset.CHILLER_MODEL_NAME,\r\n chillerModelValue: asset.CHILLER_MODEL_ID,\r\n chillerLine: asset.CHILLER_LINE_NAME,\r\n chillerLineValue: asset.CHILLER_LINE_ID,\r\n nominalCapacity: asset.NOMINAL_CAPACITY,\r\n nominalVoltage: asset.NOMINAL_VOLTAGE,\r\n nominalFrequency: asset.NOMINAL_FREQUENCY,\r\n });\r\n indexAux++;\r\n }\r\n render();\r\n }\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (formData.machine.applic === 'chiller' && formData.machine.brandName === 'carrier') {\r\n state.isChillerCarrier = true;\r\n render();\r\n }\r\n }, []);\r\n\r\n function handleChangeMachine(machineForm: Machine) {\r\n formData.machine = machineForm;\r\n render();\r\n }\r\n\r\n function handleChangeSelectedApplication(selectedApplication: boolean) {\r\n state.selectedApplication = selectedApplication;\r\n render();\r\n }\r\n\r\n function handleChangeSelectedChillerCarrier(selectedChillerCarrier: boolean) {\r\n state.isChillerCarrier = selectedChillerCarrier;\r\n render();\r\n }\r\n\r\n function handleChangeSelectedChillerModel(selectedChillerModel: boolean) {\r\n state.selectedChillerModel = selectedChillerModel;\r\n render();\r\n }\r\n\r\n function handleChangeSelectedChillerLine(selectedChillerLine: boolean) {\r\n state.selectedChillerLine = selectedChillerLine;\r\n render();\r\n }\r\n\r\n function handleChangeAssets(assetsForm: Asset[]) {\r\n formData.assets = assetsForm;\r\n\r\n const sumRatedPower = assetsForm.reduce((accumulator, object) => (object.roleId === 2 ? accumulator + Number(object.ratedPower) : accumulator), 0);\r\n const sumRefrigerationCapacity = assetsForm.reduce((accumulator, object) => (object.roleId === 2 ? accumulator + Number(object.refrigerationCapacity) : accumulator), 0);\r\n const condensers = assetsForm.find((asset) => asset.roleId === 2);\r\n\r\n if (condensers) {\r\n formData.machine.capacityMeasurementUnit = condensers.capacityMeasurementUnit || 'TR';\r\n }\r\n formData.machine.assetsSumRatedPower = sumRatedPower.toString();\r\n formData.machine.refrigerationCapacity = sumRefrigerationCapacity.toString();\r\n }\r\n\r\n function handleDeleteAssets(index: number) {\r\n formData.assets.splice(formData.assets.findIndex((item) => item.index === index), 1);\r\n render();\r\n }\r\n\r\n function checkDevExistsAnotherAsset(devCode: string, assetToIgnore: number) {\r\n return !!formData.assets.find((item) => item.assetId !== assetToIgnore && item.devId === devCode);\r\n }\r\n\r\n function verifyAutomPermission() {\r\n return profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === state.driInfo?.info?.CLIENT_ID);\r\n }\r\n\r\n async function getDriInfo(driId: string) {\r\n try {\r\n const response = await apiCall('/get-integration-info', { supplier: 'diel', integrId: driId });\r\n state.driInfo = response;\r\n const { dri: driCfg } = response;\r\n setDriCfg(driCfg);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n alert(t('erroInformacoesDispositivos'));\r\n }\r\n }\r\n\r\n function verifyPermissions() {\r\n if (!profile.manageAllClients && !profile.permissions.isInstaller && !verifyAutomPermission()) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n const setDriCfg = (driCfg: ApiResps['/get-integration-info']['dri']) => {\r\n const defaultConfig = driApplicationCfgs['Chiller-Default'];\r\n\r\n const driProtocol = getKeyByValue(driProtocolsOpts, defaultConfig.protocol) ?? null;\r\n const modbusBaudRate = defaultConfig.modbusBaudRate;\r\n const driParity = getKeyByValue(driParityOpts, defaultConfig.parity) ?? null;\r\n const driLayer = getKeyByValue(driLayerOpts, defaultConfig.serialMode) ?? null;\r\n const driStopBits = getKeyByValue(driStopBitsOpts, defaultConfig.stopBits) ?? null;\r\n const driSendInterval = '60';\r\n\r\n state.driProtocol = getKeyByValue(driProtocolsOpts, driCfg?.protocol) ?? driProtocol;\r\n\r\n const parity = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'mdb_parity'))?.value;\r\n state.driParity = (parity !== undefined) ? Object.keys(driParityOpts)[parity] : driParity;\r\n\r\n const serialMode = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'serial_mode'))?.value;\r\n state.driLayer = (serialMode !== undefined) ? Object.keys(driLayerOpts)[Number(serialMode) - 1] : driLayer;\r\n\r\n const stopBits = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'mdb_stopbits'))?.value;\r\n state.driStopBits = (stopBits !== undefined) ? Object.keys(driStopBitsOpts)[stopBits] : driStopBits;\r\n\r\n state.driSendInterval = (driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'interval'))?.value?.toString() ?? driSendInterval);\r\n\r\n state.modbusBaudRate = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'mdb_baud'))?.value?.toString() ?? modbusBaudRate;\r\n\r\n state.driSlaveId = (['30HXE', '30GXE', '30HXF', '30XAB'].includes(formData?.assets[0]?.chillerLine ?? '') && driCfg?.varsList?.find((item) => item.address)?.address?.id?.toString()) || '';\r\n };\r\n\r\n function createVariables() {\r\n const driProtocol = state.driProtocol && driProtocolsOpts[state.driProtocol];\r\n const driLayer = state.driLayer ? driLayerOpts[state.driLayer] : undefined;\r\n const modbusBaudRate = state.modbusBaudRate || undefined;\r\n const parity = state.driParity ? driParityOpts[state.driParity] : undefined;\r\n const stopBits = state.driStopBits ? driStopBitsOpts[state.driStopBits] : undefined;\r\n const intervalTmp = state.driSendInterval || undefined;\r\n const sendInterval = state.driSendInterval ? state.driSendInterval : intervalTmp;\r\n const capacityTc = state.selectedCurrentCapacity?.value || undefined;\r\n const installationType = state.selectedInstallationType?.value || undefined;\r\n const slaveId = (Number(state.driSlaveId) && state.driSlaveId) || undefined;\r\n\r\n return {\r\n driProtocol,\r\n driLayer,\r\n modbusBaudRate,\r\n parity,\r\n stopBits,\r\n sendInterval,\r\n capacityTc,\r\n installationType,\r\n slaveId,\r\n };\r\n }\r\n\r\n function getDriApplication() {\r\n const chillerLine = formData?.assets[0]?.chillerLine;\r\n const driApplication = chillerLine ? driChillerCarrierApplications[chillerLine] : null;\r\n\r\n return driApplication;\r\n }\r\n\r\n async function uploadSelectedDriConfigFile() {\r\n try {\r\n const asset = formData?.assets[0];\r\n const driApplication = getDriApplication();\r\n\r\n const {\r\n driProtocol,\r\n driLayer,\r\n modbusBaudRate,\r\n parity,\r\n stopBits,\r\n sendInterval,\r\n capacityTc,\r\n installationType,\r\n slaveId,\r\n } = createVariables();\r\n\r\n if (asset.devId) {\r\n await Promise.all([\r\n (async () => {\r\n if (verifyPermissions()) return;\r\n asset.devId && await apiCall('/dri/set-dri-info', {\r\n DRI_ID: asset.devId,\r\n SYSTEM_NAME: asset.name || formData.machine.name,\r\n UNIT_ID: formData.machine.unitId,\r\n CLIENT_ID: clientId,\r\n });\r\n })(),\r\n apiCallFormData('/upload-dri-varscfg', {\r\n driId: asset.devId,\r\n application: driApplication,\r\n protocol: driProtocol,\r\n serialMode: driLayer,\r\n modbusBaudRate,\r\n parity,\r\n stopBits,\r\n telemetryInterval: sendInterval,\r\n capacityTc,\r\n installationType,\r\n slaveId,\r\n worksheetName: state.driCfgFile?.name,\r\n }, {\r\n file: state.driCfgFile,\r\n }),\r\n ]);\r\n }\r\n\r\n toast.success(t('sucessoSalvarConfiguracoes'));\r\n toast.success(t('sucessoReiniciarDispositivo'));\r\n } catch (err) {\r\n const error = err as AxiosError;\r\n console.log(err);\r\n if (error.response?.status !== 500) {\r\n toast.error(`${error.response?.data}`);\r\n } else {\r\n toast.error(t('erro'));\r\n }\r\n }\r\n }\r\n\r\n const handleFormSubmition = async () => {\r\n let action: string | null;\r\n let response: null | {};\r\n if (state.submitting) {\r\n try {\r\n if (!formData.machine.name) {\r\n alert('É necessário informar um nome para a máquina');\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n\r\n const assetsWithoutName = formData.assets.filter((assets) => assets.name == null);\r\n if (!state.isChillerCarrier && assetsWithoutName.length > 0) {\r\n alert('É necessário informar nome para os ativos');\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n if (state.isChillerCarrier && (!formData.assets[0]?.chillerLine || !formData.assets[0]?.chillerModel)) {\r\n alert(t('preencherModeloChiller'));\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n if (formData.machine.installationDate && formData.machine.installationDate.length !== 10) {\r\n alert('Data de instalação fora do formato dd/mm/yyyy');\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n setState({ sending: true });\r\n if (!isEdit) {\r\n if (!formData.machine.unitId) {\r\n alert('É necessário selecionar a unidade');\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n\r\n const isDam = formData.machine.automationDevId?.includes('DAM');\r\n const isDut = formData.machine.automationDevId?.includes('DUT');\r\n const isDri = formData.machine.automationDevId?.includes('DRI');\r\n const formatedDate = formData.machine.installationDate\r\n ? `${formData.machine.installationDate.substring(6, 10)}-${formData.machine.installationDate.substring(3, 5)}-${formData.machine.installationDate.substring(0, 2)}` : null;\r\n setState({ sending: true });\r\n if (isDam) {\r\n await apiCall('/dam/set-dam-info', {\r\n UNIT_ID: formData.machine.unitId,\r\n CLIENT_ID: clientId,\r\n DAM_ID: formData.machine.automationDevId as string,\r\n });\r\n }\r\n else if (isDri) {\r\n await apiCall('/dri/set-dri-info', {\r\n UNIT_ID: formData.machine.unitId,\r\n CLIENT_ID: clientId,\r\n DRI_ID: formData.machine.automationDevId as string,\r\n });\r\n }\r\n else if (isDut || formData.machine.refDUTId) {\r\n await apiCall('/dut/set-dut-info', {\r\n UNIT_ID: formData.machine.unitId,\r\n CLIENT_ID: clientId,\r\n DEV_ID: (isDut && formData.machine.automationDevId ? formData.machine.automationDevId : formData.machine.refDUTId) as string,\r\n });\r\n }\r\n\r\n const groupResponse = await apiCall('/dac/add-new-group', {\r\n UNIT_ID: formData.machine.unitId,\r\n GROUP_NAME: formData.machine.name,\r\n REL_DUT_ID: isDut && formData.machine.automationDevId ? formData.machine.automationDevId : formData.machine.refDUTId,\r\n DEV_AUT: formData.machine.automationDevId || '',\r\n REL_DAM_ID: formData.machine.automationDevId && (formData.machine.automationDevId.startsWith('DAM') || formData.machine.automationDevId.startsWith('DAC')) && formData.machine.automationDevId || null,\r\n REL_DRI_ID: formData.machine.automationDevId && formData.machine.automationDevId.startsWith('DRI') && formData.machine.automationDevId || null,\r\n CLIENT_ID: clientId,\r\n MODEL: formData.machine.model,\r\n INSTALLATION_DATE: formatedDate,\r\n GROUP_TYPE: formData.machine.type,\r\n BRAND: formData.machine.brandName,\r\n FRIGO_CAPACITY: Number(formData.machine.refrigerationCapacity),\r\n FRIGO_CAPACITY_UNIT: formData.machine.capacityMeasurementUnit,\r\n FLUID_TYPE: formData.machine.refrigerationFluid,\r\n MCHN_APPL: formData.machine.applic,\r\n SUM_RATED_POWER_CONDENSERS: formData.machine.assetsSumRatedPower ? Number(formData.machine.assetsSumRatedPower) : null,\r\n RATED_POWER: formData.machine.ratedPower ? Number(formData.machine.ratedPower) : 0,\r\n });\r\n\r\n for (const asset of formData.assets) {\r\n const datId = asset.datId;\r\n await apiCall('/clients/add-new-asset', {\r\n DAT_ID: datId,\r\n AST_DESC: asset.name || formData.machine.name,\r\n AST_TYPE: asset.type,\r\n CAPACITY_PWR: asset.refrigerationCapacity != null ? Number(asset.refrigerationCapacity) : null,\r\n CAPACITY_UNIT: asset.capacityMeasurementUnit,\r\n CLIENT_ID: clientId,\r\n FLUID_TYPE: formData.machine.refrigerationFluid,\r\n GROUP_ID: groupResponse.GROUP_ID,\r\n MCHN_BRAND: formData.machine.brandName,\r\n MCHN_MODEL: asset.model,\r\n UNIT_ID: formData.machine.unitId,\r\n INSTALLATION_DATE: formatedDate,\r\n AST_ROLE: asset.roleId,\r\n DEV_ID: asset.devId,\r\n DAT_COUNT: asset.index,\r\n MCHN_KW: asset.ratedPower != null ? Number(asset.ratedPower) : null,\r\n INSTALLATION_LOCATION: asset.installationLocation,\r\n MCHN_APPL: formData.machine.applic,\r\n CHILLER_CARRIER_MODEL_ID: asset.chillerModelValue,\r\n });\r\n\r\n if (asset.devId && asset.devId.includes('DAC')) {\r\n await apiCall('/dac/set-dac-info', {\r\n DAC_ID: asset.devId, GROUP_ID: groupResponse.GROUP_ID, UNIT_ID: formData.machine.unitId, CLIENT_ID: clientId,\r\n });\r\n }\r\n\r\n if (asset.devId && asset.devId.includes('DRI') && state.isChillerCarrier) {\r\n await uploadSelectedDriConfigFile();\r\n }\r\n }\r\n action = 'new';\r\n response = groupResponse;\r\n }\r\n else {\r\n if (!formData.machine.unitId) {\r\n alert('É necessário selecionar a unidade');\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n\r\n if (formData.machine.automationDevId) {\r\n const reqCombos = { CLIENT_ID: clientId, groups: true };\r\n const combos = await apiCall('/dev/dev-info-combo-options', reqCombos);\r\n\r\n if (combos.groups) {\r\n const groupInfo = combos.groups.find((groupInfo) => groupInfo.value === formData.machine.groupId);\r\n if (groupInfo && groupInfo.devAut != null && groupInfo.devAut !== formData.machine.automationDevId) {\r\n toast.warn(t('avisoGrupoEstaAutomatizadoDispositivo', {\r\n value1: groupInfo.label,\r\n value2: groupInfo.devAut,\r\n }));\r\n state.submitting = false;\r\n render();\r\n return;\r\n }\r\n }\r\n }\r\n\r\n const isDut = formData.machine.automationDevId?.includes('DUT');\r\n const formatedDate = formData.machine.installationDate\r\n ? `${formData.machine.installationDate.substring(6, 10)}-${formData.machine.installationDate.substring(3, 5)}-${formData.machine.installationDate.substring(0, 2)}` : null;\r\n const groupResponse = await apiCall('/clients/edit-group', {\r\n GROUP_ID: formData.machine.groupId as number,\r\n UNIT_ID: formData.machine.unitId,\r\n GROUP_NAME: formData.machine.name,\r\n REL_DUT_ID: isDut && formData.machine.automationDevId ? formData.machine.automationDevId : formData.machine.refDUTId,\r\n REL_DEV_AUT: formData.machine.automationDevId,\r\n CLIENT_ID: clientId,\r\n MODEL: formData.machine.model,\r\n INSTALLATION_DATE: formatedDate,\r\n GROUP_TYPE: formData.machine.type,\r\n BRAND: formData.machine.brandName,\r\n FRIGO_CAPACITY: Number(formData.machine.refrigerationCapacity),\r\n FRIGO_CAPACITY_UNIT: formData.machine.capacityMeasurementUnit,\r\n FLUID_TYPE: formData.machine.refrigerationFluid,\r\n RATED_POWER: formData.machine.ratedPower ? Number(formData.machine.ratedPower) : 0,\r\n MCHN_APPL: formData.machine.applic,\r\n SUM_RATED_POWER_CONDENSERS: formData.machine.assetsSumRatedPower ? Number(formData.machine.assetsSumRatedPower) : null,\r\n });\r\n\r\n const groupId = formData.machine.groupId as number;\r\n\r\n // first remove assets that have card deleted\r\n const assetsOriginal = props.machineWithAsset?.assets || [];\r\n\r\n if (assetsOriginal.length > 0) {\r\n for (const asset of assetsOriginal) {\r\n const assetAux = formData.assets.find((item) => item.assetId === asset.ASSET_ID);\r\n if (!assetAux) {\r\n // Remove asset that had card deleted\r\n await apiCall('/clients/remove-asset', { ASSET_ID: asset.ASSET_ID, DAT_ID: asset.DAT_ID as string, DEVICE_CODE: asset.DEV_ID ? asset.DEV_ID : undefined });\r\n\r\n if (asset.DEV_ID && asset.DEV_ID.includes('DAC') && !checkDevExistsAnotherAsset(asset.DEV_ID, asset.ASSET_ID)) {\r\n await apiCall('/dac/set-dac-info', { DAC_ID: asset.DEV_ID, GROUP_ID: null });\r\n }\r\n }\r\n }\r\n }\r\n\r\n // Handle with the asset list\r\n for (const asset of formData.assets) {\r\n // New asset\r\n if (!asset.assetId) {\r\n const datId = asset.datId;\r\n await apiCall('/clients/add-new-asset', {\r\n DAT_ID: datId,\r\n AST_DESC: asset.name || formData.machine.name,\r\n AST_TYPE: asset.type,\r\n CAPACITY_PWR: asset.refrigerationCapacity != null ? Number(asset.refrigerationCapacity) : null,\r\n CAPACITY_UNIT: asset.capacityMeasurementUnit,\r\n CLIENT_ID: clientId,\r\n FLUID_TYPE: formData.machine.refrigerationFluid,\r\n GROUP_ID: groupId,\r\n MCHN_BRAND: formData.machine.brandName,\r\n MCHN_MODEL: asset.model,\r\n UNIT_ID: formData.machine.unitId,\r\n INSTALLATION_DATE: formatedDate,\r\n AST_ROLE: asset.roleId,\r\n DEV_ID: asset.devId,\r\n DAT_COUNT: asset.index,\r\n MCHN_KW: asset.ratedPower != null ? Number(asset.ratedPower) : null,\r\n INSTALLATION_LOCATION: asset.installationLocation,\r\n MCHN_APPL: formData.machine.applic,\r\n TYPE_CFG: formData.machine.type,\r\n CHILLER_CARRIER_MODEL_ID: asset.chillerModelValue,\r\n });\r\n\r\n if (asset.devId && asset.devId.includes('DAC')) {\r\n await apiCall('/dac/set-dac-info', {\r\n DAC_ID: asset.devId, GROUP_ID: groupId, UNIT_ID: formData.machine.unitId, CLIENT_ID: clientId,\r\n });\r\n }\r\n\r\n if (asset.devId && asset.devId.includes('DRI') && state.isChillerCarrier) {\r\n await uploadSelectedDriConfigFile();\r\n }\r\n }\r\n else {\r\n if (asset.devIdPersisted != null && asset.devIdPersisted !== asset.devId && asset.devIdPersisted.startsWith('DAC') && asset.devId != null && !checkDevExistsAnotherAsset(asset.devIdPersisted, asset.assetId)) {\r\n await apiCall('/dac/set-dac-info', { DAC_ID: asset.devIdPersisted, GROUP_ID: null });\r\n }\r\n\r\n await apiCall('/clients/edit-asset', {\r\n ASSET_ID: asset.assetId,\r\n DAT_ID: asset.datId as string,\r\n AST_DESC: asset.name,\r\n AST_TYPE: asset.type,\r\n CAPACITY_PWR: asset.refrigerationCapacity != null ? Number(asset.refrigerationCapacity) : null,\r\n CAPACITY_UNIT: asset.capacityMeasurementUnit,\r\n CLIENT_ID: clientId,\r\n FLUID_TYPE: asset.refrigerationFluid,\r\n GROUP_ID: groupId,\r\n MCHN_BRAND: asset.brandName,\r\n MCHN_MODEL: asset.model,\r\n UNIT_ID: formData.machine.unitId,\r\n INSTALLATION_DATE: formatedDate,\r\n AST_ROLE: asset.roleId,\r\n DEV_ID: asset.devId,\r\n DAT_COUNT: asset.index,\r\n OLD_DEV_ID: asset.devIdPersisted,\r\n DEV_CLIENT_ASSET_ID: asset.devClientAssetId,\r\n DAT_INDEX: asset.datIndex,\r\n MCHN_KW: asset.ratedPower != null ? Number(asset.ratedPower) : null,\r\n INSTALLATION_LOCATION: asset.installationLocation,\r\n UPDATE_MACHINE_RATED_POWER: false,\r\n });\r\n\r\n if (asset.devId && asset.devId.includes('DRI') && state.isChillerCarrier) {\r\n await uploadSelectedDriConfigFile();\r\n }\r\n }\r\n }\r\n\r\n response = groupResponse;\r\n action = 'edit';\r\n }\r\n if (response && action) onSuccess({ item: response, action });\r\n } catch (err) {\r\n const error = err as AxiosError;\r\n console.log(err);\r\n // Exibindo mensagens dos erros tratados no backend\r\n if (error.response?.status !== 500) {\r\n toast.error(`${error.response?.data}`);\r\n } else {\r\n toast.error('Houve erro');\r\n }\r\n }\r\n }\r\n state.sending = false;\r\n };\r\n\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n\r\n const tabs = [\r\n {\r\n title: t('maquina'),\r\n link: `${linkBase}`,\r\n isActive: !queryPars.aba,\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('ativosAssociados'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'ativos-associados' })}`,\r\n isActive: (queryPars.aba === 'ativos-associados'),\r\n visible: !state.isChillerCarrier,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n const {\r\n register, handleSubmit,\r\n } = useForm({\r\n mode: 'all',\r\n });\r\n\r\n function onStateSelected() {\r\n if (state.isChillerCarrier && formData?.assets[0]?.devId) {\r\n const driId = formData.assets[0].devId;\r\n getDriInfo(driId);\r\n }\r\n setState({ isLoading: true, submitting: true });\r\n render();\r\n }\r\n\r\n return (\r\n state.editingExtras\r\n ? (\r\n setState({ editingExtras: false })}\r\n />\r\n )\r\n : (\r\n
\r\n
\r\n
\r\n {!state.isViewMachine && !state.submitting && (\r\n <>\r\n \r\n {!isEdit ? 'Nova Máquina' : 'Editar Máquina'}\r\n \r\n
\r\n \r\n
\r\n {tabs[0].isActive\r\n && (\r\n
\r\n \r\n
\r\n )}\r\n {tabs[1].isActive\r\n && state.key++\r\n && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n )}\r\n {(state.isViewMachine || state.submitting) && (\r\n
\r\n \r\n {state.isViewMachine ? 'Visualizar' : 'Resumo'}\r\n \r\n {state.submitting && (\r\n \r\n Confira as informações inseridas\r\n \r\n )}\r\n
\r\n {/* */}\r\n {state.isChillerCarrier ? : }\r\n
\r\n
\r\n )}\r\n {!state.submitting && !state.isViewMachine && (\r\n \r\n \r\n \r\n Cancelar\r\n \r\n \r\n \r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n \r\n )}\r\n {state.submitting && (\r\n \r\n \r\n {\r\n e.preventDefault();\r\n state.submitting = false;\r\n render(); }}\r\n >\r\n Voltar para Edição\r\n \r\n \r\n \r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n Salvar\r\n \r\n {/* @ts-ignore */}\r\n \r\n \r\n )}\r\n {state.isViewMachine && (\r\n \r\n \r\n \r\n Fechar\r\n \r\n \r\n \r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n \r\n \r\n )}\r\n
\r\n
\r\n
\r\n )\r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport { Button } from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { SingleDatePicker } from 'react-dates';\r\nimport {\r\n ContentDate, StyledCalendarIcon, DateLabel, Unit, Test, InputText, InputLabel, InputRow, Title, ConsumptionContainer, ConsumptionRow, DateRow, EditCicleContainer, ModelRateContainer, CancelButton, RateGroupsTitle,\r\n} from './styles';\r\nimport moment from 'moment';\r\nimport { CicleType } from './ClientPanel';\r\nimport { apiCall } from '~/providers';\r\nimport { RateCicleType } from './Tables/TableModels';\r\n\r\ntype typeProps = {\r\n clientId: number,\r\n onCancel: () => void,\r\n cicleBaseInfo: CicleType,\r\n itemToEdit?: null | RateCicleType,\r\n}\r\n\r\nexport const FormEditCreateCicle = ({\r\n onCancel, cicleBaseInfo, itemToEdit,\r\n}: typeProps): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n focused: false,\r\n dateStart: null as null|moment.Moment,\r\n dateEnd: null as null|moment.Moment,\r\n focusedEnd: false,\r\n dateStartEnd: null as null|moment.Moment,\r\n dateEndF: null as null|moment.Moment,\r\n formCicle: {\r\n ponta: '' as string,\r\n outPonta: '' as string,\r\n startPonta: '' as string,\r\n endPonta: '' as string,\r\n firstMidRate: '' as string,\r\n startFirstMidRate: '' as string,\r\n endFirstMidRate: '' as string,\r\n lastMidRate: '' as string,\r\n startLastMidRate: '' as string,\r\n endLastMidRate: '' as string,\r\n rate: '' as string,\r\n },\r\n PIS: '',\r\n COFINS: '',\r\n ICMS: '',\r\n });\r\n\r\n useEffect(() => {\r\n loadEditCicle();\r\n }, []);\r\n\r\n async function createEditCicle() {\r\n try {\r\n if (itemToEdit) {\r\n await apiCall('/update-rate-cicle', {\r\n START_CICLE_DATE: state.dateStart?.format('DD/MM/YYYY'),\r\n MODEL_ID: cicleBaseInfo.modelId,\r\n CICLE_ID: itemToEdit.CICLE_ID,\r\n END_CICLE_DATE: state.dateStartEnd?.format('DD/MM/YYYY'),\r\n PIS: Number(state.PIS),\r\n ICMS: Number(state.ICMS),\r\n COFINS: Number(state.COFINS),\r\n WHITERATE_PARAMETERS: (cicleBaseInfo.rateModalityName === 'Branca') ? {\r\n RATE_PONTA: state.formCicle.ponta,\r\n RATE_OUTPONTA: state.formCicle.outPonta,\r\n END_PONTA: state.formCicle.endPonta,\r\n START_PONTA: state.formCicle.startPonta,\r\n FIRST_MID_RATE: state.formCicle.firstMidRate,\r\n END_FIRST_MID_RATE: state.formCicle.endFirstMidRate,\r\n START_FIRST_MID_RATE: state.formCicle.startFirstMidRate,\r\n LAST_MID_RATE: state.formCicle.lastMidRate,\r\n END_LAST_MID_RATE: state.formCicle.endLastMidRate,\r\n START_LAST_MID_RATE: state.formCicle.startLastMidRate,\r\n } : undefined,\r\n CONVENTIONALRATE_PARAMETERS: (cicleBaseInfo.rateModalityName === 'Convencional') ? {\r\n RATE: state.formCicle.rate,\r\n } : undefined,\r\n });\r\n } else if (state.dateStart) {\r\n await apiCall('/create-rate-cicle', {\r\n MODEL_ID: cicleBaseInfo.modelId,\r\n START_CICLE_DATE: state.dateStart.format('DD/MM/YYYY'),\r\n END_CICLE_DATE: state.dateStartEnd?.format('DD/MM/YYYY'),\r\n PIS: Number(state.PIS),\r\n COFINS: Number(state.COFINS),\r\n ICMS: Number(state.ICMS),\r\n WHITERATE_PARAMETERS: (cicleBaseInfo.rateModalityName === 'Branca') ? {\r\n RATE_PONTA: state.formCicle.ponta,\r\n RATE_OUTPONTA: state.formCicle.outPonta,\r\n START_PONTA: state.formCicle.startPonta,\r\n END_PONTA: state.formCicle.endPonta,\r\n FIRST_MID_RATE: state.formCicle.firstMidRate,\r\n START_FIRST_MID_RATE: state.formCicle.startFirstMidRate,\r\n END_FIRST_MID_RATE: state.formCicle.endFirstMidRate,\r\n LAST_MID_RATE: state.formCicle.lastMidRate,\r\n START_LAST_MID_RATE: state.formCicle.startLastMidRate,\r\n END_LAST_MID_RATE: state.formCicle.endLastMidRate,\r\n } : undefined,\r\n CONVENTIONALRATE_PARAMETERS: (cicleBaseInfo.rateModalityName === 'Convencional') ? {\r\n RATE: state.formCicle.rate,\r\n } : undefined,\r\n });\r\n }\r\n window.location.reload();\r\n } catch (error) {\r\n toast.error('Houve um erro ao criar/editar ciclo');\r\n }\r\n }\r\n\r\n function loadEditCicle() {\r\n if (itemToEdit) {\r\n console.log(itemToEdit);\r\n setState({\r\n focusedEnd: false,\r\n formCicle: {\r\n ponta: itemToEdit.WHITERATE_PARAMETERS?.RATE_PONTA || '',\r\n outPonta: itemToEdit.WHITERATE_PARAMETERS?.RATE_OUTPONTA || '',\r\n startPonta: itemToEdit.WHITERATE_PARAMETERS?.START_PONTA || '',\r\n endPonta: itemToEdit.WHITERATE_PARAMETERS?.END_PONTA || '',\r\n firstMidRate: itemToEdit.WHITERATE_PARAMETERS?.FIRST_MID_RATE || '',\r\n startFirstMidRate: itemToEdit.WHITERATE_PARAMETERS?.START_FIRST_MID_RATE || '',\r\n endFirstMidRate: itemToEdit.WHITERATE_PARAMETERS?.END_FIRST_MID_RATE || '',\r\n lastMidRate: itemToEdit.WHITERATE_PARAMETERS?.LAST_MID_RATE || '',\r\n startLastMidRate: itemToEdit.WHITERATE_PARAMETERS?.START_LAST_MID_RATE || '',\r\n endLastMidRate: itemToEdit.WHITERATE_PARAMETERS?.END_LAST_MID_RATE || '',\r\n rate: itemToEdit.CONVENTIONALRATE_PARAMETERS?.RATE || '',\r\n },\r\n PIS: (itemToEdit.PIS).toString(),\r\n COFINS: (itemToEdit.COFINS).toString(),\r\n ICMS: (itemToEdit.ICMS).toString(),\r\n });\r\n }\r\n }\r\n\r\n async function confirm() {\r\n try {\r\n createEditCicle();\r\n onCancel();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n state.submitting = false; render();\r\n }\r\n\r\n return (\r\n \r\n

\r\n { itemToEdit ? 'Editar ciclo' : 'Criar novo ciclo' }\r\n

\r\n
\r\n
\r\n \r\n Início do ciclo vigente\r\n
\r\n {\r\n setState({ dateStart: value, dateEnd: value });\r\n }}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => setState({ focused })}\r\n numberOfMonths={1}\r\n />\r\n \r\n
\r\n
\r\n \r\n Fim do ciclo vigente\r\n
\r\n {\r\n setState({ dateStartEnd: value, dateEndF: value });\r\n }}\r\n focused={state.focusedEnd}\r\n onFocusChange={({ focused }) => setState({ focusedEnd: focused })}\r\n numberOfMonths={1}\r\n />\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n Grupo\r\n \r\n { cicleBaseInfo.groupName }\r\n
\r\n
\r\n
\r\n \r\n Subgrupo\r\n \r\n

\r\n { cicleBaseInfo.subGroupName }\r\n

\r\n
\r\n
\r\n
\r\n \r\n Modelo de tarifa\r\n \r\n

\r\n { cicleBaseInfo.rateModalityName }\r\n

\r\n
\r\n \r\n
\r\n \r\n Consumo\r\n \r\n
\r\n { cicleBaseInfo.rateModalityName === 'Branca' ? (\r\n \r\n \r\n \r\n Ponta\r\n \r\n \r\n kWh/R$\r\n \r\n { state.formCicle.ponta = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n Horário início\r\n \r\n { state.formCicle.startPonta = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n Horário fim\r\n \r\n { state.formCicle.endPonta = target.value; render(); }}\r\n />\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n Inicio do horário intermediário\r\n \r\n \r\n kWh/R$\r\n \r\n { state.formCicle.firstMidRate = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n Horário início\r\n \r\n { state.formCicle.startFirstMidRate = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n Horário fim\r\n \r\n { state.formCicle.endFirstMidRate = target.value; render(); }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n Fim do horário intermediário\r\n \r\n \r\n kWh/R$\r\n \r\n { state.formCicle.lastMidRate = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n Horário início\r\n \r\n { state.formCicle.startLastMidRate = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n Horário fim\r\n \r\n { state.formCicle.endLastMidRate = target.value; render(); }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n Fora ponta\r\n \r\n \r\n kWh/R$\r\n \r\n { state.formCicle.outPonta = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n \r\n ) : (\r\n \r\n \r\n Tarifa\r\n \r\n \r\n kWh/R$\r\n \r\n { state.formCicle.rate = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n )}\r\n\r\n
\r\n \r\n Impostos\r\n \r\n
\r\n \r\n PIS\r\n \r\n \r\n %\r\n \r\n { state.PIS = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n COFINS\r\n \r\n \r\n %\r\n \r\n { state.COFINS = target.value; render(); }}\r\n />\r\n \r\n \r\n
\r\n \r\n ICMS\r\n \r\n \r\n %\r\n \r\n { state.ICMS = (target.value); render(); }}\r\n />\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n \r\n Cancelar\r\n \r\n
\r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { Button } from 'components';\r\nimport { CicleType } from './ClientPanel';\r\nimport { RateCicleType } from './Tables/TableModels';\r\n\r\ntype Props = {\r\n onCancel: () => void,\r\n openCreateEditCicle: () => void,\r\n cicleInfo: CicleType\r\n itemToEdit?: null | RateCicleType,\r\n}\r\n\r\nexport const FormEditCicle = ({\r\n onCancel, openCreateEditCicle, itemToEdit,\r\n}: Props): JSX.Element => {\r\n useEffect(() => { });\r\n\r\n return (\r\n
\r\n

\r\n { itemToEdit ? 'Editar Ciclo' : 'Criar novo Ciclo'}\r\n

\r\n

\r\n { itemToEdit ? 'Editar um ciclo existente, prosseguir ?' : 'Será criado um novo ciclo, prosseguir?'}\r\n

\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n {/* @ts-ignore */}\r\n

\r\n Cancelar\r\n

\r\n
\r\n );\r\n};\r\n","import { useEffect, useState } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport { Label, CustomInput, ModalTitle2 } from './styles';\r\nimport {\r\n Button, Input, Select,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport { Flex } from 'reflexbox';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\n\r\nexport const FormEditHeatExchanger = ({\r\n clientId, onSuccess, onCancel, heatExchangerInfo,\r\n}): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n brandList: [] as string[],\r\n });\r\n const fetchData = async () => {\r\n try {\r\n const data = await apiCall('/heat-exchanger/get-brands-list-v2', { CLIENT_ID: clientId });\r\n state.brandList = data.map((e) => e.label);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n const [formData] = useState({\r\n ID: (heatExchangerInfo && heatExchangerInfo.ID) || null,\r\n NAME: (heatExchangerInfo && heatExchangerInfo.NAME) || '',\r\n T_MIN: (heatExchangerInfo && heatExchangerInfo.T_MIN) || '',\r\n T_MAX: (heatExchangerInfo && heatExchangerInfo.T_MAX) || '',\r\n DELTA_T_MIN: (heatExchangerInfo && heatExchangerInfo.DELTA_T_MIN) || '',\r\n DELTA_T_MAX: (heatExchangerInfo && heatExchangerInfo.DELTA_T_MAX) || '',\r\n });\r\n\r\n const isEdit = !!formData.ID;\r\n\r\n async function confirm() {\r\n let response;\r\n let action: string|null = null;\r\n try {\r\n state.submitting = true; render();\r\n const reqData = {\r\n CLIENT_ID: clientId,\r\n ID: formData.ID || null,\r\n NAME: formData.NAME || null,\r\n T_MIN: formData.T_MIN || null,\r\n T_MAX: formData.T_MAX || null,\r\n DELTA_T_MIN: formData.DELTA_T_MIN || null,\r\n DELTA_T_MAX: formData.DELTA_T_MAX || null,\r\n };\r\n\r\n if (!formData.NAME) { toast.error('Necessário preencher o campo Nome do Tipo de Trocador de Calor.'); state.submitting = false; return; }\r\n if (!formData.T_MIN) { toast.error('Necessário preencher o campo T-min.'); state.submitting = false; return; }\r\n if (!formData.T_MAX) { toast.error('Necessário preencher o campo T-max'); state.submitting = false; return; }\r\n if (!formData.DELTA_T_MIN) { toast.error('Necessário preencher o campo ΔT-min.'); state.submitting = false; return; }\r\n if (!formData.DELTA_T_MAX) { toast.error('Necessário preencher o campo ΔT-max.'); state.submitting = false; return; }\r\n\r\n if (isEdit) {\r\n response = await apiCall('/heat-exchanger/set-info-v2', reqData);\r\n action = 'edit';\r\n } else {\r\n response = await apiCall('/heat-exchanger/create-v2', reqData);\r\n action = 'new';\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n state.submitting = false; render();\r\n if (response && action) onSuccess({ item: response, action });\r\n }\r\n\r\n return (\r\n
\r\n\r\n {`${isEdit ? 'Editar' : 'Adicionar'} Tipo de Trocador de Calor`}\r\n
\r\n\r\n { formData.NAME = event.target.value; render(); }}\r\n formLabel=\"name\"\r\n />\r\n
\r\n \r\n { formData.T_MIN = event.target.value; render(); }}\r\n formLabel=\"t_min\"\r\n />\r\n {' '}\r\n { formData.T_MAX = event.target.value; render(); }}\r\n formLabel=\"t_max\"\r\n />\r\n \r\n
\r\n\r\n \r\n { formData.DELTA_T_MIN = event.target.value; render(); }}\r\n formLabel=\"delta_t_min\"\r\n />\r\n {' '}\r\n { formData.DELTA_T_MAX = event.target.value; render(); }}\r\n formLabel=\"delta_t_max\"\r\n />\r\n \r\n\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { color } from 'html2canvas/dist/types/css/types/color';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from 'styles/colors';\r\n\r\nconst defineLabelColor = (disabled) => {\r\n if (disabled) {\r\n return colors.Grey200;\r\n }\r\n return colors.Blue700;\r\n};\r\n\r\nexport const BaseSpan = `\r\n color: ${colors.Blue700};\r\n font-size: 0.75em;\r\n font-weight: bold;\r\n top: 8px;\r\n`;\r\n\r\nexport const Base = styled.input<{ suffixLength? }>(\r\n ({ suffixLength }) => `\r\n border: none;\r\n outline: none;\r\n min-height: 48px;\r\n font-size: 1em;\r\n border-radius: 5px;\r\n padding: 20px ${suffixLength ? `${suffixLength * 9}px` : '35px'} 10px 14px;\r\n color: ${colors.Black};\r\n width: 100%;\r\n border: 0.7px solid ${colors.GreyInputBorder};\r\n\r\n &:focus {\r\n color: ${colors.Black}\r\n }\r\n\r\n &::placeholder {\r\n font-size: 12px;\r\n color: ${colors.GreyInputPlaceholder};\r\n }\r\n ::-webkit-inner-spin-button{\r\n -webkit-appearance: none; \r\n margin: 0; \r\n }\r\n ::-webkit-outer-spin-button{\r\n -webkit-appearance: none; \r\n margin: 0; \r\n } \r\n`,\r\n);\r\n\r\nexport const Container = styled.div`\r\n position: relative;\r\n border-radius: 5px;\r\n`;\r\n\r\nexport const Label = styled.label<{ disabled, value, suffixLength?, noSuffixBorder? }>(\r\n ({\r\n disabled,\r\n value,\r\n }) => `\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n cursor: ${disabled ? 'not-allowed' : 'default'};\r\n span:first-of-type {\r\n color: ${defineLabelColor(disabled)};\r\n transition: 0.2s all ease-in-out;\r\n font-size: 1em;\r\n left: 15px;\r\n font-weight: bold;\r\n font-size: 12px;\r\n position: absolute;\r\n cursor: auto;\r\n ${value ? BaseSpan : 'top: calc(50% - 20px);'}\r\n }\r\n\r\n span:nth-child(3) {\r\n position: absolute;\r\n width: auto;\r\n padding: 5px;\r\n font-size: 12px;\r\n font-weight: 400;\r\n line-height: 1;\r\n color: #818181;\r\n right: 10px;\r\n top: calc(50% - 12px);\r\n border: 1px solid #ccc;\r\n white-space: nowrap;\r\n vertical-align: middle;\r\n border-radius: 5px;\r\n &:hover{\r\n background-color: #f8f8f8;\r\n }\r\n }\r\n\r\n &:focus-within {\r\n span:first-of-type {\r\n ${BaseSpan}\r\n }\r\n }\r\n `,\r\n);\r\n\r\nexport const TextInfo = styled.div<{status}>(({ status }) => `\r\n color: ${status ? colors.Green : colors.Red};\r\n display: block;\r\n margin: 5px;\r\n text-align: left;\r\n font-size: 0.75em;\r\n padding-top: 2px;\r\n`);\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 15px;\r\n height: 15px;\r\n cursor: pointer;\r\n position: relative;\r\n svg {\r\n width: 15px;\r\n height: 15px;\r\n }\r\n`;\r\n\r\nexport const TextInfoLoading = styled.div`\r\n color: ${colors.Grey300};\r\n display: block;\r\n margin: 5px;\r\n text-align: left;\r\n font-size: 0.75em;\r\n padding-top: 2px;\r\n`;\r\n","import {\r\n useContext,\r\n useState,\r\n} from 'react';\r\nimport { Flex } from 'reflexbox';\r\nimport { CheckDeviceIcon, PortDisabledIcon, PortEnableIcon } from '~/icons';\r\nimport { InputValidationContext } from '~/pages/ClientPanel/FormEditUtility';\r\nimport { Loader } from '../Loader';\r\nimport {\r\n Base,\r\n Container,\r\n Label,\r\n IconWrapper,\r\n TextInfo,\r\n TextInfoLoading,\r\n} from './styles';\r\nimport { t } from 'i18next';\r\n\r\nexport const InputWithValidation = (cProps: {\r\n label?: string;\r\n placeholder?: string;\r\n value: string;\r\n name?: string;\r\n disabled?: boolean;\r\n onChange?: any\r\n onEnterKey?: () => void;\r\n validateFunction: () => Promise;\r\n newDevice?: boolean;\r\n hasMachine?: boolean;\r\n}): JSX.Element => {\r\n const {\r\n disabled, label, name, onEnterKey, placeholder, onChange, validateFunction, newDevice, hasMachine, ...props\r\n } = cProps;\r\n const { value } = cProps;\r\n\r\n const onKeyPress = (e) => {\r\n if (e.nativeEvent && e.nativeEvent.keyCode === 13 && onEnterKey) {\r\n e.preventDefault(); // Ensure it is only this code that runs\r\n onEnterKey();\r\n }\r\n };\r\n\r\n const [loading, setLoading] = useState(false);\r\n const [status, setStatus] = useState(-1 as null|number|boolean);\r\n // @ts-ignore\r\n const { setAllowedMonitoring } = useContext(InputValidationContext);\r\n const validate = async () => {\r\n setLoading(true);\r\n setStatus(-1);\r\n const allow = await validateFunction();\r\n setAllowedMonitoring(!!allow);\r\n setStatus(allow);\r\n setLoading(false);\r\n };\r\n\r\n return (\r\n \r\n \r\n \r\n { !loading && status === true ? : null}\r\n {/* eslint-disable-next-line eqeqeq */}\r\n { !loading && (!!status) == false ? : null}\r\n {/* eslint-disable-next-line eqeqeq */}\r\n { !loading && ((!!status) == false || status === true)\r\n ? \r\n : null}\r\n \r\n {loading ? t('verificandoDispositivo') : ''}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const TextStatus = (props: {\r\n value: string,\r\n status: number | boolean | null,\r\n newDevice?: boolean\r\n hasMachine?: boolean\r\n\r\n}): JSX.Element => {\r\n const {\r\n status, value, newDevice, hasMachine,\r\n } = props;\r\n const textStatus = status === null ? t('dispositivoInexistente') : t('portasNaoDisponiveis');\r\n const textStatusOkDAM = newDevice ? t('dispositivoNovo') : t('dispositivoDisponivel');\r\n const textStatusNotOkDAM = hasMachine ? t('dispositivoAssociadoMaquina') : t('dispositivoNaoDisponivel');\r\n\r\n return (\r\n (\r\n value.startsWith('DAM')\r\n ? (\r\n \r\n {status && value.length === 12 ? textStatusOkDAM : textStatusNotOkDAM }\r\n \r\n )\r\n : (\r\n \r\n {status ? t('portasDisponiveis') : textStatus}\r\n \r\n )\r\n )\r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nimport { ExpandIcon } from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const IconWrapper = styled.div<{ disabled }>(({ disabled }) => `\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n width: 16px;\r\n height: 16px;\r\n ${disabled ? 'cursor: not-allowed;' : 'cursor: pointer;'}\r\n`);\r\n\r\nexport const SelectedContainer = styled.div`\r\n display: flex;\r\n align-items: center;\r\n justify-content: flex-start;\r\n padding: 10px;\r\n height: 25px;\r\n margin-top: 5px;\r\n min-width: 40%;\r\n max-width: 70%;\r\n border-radius: 5px;\r\n`;\r\n\r\nexport const Selected = styled.span`\r\n font-weight: bold;\r\n font-size: 0.75em;\r\n margin-left: 5px;\r\n color: ${colors.Blue300};\r\n`;\r\n\r\nexport const EmptyLabel = styled.div`\r\n height: 19px;\r\n`;\r\n\r\nexport const Wrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n height: 48px;\r\n`;\r\n\r\nexport const Arrow = styled(ExpandIcon)<{ isOpen: boolean }>`\r\n transform: rotate(${(props) => (props.isOpen ? '180' : '360')}deg);\r\n transition: all 0.2s;\r\n margin: 14px 16px 14px 5px;\r\n`;\r\n\r\nexport const Container = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n`;\r\n\r\nexport const Base = styled.div<{ error: string | undefined, disabled: boolean | undefined, isOpen: boolean, isSelected: boolean, onClick:() => void }>`\r\n box-sizing: border-box;\r\n position: relative;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n min-height: 34px;\r\n cursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\r\n border: ${(props) => {\r\n let borderProperty = '1px solid ';\r\n if (props.error) borderProperty += colors.Red;\r\n else props.isOpen ? borderProperty += colors.Blue700 : borderProperty += colors.GreyInputBorder;\r\n return `${borderProperty};`;\r\n }};\r\n border-radius: ${(props) => (props.isOpen ? '5px 5px 0px 0px' : '5px')};\r\n color: ${(props) => {\r\n if (props.disabled) return 'rgba(62, 71, 86, 0.2);';\r\n return props.isSelected ? '#000;' : 'rgba(62, 71, 86, 0.3);';\r\n }};\r\n`;\r\n\r\nexport const Label = styled.span<{ error: string | undefined, isSelected: boolean | undefined, isOpen: boolean, disabled: boolean | undefined }>(\r\n ({\r\n error, isSelected, isOpen, disabled,\r\n }) => `\r\n transition: all 0.2s;\r\n margin-left: 16px;\r\n font-size: 12px;\r\n position: absolute;\r\n font-weight: bold;\r\n top: 5px;\r\n color: ${error ? colors.Red : colors.Blue700};\r\n ${disabled ? `color: ${colors.Grey200};` : ''}\r\n ${(isOpen || isSelected)\r\n && `\r\n top: 2px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n `}\r\n`,\r\n);\r\n\r\nexport const SelectedLabel = styled.span<{ disabled }>(({ disabled }) => `\r\n font-size: 12px;\r\n margin-left: 16px;\r\n margin-bottom: -6px;\r\n margin-top: 7px;\r\n color: ${colors.Black};\r\n ${disabled ? `color: ${colors.Grey200};` : ''}\r\n`);\r\n\r\nexport const ListItem = styled.div<{ isSelected: boolean, associated: boolean }>`\r\n position: relative;\r\n height: 34px;\r\n padding: 0px 16px;\r\n display: flex;\r\n align-items: center;\r\n flex-direction: row;\r\n cursor: pointer;\r\n width: 100%;\r\n border-bottom: 1px solid ${colors.Grey300};\r\n\r\n &:hover {\r\n background-color: ${(props) => (props.isSelected ? '' : colors.Grey050)};\r\n }\r\n\r\n span {\r\n font-size: 0.875em;\r\n color: ${(props) => (props.isSelected || !props.associated ? colors.Grey400 : colors.Grey300)};\r\n }\r\n svg {\r\n padding-bottom: 2px;\r\n }\r\n`;\r\n\r\nexport const List = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n background-color: ${colors.White};\r\n min-height: 34px;\r\n position: absolute;\r\n top: 103%;\r\n width: 100%;\r\n z-index: 10;\r\n height: auto;\r\n max-height: 316px;\r\n overflow-y: scroll;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n\r\n ${ListItem} {\r\n &:last-child {\r\n border-radius: 0px 0px 8px 8px;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n border-bottom: none;\r\n }\r\n }\r\n`;\r\n\r\nexport const SideBar = styled.div<{ associated: string, isLast: boolean }>`\r\n width: 4px;\r\n height: 34px;\r\n background-color: ${(props) => (props.associated ? colors.Grey300 : colors.BlueSecondary)};\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n border-bottom-left-radius: ${(props) => props.isLast && '8px;'};\r\n`;\r\n\r\nexport const Error = styled.span`\r\n color: ${colors.Red};\r\n display: block;\r\n margin: 5px;\r\n text-align: left;\r\n font-size: 0.75em;\r\n height: 24px;\r\n`;\r\n","import { useState, useRef, useCallback } from 'react';\r\nimport { useOuterClickNotifier } from '../../hooks/useOuterClickNotifier';\r\nimport { EletricNetworkIcon, PortIcon } from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\nimport { t } from 'i18next';\r\n\r\nimport {\r\n EmptyLabel,\r\n Wrapper,\r\n Arrow,\r\n Container,\r\n Base,\r\n Label,\r\n SelectedLabel,\r\n ListItem,\r\n List,\r\n Error,\r\n SideBar,\r\n} from './styles';\r\n\r\ntype SelectProps = {\r\n label?: string;\r\n placeholder?: string;\r\n onSelect: (value: any) => any;\r\n options?: any;\r\n value?: any;\r\n error?: string;\r\n propLabel?: string;\r\n notNull?: boolean;\r\n disabled?: boolean;\r\n}\r\n\r\nexport const SelectDMTport = ({\r\n label, placeholder, onSelect, options, value, error, propLabel = 'label', notNull = false, disabled = undefined, ...props\r\n}: SelectProps): JSX.Element => {\r\n const innerRef = useRef(null);\r\n const [isOpen, setIsOpen] = useState(false);\r\n const clickOutsideCallback = useCallback((e) => setIsOpen(false), []);\r\n useOuterClickNotifier(clickOutsideCallback, innerRef);\r\n const toggle = () => setIsOpen(!isOpen);\r\n\r\n return (\r\n \r\n {} : toggle}>\r\n \r\n \r\n {\r\n !isOpen && !value && (\r\n
\r\n {placeholder}\r\n
\r\n )\r\n }\r\n {value ? {value[propLabel] || String(value)} : isOpen && }\r\n
\r\n \r\n \r\n {error && {typeof (error) === 'string' ? error : t('campoIncorreto')}}\r\n {isOpen && (\r\n \r\n {options.map((option, index) => {\r\n const isSelected = value ? (String(value) === String(option[propLabel]) || value[propLabel] === option[propLabel]) : false;\r\n const isLast = index === options.length - 1;\r\n return (\r\n {\r\n if (!option?.associated) {\r\n onSelect(option);\r\n setIsOpen(false);\r\n }\r\n }}\r\n >\r\n {(isSelected || option?.associated) && }\r\n {option[propLabel] || option}\r\n {\r\n option?.associated && (\r\n \r\n {option?.eletricCircuitId ? : }\r\n {option?.eletricCircuitId ? t('redeEletrica') : t('emUso')}\r\n \r\n )\r\n }\r\n \r\n );\r\n })}\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import {\r\n createContext, useEffect, useState,\r\n} from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Label, CustomInput, IconWrapper, ModalTitle3, LabelSwitch,\r\n} from './styles';\r\nimport {\r\n Button, Input,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport { Flex } from 'reflexbox';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { UtilityIcon } from '~/icons/Utility';\r\nimport {\r\n DatIcon, MonitoringIcon, PortIcon,\r\n} from '~/icons';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport { InputWithValidation } from '~/components/InputWithValidation';\r\nimport { SelectDMTport } from '~/components/SelectDmtPort';\r\nimport { t } from 'i18next';\r\n\r\nexport const InputValidationContext = createContext({});\r\n\r\nexport const addUnitToString = (str: string|null, unit: string) : string => (str ? `${str} ${unit}` : '');\r\nexport const propOrNullValue = (value) => (value || null);\r\nexport const getParamNumber = (param: string|null) => (param?.split(' ').length ? Number(param.split(' ')[0]) : null);\r\n\r\nexport const FormEditUtility = ({\r\n clientId, onSuccess, onCancel, utilityInfo, utilityType,\r\n}): JSX.Element => {\r\n const [state, render] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n brandList: [] as string[],\r\n hasMonitoring: !!utilityInfo?.DMT_CODE || !!utilityInfo?.DAL_CODE || !!utilityInfo?.DAM_ILLUMINATION_CODE,\r\n selectPortNow: !!utilityInfo?.PORT || (!!utilityInfo?.DMT_CODE && !!utilityInfo?.FEEDBACK),\r\n hasDatId: !!utilityInfo?.DAT_CODE,\r\n buttonDisabled: !utilityInfo?.DMT_CODE || !utilityInfo?.DAL_CODE || !utilityInfo?.DAM_ILLUMINATION_CODE,\r\n unitsOpt: [] as {value: number, name: string}[],\r\n portsOpt: [] as {label: string, associated: boolean, port: number, nobreakId?: number, illuminationId?: number}[],\r\n feedbackOpt: [] as {label: string, associated: boolean, port: number, illuminationId?: number}[],\r\n applicationOpts: [t('nobreak'), t('iluminacao')].map((e) => ({ name: e, value: e })) as { name: string, value: string }[],\r\n newDevice: false as boolean,\r\n hasMachine: false as boolean,\r\n });\r\n const fetchData = async () => {\r\n try {\r\n const data = await apiCall('/clients/get-units-list', { CLIENT_ID: clientId });\r\n const opts: {value: number, name: string}[] = [];\r\n for (const unit of data) {\r\n opts.push({ value: unit.UNIT_ID, name: unit.UNIT_NAME });\r\n }\r\n state.unitsOpt = opts;\r\n if (formData.MONITORING_DEVICE) {\r\n const portsInfo = await getPortsOpts();\r\n state.portsOpt = portsInfo.ports;\r\n state.feedbackOpt = portsInfo.feedbacks;\r\n }\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n };\r\n\r\n const getDmtPortsOpts = async () => {\r\n const ports = await apiCall('/dmt/get-dmt-ports-info', { DMT_CODE: formData.MONITORING_DEVICE, CLIENT_ID: clientId, NEW_UTILITY_TYPE: utilityType === t('nobreak') ? 'Nobreak' : 'Illumination' });\r\n return {\r\n ports: ports.ports.map((port) => { if (utilityInfo?.ID && port.nobreakId === utilityInfo.ID) { port.associated = false; } return port; }),\r\n feedbacks: [],\r\n };\r\n };\r\n\r\n const getDalPortsOpts = async () => {\r\n const ports = await apiCall('/dal/get-dal-ports-info', { DAL_CODE: formData.MONITORING_DEVICE, CLIENT_ID: clientId });\r\n return {\r\n ports: ports.ports.map((port) => { if (utilityInfo && port.illuminationId === utilityInfo.ID) { port.associated = false; } return port; }),\r\n feedbacks: ports.feedbacks.map((fb) => { if (utilityInfo && fb.illuminationId === utilityInfo.ID) { fb.associated = false; } return { ...fb, label: 'F'.concat(fb.label) }; }),\r\n };\r\n };\r\n\r\n async function getPortsOpts() {\r\n if (utilityType === t('nobreak') || (utilityType === t('iluminacao') && formData.MONITORING_DEVICE.startsWith('DMT'))) {\r\n const ports = await getDmtPortsOpts();\r\n return ports;\r\n }\r\n if (utilityType === t('iluminacao') && formData.MONITORING_DEVICE.startsWith('DAL')) {\r\n const ports = await getDalPortsOpts();\r\n return ports;\r\n }\r\n\r\n return { ports: [], feedbacks: [] };\r\n }\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n const propOrEmpty = (prop) => (prop || '');\r\n function getFormDataInitialState() {\r\n const portProp = (utilityInfo?.DMT_CODE && utilityInfo?.FEEDBACK) ? utilityInfo?.FEEDBACK : utilityInfo.PORT;\r\n const labelProp = (utilityInfo?.DMT_CODE && utilityInfo?.FEEDBACK) ? 'F'.concat(String(utilityInfo.FEEDBACK)) : String(utilityInfo.PORT);\r\n const hasPort = utilityInfo?.PORT || (utilityInfo?.DMT_CODE && utilityInfo?.FEEDBACK);\r\n return {\r\n ID: (utilityInfo?.ID) || null,\r\n NAME: propOrEmpty(utilityInfo?.NAME),\r\n UNIT: propOrEmpty(utilityInfo?.UNIT_ID),\r\n APPLICATION: propOrEmpty(utilityType),\r\n INSTALLATION_DATA: (utilityInfo?.INSTALLATION_DATE) ? utilityInfo.INSTALLATION_DATE.substring(0, 10) : '' as any,\r\n MANUFACTURER: propOrEmpty(utilityInfo?.MANUFACTURER),\r\n MODEL: propOrEmpty(utilityInfo?.MODEL),\r\n INPUT_VOLTAGE: addUnitToString(utilityInfo?.INPUT_VOLTAGE, 'VAC') as any,\r\n OUTPUT_VOLTAGE: addUnitToString(utilityInfo?.OUTPUT_VOLTAGE, 'VAC') as any,\r\n NOMINAL_POTENTIAL: propOrEmpty(utilityInfo?.NOMINAL_POTENTIAL),\r\n BATTERY_LIFE: propOrEmpty(utilityInfo?.NOMINAL_BATTERY_LIFE),\r\n INPUT_ELECTRIC_CURRENT: propOrEmpty(utilityInfo?.INPUT_ELECTRIC_CURRENT),\r\n OUTPUT_ELECTRIC_CURRENT: propOrEmpty(utilityInfo?.OUTPUT_ELECTRIC_CURRENT),\r\n NOMINAL_BATTERY_CAPACITY: propOrEmpty(utilityInfo?.NOMINAL_BATTERY_CAPACITY),\r\n MONITORING_DEVICE: propOrEmpty(utilityInfo?.DMT_CODE || utilityInfo?.DAL_CODE || utilityInfo?.DAM_ILLUMINATION_CODE),\r\n DAT_ID: propOrEmpty(utilityInfo?.DAT_CODE),\r\n PORT: hasPort ? { label: labelProp, port: portProp } : '' as any,\r\n FEEDBACK: (utilityInfo?.FEEDBACK) ? { label: 'F'.concat(String(utilityInfo.FEEDBACK)), port: utilityInfo.FEEDBACK } : '' as any,\r\n GRID_VOLTAGE: addUnitToString(utilityInfo?.GRID_VOLTAGE, 'VAC') as any,\r\n GRID_CURRENT: propOrEmpty(utilityInfo?.GRID_CURRENT),\r\n };\r\n }\r\n\r\n const [allowedMonitoring, setAllowedMonitoring] = useState(!!utilityInfo?.DMT_CODE || !!utilityInfo?.DAL_CODE || !!utilityInfo?.DAM_ILLUMINATION_CODE);\r\n const [formData] = useState(getFormDataInitialState());\r\n const isEdit = !!formData.ID;\r\n\r\n const isLessThanZero = (number) => (number && number < 0);\r\n\r\n function checkErrorNobreakFormData() {\r\n if (!formData.NAME) { toast.error(t('necessarioNomeUtilitario')); state.submitting = false; return true; }\r\n if (!formData.APPLICATION) { toast.error(t('necessarioCampoAplicacao')); state.submitting = false; return true; }\r\n if (!formData.UNIT) { toast.error(t('necessarioCampoUnidade')); state.submitting = false; return true; }\r\n if (state.hasMonitoring && !formData.MONITORING_DEVICE && !allowedMonitoring) { toast.error(t('necessarioDispositivoDeMonitoramento')); state.submitting = false; return true; }\r\n if (state.hasMonitoring && allowedMonitoring && state.selectPortNow && !formData.PORT && !formData.PORT.port) { toast.error(t('necessarioCampoPortaDmt')); state.submitting = false; return true; }\r\n if (isLessThanZero(formData.NOMINAL_POTENTIAL)) { toast.error(t('necessarioNumeroPositivoPotencia')); state.submitting = false; return true; }\r\n if (isLessThanZero(formData.BATTERY_LIFE)) { toast.error(t('necessarioNumeroPositivoAutonomia')); state.submitting = false; return true; }\r\n if (isLessThanZero(formData.INPUT_ELECTRIC_CURRENT)) { toast.error(t('necessarioNumeroPositivoCorrenteEletricaDeEntrada')); state.submitting = false; return true; }\r\n if (isLessThanZero(formData.OUTPUT_ELECTRIC_CURRENT)) { toast.error(t('necessarioNumeroPositivoCorrenteEletricaDeSaida')); state.submitting = false; return true; }\r\n if (isLessThanZero(formData.NOMINAL_BATTERY_CAPACITY)) { toast.error(t('necessarioNumeroPositivoCapacidadeNominalDaBateria')); state.submitting = false; return true; }\r\n return false;\r\n }\r\n\r\n function getNobreakReqData() {\r\n return {\r\n CLIENT_ID: clientId,\r\n ID: propOrNullValue(formData.ID),\r\n UNIT_ID: propOrNullValue(formData.UNIT),\r\n DMT_CODE: propOrNullValue(state.hasMonitoring && formData.MONITORING_DEVICE),\r\n DAT_CODE: propOrNullValue(state.hasDatId && formData.DAT_ID),\r\n NAME: propOrNullValue(formData.NAME),\r\n MANUFACTURER: propOrNullValue(formData.MANUFACTURER),\r\n MODEL: propOrNullValue(formData.MODEL),\r\n INPUT_VOLTAGE: getParamNumber(formData.INPUT_VOLTAGE),\r\n OUTPUT_VOLTAGE: getParamNumber(formData.OUTPUT_VOLTAGE),\r\n NOMINAL_POTENTIAL: propOrNullValue(formData.NOMINAL_POTENTIAL),\r\n NOMINAL_BATTERY_LIFE: propOrNullValue(formData.BATTERY_LIFE),\r\n INPUT_ELECTRIC_CURRENT: propOrNullValue(formData.INPUT_ELECTRIC_CURRENT),\r\n OUTPUT_ELECTRIC_CURRENT: propOrNullValue(formData.OUTPUT_ELECTRIC_CURRENT),\r\n NOMINAL_BATTERY_CAPACITY: propOrNullValue(formData.NOMINAL_BATTERY_CAPACITY),\r\n INSTALLATION_DATE: propOrNullValue(formData.INSTALLATION_DATA),\r\n PORT: propOrNullValue(state.selectPortNow && formData.PORT && formData.PORT.port),\r\n };\r\n }\r\n\r\n async function confirmNobreak() {\r\n let response;\r\n let action: string|null = null;\r\n const reqData = getNobreakReqData();\r\n\r\n const error = checkErrorNobreakFormData();\r\n if (error) return;\r\n\r\n if (isEdit) {\r\n response = await apiCall('/dmt/set-dmt-nobreak', reqData);\r\n action = 'edit';\r\n } else {\r\n response = await apiCall('/dmt/set-dmt-nobreak', reqData);\r\n action = 'new';\r\n }\r\n return { response, action };\r\n }\r\n\r\n function checkErrorIllumFormData() {\r\n if (!formData.NAME) { toast.error(t('necessarioNomeUtilitario')); state.submitting = false; return true; }\r\n if (!formData.APPLICATION) { toast.error(t('necessarioCampoAplicacao')); state.submitting = false; return true; }\r\n if (!formData.UNIT) { toast.error(t('necessarioCampoUnidade')); state.submitting = false; return true; }\r\n if (state.hasMonitoring && !formData.MONITORING_DEVICE && !allowedMonitoring) { toast.error(t('necessarioDispositivoDeAutomacao')); state.submitting = false; return true; }\r\n if (state.hasMonitoring && allowedMonitoring && state.selectPortNow && !formData.PORT && !formData.PORT.port) { toast.error(t('necessarioCampoPortaDal')); state.submitting = false; return true; }\r\n return false;\r\n }\r\n\r\n const propOrNull = (prop) => (prop || null);\r\n async function confirmIllumination() {\r\n let response;\r\n let action: string|null = null;\r\n\r\n const hasDevice = state.hasMonitoring && formData.MONITORING_DEVICE;\r\n const hasDmt = hasDevice && formData.MONITORING_DEVICE.startsWith('DMT');\r\n const hasDal = hasDevice && formData.MONITORING_DEVICE.startsWith('DAL');\r\n const hasDam = hasDevice && formData.MONITORING_DEVICE.startsWith('DAM');\r\n const port = state.selectPortNow && formData.PORT && formData.PORT.port;\r\n const feedback = state.selectPortNow && formData.FEEDBACK && formData.FEEDBACK.port;\r\n const gridVoltageSplitted = formData.GRID_VOLTAGE?.split(' ');\r\n\r\n const reqData = {\r\n CLIENT_ID: clientId,\r\n ID: propOrNull(formData.ID),\r\n UNIT_ID: propOrNull(formData.UNIT),\r\n DAL_CODE: hasDal ? formData.MONITORING_DEVICE : null,\r\n DMT_CODE: hasDmt ? formData.MONITORING_DEVICE : null,\r\n DAM_ILLUMINATION_CODE: hasDam ? formData.MONITORING_DEVICE : null,\r\n NAME: propOrNull(formData.NAME),\r\n GRID_VOLTAGE: gridVoltageSplitted.length ? Number(gridVoltageSplitted[0]) : null,\r\n GRID_CURRENT: propOrNull(formData.GRID_CURRENT),\r\n PORT: propOrNull(port),\r\n FEEDBACK: propOrNull(feedback),\r\n };\r\n\r\n const error = checkErrorIllumFormData();\r\n if (error) return;\r\n\r\n if (reqData.DMT_CODE) {\r\n response = await apiCall('/dmt/set-dmt-illumination', reqData);\r\n }\r\n else if (reqData.DAL_CODE) {\r\n response = await apiCall('/dal/set-dal-illumination', reqData);\r\n }\r\n else {\r\n response = await apiCall('/dam/set-dam-illumination', reqData);\r\n }\r\n\r\n action = isEdit ? 'edit' : 'new';\r\n\r\n return { response, action };\r\n }\r\n\r\n async function confirm() {\r\n let response;\r\n let action: string|null = null;\r\n try {\r\n state.submitting = true; render();\r\n if (formData.APPLICATION === t('nobreak')) {\r\n const result = await confirmNobreak();\r\n response = result?.response;\r\n action = result?.action ?? null;\r\n }\r\n\r\n if (formData.APPLICATION === t('iluminacao')) {\r\n const result = await confirmIllumination();\r\n response = result?.response;\r\n action = result?.action ?? null;\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n if (formData.APPLICATION === t('nobreak')) {\r\n toast.error(t('houveErroVerifiqueUnidade'));\r\n } else {\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n state.submitting = false; render();\r\n if (response && action) onSuccess({ item: response, action });\r\n }\r\n\r\n function checkMonitoring() {\r\n if (utilityInfo && utilityInfo.DMT_CODE === formData.MONITORING_DEVICE) {\r\n setAllowedMonitoring(true);\r\n state.buttonDisabled = false;\r\n } else if ((!state.hasMonitoring) || (state.hasMonitoring && allowedMonitoring && !state.selectPortNow) || (state.hasMonitoring && allowedMonitoring && state.selectPortNow && formData.PORT)) {\r\n state.buttonDisabled = false;\r\n } else {\r\n state.buttonDisabled = true;\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n (async function () {\r\n if (formData.MONITORING_DEVICE && state.selectPortNow) {\r\n const portsInfo = await getPortsOpts();\r\n state.portsOpt = portsInfo.ports;\r\n state.feedbackOpt = portsInfo.feedbacks;\r\n }\r\n if (!allowedMonitoring) {\r\n checkMonitoring();\r\n } else if (state.hasMonitoring && state.selectPortNow) {\r\n if (formData.MONITORING_DEVICE) {\r\n const portsInfo = await getPortsOpts();\r\n state.portsOpt = portsInfo.ports;\r\n state.feedbackOpt = portsInfo.feedbacks;\r\n }\r\n state.buttonDisabled = !(formData.MONITORING_DEVICE && formData.PORT);\r\n } else {\r\n state.buttonDisabled = false;\r\n }\r\n render();\r\n }());\r\n }, [allowedMonitoring, formData.MONITORING_DEVICE, formData.PORT, state.hasMonitoring, state.selectPortNow]);\r\n\r\n const validateMonitoringDmtUtility = async () : Promise => {\r\n try {\r\n const ans = await apiCall('/dmt/get-dmt-ports-info', { DMT_CODE: formData.MONITORING_DEVICE, CLIENT_ID: clientId, NEW_UTILITY_TYPE: formData.APPLICATION === t('nobreak') ? 'Nobreak' : 'Illumination' });\r\n if (utilityInfo && utilityInfo.DMT_CODE === formData.MONITORING_DEVICE && utilityInfo.ID) {\r\n return true;\r\n }\r\n return ans.freePorts;\r\n } catch (err) {\r\n return null;\r\n }\r\n };\r\n\r\n const validateMonitoringIllumination = async () : Promise => {\r\n try {\r\n const ans = await apiCall('/dal/get-dal-ports-info', { DAL_CODE: formData.MONITORING_DEVICE, CLIENT_ID: clientId });\r\n if (utilityInfo && utilityInfo.DAL_CODE === formData.MONITORING_DEVICE && utilityInfo.ID) {\r\n return true;\r\n }\r\n return ans.freePorts;\r\n } catch (err) {\r\n return null;\r\n }\r\n };\r\n\r\n const validateMonitoringDamIlluminationUtility = async () : Promise => {\r\n try {\r\n const ans = await apiCall('/dam/get-dam-illumination-validation', { DAM_ILLUMINATION_CODE: formData.MONITORING_DEVICE, CLIENT_ID: clientId, UNIT_ID: formData.UNIT });\r\n if (utilityInfo && utilityInfo.DAM_ILLUMINATION_CODE === formData.MONITORING_DEVICE && utilityInfo.ID) {\r\n return true;\r\n }\r\n state.newDevice = ans.newDevice;\r\n state.hasMachine = ans.hasMachine;\r\n render();\r\n return ans.freeDevice;\r\n } catch (err) {\r\n return null;\r\n }\r\n };\r\n\r\n const notValidate = async () : Promise => null;\r\n\r\n const handleValidateFunction = async () : Promise => {\r\n if (formData.MONITORING_DEVICE.startsWith('DAM')) {\r\n return validateMonitoringDamIlluminationUtility();\r\n }\r\n if (formData.MONITORING_DEVICE.startsWith('DMT')) {\r\n return validateMonitoringDmtUtility();\r\n }\r\n if (formData.MONITORING_DEVICE.startsWith('DAL')) {\r\n return validateMonitoringIllumination();\r\n }\r\n return notValidate();\r\n };\r\n\r\n const getDeviceFormLabels = (application) => {\r\n if (application === t('nobreak')) {\r\n return {\r\n deviceCode: 'DMT_CODE',\r\n deviceIdText: t('digiteIdDmt'),\r\n devicePortText: t('feedbackDoDmt'),\r\n monitoringText: t('dispositivoDeMonitoramento'),\r\n validateFunction: validateMonitoringDmtUtility,\r\n };\r\n }\r\n return {\r\n deviceCode: 'DAL_CODE',\r\n deviceIdText: t('digiteIdDalDmtDam'),\r\n devicePortText: !formData.MONITORING_DEVICE.startsWith('DMT') ? t('portaDoDal') : t('feedbackDoDmt'),\r\n monitoringText: t('dispositivoDeAutomacao'),\r\n validateFunction: handleValidateFunction,\r\n };\r\n };\r\n\r\n const monitoringDeviceForm = () => {\r\n const labels = getDeviceFormLabels(formData.APPLICATION);\r\n\r\n if (labels.deviceCode) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('possuiMonitoramento')}\r\n \r\n
\r\n {t('nao')}\r\n { state.hasMonitoring = !state.hasMonitoring; render(); formData.PORT = (state.hasMonitoring && utilityInfo && utilityInfo[labels.deviceCode] === formData.MONITORING_DEVICE && utilityInfo.PORT) || ''; render(); }}\r\n style={{ marginLeft: '8px', marginRight: '8px' }}\r\n />\r\n {t('sim')}\r\n
\r\n
\r\n
\r\n \r\n { formData.MONITORING_DEVICE = event.target.value; setAllowedMonitoring(false); render(); formData.PORT = (state.hasMonitoring && utilityInfo && utilityInfo[labels.deviceCode] === formData.MONITORING_DEVICE && utilityInfo.PORT) || ''; render(); }}\r\n disabled={!state.hasMonitoring}\r\n validateFunction={labels.validateFunction}\r\n newDevice={state.newDevice}\r\n hasMachine={state.hasMachine}\r\n />\r\n \r\n
\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('portaUtilizada')}\r\n \r\n \r\n {t('selecionarDepois')}\r\n {\r\n state.selectPortNow = !state.selectPortNow;\r\n formData.PORT = (state.selectPortNow && utilityInfo && utilityInfo[labels.deviceCode] === formData.MONITORING_DEVICE && utilityInfo.PORT) || '';\r\n formData.FEEDBACK = (state.selectPortNow && utilityInfo && utilityInfo[labels.deviceCode] === formData.MONITORING_DEVICE && utilityInfo.FEEDBACK) || '';\r\n render();\r\n }}\r\n style={{ marginLeft: '8px', marginRight: '8px' }}\r\n />\r\n {t('selecionarAgora')}\r\n \r\n \r\n
\r\n {\r\n formData.PORT = item;\r\n render();\r\n }}\r\n disabled={!state.selectPortNow}\r\n />\r\n
\r\n {(labels.deviceCode === 'DAL_CODE' && !formData.MONITORING_DEVICE.startsWith('DMT')) && (\r\n
\r\n {\r\n formData.FEEDBACK = item;\r\n render();\r\n }}\r\n disabled={!state.selectPortNow}\r\n />\r\n
\r\n )}\r\n {(!allowedMonitoring || !state.hasMonitoring || formData.MONITORING_DEVICE.startsWith('DAM')) && (\r\n
\r\n )}\r\n\r\n \r\n \r\n );\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {t('novoUtilitario')}\r\n \r\n {formData.ID && (\r\n \r\n ID: \r\n {formData.ID}\r\n \r\n )}\r\n \r\n { formData.NAME = event.target.value; render(); }}\r\n />\r\n
\r\n \r\n
\r\n \r\n { formData.UNIT = item; render(); }}\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecioneUnidade')}\r\n closeOnSelect={false}\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n { formData.APPLICATION = item; render(); }}\r\n placeholder=\"Selecione a aplicação\"\r\n closeOnSelect={false}\r\n disabled={utilityType}\r\n />\r\n
\r\n
\r\n
\r\n {' '}\r\n {formData.APPLICATION === t('nobreak') && (\r\n
\r\n { formData.INSTALLATION_DATA = event.target.value; render(); }}\r\n />\r\n
\r\n )}\r\n
\r\n {formData.APPLICATION === t('nobreak') && (\r\n <>\r\n
\r\n\r\n \r\n
\r\n { formData.MANUFACTURER = event.target.value; render(); }}\r\n />\r\n
\r\n {' '}\r\n
\r\n { formData.MODEL = event.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n ({ name: e, value: e }))}\r\n value={formData.INPUT_VOLTAGE}\r\n onChange={(item) => { formData.INPUT_VOLTAGE = item; render(); }}\r\n placeholder={t('selecioneTensao')}\r\n closeOnSelect={false}\r\n />\r\n
\r\n
\r\n
\r\n {' '}\r\n
\r\n \r\n
\r\n \r\n ({ name: e, value: e }))}\r\n value={formData.OUTPUT_VOLTAGE}\r\n onChange={(item) => { formData.OUTPUT_VOLTAGE = item; render(); }}\r\n placeholder={t('selecioneTensao')}\r\n closeOnSelect={false}\r\n />\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n { formData.NOMINAL_POTENTIAL = event.target.value; render(); }}\r\n suffix=\"VA\"\r\n noSuffixBorder\r\n />\r\n
\r\n {' '}\r\n
\r\n { formData.BATTERY_LIFE = event.target.value; render(); }}\r\n suffix=\"min\"\r\n noSuffixBorder\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n { formData.INPUT_ELECTRIC_CURRENT = event.target.value; render(); }}\r\n suffix=\"A\"\r\n noSuffixBorder\r\n />\r\n
\r\n {' '}\r\n
\r\n { formData.OUTPUT_ELECTRIC_CURRENT = event.target.value; render(); }}\r\n suffix=\"A\"\r\n noSuffixBorder\r\n />\r\n
\r\n
\r\n
\r\n \r\n
\r\n { formData.NOMINAL_BATTERY_CAPACITY = event.target.value; render(); }}\r\n suffix=\"Ah\"\r\n noSuffixBorder\r\n />\r\n
\r\n {' '}\r\n
\r\n
\r\n\r\n {monitoringDeviceForm()}\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('possuiDatId')}\r\n \r\n
\r\n {t('nao')}\r\n { state.hasDatId = !state.hasDatId; render(); formData.DAT_ID = (state.hasDatId && utilityInfo && utilityInfo.DAT_ID) || ''; render(); }}\r\n style={{ marginLeft: '8px', marginRight: '8px' }}\r\n />\r\n {t('sim')}\r\n
\r\n
\r\n
\r\n { formData.DAT_ID = event.target.value; render(); }}\r\n disabled={!state.hasDatId}\r\n />\r\n
\r\n
\r\n \r\n )}\r\n {formData.APPLICATION === t('iluminacao') && (\r\n <>\r\n
\r\n\r\n \r\n
\r\n \r\n
\r\n \r\n ({ name: e, value: e }))}\r\n value={formData.GRID_VOLTAGE}\r\n onChange={(item) => { formData.GRID_VOLTAGE = item; render(); }}\r\n placeholder={t('selecioneTensao')}\r\n closeOnSelect={false}\r\n />\r\n
\r\n
\r\n
\r\n {' '}\r\n
\r\n {\r\n const value = Number(event.target.value);\r\n if (!Number.isNaN(value) && value >= 0) {\r\n formData.GRID_CURRENT = event.target.value;\r\n render();\r\n }\r\n }}\r\n suffix=\"A\"\r\n />\r\n
\r\n
\r\n\r\n
\r\n\r\n {monitoringDeviceForm()}\r\n\r\n
\r\n \r\n )}\r\n
\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import {\r\n ModalTitle3, IconWrapperView, CloseBtn,\r\n} from './styles';\r\nimport {\r\n Button,\r\n} from 'components';\r\nimport { Flex } from 'reflexbox';\r\nimport { UtilityIcon } from '~/icons/Utility';\r\nimport {\r\n BoxIcon, MonitoringIcon, PortIcon,\r\n} from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport i18n from '../../i18n/index';\r\nimport { t } from 'i18next';\r\nimport { toast } from 'react-toastify';\r\nimport { useState, useEffect } from 'react';\r\nimport { apiCall } from '~/providers';\r\nimport { verifyInfoAdditionalParameters } from '~/helpers/additionalParameters';\r\n\r\nconst sliceStr = (str, len) => (str.length > len ? `${str.substring(0, len)}...` : str);\r\nconst addUnit = (str, unit) => (str ? `${str} ${unit}` : '-');\r\n\r\nconst formatUtilityInfo = (utilityInfo) => {\r\n const feedBack = utilityInfo?.FEEDBACK ? `F${utilityInfo?.FEEDBACK}` : utilityInfo?.FEEDBACK;\r\n const language = i18n.language === 'pt' ? 'pt-BR' : 'en';\r\n return {\r\n nobreakId: utilityInfo?.ID,\r\n name: utilityInfo?.NAME,\r\n devicePort: utilityInfo?.DMT_CODE ? feedBack : utilityInfo?.PORT,\r\n installationData: utilityInfo?.INSTALLATION_DATE ? new Date(utilityInfo.INSTALLATION_DATE).toLocaleDateString(language) : '-',\r\n unitName: utilityInfo?.UNIT_NAME ? sliceStr(utilityInfo.UNIT_NAME, 40) : '-',\r\n manufacturer: utilityInfo?.MANUFACTURER ? sliceStr(utilityInfo.MANUFACTURER, 25) : '-',\r\n model: utilityInfo?.MODEL ? sliceStr(utilityInfo.MODEL, 25) : '-',\r\n application: utilityInfo?.APPLICATION,\r\n inputVoltage: addUnit(utilityInfo?.INPUT_VOLTAGE, 'VAC'),\r\n outputVoltage: addUnit(utilityInfo?.OUTPUT_VOLTAGE, 'VAC'),\r\n gridCurrent: utilityInfo?.GRID_CURRENT ? (\r\n \r\n {utilityInfo.GRID_CURRENT}\r\n  A\r\n \r\n ) : '-',\r\n gridVoltage: utilityInfo?.GRID_VOLTAGE ? (\r\n \r\n {utilityInfo.GRID_VOLTAGE}\r\n  VAC\r\n \r\n ) : '-',\r\n deviceCode: (utilityInfo?.DMT_CODE || utilityInfo?.DAL_CODE || utilityInfo?.DAM_ILLUMINATION_CODE),\r\n nominalPotential: addUnit(utilityInfo?.NOMINAL_POTENTIAL, 'VA'),\r\n nominalBatteryLife: addUnit(utilityInfo?.NOMINAL_BATTERY_LIFE, 'min'),\r\n inputElectricCurrent: addUnit(utilityInfo?.INPUT_ELECTRIC_CURRENT, 'A'),\r\n outputElectricCurrent: addUnit(utilityInfo?.OUTPUT_ELECTRIC_CURRENT, 'A'),\r\n nominalBatteryCapacity: addUnit(utilityInfo?.NOMINAL_BATTERY_CAPACITY, 'Ah'),\r\n dmtCode: utilityInfo?.DMT_CODE,\r\n nobreakPort: utilityInfo?.PORT,\r\n datCode: utilityInfo?.DAT_CODE,\r\n };\r\n};\r\n\r\nexport const ViewUtility = ({\r\n onClickEdit, onCancel, utilityInfo, utilityType,\r\n}): JSX.Element => {\r\n const [additionalParameters, setAdditionalParameters] = useState<{ COLUMN_NAME: string; COLUMN_VALUE: string; }[]>([]);\r\n const utilityValues = formatUtilityInfo(utilityInfo);\r\n\r\n async function getNobreakAdditionalParameters(NOBREAK_ID) {\r\n try {\r\n const parameters = await apiCall('/dmt/get-nobreak-additional-parameters', { NOBREAK_ID });\r\n setAdditionalParameters(parameters);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n utilityType === 'Nobreak' && getNobreakAdditionalParameters(utilityValues.nobreakId);\r\n }, []);\r\n\r\n return (\r\n
\r\n \r\n {t('visualizarUtilitario')}\r\n
\r\n \r\n \r\n \r\n \r\n {utilityValues.name || '-'}\r\n \r\n
\r\n\r\n \r\n \r\n \r\n {t('unidade')}\r\n {utilityValues.unitName}\r\n \r\n \r\n {t('aplicacao')}\r\n {utilityValues.application || '-'}\r\n \r\n {utilityType === t('nobreak') && (\r\n \r\n {t('dataInstalacao')}\r\n {utilityValues.installationData}\r\n \r\n )}\r\n \r\n
\r\n\r\n {utilityType === t('nobreak') && (\r\n \r\n \r\n {t('fabricante')}\r\n {utilityValues.manufacturer}\r\n \r\n \r\n {t('modelo')}\r\n {utilityValues.model}\r\n \r\n \r\n {t('tensaoDeEntrada')}\r\n {utilityValues.inputVoltage}\r\n \r\n \r\n {t('tensaoDeSaida')}\r\n {utilityValues.outputVoltage}\r\n \r\n \r\n )}\r\n {utilityType === t('iluminacao') && (\r\n \r\n \r\n {t('tensaoDaRede')}\r\n {utilityValues.gridVoltage}\r\n \r\n \r\n {t('correnteDaRede')}\r\n {utilityValues.gridCurrent}\r\n \r\n \r\n )}\r\n
\r\n\r\n {utilityType === t('nobreak') && (\r\n \r\n \r\n {t('potenciaNominal')}\r\n {utilityValues.nominalPotential}\r\n \r\n \r\n {t('autonomiaNominalDaBateriaInterna')}\r\n {utilityValues.nominalBatteryLife}\r\n \r\n \r\n )}\r\n\r\n {utilityType === t('nobreak') && (\r\n \r\n \r\n {t('correnteEletricaDeEntrada')}\r\n {utilityValues.inputElectricCurrent}\r\n \r\n \r\n {t('correnteEletricaDeSaida')}\r\n {utilityValues.outputElectricCurrent}\r\n \r\n \r\n )}\r\n {utilityType === t('nobreak') && (\r\n \r\n \r\n {t('capacidadeNominalDaBateria')}\r\n {utilityValues.nominalBatteryCapacity}\r\n \r\n \r\n )}\r\n\r\n \r\n
\r\n\r\n {utilityType === t('nobreak') && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('monitoramento')}\r\n {utilityValues.dmtCode || '-'}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('portaDoDmt')}\r\n {utilityValues.nobreakPort || '-'}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n DAT ID\r\n {utilityValues.datCode || '-'}\r\n \r\n \r\n \r\n \r\n \r\n {additionalParameters.length > 0 && verifyInfoAdditionalParameters(additionalParameters, true)}\r\n \r\n \r\n \r\n )}\r\n\r\n {utilityType === t('iluminacao') && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('dispositivo')}\r\n {utilityValues.deviceCode || '-'}\r\n \r\n \r\n {\r\n utilityValues.deviceCode && !utilityValues.deviceCode.startsWith('DAM') && (\r\n \r\n \r\n \r\n \r\n \r\n {utilityInfo?.DMT_CODE ? t('feedbackDoDmt') : t('portaDoDal')}\r\n { utilityValues.devicePort || '-'}\r\n \r\n \r\n )\r\n }\r\n \r\n )}\r\n \r\n\r\n
\r\n {t('botaoFechar')}\r\n {/* eslint-disable-next-line react/jsx-no-bind */}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { useState } from 'react';\r\n\r\nimport { useHistory } from 'react-router-dom';\r\n\r\nimport { Header } from '../Analysis/Header';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nexport const ClientPanelLayout = (): JSX.Element => {\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n const links = [\r\n {\r\n link: '/painel/client-painel',\r\n title: 'Painel',\r\n },\r\n ];\r\n\r\n if ((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller && profile.permissions.CLIENT_MANAGE.includes(145)) {\r\n links.push({\r\n link: '/painel/projeto-bb/kpis',\r\n prefix: '/painel/projeto-bb/',\r\n title: 'Informações do Projeto',\r\n });\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n \r\n );\r\n};\r\n","import { useState, useEffect, useRef } from 'react';\r\nimport moment from 'moment';\r\nimport { Link, useHistory } from 'react-router-dom';\r\nimport { CSVLink } from 'react-csv';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport { toast } from 'react-toastify';\r\nimport { SingleDatePicker } from 'react-dates';\r\nimport i18n from '~/i18n';\r\nimport {\r\n ModalTitle, ModalTitleContainer, ModalSection, MobileWrapper, Container, ModalDesktop, SeeAssociationGroups, SimpleButton, SectionContainer, IconWrapper2,\r\n Text,\r\n ContentDate,\r\n Label,\r\n StyledCalendarIcon,\r\n BtnExport,\r\n ExportWorksheet,\r\n ContentTab,\r\n StyledList,\r\n StyledItem,\r\n StyledName,\r\n StyledLink,\r\n} from './styles';\r\nimport {\r\n Loader,\r\n ModalWindow,\r\n NewTable,\r\n ActionButton,\r\n Checkbox,\r\n LayerBackgroundModal,\r\n Card,\r\n Select,\r\n} from 'components';\r\nimport { AccordionV2 } from 'components/Accordion';\r\nimport { getDaySched } from 'helpers/scheduleData';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport {\r\n EditIcon, CloseIcon, OpenEyeIcon, DeleteOutlineIcon,\r\n} from 'icons';\r\nimport { apiCall, ApiParams, ApiResps } from 'providers';\r\nimport { FullProg_v4 } from 'providers/types';\r\nimport { colors } from 'styles/colors';\r\nimport { FormAssociateDevs } from './FormAssociateDevs';\r\nimport { FormEditClass } from './FormEditClass';\r\nimport { FormEditDut } from './FormEditDut';\r\nimport { FormEditGroup } from './FormEditGroup';\r\nimport { FormEditRoomType } from './FormEditRoomType';\r\nimport { FormEditUnit } from './FormEditUnit';\r\nimport { FormEditModel } from './FormEditModel';\r\nimport { FormEditAssociation } from './FormEditAssociation';\r\nimport { TableClasses } from './Tables/TableClasses';\r\nimport { RateCicleType, RateModels, TableModels } from './Tables/TableModels';\r\nimport { TableDuts } from './Tables/TableDuts';\r\nimport { TableFreeDevices } from './Tables/TableFreeDevices';\r\nimport { TableRoomTypes } from './Tables/TableRoomTypes';\r\nimport { TableUnits } from './Tables/TableUnits';\r\nimport { FormEditMachine } from './FormEditMachine';\r\nimport { FormEditCreateCicle } from './FormEditCreateCicle';\r\nimport { FormEditCicle } from './FormEditCicle';\r\nimport { FormEditHeatExchanger } from './FormEditHeatExchanger';\r\nimport queryString from 'query-string';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { FormEditUtility } from './FormEditUtility';\r\nimport { StyledLine } from '../Analysis/Header/styles';\r\nimport { ViewUtility } from './ViewUtility';\r\nimport { getDatesRange } from 'helpers/formatTime';\r\nimport { ClientPanelLayout } from './ClientPanelLayout';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nconst CSVheader = [\r\n { label: 'Cliente', key: 'cliente' },\r\n { label: 'Unidade', key: 'unidade' },\r\n { label: 'ID da Unidade', key: 'id' },\r\n { label: 'Disponibilidade Online (%)', key: 'disponibilidade' },\r\n { label: 'Dia', key: 'dia' },\r\n];\r\n\r\nconst modalOptions = ['create-cicle', 'edit-model', 'edit-cicle', 'edit-machine', 'view-utility', 'edit-create-utility', 'edit-create-heat-exchanger'];\r\n\r\nconst daysOfTheWeek = ['Dom', 'Seg', 'Ter', 'Qua', 'Qui', 'Sex', 'Sáb'];\r\n\r\nconst modalWidthByType = {\r\n 'edit-alert': '950px',\r\n 'edit-room-type': '600px',\r\n 'edit-association': '700px',\r\n 'edit-create-heat-exchanger': '600px',\r\n 'edit-create-utility': '650px',\r\n 'view-utility': '600px',\r\n};\r\n\r\nconst modalPaddingByType = {\r\n 'edit-alert': '20px',\r\n 'edit-room-type': '20px',\r\n 'edit-association': '0px',\r\n};\r\n\r\nexport type CicleType = {\r\n modelId: number,\r\n subGroupName: string,\r\n groupName: string,\r\n rateModalityName: string,\r\n}\r\ninterface DevsExtraInfo {\r\n UNIT_ID: number\r\n DEV_ID?: string\r\n DAC_ID?: string\r\n DAM_ID?: string\r\n DUT_ID?: string\r\n type?: 'DAC' | 'DUT' | 'DAM'\r\n MACHINE_ID?: number\r\n}\r\ninterface DamsExtraInfo extends DevsExtraInfo {\r\n DAM_ID: string\r\n units?: {}[]\r\n groups?: {}[]\r\n}\r\ntype DacsExtraInfo = DevsExtraInfo\r\ntype DutsExtraInfo = DevsExtraInfo\r\ninterface FreeDevExtraInfo extends DevsExtraInfo {\r\n freeDevChecked?: boolean\r\n}\r\n\r\ntype IluminationListItem = ApiResps['/dal/get-dal-illumination-list'][number] & { checked?: boolean };\r\ntype NobreakListItem = ApiResps['/dmt/get-dmt-nobreak-list'][number] & { checked?: boolean };\r\n\r\ntype EnvironmentList = {\r\n DEV_ID: string,\r\n UNIT_ID: number,\r\n UNIT_NAME: string,\r\n ENVIRONMENT_ID: number,\r\n ROOM_NAME: string,\r\n ENVIRONMENTS_ROOM_TYPES_ID: number,\r\n PLACEMENT: string,\r\n ISVISIBLE: number,\r\n temprtAlert: null,\r\n status: string,\r\n CITY_ID: string,\r\n CITY_NAME: string,\r\n STATE_ID: string,\r\n STATE_NAME: string,\r\n COUNTRY_NAME: string,\r\n LAT: string,\r\n LON: string,\r\n CLIENT_NAME: string,\r\n CLIENT_ID: number,\r\n RTYPE_ID: number,\r\n RTYPE_NAME: string,\r\n DUT_ID?: string,\r\n type?: string,\r\n}\r\n\r\nexport const ClientPanelPage = (): JSX.Element => {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const [profile] = useState(getUserProfile);\r\n const [state, render, setState] = useStateVar({\r\n isLoading: true,\r\n clients: [] as {}[],\r\n selectedClient: null as null | { CLIENT_ID: number },\r\n async fetchServerData() {\r\n try {\r\n if (profile.viewMultipleClients) {\r\n setState({ isLoading: true });\r\n const { list } = await apiCall('/clients/get-clients-list', {});\r\n state.clients = list;\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ isLoading: false });\r\n },\r\n });\r\n\r\n let clientId = (state.selectedClient && state.selectedClient.CLIENT_ID);\r\n if ((!clientId) && profile.singleClientViewId) {\r\n clientId = profile.singleClientViewId;\r\n }\r\n\r\n useEffect(() => {\r\n state.fetchServerData();\r\n }, []);\r\n\r\n if (state.isLoading) return ;\r\n\r\n return (\r\n
\r\n {profile.viewMultipleClients && (\r\n { setState({ selectedClient: item }); }}\r\n style={{ width: '300px' }}\r\n />\r\n )}\r\n {(clientId)\r\n ? \r\n :
Nenhum cliente selecionado
}\r\n
\r\n );\r\n};\r\n\r\nexport type RateModelsType = {\r\n modelName: string,\r\n modelId: number,\r\n distributorId: number,\r\n hide: boolean,\r\n subGroupId: number,\r\n subGroupName: string,\r\n rateGroupId: number,\r\n groupName: string,\r\n rateModalityId: number,\r\n rateModalityName: string,\r\n distributorTag: string,\r\n distributorLabel: string,\r\n rateCicles: {\r\n CICLE_ID: number\r\n MODEL_ID: number\r\n START_CICLE_DATE: string\r\n END_CICLE_DATE: string\r\n VIGENCYCICLE: boolean\r\n PIS: number\r\n COFINS: number\r\n ICMS: number\r\n CONVENTIONALRATE_PARAMETERS?: {\r\n RATE: string\r\n CONVENTIONALRATE_ID: number,\r\n }\r\n WHITERATE_PARAMETERS?: {\r\n WHITERATE_ID: number,\r\n RATE_PONTA: string,\r\n RATE_OUTPONTA: string,\r\n START_PONTA: string,\r\n END_PONTA: string,\r\n FIRST_MID_RATE: string,\r\n START_FIRST_MID_RATE: string,\r\n END_FIRST_MID_RATE: string,\r\n LAST_MID_RATE?: string,\r\n START_LAST_MID_RATE: string,\r\n END_LAST_MID_RATE: string,\r\n },\r\n }[]\r\n}\r\n\r\nconst deviceLink = (props, PROP) => (\r\n
\r\n {props[PROP] ? (\r\n \r\n {props[PROP]}\r\n \r\n ) : '-'}\r\n
\r\n);\r\n\r\nexport const ClientPanel = ({ clientId, clientInfo }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n const csvLinkEl = useRef();\r\n const history = useHistory();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n selectedClient: null as null | { NAME: string },\r\n clientId: null as null | number,\r\n openModal: null as null | string,\r\n cicleToEdit: {} as CicleType || null,\r\n selectedModelId: null as number | null,\r\n rateModels: [] as RateModelsType[],\r\n isLoadingDuts: false,\r\n roomTypes: [] as (ApiResps['/clients/get-roomtypes-list']['rtypes'] & ({\r\n DUTS_COUNT?: number\r\n DRIS_COUNT?: number\r\n schedCol?: string\r\n })[]),\r\n units: [] as (ApiResps['/clients/get-units-list'] & ({\r\n groups?: {}[]\r\n duts?: {}[]\r\n DACS_COUNT?: number\r\n DUTS_COUNT?: number\r\n DAMS_COUNT?: number\r\n DRIS_COUNT?: number\r\n disp?: number\r\n })[]),\r\n energyMetersList: [] as (ApiResps['/energy/get-energy-list']['list']),\r\n timezonesList: [] as { value: number, label: string }[],\r\n statesList: [] as { STATE_NAME: string, STATE_ID: string, COUNTRY_ID: number }[],\r\n citiesList: [] as { CITY_NAME: string, CITY_ID: string, STATE_ID: string }[],\r\n countriesList: [] as { COUNTRY_NAME: string, COUNTRY_ID: number }[],\r\n accessPointsList: [] as {\r\n name: string,\r\n cnpjs: string[],\r\n access_points: string[]\r\n }[],\r\n damsListFull: [] as (ApiResps['/dam/get-dams-list']['list'] & (DamsExtraInfo[])),\r\n damsListDac: [] as (ApiResps['/dam/get-dams-list']['list'] & (DamsExtraInfo[])),\r\n damsList: [] as (ApiResps['/dam/get-dams-list']['list'] & (DamsExtraInfo[])),\r\n dacsList: [] as (ApiResps['/dac/get-dacs-list']['list'] & (DacsExtraInfo[])),\r\n environmentList: [] as EnvironmentList[],\r\n dutsList: [] as (ApiResps['/dut/get-duts-list']['list'] & (DutsExtraInfo[])),\r\n drisList: [] as (ApiResps['/dri/get-dris-list']['list']),\r\n modelsChillerList: [] as (ApiResps['/dri/get-chiller-models-list']['list']),\r\n vavsList: [] as (ApiResps['/dri/get-dri-vavs-list']['list']),\r\n waterList: [] as (ApiResps['/get-integrations-list/water']['list']),\r\n groupsList: [] as (ApiResps['/clients/get-groups-list'] & ({\r\n DEVS_COUNT?: number\r\n dacs?: { DAC_ID: string }[]\r\n checked?: boolean\r\n }[])),\r\n machinesWithAssetsList: [] as (ApiResps['/clients/get-machines-list']&({\r\n DEVS_QUANTITY?: number\r\n dacs?: { DAC_ID: string }[]\r\n checked?: boolean\r\n }[])),\r\n associationsList: [] as (ApiResps['/clients/get-associations-list']['list'] & ({\r\n checked?: boolean\r\n UNIT_NAME?: string\r\n GROUPS_COUNT?: string\r\n }[])),\r\n classesList: [] as { CLASS_ID: number, CLASS_TYPE: string, CLASS_NAME: string }[],\r\n distributorsList: [] as { value: number, name: string, tag: string }[],\r\n unitsOpt: [] as { value: number, name: string }[],\r\n comboOpts: {} as {\r\n fluids: { value: number, name: string, id: string, }[],\r\n types: { value: number, name: string, id: string, }[],\r\n brands: { value: number, name: string, id: string, }[],\r\n applics: { value: number, name: string, id: string, }[],\r\n roles: { value: number, name: string }[],\r\n chillerModels: { value: number, name: string }[],\r\n chillerLines: { value: number, name: string }[],\r\n },\r\n freeDevs: [] as FreeDevExtraInfo[],\r\n showDAMs: false,\r\n showDUTs: false,\r\n selectedUnit: null as null|{ UNIT_ID: number; UNIT_NAME: string; },\r\n selectedGroup: null as null|{ GROUP_ID: number, GROUP_NAME: string, UNIT_ID: number, DEV_AUT: string, DUT_ID: string, DAM_ID: string },\r\n selectedMachine: null as null|(ApiResps['/clients/get-machines-list'][0]),\r\n isViewMachine: false as boolean,\r\n selectedAssociation: null as null|ApiResps['/clients/get-associations-list']['list'],\r\n selectedDut: null as null|{},\r\n selectedRoomType: null as null|{\r\n RTYPE_ID: number;\r\n RTYPE_NAME: string;\r\n TUSEMIN: number;\r\n TUSEMAX: number;\r\n fullProg: FullProg_v4;\r\n CO2MAX: number;\r\n HUMIMAX: number;\r\n HUMIMIN: number;\r\n },\r\n selectedAlert: null as null | {},\r\n selectedClass: null as null | { CLASS_ID: number, CLASS_TYPE: string, CLASS_NAME: string },\r\n selectedRateModel: null as null | RateModels,\r\n selectedRateCicle: null as null | RateCicleType,\r\n selectedHeatExchanger: null as null | {},\r\n unitsDisp: {} as {\r\n [unitId: number]: {\r\n clientId: number;\r\n clientName: string;\r\n unitId: number;\r\n unitName: string;\r\n avgDisp: number;\r\n dispList: {\r\n disponibility: number;\r\n YMD: string;\r\n }[];\r\n };\r\n },\r\n unitsDispLoading: false,\r\n csvData: [] as {}[],\r\n // openModal: false,\r\n lastDate: moment().subtract(1, 'days'),\r\n selectedDate: moment().subtract(1, 'days'),\r\n datesRange: getDatesRange(moment().subtract(1, 'days'), 7) as {\r\n mdate: moment.Moment,\r\n YMD: string,\r\n DMY: string,\r\n }[],\r\n focusedInput: null,\r\n focused: false,\r\n gettingCsv: false,\r\n\r\n associationsColumns: [\r\n {\r\n name: 'name',\r\n value: 'Nome',\r\n width: 200,\r\n render: (props) => (\r\n
showGroups(props)}>\r\n {props.ASSOC_NAME}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'unit',\r\n value: 'Unidade',\r\n accessor: 'UNIT_NAME',\r\n width: 120,\r\n textAlign: 'center',\r\n },\r\n {\r\n name: 'groups',\r\n value: 'Máquinas',\r\n accessor: 'GROUPS_COUNT',\r\n width: 120,\r\n textAlign: 'center',\r\n },\r\n profile.manageAllClients && {\r\n name: 'edit',\r\n value: 'Editar',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n openCreateEditAssociation(props)} variant=\"blue-inv\">\r\n \r\n \r\n ),\r\n },\r\n profile.permissions.isAdminSistema && {\r\n name: 'delete',\r\n value: 'Excluir',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 80,\r\n render: (props) => (\r\n {\r\n props.checked = !props.checked;\r\n render();\r\n }}\r\n />\r\n ),\r\n },\r\n ].filter((x) => !!x),\r\n\r\n groupColumns: [\r\n {\r\n name: 'name',\r\n value: 'Nome',\r\n accessor: 'GROUP_NAME',\r\n },\r\n {\r\n name: 'unit',\r\n value: 'Unidade',\r\n accessor: 'UNIT_NAME',\r\n },\r\n {\r\n name: 'city',\r\n value: 'Cidade',\r\n accessor: 'CITY_NAME',\r\n },\r\n {\r\n name: 'state',\r\n value: 'Estado',\r\n accessor: 'STATE_ID',\r\n textAlign: 'center',\r\n },\r\n {\r\n name: 'devices',\r\n value: 'Dispositivos',\r\n accessor: 'DEVS_COUNT',\r\n width: 120,\r\n textAlign: 'center',\r\n },\r\n profile.manageAllClients && {\r\n name: 'edit',\r\n value: 'Editar',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n openCreateEditGroup(props.unit, props)} variant=\"blue-inv\">\r\n \r\n \r\n ),\r\n },\r\n profile.permissions.isAdminSistema && {\r\n name: 'delete',\r\n value: 'Excluir',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 80,\r\n render: (props) => (\r\n {\r\n props.checked = !props.checked;\r\n render();\r\n }}\r\n />\r\n ),\r\n },\r\n ],\r\n\r\n machineColumns: [\r\n {\r\n name: 'group_id',\r\n value: 'Id',\r\n accessor: 'GROUP_ID',\r\n },\r\n {\r\n name: 'name',\r\n value: 'Máquina',\r\n accessor: 'GROUP_NAME',\r\n },\r\n {\r\n name: 'unit',\r\n value: 'Unidade',\r\n accessor: 'UNIT_NAME',\r\n },\r\n {\r\n name: 'assets',\r\n value: 'Ativos',\r\n accessor: 'ASSETS_COUNT',\r\n width: 120,\r\n textAlign: 'center',\r\n },\r\n {\r\n name: 'devices',\r\n value: 'Dispositivos',\r\n accessor: 'DEVS_QUANTITY',\r\n width: 120,\r\n textAlign: 'center',\r\n },\r\n profile.manageAllClients && {\r\n name: 'actions',\r\n value: 'Ações',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n
\r\n openCreateEditMachine(props.unit, props, true)}>\r\n \r\n \r\n openCreateEditMachine(props.unit, props, false)}>\r\n \r\n \r\n
\r\n ),\r\n },\r\n profile.permissions.isAdminSistema && {\r\n name: 'delete',\r\n value: 'Excluir',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 80,\r\n render: (props) => (\r\n {\r\n props.checked = !props.checked;\r\n render();\r\n }}\r\n />\r\n ),\r\n },\r\n ],\r\n heatExchangerColumns: [\r\n {\r\n name: 'name',\r\n value: 'Nome',\r\n accessor: 'NAME',\r\n },\r\n {\r\n name: 't_min',\r\n value: 'T-min (Saída)',\r\n accessor: 'T_MIN',\r\n },\r\n {\r\n name: 't_max',\r\n value: 'T-max (Saída)',\r\n accessor: 'T_MAX',\r\n },\r\n {\r\n name: 'deltaT_min',\r\n value: 'ΔT-min',\r\n accessor: 'DELTA_T_MIN',\r\n },\r\n {\r\n name: 'deltaT_max',\r\n value: 'ΔT-max',\r\n accessor: 'DELTA_T_MAX',\r\n },\r\n profile.manageAllClients && {\r\n name: 'actions',\r\n value: '',\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n
\r\n deleteHeatExchanger(props.ID)}\r\n variant=\"red-inv\"\r\n >\r\n \r\n \r\n openCreateEditHeatExchangere(props)} variant=\"blue-inv\">\r\n \r\n \r\n
\r\n ),\r\n },\r\n ],\r\n heatExchangersList: [] as (ApiResps['/heat-exchanger/get-list-v2']),\r\n nobreaksColumns: [\r\n {\r\n name: 'id',\r\n value: 'Id',\r\n accessor: 'ID',\r\n },\r\n {\r\n name: 'unit',\r\n value: t('unidade'),\r\n accessor: 'UNIT_NAME',\r\n render: (props) => (\r\n
\r\n {props.UNIT_NAME || '-'}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'utility',\r\n value: t('utilitario'),\r\n accessor: 'NAME',\r\n render: (props) => (\r\n \r\n {props.NAME || '-'}\r\n \r\n ),\r\n },\r\n {\r\n name: 'manufacturer',\r\n value: t('fabricante'),\r\n accessor: 'MANUFACTURER',\r\n render: (props) => (\r\n
\r\n {props.MANUFACTURER || '-'}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'model',\r\n value: t('modelo'),\r\n accessor: 'MODEL',\r\n render: (props) => (\r\n
\r\n {props.MODEL || '-'}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'battery',\r\n value: t('bateria'),\r\n accessor: 'NOMINAL_BATTERY_LIFE',\r\n render: (props) => (\r\n
\r\n {props.NOMINAL_BATTERY_LIFE ? `${props.NOMINAL_BATTERY_LIFE} min` : '-'}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'monitoring',\r\n value: t('monitoramento'),\r\n accessor: 'DMT_CODE',\r\n render: (props) => deviceLink(props, 'DMT_CODE'),\r\n },\r\n {\r\n name: 'feedback',\r\n value: t('feedback'),\r\n accessor: 'PORT',\r\n render: (props) => (\r\n
\r\n {props.PORT ? `F${props.PORT}` : '-'}\r\n
\r\n ),\r\n },\r\n ...getUtilityActionColumns(),\r\n ],\r\n illuminationColumns: [\r\n {\r\n name: 'id',\r\n value: 'Id',\r\n accessor: 'ID',\r\n },\r\n {\r\n name: 'unit',\r\n value: t('unidade'),\r\n accessor: 'UNIT_NAME',\r\n },\r\n {\r\n name: 'utility',\r\n value: t('utilitario'),\r\n accessor: 'NAME',\r\n render: (props) => (\r\n \r\n {props.NAME}\r\n \r\n ),\r\n },\r\n {\r\n name: 'device',\r\n value: t('dispositivo'),\r\n accessor: 'DEVICE_CODE',\r\n render: (props) => deviceLink(props, 'DEVICE_CODE'),\r\n },\r\n {\r\n name: 'PORT',\r\n value: t('porta'),\r\n accessor: 'PORT',\r\n render: (props) => (\r\n
\r\n {props.PORT || '-'}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'FEEDBACK',\r\n value: t('feedback'),\r\n accessor: 'FEEDBACK',\r\n render: (props) => (\r\n
\r\n {props.FEEDBACK ? 'F'.concat(props.FEEDBACK) : '-'}\r\n
\r\n ),\r\n },\r\n ...getUtilityActionColumns(),\r\n ],\r\n selectedUtilityItem: null as null | {},\r\n selectedUtility: t('nobreak') as string,\r\n iluminationList: [] as IluminationListItem[],\r\n nobreakList: [] as NobreakListItem[],\r\n };\r\n state.groupColumns = state.groupColumns.filter((x) => !!x);\r\n\r\n state.machineColumns = state.machineColumns.filter((x) => !!x);\r\n\r\n state.heatExchangerColumns = state.heatExchangerColumns.filter((x) => !!x);\r\n\r\n return state;\r\n });\r\n\r\n function getUtilityActionColumns() {\r\n const actionColumns = [] as any;\r\n if (profile.manageAllClients) {\r\n actionColumns.push({\r\n name: 'actions',\r\n value: t('acoes'),\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 120,\r\n render: (props) => (\r\n
\r\n openViewUtility(props)}>\r\n \r\n \r\n openCreateEditUtility(props)}>\r\n \r\n \r\n
\r\n ),\r\n });\r\n }\r\n if (profile.permissions.isAdminSistema) {\r\n actionColumns.push({\r\n name: 'delete',\r\n value: t('excluir'),\r\n sortable: false,\r\n textAlign: 'center',\r\n width: 80,\r\n render: (props) => (\r\n {\r\n props.checked = !props.checked;\r\n render();\r\n }}\r\n />\r\n ),\r\n });\r\n }\r\n return actionColumns;\r\n }\r\n\r\n const deleteHeatExchanger = async (ID) => {\r\n try {\r\n await apiCall('/heat-exchanger/delete-info', { CLIENT_ID: clientId, ID });\r\n toast.success('Trocador de calor deletado com sucesso');\r\n await fetchServerData();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro ao deletar trocador de calor. Possivelmente o tipo está sendo utilizado em algum DAC.');\r\n }\r\n };\r\n\r\n function onDateChange(date, dateEnd) {\r\n state.selectedDate = date;\r\n state.datesRange = getDatesRange(date, 7);\r\n render();\r\n }\r\n\r\n function clearServerData() {\r\n state.roomTypes = [];\r\n state.units = [];\r\n state.timezonesList = [];\r\n state.statesList = [];\r\n state.citiesList = [];\r\n state.damsListDac = [];\r\n state.damsListFull = [];\r\n state.damsList = [];\r\n state.dacsList = [];\r\n state.dutsList = [];\r\n state.drisList = [];\r\n state.modelsChillerList = [];\r\n state.vavsList = [];\r\n state.groupsList = [];\r\n state.classesList = [];\r\n state.associationsList = [];\r\n state.machinesWithAssetsList = [];\r\n state.unitsOpt = [];\r\n }\r\n\r\n function clearProcessedData() {\r\n state.damsListDac = [];\r\n state.damsList = [];\r\n state.freeDevs = [];\r\n state.showDAMs = false;\r\n state.showDUTs = false;\r\n state.selectedUnit = null;\r\n state.selectedGroup = null;\r\n state.selectedDut = null;\r\n state.selectedRoomType = null;\r\n state.selectedAlert = null;\r\n state.selectedClass = null;\r\n state.selectedAssociation = null;\r\n }\r\n\r\n function resetParamsUrl() {\r\n const linkBase = history.location.pathname;\r\n history.push(linkBase);\r\n }\r\n\r\n function setEnvironmentList(environments) {\r\n const newListEnvFiltered = [] as EnvironmentList[];\r\n const listIds = [] as number[];\r\n environments.forEach((item) => {\r\n if (listIds.includes(item.ENVIRONMENT_ID)) {\r\n return;\r\n }\r\n newListEnvFiltered.push({\r\n DEV_ID: item.DUT_CODE || '-',\r\n UNIT_ID: item.UNIT_ID,\r\n UNIT_NAME: item.UNIT_NAME,\r\n ENVIRONMENT_ID: item.ENVIRONMENT_ID,\r\n ROOM_NAME: item.ENVIRONMENT_NAME,\r\n ENVIRONMENTS_ROOM_TYPES_ID: item.ENVIRONMENTS_ROOM_TYPES_ID,\r\n PLACEMENT: 'AMB',\r\n ISVISIBLE: 1,\r\n temprtAlert: null,\r\n status: '',\r\n CITY_ID: item.CITY_ID,\r\n CITY_NAME: item.CITY_NAME,\r\n STATE_ID: item.STATE_ID,\r\n STATE_NAME: item.STATE_NAME,\r\n COUNTRY_NAME: item.COUNTRY_NAME,\r\n LAT: item.LAT,\r\n LON: item.LON,\r\n CLIENT_NAME: item.CLIENT_NAME,\r\n CLIENT_ID: item.CLIENT_ID,\r\n RTYPE_ID: item.RTYPE_ID,\r\n RTYPE_NAME: item.RTYPE_NAME,\r\n checked: false,\r\n });\r\n listIds.push(item.ENVIRONMENT_ID);\r\n });\r\n state.dutsList.forEach((item) => {\r\n if (!item.ENVIRONMENT_ID && item.DEV_ID) {\r\n newListEnvFiltered.push({\r\n DEV_ID: item.DEV_ID || '-',\r\n UNIT_ID: item.UNIT_ID,\r\n UNIT_NAME: item.UNIT_NAME,\r\n ENVIRONMENT_ID: item.ENVIRONMENT_ID,\r\n ROOM_NAME: item.ROOM_NAME,\r\n ENVIRONMENTS_ROOM_TYPES_ID: item.ENVIRONMENTS_ROOM_TYPES_ID,\r\n PLACEMENT: 'AMB',\r\n ISVISIBLE: 1,\r\n temprtAlert: null,\r\n status: '',\r\n CITY_ID: item.CITY_ID,\r\n CITY_NAME: item.CITY_NAME,\r\n STATE_ID: item.STATE_ID,\r\n STATE_NAME: item.STATE_NAME,\r\n COUNTRY_NAME: item.COUNTRY_NAME,\r\n LAT: item.LAT,\r\n LON: item.LON,\r\n CLIENT_NAME: item.CLIENT_NAME,\r\n CLIENT_ID: item.CLIENT_ID,\r\n RTYPE_ID: item.RTYPE_ID,\r\n RTYPE_NAME: item.RTYPE_NAME,\r\n checked: false,\r\n });\r\n }\r\n });\r\n state.environmentList = newListEnvFiltered;\r\n }\r\n\r\n async function fetchServerData(clientId?: null|number) {\r\n try {\r\n state.isLoading = true; render();\r\n\r\n if (clientId) state.clientId = clientId;\r\n clientId = state.clientId;\r\n\r\n clearServerData();\r\n\r\n if (!clientId) {\r\n state.isLoading = false; render();\r\n return;\r\n }\r\n\r\n await Promise.all([\r\n apiCall('/dmt/get-dmt-nobreak-list', { clientIds: [clientId], INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then((data) => { state.nobreakList = data.map((nobreak) => ({ ...nobreak, checked: false })); }),\r\n apiCall('/dal/get-dal-illumination-list', { clientIds: [clientId], INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then((data) => { state.iluminationList = data.map((illum) => ({ ...illum, checked: false })); }),\r\n apiCall('/heat-exchanger/get-list-v2', { CLIENT_ID: clientId }).then((data) => { state.heatExchangersList = data; }),\r\n apiCall('/dam/get-dams-list', { clientId, includeDacs: true }).then(({ list }) => { state.damsListFull = list; }),\r\n apiCall('/dac/get-dacs-list', { clientId }).then(({ list }) => { state.dacsList = list; }),\r\n apiCall('/dut/get-duts-list', { clientId, INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then(({ list }) => { state.dutsList = list.map((item) => ({ ...item, checked: false })); }),\r\n apiCall('/dri/get-dris-list', { clientIds: [clientId] }).then(({ list }) => { state.drisList = list; }),\r\n apiCall('/dri/get-dri-vavs-list', { clientId }).then(({ list }) => { state.vavsList = list.map((item) => ({ ...item, checked: false })); }),\r\n apiCall('/dri/get-chiller-models-list', {}).then(({ list }) => { state.modelsChillerList = list; }),\r\n apiCall('/clients/get-units-list', { CLIENT_ID: clientId, INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then((list) => { list.forEach((unit) => Object.assign(unit, { LATLON: (unit.LAT && unit.LON) ? `${unit.LAT}, ${unit.LON}` : '-' })); state.units = list; list.forEach((unit) => state.unitsOpt.push({ value: unit.UNIT_ID, name: unit.UNIT_NAME })); }),\r\n apiCall('/clients/get-groups-list', { clientIds: [clientId] }).then((list) => { state.groupsList = list; }),\r\n apiCall('/clients/get-machines-list', { clientIds: [clientId], INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then((list) => { state.machinesWithAssetsList = list; }),\r\n apiCall('/clients/get-roomtypes-list', { CLIENT_ID: clientId }).then(({ rtypes }) => { state.roomTypes = rtypes; }),\r\n apiCall('/get-timezones-list-with-offset', {}).then(({ list }) => {\r\n state.timezonesList = list.map((item) => ({ label: `${item.area} (${item.offset})`, value: item.id }));\r\n }),\r\n apiCall('/dac/get-states-list', { full: true }).then(({ list }) => {\r\n state.statesList = list.map((item) => ({ STATE_NAME: item.fullName, STATE_ID: item.fullName, COUNTRY_ID: item.countryId }));\r\n }),\r\n (async function () {\r\n if (profile.manageAllClients) {\r\n const { list } = await apiCall('/four-docs/get-login-data');\r\n state.accessPointsList = list.providers;\r\n }\r\n }()),\r\n apiCall('/dac/get-cities-list', {}).then((responseData) => {\r\n state.citiesList = responseData.list.map((item) => ({ CITY_NAME: item.name, CITY_ID: item.id, STATE_ID: item.stateFullName }));\r\n }),\r\n apiCall('/dac/get-countries-list', { full: true }).then((responseData) => {\r\n state.countriesList = responseData.list.map((item) => ({ COUNTRY_NAME: item.name, COUNTRY_ID: item.id }));\r\n }),\r\n apiCall('/clients/get-client-classes', { CLIENT_ID: clientId }).then(({ list }) => state.classesList = list),\r\n apiCall('/clients/get-associations-list', { CLIENT_ID: clientId }).then(({ list }) => state.associationsList = list),\r\n apiCall('/clients/get-distributors', { CLIENT_ID: clientId }).then(({ distributors }) => distributors.map((item) => state.distributorsList.push({ value: item.id, name: item.label, tag: item.tag }))),\r\n apiCall('/energy/get-energy-list', { clientId }).then(({ list }) => state.energyMetersList = list),\r\n apiCall('/dev/dev-info-combo-options', {\r\n CLIENT_ID: clientId,\r\n fluids: true,\r\n types: true,\r\n brands: true,\r\n roles: true,\r\n applics: true,\r\n chillerModels: true,\r\n chillerLines: true,\r\n }).then(({\r\n types,\r\n brands,\r\n fluids,\r\n roles,\r\n applics,\r\n chillerModels,\r\n chillerLines,\r\n }) => {\r\n state.comboOpts.brands = [];\r\n state.comboOpts.fluids = [];\r\n state.comboOpts.roles = [];\r\n state.comboOpts.types = [];\r\n state.comboOpts.applics = [];\r\n state.comboOpts.chillerModels = [];\r\n state.comboOpts.chillerLines = [];\r\n types?.forEach((type, index) => { state.comboOpts.types.push({ value: index + 1, name: type.label, id: type.value }); });\r\n brands?.forEach((brand, index) => state.comboOpts.brands.push({ value: index + 1, name: brand.label, id: brand.value }));\r\n fluids?.forEach((fluid, index) => state.comboOpts.fluids.push({ value: index + 1, name: fluid.label, id: fluid.value }));\r\n applics?.forEach((applic, index) => { if (applic.value !== 'iluminacao') state.comboOpts.applics.push({ value: index + 1, name: applic.label, id: applic.value }); });\r\n roles?.forEach((role) => state.comboOpts.roles.push({ value: Number(role.value), name: role.label }));\r\n chillerModels?.forEach((model) => { state.comboOpts.chillerModels.push({ value: Number(model.value), name: model.label }); });\r\n chillerLines?.forEach((line) => { state.comboOpts.chillerLines.push({ value: Number(line.value), name: line.label }); });\r\n }),\r\n apiCall('/environments/get-environment-list', { CLIENT_ID: clientId, INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then(({ environments }) => {\r\n setEnvironmentList(environments);\r\n }),\r\n ]);\r\n processReceivedServerData();\r\n apiCall('/get-integrations-list/water', { clientIds: [clientId] }).then(({ list }) => { state.waterList = list; });\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.isLoading = false; render();\r\n }\r\n\r\n async function calculateClientUnitsDisp(clientId) {\r\n try {\r\n setState({ unitsDispLoading: true });\r\n\r\n const endDate = moment(state.lastDate).format('YYYY-MM-DD');\r\n const startDate = moment(state.lastDate).subtract(6, 'days').format('YYYY-MM-DD');\r\n state.unitsDisp = {};\r\n for (const unit of state.units) {\r\n const unitDisp = await apiCall('/clients/get-client-units-disp', {\r\n CLIENT_ID: clientId,\r\n UNIT_ID: unit.UNIT_ID,\r\n startDate,\r\n endDate,\r\n });\r\n state.unitsDisp = { ...state.unitsDisp, ...unitDisp };\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível calcular a disponibilidade dos dispositivos');\r\n }\r\n setState({ unitsDispLoading: false });\r\n }\r\n\r\n async function getDispCsvData() {\r\n state.gettingCsv = true; render();\r\n const formattedCSV = [] as any;\r\n\r\n let data = [] as {\r\n clientId: number;\r\n clientName: string;\r\n unitId: number;\r\n unitName: string;\r\n avgDisp: number;\r\n dispList: {\r\n disponibility: number;\r\n YMD: string;\r\n }[];\r\n }[];\r\n\r\n try {\r\n if (moment(state.selectedDate).format('YYYY-MM-DD') === moment(state.lastDate).format('YYYY-MM-DD')) {\r\n if (Object.values(state.unitsDisp).length > 0) {\r\n data = Object.values(state.unitsDisp);\r\n } else {\r\n toast.info('Não há dados de disponibilidade para exportar!'); state.isLoading = false;\r\n }\r\n } else {\r\n let dispList = {};\r\n for (const unit of state.units) {\r\n const unitDisp = await apiCall('/clients/get-client-units-disp', {\r\n UNIT_ID: unit.UNIT_ID,\r\n CLIENT_ID: clientId,\r\n startDate: state.datesRange[state.datesRange.length - 1].YMD,\r\n endDate: state.datesRange[0].YMD,\r\n });\r\n dispList = { ...dispList, ...unitDisp };\r\n }\r\n if (Object.values(dispList).length > 0) {\r\n data = Object.values(dispList);\r\n } else {\r\n toast.info('Não há dados de disponibilidade para exportar!'); state.isLoading = false;\r\n }\r\n }\r\n\r\n data.forEach((item) => {\r\n item.dispList.forEach((disp) => {\r\n const day = daysOfTheWeek[moment(disp.YMD).day()];\r\n formattedCSV.push({\r\n cliente: item.clientName,\r\n unidade: item.unitName,\r\n id: item.unitId,\r\n disponibilidade: disp.disponibility?.toFixed(1).replace('.', ','),\r\n dia: ` ${day}, ${moment(disp.YMD).format('DD-MM-YYYY')}`,\r\n });\r\n });\r\n });\r\n\r\n formattedCSV.sort((a, b) => {\r\n const [d1, m1, y1] = a.dia.split(', ')[1].split('-');\r\n const [d2, m2, y2] = b.dia.split(', ')[1].split('-');\r\n return moment(`${y1}-${m1}-${d1}`).diff(moment(`${y2}-${m2}-${d2}`));\r\n });\r\n\r\n state.csvData = formattedCSV;\r\n render();\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n\r\n state.gettingCsv = false; render();\r\n } catch (err) { console.log(err); toast.error('Houve erro'); state.gettingCsv = false; render(); }\r\n }\r\n\r\n function processReceivedServerData() {\r\n clearProcessedData();\r\n\r\n state.showDAMs = !!(state.damsListFull.length);\r\n state.showDUTs = !!(state.dutsList.length || state.roomTypes.length || state.vavsList.length);\r\n\r\n const units = {};\r\n for (const unit of state.units) {\r\n units[unit.UNIT_ID] = unit;\r\n unit.groups = [];\r\n unit.duts = [];\r\n unit.DACS_COUNT = 0;\r\n unit.DUTS_COUNT = 0;\r\n unit.DAMS_COUNT = 0;\r\n unit.DRIS_COUNT = 0;\r\n }\r\n\r\n const roomTypes = {};\r\n for (const rType of state.roomTypes) {\r\n roomTypes[rType.RTYPE_ID] = rType;\r\n rType.DUTS_COUNT = 0;\r\n rType.DRIS_COUNT = 0;\r\n }\r\n\r\n // const dams = {}\r\n for (const dam of state.damsListFull) {\r\n dam.DEV_ID = dam.DEV_ID || dam.DAM_ID || dam.DAC_ID;\r\n if (dam.isDac) {\r\n state.damsListDac.push(dam);\r\n } else {\r\n state.damsList.push(dam);\r\n }\r\n // dams[dam.DAM_ID] = dam\r\n dam.groups = [];\r\n dam.units = [];\r\n }\r\n\r\n const groups = {};\r\n for (const group of state.groupsList) {\r\n groups[group.GROUP_ID] = group;\r\n group.dacs = [];\r\n // group.unit = units[group.UNIT_ID]\r\n // group.unit.groups.push(group)\r\n // if (group.DAM_ID) {\r\n // group.dam = dams[group.DAM_ID];\r\n // if (group.dam) {\r\n // group.dam.groups.push(group);\r\n // group.dam.units.push(units[group.UNIT_ID]);\r\n // }\r\n // }\r\n }\r\n for (const machine of state.machinesWithAssetsList) {\r\n groups[machine.GROUP_ID] = machine;\r\n machine.dacs = [];\r\n for (const dac of state.dacsList) {\r\n if (dac.GROUP_ID === machine.GROUP_ID) {\r\n machine.dacs?.push(dac);\r\n }\r\n }\r\n }\r\n\r\n for (const dut of state.dutsList) {\r\n // dut.alerts = []\r\n if (dut.UNIT_ID) {\r\n // dut.unit = units[dut.UNIT_ID]\r\n units[dut.UNIT_ID].duts.push(dut);\r\n }\r\n }\r\n\r\n for (const machine of state.machinesWithAssetsList) {\r\n let DEVS_QUANTITY = machine.dacs!.length;\r\n if (machine.DEV_AUT) DEVS_QUANTITY++;\r\n machine.assets.forEach((asset) => {\r\n if (asset.DEV_ID) DEVS_QUANTITY++;\r\n });\r\n machine.DEVS_QUANTITY = DEVS_QUANTITY;\r\n }\r\n\r\n for (const association of state.associationsList) {\r\n const unit = state.units.find((unit) => unit.UNIT_ID === association.UNIT_ID);\r\n const GROUPS_COUNT = association.GROUPS.length;\r\n association.GROUPS_COUNT = `${GROUPS_COUNT} Máquinas`;\r\n association.UNIT_NAME = unit?.UNIT_NAME;\r\n }\r\n\r\n for (const dac of state.dacsList) {\r\n dac.DEV_ID = dac.DEV_ID || dac.DAC_ID;\r\n dac.type = 'DAC';\r\n if (!dac.GROUP_ID) { state.freeDevs.push(dac); }\r\n if (dac.UNIT_ID) units[dac.UNIT_ID].DACS_COUNT++;\r\n }\r\n for (const dut of state.dutsList) {\r\n dut.DEV_ID = (dut.DEV_ID || dut.DUT_ID)!;\r\n dut.type = 'DUT';\r\n if (dut.UNIT_ID) units[dut.UNIT_ID].DUTS_COUNT++;\r\n if (dut.RTYPE_ID) roomTypes[dut.RTYPE_ID].DUTS_COUNT++;\r\n }\r\n for (const dam of state.damsList) {\r\n dam.DEV_ID = dam.DEV_ID || dam.DAM_ID;\r\n dam.type = 'DAM';\r\n if (!dam.groups!.length) { state.freeDevs.push(dam); }\r\n if (dam.UNIT_ID) units[dam.UNIT_ID].DAMS_COUNT++;\r\n }\r\n for (const dri of state.drisList) {\r\n if (dri.UNIT_ID) units[dri.UNIT_ID].DRIS_COUNT++;\r\n }\r\n for (const vav of state.vavsList) {\r\n if (vav.RTYPE_ID && roomTypes[vav.RTYPE_ID]) roomTypes[vav.RTYPE_ID].DRIS_COUNT++;\r\n }\r\n\r\n for (const roomType of state.roomTypes) {\r\n const pData = getDaySched(roomType.workPeriods, roomType.workPeriodExceptions);\r\n roomType.schedCol = (pData && pData.desc) || '-';\r\n }\r\n\r\n // for (const alertInfo of state.alerts) {\r\n // // alertInfo.filterDesc = 'Caixas'\r\n // // alertInfo.timeDesc = 'entre 8:00 e 17:00'\r\n // // alertInfo.condDesc = 'temperatura maior que 26°C ou menor que 18°C'\r\n // let relatedRooms = []\r\n // if (alertInfo.FILT_TYPE === 'UNIT') {\r\n // for (const unitId of alertInfo.FILT_IDS) {\r\n // relatedRooms = relatedRooms.concat(units[unitId].rooms)\r\n // }\r\n // }\r\n // if (alertInfo.FILT_TYPE === 'ROOM') {\r\n // relatedRooms = relatedRooms.concat(alertInfo.FILT_IDS.map(roomId => rooms[roomId]))\r\n // }\r\n // for (const room of relatedRooms) {\r\n // room.alerts.push(alertInfo)\r\n // }\r\n // }\r\n\r\n render();\r\n }\r\n\r\n function showGroups(association) {\r\n state.selectedAssociation = association;\r\n state.openModal = 'show-association-groups'; render();\r\n }\r\n\r\n function openCreateEditModel(itemToEdit?: RateModels) {\r\n state.selectedRateModel = itemToEdit || null;\r\n state.openModal = 'edit-model'; render();\r\n }\r\n\r\n function openCreateCicle(ModelRate: CicleType, itemToEdit?: RateCicleType) {\r\n state.cicleToEdit = ModelRate;\r\n state.selectedRateCicle = itemToEdit || null;\r\n state.openModal = 'edit-cicle'; render();\r\n }\r\n\r\n function openCreateEditCicle(itemToEdit?: { UNIT_ID: number; UNIT_NAME: string; }) {\r\n state.selectedUnit = itemToEdit || null;\r\n state.openModal = 'create-cicle'; render();\r\n }\r\n\r\n function openCreateEditUnit(itemToEdit?: { UNIT_ID: number; UNIT_NAME: string; }) {\r\n state.selectedUnit = itemToEdit || null;\r\n state.openModal = 'edit-unit'; render();\r\n }\r\n function openCreateEditGroup(unit?: { UNIT_ID: number; UNIT_NAME: string; }, itemToEdit?: { GROUP_ID: number }) {\r\n state.selectedUnit = unit || null;\r\n // @ts-ignore\r\n state.selectedGroup = itemToEdit || null;\r\n state.openModal = 'edit-group'; render();\r\n }\r\n\r\n function openCreateEditMachine(unit?: { UNIT_ID: number; UNIT_NAME: string; }, itemToEdit?: { GROUP_ID: number }, isView?: boolean) {\r\n state.selectedUnit = unit || null;\r\n // @ts-ignore\r\n state.selectedGroup = itemToEdit || null;\r\n state.isViewMachine = isView || false;\r\n state.selectedMachine = state.machinesWithAssetsList.find((item) => item.GROUP_ID === itemToEdit?.GROUP_ID) || null;\r\n state.openModal = 'edit-machine'; render();\r\n }\r\n\r\n function openCreateEditAssociation(itemToEdit?: ApiResps['/clients/get-associations-list']['list']) {\r\n state.selectedAssociation = itemToEdit || null;\r\n state.openModal = 'edit-association'; render();\r\n }\r\n function openEditDut(unit, itemToEdit) {\r\n state.selectedUnit = unit;\r\n state.selectedDut = itemToEdit || null;\r\n state.openModal = 'edit-dut'; render();\r\n }\r\n function openCreateEditRoomType(itemToEdit?: {}) {\r\n // @ts-ignore\r\n state.selectedRoomType = itemToEdit || null;\r\n state.openModal = 'edit-room-type'; render();\r\n }\r\n function openAssociateDevs() {\r\n state.openModal = 'associate-devs'; render();\r\n }\r\n function openCreateEditClass(itemToEdit?: { CLASS_ID: number, CLASS_TYPE: string, CLASS_NAME: string }) {\r\n state.selectedClass = itemToEdit || null;\r\n state.openModal = 'edit-class'; render();\r\n }\r\n\r\n function openCreateEditHeatExchangere(itemToEdit?: {}) {\r\n // @ts-ignore\r\n state.selectedHeatExchanger = itemToEdit || null;\r\n state.openModal = 'edit-create-heat-exchanger'; render();\r\n }\r\n\r\n function openCreateEditUtility(itemToEdit?: {}) {\r\n // @ts-ignore\r\n state.selectedUtilityItem = itemToEdit || null;\r\n state.openModal = 'edit-create-utility'; render();\r\n }\r\n\r\n function openViewUtility(itemToEdit?: {}) {\r\n // @ts-ignore\r\n state.selectedUtilityItem = itemToEdit || null;\r\n state.openModal = 'view-utility'; render();\r\n }\r\n\r\n async function deleteUnit(item) {\r\n try {\r\n if (window.confirm(`Deseja excluir a unidade ${item.UNIT_NAME}?`)) {\r\n await apiCall('/clients/remove-unit', { UNIT_ID: item.UNIT_ID, CLIENT_ID: state.clientId || undefined });\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteClass(item) {\r\n try {\r\n if (window.confirm(`Deseja excluir a classe de unidades ${item.CLASS_TYPE} ${item.CLASS_NAME}?`)) {\r\n await apiCall('/clients/remove-client-class', { CLASS_ID: item.CLASS_ID, CLIENT_ID: clientId });\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteCicle({ CICLE_ID, CICLE_NAME }: { CICLE_ID: number, CICLE_NAME: string }) {\r\n try {\r\n if (window.confirm(`Deseja excluir este o ${CICLE_NAME} ?`)) {\r\n await apiCall('/delete-rate-cicle', { CICLE_ID });\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteModel({ MODEL_ID, MODEL_NAME }: { MODEL_ID: number, MODEL_NAME: string }) {\r\n try {\r\n if (window.confirm(`Deseja excluir o modelo de tarifa ${MODEL_NAME} ?`)) {\r\n await apiCall('/delete-model-rate', { MODEL_ID });\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteGroup() {\r\n try {\r\n if (window.confirm('Deseja excluir os grupos selecionados?')) {\r\n for (const item of state.machinesWithAssetsList) {\r\n if (item.checked) {\r\n await apiCall('/clients/remove-group', { GROUP_ID: item.GROUP_ID, isChiller: (item.MCHN_APPL === 'chiller' && item.BRAND === 'carrier') });\r\n }\r\n }\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteAssociation() {\r\n try {\r\n if (window.confirm('Deseja excluir as associações selecionados?')) {\r\n for (const item of state.associationsList) {\r\n if (item.checked) {\r\n await apiCall('/clients/remove-association', { ASSOC_ID: item.ASSOC_ID });\r\n }\r\n }\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteNobreaks() {\r\n for (const item of state.nobreakList) {\r\n if (item.checked && item.APPLICATION === 'Nobreak') {\r\n await apiCall('/dmt/delete-dmt-nobreak', { NOBREAK_ID: item.ID });\r\n }\r\n }\r\n }\r\n\r\n async function deleteIlluminations() {\r\n for (const item of state.iluminationList) {\r\n if (item.checked && item.APPLICATION === 'Iluminação') {\r\n await apiCall('/dal/delete-dal-illumination', { ILLUMINATION_ID: item.ID });\r\n }\r\n }\r\n }\r\n\r\n async function deleteUtility() {\r\n try {\r\n if (window.confirm('Deseja excluir as associações selecionados?')) {\r\n if (state.selectedUtility === t('nobreak')) {\r\n await deleteNobreaks();\r\n }\r\n if (state.selectedUtility === t('iluminacao')) {\r\n await deleteIlluminations();\r\n }\r\n toast.success('Sucesso');\r\n await fetchServerData(); // server might have deleted and/or updated other items\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteRoomType(item) {\r\n try {\r\n if (window.confirm(`Deseja excluir o tipo ${item.RTYPE_NAME}?`)) {\r\n await apiCall('/clients/remove-roomtype', { RTYPE_ID: item.RTYPE_ID });\r\n state.roomTypes = state.roomTypes.filter((rtype) => rtype.RTYPE_ID !== item.RTYPE_ID);\r\n processReceivedServerData();\r\n render();\r\n toast.success('Sucesso');\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function deleteEnvironment(item) {\r\n try {\r\n if (window.confirm(`Deseja excluir o ambiente ${item.ROOM_NAME}?`)) {\r\n await apiCall('/environments/delete-environment', { ENVIRONMENT_ID: item.ENVIRONMENT_ID, CLIENT_ID: item.CLIENT_ID, UNIT_ID: item.UNIT_ID });\r\n state.dutsList = state.dutsList.filter((env) => env.ENVIRONMENT_ID !== item.ENVIRONMENT_ID);\r\n processReceivedServerData();\r\n render();\r\n toast.success('Sucesso');\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n async function afterCreateEditUnit({ item: responseData, action }) {\r\n try {\r\n state.openModal = null; render();\r\n // if (action === 'new') { state.units.push(responseData); processReceivedServerData(); } else if (action === 'edit') {\r\n // const found = state.units.find((item) => item.UNIT_ID === responseData.UNIT_ID);\r\n // if (found) { Object.assign(found, responseData); processReceivedServerData(); } else { await fetchServerData(); }\r\n // } else { await fetchServerData(); }\r\n await fetchServerData();\r\n\r\n action === 'edit' ? toast.success('Sucesso ao editar a unidade') : toast.success('Sucesso ao criar a unidade');\r\n\r\n // TODO: check if responseAccessDistributor is null\r\n if (responseData.responseAccessDistributor && responseData.responseAccessDistributor.STATUS === 'Erro no envio') {\r\n toast.error('Não foi possível enviar as informações para a Four Docs. ');\r\n }\r\n\r\n resetParamsUrl();\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditGroup({ item: responseData, action, changedAssociation }) {\r\n try {\r\n state.openModal = null; render();\r\n // if (changedAssociation) { await state.fetchServerData() }\r\n // else if (action === 'new') { state.groupsList.push(responseData); state.processReceivedServerData() }\r\n // else if (action === 'edit') {\r\n // const found = state.groupsList.find(item => item.GROUP_ID === responseData.GROUP_ID)\r\n // if (found) { Object.assign(found, responseData); state.processReceivedServerData() }\r\n // else { await state.fetchServerData() }\r\n // }\r\n // else { await state.fetchServerData() }\r\n await fetchServerData();\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditMachine({ action }) {\r\n try {\r\n state.openModal = null; render();\r\n await fetchServerData();\r\n action === 'edit' ? toast.success('Sucesso ao editar a máquina') : toast.success('Sucesso ao criar a máquina');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterEditDut({ item: responseData }) {\r\n try {\r\n state.openModal = null; render();\r\n const found = state.dutsList.find((item) => item.DEV_ID === responseData?.DEV_ID);\r\n if (found) { Object.assign(found, responseData); processReceivedServerData(); } else { await fetchServerData(); }\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditRoomType({ item: responseData, action }) {\r\n try {\r\n state.openModal = null; render();\r\n if (action === 'new') { state.roomTypes.push(responseData); processReceivedServerData(); } else if (action === 'edit') {\r\n const found = state.roomTypes.find((item) => item.RTYPE_ID === responseData.RTYPE_ID);\r\n if (found) { Object.assign(found, responseData); processReceivedServerData(); } else { await fetchServerData(); }\r\n } else { await fetchServerData(); }\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterAssociateDevs() {\r\n try {\r\n state.openModal = null; render();\r\n await fetchServerData();\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditClass() {\r\n try {\r\n state.openModal = null; render();\r\n await fetchServerData();\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditAssociation() {\r\n try {\r\n state.openModal = null; render();\r\n await fetchServerData();\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditHeatExchanger({ action }) {\r\n try {\r\n state.openModal = null; render();\r\n await fetchServerData();\r\n toast.success(`Sucesso ao ${action === 'new' ? 'criar' : 'editar'} tipo de trocador de calor`);\r\n } catch (err) { console.log(err); toast.error(`Houve erro ao ${action === 'new' ? 'criar' : 'editar'} tipo de trocador de calor`); }\r\n }\r\n\r\n async function afterCreateEditUtility({ action }) {\r\n try {\r\n state.openModal = null; render();\r\n await fetchServerData();\r\n if (action === 'new') {\r\n toast.success(t('sucessoCriarUtilitario'));\r\n } else {\r\n toast.success(t('sucessoEditarUtilitario'));\r\n }\r\n } catch (err) { console.log(err);\r\n if (action === 'new') {\r\n toast.error(t('erroCriarUtilitario'));\r\n } else {\r\n toast.error(t('erroEditarUtilitario'));\r\n }\r\n }\r\n }\r\n\r\n async function toggleUnitReport(item) {\r\n try {\r\n item.submitting = true; render();\r\n const reqParams: ApiParams['/clients/edit-unit'] = {\r\n UNIT_ID: item.UNIT_ID,\r\n DISABREP: (item.DISABREP ? 0 : 1),\r\n };\r\n const responseData = await apiCall('/clients/edit-unit', reqParams);\r\n Object.assign(item, responseData); processReceivedServerData();\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n item.submitting = false; render();\r\n }\r\n\r\n async function getModels() {\r\n await apiCall('/get-model-rates', { CLIENT_ID: clientId }).then((models) => {\r\n state.rateModels = models.map((model) => Object.assign(model, {\r\n hide: false,\r\n }));\r\n });\r\n }\r\n\r\n useEffect(() => {\r\n fetchServerData(clientId);\r\n getModels();\r\n }, [clientId]);\r\n function utilityButtons() {\r\n const disabled = !state.nobreakList.some((item) => item.checked) && !state.iluminationList.some((item) => item.checked);\r\n return [(\r\n
\r\n {(profile.manageAllClients) && {t('novoUtilitario').toUpperCase()}}\r\n {(profile.permissions.isAdminSistema) && {t('excluirUtilitarios')}}\r\n
\r\n )];\r\n }\r\n\r\n async function getDuts() {\r\n try {\r\n state.isLoadingDuts = true;\r\n await Promise.all([\r\n apiCall('/clients/get-units-list', { CLIENT_ID: clientId, INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then((list) => { list.forEach((unit) => Object.assign(unit, { LATLON: (unit.LAT && unit.LON) ? `${unit.LAT}, ${unit.LON}` : '-' })); state.units = list; list.forEach((unit) => state.unitsOpt.push({ value: unit.UNIT_ID, name: unit.UNIT_NAME })); }),\r\n ]);\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n // processReceivedServerData();\r\n state.isLoadingDuts = false;\r\n render();\r\n }\r\n\r\n async function getEnvironments() {\r\n try {\r\n await Promise.all([\r\n apiCall('/dut/get-duts-list', { clientId, INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then(({ list }) => { state.dutsList = list.map((item) => ({ ...item, checked: false })); }),\r\n apiCall('/dri/get-dri-vavs-list', { clientId }).then(({ list }) => { state.vavsList = list.map((item) => ({ ...item, checked: false })); }),\r\n ]);\r\n await apiCall('/environments/get-environment-list', { CLIENT_ID: clientId, INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients }).then(({ environments }) => {\r\n setEnvironmentList(environments);\r\n });\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n render();\r\n }\r\n if (state.isLoading) return ;\r\n\r\n const freeDacsDuts = state.freeDevs.filter((dev) => (dev.type === 'DAC' || dev.type === 'DUT'));\r\n const checkedDevs = freeDacsDuts.filter((dev) => dev.freeDevChecked);\r\n const queryPars = queryString.parse(history.location.search);\r\n\r\n const profilePerms = () => (profile.manageAllClients || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === clientId));\r\n\r\n function tableDuts() {\r\n if (state.dutsList.length === 0 && state.vavsList.length === 0) {\r\n return
(nenhum)
;\r\n }\r\n\r\n if (state.isLoadingDuts) {\r\n return ;\r\n }\r\n\r\n return (\r\n ({ value: item.RTYPE_ID, name: item.RTYPE_NAME }))}\r\n render={() => { getEnvironments(); }}\r\n pageSize={20}\r\n setIsLoad={(bool) => setState({ isLoadingDuts: bool })}\r\n />\r\n );\r\n }\r\n\r\n const modalContent = () => {\r\n if (state.openModal && !modalOptions.includes(state.openModal)) {\r\n return (\r\n
\r\n \r\n \r\n { state.focused = focused; render(); }}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.lastDate)}\r\n />\r\n \r\n \r\n \r\n
\r\n \r\n \r\n Exportar Planilha\r\n \r\n
\r\n
\r\n \r\n
\r\n );\r\n }\r\n return (\r\n <>\r\n );\r\n };\r\n\r\n return (\r\n
\r\n \r\n \r\n { profilePerms()\r\n && (\r\n \r\n {t('programacaoEmMassa')}\r\n \r\n )}\r\n { profile.manageAllClients\r\n && (\r\n \r\n
\r\n \r\n Tipos de Ambientes\r\n \r\n \r\n Atribuição Automática de Responsáveis\r\n \r\n \r\n Faturas\r\n \r\n \r\n {t('unificado')}\r\n \r\n
\r\n
\r\n )}\r\n
\r\n\r\n {(profile.manageAllClients) && (state.freeDevs.length > 0)\r\n && (\r\n \r\n (checkedDevs.length ? openAssociateDevs() : null)}\r\n >\r\n Associar\r\n \r\n )}\r\n >\r\n render()} />\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n {(profile.manageAllClients)\r\n && (\r\n
\r\n openCreateEditUnit()}>Adicionar Unidade\r\n {state.units.length !== 0\r\n && (\r\n <>\r\n setState({ openModal: 'disponibility-export' })}>Exportar Disponibilidade\r\n calculateClientUnitsDisp(clientId)}>Calcular Disponibilidade nos últimos 7 dias\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n )}\r\n >\r\n {(state.units.length === 0) ? (\r\n
(nenhuma)
\r\n ) : (\r\n { getDuts(); }}\r\n isLoading={state.isLoadingDuts}\r\n />\r\n )}\r\n \r\n \r\n\r\n \r\n openCreateEditClass()}>Adicionar Classe de Unidades}\r\n >\r\n {(state.classesList.length === 0) ? (\r\n
(nenhum)
\r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n\r\n \r\n openCreateEditModel()}>CRIAR NOVO MODELO}\r\n >\r\n { state.rateModels.length === 0 ? (
Nenhum modelo
) : (\r\n \r\n ) }\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {(profile.manageAllClients) && openCreateEditMachine()}>Nova Máquina}\r\n {(profile.permissions.isAdminSistema) && deleteGroup()}>Excluir Máquinas}\r\n
\r\n {(state.machinesWithAssetsList.length === 0) ? (\r\n
(nenhuma)
\r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {(profile.permissions.isAdminSistema) && deleteAssociation()}>Excluir Grupos}\r\n {(profile.manageAllClients) && openCreateEditAssociation()}>Adicionar Grupo}\r\n
\r\n {(state.associationsList.length === 0) ? (\r\n
(nenhuma)
\r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n\r\n \r\n \r\n {tableDuts()}\r\n \r\n \r\n \r\n openCreateEditRoomType()}>Adicionar Tipo de Ambiente}\r\n >\r\n {(state.roomTypes.length === 0) ? (\r\n
(nenhum)
\r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n\r\n \r\n \r\n
\r\n {(profile.manageAllClients) && openCreateEditHeatExchangere()}>{t('adicionarTipoTrocadorDeCalor')}}\r\n
\r\n {(false) ? (\r\n
(nenhuma)
\r\n ) : (\r\n \r\n )}\r\n \r\n
\r\n\r\n \r\n \r\n\r\n \r\n \r\n { state.selectedUtility = t('nobreak'); render(); }} key=\"nobreak\">\r\n {t('nobreak')}\r\n \r\n \r\n { state.selectedUtility = t('iluminacao'); render(); }} key=\"iluminacao\">\r\n {t('iluminacao')}\r\n \r\n \r\n \r\n \r\n <>\r\n {state.selectedUtility === t('nobreak') && (\r\n <>\r\n \r\n \r\n )}\r\n {state.selectedUtility === t('iluminacao') && (\r\n <>\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\r\n {state.openModal != null && (\r\n { resetParamsUrl(); !state.gettingCsv && setState({ openModal: null }); }}\r\n >\r\n {state.openModal === 'edit-unit' && (\r\n { state.openModal = null; resetParamsUrl(); render(); }}\r\n onSuccess={afterCreateEditUnit}\r\n />\r\n )}\r\n {state.openModal === 'edit-group' && (\r\n (dam.units!.length === 0 || dam.units!.includes(state.selectedUnit!)))}\r\n dacsList={state.dacsList.filter((dac) => (dac.GROUP_ID != null && (state.selectedGroup && (dac.GROUP_ID === state.selectedGroup.GROUP_ID))))}\r\n onCancel={() => { state.openModal = null; render(); }}\r\n onSuccess={afterCreateEditGroup}\r\n />\r\n )}\r\n {state.openModal === 'edit-machine' && (\r\n \r\n (dac.GROUP_ID != null && (state.selectedGroup && (dac.GROUP_ID === state.selectedGroup.GROUP_ID))))}\r\n onCancel={() => { state.openModal = null; resetParamsUrl(); render(); }}\r\n onSuccess={afterCreateEditMachine}\r\n isViewMachine={state.isViewMachine}\r\n />\r\n \r\n )}\r\n {state.openModal === 'edit-association' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n {state.openModal === 'edit-dut' && (\r\n { state.openModal = null; render(); }}\r\n onSuccess={afterEditDut}\r\n />\r\n )}\r\n {state.openModal === 'edit-room-type' && (\r\n { state.openModal = null; render(); }}\r\n onSuccess={afterCreateEditRoomType}\r\n />\r\n )}\r\n {state.openModal === 'associate-devs' && (\r\n dev.freeDevChecked)}\r\n unitsList={state.units}\r\n groupsList={state.groupsList}\r\n onCancel={() => { state.openModal = null; render(); }}\r\n onSuccess={afterAssociateDevs}\r\n />\r\n )}\r\n {state.openModal === 'edit-model' && (\r\n { state.openModal = null; state.selectedRateModel = null; render(); }}\r\n itemToEdit={state.selectedRateModel}\r\n />\r\n )}\r\n {state.openModal === 'edit-cicle' && (\r\n { state.openModal = null; state.selectedRateCicle = null; render(); }}\r\n />\r\n )}\r\n {state.openModal === 'create-cicle' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n {state.openModal === 'edit-class' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n {state.openModal === 'show-association-groups' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n {state.openModal === 'edit-create-heat-exchanger' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n {state.openModal === 'edit-create-utility' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n\r\n {state.openModal === 'view-utility' && (\r\n { state.openModal = null; render(); }}\r\n />\r\n )}\r\n\r\n { queryPars.aba === undefined ? state.openModal === 'disponibility-export'\r\n && state.gettingCsv\r\n ? (\r\n
\r\n Calculando e gerando planilha...\r\n \r\n
\r\n )\r\n : modalContent() : null}\r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nconst ShowAssociationGroups = ({\r\n associationInfo, onCancel,\r\n}): JSX.Element => {\r\n function CloseModal() {\r\n return (\r\n onCancel()}\r\n >\r\n \r\n \r\n );\r\n }\r\n\r\n associationInfo.GROUPS.sort((a, b) => a.POSITION - b.POSITION);\r\n\r\n function ModalMobile(props: {\r\n title: string\r\n children: JSX.Element\r\n closeModal: () => void\r\n }) {\r\n const { title, children, closeModal } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {title}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {children}\r\n \r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n

Máquinas do Grupo

\r\n {associationInfo.GROUPS.map((group) => (\r\n
\r\n {`${group.GROUP_NAME} `}\r\n {`#${group.POSITION}`}\r\n
\r\n ))}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n { onCancel(); }}\r\n >\r\n
\r\n

Máquinas do Grupo

\r\n {associationInfo.GROUPS.map((group) => (\r\n
\r\n {`${group.GROUP_NAME} `}\r\n {`#${group.POSITION}`}\r\n
\r\n ))}\r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport default withTransaction('ClientPanelPage', 'component')(ClientPanelPage);\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const Form = styled.form`\r\n display: flex;\r\n flex-direction: column;\r\n max-width: 380px;\r\n padding: 20px 10px;\r\n`;\r\n\r\nexport const Card = styled.div`\r\n margin-top: 15px;\r\n border-radius: 8px;\r\n padding: 12px 24px 32px;\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-top: 10px solid ${colors.BlueSecondary};\r\n`;\r\n\r\nexport const PictureBox = styled.div`\r\n display: flex;\r\n width: 280px;\r\n align-items: center;\r\n justify-content: space-between;\r\n padding: 15px;\r\n border-radius: 4px;\r\n`;\r\n","export function MaskPhone(v) {\r\n v = v.replace(/\\D/g, '');\r\n if (v.length > 11) {\r\n v = v.substr(0, 11);\r\n }\r\n if (v.length === 11) {\r\n v = v.replace(/^(\\d{2})(\\d{5})(\\d{4})/, '($1) $2-$3');\r\n } else {\r\n v = v.replace(/^(\\d{2})(\\d{4})(\\d{4})/, '($1) $2-$3');\r\n }\r\n\r\n return v;\r\n}\r\n\r\nexport function MaskCnpj(cnpj) {\r\n cnpj = cnpj.replace(/\\D/g, '');\r\n if (cnpj.length > 14) {\r\n cnpj = cnpj.substr(0, 14);\r\n }\r\n cnpj = cnpj.replace(/^(\\d{2})(\\d{3})(\\d{3})(\\d{4})(\\d{2})/, '$1.$2.$3/$4-$5');\r\n\r\n return cnpj;\r\n}\r\n\r\nexport function MaskCPF(cpf) {\r\n cpf = cpf.replace(/\\D/g, '');\r\n if (cpf.length > 11) {\r\n cpf = cpf.substr(0, 11);\r\n }\r\n cpf = cpf.replace(/^(\\d{3})(\\d{3})(\\d{3})(\\d{2})/, '$1.$2.$3-$4');\r\n\r\n return cpf;\r\n}\r\n","export function generateNameFormatted(name, subName) {\r\n if (name) {\r\n if (name.length > 30) {\r\n return `${name.substring(0, 30)}... - ${subName}`;\r\n }\r\n return `${name} - ${subName}`;\r\n }\r\n return `Celsius 360 - ${subName}`;\r\n}\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport { Radio, Image } from 'antd';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useForm } from 'react-hook-form';\r\nimport { FaRegTrashAlt, FaFileUpload } from 'react-icons/fa';\r\nimport {\r\n useHistory, useRouteMatch,\r\n} from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport {\r\n Button, Loader, AntSwitch,\r\n} from 'components';\r\nimport { Input } from 'components/NewInputs/Default';\r\nimport { AddNewClientParams } from 'metadata/AddNewClient.model';\r\nimport { EditClientParams } from 'metadata/EditClient.model';\r\nimport { ClientPanel } from 'pages/ClientPanel/ClientPanel';\r\nimport { apiCall } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport { Form, Card, PictureBox } from './styles';\r\nimport { MaskCnpj, MaskPhone } from '~/helpers/maskInputs';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\nimport { t } from 'i18next';\r\n\r\ntype ClientType = 'fabricante' | 'cliente' | 'mantenedor';\r\n\r\nconst FORM_VALIDATORS = {\r\n name: {\r\n required: 'O campo de nome é necessário',\r\n },\r\n email: {\r\n required: 'O campo de email é necessário',\r\n },\r\n phone: {\r\n required: false,\r\n validate: (value) => {\r\n if (value) {\r\n const regex = new RegExp(/^\\([0-9]{2}\\) [0-9]?[0-9]{4}-[0-9]{4}$/);\r\n return regex.test(value);\r\n } return true;\r\n },\r\n },\r\n cnpj: {\r\n required: false,\r\n validate: (value) => {\r\n if (value) {\r\n const regex = new RegExp(/^\\d{2}\\.\\d{3}\\.\\d{3}\\/\\d{4}-\\d{2}$/);\r\n return regex.test(value);\r\n } return true;\r\n },\r\n },\r\n};\r\n\r\ntype Inputs = {\r\n email: string,\r\n name: string,\r\n phone: string,\r\n cnpj: string,\r\n};\r\n\r\nexport const EditClient = (): JSX.Element => {\r\n const history = useHistory();\r\n const match = useRouteMatch<{ clientId: string }>();\r\n const fabricante = match.url.includes('fabricantes');\r\n const clientId = match.params.clientId != null ? Number(match.params.clientId) : null;\r\n const [loading, setLoading] = useState(false);\r\n const [picture, setPicture] = useState(null);\r\n const [clientType, setClientType] = useState(fabricante ? 'fabricante' : 'cliente');\r\n const [enabled, setEnabled] = useState(true);\r\n const [phoneNumber, setPhoneNumber] = useState('');\r\n const [cnpj, setCnpj] = useState('');\r\n const [clientInfo, setClientInfo] = useState<{\r\n CLIENT_ID: number;\r\n NAME: string;\r\n EMAIL: string;\r\n PICTURE: string;\r\n ENABLED: string;\r\n PERMS_C: string;\r\n clientType:('fabricante' | 'cliente' | 'mantenedor')[];\r\n CNPJ: string;\r\n PHONE: string;\r\n}>();\r\n\r\n const {\r\n register, setValue, handleSubmit, watch, formState: { errors },\r\n } = useForm({\r\n mode: 'all',\r\n });\r\n\r\n const handleFormSubmition = async ({\r\n email, name,\r\n }: Inputs) => {\r\n try {\r\n setLoading(true);\r\n\r\n const defaultParams = {\r\n NAME: name,\r\n EMAIL: email,\r\n PICTURE: (picture && String(picture)) || null,\r\n clientType: [clientType],\r\n ENABLED: enabled ? '1' : '0' as '1' | '0',\r\n CNPJ: cnpj,\r\n PHONE: phoneNumber,\r\n };\r\n\r\n if (clientId != null) {\r\n const params: EditClientParams['reqParams'] = {\r\n ...defaultParams,\r\n CLIENT_ID: clientId,\r\n };\r\n\r\n await apiCall('/clients/edit-client', params);\r\n toast.success('Alterado com sucesso');\r\n } else {\r\n const params: AddNewClientParams['reqParams'] = defaultParams;\r\n await apiCall('/clients/add-new-client', params);\r\n toast.success('Adicionado com sucesso');\r\n }\r\n history.push(fabricante ? '/painel/fabricantes' : '/painel/clientes/listagem');\r\n } catch (e) {\r\n console.log(e);\r\n toast.error('Houve erro');\r\n } finally {\r\n setLoading(false);\r\n }\r\n };\r\n\r\n const fetchServerData = async () => {\r\n if (clientId == null) return;\r\n setLoading(true);\r\n try {\r\n const reqParams = { CLIENT_ID: clientId };\r\n const { client } = await apiCall('/clients/get-client-info', reqParams);\r\n setClientInfo(client);\r\n\r\n let auxClientType: ClientType | null = null;\r\n if ((client.clientType || []).includes('cliente')) auxClientType = 'cliente';\r\n if ((client.clientType || []).includes('mantenedor')) auxClientType = 'mantenedor';\r\n if ((client.clientType || []).includes('fabricante')) auxClientType = 'fabricante';\r\n\r\n auxClientType && setClientType(auxClientType);\r\n setValue('email', client.EMAIL);\r\n setValue('name', client.NAME);\r\n setValue('cnpj', client.CNPJ);\r\n setValue('phone', client.PHONE);\r\n setPicture(client.PICTURE);\r\n setEnabled(client.ENABLED === '1');\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n setLoading(false);\r\n };\r\n\r\n const selectPictureFile = () => {\r\n const htmlNode: any = document.getElementById('file-input');\r\n if (htmlNode !== null) {\r\n htmlNode.onchange = () => {\r\n if (htmlNode.files.length === 1) {\r\n const reader = new FileReader();\r\n reader.addEventListener(\r\n 'load',\r\n () => {\r\n setPicture(reader.result);\r\n },\r\n false,\r\n );\r\n reader.readAsDataURL(htmlNode.files[0]);\r\n }\r\n };\r\n htmlNode.click();\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n fetchServerData();\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(clientInfo?.NAME, t('painel'))}\r\n \r\n \r\n \r\n {loading\r\n ? \r\n : (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setPhoneNumber(MaskPhone(e.target.value))}\r\n value={phoneNumber}\r\n ref={register}\r\n />\r\n \r\n \r\n \r\n \r\n setCnpj(MaskCnpj(e.target.value))}\r\n value={cnpj}\r\n error={errors.cnpj ? 'CNPJ Inválido' : undefined}\r\n />\r\n \r\n \r\n\r\n
\r\n
Logo:
\r\n {picture ? (\r\n \r\n \r\n\r\n setPicture(null)}\r\n >\r\n \r\n \r\n\r\n \r\n ) : (\r\n \r\n\r\n Selecionar imagem\r\n \r\n \r\n )}\r\n \r\n
\r\n
\r\n setClientType(e.target.value)} value={clientType}>\r\n Cliente\r\n Mantenedor\r\n Fabricante\r\n \r\n
\r\n
\r\n setEnabled(!enabled)}\r\n />\r\n
\r\n \r\n
\r\n )}\r\n
\r\n {clientId\r\n && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('EditClient', 'component')(EditClient);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\nimport { CalendarIcon } from '~/icons';\r\n\r\nexport const Container = styled.div``;\r\n\r\nexport const SelectContainer = styled.div`\r\nfont-weight: bold;\r\nposition: fixed;\r\nbackground: white;\r\nborder: 2px solid #d3d3d3;\r\nborder-radius: 10px;\r\nbox-shadow: 5px 6px 11px rgba(0,0,0,0.24), 0px 14px 15px rgba(0,0,0,0.12);\r\n`;\r\n\r\nexport const LoaderContainer = styled.div`\r\nposition: absolute;\r\nleft: 0;\r\ntop: 0;\r\nwidth: 100%;\r\nheight: 100%;\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: center;\r\njustify-content: center;\r\nz-index: 2;\r\nbackground-color: rgba(255, 255, 255, 0.5);\r\n`;\r\n\r\nexport const Scroll = styled.div`\r\noverflow-x: auto;\r\n`;\r\n\r\nexport const FaultsRow = styled.div`\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: flex-start;\r\njustify-content: space-around;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\ncolor: ${colors.LightBlue};\r\n`;\r\n\r\nexport const TransparentLink = styled(Link)`\r\ncolor: inherit;\r\ntext-decoration: inherit;\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder}\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const ContainerDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const TitleLabel = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const CheckboxDay = styled.div`\r\n display: flex;\r\n margin-top: 5px;\r\n`;\r\n\r\nexport const Text = styled.span`\r\n font-weight: normal;\r\n font-size: 1em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n margin-left: 5px;\r\n`;\r\n","import { useState } from 'react';\r\n\r\nimport { useHistory } from 'react-router-dom';\r\n\r\nimport { getUserProfile } from 'helpers/userProfile';\r\n\r\nimport { Header } from '../../Analysis/Header';\r\n\r\nexport const FaultsLayout = ({ ...props }): JSX.Element => {\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const links = [\r\n {\r\n link: '/painel/falhas/dac',\r\n title: 'DAC',\r\n },\r\n {\r\n link: '/painel/falhas/dut',\r\n title: 'DUT',\r\n },\r\n {\r\n link: '/painel/falhas/dam',\r\n title: 'DAM',\r\n },\r\n {\r\n link: '/painel/falhas/instalacao',\r\n title: 'Instalação',\r\n },\r\n {\r\n link: '/painel/falhas/desativadas',\r\n title: 'Desativadas',\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n
\r\n \r\n );\r\n};\r\n","import { useEffect, useMemo } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport { Box } from 'reflexbox';\r\nimport moment from 'moment';\r\n\r\nimport {\r\n Loader, Checkbox, Select, NewTable, InputSearch, Button,\r\n} from 'components';\r\nimport { HealthIcon, healthLevelDesc } from 'components/HealthIcon';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, apiCallDownload } from 'providers';\r\n\r\nimport { SingleDatePicker, DateRangePicker } from 'react-dates';\r\nimport { t } from 'i18next';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n SelectContainer,\r\n LoaderContainer,\r\n Scroll,\r\n FaultsRow,\r\n StyledLink,\r\n TransparentLink,\r\n Container,\r\n} from './styles';\r\nimport { FaultsLayout } from '../FaultsLayout';\r\nimport { FaultAction } from '../../../providers/types/api-private';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { useLocation } from 'react-router-dom';\r\n\r\ntype Fault = {\r\n id: string;\r\n origem: string;\r\n desc: string;\r\n primDet: string;\r\n ultDet: string;\r\n status: string;\r\n lastAction: FaultAction,\r\n statusDesc: string;\r\n checked?: boolean;\r\n}\r\n\r\ntype Dev = {\r\n DEV_ID: string;\r\n CLIENT_NAME: string;\r\n UNIT_NAME: string;\r\n UNIT_ID: number;\r\n H_INDEX: number;\r\n hLevelDesc: string;\r\n faults: Fault[];\r\n};\r\n\r\nconst APPROVAL_DESCS = {\r\n APPROVED: 'Aprovado',\r\n REJECTED: 'Reprovado',\r\n ERASED: 'Apagado',\r\n PENDING: 'Pendente',\r\n RESTABLISHED: 'Restabelecido',\r\n RESTAB_WAITING: 'Restabelecimento esperando falha pendente',\r\n RESTAB_PENDING: 'Restabelecimento manual pendente',\r\n};\r\n\r\nexport function FaultsList(): JSX.Element {\r\n const [state, render, setState] = useStateVar({\r\n loading: false,\r\n searchText: '',\r\n selectPositionX: 223,\r\n selectPositionY: 1536,\r\n filterOpts: [\r\n { value: 'PENDING', label: 'Pendentes' }, // o valor padrão é \"PENDING\"\r\n { value: 'APPROVED', label: 'Aprovadas' },\r\n { value: 'REJECTED', label: 'Reprovadas' },\r\n { value: 'RESTAB_WAITING', label: 'Restabelecimento esperando falha pendente' },\r\n { value: 'ALL', label: 'Todas' },\r\n ],\r\n statusSelection: null as null|{ value: string, label: string },\r\n healthSelection: null as null|{ value: string, label: string },\r\n unitSelection: 0 as number,\r\n clientSelection: 0 as number,\r\n dataSelection: null as null|{ value: string, label: string },\r\n devs: [] as Dev[],\r\n faults_count: 0,\r\n dateStart: null as null|moment.Moment,\r\n dateEnd: null as null|moment.Moment,\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n focusedInput: null as 'endDate'|'startDate'|null,\r\n focused: false,\r\n isModalOpen: false,\r\n multiDays: false,\r\n });\r\n const { pathname } = useLocation();\r\n\r\n const faultType: 'dac'|'dut'| undefined = useMemo(() => {\r\n const splitPath = pathname.split('/');\r\n const faultType = splitPath[splitPath.length - 1];\r\n console.log(faultType);\r\n if (faultType === 'dac' || faultType === 'dut') {\r\n return faultType;\r\n }\r\n }, [pathname]);\r\n\r\n useEffect(() => {\r\n loadData();\r\n }, [faultType]);\r\n\r\n function filterFaultsBySearchTerms(dac, searchTerms, filteredFaults) {\r\n for (const term of searchTerms) {\r\n if (shouldSkipTerm(dac, term)) {\r\n continue;\r\n }\r\n filteredFaults = filterFaultRowsByTerm(filteredFaults, term);\r\n if (!filteredFaults.length) {\r\n break;\r\n }\r\n }\r\n return filteredFaults;\r\n }\r\n\r\n function shouldSkipTerm(dev, term) {\r\n return (\r\n (dev.CLIENT_NAME || '').toLowerCase().includes(term)\r\n || (dev.UNIT_NAME || '').toLowerCase().includes(term)\r\n || (dev.DEV_ID || '').toLowerCase().includes(term)\r\n || (dev.hLevelDesc || '').toLowerCase().includes(term)\r\n );\r\n }\r\n\r\n function filterFaultRowsByTerm(filteredFaults, term) {\r\n return filteredFaults.filter((faultRow) => (\r\n (faultRow.origem || '').toLowerCase().includes(term)\r\n || (faultRow.desc || '').toLowerCase().includes(term)\r\n ));\r\n }\r\n\r\n function applyFilters(filteredFaults, dataSelection, dateStart, dateEnd) {\r\n if (dataSelection && dataSelection.value !== 'ALL') {\r\n filteredFaults = filteredFaults.filter((faultRow) => (faultRow.status || '') === dataSelection?.value);\r\n }\r\n\r\n if (dateStart) {\r\n filteredFaults = filteredFaults.filter((faultRow) => {\r\n const faultDate = moment(faultRow.primDet);\r\n return faultDate.isSameOrAfter(dateStart, 'day');\r\n });\r\n }\r\n\r\n if (dateEnd) {\r\n filteredFaults = filteredFaults.filter((faultRow) => {\r\n const faultDate = moment(faultRow.primDet);\r\n return faultDate.isSameOrBefore(dateEnd, 'day');\r\n });\r\n }\r\n\r\n return filteredFaults;\r\n }\r\n\r\n const filteredDacs = useMemo(() => {\r\n const searchTerms = state.searchText.toLowerCase().split(' ').map((x) => x.trim()).filter((x) => !!x);\r\n if (!searchTerms.length && state.dataSelection?.value === 'ALL' && !state.dateStart && !state.dateEnd) {\r\n state.faults_count = state.devs.length;\r\n return state.devs;\r\n }\r\n const auxiliarFilteredDacs: Dev[] = [];\r\n\r\n for (const dac of state.devs) {\r\n if (dac.faults !== undefined) {\r\n let filteredFaults = dac.faults;\r\n\r\n filteredFaults = applyFilters(filteredFaults, state.dataSelection, state.dateStart, state.dateEnd);\r\n\r\n filteredFaults = filterFaultsBySearchTerms(dac, searchTerms, filteredFaults);\r\n\r\n if (filteredFaults && filteredFaults.length) {\r\n auxiliarFilteredDacs.push({ ...dac, faults: filteredFaults });\r\n }\r\n }\r\n }\r\n state.faults_count = auxiliarFilteredDacs.length;\r\n return auxiliarFilteredDacs;\r\n },\r\n [state.devs, state.searchText, state.dataSelection]);\r\n\r\n async function loadData() {\r\n setState({ loading: true });\r\n try {\r\n const { list: faultyDacs, expirationLimit } = await apiCall('/dev/get-faults', { devType: faultType });\r\n\r\n state.devs = [];\r\n\r\n for (const item of faultyDacs) {\r\n const faults: Fault[] = [];\r\n\r\n if (item.fdetected) {\r\n Object.values(item.fdetected).forEach((falha) => {\r\n faults.push(buildFaultLine(falha, expirationLimit));\r\n });\r\n }\r\n const hLevelDesc = healthLevelDesc[String(item.H_INDEX)];\r\n state.devs.push(Object.assign(item, { faults, hLevelDesc, rowkey: item.DEV_ID }));\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n setState({ loading: false });\r\n }\r\n\r\n function buildFaultLine(\r\n falha: {\r\n id: string;\r\n origin: string;\r\n faultName: string;\r\n faultLevel: number;\r\n lastActionTime: number;\r\n lastAction: FaultAction;\r\n lastDet: number;\r\n lastRiseTS: string;\r\n firstRiseTS: string;\r\n },\r\n expirationLimit?: number,\r\n ) {\r\n if (expirationLimit && (falha?.lastActionTime < expirationLimit)) {\r\n if (falha.lastAction === 'ERASED' || falha.lastAction === 'REJECTED') {\r\n const falhaTemp: { lastAction?: string } = falha;\r\n delete falhaTemp.lastAction;\r\n }\r\n }\r\n\r\n let desc = falha.faultName || '-';\r\n let status: string = falha.lastAction || 'PENDING';\r\n if (falha.lastAction === 'RESTAB_PENDING') {\r\n desc = `(Restabelecimento) ${desc}`;\r\n status = 'Pendente';\r\n }\r\n return {\r\n id: falha.id,\r\n origem: falha.origin || '-',\r\n desc,\r\n primDet: (falha?.firstRiseTS?.substring(0, 19)?.replace('T', ' ')) || '-',\r\n ultDet: (falha?.lastRiseTS?.substring(0, 19)?.replace('T', ' ')) || '-',\r\n status,\r\n statusDesc: APPROVAL_DESCS[falha.lastAction],\r\n lastAction: falha.lastAction,\r\n };\r\n }\r\n\r\n async function exportFaults() {\r\n try {\r\n const exportResponse = await apiCallDownload('/export-dacs-faults', {});\r\n const link = document.getElementById('downloadLink') as any;\r\n if (link !== null) {\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'Falhas.xlsx';\r\n link.click();\r\n toast.success('Exportado com sucesso.');\r\n } else {\r\n throw new Error();\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível exportar!');\r\n }\r\n }\r\n\r\n function handleFaultItemClick(event, fault: { checked?: boolean }) {\r\n state.selectPositionX = event.clientX - 300;\r\n state.selectPositionY = event.clientY;\r\n fault.checked = !fault.checked;\r\n render();\r\n }\r\n\r\n const TABLE_COLUMNS = [\r\n {\r\n name: 'client',\r\n value: t('cliente'),\r\n accessor: 'CLIENT_NAME',\r\n },\r\n {\r\n name: 'unit',\r\n value: t('unidade'),\r\n accessor: 'UNIT_NAME',\r\n render: (props: Dev) => ((props.UNIT_NAME) ? {props.UNIT_NAME || '-'} : (props.UNIT_NAME || '-')),\r\n },\r\n {\r\n name: 'dev',\r\n value: t('dispositivo'),\r\n accessor: 'DEV_ID',\r\n render: ({ DEV_ID }: Dev) => {DEV_ID},\r\n },\r\n {\r\n name: 'health_now',\r\n value: t('saudeAtual'),\r\n accessor: 'H_INDEX',\r\n render: ({ H_INDEX }: Dev) => ,\r\n },\r\n {\r\n name: 'origin',\r\n value: t('origem'),\r\n sortable: false,\r\n accessor: 'fault.origem',\r\n render: ({ faults }: Dev) => (\r\n \r\n {faults.map((fault) =>
{fault.origem}
)}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'fault',\r\n value: t('falhasDetectadas'),\r\n sortable: false,\r\n accessor: 'fault.desc',\r\n render: ({ faults }: Dev) => (\r\n \r\n {faults.map((fault) =>
{fault.desc}
)}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'first_alert',\r\n value: t('1oAlerta'),\r\n sortable: false,\r\n accessor: 'fault.primDet',\r\n render: ({ faults }: Dev) => (\r\n \r\n {faults.map((fault) =>
{fault.primDet}
)}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'last_alert',\r\n value: t('ultimaDet'),\r\n sortable: false,\r\n accessor: 'fault.ultDet',\r\n render: ({ faults, DEV_ID }: Dev) => (\r\n \r\n \r\n {faults.map((fault) =>
{fault.ultDet}
)}\r\n
\r\n
\r\n ),\r\n },\r\n {\r\n name: 'status',\r\n value: 'Status',\r\n sortable: false,\r\n accessor: 'fault.status',\r\n render: ({ faults }: Dev) => (\r\n \r\n {faults.map((fault) =>
{APPROVAL_DESCS[fault.status] || fault.status}
)}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'checkbox',\r\n value: '',\r\n sortable: false,\r\n checkable: true,\r\n checkValue: [{ value: 'faults', type: 'array' }, { value: 'checked', type: 'check' }],\r\n width: 50,\r\n render: ({ faults, DEV_ID }: Dev) => (\r\n \r\n {faults.map((fault) => (\r\n handleFaultItemClick(event, fault)}\r\n />\r\n ))}\r\n \r\n ),\r\n },\r\n ];\r\n\r\n const selectedDacFaults = [] as { devId: string, faultId: string, state: string }[];\r\n state.devs.forEach((dev) => {\r\n dev.faults.forEach((fault) => {\r\n if (fault.checked) {\r\n selectedDacFaults.push({ devId: dev.DEV_ID, faultId: fault.id, state: fault.lastAction });\r\n }\r\n });\r\n });\r\n\r\n function onMultidaysClick() {\r\n state.multiDays = !state.multiDays;\r\n if (!state.multiDays) {\r\n state.dateEnd = state.dateStart;\r\n }\r\n console.log(state.multiDays);\r\n render();\r\n }\r\n\r\n return (\r\n \r\n \r\n Diel Energia - DACs com Falha\r\n \r\n \r\n
\r\n \r\n
\r\n {state.loading ? (\r\n \r\n \r\n Carregando\r\n \r\n ) : (\r\n <>\r\n
\r\n
\r\n \r\n setState({ searchText: e.target.value })}\r\n />\r\n \r\n \r\n { state.dataSelection = opt; render(); }}\r\n notNull\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n

\r\n {state.faults_count}\r\n {' '}\r\n falha(s) encontrada(s)\r\n

\r\n
\r\n
\r\n {(selectedDacFaults.length > 0) && (\r\n \r\n { applyActionToSelectedDacs(opt.value, selectedDacFaults); }}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nexport async function applyActionToSelectedDacs(action: 'approve'|'reject'|'erase'|'disable', selectedFaults: { devId: string, faultId: string, state: string}[]) {\r\n try {\r\n if (!selectedFaults.length) return;\r\n\r\n if (action === 'approve') {\r\n if (!window.confirm('Deseja alterar o índice de saúde e confirmar a(s) falha(s)?')) return;\r\n for (const falha of selectedFaults) {\r\n let faultAction: 'APPROVED'|'REJECTED'|'ERASED'|'RESTABLISHED' = 'APPROVED';\r\n if (falha.state === 'RESTAB_PENDING') {\r\n faultAction = 'RESTABLISHED';\r\n }\r\n await apiCall('/dac/detected-fault-confirmation', {\r\n devId: falha.devId, faultId: falha.faultId, action: faultAction,\r\n });\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n\r\n if (action === 'reject') {\r\n if (!window.confirm('Deseja reprovar a(s) falha(s)?')) return;\r\n for (const falha of selectedFaults) {\r\n let faultAction: 'APPROVED'|'REJECTED'|'ERASED'|'RESTABLISHED' = 'REJECTED';\r\n if (falha.state === 'RESTAB_PENDING') {\r\n faultAction = 'APPROVED';\r\n }\r\n await apiCall('/dac/detected-fault-confirmation', {\r\n devId: falha.devId, faultId: falha.faultId, action: faultAction,\r\n });\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n\r\n if (action === 'erase') {\r\n if (!window.confirm('Deseja ignorar a(s) falha(s)?')) return;\r\n for (const falha of selectedFaults) {\r\n await apiCall('/dac/detected-fault-confirmation', {\r\n devId: falha.devId, faultId: falha.faultId, action: 'ERASED',\r\n });\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n\r\n if (action === 'disable') {\r\n if (!window.confirm('Deseja desativar a verificação da(s) falha(s)?')) return;\r\n for (const falha of selectedFaults) {\r\n await apiCall('/ignore-fault-check', {\r\n dev_id: falha.devId, faultId: falha.faultId, ignore: true,\r\n });\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n } catch (err) {\r\n console.log(err); toast.error('Houve erro');\r\n }\r\n}\r\n\r\nexport default withTransaction('FaultsListDAC', 'component')(FaultsList);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const LoaderContainer = styled.div`\r\nposition: absolute;\r\nleft: 0;\r\ntop: 0;\r\nwidth: 100%;\r\nheight: 100%;\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: center;\r\njustify-content: center;\r\nz-index: 2;\r\nbackground-color: rgba(255, 255, 255, 0.5);\r\n`;\r\n\r\nexport const Scroll = styled.div`\r\noverflow-x: auto;\r\n`;\r\n\r\nexport const FaultsRow = styled.div`\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: flex-start;\r\njustify-content: space-around;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\ncolor: ${colors.LightBlue};\r\n`;\r\n\r\nexport const TransparentLink = styled(Link)`\r\ncolor: inherit;\r\ntext-decoration: inherit;\r\n`;\r\n\r\nexport const SelectContainer = styled.div`\r\nfont-weight: bold;\r\nposition: fixed;\r\nbackground: white;\r\nborder: 2px solid #d3d3d3;\r\nborder-radius: 10px;\r\nbox-shadow: 5px 6px 11px rgba(0,0,0,0.24), 0px 14px 15px rgba(0,0,0,0.12);\r\n`;\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n Loader, Checkbox, Select, NewTable,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n LoaderContainer,\r\n Scroll,\r\n FaultsRow,\r\n StyledLink,\r\n TransparentLink,\r\n SelectContainer,\r\n} from './styles';\r\nimport { FaultsLayout } from '../FaultsLayout';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nconst approvalDesc = {\r\n APPROVED: 'Aprovado',\r\n REJECTED: 'Reprovado',\r\n ERASED: 'Apagado',\r\n};\r\n\r\nfunction urlText(text) {\r\n return encodeURIComponent((text || 'null').replace(/ /g, '-'));\r\n}\r\n\r\nexport const FaultsListDAM = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n dams: [] as {\r\n DAM_ID: string\r\n faults: {\r\n id: string\r\n desc: string\r\n primDet: string\r\n ultDet: string\r\n checked?: boolean\r\n }[]\r\n }[],\r\n loading: false,\r\n selectPositionX: 223,\r\n selectPositionY: 1536,\r\n columns: [\r\n {\r\n name: 'client',\r\n value: 'Cliente',\r\n accessor: 'CLIENT_NAME',\r\n },\r\n {\r\n name: 'unit',\r\n value: 'Unidade',\r\n accessor: 'UNIT_NAME',\r\n render: (props) => ((props.UNIT_NAME) ? {props.UNIT_NAME || '-'} : (props.UNIT_NAME || '-')),\r\n },\r\n {\r\n name: 'dam',\r\n value: 'DAM',\r\n accessor: 'DAM_ID',\r\n render: (props) => {props.DAM_ID},\r\n },\r\n {\r\n name: 'fault',\r\n value: 'Falha',\r\n sortable: false,\r\n render: (props) => (\r\n \r\n {props.faults.map((fault) =>
{fault.desc}
)}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'firstAlert',\r\n value: '1º Alerta',\r\n sortable: false,\r\n render: (props) => (\r\n \r\n {props.faults.map((fault) =>
{fault.primDet}
)}\r\n
\r\n ),\r\n },\r\n {\r\n name: 'lastDetec',\r\n value: 'Última Detecção',\r\n sortable: false,\r\n render: (props) => (\r\n \r\n \r\n {props.faults.map((fault) =>
{fault.ultDet}
)}\r\n
\r\n
\r\n ),\r\n },\r\n {\r\n name: 'checkbox',\r\n value: '',\r\n sortable: false,\r\n checkable: true,\r\n checkValue: [{ value: 'faults', type: 'array' }, { value: 'checked', type: 'check' }],\r\n width: 50,\r\n render: (props) => (\r\n \r\n {props.faults.map((fault) => (\r\n {\r\n state.selectPositionX = event.clientX - 300;\r\n state.selectPositionY = event.clientY;\r\n fault.checked = !fault.checked;\r\n render();\r\n }}\r\n />\r\n ))}\r\n \r\n ),\r\n },\r\n ],\r\n });\r\n\r\n const loadData = () => {\r\n Promise.resolve().then(async () => {\r\n setState({ loading: true });\r\n try {\r\n const [\r\n { list: faultyDams },\r\n ] = await Promise.all([\r\n apiCall('/get-dams-faults', {}),\r\n ]);\r\n\r\n state.dams = [];\r\n\r\n for (const item of faultyDams) {\r\n const faults = [] as (typeof state.dams)[0]['faults'];\r\n if (item.fdetected) {\r\n Object.values(item.fdetected).forEach((falha) => {\r\n faults.push({\r\n id: falha.id,\r\n desc: falha.faultName || '-',\r\n primDet: (falha.firstRiseTS && new Date(falha.firstRiseTS - 3 * 60 * 60 * 1000).toISOString().substr(0, 19).replace('T', ' ')) || '-',\r\n ultDet: (falha.lastRiseTS && new Date(falha.lastRiseTS - 3 * 60 * 60 * 1000).toISOString().substr(0, 19).replace('T', ' ')) || '-',\r\n });\r\n });\r\n }\r\n state.dams.push(Object.assign(item, { faults }));\r\n }\r\n } catch (err) { console.log(err); }\r\n setState({ loading: false });\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n render();\r\n loadData();\r\n }, []);\r\n\r\n async function applyActionToSelectedDams(action, selectedFaults) {\r\n try {\r\n if (!selectedFaults.length) return;\r\n\r\n if (action === 'erase') {\r\n if (!window.confirm('Deseja ignorar a(s) falha(s)?')) return;\r\n for (const falha of selectedFaults) {\r\n await apiCall('/dam/clear-fault-daminop', { damId: falha.devId });\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n const selectedDamFaults = [] as { devId: string, faultId: string }[];\r\n state.dams.forEach((dev) => {\r\n dev.faults.forEach((fault) => {\r\n if (fault.checked) {\r\n selectedDamFaults.push({ devId: dev.DAM_ID, faultId: fault.id });\r\n }\r\n });\r\n });\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - DAMs com Falha\r\n \r\n \r\n
\r\n \r\n
\r\n {state.loading && (\r\n \r\n \r\n Carregando\r\n \r\n )}\r\n {(!state.loading)\r\n && (\r\n <>\r\n {(selectedDamFaults.length > 0) && (\r\n \r\n { applyActionToSelectedDams(opt.value, selectedDamFaults); }}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('FaultsListDAM', 'component')(FaultsListDAM);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const Container = styled.div``;\r\n\r\nexport const SelectContainer = styled.div`\r\nfont-weight: bold;\r\nposition: fixed;\r\nbackground: white;\r\nborder: 2px solid #d3d3d3;\r\nborder-radius: 10px;\r\nbox-shadow: 5px 6px 11px rgba(0,0,0,0.24), 0px 14px 15px rgba(0,0,0,0.12);\r\n`;\r\n\r\nexport const LoaderContainer = styled.div`\r\nposition: absolute;\r\nleft: 0;\r\ntop: 0;\r\nwidth: 100%;\r\nheight: 100%;\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: center;\r\njustify-content: center;\r\nz-index: 2;\r\nbackground-color: rgba(255, 255, 255, 0.5);\r\n`;\r\n\r\nexport const Scroll = styled.div`\r\noverflow-x: auto;\r\nmargin-top: 25px;\r\n`;\r\n\r\nexport const FaultsRow = styled.div`\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: flex-start;\r\njustify-content: space-around;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\ncolor: ${colors.LightBlue};\r\n`;\r\n\r\nexport const TransparentLink = styled(Link)`\r\ncolor: inherit;\r\ntext-decoration: inherit;\r\n`;\r\n","import {\r\n useEffect,\r\n useMemo,\r\n useRef,\r\n} from 'react';\r\n\r\nimport { CSVLink } from 'react-csv';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport { Box } from 'reflexbox';\r\nimport moment from 'moment';\r\n\r\nimport {\r\n Loader, NewTable, InputSearch, Button,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n LoaderContainer,\r\n Scroll,\r\n FaultsRow,\r\n StyledLink,\r\n Container,\r\n} from './styles';\r\nimport { FaultsLayout } from '../FaultsLayout';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\ntype Fault = {\r\n fault_name: string,\r\n dev_id: string,\r\n fault_time?: string,\r\n return_time?: string,\r\n notif_type: 'Detect' | 'Return',\r\n}\r\n\r\ntype Dac = {\r\n DAC_ID: string;\r\n CLIENT_NAME: string;\r\n UNIT_NAME: string;\r\n UNIT_ID: number;\r\n faults: Fault[];\r\n};\r\n\r\nexport function FaultsListInstallation(): JSX.Element {\r\n const [state, render, setState] = useStateVar({\r\n loading: false,\r\n searchText: '',\r\n selectPositionX: 223,\r\n selectPositionY: 1536,\r\n dacs: [] as Dac[],\r\n csvData: [] as {\r\n DAC_ID: string,\r\n CLIENT_NAME: string,\r\n UNIT_NAME: string,\r\n falha: string,\r\n dataEntrada: string,\r\n dataSaida: string,\r\n }[],\r\n });\r\n\r\n const CSVheader = [\r\n { label: 'Cliente', key: 'CLIENT_NAME' },\r\n { label: 'Unidade', key: 'UNIT_NAME' },\r\n { label: 'Dispositivo', key: 'DAC_ID' },\r\n { label: 'Falha', key: 'falha' },\r\n { label: 'Data de Entrada', key: 'dataEntrada' },\r\n { label: 'Data de Saída', key: 'dataSaida' },\r\n ];\r\n\r\n const csvLinkEl = useRef();\r\n\r\n useEffect(() => {\r\n loadData();\r\n }, []);\r\n\r\n const filteredDacs = useMemo(() => {\r\n const searchTerms = state.searchText.toLowerCase().split(' ').map((x) => x.trim()).filter((x) => !!x);\r\n if (!searchTerms.length) return state.dacs;\r\n const auxiliarFilteredDacs: Dac[] = [];\r\n\r\n for (const dac of state.dacs) {\r\n if (dac.faults !== undefined) {\r\n let filteredFaults = dac.faults;\r\n for (const term of searchTerms) {\r\n if ((dac.CLIENT_NAME || '').toLowerCase().includes(term)) { continue; }\r\n if ((dac.UNIT_NAME || '').toLowerCase().includes(term)) { continue; }\r\n if ((dac.DAC_ID || '').toLowerCase().includes(term)) { continue; }\r\n filteredFaults = filteredFaults.filter((faultRow) => (faultRow.fault_name || '').toLowerCase().includes(term));\r\n\r\n if (!filteredFaults.length) break;\r\n }\r\n\r\n if (filteredFaults && filteredFaults.length) {\r\n auxiliarFilteredDacs.push({ ...dac, faults: filteredFaults });\r\n }\r\n }\r\n }\r\n return auxiliarFilteredDacs;\r\n },\r\n [state.dacs, state.searchText]);\r\n\r\n async function loadData() {\r\n setState({ loading: true });\r\n try {\r\n const reqParams = {\r\n startTime: moment().add(-2, 'w').format('YYYY-MM-DDThh:mm:ss'), // não usa toISOString pois seria necessário retirar a timezone.\r\n };\r\n const { falhas: faultyDacs, dacs: dacInfos, success } = await apiCall('/dac/get-installation-faults', reqParams);\r\n state.dacs = [];\r\n\r\n for (const [devId, faults] of Object.entries(faultyDacs)) {\r\n const dacFaults: Fault[] = [];\r\n for (const faultsList of Object.values(faults)) {\r\n faultsList.sort((a, b) => {\r\n if (a.fault_time > b.fault_time) {\r\n return 1;\r\n }\r\n if (a.fault_time < b.fault_time) {\r\n return -1;\r\n }\r\n return 0;\r\n });\r\n\r\n const filteredFaults = faultsList.filter((fault, index, list) => {\r\n // o objetivo é ter somente a primeira ocorrência de cada estado (detectado ou retornado) para montar uma entrada na lista para cada par.\r\n if (index === 0) return true; // sempre mantém o primeiro\r\n const former = list[index - 1];\r\n if (fault.notif_type === former.notif_type) return false; // se notif_type não variar, descartar o atual\r\n return true;\r\n });\r\n\r\n for (const fault of filteredFaults) {\r\n fault.fault_time = fault.fault_time.replace('T', ' ');\r\n if (fault.notif_type === 'Return') {\r\n if (dacFaults.length === 0) continue;\r\n dacFaults[dacFaults.length - 1].return_time = fault.fault_time;\r\n }\r\n else if (fault.notif_type === 'Detect') {\r\n dacFaults.push(fault);\r\n }\r\n }\r\n }\r\n\r\n const dacInfo = dacInfos[devId] || {};\r\n\r\n const dac: Dac = {\r\n DAC_ID: devId,\r\n CLIENT_NAME: dacInfo.CLIENT_NAME || '-',\r\n UNIT_ID: dacInfo.UNIT_ID || 0,\r\n UNIT_NAME: dacInfo.UNIT_NAME || '-',\r\n faults: dacFaults,\r\n };\r\n if (dacFaults.length > 0) {\r\n state.dacs.push(dac);\r\n }\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n setState({ loading: false });\r\n }\r\n\r\n async function exportFaults() {\r\n try {\r\n const flattenedData = state.dacs.flatMap((dac) => dac.faults.map((fault) => ({\r\n DAC_ID: dac.DAC_ID,\r\n CLIENT_NAME: dac.CLIENT_NAME,\r\n UNIT_ID: dac.UNIT_ID,\r\n UNIT_NAME: dac.UNIT_NAME,\r\n falha: fault.fault_name,\r\n dataEntrada: fault.fault_time || '-',\r\n dataSaida: fault.return_time || '-',\r\n })));\r\n state.csvData = flattenedData;\r\n render();\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível exportar!');\r\n }\r\n }\r\n\r\n function handleFaultItemClick(event, fault: { checked?: boolean }) {\r\n state.selectPositionX = event.clientX - 300;\r\n state.selectPositionY = event.clientY;\r\n fault.checked = !fault.checked;\r\n render();\r\n }\r\n\r\n const TABLE_COLUMNS = [\r\n {\r\n name: 'client',\r\n value: 'Cliente',\r\n accessor: 'CLIENT_NAME',\r\n },\r\n {\r\n name: 'unit',\r\n value: 'Unidade',\r\n accessor: 'UNIT_NAME',\r\n render: (props: Dac) => ((props.UNIT_NAME) ? {props.UNIT_NAME || '-'} : (props.UNIT_NAME || '-')),\r\n },\r\n {\r\n name: 'dac',\r\n value: 'DAC',\r\n accessor: 'DAC_ID',\r\n render: ({ DAC_ID }: Dac) => (\r\n \r\n {DAC_ID}\r\n \r\n ),\r\n },\r\n {\r\n name: 'falha',\r\n value: 'Falha',\r\n accessor: null,\r\n render: ({ faults }: Dac) => (\r\n \r\n {faults.map((fault) => (\r\n \r\n {fault.fault_name}\r\n
\r\n ))}\r\n \r\n ),\r\n },\r\n {\r\n name: 'first_alert',\r\n value: 'Data de Entrada',\r\n sortable: true,\r\n accessor: null,\r\n render: ({ faults }: Dac) => (\r\n \r\n {faults.map((fault) =>
{fault.fault_time}
)}\r\n \r\n ),\r\n },\r\n {\r\n name: 'last_alert',\r\n value: 'Data de Saída',\r\n sortable: true,\r\n accessor: null,\r\n render: ({ faults, DAC_ID }: Dac) => (\r\n \r\n {faults.map((fault) =>
{fault.return_time || '-'}
)}\r\n \r\n ),\r\n },\r\n ];\r\n\r\n return (\r\n \r\n \r\n Diel Energia - DACs com Falha de Instalação\r\n \r\n \r\n
\r\n \r\n
\r\n {state.loading ? (\r\n \r\n \r\n Carregando\r\n \r\n ) : (\r\n <>\r\n
\r\n
\r\n \r\n setState({ searchText: e.target.value })}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nexport default withTransaction('FaultsListInstallation', 'component')(FaultsListInstallation);\r\n","import styled from 'styled-components';\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CardTitle = styled.h3`\r\n cursor: pointer;\r\n text-decoration: underline;\r\n`;\r\n\r\nexport const InputNumber = styled.div`\r\n display: flex;\r\n margin-left: 30px;\r\n height: 54px;\r\n position: relative;\r\n label {\r\n color: #202370;\r\n position: absolute;\r\n z-index: 1;\r\n margin: 8px;\r\n margin-left: 10px;\r\n font-size: 11px;\r\n font-weight: bold;\r\n }\r\n input {\r\n padding-top: 13px;\r\n padding-left: 10px;\r\n position: relative;\r\n border-radius: 5px;\r\n border: 1px solid gray;\r\n outline: 0;\r\n }\r\n p {\r\n font-size: 10px;\r\n }\r\n`;\r\n\r\nexport const StyleSelect = styled.div`\r\n height: 58.84px;\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n .select-search { \r\n padding-top: 25px;\r\n }\r\n .select-search__value{\r\n }\r\n\r\n .select-search.has-focus{\r\n }\r\n\r\n label {\r\n color: #202370;\r\n position: absolute;\r\n z-index: 1;\r\n margin: 5px;\r\n margin-left: 10px;\r\n font-size: 11px;\r\n padding-top: 3px;\r\n padding-left: 5px;\r\n font-weight: bold;\r\n }\r\n`;\r\n\r\nexport const CustomAnalysis = styled.div`\r\n display: flex;\r\n gap: 20px;\r\n margin-bottom: 15px;\r\n .dielTool{\r\n display: none;\r\n min-width: 0;\r\n height: 0;\r\n }\r\n`;\r\n","import { toast } from 'react-toastify';\r\nimport { Button } from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCallDownload } from 'providers';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport function ExportarDevs(): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, , setState] = useStateVar(() => ({\r\n isExportingDacs: false,\r\n }));\r\n\r\n async function exportDacsList() {\r\n try {\r\n setState({ isExportingDacs: true });\r\n const exportResponse = await apiCallDownload('/devtools/export-dacs-info', {});\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'DEVs.xlsx';\r\n link.click();\r\n toast.success(t('sucessoExportacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroExportacao'));\r\n }\r\n setState({ isExportingDacs: false });\r\n }\r\n async function exportDutsList() {\r\n try {\r\n setState({ isExportingDacs: true });\r\n const exportResponse = await apiCallDownload('/devtools/export-duts-info', {});\r\n console.log(exportResponse);\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'DEVs.xlsx';\r\n link.click();\r\n toast.success(t('sucessoExportacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroExportacao'));\r\n }\r\n setState({ isExportingDacs: false });\r\n }\r\n async function exportDamsList() {\r\n try {\r\n setState({ isExportingDacs: true });\r\n const exportResponse = await apiCallDownload('/devtools/export-dams-info', {});\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'DEVs.xlsx';\r\n link.click();\r\n toast.success(t('sucessoExportacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroExportacao'));\r\n }\r\n setState({ isExportingDacs: false });\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Button,\r\n Loader,\r\n Select,\r\n Input,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, apiCallDownload } from 'providers';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { StyleSelect } from '../styles';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport function TemprtMediaDUTs(): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, render_, setState] = useStateVar({\r\n isLoading: true,\r\n isExporting: false,\r\n dayStart: new Date(Date.now() - 3 * (60 * 60 * 1000) - 60 * (24 * 60 * 60 * 1000)).toISOString().substring(0, 10),\r\n clients: [] as { value: string, name: string }[],\r\n selectedClient: [] as any | any[],\r\n async fetchServerData() {\r\n try {\r\n const { list } = await apiCall('/clients/get-clients-list', {});\r\n state.clients = list.map((client) => ({\r\n value: client.CLIENT_ID.toString(),\r\n name: client.NAME,\r\n }));\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ isLoading: false });\r\n },\r\n });\r\n\r\n useEffect(() => {\r\n state.fetchServerData();\r\n }, []);\r\n\r\n if (state.isLoading) return ;\r\n\r\n async function exportList() {\r\n try {\r\n if (!state.selectedClient) return;\r\n setState({ isExporting: true });\r\n const exportResponse = await apiCallDownload('/devtools/export-duts-mean-temperatures', {\r\n dayStart: new Date(`${state.dayStart}T00:00Z`).toISOString().substring(0, 10),\r\n clientIds: [Number(state.selectedClient)],\r\n });\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'TemperaturasMedias.xlsx';\r\n link.click();\r\n toast.success(t('sucessoExportacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroExportacao'));\r\n }\r\n setState({ isExporting: false });\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n
\r\n \r\n \r\n { setState({\r\n selectedClient: value,\r\n }); render_(); }}\r\n placeholder={t('selecioneCliente')}\r\n label={t('cliente')}\r\n />\r\n \r\n
\r\n
\r\n setState({ dayStart: e.target.value })}\r\n label={t('dataInicial')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n","import { DiscreteHistVar } from './formatArrHistory';\r\n\r\ninterface DataLimits {\r\n minTval?: number,\r\n maxTval?: number,\r\n minPval?: number,\r\n maxPval?: number,\r\n minCO2val?: number,\r\n maxCO2val?: number,\r\n minHum?: number,\r\n maxHum?: number,\r\n}\r\n\r\nexport function updateDataLimits(newDataLimits: DataLimits, currentDataLimits?: DataLimits): DataLimits {\r\n if (!currentDataLimits) {\r\n currentDataLimits = {};\r\n }\r\n for (const minVar of ['minTval', 'minPval', 'minCO2val', 'minHum']) {\r\n if (newDataLimits[minVar] != null) {\r\n if (typeof currentDataLimits[minVar] !== 'number' || newDataLimits[minVar] < currentDataLimits[minVar]) {\r\n currentDataLimits[minVar] = newDataLimits[minVar];\r\n }\r\n }\r\n }\r\n\r\n for (const minVar of ['maxTval', 'maxPval', 'maxCO2val', 'maxHum']) {\r\n if (newDataLimits[minVar] != null) {\r\n if (typeof currentDataLimits[minVar] !== 'number' || newDataLimits[minVar] > currentDataLimits[minVar]) {\r\n currentDataLimits[minVar] = newDataLimits[minVar];\r\n }\r\n }\r\n }\r\n\r\n return currentDataLimits;\r\n}\r\n\r\nexport function calculateTemprtAxisInfo(limits: { min: null|number, max: null|number }) {\r\n const { min: minDataVal, max: maxDataVal } = limits;\r\n\r\n if ((minDataVal == null) || (maxDataVal == null)) {\r\n return {\r\n L1start: 0,\r\n ticks: [],\r\n maxAxisVal: 0,\r\n };\r\n }\r\n\r\n const maxTtick = Math.ceil((maxDataVal + 0.5) / 5) * 5;\r\n const minTtick = Math.floor((minDataVal - 0.5) / 5) * 5;\r\n const ticks = [] as number[];\r\n for (let t = minTtick; t <= maxTtick; t += 5) {\r\n ticks.push(t);\r\n }\r\n\r\n return { L1start: minTtick, ticks, maxAxisVal: maxTtick };\r\n}\r\n\r\nfunction presentLimits(dataLimits: DataLimits) {\r\n const {\r\n minTval, maxTval, minPval, maxPval, minCO2val, maxCO2val, minHum, maxHum,\r\n } = dataLimits;\r\n return {\r\n Temperature: (minTval != null) && (maxTval != null),\r\n Pressure: (minPval != null) && (maxPval != null),\r\n CO2: (minCO2val != null) && (maxCO2val != null),\r\n Humidity: (minHum != null) && (maxHum != null),\r\n };\r\n}\r\n\r\nfunction getInitialLimits(dataLimits: DataLimits, numOfBoolVars: number) {\r\n let {\r\n minTval, maxTval, minPval, maxPval, minCO2val, maxCO2val, minHum, maxHum,\r\n } = dataLimits;\r\n\r\n const varLimits = presentLimits(dataLimits);\r\n\r\n let hasTdata = varLimits.Temperature;\r\n let hasPdata = varLimits.Pressure;\r\n let hasCO2data = varLimits.CO2;\r\n let hasHum = varLimits.Humidity;\r\n\r\n if ((!hasTdata) && (!numOfBoolVars)) {\r\n minTval = 5;\r\n maxTval = 25;\r\n hasTdata = true;\r\n }\r\n if (hasTdata || hasPdata || hasCO2data) {\r\n if (!hasTdata) {\r\n minTval = 5;\r\n maxTval = 25;\r\n hasTdata = true;\r\n }\r\n if (!hasPdata) {\r\n minPval = 5;\r\n maxPval = 25;\r\n hasPdata = true;\r\n }\r\n\r\n if (minCO2val === null || minCO2val === undefined || maxCO2val === null || maxCO2val === undefined) {\r\n minCO2val = 0;\r\n maxCO2val = 4000;\r\n hasCO2data = true;\r\n }\r\n\r\n if (!hasHum) {\r\n minHum = 0;\r\n maxHum = 100;\r\n hasHum = true;\r\n }\r\n }\r\n\r\n return {\r\n dataLimits: {\r\n minTval, maxTval, minPval, maxPval, minCO2val, maxCO2val,\r\n },\r\n hasTdata,\r\n hasPdata,\r\n hasCO2data,\r\n };\r\n}\r\n\r\nfunction getMinTicks(tInfo: { hasTdata: boolean, maxTval?: number, minTval?: number }, pInfo: { hasPdata: boolean, maxPval?: number, minPval?: number }) {\r\n const { hasTdata, maxTval, minTval } = tInfo;\r\n const { hasPdata, maxPval, minPval } = pInfo;\r\n let minTtick;\r\n let maxTtick;\r\n if (hasTdata && (maxTval != null) && (minTval != null)) {\r\n maxTtick = Math.ceil((maxTval + 1) / 5) * 5;\r\n minTtick = Math.floor((minTval - 1) / 5) * 5;\r\n if (minTtick > 0) minTtick = 0;\r\n if (maxTtick < 5) maxTtick = 5;\r\n }\r\n\r\n let minPtick = 0;\r\n let maxPtick = 1;\r\n if (hasPdata && (maxPval != null) && (minPval != null)) {\r\n maxPtick = Math.ceil((maxPval + 1) / 5) * 5;\r\n minPtick = Math.floor((minPval - 1) / 5) * 5;\r\n if (minPtick > 0) minPtick = 0;\r\n if (maxPtick < 1) maxPtick = 1;\r\n }\r\n\r\n return {\r\n minTtick, maxTtick, minPtick, maxPtick,\r\n };\r\n}\r\n\r\nfunction getPresLimitsAndTicks(pInfo: { hasPdata: boolean, maxPtick, minPtick }, tInfo: { maxTtick, minTtick, minTaxisVal }) {\r\n let { maxPtick, minPtick } = pInfo;\r\n const { maxTtick, minTtick, minTaxisVal: minTAxisVal } = tInfo;\r\n\r\n let presLimits = [0, 10];\r\n const presTicks: number[] = [];\r\n\r\n if (pInfo.hasPdata) {\r\n const totalSteps = Math.round((maxTtick - minTtick) / 5);\r\n const positiveSteps = Math.round(maxTtick / 5);\r\n const negativeSteps = totalSteps - positiveSteps;\r\n let pStepSize;\r\n if (minPtick >= 0) {\r\n pStepSize = Math.ceil(maxPtick / positiveSteps);\r\n // pStepSize = Math.ceil(pStepSize / 5) * 5;\r\n maxPtick = pStepSize * positiveSteps;\r\n minPtick = 0;\r\n } else {\r\n pStepSize = Math.ceil((maxPtick - minPtick) / totalSteps);\r\n // pStepSize = Math.ceil(pStepSize / 5) * 5;\r\n maxPtick = pStepSize * positiveSteps;\r\n minPtick = -pStepSize * negativeSteps;\r\n }\r\n presLimits = [Math.round(minTAxisVal / 5 * pStepSize), maxPtick];\r\n for (let t = minPtick; t <= maxPtick; t += pStepSize) {\r\n presTicks.push(t);\r\n }\r\n }\r\n\r\n return { presLimits, presTicks };\r\n}\r\n\r\nfunction getCO2LimitsAndTicks(co2Info: { minCO2val, maxCO2val }, tempTicks: number[]) {\r\n const { minCO2val, maxCO2val } = co2Info;\r\n\r\n const co2Ticks: number[] = [];\r\n let co2Limits = [0, 4000];\r\n\r\n if (minCO2val != null && maxCO2val != null) {\r\n const totalSteps = tempTicks.length; // para alinhar com o eixo de temperatura\r\n const stepSize = (maxCO2val - minCO2val) / totalSteps;\r\n let minVal = minCO2val - stepSize;\r\n const maxVal = maxCO2val + stepSize;\r\n if (minVal < 0) {\r\n minVal = 0;\r\n }\r\n co2Limits = [minVal, maxVal];\r\n for (let t = minVal; t <= maxVal + stepSize; t += Math.ceil(stepSize / 10) * 10) {\r\n co2Ticks.push(t);\r\n }\r\n }\r\n\r\n return { co2Limits, co2Ticks };\r\n}\r\n\r\nexport function calculateAxisInfo(dataLimits: DataLimits, numOfBoolVars: number, booleanTypes?: string[]) {\r\n const {\r\n dataLimits: {\r\n minTval, maxTval, minPval, maxPval, minCO2val, maxCO2val,\r\n },\r\n hasTdata,\r\n hasPdata,\r\n } = getInitialLimits(dataLimits, numOfBoolVars);\r\n\r\n const minTicks = getMinTicks({ hasTdata, maxTval, minTval }, { hasPdata, maxPval, minPval });\r\n const {\r\n minTtick, maxTtick, minPtick, maxPtick,\r\n } = minTicks;\r\n\r\n let L1start = 0;\r\n if (numOfBoolVars) {\r\n L1start = (minTtick != null) ? (minTtick - 0) : 0;\r\n }\r\n\r\n const boolVarStep = booleanTypes?.some((type) => type === 'Nobreak') ? 6 : 5;\r\n const maxTaxisVal = (maxTtick != null) ? maxTtick : (L1start - 1);\r\n const minTaxisVal = numOfBoolVars ? (L1start - (numOfBoolVars * boolVarStep) - 1) : minTtick;\r\n const tempLimits = [minTaxisVal, maxTaxisVal];\r\n const tempTicks: number[] = [];\r\n if (numOfBoolVars) {\r\n for (let i = 0; i < numOfBoolVars; i++) {\r\n const lineType = booleanTypes?.[i];\r\n const lineBase = L1start - (boolVarStep * i) - boolVarStep;\r\n tempTicks.push(lineBase + 0.5);\r\n tempTicks.push(lineBase + 2.6);\r\n if (lineType === 'Nobreak') tempTicks.push(Number((lineBase + 4.7).toFixed(1)));\r\n }\r\n }\r\n if (minTtick != null) {\r\n for (let t = minTtick; t <= maxTtick; t += 5) {\r\n tempTicks.push(t);\r\n }\r\n }\r\n\r\n const { presLimits, presTicks } = getPresLimitsAndTicks({ hasPdata, maxPtick, minPtick }, { maxTtick, minTtick, minTaxisVal });\r\n\r\n const { co2Limits, co2Ticks } = getCO2LimitsAndTicks({ minCO2val, maxCO2val }, tempTicks);\r\n\r\n return {\r\n tempLimits,\r\n tempTicks,\r\n presLimits,\r\n presTicks,\r\n co2Limits,\r\n co2Ticks,\r\n L1start,\r\n };\r\n}\r\n\r\nfunction calcTickLimits(L1start:number, boolVarStep: number, lineType?: string) {\r\n const tick_0 = Math.round((L1start - boolVarStep + 0.5) * 10) / 10;\r\n const tick_1 = Math.round((L1start - boolVarStep + 2.6) * 10) / 10;\r\n if (lineType === 'Nobreak') {\r\n const tick_2 = Math.round((L1start - boolVarStep + 4.7) * 10) / 10;\r\n return [tick_0, tick_1, tick_2];\r\n }\r\n return [tick_0, tick_1];\r\n}\r\n\r\nexport function updateBoolY(varsList: { L?: number|null, y?: number|null }[][], L1start: number, varTypes?: string[]): [number[]] {\r\n const ticksValues: [number[]] = [[0, 0]];\r\n let index = 0;\r\n const boolVarStep = varTypes?.some((type) => type === 'Nobreak') ? 6 : 5;\r\n varsList.forEach((lineData, i) => {\r\n const lineType = varTypes?.[i];\r\n if (index === 0) ticksValues.pop();\r\n const ticks = calcTickLimits(L1start, boolVarStep, lineType);\r\n ticksValues.push(ticks);\r\n if (lineData && lineData.length) {\r\n for (const element of lineData) {\r\n if (element) {\r\n if (element.L === 1) element.y = ticks[1];\r\n else if (element.L === 0) element.y = ticks[0];\r\n else element.y = null;\r\n }\r\n }\r\n }\r\n\r\n L1start -= boolVarStep;\r\n index++;\r\n });\r\n\r\n return ticksValues;\r\n}\r\n\r\nexport function updateStepY(varsList: DiscreteHistVar[], L1start: number) {\r\n const varsTicks = [] as number[][];\r\n const allTicks = [] as number[];\r\n const ticksNames = {} as { [k:string]: string };\r\n for (const varInfo of varsList) {\r\n const [min, max] = varInfo.limits;\r\n const nTicks = Math.round(max - min) + 1;\r\n L1start -= nTicks * 2.5;\r\n const varTicks = [] as number[];\r\n for (let i = 0; i < nTicks; i++) {\r\n const tickValue = L1start + 0.5 + i * 2.5;\r\n varTicks.push(tickValue);\r\n allTicks.push(tickValue);\r\n ticksNames[tickValue.toString()] = varInfo.labels[i];\r\n }\r\n varsTicks.push(varTicks);\r\n const lineData = varInfo.d;\r\n for (let i = 0; i < lineData.length; i++) {\r\n if (lineData[i]) {\r\n if (lineData[i].L == null) {\r\n lineData[i].y = null;\r\n continue;\r\n }\r\n const stepIndex = lineData[i].L! - min;\r\n lineData[i].y = varTicks[stepIndex];\r\n }\r\n }\r\n }\r\n return {\r\n varsTicks, allTicks: allTicks.sort((a, b) => a - b), ticksNames, endValue: L1start,\r\n };\r\n}\r\n\r\nexport function convertBoolValue(Lval: number, L1start: number, lineIndex: number) {\r\n if (Lval === 1) return L1start - (lineIndex * 5) - 5 + 2.6;\r\n if (Lval === 0) return L1start - (lineIndex * 5) - 5 + 0.5;\r\n return Lval;\r\n}\r\nexport function convertBoolValueInv(Lval: number, L1start: number, lineIndex: number) {\r\n if (Lval === 0) return L1start - (lineIndex * 5) - 5 + 2.6;\r\n if (Lval === 1) return L1start - (lineIndex * 5) - 5 + 0.5;\r\n return Lval;\r\n}\r\n\r\nexport interface ChartLine {\r\n name: string;\r\n x: number[];\r\n y: (null|number)[];\r\n}\r\nexport interface ChartLineNumber extends ChartLine {\r\n maxY: null|number;\r\n minY: null|number;\r\n}\r\nexport interface ChartLineSteps extends ChartLine {\r\n y_orig: (null|number|string)[];\r\n steps: {\r\n y_orig: (null|number|string);\r\n y_chart: (null|number);\r\n label: string;\r\n }[];\r\n}\r\nexport interface AxisInfo {\r\n left: null|{\r\n range: [number, number]\r\n tickvals: number[]\r\n ticktext: string[]\r\n }\r\n // right?: null|{\r\n // range: [number, number]\r\n // tickvals: number[]\r\n // ticktext: string[]\r\n // }\r\n}\r\ninterface ChartLines {\r\n left: ChartLineNumber[],\r\n right: ChartLineNumber[],\r\n stepped: ChartLineSteps[],\r\n}\r\n\r\nexport function fillMaxMin(line: ChartLineNumber) {\r\n if (!line) return;\r\n if (!line.y.length) return;\r\n line.maxY = null;\r\n line.minY = null;\r\n for (const v of line.y) {\r\n if (v == null) continue;\r\n if (line.maxY == null || v > line.maxY) line.maxY = v;\r\n if (line.minY == null || v < line.minY) line.minY = v;\r\n }\r\n}\r\n\r\nexport function fillSteps(line: ChartLineSteps) {\r\n if (!line) return;\r\n if (!line.y_orig.length) return;\r\n line.steps = [];\r\n for (const v of line.y_orig) {\r\n if (v == null) continue;\r\n if (line.steps.some((s) => s.y_orig === v)) continue;\r\n line.steps.push({\r\n y_orig: v,\r\n y_chart: null,\r\n label: String(v),\r\n });\r\n }\r\n line.steps.sort((a, b) => {\r\n if ((a.y_orig != null) && (b.y_orig == null)) return -1;\r\n if ((a.y_orig == null) && (b.y_orig != null)) return 1;\r\n if ((a.y_orig == null) || (b.y_orig == null)) return 0;\r\n if (a.y_orig > b.y_orig) return -1;\r\n if (a.y_orig < b.y_orig) return 1;\r\n return 0;\r\n });\r\n}\r\n\r\nexport function fillDynamicValues(axisInfo: AxisInfo, linesLeft: ChartLineNumber[], steppedLines?: ChartLineSteps[]) { // , linesRight?: ChartLineNumber[]\r\n axisInfo.left = null;\r\n {\r\n let minLval: (null|number) = null;\r\n let maxLval: (null|number) = null;\r\n for (const line of linesLeft) {\r\n if (line.minY == null) continue;\r\n if (line.maxY == null) continue;\r\n if ((minLval == null) || (line.minY < minLval)) minLval = line.minY;\r\n if ((maxLval == null) || (line.maxY > maxLval)) maxLval = line.maxY;\r\n }\r\n if ((minLval != null) && (maxLval != null)) {\r\n axisInfo.left = {\r\n range: [minLval, maxLval],\r\n tickvals: [],\r\n ticktext: [],\r\n };\r\n }\r\n }\r\n\r\n // axisInfo.right = null;\r\n // if (linesRight) {\r\n // let minRval: (null|number) = null;\r\n // let maxRval: (null|number) = null;\r\n // for (const line of linesRight) {\r\n // if (line.minY == null) continue;\r\n // if (line.maxY == null) continue;\r\n // if ((minRval == null) || (line.minY < minRval)) minRval = line.minY;\r\n // if ((maxRval == null) || (line.maxY > maxRval)) maxRval = line.maxY;\r\n // }\r\n // if ((minRval != null) && (maxRval != null)) {\r\n // axisInfo.right = {\r\n // range: [minRval, maxRval],\r\n // tickvals: [],\r\n // ticktext: [],\r\n // }\r\n // }\r\n // }\r\n\r\n // if (axisInfo.left && axisInfo.right) {\r\n // let propF = 0;\r\n // if ((axisInfo.left.range[0] < 0) && (axisInfo.right.range[0] < 0)) {\r\n // if (axisInfo.left.range[0] > -1) axisInfo.left.range[0] = -1;\r\n // if (axisInfo.right.range[0] > -1) axisInfo.right.range[0] = -1;\r\n // const prop = axisInfo.right.range[0] / axisInfo.left.range[0];\r\n // if (prop > propF) propF = prop;\r\n // }\r\n // if ((axisInfo.left.range[1] > 0) && (axisInfo.right.range[1] > 0)) {\r\n // if (axisInfo.left.range[1] < 1) axisInfo.left.range[1] = 1;\r\n // if (axisInfo.right.range[1] < 1) axisInfo.right.range[1] = 1;\r\n // const prop = axisInfo.right.range[1] / axisInfo.left.range[1];\r\n // if (prop > propF) propF = prop;\r\n // }\r\n // if (propF) {\r\n // if (axisInfo.left.range[1])\r\n // }\r\n // }\r\n\r\n // if ((!axisInfo.left) && axisInfo.right) {\r\n // axisInfo.left = {\r\n // range: [...axisInfo.right.range],\r\n // tickvals: [],\r\n // ticktext: [],\r\n // }\r\n // }\r\n\r\n if (axisInfo.left) {\r\n const [minLval, maxLval] = axisInfo.left.range;\r\n const maxLtick = Math.ceil((maxLval + 1) / 5) * 5;\r\n const minLtick = Math.floor((minLval - 1) / 5) * 5;\r\n axisInfo.left.range = [minLtick, maxLtick];\r\n for (let t = minLtick; t <= maxLtick; t += 5) {\r\n axisInfo.left.tickvals.push(t);\r\n axisInfo.left.ticktext.push(String(t));\r\n }\r\n }\r\n\r\n if (steppedLines) {\r\n if (!axisInfo.left) {\r\n axisInfo.left = {\r\n range: [0, 0],\r\n tickvals: [],\r\n ticktext: [],\r\n };\r\n }\r\n for (const line of steppedLines) {\r\n for (const step of line.steps) {\r\n step.y_chart = axisInfo.left.range[0] - 1;\r\n axisInfo.left.range[0] -= 2;\r\n axisInfo.left.tickvals.push(step.y_chart);\r\n axisInfo.left.ticktext.push(step.label);\r\n }\r\n for (let i = 0; i < line.y_orig.length; i++) {\r\n line.y[i] = line.steps.find((x) => x.y_orig === line.y_orig[i])!.y_chart;\r\n }\r\n }\r\n }\r\n}\r\n","import styled from 'styled-components';\r\n\r\nimport { DottedLineIcon, LineIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const GraphWrapper = styled.div`\r\n width: 100%;\r\n position: relative;\r\n height: 100%;\r\n`;\r\n\r\nexport const ModalMobile = styled.div<{ isModalOpen }>(\r\n ({ isModalOpen }) => `\r\n display:${isModalOpen ? 'block' : 'none'};\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n background-color: ${colors.White};\r\n width: 100%;\r\n height: 100vh;\r\n z-index: 1;\r\n overflow: hidden;\r\n transition: all .5s ease-in-out;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`,\r\n);\r\n\r\nexport const ColoredDottedLine = styled(DottedLineIcon)(\r\n ({ color }) => `\r\n margin-left: 10px;\r\n color: ${color}\r\n`,\r\n);\r\n\r\nexport const ColoredLine = styled(LineIcon)(\r\n ({ color }) => `\r\n margin-left: 10px;\r\n color: ${color}\r\n`,\r\n);\r\n\r\nexport const CheckboxLine = styled.div`\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\nexport const Text = styled.span`\r\n font-weight: normal;\r\n font-size: 1em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const ModalSection = styled.div`\r\n width: 100%;\r\n height: 80px;\r\n background: ${colors.Grey030};\r\n border-bottom: 2px solid ${colors.Grey100};\r\n box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);\r\n`;\r\n\r\nexport const ModalTitleContainer = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: 100%;\r\n width: 100%;\r\n padding: 16px;\r\n svg {\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const ModalTitle = styled.span`\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const MobileWrapper = styled.div`\r\n display: block;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nexport const DesktopWrapper = styled.div`\r\n display: none;\r\n\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nexport const CardWrapper = styled.div`\r\n padding: 32px 24px;\r\n margin-top: 24px;\r\n background: ${colors.White};\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CustomLabel = styled.text<{ angle }>`\r\ntransform: rotate(${({ angle }) => (angle || -90)}deg);\r\n`;\r\n","import { Flex } from 'reflexbox';\r\nimport styled from 'styled-components';\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const Container = styled(Flex)`\r\n width: 100%;\r\n align-items: center;\r\n justify-content: center;\r\n flex-direction: column;\r\n border: 1px solid ${colors.LightGrey_v3};\r\n border-radius: 5px;\r\n padding: 50px 0;\r\n`;\r\n","import {\r\n ComparativeIcon,\r\n} from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\nimport { Container } from './styles';\r\nimport { t } from 'i18next';\r\n\r\nexport const NoGraph = (props): JSX.Element => {\r\n const { title, type } = props;\r\n return (\r\n \r\n \r\n \r\n {title}\r\n \r\n \r\n { type ? t('selecioneUmaDataIndiceDeUso') : t('selecioneUmaDataHistorico')}\r\n \r\n \r\n ); };\r\n","import { useEffect, useState, useRef } from 'react';\r\n\r\nimport moment from 'moment';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, ScatterChart, Scatter, Label, LineChart, Line, Tooltip, ReferenceArea, Dot, ReferenceLine,\r\n} from 'recharts';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport { CSVLink } from 'react-csv';\r\nimport {\r\n Button, Datepicker, Overlay, Loader,\r\n} from '~/components';\r\nimport { formatArrHistory, getEndTime, processReceivedHistoryDAC } from '~/helpers';\r\nimport * as axisCalc from '~/helpers/axisCalc';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { CloseIcon, CalendarIcon, ExportWorksheetIcon } from '~/icons';\r\nimport { apiCall, ApiResps } from '../../../../providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { ChartLine, colorPalete } from '~/components/ChartRecharts';\r\nimport { LegendaGroup } from '~/components/ChartRecharts/Legenda';\r\nimport { SingleDatePicker, DateRangePicker } from 'react-dates';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { t } from 'i18next';\r\nimport i18n from '~/i18n';\r\n\r\nimport {\r\n GraphWrapper,\r\n ModalMobile,\r\n ColoredDottedLine,\r\n ColoredLine,\r\n CheckboxLine,\r\n Text,\r\n ModalSection,\r\n ModalTitleContainer,\r\n ModalTitle,\r\n MobileWrapper,\r\n DesktopWrapper,\r\n CardWrapper,\r\n CustomLabel,\r\n} from './styles';\r\nimport { NoGraph } from '~/components/NoGraph';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nconst colorList = [\r\n '#e6194B',\r\n '#3cb44b',\r\n '#c7ad00',\r\n '#4363d8',\r\n '#f58231',\r\n '#911eb4',\r\n '#42d4f4',\r\n '#f032e6',\r\n '#96ca11',\r\n '#f25991',\r\n '#469990',\r\n '#dcbeff',\r\n '#9A6324',\r\n '#800000',\r\n '#aaffc3',\r\n '#808000',\r\n '#ffd8b1',\r\n '#000075',\r\n '#a9a9a9',\r\n];\r\n\r\nconst varsProperties = {\r\n Tamb: {\r\n colorDefault: colors.Green,\r\n colorFanCoil: colors.Pink100,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n Tsuc: {\r\n colorDefault: colors.Blue300,\r\n colorFanCoil: colors.Red,\r\n colorHeat: colors.Blue300,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n Tliq: {\r\n colorDefault: colors.Red,\r\n colorFanCoil: colors.Blue300,\r\n colorHeat: colors.Red,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n Psuc: {\r\n colorDefault: colors.Blue300,\r\n colorFanCoil: colors.Blue300,\r\n strokeDasharray: '5 5',\r\n type: 'monotone',\r\n },\r\n Pliq: {\r\n colorDefault: colors.Red,\r\n colorFanCoil: colors.Red,\r\n strokeDasharray: '5 5',\r\n type: 'monotone',\r\n },\r\n Tsc: {\r\n colorDefault: colors.Blue500,\r\n colorFanCoil: colors.Blue500,\r\n strokeDasharray: '3 3',\r\n type: 'monotone',\r\n },\r\n Tsh: {\r\n colorDefault: colors.Pink400,\r\n colorFanCoil: colors.Pink400,\r\n strokeDasharray: '3 3',\r\n type: 'monotone',\r\n },\r\n Lcmp: {\r\n colorDefault: colors.Grey400,\r\n colorFanCoil: colors.Grey400,\r\n strokeDasharray: '',\r\n type: 'step',\r\n },\r\n Levp: {\r\n colorDefault: colors.Grey400,\r\n colorFanCoil: colors.Grey400,\r\n strokeDasharray: '',\r\n type: 'step',\r\n },\r\n Lcut: {\r\n colorDefault: colors.Orange600,\r\n colorFanCoil: colors.Orange600,\r\n strokeDasharray: '',\r\n type: 'step',\r\n },\r\n L1raw: {\r\n colorDefault: colors.Grey400,\r\n colorFanCoil: colors.Grey400,\r\n strokeDasharray: '',\r\n type: 'step',\r\n },\r\n L1fancoil: {\r\n colorDefault: colors.Grey400,\r\n colorFanCoil: colors.Grey400,\r\n strokeDasharray: '',\r\n type: 'step',\r\n },\r\n deltaT: {\r\n colorDefault: '#181842',\r\n colorFanCoil: '#181842',\r\n strokeDasharray: '3 3',\r\n type: 'monotone',\r\n },\r\n Icomp: {\r\n colorDefault: colors.Green_v2,\r\n colorFanCoil: colors.Green_v2,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n Vinsuf: {\r\n colorDefault: colors.Yellow_v3,\r\n colorFanCoil: colors.Yellow_v3,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n};\r\n\r\nlet CSVheader = [] as any;\r\n\r\nlet varsFix = [] as any;\r\n\r\nfunction calculateGraphData(faultsChart) {\r\n const booleanLines = faultsChart.lines.filter((line) => line.isBool || line.length === 0).map((line) => line.data);\r\n\r\n const { tempLimits, tempTicks, L1start } = axisCalc.calculateAxisInfo({}, booleanLines.length);\r\n faultsChart.L1start = L1start;\r\n faultsChart.leftLimits = tempLimits;\r\n faultsChart.leftTicks = tempTicks;\r\n const ticksValues = axisCalc.updateBoolY(booleanLines, L1start);\r\n\r\n const boolTicksNames = {};\r\n for (let i = 0; i < booleanLines.length; i++) {\r\n const [tick_0, tick_1] = ticksValues[i];\r\n boolTicksNames[String(tick_0)] = faultsChart.lines[i].lineId;\r\n boolTicksNames[String(tick_1)] = '';\r\n }\r\n faultsChart.boolTicksNames = boolTicksNames;\r\n}\r\n\r\nfunction processFaultsData(histData: { [lineId: string]: { x: number; L: number; }[] }, faultsChart) {\r\n const lines = [] as { lineId: string, color: string, data: { x:number, L:number }[] }[]; // { lineId: 'CHAV_d', color: 'blue', data: [{ x: 10, y: 20 }] }\r\n let colorIndex = 0;\r\n for (const [faultId, line] of Object.entries(histData)) {\r\n lines.push({\r\n lineId: faultId,\r\n isBool: true,\r\n color: colorList[colorIndex],\r\n data: line,\r\n });\r\n colorIndex = (colorIndex + 1) % colorList.length;\r\n }\r\n\r\n faultsChart.lines = lines;\r\n calculateGraphData(faultsChart);\r\n}\r\n\r\nexport const DACHistoric = (): JSX.Element => {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const routeParams = useParams<{ devId }>();\r\n const history = useHistory();\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaHistorico')}\r\n \r\n \r\n \r\n );\r\n};\r\nexport function DACHistoricContents({ onDevInfoUpdate = undefined as undefined|(() => void) }) {\r\n const [profile] = useState(getUserProfile);\r\n const csvLinkEl = useRef();\r\n const { devId: dacId } = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n xDomain: null as null|([number, number]),\r\n xTicks: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24] as number[],\r\n refAreaLeft: null as null|number,\r\n refAreaRight: null as null|number,\r\n multiDays: false,\r\n numDays: 1 as number,\r\n dateStart: null as null|moment.Moment,\r\n dateEnd: null as null|moment.Moment,\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n chartData: {\r\n x: [] as number[],\r\n vars: null as null|{\r\n id: string;\r\n name: string;\r\n unit?: string;\r\n y: (null|number)[];\r\n strokeDasharray: string;\r\n type: string;\r\n color: string;\r\n axisId: string;\r\n maxY?: null|number;\r\n minY?: null|number;\r\n y_orig?: (null|number|string)[];\r\n steps?: {\r\n y_orig: (null|number|string);\r\n y_chart: (null|number);\r\n label: string;\r\n }[];\r\n checked?: boolean;\r\n }[],\r\n },\r\n numDeparts: [] as number[],\r\n csvData: [] as {}[],\r\n focused: false,\r\n focusedInput: null as 'endDate'|'startDate'|null,\r\n dacId,\r\n devInfo: getCachedDevInfoSync(dacId),\r\n selectedL1Sim: undefined as undefined|boolean,\r\n isModalOpen: false,\r\n isLoading: false,\r\n gotHwCfg: false,\r\n withFaults: false,\r\n withPsuc: false,\r\n date: getEndTime(),\r\n usePsi: (profile.prefsObj.pressureUnit === 'psi'),\r\n axisDataLimits: {} as { minTval?: number, maxTval?: number, minPval?: number, maxPval?: number },\r\n axisInfo: {\r\n L1start: null as null|number,\r\n tempLimits: [-5, 30],\r\n tempTicks: [-5, 0, 5, 10, 15, 20, 25, 30],\r\n presLimits: [-5, 35],\r\n presTicks: [-5, 0, 5, 10, 15, 20, 25, 30, 35],\r\n },\r\n faultsChart: {\r\n L1start: null,\r\n leftLimits: [-5, 30],\r\n leftTicks: [-5, 0, 5, 10, 15, 20, 25, 30],\r\n lines: [], // { lineId: 'CHAV_d', color: 'blue', data: [{ x: 10, y: 20 }] }\r\n boolTicksNames: {}, // { '-1.1': 'LIGADO' }\r\n },\r\n graphEnable: {\r\n Tamb: true,\r\n Tsuc: true,\r\n Tliq: true,\r\n deltaT: true,\r\n Psuc: true,\r\n Pliq: true,\r\n Tsc: true,\r\n Tsh: true,\r\n Lcmp: true,\r\n Levp: true,\r\n Lcut: true,\r\n Icomp: true,\r\n L1raw: false,\r\n L1fancoil: false,\r\n t_lim: true,\r\n deltaT_lim: true,\r\n Vinsuf: true,\r\n },\r\n hwCfg: {\r\n hasPliq: true, hasPsuc: true, hasTsc: true, hasTsh: true, hasAutomation: false, isFanCoil: false,\r\n },\r\n heatExchangerInfo: {} as {\r\n ID: number\r\n NAME: string\r\n T_MIN: number\r\n T_MAX: number\r\n DELTA_T_MIN: number\r\n DELTA_T_MAX: number\r\n } | null,\r\n };\r\n return state;\r\n });\r\n\r\n const {\r\n hwCfg, axisInfo, graphEnable, chartData,\r\n } = state;\r\n // const readyToRequestHistory = state.connectedWS && state.gotHwCfg;\r\n\r\n function setFormattedDate(date) {\r\n state.date = date.set({ hour: 0 });\r\n render();\r\n }\r\n\r\n function CheckPermDetected(fault: {\r\n detected_fault_id: number;\r\n timestamp: string;\r\n dev_id: string;\r\n rise: boolean;\r\n approved: boolean | null;\r\n source: 'Endpoint' | 'FR';\r\n restab: boolean;\r\n fault_id: string;\r\n name: string;\r\n gravity: string;\r\n approval_type: string;\r\n permanence_detected: boolean;\r\n }) {\r\n if (fault.permanence_detected === true && fault.restab === false) {\r\n return '(Lógica Permanência)';\r\n }\r\n if (fault.restab === true) {\r\n return '(Restabelecimento)';\r\n }\r\n return '';\r\n }\r\n\r\n function processFault(fault, faultsHist, definitions, gravityTranslation, periodStart) {\r\n if (fault.source === 'Endpoint') return;\r\n\r\n let approvalState = '';\r\n if (fault.approved === true) {\r\n approvalState = ' - Approved';\r\n } else if (fault.approved === false) {\r\n approvalState = ' - Rejected';\r\n }\r\n\r\n const isPermDetected = CheckPermDetected(fault);\r\n const desc = `${isPermDetected} ${fault.fault_id}${approvalState}`;\r\n const faultText = `${definitions[fault.fault_id].name} - ${gravityTranslation[definitions[fault.fault_id].gravity]}`;\r\n\r\n if (!faultsHist[faultText]) {\r\n faultsHist[faultText] = [];\r\n }\r\n\r\n faultsHist[faultText].push({\r\n x: moment.duration(moment.utc(fault.timestamp).diff(periodStart)).asHours(),\r\n L: 0,\r\n desc,\r\n time: moment.utc(fault.timestamp),\r\n });\r\n }\r\n\r\n async function getFaultHistory() {\r\n try {\r\n const faultsHist = {} as {\r\n [faultId : string]: {\r\n x: number\r\n L:number\r\n desc: string\r\n }[]\r\n };\r\n if (state.withFaults) {\r\n const periodStart = moment(state.dateStart).startOf('day').utc();\r\n const faultParams = {\r\n dev_id: state.dacId,\r\n start_time: periodStart.utc().format('YYYY-MM-DDTHH:mm:ss'),\r\n end_time: moment(state.dateEnd).endOf('day').utc().format('YYYY-MM-DDTHH:mm:ss'),\r\n };\r\n const [faultDefs, faults] = await Promise.all([apiCall('/dac/get-fault-descs'), apiCall('/dac/get-fr-history', faultParams)]);\r\n if (!faultDefs || !faults || !faults.history) {\r\n console.log('Não foi possível obter definições de falhas ou histórico de falhas');\r\n toast.error(t('erroObterDadosDeFalha'));\r\n state.isLoading = false;\r\n render();\r\n return;\r\n }\r\n const gravityTranslation = {\r\n Green: 'Verde',\r\n Yellow: 'Amarela',\r\n Orange: 'Laranja',\r\n Red: 'Vermelha',\r\n };\r\n\r\n const definitions = {};\r\n\r\n for (const faultDef of faultDefs.defs) {\r\n definitions[faultDef.fault_id] = faultDef;\r\n }\r\n\r\n for (const fault of faults.history) {\r\n processFault(fault, faultsHist, definitions, gravityTranslation, periodStart);\r\n }\r\n processFaultsData(faultsHist, state.faultsChart);\r\n }\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n useEffect(() => {\r\n if (!state.gotHwCfg) return;\r\n if (!state.dateStart || !state.dateEnd) return;\r\n\r\n Promise.resolve().then(async () => {\r\n if (!state.isLoading) {\r\n state.isLoading = true;\r\n render();\r\n }\r\n try {\r\n const d1 = new Date(`${moment(state.dateStart).format('YYYY-MM-DD')}T00:00:00Z`).getTime();\r\n const d2 = new Date(`${moment(state.dateEnd).format('YYYY-MM-DD')}T00:00:00Z`).getTime();\r\n const numDays = Math.round((d2 - d1) / 1000 / 60 / 60 / 24) + 1;\r\n state.numDays = numDays;\r\n if ((numDays >= 1) && (numDays <= 15)) { } // OK\r\n else {\r\n toast.error(t('periodoDe1a15Dias'));\r\n state.isLoading = false;\r\n render();\r\n return;\r\n }\r\n\r\n // FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA\r\n state.graphEnable.Icomp = (state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2);\r\n\r\n const params = {\r\n dacId: state.dacId,\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n selectedParams: ['Tamb', 'Tsuc', 'Tliq', 'Psuc', 'Pliq', 'Tsc', 'Tsh', 'Lcmp', 'Levp', 'Lcut', 'Icomp', 'Vinsuf'],\r\n numDays,\r\n usePsi: state.usePsi,\r\n isFanCoil: state.hwCfg.isFanCoil,\r\n hasAutomation: state.hwCfg.hasAutomation,\r\n };\r\n const {\r\n vars, commonX, limts, numDeparts,\r\n } = await apiCall('/dac/get-charts-data-common', params);\r\n\r\n if (!profile.manageAllClients) {\r\n vars.Psuc.y = vars.Psuc.y.map((psuc) => {\r\n if (psuc && psuc === (-2.8)) {\r\n return null;\r\n }\r\n if (psuc && psuc !== (-2.8)) {\r\n state.withPsuc = true;\r\n }\r\n return psuc;\r\n });\r\n }\r\n\r\n varsFix = vars;\r\n state.chartData.x = commonX;\r\n state.numDeparts = numDeparts;\r\n\r\n if (state.hwCfg.isFanCoil || state.devInfo.dac!.DAC_APPL === 'trocador-de-calor') {\r\n vars.deltaT = JSON.parse(JSON.stringify(vars.Tliq));\r\n vars.Tsuc.name = t('temperaturaSaidaAgua');\r\n vars.Tliq.name = state.devInfo.dac!.DAC_APPL === 'trocador-de-calor' ? t('temperaturaRetornoAgua') : t('temperaturaEntradaAgua');\r\n vars.Tamb.name = t('temperaturaExterna');\r\n vars.deltaT.name = 'ΔT';\r\n for (let i = 0; i < vars.Tliq.y.length; i++) {\r\n if (vars.Tliq.y[i] && vars.Tsuc.y[i]) vars.deltaT.y[i] = Number((vars.Tliq.y[i] - vars.Tsuc.y[i]).toFixed(2));\r\n }\r\n }\r\n\r\n if (state.devInfo.dac.DAC_TYPE === 'self') {\r\n vars.Tamb.name = t('temperaturaRetorno');\r\n }\r\n\r\n insertVars(vars);\r\n\r\n const debug_L1_fancoil = state.hwCfg.isFanCoil && profile.manageAllClients;\r\n\r\n // const boolLines = state.hwCfg.hasAutomation ? [vars.Levp, vars.Lcut] : [vars.Lcmp];\r\n const boolLines = state.hwCfg.hasAutomation\r\n ? (debug_L1_fancoil ? [vars.L1raw, vars.L1fancoil, vars.Lcut] : [vars.Levp, vars.Lcut])\r\n : (debug_L1_fancoil ? [vars.L1raw, vars.L1fancoil] : [vars.Lcmp]);\r\n state.axisDataLimits = axisCalc.updateDataLimits(limts);\r\n state.axisInfo = axisCalc.calculateAxisInfo(state.axisDataLimits, boolLines.length);\r\n\r\n // Ajuste quando valor mínimo de pressão é negativo\r\n if (state.axisDataLimits.minPval && state.axisDataLimits.minPval < 0) {\r\n state.axisInfo.presLimits = [state.axisInfo.presLimits[0] - 1, state.axisInfo.presLimits[1]];\r\n }\r\n\r\n state.xDomain = [0, 24 * numDays];\r\n state.xTicks = Array.from({ length: 13 }, (_, i) => i * 2 * numDays);\r\n\r\n axisCalc.updateBoolY(boolLines, state.axisInfo.L1start!);\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n\r\n await getFaultHistory();\r\n state.isLoading = false;\r\n render();\r\n });\r\n }, [state.gotHwCfg, JSON.stringify(state.date), state.dateStart, state.dateEnd, state.withFaults]);\r\n\r\n useEffect(() => {\r\n (async function () {\r\n const devInfo = await getCachedDevInfo(state.dacId, {});\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n state.devInfo = devInfo;\r\n const dacInfo = devInfo.dac;\r\n state.hwCfg.hasPsuc = (dacInfo.P0Psuc || dacInfo.P1Psuc);\r\n state.hwCfg.hasPliq = (dacInfo.P0Pliq || dacInfo.P1Pliq);\r\n state.hwCfg.hasTsh = state.hwCfg.hasPsuc;\r\n state.hwCfg.hasTsc = state.hwCfg.hasPliq;\r\n state.hwCfg.hasAutomation = dacInfo.hasAutomation;\r\n state.hwCfg.isFanCoil = (dacInfo.DAC_APPL === 'fancoil');\r\n if (state.hwCfg.isFanCoil) {\r\n state.selectedL1Sim = state.devInfo.dac.SELECTED_L1_SIM === '1';\r\n if (profile.manageAllClients) {\r\n state.graphEnable.Lcmp = false;\r\n state.graphEnable.Levp = false;\r\n state.graphEnable.L1raw = true;\r\n state.graphEnable.L1fancoil = true;\r\n }\r\n }\r\n if (!state.hwCfg.hasPsuc) state.graphEnable.Psuc = false;\r\n if (!state.hwCfg.hasPliq) state.graphEnable.Pliq = false;\r\n if (!state.hwCfg.hasAutomation) state.graphEnable.Levp = false;\r\n if (!state.hwCfg.hasAutomation) state.graphEnable.Lcut = false;\r\n if (state.hwCfg.hasAutomation) state.graphEnable.Lcmp = false;\r\n state.gotHwCfg = true;\r\n\r\n const heatExchangeId = dacInfo!.HEAT_EXCHANGER_ID;\r\n if (heatExchangeId && dacInfo!.DAC_APPL === 'trocador-de-calor') {\r\n state.heatExchangerInfo = await apiCall('/heat-exchanger/get-info-v2', { CLIENT_ID: devInfo.CLIENT_ID, HEAT_EXCHANGER_ID: heatExchangeId });\r\n }\r\n render();\r\n }()).catch(console.log);\r\n }, []);\r\n\r\n function zoom() {\r\n let { refAreaLeft, refAreaRight } = state;\r\n\r\n if (refAreaLeft === refAreaRight || refAreaRight == null || refAreaLeft == null) {\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n });\r\n return;\r\n }\r\n\r\n // xAxis domain\r\n if (refAreaLeft > refAreaRight) [refAreaLeft, refAreaRight] = [refAreaRight, refAreaLeft];\r\n\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n xDomain: [refAreaLeft, refAreaRight],\r\n xTicks: [],\r\n });\r\n }\r\n\r\n function zoomOut() {\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n xDomain: null,\r\n xTicks: Array.from({ length: 13 }, (_, i) => i * 2 * state.numDays),\r\n });\r\n }\r\n\r\n function insertVars(vars: any) {\r\n const chartVars: (typeof chartData.vars) = [];\r\n let i = 0;\r\n\r\n let tsucIndex: number | null = null;\r\n let tliqIndex: number | null = null;\r\n\r\n for (const key in vars) {\r\n if (vars.hasOwnProperty(key) && vars[key].y.length > 0 && vars[key].y.some((value) => value !== null) && graphEnable[key]) {\r\n // Se for trocador de calor\r\n if (state.devInfo.dac!.DAC_APPL === 'trocador-de-calor') {\r\n if (key === 'Tliq') {\r\n tliqIndex = i;\r\n }\r\n if (key === 'Tsuc') {\r\n tsucIndex = i;\r\n }\r\n }\r\n\r\n chartVars.push({\r\n id: key,\r\n name: vars[key].name,\r\n y: vars[key].y,\r\n color: state.devInfo.dac!.DAC_APPL === 'trocador-de-calor' && varsProperties[key].colorHeat ? varsProperties[key].colorHeat : hwCfg.isFanCoil ? varsProperties[key].colorFanCoil : varsProperties[key].colorDefault,\r\n strokeDasharray: varsProperties[key].strokeDasharray,\r\n axisId: (key === 'Psuc' || key === 'Pliq' ? 'press' : 'temp'),\r\n checked: graphEnable[key].checked,\r\n type: varsProperties[key].type,\r\n maxY: 35,\r\n minY: 0,\r\n });\r\n }\r\n\r\n i++;\r\n }\r\n\r\n // Altera os índices de Tsuc e Tliq\r\n if (tsucIndex !== null && tliqIndex !== null) {\r\n const temp = chartVars[tsucIndex];\r\n chartVars[tsucIndex] = chartVars[tliqIndex];\r\n chartVars[tliqIndex] = temp;\r\n }\r\n\r\n state.chartData.vars = chartVars;\r\n }\r\n\r\n function toolTipFormater(\r\n value: number,\r\n accessor: string|Function,\r\n payload: {\r\n value: number,\r\n payload: number, // x index\r\n name: string,\r\n },\r\n index: number,\r\n ) {\r\n if (state.chartData.vars && state.axisInfo.L1start !== null) {\r\n const varInfo = (index < state.chartData.vars.length) && state.chartData.vars.filter((data) => data.name === payload.name)[0];\r\n const nameVar = (varInfo && varInfo.name) || String(index);\r\n const id = (varInfo && varInfo.id) || String(index);\r\n const isBool = id === 'Levp' || id === 'Lcut' || id === 'Lcmp' || id === 'L1raw' || id === 'L1fancoil';\r\n let unidade = (varInfo && varInfo.axisId === 'temp' && !isBool ? '°C' : ' '); // adicionar unidade de corrente para compressor\r\n unidade = varInfo && varInfo.id === 'Icomp' ? ' A' : unidade;\r\n unidade = varInfo && varInfo.id === 'Vinsuf' ? ' m/s' : unidade;\r\n const isPressure = (id === 'Psuc');\r\n let label = formatNumberWithFractionDigits(value.toString());\r\n if (isPressure) {\r\n label = formatNumberWithFractionDigits(value.toFixed(1).toString());\r\n }\r\n if (isBool) {\r\n if (payload.value < (state.axisInfo.L1start - 5)) {\r\n // label = ((payload.value % 5) > -2.5) ? 'LIBERADO' : 'BLOQUEADO';\r\n if (state.hwCfg.isFanCoil\r\n && profile.manageAllClients\r\n && (payload.value < (state.axisInfo.L1start - 7) && payload.value > (state.axisInfo.L1start - 10))) {\r\n label = ((payload.value % 5) > -2.5) ? 'LIGADO' : 'DESLIGADO';\r\n } else {\r\n label = ((payload.value % 5) > -2.5) ? 'LIBERADO' : 'BLOQUEADO';\r\n }\r\n } else if (payload.value < state.axisInfo.L1start) {\r\n label = ((payload.value % 5) > -2.5) ? 'LIGADO' : 'DESLIGADO';\r\n }\r\n }\r\n return `${label}${unidade}`;\r\n }\r\n return '';\r\n }\r\n\r\n function csvValueFormatter(value: any, id: string) {\r\n if (state.chartData.vars && state.axisInfo.L1start !== null && value !== null && value !== undefined) {\r\n let label = value.toString();\r\n if (id === 'Levp' || id === 'Lcut' || id === 'Lcmp') {\r\n if (value < (state.axisInfo.L1start - 5)) {\r\n label = ((value % 5) > -2.5) ? 'LIBERADO' : 'BLOQUEADO';\r\n } else if (value < state.axisInfo.L1start) {\r\n label = ((value % 5) > -2.5) ? 'LIGADO' : 'DESLIGADO';\r\n }\r\n }\r\n const numberValue = parseFloat(label);\r\n if (!Number.isNaN(numberValue)) {\r\n return formatNumberWithFractionDigits(numberValue);\r\n }\r\n return `${label}`;\r\n }\r\n return '-';\r\n }\r\n\r\n function onMultidaysClick() {\r\n state.multiDays = !state.multiDays;\r\n if (!state.multiDays) {\r\n state.dateEnd = state.dateStart;\r\n }\r\n render();\r\n }\r\n\r\n function tooltipXLabelFormater(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(state.dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const dateFinal = `${dd}/${mm}`;\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n return `${dateFinal} - ${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}:${String(ss).padStart(2, '0')}`;\r\n }\r\n\r\n function tickXLabelFormaterDay(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(state.dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n\r\n const dateFinal = `${dd}/${mm}`;\r\n return `${dateFinal}`;\r\n }\r\n\r\n function tickXLabelFormaterHour(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const sign = hour - 24 * numDays < 0 ? '-' : '';\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const mm = Math.floor((Math.abs(hour) * 60) % 60);\r\n return `${'\\n'} ${sign}${String(hh).padStart(2, '0')}:${String(mm).padStart(2, '0')}`;\r\n }\r\n\r\n function CsvLabelFromaterData(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(state.dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const dateFinal = `${dd}/${mm}`;\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n return `${dateFinal} ${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}:${String(ss).padStart(2, '0')}`;\r\n }\r\n\r\n const renderQuarterTickHour = (tickProps: any) => {\r\n const { x, y, payload } = tickProps;\r\n const { value, offset } = payload;\r\n const date = new Date(value);\r\n const month = date.getMonth();\r\n const quarterNo = Math.floor(month / 3) + 1;\r\n\r\n return {`${tickXLabelFormaterHour(value)}`};\r\n };\r\n\r\n const getCsvData = async () => {\r\n state.isLoading = true; render();\r\n const formattedCSV = [] as any;\r\n CSVheader = [];\r\n\r\n try {\r\n CSVheader.push({\r\n label: t('dataHora'),\r\n key: 'data',\r\n });\r\n\r\n if (state.chartData.vars && state.chartData.vars.length > 0) {\r\n for (const object of state.chartData.vars) {\r\n if (graphEnable[object.id]) {\r\n CSVheader.push({\r\n label: object.name,\r\n key: object.id,\r\n });\r\n }\r\n }\r\n\r\n CSVheader.push({\r\n label: t('numeroPartidas'),\r\n key: 'numDeparts',\r\n });\r\n\r\n let totalNumDeparts = 0;\r\n let indexNumDeparts = 0;\r\n for (let i = 0; i < state.chartData.x.length; i++) {\r\n if (state.chartData.vars) {\r\n let valueNumDeparts = 0;\r\n let insertNumDeparts = false;\r\n\r\n if (i > 0 && i < state.chartData.x.length - 1) {\r\n if (state.chartData.x[i] % 24 > state.chartData.x[i + 1] % 24) {\r\n valueNumDeparts = state.numDeparts[indexNumDeparts];\r\n insertNumDeparts = true;\r\n totalNumDeparts += valueNumDeparts;\r\n indexNumDeparts++;\r\n }\r\n }\r\n else if (i === state.chartData.x.length - 1) {\r\n valueNumDeparts = state.numDeparts[indexNumDeparts];\r\n insertNumDeparts = state.numDays > 1;\r\n totalNumDeparts += valueNumDeparts;\r\n indexNumDeparts++;\r\n }\r\n\r\n formattedCSV.push({\r\n data: `${CsvLabelFromaterData(state.chartData.x[i])}`,\r\n Tamb: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Tamb')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Tamb')[0].y[i], 'Tamb') : '-'),\r\n Tsuc: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Tsuc')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Tsuc')[0].y[i], 'Tsuc') : '-'),\r\n Tliq: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Tliq')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Tliq')[0].y[i], 'Tliq') : '-'),\r\n Psuc: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Psuc')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Psuc')[0].y[i], 'Psuc') : '-'),\r\n Pliq: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Pliq')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Pliq')[0].y[i], 'Pliq') : '-'),\r\n Tsc: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Tsc')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Tsc')[0].y[i], 'Tsc') : '-'),\r\n Tsh: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Tsh')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Tsh')[0].y[i], 'Tsh') : '-'),\r\n Lcmp: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Lcmp')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Lcmp')[0].y[i], 'Lcmp') : '-'),\r\n Levp: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Levp')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Levp')[0].y[i], 'Levp') : '-'),\r\n Lcut: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Lcut')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Lcut')[0].y[i], 'Lcut') : '-'),\r\n L1raw: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'L1raw')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'L1raw')[0].y[i], 'L1raw') : '-'),\r\n L1fancoil: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'L1fancoil')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'L1fancoil')[0].y[i], 'L1fancoil') : '-'),\r\n // FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA\r\n ...(((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2)) && { Icomp: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Icomp')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Icomp')[0].y[i], 'Icomp') : '-') }),\r\n ...(((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && ((state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2) && (state.devInfo.dac.EVAPORATOR_MODEL_ID || state.devInfo.dac.INSUFFLATION_SPEED))) && { Vinsuf: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Vinsuf')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Vinsuf')[0].y[i], 'Vinsuf') : '-') }),\r\n numDeparts: !insertNumDeparts ? null : valueNumDeparts,\r\n });\r\n }\r\n }\r\n\r\n const penultimo = CSVheader[CSVheader.length - 2].key;\r\n\r\n formattedCSV.push({\r\n data: null,\r\n Tamb: null,\r\n Tsuc: null,\r\n Tliq: null,\r\n Psuc: null,\r\n Pliq: null,\r\n Tsc: null,\r\n Tsh: null,\r\n Lcmp: null,\r\n Levp: null,\r\n Lcut: null,\r\n L1raw: null,\r\n L1fancoil: null,\r\n // FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA\r\n ...(((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2)) && { Icomp: null }),\r\n ...(((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && ((state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2) && (state.devInfo.dac.EVAPORATOR_MODEL_ID || state.devInfo.dac.INSUFFLATION_SPEED))) && { Vinsuf: null }),\r\n numDeparts: totalNumDeparts,\r\n });\r\n\r\n formattedCSV[formattedCSV.length - 1][penultimo] = t('totalPartidasPeriodo');\r\n\r\n state.csvData = formattedCSV;\r\n render();\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n\r\n state.isLoading = false; render();\r\n }\r\n else {\r\n toast.info(t('semDadosGraficoExportar')); state.isLoading = false;\r\n }\r\n } catch (err) { console.log(err); toast.error(t('erro')); state.isLoading = false; }\r\n };\r\n\r\n const temperatureLabel = (() => {\r\n if (state.devInfo.dac && state.devInfo.dac.DAC_APPL === 'trocador-de-calor') {\r\n return t('deRetornoAgua');\r\n }\r\n if (hwCfg.isFanCoil) {\r\n return t('deEntradaAgua');\r\n }\r\n return t('deSuccao');\r\n })();\r\n\r\n const typeLoading = () => (state.isLoading ? 'disabled' : 'primary');\r\n\r\n const deltaTReferenceLines = () => {\r\n if (\r\n state.devInfo.dac\r\n && state.devInfo.dac.DAC_APPL === 'trocador-de-calor'\r\n && !!state.devInfo.dac.HEAT_EXCHANGER_ID\r\n && state.graphEnable.deltaT_lim\r\n && state.heatExchangerInfo\r\n ) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n return null;\r\n };\r\n\r\n const refArea = () => {\r\n if (state.refAreaLeft && state.refAreaRight) {\r\n return ;\r\n }\r\n return null;\r\n };\r\n\r\n const temperatureReferenceLines = () => {\r\n if (\r\n state.devInfo.dac\r\n && state.devInfo.dac.DAC_APPL === 'trocador-de-calor'\r\n && !!state.devInfo.dac.HEAT_EXCHANGER_ID\r\n && state.graphEnable.t_lim\r\n && state.heatExchangerInfo\r\n ) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n );\r\n }\r\n return null;\r\n };\r\n\r\n const returnNoGraph = (() => {\r\n if (!state.dateStart || !state.dateEnd) {\r\n return ;\r\n }\r\n return null;\r\n })();\r\n\r\n const isFanCoilOrHeatExchanger = (() => {\r\n if (state.devInfo.dac.DAC_APPL === 'fancoil' || hwCfg.isFanCoil || state.devInfo.dac!.DAC_APPL === 'trocador-de-calor') {\r\n return true;\r\n }\r\n return false;\r\n })();\r\n\r\n const verifyClientsFeature = (() => {\r\n if ((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2)) {\r\n return true;\r\n }\r\n return false;\r\n })();\r\n\r\n const verifyhasAutomationNotFancoil = (() => {\r\n if ((hwCfg.hasAutomation) && (!hwCfg.isFanCoil || !profile.manageAllClients)) {\r\n return true;\r\n }\r\n return false;\r\n })();\r\n\r\n const verifyEvaporatorAndInsufflation = (() => {\r\n if ((state.devInfo.dac.EVAPORATOR_MODEL_ID || state.devInfo.dac.INSUFFLATION_SPEED))\r\n {\r\n return true;\r\n }\r\n return false;\r\n })();\r\n\r\n const isUsePsei = (() => {\r\n if (state.usePsi) {\r\n return 'PSI';\r\n }\r\n return 'Bar';\r\n })();\r\n\r\n const labelTempSelf = (() => {\r\n if (state.devInfo.dac.DAC_TYPE === 'self') {\r\n return t('deRetorno');\r\n }\r\n return t('externa');\r\n });\r\n\r\n const graphEnableTscOrTliq = (() => {\r\n if (state.devInfo.dac && isFanCoilOrHeatExchanger) {\r\n return graphEnable.Tsc;\r\n }\r\n return graphEnable.Tliq;\r\n });\r\n\r\n function lineChartFancoilHeatExchanger() {\r\n if (isFanCoilOrHeatExchanger) {\r\n return (\r\n \r\n { graphEnable.deltaT = !graphEnable.deltaT; render(); }}\r\n value={graphEnable.deltaT}\r\n color=\"primary\"\r\n />\r\n \r\n ΔT\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n\r\n const graphEnableTsucOrTliq = (() => {\r\n if (state.devInfo.dac && isFanCoilOrHeatExchanger) {\r\n return graphEnable.Tliq;\r\n }\r\n return graphEnable.Tsuc;\r\n });\r\n\r\n function featureClientsEvaporatorAndInsufflation() {\r\n if (verifyClientsFeature && verifyEvaporatorAndInsufflation) {\r\n return (\r\n (\r\n \r\n { graphEnable.Vinsuf = !graphEnable.Vinsuf; insertVars(varsFix); render(); }}\r\n value={graphEnable.Vinsuf}\r\n color=\"primary\"\r\n />\r\n \r\n {t('velocidadeDeInsuflamento')}\r\n {' '}\r\n [m/s]\r\n \r\n \r\n \r\n )\r\n );\r\n }\r\n }\r\n\r\n function lineLimitsTemperature() {\r\n if (state.devInfo.dac!.DAC_APPL === 'trocador-de-calor' && state.devInfo.dac!.HEAT_EXCHANGER_ID) {\r\n return (\r\n <>\r\n \r\n { graphEnable.t_lim = !graphEnable.t_lim; render(); }}\r\n value={graphEnable.t_lim}\r\n color=\"primary\"\r\n />\r\n \r\n {t('limitesTemperaturaSaidaAgua')}\r\n \r\n \r\n \r\n \r\n { graphEnable.deltaT_lim = !graphEnable.deltaT_lim; render(); }}\r\n value={graphEnable.deltaT_lim}\r\n color=\"primary\"\r\n />\r\n \r\n {t('limitesTemperaturaT')}\r\n \r\n \r\n \r\n \r\n );\r\n }\r\n }\r\n\r\n const loading = state.isLoading;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {t('Filtrar por')}\r\n { state.isModalOpen = false; render(); }} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('Data')}\r\n
\r\n {state.isModalOpen && (!state.multiDays) && (\r\n { setState({ dateStart: value, dateEnd: value }); }}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => setState({ focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n {state.isModalOpen && (state.multiDays) && (\r\n { setState({ dateStart: startDate, dateEnd: startDate !== state.dateStart ? null : endDate }); }} // PropTypes.func.isRequired,\r\n onFocusChange={(focused: 'endDate'|'startDate'|null) => setState({ focusedInput: focused })}\r\n focusedInput={state.focusedInput}\r\n noBorder\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n \r\n
\r\n \r\n \r\n \r\n {t('multiplosDias')}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
{ state.isModalOpen = true; render(); }}>\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {t('Data')}\r\n
\r\n {!state.isModalOpen && (!state.multiDays) && (\r\n { setState({ dateStart: value, dateEnd: value }); }}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => setState({ focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n {!state.isModalOpen && (state.multiDays) && (\r\n { setState({ dateStart: startDate, dateEnd: startDate !== state.dateStart ? null : endDate }); }} // PropTypes.func.isRequired,\r\n onFocusChange={(focused: 'endDate'|'startDate'|null) => setState({ focusedInput: focused })}\r\n focusedInput={state.focusedInput}\r\n noBorder\r\n shouldCloseOnSelect\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n \r\n
\r\n \r\n \r\n \r\n {t('multiplosDias')}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {t('exportarPlanilha')}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n {returnNoGraph}\r\n {(state.dateStart && state.dateEnd) && (\r\n \r\n \r\n \r\n {state.isLoading && (\r\n \r\n \r\n \r\n )}\r\n
\r\n \r\n
\r\n \r\n i)}\r\n onMouseDown={(e) => { setState({ refAreaLeft: e.activeLabel }); }}\r\n onMouseMove={(e) => { (state.refAreaLeft != null) && setState({ refAreaRight: e.activeLabel }); }}\r\n onMouseUp={zoom}\r\n >\r\n \r\n state.chartData.x[i]} tickFormatter={state.numDays && state.numDays > 1 ? tickXLabelFormaterDay : tickXLabelFormaterHour} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( state.chartData.x[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={axisInfo.tempTicks} interval={0} domain={axisInfo.tempLimits}>\r\n (\r\n \r\n {/* FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA */}\r\n {((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.devInfo.dac.AST_ROLE === 1 || state.devInfo.dac.AST_ROLE === 2)) ? `${t('temperatura')}/${t('corrente')}/${t('velocidade')}` : t('temperatura')}\r\n \r\n )}\r\n />\r\n \r\n }\r\n label={{\r\n value: 'Pressão', angle: -90, color: '#656565', position: 'insideTopRight', offset: 25,\r\n }}\r\n ticks={axisInfo.presTicks}\r\n domain={axisInfo.presLimits}\r\n orientation=\"right\"\r\n />\r\n \r\n {state.chartData && state.chartData.vars && state.chartData.vars.map((varInfo) => (\r\n graphEnable[varInfo.id] && varInfo.y[i]} dot={false} stroke={varInfo.color} animationDuration={300} strokeDasharray={varInfo.strokeDasharray} />\r\n ))}\r\n {refArea}\r\n {deltaTReferenceLines}\r\n {temperatureReferenceLines}\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n { graphEnable.Tamb = !graphEnable.Tamb; insertVars(varsFix); render(); }}\r\n value={graphEnable.Tamb}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {` ${labelTempSelf()} `}\r\n [°C]\r\n \r\n \r\n \r\n \r\n {\r\n if (isFanCoilOrHeatExchanger) {\r\n graphEnable.Tliq = !graphEnable.Tliq; insertVars(varsFix); render();\r\n } else {\r\n graphEnable.Tsuc = !graphEnable.Tsuc; insertVars(varsFix); render();\r\n }\r\n }}\r\n value={graphEnableTsucOrTliq()}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {temperatureLabel}\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n \r\n {\r\n if\r\n (isFanCoilOrHeatExchanger) {\r\n graphEnable.Tsuc = !graphEnable.Tsuc; insertVars(varsFix); render();\r\n } else {\r\n graphEnable.Tliq = !graphEnable.Tliq; insertVars(varsFix); render();\r\n }\r\n }}\r\n value={graphEnableTscOrTliq()}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {isFanCoilOrHeatExchanger ? t('deSaidaAgua') : t('deLiquido')}\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n\r\n {lineChartFancoilHeatExchanger()}\r\n\r\n {(!profile.manageAllClients && state.withPsuc) && (\r\n \r\n { graphEnable.Psuc = !graphEnable.Psuc; insertVars(varsFix); render(); }}\r\n value={graphEnable.Psuc}\r\n color=\"primary\"\r\n />\r\n \r\n {t('pressaoSuccao')}\r\n [\r\n {isUsePsei}\r\n ]\r\n \r\n \r\n \r\n )}\r\n {(profile.manageAllClients && hwCfg.hasPsuc) && (\r\n \r\n { graphEnable.Psuc = !graphEnable.Psuc; insertVars(varsFix); render(); }}\r\n value={graphEnable.Psuc}\r\n color=\"primary\"\r\n />\r\n \r\n {t('pressaoSuccao')}\r\n [\r\n {isUsePsei}\r\n ]\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasPliq && (\r\n \r\n { graphEnable.Pliq = !graphEnable.Pliq; insertVars(varsFix); render(); }}\r\n value={graphEnable.Pliq}\r\n color=\"primary\"\r\n />\r\n \r\n {t('pressaoLiquido')}\r\n [\r\n {isUsePsei}\r\n ]\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasTsc && (\r\n \r\n { graphEnable.Tsc = !graphEnable.Tsc; insertVars(varsFix); render(); }}\r\n value={graphEnable.Tsc}\r\n color=\"primary\"\r\n />\r\n {`${t('subresfriamento')} [ΔTºC]`}\r\n \r\n \r\n )}\r\n {hwCfg.hasTsh && (\r\n \r\n { graphEnable.Tsh = !graphEnable.Tsh; insertVars(varsFix); render(); }}\r\n value={graphEnable.Tsh}\r\n color=\"primary\"\r\n />\r\n {`${t('superaquecimento')} [ΔTºC]`}\r\n \r\n \r\n )}\r\n {(!hwCfg.hasAutomation) && (!hwCfg.isFanCoil || !profile.manageAllClients) && (\r\n \r\n { graphEnable.Lcmp = !graphEnable.Lcmp; insertVars(varsFix); render(); }}\r\n value={graphEnable.Lcmp}\r\n color=\"primary\"\r\n />\r\n {t('sinalComando')}\r\n \r\n \r\n )}\r\n {verifyhasAutomationNotFancoil && (\r\n \r\n { graphEnable.Levp = !graphEnable.Levp; insertVars(varsFix); render(); }}\r\n value={graphEnable.Levp}\r\n color=\"primary\"\r\n />\r\n {t('sinalComando')}\r\n \r\n \r\n )}\r\n {(hwCfg.isFanCoil && profile.manageAllClients) && (\r\n \r\n { graphEnable.L1raw = !graphEnable.L1raw; insertVars(varsFix); render(); }}\r\n value={graphEnable.L1raw}\r\n color=\"primary\"\r\n />\r\n {t('sinalComandoReal')}\r\n \r\n \r\n )}\r\n {(hwCfg.isFanCoil && profile.manageAllClients) && (\r\n \r\n { graphEnable.L1fancoil = !graphEnable.L1fancoil; insertVars(varsFix); render(); }}\r\n value={graphEnable.L1fancoil}\r\n color=\"primary\"\r\n />\r\n {t('sinalComandoSimulado')}\r\n \r\n \r\n )}\r\n {(hwCfg.hasAutomation) && (\r\n \r\n { graphEnable.Lcut = !graphEnable.Lcut; insertVars(varsFix); render(); }}\r\n value={graphEnable.Lcut}\r\n color=\"primary\"\r\n />\r\n {t('bloqueioComando')}\r\n \r\n \r\n )}\r\n {lineLimitsTemperature()}\r\n {/* FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA */}\r\n {verifyClientsFeature && (\r\n \r\n { graphEnable.Icomp = !graphEnable.Icomp; insertVars(varsFix); render(); }}\r\n value={graphEnable.Icomp}\r\n color=\"primary\"\r\n />\r\n \r\n {t('correnteDoCompressor')}\r\n {' '}\r\n [A]\r\n \r\n \r\n \r\n )}\r\n {featureClientsEvaporatorAndInsufflation()}\r\n \r\n
\r\n )}\r\n {(profile.manageAllClients && (state.dateStart && state.dateEnd))\r\n && (\r\n
\r\n { state.withFaults = !state.withFaults; insertVars(varsFix); render(); }}\r\n xTicks={state.xTicks}\r\n tickXLabelFormaterDay={tickXLabelFormaterDay}\r\n tickXLabelFormaterHour={tickXLabelFormaterHour}\r\n renderQuarterTickHour={renderQuarterTickHour}\r\n numDays={state.numDays}\r\n xDomain={state.xDomain}\r\n />\r\n
\r\n )}\r\n
\r\n \r\n );\r\n}\r\n\r\nfunction FaultsChart({\r\n faultsChart, withFaults, onFaultsCheck, xTicks, tickXLabelFormaterDay, tickXLabelFormaterHour, renderQuarterTickHour, numDays, xDomain,\r\n}) {\r\n return (\r\n <>\r\n \r\n \r\n {t('analisarFalhasRepetinas')}\r\n \r\n {(withFaults)\r\n && (\r\n \r\n \r\n
\r\n \r\n \r\n {\r\n const { active, payload } = props;\r\n\r\n if (active && payload && payload.length === 2) {\r\n return (\r\n \r\n {`${payload[0].payload.time.local().format('DD/MM - HH:mm:SS')} - ${payload[1].payload.desc}`}\r\n
\r\n );\r\n }\r\n return null;\r\n }}\r\n isAnimationActive={false}\r\n />\r\n \r\n 1 ? tickXLabelFormaterDay : tickXLabelFormaterHour}\r\n domain={xDomain}\r\n />\r\n {numDays && numDays > 1 ? () : null}\r\n }\r\n ticks={faultsChart.leftTicks}\r\n interval={0}\r\n domain={faultsChart.leftLimits}\r\n />\r\n {faultsChart.lines.map((line) => (\r\n (\r\n \r\n )}\r\n data={line.data}\r\n fill={line.color}\r\n isAnimationActive={false}\r\n />\r\n ))}\r\n \r\n \r\n
\r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction CustomTickPress(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n\r\n return (\r\n \r\n \r\n {payload.value}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction CustomTickTemp(props) {\r\n const {\r\n x, y, payload, anchor, L1start, isFancoil, manageAllClients,\r\n } = props;\r\n\r\n let label = payload.value;\r\n\r\n if (payload.value < (L1start - 5)) {\r\n // label = ((payload.value % 5) > -2.5) ? 'LIBERADO' : 'BLOQUEADO';\r\n if (isFancoil\r\n && manageAllClients\r\n && (payload.value < (L1start - 7) && payload.value > (L1start - 10))) {\r\n label = ((payload.value % 5) > -2.5) ? t('ligado') : t('desligado');\r\n } else {\r\n label = ((payload.value % 5) > -2.5) ? t('liberado') : t('bloqueado');\r\n }\r\n } else if (payload.value < L1start) {\r\n label = ((payload.value % 5) > -2.5) ? t('ligado') : t('desligado');\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\n\r\nconst CustomYTick = ({\r\n x, y, payload, anchor, boolTicksNames, right,\r\n}: any) => {\r\n let text = String(payload.value);\r\n if (boolTicksNames && boolTicksNames[text] != null) {\r\n text = boolTicksNames[text];\r\n } else if ((payload.value < -0.1) && ((payload.value % 5) !== 0)) {\r\n text = ((payload.value % 5) > -2.5) ? t('ligado') : t('desligado');\r\n }\r\n if (right) {\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n return (\r\n \r\n \r\n {text}\r\n \r\n \r\n );\r\n};\r\n\r\nconst CustomShape = ({ x, y }: any) => (\r\n \r\n \r\n M\r\n \r\n \r\n);\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const DateLabel = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const BtnExport = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-left: 10px;\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White};\r\n background-color: #363BC4;\r\n ${Text} {\r\n color: ${colors.White};\r\n }\r\n }\r\n`;\r\n\r\nexport const BtnExportReduced = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-left: 10px;\r\n border-radius: 12px;\r\n height: 1px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White};\r\n background-color: #363BC4;\r\n }\r\n`;\r\n\r\nexport const ExportWorksheet = styled(ExportWorksheetIcon)(\r\n () => `\r\n padding-left: 10px;\r\n color: #363BC4;\r\n`,\r\n);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const WrapperDesktop = styled.div`\r\ndisplay: none;\r\n@media (min-width: 768px) {\r\n display: block;\r\n}\r\n`;\r\n\r\nexport const WrapperMobile = styled.div`\r\ndisplay: block;\r\n@media (min-width: 768px) {\r\n display: none;\r\n}\r\n`;\r\n\r\nexport const HealthWrapper = styled.div(\r\n ({ color }) => `\r\ndisplay: flex;\r\nspan {\r\n margin-left: 6px;\r\n color ${color};\r\n font-weight: bold;\r\n font-size: 0.875em;\r\n line-height: 18px;\r\n text-align: center;\r\n white-space: nowrap;\r\n}\r\n`,\r\n);\r\n\r\nexport const StyledLink = styled(Link)`\r\ncolor: ${colors.Grey400};\r\nword-break: normal;\r\n`;\r\n\r\nexport const StyledSpan = styled.span`\r\ncolor: ${colors.Grey400};\r\nword-break: normal;\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\nmin-height: 48px;\r\nmargin: 0;\r\nfont-size: 12px;\r\nmargin-left: 16px;\r\nmargin-bottom: 5px;\r\ncolor: #000;\r\nwidth: 100%;\r\nborder: 1px solid #E9E9E9;\r\nborder-radius: 5px;\r\nbox-sizing: border-box !important;\r\ndisplay: inline-flex;\r\nalign-items: center;\r\n`;\r\n\r\nexport const Label = styled.label`\r\nposition: relative;\r\ndisplay: inline-block;\r\nwidth: 100%;\r\nmargin-top: 6px;\r\nmargin-left: 16px;\r\nmargin-right: 16px;\r\ncolor: #202370;\r\nfont-size: 11px;\r\nfont-weight: bold;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n margin-left: 10px;\r\n text-decoration: underline;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const BtnInput = styled.button`\r\ndisplay: flex;\r\nalign-items: center;\r\njustify-content: center;\r\nbackground-color: white;\r\nwidth: 32px;\r\nheight: 30px;\r\nmargin-right: 10px;\r\n\r\nborder: 1px solid rgba(0, 0, 0, 0.15);\r\ncursor: pointer;\r\nborder-radius: 5px;\r\nbox-shadow: 0 0.3em 0.3em rgba(0, 0, 0, 0.09);\r\ntransition: all 0.5s ease-in;\r\n&:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n cursor: pointer;\r\n }\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { Flex } from 'reflexbox';\r\nimport {\r\n Button,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { DateLabel, StyledCalendarIcon } from './DACs/DACHistoric';\r\n\r\nimport {\r\n SearchInput,\r\n Label,\r\n} from './DACs/Machines/styles';\r\nimport { ContentDate, DielTool } from './styles';\r\nimport { SingleDatePicker } from 'react-dates';\r\nimport moment from 'moment';\r\n\r\nexport interface FilterItem {\r\n label: string,\r\n placeholder: string\r\n options: { value: string, name: string, icon?: JSX.Element }[],\r\n type?: string,\r\n value: string | string[],\r\n onChange: (e?) => void,\r\n index: number,\r\n uniqueSelect?: boolean,\r\n dateMoment?: moment.Moment | null,\r\n}\r\n\r\nexport const AnalysisFilters = (props: { filters: FilterItem[], isLoading: boolean, onApply: () => void, dielTool?: boolean }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n filters: [] as FilterItem[],\r\n isLoading: true as boolean,\r\n focused: {} as {\r\n id: string,\r\n focused: boolean,\r\n },\r\n dateValuePicker: {} as {\r\n startDate: moment.Moment | null,\r\n endDate: moment.Moment | null,\r\n },\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n };\r\n return state;\r\n });\r\n\r\n const getSelectedDate = (opt, state) => {\r\n if (opt.label === t('inicioOperacao') && state.dateValuePicker.startDate) {\r\n return state.dateValuePicker.startDate;\r\n // eslint-disable-next-line no-else-return\r\n } else if (opt.label === t('fimOperacao') && state.dateValuePicker.endDate) {\r\n return state.dateValuePicker.endDate;\r\n } else if (moment(opt.value).isValid()) {\r\n return moment(opt.value);\r\n }\r\n return null;\r\n };\r\n\r\n const setOnChange = (opt, data) => {\r\n if (opt.label === t('inicioOperacao')) {\r\n state.dateValuePicker.startDate = data;\r\n } else {\r\n state.dateValuePicker.endDate = data;\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n const sortedFilters = props.filters.sort((a, b) => a.index - b.index);\r\n setState({ filters: sortedFilters, isLoading: props.isLoading });\r\n render();\r\n }, [props]);\r\n\r\n function renderOption(props, option, snapshot, className) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n \r\n
\r\n {state.filters.map((opt) => (\r\n opt.type !== 'date'\r\n ? (\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n )\r\n : (\r\n <>\r\n \r\n {opt.label}\r\n
\r\n {\r\n setOnChange(opt, data);\r\n opt.onChange(data);\r\n render();\r\n }}\r\n focused={state.focused.id === opt.label ? state.focused.focused : false}\r\n onFocusChange={({ focused }) => {\r\n setState({ focused: { id: opt.label, focused } });\r\n render();\r\n }}\r\n numberOfMonths={1}\r\n displayFormat=\"DD/MM/YYYY\"\r\n isOutsideRange={(d) => {\r\n if (opt.label === t('fimOperacao') && state.dateValuePicker.startDate) {\r\n return d.isBefore(state.dateValuePicker.startDate);\r\n }\r\n return d.isAfter(state.dateValuePicker.endDate);\r\n }}\r\n placeholder={opt.placeholder}\r\n />\r\n \r\n \r\n \r\n )\r\n ))}\r\n
\r\n \r\n { !props.dielTool && state.filters.length > 0 && (\r\n \r\n {t('botaoFiltrar')}\r\n \r\n )}\r\n \r\n
\r\n \r\n );\r\n};\r\n","import { useEffect, useRef } from 'react';\r\nimport { CSVLink } from 'react-csv';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Button,\r\n Loader,\r\n Input,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport { AnalysisFilters, FilterItem } from '~/pages/Analysis/AnalysisFilters';\r\nimport moment from 'moment';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport function MachineConsumption(): JSX.Element {\r\n const machinesCsvLinkEl = useRef();\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n CSVheader: [{\r\n label: t('cliente'),\r\n key: 'clientName',\r\n },\r\n {\r\n label: t('unidade'),\r\n key: 'unitName',\r\n },\r\n {\r\n label: t('maquinas'),\r\n key: 'name',\r\n },\r\n {\r\n label: 'DAC',\r\n key: 'id',\r\n },\r\n {\r\n label: 'TR',\r\n key: 'pot',\r\n },\r\n {\r\n label: t('data'),\r\n key: 'data',\r\n },\r\n {\r\n label: t('consumoKwh'),\r\n key: 'consumo',\r\n },\r\n {\r\n label: `${t('tempoDeUso')} - 0,0h/${t('dia')}`,\r\n key: 'usage',\r\n },\r\n ] as {}[],\r\n groupedMachines: [] as {\r\n clientName: string,\r\n unitName: string,\r\n id: number,\r\n name: string,\r\n dacs: {\r\n id: string,\r\n name: string,\r\n groupId: number,\r\n groupName: string,\r\n pot: number,\r\n health: number,\r\n kw: number,\r\n status: string,\r\n cons: object,\r\n sumCons: number,\r\n extTemp: object,\r\n extTempMax: object,\r\n extTempMin: object,\r\n coloredCons: null,\r\n }[],\r\n pot: number,\r\n consH: number,\r\n consKWH: number,\r\n rangeCons: string,\r\n }[],\r\n endDate: moment().subtract(1, 'days'),\r\n dateList: getDatesList(moment().startOf('month'), new Date(moment().startOf('month').year(), moment().startOf('month').month() + 1, 0).getDate()),\r\n isLoading: false,\r\n dayStart: new Date(Date.now() - 3 * (60 * 60 * 1000) - 60 * (24 * 60 * 60 * 1000)).toISOString().substring(0, 10),\r\n dayEnd: new Date(Date.now() - 3 * (60 * 60 * 1000) - 60 * (24 * 60 * 60 * 1000)).toISOString().substring(0, 10),\r\n clients: [] as { value: string, name: string }[],\r\n selectedClient: [] as string[],\r\n units: [] as { value: string, name: string }[],\r\n selectedUnits: [] as string[],\r\n filters: [] as FilterItem[],\r\n dacList: [] as {\r\n clientName: string,\r\n unitName: string,\r\n id: string,\r\n name: string,\r\n groupId: number,\r\n groupName: string,\r\n pot: number | undefined,\r\n health: number,\r\n kw: number | undefined,\r\n status: string,\r\n cons: any,\r\n sumCons: any,\r\n extTemp: any,\r\n extTempMax: any,\r\n extTempMin: any,\r\n coloredCons: any,\r\n }[],\r\n machinesCsvData: [] as {}[],\r\n async fetchServerData() {\r\n try {\r\n setState({ isLoading: true });\r\n const test = await apiCall('/clients/get-clients-list', {});\r\n state.clients = test.list.map((client) => ({\r\n value: client.CLIENT_ID.toString(),\r\n name: client.NAME,\r\n }));\r\n\r\n const { list } = await apiCall('/get-units-list-page', {\r\n clientIds: state.selectedClient.length ? state.selectedClient.map((x) => Number(x)) : undefined,\r\n });\r\n state.units = list.map((unit) => ({\r\n value: unit.UNIT_ID.toString(),\r\n name: unit.UNIT_NAME,\r\n }));\r\n setState({ isLoading: false });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ isLoading: false });\r\n },\r\n });\r\n\r\n async function handleGetUnitInfo() {\r\n try {\r\n state.isLoading = true;\r\n const { list: dacsList } = await apiCall('/dac/get-dacs-list', {\r\n includeConsumption: true,\r\n unitIds: state.selectedUnits.map((unit) => Number(unit)),\r\n dateStart: state.dayStart,\r\n dateEnd: state.dayEnd,\r\n });\r\n\r\n state.dacList = dacsList.map((dac) => {\r\n const cons = {} as { [day: string]: number };\r\n const extTemp = {} as { [day: string]: number };\r\n const extTempMax = {} as { [day: string]: number };\r\n const extTempMin = {} as { [day: string]: number };\r\n\r\n for (const item of (dac.CONSUMPTION || [])) {\r\n if (item.DAY_HOURS_ON == null) continue;\r\n\r\n cons[item.DAT_REPORT] = item.DAY_HOURS_ON;\r\n extTemp[item.DAT_REPORT] = item.meanT;\r\n extTempMax[item.DAT_REPORT] = item.maxT;\r\n extTempMin[item.DAT_REPORT] = item.minT;\r\n\r\n const dayInfo = state.dateList.find((x) => x.YMD === item.DAT_REPORT);\r\n if (dayInfo) {\r\n dayInfo.totalAirCondCons = (dayInfo.totalAirCondCons || 0) + (item.DAY_HOURS_ON * (dac.DAC_KW || 0));\r\n }\r\n }\r\n\r\n let sumCons = 0;\r\n for (const item of Object.values(cons)) {\r\n sumCons = (sumCons || 0) + (item * (dac.DAC_KW || 0));\r\n }\r\n return {\r\n clientName: dac.CLIENT_NAME,\r\n unitName: dac.UNIT_NAME,\r\n id: dac.DAC_ID,\r\n name: dac.DAC_NAME,\r\n groupId: dac.GROUP_ID,\r\n groupName: dac.GROUP_NAME,\r\n pot: dac.DAC_KW,\r\n health: dac.H_INDEX,\r\n kw: dac.DAC_KW,\r\n status: dac.status,\r\n cons,\r\n sumCons,\r\n extTemp,\r\n extTempMax,\r\n extTempMin,\r\n coloredCons: null,\r\n };\r\n });\r\n render();\r\n\r\n const groupedMachines = {} as {\r\n clientName: string,\r\n unitName: string,\r\n id: string,\r\n name: string,\r\n groupId: string,\r\n groupName: string,\r\n pot: number\r\n health: number,\r\n kw: number,\r\n status: string,\r\n cons,\r\n sumCons,\r\n extTemp,\r\n extTempMax,\r\n extTempMin,\r\n coloredCons: null,\r\n };\r\n state.dacList.forEach((dac) => {\r\n if (!groupedMachines[dac.groupId]) {\r\n groupedMachines[dac.groupId] = {\r\n id: dac.groupId,\r\n name: dac.groupName,\r\n dacs: [],\r\n };\r\n }\r\n groupedMachines[dac.groupId].pot = (groupedMachines[dac.groupId].pot || 0) + dac.pot;\r\n groupedMachines[dac.groupId].consH = (groupedMachines[dac.groupId].consH || 0) + Object.values(dac.cons).reduce((a, b) => (a as number) + (b as number), 0);\r\n groupedMachines[dac.groupId].consKWH = dac.kw && (groupedMachines[dac.groupId].consKWH || 0) + (Object.values(dac.cons).reduce((a, b) => (a as number) + (b as number), 0) as number * dac.kw);\r\n groupedMachines[dac.groupId].dacs.push(dac);\r\n groupedMachines[dac.groupId].unitName = dac.unitName;\r\n groupedMachines[dac.groupId].clientName = dac.clientName;\r\n });\r\n state.groupedMachines = Object.values(groupedMachines);\r\n state.groupedMachines.sort((a, b) => b.consKWH - a.consKWH);\r\n setState({ isLoading: false });\r\n render();\r\n } catch (error) {\r\n console.log(error);\r\n toast.error(t('erroInformacaoUnidade'));\r\n }\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n\r\n const getMachinesCsvData = async () => {\r\n setState({ isLoading: true });\r\n await handleGetUnitInfo();\r\n\r\n const formattedCSV = [] as {}[];\r\n try {\r\n render();\r\n if (state.groupedMachines && state.groupedMachines.length > 0) {\r\n for (const machine of state.groupedMachines) {\r\n for (let i = 0; i < machine.dacs.length; i++) {\r\n const usageData = Object.entries(machine.dacs[i].cons);\r\n usageData.forEach((entries) => {\r\n const data = {\r\n clientName: machine.clientName,\r\n unitName: machine.unitName,\r\n name: machine.name,\r\n id: machine.dacs[i].id,\r\n pot: machine.dacs[i].pot,\r\n data: moment(entries[0]).format('DD/MM/YYYY'),\r\n consumo: formatNumberWithFractionDigits((Number(entries[1]) * machine.dacs[i].kw).toFixed(2), { minimum: 0, maximum: 2 }),\r\n usage: formatNumberWithFractionDigits(Number(entries[1]).toFixed(2), { minimum: 0, maximum: 2 }),\r\n };\r\n formattedCSV.push(data);\r\n });\r\n }\r\n }\r\n\r\n setState({ ...state, machinesCsvData: formattedCSV });\r\n setTimeout(() => {\r\n (machinesCsvLinkEl as any).current.link.click();\r\n }, 1000);\r\n\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n else {\r\n toast.info(t('erroExportarDadosGrafico')); setState({ isLoading: false });\r\n }\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); setState({ isLoading: false });\r\n }\r\n };\r\n\r\n function getDatesList(date: moment.Moment, numDays: number) {\r\n const dateList = [] as {\r\n mdate: moment.Moment,\r\n YMD: string,\r\n DMY: string,\r\n totalGreenAntCons: number,\r\n totalGreenAntInvoice: number,\r\n totalAirCondCons: number,\r\n savings_kWh: number,\r\n }[];\r\n\r\n for (let i = 0; i < numDays; i++) {\r\n const mdate = moment(date).add(i, 'days');\r\n dateList.push({\r\n mdate,\r\n DMY: mdate.format('DD/MM/YYYY'),\r\n YMD: mdate.format('YYYY-MM-DD'),\r\n totalGreenAntCons: 0,\r\n totalGreenAntInvoice: 0,\r\n totalAirCondCons: 0,\r\n savings_kWh: 0,\r\n });\r\n }\r\n\r\n return dateList;\r\n }\r\n\r\n state.filters = [\r\n {\r\n label: t('cliente'),\r\n placeholder: t('cliente'),\r\n options: state.clients,\r\n value: state.selectedClient,\r\n onChange: (value) => { state.selectedClient = value; state.fetchServerData(); render(); },\r\n index: 1,\r\n },\r\n {\r\n label: t('unidade'),\r\n placeholder: t('unidade'),\r\n options: state.units,\r\n value: state.selectedUnits,\r\n onChange: (value) => { state.selectedUnits = value; render(); },\r\n index: 2,\r\n },\r\n ];\r\n\r\n useEffect(() => {\r\n state.fetchServerData();\r\n }, []);\r\n\r\n return (\r\n <>\r\n { state.isLoading ? : (\r\n <>\r\n \r\n
\r\n {}}\r\n dielTool\r\n />\r\n
\r\n setState({ dayStart: e.target.value })}\r\n placeholder=\"YYYY-MM-DD\"\r\n label={t('dataInicial')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n setState({ dayEnd: e.target.value })}\r\n placeholder=\"YYYY-MM-DD\"\r\n label={t('dataFinal')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n { state.selectedUnits = state.selectedUnits.length && state.selectedUnits.length > 0 ? [] : state.units.map((unit) => unit.value); render(); }}\r\n style={{\r\n paddingTop: '5px', marginLeft: '289px', textDecoration: 'underline', color: '#00008B', fontSize: '11px', cursor: 'pointer',\r\n }}\r\n >\r\n {t('selecionarTodas')}\r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { useEffect, useRef } from 'react';\r\nimport { CSVLink } from 'react-csv';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Button,\r\n Loader,\r\n Input,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport { AnalysisFilters, FilterItem } from '~/pages/Analysis/AnalysisFilters';\r\nimport moment from 'moment';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport function DeviceTelemetry(): JSX.Element {\r\n const deviceTelemetryCsvLinkEl = useRef();\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n CSVheader: [{\r\n label: t('cliente'),\r\n key: 'clientName',\r\n },\r\n {\r\n label: t('unidade'),\r\n key: 'unitName',\r\n },\r\n {\r\n label: t('maquina'),\r\n key: 'machine',\r\n },\r\n {\r\n label: t('idDispositivo'),\r\n key: 'id',\r\n },\r\n {\r\n label: t('dia'),\r\n key: 'date',\r\n },\r\n {\r\n label: t('hora'),\r\n key: 'hour',\r\n },\r\n {\r\n label: `DAC (${t('temperaturaAmbiente')})`,\r\n key: 'tamb_DAC',\r\n },\r\n {\r\n label: `DAC (${t('temperaturaLiquido')})`,\r\n key: 'tliq_DAC',\r\n },\r\n {\r\n label: `DAC (${t('temperaturaSuccao')})`,\r\n key: 'tsuc_DAC',\r\n },\r\n {\r\n label: `DAC (${t('pressaoLiquido')})`,\r\n key: 'pliq_DAC',\r\n },\r\n {\r\n label: `DAC (${t('pressaoSuccao')})`,\r\n key: 'psuc_DAC',\r\n },\r\n {\r\n label: `DAC (${t('sinalComando')})`,\r\n key: 'sinal_DAC',\r\n },\r\n {\r\n label: `DAC (${t('superaquecimento')})`,\r\n key: 'tsh_DAC',\r\n },\r\n {\r\n label: `DAC (${t('subresfriamento')})`,\r\n key: 'tsc_DAC',\r\n },\r\n {\r\n label: `DAC (${t('temperatura')})`,\r\n key: 'temp_DUT',\r\n },\r\n {\r\n label: 'DUT (Mode)',\r\n key: 'mode_DUT',\r\n },\r\n {\r\n label: 'DUT (State)',\r\n key: 'state_DUT',\r\n },\r\n {\r\n label: 'DUT (Prog)',\r\n key: 'prog_DUT',\r\n },\r\n {\r\n label: 'DAM (Mode)',\r\n key: 'mode_DAM',\r\n },\r\n {\r\n label: 'DAM (State)',\r\n key: 'state_DAM',\r\n },\r\n {\r\n label: 'DAM (Prog)',\r\n key: 'prog_DAM',\r\n },\r\n {\r\n label: `DRI - ${t('consumoAcumulado')}`,\r\n key: 'energy_DRI',\r\n },\r\n {\r\n label: `DRI - ${t('modoOperacao')}`,\r\n key: 'operationMode_DRI',\r\n },\r\n {\r\n label: 'DRI - Setpoint',\r\n key: 'setpoint_DRI',\r\n },\r\n {\r\n label: 'DRI - Status',\r\n key: 'status_DRI',\r\n },\r\n {\r\n label: `DRI - ${t('limiteMax')}`,\r\n key: 'limiteMax_DRI',\r\n },\r\n {\r\n label: `DRI - ${t('limiteMin')}`,\r\n key: 'limiteMin_DRI',\r\n },\r\n\r\n ] as {}[],\r\n groupedDevs: [] as {\r\n id: string,\r\n clientName?: string,\r\n unitName: string,\r\n machine?: string,\r\n selectedTime: number[],\r\n dacs?: {\r\n lcmp:number[], // Sinal de comando\r\n lcut:number[], // Bloqueio de comando\r\n levp:number[], // Sinal de comando\r\n tamb:number[], // Temperatura ambiente\r\n tliq:number[], // Temperatura de líquido\r\n tsuc:number[], // Temperatura de sucção\r\n pliq:number[], // Pressão de líquido\r\n psuc:number[], // Pressão de sucção\r\n tsh:number[], // Superaquecimento\r\n tsc:number[], // Subresfriamento\r\n },\r\n duts?: {\r\n State:any; // Estado\r\n Mode:any;// Modo\r\n prog:any; // Programação\r\n temp:number[]; // Temperatura\r\n labels_State:string[]; // Labels de Estado\r\n },\r\n dris?:{\r\n setpoint:number[], // SetPoint\r\n status:number[], // Status\r\n operationMode:number[], // Mode de Operação\r\n limiteMax:number, // Limite Max\r\n limiteMin:number, // Limite Min\r\n energy:number[], // Consumo Acumulado\r\n }\r\n dams?:{\r\n State:any; // Estado\r\n Mode:any;// Modo\r\n prog:any; // Programação\r\n labels_State:string[]; // Labels de Estado\r\n }\r\n }[],\r\n isLoading: false,\r\n date: new Date(Date.now() - 3 * 60 * 60 * 1000).toISOString().substr(0, 10),\r\n yesterday: new Date(Date.now() - 27 * 60 * 60 * 1000).toISOString().substr(0, 10),\r\n hourStart: `${new Date(Date.now() - 3 * 60 * 60 * 1000).toISOString().substr(11, 3)}00`,\r\n hourStartMilliSeconds: 1 as number,\r\n hourEnd: `${new Date(Date.now() - 2 * 60 * 60 * 1000).toISOString().substr(11, 3)}00`,\r\n hourEndMilliSeconds: 1 as number,\r\n commonX: [] as number[],\r\n dateStart: moment().subtract(0, 'days'),\r\n energyMeter: null as null | ApiResps['/energy/get-energy-list']['list'][0],\r\n energyApiResponse: null as null | ApiResps['/energy/get-hist'],\r\n groupsList: [] as any,\r\n assetsList: [] as any,\r\n initTimeSave: false as boolean,\r\n initTime: 0 as number,\r\n endTime: 0 as number,\r\n numMilliseconds: 1 as number,\r\n alertColor: false as boolean,\r\n clients: [] as { value: string, name: string }[],\r\n selectedClient: [] as string[],\r\n units: [] as { value: string, name: string }[],\r\n selectedUnits: [] as string[],\r\n filters: [] as FilterItem[],\r\n dacList: [] as {\r\n id: string,\r\n clientName: string,\r\n unitName: string,\r\n machine?: string,\r\n selectedTime: number[],\r\n dacs: {\r\n lcmp:number[],\r\n lcut:number[],\r\n levp:number[],\r\n tamb:number[],\r\n tliq:number[],\r\n tsuc:number[],\r\n pliq:number[],\r\n psuc:number[],\r\n tsh:number[],\r\n tsc:number[],\r\n },\r\n }[],\r\n dutList: [] as {\r\n id: string,\r\n clientName: string,\r\n unitName: string,\r\n machine?: string,\r\n selectedTime: number[],\r\n duts: {\r\n State:number[],\r\n Mode:number[],\r\n prog:number[],\r\n temp:number[],\r\n labels_State:string[],\r\n\r\n },\r\n }[],\r\n damList: [] as {\r\n id: string,\r\n clientName?: string,\r\n unitName: string,\r\n machine?: string,\r\n selectedTime: number[],\r\n dams:{\r\n Mode: any;\r\n State: any;\r\n labels_State: string[];\r\n prog: any;\r\n }\r\n }[],\r\n driList: [] as {\r\n id: string,\r\n clientName: string,\r\n unitName: string,\r\n machine?: string,\r\n selectedTime: number[],\r\n dris:{\r\n setpoint:number[],\r\n status:number[],\r\n operationMode:number[],\r\n limiteMax: number,\r\n limiteMin: number,\r\n energy:number[],\r\n }\r\n }[],\r\n deviceTelemetryCsvData: [] as {}[],\r\n async fetchServerData() {\r\n try {\r\n setState({ isLoading: true });\r\n const test = await apiCall('/clients/get-clients-list', {});\r\n state.clients = test.list.map((client) => ({\r\n value: client.CLIENT_ID.toString(),\r\n name: client.NAME,\r\n }));\r\n\r\n const { list } = await apiCall('/get-units-list-page', {\r\n clientIds: state.selectedClient.length ? state.selectedClient.map((x) => Number(x)) : undefined,\r\n });\r\n state.units = list.map((unit) => ({\r\n value: unit.UNIT_ID.toString(),\r\n name: unit.UNIT_NAME,\r\n }));\r\n setState({ isLoading: false });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ isLoading: false });\r\n },\r\n });\r\n\r\n const getData = async (unitIds: number[]) => {\r\n const [\r\n { list: dacsList },\r\n { list: dutsList },\r\n { list: damsList },\r\n { list: drisList },\r\n { list },\r\n ] = await Promise.all([\r\n apiCall('/dac/get-dacs-list', {\r\n includeConsumption: true,\r\n unitIds,\r\n dateStart: state.yesterday,\r\n dateEnd: state.date,\r\n }),\r\n apiCall('/dut/get-duts-list', {\r\n unitIds,\r\n }),\r\n apiCall('/dam/get-dams-list', {\r\n unitIds,\r\n }),\r\n apiCall('/dri/get-dris-list', {\r\n unitIds,\r\n }),\r\n apiCall('/energy/get-energy-list', { unitIds }),\r\n unitIds.forEach(async (unit) => {\r\n const groupsList = await apiCall('/clients/get-groups-list', { unitIds: [unit] });\r\n const { list: assetsList } = await apiCall('/clients/get-assets-list', { unitIds: [unit] });\r\n state.groupsList.push(groupsList);\r\n state.assetsList.push(assetsList);\r\n }),\r\n ]);\r\n return {\r\n dacsList, dutsList, damsList, drisList, list,\r\n };\r\n };\r\n\r\n const handleEnergyMeter = async (list: ApiResps['/energy/get-energy-list']['list']) => {\r\n const energyMeter = list[0];\r\n state.energyMeter = energyMeter;\r\n\r\n if (energyMeter) {\r\n state.energyApiResponse = await apiCall('/energy/get-hist', {\r\n energy_device_id: energyMeter.ENERGY_DEVICE_ID,\r\n serial: energyMeter.SERIAL,\r\n manufacturer: energyMeter.MANUFACTURER,\r\n model: energyMeter.MODEL,\r\n start_time: `${state.date}T${state.hourStart}:00`,\r\n end_time: `${state.date}T${state.hourEnd}:00`,\r\n params: ['en_at_tri'],\r\n });\r\n }\r\n };\r\n\r\n const updateDevsLists = (\r\n dacsList: ApiResps['/dac/get-dacs-list']['list'],\r\n dutsList: ApiResps['/dut/get-duts-list']['list'],\r\n damsList: ApiResps['/dam/get-dams-list']['list'],\r\n drisList: ApiResps['/dri/get-dris-list']['list'],\r\n ) => {\r\n state.dacList = dacsList.map((device) => ({\r\n id: device.DAC_ID,\r\n clientName: device.CLIENT_NAME,\r\n unitName: device.UNIT_NAME,\r\n selectedTime: state.commonX,\r\n dacs: {\r\n lcmp: [],\r\n lcut: [],\r\n levp: [],\r\n tamb: [],\r\n tliq: [],\r\n tsuc: [],\r\n pliq: [],\r\n psuc: [],\r\n tsh: [],\r\n tsc: [],\r\n },\r\n\r\n }));\r\n render();\r\n\r\n state.dutList = dutsList.map((device) => ({\r\n id: device.DEV_ID,\r\n clientName: device.CLIENT_NAME,\r\n unitName: device.UNIT_NAME,\r\n selectedTime: state.commonX,\r\n duts: {\r\n State: [],\r\n Mode: [],\r\n prog: [],\r\n temp: [],\r\n labels_State: [],\r\n },\r\n\r\n }));\r\n render();\r\n\r\n state.damList = damsList.map((device) => ({\r\n id: device.DAM_ID,\r\n clientName: device.CLIENT_NAME,\r\n unitName: device.UNIT_NAME,\r\n selectedTime: state.commonX,\r\n dams: {\r\n Mode: [],\r\n State: [],\r\n labels_State: [],\r\n prog: [],\r\n },\r\n }));\r\n render();\r\n\r\n state.driList = drisList.map((device) => ({\r\n id: device.DRI_ID,\r\n clientName: device.CLIENT_NAME,\r\n unitName: device.UNIT_NAME,\r\n selectedTime: [],\r\n dris: {\r\n setpoint: [],\r\n status: [],\r\n operationMode: [],\r\n limiteMax: 0,\r\n limiteMin: 0,\r\n energy: [],\r\n },\r\n }));\r\n render();\r\n\r\n state.dacList.forEach((device) => {\r\n state.groupedDevs.push(device);\r\n });\r\n state.dutList.forEach((device) => {\r\n state.groupedDevs.push(device);\r\n });\r\n state.damList.forEach((device) => {\r\n state.groupedDevs.push(device);\r\n });\r\n state.driList.forEach((device) => {\r\n state.groupedDevs.push(device);\r\n });\r\n };\r\n\r\n const handleDacData = (device: typeof state.groupedDevs[number], promises: Promise[]) => {\r\n const paramsDac = {\r\n dacId: device.id,\r\n dayYMD: moment(state.date).format('YYYY-MM-DD'),\r\n selectedParams: ['Tamb', 'Tsuc', 'Tliq', 'Psuc', 'Pliq', 'Lcmp', 'Levp', 'Lcut', 'Tsc', 'Tsh'],\r\n numDays: 1,\r\n };\r\n\r\n const promise = apiCall('/dac/get-charts-data-common', paramsDac).then(\r\n async (websocketHistory) => {\r\n const {\r\n vars,\r\n } = websocketHistory;\r\n if (device.dacs) {\r\n device.dacs.tamb = vars.Tamb.y;\r\n device.dacs.tliq = vars.Tliq.y;\r\n device.dacs.tsuc = vars.Tsuc.y;\r\n device.dacs.tsc = vars.Tsc.y;\r\n device.dacs.tsh = vars.Tsh.y;\r\n device.dacs.psuc = vars.Psuc.y;\r\n device.dacs.lcmp = vars.Lcmp.L;\r\n device.dacs.lcut = vars.Lcut.L;\r\n device.dacs.levp = vars.Levp.L;\r\n }\r\n },\r\n );\r\n (promise !== undefined) && promises.push(promise);\r\n };\r\n\r\n const setDutsTemprt = (dutsTemprt: ApiResps['/get-autom-day-charts-data']['dutsTemprt'], device: typeof state.groupedDevs[number]) => {\r\n !dutsTemprt[0].isDutDuo && dutsTemprt[0].Temperature && dutsTemprt[0].Temperature.c.forEach((telemetry, index) => {\r\n if (device.duts) {\r\n for (let i = 0; i < telemetry; i++) {\r\n device.duts.temp.push(dutsTemprt[0].Temperature.v[index]);\r\n }\r\n }\r\n });\r\n };\r\n\r\n const setDutData = (websocketHistory: ApiResps['/get-autom-day-charts-data'], device: typeof state.groupedDevs[number]) => {\r\n const { asTable, dutsTemprt } = websocketHistory;\r\n device.duts && (device.duts.labels_State = asTable.labels_State);\r\n\r\n asTable?.c.forEach((telemetry, index) => {\r\n if (device.duts) {\r\n for (let i = 0; i < telemetry; i++) {\r\n asTable.State && device.duts.State.push(asTable.State[index]);\r\n asTable.Mode && device.duts.Mode.push(asTable.Mode[index]);\r\n asTable.prog && device.duts.prog.push(asTable.prog[index]);\r\n }\r\n }\r\n });\r\n if (dutsTemprt) {\r\n setDutsTemprt(dutsTemprt, device);\r\n }\r\n };\r\n\r\n const handleDutData = (device: typeof state.groupedDevs[number], promises: Promise[]) => {\r\n const paramsDut = {\r\n devId: device.id,\r\n day: moment(state.date).format('YYYY-MM-DD'),\r\n };\r\n\r\n const promise = apiCall('/get-autom-day-charts-data', paramsDut).then(\r\n async (websocketHistory) => {\r\n setDutData(websocketHistory, device);\r\n },\r\n );\r\n (promise !== undefined) && promises.push(promise);\r\n };\r\n\r\n const handleDamData = (device: typeof state.groupedDevs[number], promises: Promise[]) => {\r\n const paramsDam = {\r\n devId: device.id,\r\n day: moment(state.date).format('YYYY-MM-DD'),\r\n };\r\n\r\n const promise = apiCall('/get-autom-day-charts-data', paramsDam).then(\r\n async (websocketHistory) => {\r\n const { asTable } = websocketHistory;\r\n device.dams && (device.dams.labels_State = asTable.labels_State);\r\n\r\n asTable && asTable.c.forEach((telemetry, index) => {\r\n if (device.dams) {\r\n for (let i = 0; i < telemetry; i++) {\r\n device.dams.State.push(asTable.State[index]);\r\n device.dams.Mode.push(asTable.Mode[index]);\r\n device.dams.prog.push(asTable.prog[index]);\r\n }\r\n }\r\n });\r\n },\r\n );\r\n (promise !== undefined) && promises.push(promise);\r\n };\r\n\r\n const handleDriData = (device: typeof state.groupedDevs[number], promises: Promise[]) => {\r\n const paramsDri = {\r\n driId: device.id,\r\n selectedParams: ['Setpoint', 'Status', 'Mode', 'DutTemp', 'ThermOn', 'Lock', 'TempAmb', 'ValveOn', 'Fanspeed'],\r\n dayYMD: moment(state.date).format('YYYY-MM-DD'),\r\n numDays: 1,\r\n };\r\n\r\n if (device.id === state.energyMeter?.ENERGY_DEVICE_ID) {\r\n state.energyApiResponse && state.energyApiResponse.data.forEach((telemetry) => {\r\n telemetry.en_at_tri && device.dris?.energy.push(telemetry.en_at_tri);\r\n });\r\n }\r\n if (device.id !== state.energyMeter?.ENERGY_DEVICE_ID) {\r\n const promise = apiCall('/dri/get-day-charts-data-common', paramsDri).then(\r\n async (websocketHistory) => {\r\n const {\r\n vars, limits,\r\n } = websocketHistory;\r\n\r\n device.selectedTime = state.commonX;\r\n if (device.dris) {\r\n vars.OperationMode && (device.dris.operationMode = vars.OperationMode.y);\r\n vars.Setpoint && (device.dris.setpoint = vars.Setpoint.y);\r\n vars.Status && (device.dris.status = vars.Status.y);\r\n device.dris.limiteMax = limits.maxTval;\r\n device.dris.limiteMin = limits.minTval;\r\n }\r\n },\r\n );\r\n promise && promises.push(promise);\r\n }\r\n };\r\n\r\n const validations = () => {\r\n if ((state.numMilliseconds >= 1) && (state.numMilliseconds <= 3600000)) return true;\r\n\r\n toast.error(t('periodoMenorOuIgual1Hora'));\r\n state.isLoading = false;\r\n render();\r\n return false;\r\n };\r\n\r\n const handleDevices = (device: typeof state.groupedDevs[number], promises: Promise[]) => {\r\n if (device.id.startsWith('DAC')) {\r\n handleDacData(device, promises);\r\n }\r\n\r\n if (device.id.startsWith('DUT')) {\r\n handleDutData(device, promises);\r\n }\r\n\r\n if (device.id.startsWith('DRI')) {\r\n handleDriData(device, promises);\r\n }\r\n\r\n if (device.id.startsWith('DAM')) {\r\n handleDamData(device, promises);\r\n }\r\n };\r\n\r\n async function handleGetUnitInfo() {\r\n try {\r\n state.isLoading = true;\r\n const unitIds = state.selectedUnits.map((unit) => Number(unit));\r\n const {\r\n dacsList, dutsList, damsList, drisList, list,\r\n } = await getData(unitIds);\r\n\r\n const promises: Promise[] = [];\r\n\r\n await handleEnergyMeter(list);\r\n\r\n if (!validations()) {\r\n return;\r\n }\r\n\r\n updateDevsLists(dacsList, dutsList, damsList, drisList);\r\n\r\n if (state.groupedDevs?.length) {\r\n state.groupedDevs.forEach(async (device) => {\r\n handleDevices(device, promises);\r\n });\r\n }\r\n\r\n await Promise.all(promises);\r\n\r\n toast.success(t('sucessoAguardeUmMomento'));\r\n setState({ isLoading: false });\r\n render();\r\n } catch (error) {\r\n console.log(error);\r\n toast.error(t('erroInformacaoUnidade'));\r\n }\r\n formatTelemetriesCurrent();\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n\r\n const getMachinesCsvData = async () => {\r\n setState({ isLoading: true });\r\n await handleGetUnitInfo();\r\n\r\n const formattedCSV = [] as {}[];\r\n try {\r\n render();\r\n if (state.groupedDevs && state.groupedDevs.length > 0) {\r\n for (const device of state.groupedDevs) {\r\n if (device.id.startsWith('DAC')) {\r\n device.selectedTime.forEach((time, index) => {\r\n const data = {\r\n clientName: device.clientName,\r\n unitName: device.unitName,\r\n id: device.id,\r\n machine: device.machine,\r\n date: moment(state.date).format('DD.MM.YYYY'),\r\n hour: CsvLabelFromaterData(time),\r\n tamb_DAC: (device.dacs && device.dacs.tamb[index]) ? device.dacs.tamb[index].toFixed(1) : '-',\r\n tliq_DAC: (device.dacs && device.dacs.tliq[index]) ? device.dacs.tliq[index].toFixed(1) : '-',\r\n tsuc_DAC: (device.dacs && device.dacs.tsuc[index]) ? device.dacs.tsuc[index].toFixed(1) : '-',\r\n sinal_DAC: device.dacs && (device.dacs.lcmp[index] === 1 || device.dacs.lcut[index] === 1 || device.dacs.levp[index] === 1) ? 'LIGADO' : 'DESLIGADO',\r\n pliq_DAC: device.dacs && device.dacs.pliq[index] ? device.dacs.pliq[index].toFixed(1) : '-',\r\n psuc_DAC: (device.dacs && device.dacs.psuc[index]) ? device.dacs.psuc[index].toFixed(1) : '-',\r\n tsh_DAC: (device.dacs && device.dacs.tsh[index]) ? device.dacs.tsh[index].toFixed(1) : '-',\r\n tsc_DAC: (device.dacs && device.dacs.tsc[index]) ? device.dacs.tsc[index].toFixed(1) : '-',\r\n };\r\n formattedCSV.push(data);\r\n });\r\n }\r\n else if (device.id.startsWith('DUT')) {\r\n device.selectedTime.forEach((time, index) => {\r\n const data = {\r\n clientName: device.clientName,\r\n unitName: device.unitName,\r\n id: device.id,\r\n machine: device.machine,\r\n date: moment(state.date).format('DD.MM.YYYY'),\r\n hour: CsvLabelFromaterData(time),\r\n state_DUT: (device.duts && device.duts.State[index]) && device.duts.labels_State[device.duts.State[index]],\r\n mode_DUT: (device.duts && device.duts.Mode[index]) ? (device.duts.Mode[index] === 1 ? 'Manual' : 'Auto') : '-',\r\n prog_DUT: (device.duts && device.duts.State[index]) ? (device.duts.State[index] === 1 ? 'forbid' : 'allow') : '-',\r\n temp_DUT: (device.duts && device.duts.temp[index]) ? device.duts.temp[index].toFixed(1) : '-',\r\n };\r\n formattedCSV.push(data);\r\n });\r\n }\r\n else if (device.id.startsWith('DRI') && (device.id === state.energyMeter?.ENERGY_DEVICE_ID)) {\r\n state.energyApiResponse?.data.forEach((telemetry) => {\r\n const data = {\r\n clientName: device.clientName,\r\n unitName: device.unitName,\r\n id: device.id,\r\n machine: device.machine,\r\n date: moment(state.date).format('DD.MM.YYYY'),\r\n hour: telemetry.timestamp && telemetry.timestamp.substr(11, 9),\r\n energy_DRI: telemetry.en_at_tri && telemetry.en_at_tri.toFixed(1),\r\n };\r\n formattedCSV.push(data);\r\n });\r\n }\r\n else if (device.id.startsWith('DRI') && (device.id !== state.energyMeter?.ENERGY_DEVICE_ID)) {\r\n device.selectedTime.forEach((time, index) => {\r\n const data = {\r\n clientName: device.clientName,\r\n unitName: device.unitName,\r\n id: device.id,\r\n machine: device.machine,\r\n date: moment(state.date).format('DD.MM.YYYY'),\r\n hour: CsvLabelFromaterData(time),\r\n operationMode_DRI: (device.dris && device.dris.operationMode[index]) ? csvOperationModeFormatter(device.dris.operationMode[index]) : '-',\r\n setpoint_DRI: (device.dris && device.dris.setpoint[index]) ? device.dris.setpoint[index] : '-',\r\n status_DRI: (device.dris && device.dris.status[index]) ? device.dris.status[index].toFixed(1) : '-',\r\n limiteMax_DRI: (device.dris && device.dris.limiteMax) ? device.dris.limiteMax.toFixed(1) : '-',\r\n limiteMin_DRI: (device.dris && device.dris.limiteMin) ? device.dris.limiteMin.toFixed(1) : '-',\r\n };\r\n formattedCSV.push(data);\r\n });\r\n }\r\n else if (device.id.startsWith('DAM')) {\r\n device.selectedTime.forEach((time, index) => {\r\n const data = {\r\n clientName: device.clientName,\r\n unitName: device.unitName,\r\n id: device.id,\r\n machine: device.machine,\r\n date: moment(state.date).format('DD.MM.YYYY'),\r\n hour: CsvLabelFromaterData(time),\r\n state_DAM: (device.dams && device.dams.State[index]) && device.dams.labels_State[device.dams.State[index]],\r\n mode_DAM: (device.dams && device.dams.Mode[index]) ? (device.dams.Mode[index] === 1 ? 'Manual' : 'Auto') : '-',\r\n prog_DAM: (device.dams && device.dams.State[index]) ? (device.dams.State[index] === 1 ? 'forbid' : 'allow') : '-',\r\n };\r\n formattedCSV.push(data);\r\n });\r\n }\r\n }\r\n\r\n setState({ ...state, deviceTelemetryCsvData: formattedCSV });\r\n setTimeout(() => {\r\n (deviceTelemetryCsvLinkEl as any).current.link.click();\r\n }, 1000);\r\n\r\n setState({ isLoading: false });\r\n state.groupedDevs = [];\r\n state.assetsList = [];\r\n state.groupsList = [];\r\n state.initTimeSave = false;\r\n render();\r\n }\r\n else {\r\n toast.info(t('semDadosGraficoExportar')); setState({ isLoading: false });\r\n }\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); setState({ isLoading: false });\r\n }\r\n };\r\n\r\n function formatTelemetriesCurrent() {\r\n for (const device of state.groupedDevs) {\r\n device.selectedTime = device.selectedTime.filter((time, index) =>\r\n {\r\n const currentTime = CsvLabelFromaterDataMilliSeconds(time);\r\n if (state.hourStartMilliSeconds <= currentTime && currentTime <= state.hourEndMilliSeconds) {\r\n if (!state.initTimeSave) {\r\n state.initTime = index;\r\n state.initTimeSave = true;\r\n }\r\n state.endTime = index;\r\n return time;\r\n }\r\n });\r\n\r\n if (device.id.startsWith('DAC') && device.dacs) {\r\n device.dacs.tamb = device.dacs.tamb.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.lcmp = device.dacs.lcmp.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.lcut = device.dacs.lcut.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.levp = device.dacs.levp.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.pliq = device.dacs.pliq.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.psuc = device.dacs.psuc.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.tliq = device.dacs.tliq.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.tsc = device.dacs.tsc.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.tsh = device.dacs.tsh.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dacs.tsuc = device.dacs.tsuc.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n }\r\n if (device.id.startsWith('DUT') && device.duts) {\r\n device.duts.State = device.duts.State.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.duts.Mode = device.duts.Mode.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.duts.prog = device.duts.prog.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.duts.temp = device.duts.temp.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n }\r\n if (device.id.startsWith('DRI') && (device.id !== state.energyMeter?.ENERGY_DEVICE_ID)) {\r\n if (device.dris) {\r\n device.dris.setpoint = device.dris.setpoint.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dris.status = device.dris.status.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dris.operationMode = device.dris.operationMode.filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n }\r\n }\r\n\r\n if (device.id.startsWith('DAM') && device.dams) {\r\n device.dams.State = device.dams.State.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dams.Mode = device.dams.Mode.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n device.dams.prog = device.dams.prog.filter((_telemetry, index) => (index % 5) === 0).filter((_telemetry, index) => state.initTime <= index && index <= state.endTime);\r\n }\r\n state.assetsList.filter((assets) => {\r\n assets.filter((asset) => {\r\n if (asset.DEV_ID === device.id) {\r\n device.machine = asset.GROUP_NAME;\r\n }\r\n });\r\n });\r\n\r\n state.groupsList.filter((groups) => {\r\n groups.filter((group) => {\r\n if (group.DEV_AUT === device.id || group.DUT_ID === device.id) {\r\n device.machine = group.GROUP_NAME;\r\n }\r\n });\r\n });\r\n }\r\n }\r\n\r\n function csvOperationModeFormatter(value: any) {\r\n if (value === 0) return 'DESLIGADO';\r\n if (value === 1) return 'VENTILAR';\r\n if (value === 2) return 'REFRIGERAR';\r\n return '-';\r\n }\r\n\r\n function CsvLabelFromaterDataMilliSeconds(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n const timeMilliseconds = (hh * 60 * 60 * 1000) + (min * 60 * 1000) + (ss * 1000);\r\n\r\n return timeMilliseconds;\r\n }\r\n\r\n function CsvLabelFromaterData(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n return `${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}:${String(ss).padStart(2, '0')}`;\r\n }\r\n\r\n state.filters = [\r\n {\r\n label: t('cliente'),\r\n placeholder: t('cliente'),\r\n options: state.clients,\r\n value: state.selectedClient,\r\n onChange: (value) => { state.selectedClient[0] = value; state.fetchServerData(); render(); },\r\n index: 1,\r\n },\r\n {\r\n label: t('unidade'),\r\n placeholder: t('unidade'),\r\n options: state.units,\r\n value: state.selectedUnits,\r\n onChange: (value) => { state.selectedUnits = value; render(); },\r\n index: 2,\r\n },\r\n ];\r\n\r\n useEffect(() => {\r\n state.fetchServerData();\r\n }, []);\r\n\r\n useEffect(() => {\r\n let addFiveSeconds = 0;\r\n for (let i = 0; i <= 17280; i++) {\r\n state.commonX[i] = addFiveSeconds;\r\n addFiveSeconds += 0.00138888888;\r\n }\r\n }, []);\r\n\r\n useEffect(() => {\r\n state.hourStartMilliSeconds = parseInt(state.hourStart.substr(0, 2), 10) * 60 * 60 * 1000 + parseInt(state.hourStart.substr(3, 2), 10) * 60 * 1000;\r\n state.hourEndMilliSeconds = parseInt(state.hourEnd.substr(0, 2), 10) * 60 * 60 * 1000 + parseInt(state.hourEnd.substr(3, 2), 10) * 60 * 1000;\r\n\r\n state.numMilliseconds = (state.hourEndMilliSeconds - state.hourStartMilliSeconds);\r\n if ((state.numMilliseconds >= 1) && (state.numMilliseconds <= 3600000)) {\r\n state.alertColor = false;\r\n render();\r\n }\r\n else {\r\n state.alertColor = true;\r\n render();\r\n }\r\n }, [state.hourStart, state.hourEnd]);\r\n\r\n return (\r\n <>\r\n { state.isLoading ? : (\r\n <>\r\n \r\n
\r\n {}}\r\n dielTool\r\n />\r\n
\r\n setState({ date: e.target.value })}\r\n placeholder=\"YYYY-MM-DD\"\r\n label={t('data')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n setState({ hourStart: e.target.value })}\r\n placeholder=\"00:00\"\r\n label={t('horaInicial')}\r\n style={{ width: '130px' }}\r\n />\r\n\r\n
\r\n
\r\n setState({ hourEnd: e.target.value })}\r\n placeholder=\"00:00\"\r\n label={t('horaFinal')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n { state.selectedUnits.length && state.selectedUnits.length > 0 ? state.selectedUnits = [] : state.selectedUnits = state.units.map((unit) => unit.value); render(); }}\r\n style={{\r\n paddingTop: '5px', marginLeft: '289px', textDecoration: 'underline', color: '#00008B', fontSize: '11px', cursor: 'pointer',\r\n }}\r\n >\r\n {t('selecionarTodas')}\r\n
\r\n \r\n {t('intervaloTempoAte1Hora')}\r\n \r\n
\r\n\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport {\r\n Button,\r\n Loader,\r\n Input,\r\n} from 'components';\r\nimport { toast } from 'react-toastify';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, apiCallDownload } from 'providers';\r\nimport { AnalysisFilters } from '../../../Analysis/AnalysisFilters';\r\nimport moment from 'moment';\r\nimport { InputNumber, StyleSelect, CustomAnalysis } from '../styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport function MedicaoTempDuts(): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n endDate: moment().subtract(1, 'days'),\r\n periodTelemetria: '',\r\n isLoading: false,\r\n dayStart: new Date(Date.now() - 30 * (24 * 60 * 60 * 1000)).toISOString().substring(0, 10),\r\n workPeriod: {},\r\n dayEnd: new Date(Date.now()).toISOString().substring(0, 10),\r\n clients: [] as { value: string, name: string }[],\r\n selectedClient: [] as any | any[],\r\n units: [] as { value: string, name: string }[],\r\n duts: [] as { value: string, name: string }[],\r\n dutsInfo: {},\r\n selectedDuts: [] as string[],\r\n selectedUnits: [] as any | any[],\r\n usageData: [] as { id: string, clientName: string, unitName: string, namb: string, telemetry: string[][], temperature: number[], typeAmbHour: any }[],\r\n async fetchServerData() {\r\n try {\r\n setState({ isLoading: true });\r\n const test = await apiCall('/clients/get-clients-list', {});\r\n state.clients = test.list.map((client) => ({\r\n value: client.CLIENT_ID.toString(),\r\n name: client.NAME,\r\n }));\r\n if (state.selectedClient.length > 0) {\r\n const getWorksPeriod = await apiCall('/clients/get-roomtypes-list', { CLIENT_ID: state.selectedClient });\r\n getWorksPeriod.rtypes.forEach((item) => { state.workPeriod[item.RTYPE_ID] = { work: item.workPeriods }; });\r\n const { list } = await apiCall('/get-units-list-page', {\r\n clientIds: [Number(state.selectedClient)],\r\n });\r\n state.units = list.map((unit) => ({\r\n value: unit.UNIT_ID.toString(),\r\n name: unit.UNIT_NAME,\r\n }));\r\n }\r\n if (state.selectedUnits.length > 0) {\r\n const { list: dutsList } = await apiCall('/dut/get-duts-list', {\r\n unitId: Number(state.selectedUnits),\r\n });\r\n state.duts = dutsList.map((dut) => ({ value: dut.DEV_ID, name: dut.ROOM_NAME || dut.DEV_ID }));\r\n dutsList.forEach((item) => state.dutsInfo[item.DEV_ID] = {\r\n name: item.ROOM_NAME, unitName: item.UNIT_NAME, clientName: item.CLIENT_NAME, work: state.workPeriod[item.RTYPE_ID]?.work,\r\n });\r\n state.selectedDuts = dutsList.map((dut) => (\r\n dut.DEV_ID\r\n ));\r\n }\r\n setState({ isLoading: false });\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ isLoading: false });\r\n },\r\n });\r\n\r\n async function handleGetUnitInfo() {\r\n render();\r\n try {\r\n const params = {\r\n dutsInfo: state.dutsInfo,\r\n duts: state.selectedDuts,\r\n telemetriaFilter: state.periodTelemetria,\r\n dayStart: state.dayStart,\r\n dayEnd: state.dayEnd,\r\n };\r\n const exportResponse = await apiCallDownload('/devtools/export-duts-temperatures', params);\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'DUTsTemperatures.xlsx';\r\n link.click();\r\n toast.success(t('sucessoExportacao'));\r\n setState({ isLoading: false });\r\n } catch (error) {\r\n toast.error(t('houveErro'));\r\n setState({ isLoading: false });\r\n }\r\n }\r\n\r\n const getTempsCsvData = async () => {\r\n state.isLoading = true;\r\n render();\r\n const currentDate = new Date();\r\n const initialDate = new Date(state.dayStart);\r\n const finalDate = new Date(state.dayEnd);\r\n const timeDiff = Math.abs(finalDate.getTime() - initialDate.getTime());\r\n const diffDays = Math.ceil(timeDiff / (1000 * 3600 * 24));\r\n if (diffDays > 31) { toast.error(t('erroQuantidadeDias')); state.isLoading = false; return; }\r\n if (currentDate.getTime() < finalDate.getTime() || currentDate.getTime() < initialDate.getTime()) { toast.error(t('dataInvalida')); state.isLoading = false; return; }\r\n if (state.selectedDuts.length === 0) { toast.error(t('erroSelecionePeloMenosUmDut')); state.isLoading = false; return; }\r\n if (Number(state.periodTelemetria) < 5) { toast.error(t('erroPeriodicidadePeloMenos5min')); state.isLoading = false; return; }\r\n if (Number(state.periodTelemetria) > 43800) { toast.error(t('erroPeriodicidade')); state.isLoading = false; return; }\r\n await handleGetUnitInfo();\r\n state.isLoading = false;\r\n };\r\n\r\n useEffect(() => {\r\n state.fetchServerData();\r\n }, [state.selectedUnits, state.selectedClient]);\r\n\r\n return (\r\n <>\r\n { state.isLoading ? (\r\n <>\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n { setState({\r\n selectedClient: value, selectedDuts: [], selectedUnits: [], dutsInfo: {}, duts: [],\r\n }); render(); }}\r\n placeholder={t('selecioneCliente')}\r\n label={t('cliente')}\r\n />\r\n \r\n \r\n \r\n { setState({ selectedDuts: [], duts: [], selectedUnits: value }); render(); }}\r\n placeholder={t('selecioneUnidade')}\r\n label={t('unidade')}\r\n />\r\n \r\n { state.selectedDuts = value; render(); },\r\n index: 2,\r\n }]}\r\n isLoading={state.isLoading}\r\n onApply={() => {}}\r\n dielTool\r\n />\r\n \r\n
\r\n \r\n \r\n setState({ periodTelemetria: e.target.value })} />\r\n \r\n \r\n { Number(state.periodTelemetria) >= 5\r\n ? ''\r\n : t('peloMenos5Minutos')}\r\n

\r\n
\r\n
\r\n setState({ dayStart: e.target.value })}\r\n placeholder=\"YYYY-MM-DD\"\r\n label={t('dataInicial')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n setState({ dayEnd: e.target.value })}\r\n placeholder=\"YYYY-MM-DD\"\r\n label={t('dataFinal')}\r\n style={{ width: '130px' }}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {Number(state.periodTelemetria) >= 5\r\n && (\r\n <>\r\n {t('informacaoExportacao')}\r\n

\r\n {t('seraCalculadaMediaTemperaturas')}\r\n {' '}\r\n {state.periodTelemetria}\r\n {` ${t('em')} `}\r\n {state.periodTelemetria}\r\n {' '}\r\n {`${t('minutos')}.`}\r\n

\r\n \r\n )}\r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import {\r\n Button,\r\n Loader,\r\n Input,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nexport function ManualDevCommand(): JSX.Element {\r\n const [state, render, setState] = useStateVar({\r\n devId: 'DEV122223333',\r\n payload: '{\"propname\":\"value\"}',\r\n enviando: false,\r\n });\r\n\r\n async function sendDevCommand() {\r\n if (state.enviando) return;\r\n try {\r\n setState({ enviando: true });\r\n await apiCall('/realtime/devtools/publish_dev_cmd', {\r\n devId: state.devId,\r\n payload: JSON.parse(state.payload),\r\n });\r\n // alert('Sucesso')\r\n } catch (err) { console.log(err); alert('Erro'); }\r\n setState({ enviando: false });\r\n }\r\n\r\n return (\r\n
\r\n { state.devId = e.target.value; render(); }}\r\n />\r\n { state.payload = e.target.value; render(); }}\r\n />\r\n \r\n
\r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Loader,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n Card,\r\n CardTitle,\r\n} from './styles';\r\nimport { ExportarDevs } from './ExportarDevs';\r\nimport { TemprtMediaDUTs } from './ExportarDuts/TemprtMediaDUTs';\r\nimport { MachineConsumption } from './MachineConsumption';\r\nimport { DeviceTelemetry } from './DeviceTelemetry';\r\nimport { MedicaoTempDuts } from './ExportarDuts/MedicaoTempDuts';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { ManualDevCommand } from './ManualDevCommand';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport function FerramentasDiel(): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar(() => ({\r\n loading: true,\r\n cards: [\r\n { comp: , title: t('exportarListasDispositivos') },\r\n { comp: , title: t('exportarTemperaturaMediaDiariaDuts') },\r\n { comp: , title: t('exportarMedicoesTemperaturaDuts') },\r\n { comp: , title: t('exportarConsumoMaquinas') },\r\n { comp: , title: t('exportarDadosTelemetriaDispositivos') },\r\n { comp: , title: t('enviarComandoParaDispositivo') },\r\n ] as { comp: JSX.Element, title: string, show?: boolean }[],\r\n }));\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n async function fetchData() {\r\n try {\r\n setState({ loading: true });\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loading: false });\r\n }\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Ferramentas Diel\r\n \r\n \r\n {state.loading && }\r\n {(!state.loading) && (\r\n <>\r\n {state.cards.map((card, i) => (\r\n \r\n <>\r\n { card.show = !card.show; render(); }}>\r\n

\r\n { card.title }\r\n

\r\n
\r\n {card.show && card.comp}\r\n \r\n
\r\n ))}\r\n {/*
Permitir exportar dados e debugar estratégias
*/}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default withTransaction('FerramentasDiel', 'component')(FerramentasDiel);\r\n","import { useEffect } from 'react';\r\nimport { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button,\r\n Loader,\r\n Select,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, ApiResps } from 'providers';\r\n\r\ntype Customer = ApiResps['/coolautomation/get-units-and-systems']['customers']['']&{\r\n _sites: Site[]\r\n};\r\ntype Site = ApiResps['/coolautomation/get-units-and-systems']['sites']['']&{\r\n _customer: Customer|null\r\n _devices: Device[]\r\n};\r\ntype Device = ApiResps['/coolautomation/get-units-and-systems']['devices']['']&{\r\n _site: Site|null\r\n _systems: System[]\r\n};\r\ntype System = ApiResps['/coolautomation/get-units-and-systems']['systems']['']&{\r\n _device: Device|null\r\n _units: Unit[]\r\n};\r\ntype Unit = ApiResps['/coolautomation/get-units-and-systems']['units']['']&{\r\n _system: System|null\r\n};\r\n\r\nexport const CoolAutomation = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n loading: true,\r\n customers: [] as Customer[],\r\n sites: [] as Site[],\r\n devices: [] as (Device&{ comboLabel?: string })[],\r\n systems: [] as System[],\r\n coolAutUnits: [] as Unit[],\r\n gridCells: [] as { id: string, text: string|JSX.Element, span?: number, link?: string }[],\r\n gridColumns: [] as string[],\r\n associatedDevices: [] as { CLIENT_NAME: string, UNIT_NAME: string, integrId: string, dataSource: string }[],\r\n dielUnits: [] as { UNIT_ID: number, UNIT_NAME: string, CLIENT_NAME: string, comboLabel?: string }[],\r\n groupedEvents: [] as ApiResps['/coolautomation/debug-alerts']['groupedEvents'],\r\n combo_selectedDielUnit: null as null|{ UNIT_ID: number },\r\n combo_selectedCoolAutDevice: null as null|Device,\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n async function fetchData() {\r\n try {\r\n setState({ loading: true });\r\n const [\r\n dielUnits,\r\n {\r\n customers,\r\n sites,\r\n devices,\r\n systems,\r\n units: coolAutUnits,\r\n valsTransl,\r\n },\r\n { list: associatedDevices },\r\n { groupedEvents },\r\n ] = await Promise.all([\r\n apiCall('/clients/get-units-list', {}),\r\n apiCall('/coolautomation/get-units-and-systems'),\r\n apiCall('/get-integrations-list', { supplier: 'coolautomation' }),\r\n apiCall('/coolautomation/debug-alerts', {}),\r\n ]);\r\n // TODO: falta rotas de cadastrar, listar e remover items do cool automation. Indicar na tabela os sistemas que estão ou não estão associados a unidade da Diel.\r\n state.customers = Object.values(customers).map((customer) => Object.assign(customer, { _sites: [] }));\r\n state.sites = Object.values(sites).map((site) => Object.assign(site, { _devices: [], _customer: null }));\r\n state.devices = Object.values(devices).map((devices) => Object.assign(devices, { _systems: [], _site: null }));\r\n state.systems = Object.values(systems).map((system) => Object.assign(system, { _units: [], _device: null }));\r\n state.coolAutUnits = Object.values(coolAutUnits).map((unit) => Object.assign(unit, { _system: null }));\r\n for (const customer of state.customers) {\r\n customer._sites = state.sites.filter((site) => site.customer === customer.id);\r\n }\r\n for (const site of state.sites) {\r\n site._devices = state.devices.filter((device) => device.site === site.id);\r\n site._customer = state.customers.find((customer) => customer.id === site.customer) || null;\r\n }\r\n for (const device of state.devices) {\r\n device._systems = state.systems.filter((system) => system.device === device.id);\r\n device._site = state.sites.find((site) => site.id === device.site) || null;\r\n }\r\n for (const system of state.systems) {\r\n system._units = state.coolAutUnits.filter((unit) => unit.system === system.id);\r\n system._device = state.devices.find((device) => device.id === system.device) || null;\r\n }\r\n for (const unit of state.coolAutUnits) {\r\n unit._system = state.systems.find((system) => system.id === unit.system) || null;\r\n }\r\n const { gridCells, gridColumns } = generateGrid(valsTransl);\r\n state.gridCells = gridCells;\r\n state.gridColumns = gridColumns;\r\n state.associatedDevices = associatedDevices;\r\n state.dielUnits = dielUnits;\r\n state.groupedEvents = groupedEvents;\r\n\r\n for (const evtGrp of state.groupedEvents) {\r\n evtGrp.firstTs = evtGrp.firstTs && evtGrp.firstTs.replaceAll('T', ' ').replaceAll('-0300', '');\r\n evtGrp.lastTs = evtGrp.lastTs && evtGrp.lastTs.replaceAll('T', ' ').replaceAll('-0300', '');\r\n }\r\n\r\n for (const device of state.devices) {\r\n const site = device._site;\r\n const customer = site && site._customer;\r\n device.comboLabel = `${customer && customer.name} > ${site && site.name} > ${device.name}`;\r\n }\r\n state.devices = state.devices.sort((a, b) => ((a.comboLabel! > b.comboLabel!) ? 1 : (a.comboLabel! < b.comboLabel!) ? -1 : 0));\r\n for (const unit of state.dielUnits) {\r\n unit.comboLabel = `${unit.CLIENT_NAME} > ${unit.UNIT_NAME}`;\r\n }\r\n state.dielUnits = state.dielUnits.sort((a, b) => ((a.comboLabel! > b.comboLabel!) ? 1 : (a.comboLabel! < b.comboLabel!) ? -1 : 0));\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loading: false });\r\n }\r\n\r\n function generateGrid(valsTransl: ApiResps['/coolautomation/get-units-and-systems']['valsTransl']) {\r\n if (!valsTransl.operationStatuses) valsTransl.operationStatuses = {};\r\n if (!valsTransl.operationModes) valsTransl.operationModes = {};\r\n if (!valsTransl.fanModes) valsTransl.fanModes = {};\r\n if (!valsTransl.swingModes) valsTransl.swingModes = {};\r\n if (!valsTransl.unitTypes) valsTransl.unitTypes = {};\r\n if (!valsTransl.outdoorUnitTasks) valsTransl.outdoorUnitTasks = {};\r\n const gridCells = [] as { id: string, text: string|JSX.Element, span?: number }[];\r\n for (const customer of state.customers) {\r\n const customerCells = [\r\n { id: customer.id, text: customer.name, span: 0 },\r\n ];\r\n customerCells.forEach((item) => gridCells.push(item));\r\n for (const site of ((customer._sites.length > 0) ? customer._sites : [{\r\n id: '',\r\n name: '',\r\n _devices: [],\r\n }])) {\r\n const siteCells = [\r\n { id: site.id, text: site.name, span: 0 },\r\n ];\r\n siteCells.forEach((item) => gridCells.push(item));\r\n for (const device of ((site._devices.length > 0) ? site._devices : [{\r\n id: '',\r\n name: '',\r\n isConnected: '',\r\n _systems: [],\r\n }])) {\r\n const deviceCells = [\r\n {\r\n id: device.id,\r\n text: (\r\n \r\n {device.name}\r\n
\r\n {device.id}\r\n
\r\n ),\r\n span: 0,\r\n },\r\n { id: `isConnected|${device.id}`, text: String(device.isConnected), span: 0 },\r\n ];\r\n deviceCells.forEach((item) => gridCells.push(item));\r\n for (const system of ((device._systems.length > 0) ? device._systems : [{\r\n id: '',\r\n name: '',\r\n operationMode: null,\r\n operationStatus: null,\r\n _units: [],\r\n }])) {\r\n const systemCells = [\r\n { id: system.id, text: system.name, span: 0 },\r\n { id: `operationMode|${system.id}`, text: (system.operationMode == null) ? '' : `${system.operationMode} ${valsTransl.operationModes[String(system.operationMode)]}`, span: 0 },\r\n { id: `operationStatus|${system.id}`, text: (system.operationStatus == null) ? '' : `${system.operationStatus} ${valsTransl.operationStatuses[String(system.operationStatus)]}`, span: 0 },\r\n ];\r\n systemCells.forEach((item) => gridCells.push(item));\r\n for (const unit of ((system._units.length > 0) ? system._units : [{\r\n id: '',\r\n name: '',\r\n activeFanMode: null,\r\n activeOperationMode: null,\r\n activeOperationStatus: null,\r\n activeSetpoint: null,\r\n activeSwingMode: null,\r\n ambientTemperature: null,\r\n line: null,\r\n task: null,\r\n type: null,\r\n }])) {\r\n gridCells.push({ id: `name|${unit.id}`, text: unit.name, link: `/painel/coolautomation/unit/${unit.id}` });\r\n gridCells.push({ id: `activeFanMode|${unit.id}`, text: (unit.activeFanMode == null) ? '' : `${unit.activeFanMode} ${valsTransl.fanModes[String(unit.activeFanMode)]}` });\r\n gridCells.push({ id: `activeOperationMode|${unit.id}`, text: (unit.activeOperationMode == null) ? '' : `${unit.activeOperationMode} ${valsTransl.operationModes[String(unit.activeOperationMode)]}` });\r\n gridCells.push({ id: `activeOperationStatus|${unit.id}`, text: (unit.activeOperationStatus == null) ? '' : `${unit.activeOperationStatus} ${valsTransl.operationStatuses[String(unit.activeOperationStatus)]}` });\r\n gridCells.push({ id: `activeSetpoint|${unit.id}`, text: (unit.activeSetpoint == null) ? '' : String(unit.activeSetpoint) });\r\n gridCells.push({ id: `activeSwingMode|${unit.id}`, text: (unit.activeSwingMode == null) ? '' : `${unit.activeSwingMode} ${valsTransl.swingModes[String(unit.activeSwingMode)]}` });\r\n gridCells.push({ id: `ambientTemperature|${unit.id}`, text: (unit.ambientTemperature == null) ? '' : String(unit.ambientTemperature) });\r\n gridCells.push({ id: `line|${unit.id}`, text: (unit.line == null) ? '' : String(unit.line) });\r\n gridCells.push({ id: `task|${unit.id}`, text: (unit.task == null) ? '' : `${unit.task} ${valsTransl.outdoorUnitTasks[String(unit.task)]}` });\r\n gridCells.push({ id: `type|${unit.id}`, text: (unit.type == null) ? '' : `${unit.type} ${valsTransl.unitTypes[String(unit.type)]}` });\r\n }\r\n systemCells.forEach((systemCell) => { systemCell.span += system._units.length || 1; });\r\n deviceCells.forEach((deviceCell) => { deviceCell.span += system._units.length || 1; });\r\n siteCells.forEach((siteCell) => { siteCell.span += system._units.length || 1; });\r\n customerCells.forEach((customerCell) => { customerCell.span += system._units.length || 1; });\r\n }\r\n }\r\n }\r\n }\r\n const gridColumns = [\r\n 'Customer',\r\n 'Site',\r\n 'Device',\r\n 'isConnected',\r\n 'System',\r\n 'operationMode',\r\n 'operationStatus',\r\n 'Unit',\r\n 'activeFanMode',\r\n 'activeOperationMode',\r\n 'activeOperationStatus',\r\n 'activeSetpoint',\r\n 'activeSwingMode',\r\n 'ambientTemperature',\r\n 'line',\r\n 'task',\r\n 'type',\r\n ];\r\n return { gridCells, gridColumns };\r\n }\r\n\r\n async function saveAssociation() {\r\n try {\r\n const unitId = state.combo_selectedDielUnit && state.combo_selectedDielUnit.UNIT_ID;\r\n if (!unitId) {\r\n toast.error('Unidade inválida');\r\n return;\r\n }\r\n if (!state.combo_selectedCoolAutDevice) {\r\n toast.error('Selecione um device');\r\n return;\r\n }\r\n await apiCall('/coolautomation/associate-device-to-diel-unit', {\r\n dielUnitId: unitId,\r\n coolAutSystemId: state.combo_selectedCoolAutDevice.id,\r\n });\r\n window.location.reload();\r\n } catch (error) {\r\n toast.error('Houve erro');\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {state.loading && }\r\n {(!state.loading) && (\r\n <>\r\n
\r\n
\r\n { setState({ combo_selectedDielUnit: item }); }}\r\n notNull\r\n />\r\n { setState({ combo_selectedCoolAutDevice: item }); }}\r\n notNull\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

ASSOCIADOS

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {(state.associatedDevices || []).map((row) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
Cliente DIELUnidades DIELDispositivo CoolAutomationID CoolAutomation
{row.CLIENT_NAME}{row.UNIT_NAME}{row.dataSource}{row.integrId}
\r\n
\r\n\r\n
\r\n

TABELA COOL AUTOMATION

\r\n 'auto').join(' ') }}>\r\n {state.gridColumns.map((header) => (\r\n {header}\r\n ))}\r\n {state.gridCells.map((cell) => (\r\n \r\n {cell.link ? ({cell.text}) : cell.text}\r\n \r\n ))}\r\n \r\n
\r\n\r\n
\r\n

ALERTAS (últimas 24h)

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {(state.groupedEvents || []).map((row, index) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
SiteDeviceSystemResourcesEventTypeCodeDescriptionStatusHorário
{row.colSite}{row.colDevice}{row.colSystem}{row.colResources}{row.colEventType}{row.colCode}{row.colDescription}{row.colStatus}\r\n {(row.evCount === 1) ? '' : `${row.evCount} eventos`}\r\n {(row.firstTs === row.lastTs) ? row.firstTs : ` entre ${row.firstTs} e ${row.lastTs}`}\r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nconst TableBasic = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n\r\nconst Cell = styled.div`\r\n border-right: 1px solid grey;\r\n border-bottom: 1px solid grey;\r\n padding: 3px;\r\n`;\r\n\r\nconst GridContainer = styled.div`\r\n display: grid;\r\n border-top: 1px solid grey;\r\n border-left: 1px solid grey;\r\n`;\r\n\r\nconst Table = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button,\r\n Loader,\r\n Select,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nexport const DRIUnits = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n loading: true,\r\n dris: [] as { DRI_ID: string, UNIT_ID: number, UNIT_NAME: string, CLIENT_NAME: string, comboLabel?: string }[],\r\n dielUnits: [] as { UNIT_ID: number, UNIT_NAME: string, CLIENT_NAME: string, comboLabel?: string }[],\r\n combo_selectedDielUnit: null as null|{ UNIT_ID: number, CLIENT_ID: number },\r\n combo_selectedDRI: null as null|{ DRI_ID: string },\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n async function fetchData() {\r\n try {\r\n setState({ loading: true });\r\n const [\r\n { list: dielUnits },\r\n ] = await Promise.all([\r\n apiCall('/clients/get-units-list-basic', {}),\r\n ]);\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loading: false });\r\n }\r\n\r\n async function saveAssociation() {\r\n const DRI_ID = state.combo_selectedDRI && state.combo_selectedDRI.DRI_ID;\r\n const UNIT_ID = state.combo_selectedDielUnit && state.combo_selectedDielUnit.UNIT_ID;\r\n const CLIENT_ID = state.combo_selectedDielUnit && state.combo_selectedDielUnit.CLIENT_ID;\r\n if ((!UNIT_ID) || (!CLIENT_ID)) {\r\n toast.error('Unidade inválida');\r\n return;\r\n }\r\n if (!DRI_ID) {\r\n toast.error('Selecione um DRI');\r\n return;\r\n }\r\n await apiCall('/dri/set-dri-info', {\r\n DRI_ID,\r\n UNIT_ID,\r\n CLIENT_ID,\r\n });\r\n window.location.reload();\r\n }\r\n\r\n return (\r\n <>\r\n {state.loading && }\r\n {(!state.loading) && (\r\n <>\r\n
\r\n
\r\n { setState({ combo_selectedDielUnit: item }); }}\r\n notNull\r\n />\r\n { setState({ combo_selectedDRI: item }); }}\r\n notNull\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

TABELA GREENANT

\r\n \r\n \r\n \r\n Cliente\r\n Unidade\r\n DRI\r\n \r\n \r\n \r\n {(state.dris || []).map((row) => (\r\n \r\n {row.CLIENT_NAME}\r\n {row.UNIT_NAME}\r\n {row.DRI_ID}\r\n \r\n ))}\r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nconst TableBasic = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import styled from 'styled-components';\r\n\r\nexport const Table = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Select, Button, Loader,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport { Table } from './styles';\r\n\r\nexport const GreenAntMeters = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n units: [] as {\r\n UNIT_ID: number\r\n CLIENT_NAME: string\r\n UNIT_NAME: string\r\n comboLabel?: string\r\n meter?: { label: string, uid?: string }\r\n }[],\r\n sortedUnits: [] as {\r\n comboLabel?: string\r\n }[],\r\n freeMeters: [] as {\r\n id: number\r\n organizationName: string\r\n label: string\r\n uid?: string\r\n comboLabel?: string\r\n }[],\r\n loading: true,\r\n combo_dielUnit: null as null|{ UNIT_ID: number },\r\n combo_greenantMeter: null as null|{ id: number },\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n async function fetchData() {\r\n try {\r\n state.loading = true; render();\r\n const { units, meters } = await apiCall('/clients/get-units-and-meters', {});\r\n const units2 = units.map((unit) => {\r\n const meter = meters.find((meter) => meter.id === unit.GA_METER);\r\n return Object.assign(unit, { meter });\r\n });\r\n const associatedUnits = units2.filter((x) => x.meter);\r\n const disassociatedUnits = units2.filter((x) => !x.meter);\r\n const disassociatedMeters = meters.filter((meter) => !associatedUnits.some((unit) => unit.meter === meter));\r\n state.units = [...associatedUnits, ...disassociatedUnits];\r\n state.freeMeters = disassociatedMeters;\r\n\r\n for (const meter of state.freeMeters) {\r\n meter.comboLabel = `${meter.organizationName} > ${meter.label}${meter.uid ? ` [${meter.uid}]` : ''}`;\r\n }\r\n state.freeMeters = state.freeMeters.sort((a, b) => ((a.comboLabel! > b.comboLabel!) ? 1 : (a.comboLabel! < b.comboLabel!) ? -1 : 0));\r\n for (const unit of state.units) {\r\n unit.comboLabel = `${unit.CLIENT_NAME} > ${unit.UNIT_NAME}`;\r\n }\r\n state.sortedUnits = state.units.sort((a, b) => ((a.comboLabel! > b.comboLabel!) ? 1 : (a.comboLabel! < b.comboLabel!) ? -1 : 0));\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.loading = false; render();\r\n }\r\n\r\n async function saveAssociation() {\r\n try {\r\n const unitId = state.combo_dielUnit && state.combo_dielUnit.UNIT_ID;\r\n if (!unitId) {\r\n toast.error('Unidade inválida');\r\n return;\r\n }\r\n await apiCall('/clients/edit-unit', {\r\n UNIT_ID: unitId,\r\n GA_METER: (state.combo_greenantMeter || null) && state.combo_greenantMeter!.id,\r\n });\r\n window.location.reload();\r\n } catch (error) {\r\n toast.error('Houve erro');\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {state.loading && }\r\n {(!state.loading) && (\r\n
\r\n
\r\n
\r\n { setState({ combo_dielUnit: item }); }}\r\n />\r\n { setState({ combo_greenantMeter: item }); }}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

TABELA DIEL

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {(state.units || []).map((row) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
Cliente DIELUnidades DIELMedidor Greenant AssociadoUID Medidor GreenAnt
{row.CLIENT_NAME}{row.UNIT_NAME}{row.meter && row.meter.label}{row.meter && row.meter.uid}
\r\n
\r\n\r\n
\r\n

TABELA GREENANT

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {(state.freeMeters || []).map((row) => (\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
Cliente GreenAntMedidor GreenAntUID Medidor GreenAnt
{row.organizationName}{row.label}{row.uid}
\r\n
\r\n\r\n
\r\n )}\r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button,\r\n Loader,\r\n Select,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\n\r\nexport const Water = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n units: [] as {\r\n UNIT_ID: number\r\n CLIENT_NAME: string\r\n UNIT_NAME: string\r\n comboLabel?: string\r\n meter?: { dataSource: string }\r\n }[],\r\n sortedUnits: [] as {\r\n comboLabel?: string\r\n }[],\r\n freeMeters: [] as {\r\n dataSource: string\r\n comboLabel?: string\r\n }[],\r\n freeDmas: [] as {\r\n dataSource: string\r\n comboLabel?: string\r\n }[],\r\n loading: true,\r\n combo_dielUnit: null as null|{ UNIT_ID: number, CLIENT_ID: number},\r\n combo_meters: null as null| { dataSource: string },\r\n combo_supplier: null as null | string,\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n async function fetchData() {\r\n try {\r\n state.loading = true; render();\r\n const { list: metersList } = await apiCall('/laager/get-meters-list', {});\r\n const [\r\n dielUnits,\r\n { list: meters },\r\n { list: disassociatedDmas },\r\n ] = await Promise.all([\r\n apiCall('/clients/get-units-list', {}),\r\n apiCall('/get-integrations-list/water'),\r\n apiCall('/dma/get-disassociated-dmas'),\r\n ]);\r\n state.freeDmas = disassociatedDmas;\r\n const units2 = dielUnits.map((unit) => {\r\n const meter = meters.find((meter) => meter.UNIT_ID === unit.UNIT_ID);\r\n return Object.assign(unit, { meter });\r\n });\r\n const associatedUnits = units2.filter((x) => x.meter);\r\n const disassociatedUnits = units2.filter((x) => !x.meter);\r\n const associatedMetersId = meters.map((meter) => meter.dataSource);\r\n const disassociatedMeters = metersList.filter((meter) => !associatedMetersId.includes(meter.customer_id));\r\n state.units = [...associatedUnits, ...disassociatedUnits];\r\n state.freeMeters = disassociatedMeters.map((meter) => (\r\n { dataSource: meter.customer_id }\r\n ));\r\n\r\n for (const meter of state.freeMeters) {\r\n meter.comboLabel = `${meter.dataSource}`;\r\n }\r\n for (const meter of state.freeDmas) {\r\n meter.comboLabel = `${meter.dataSource}`;\r\n }\r\n state.freeMeters = state.freeMeters.sort((a, b) => ((a.comboLabel! > b.comboLabel!) ? 1 : (a.comboLabel! < b.comboLabel!) ? -1 : 0));\r\n for (const unit of state.units) {\r\n unit.comboLabel = `${unit.CLIENT_NAME} > ${unit.UNIT_NAME}`;\r\n }\r\n state.sortedUnits = state.units.sort((a, b) => ((a.comboLabel! > b.comboLabel!) ? 1 : (a.comboLabel! < b.comboLabel!) ? -1 : 0));\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n state.loading = false; render();\r\n }\r\n\r\n async function saveAssociation() {\r\n try {\r\n const unitId = state.combo_dielUnit && state.combo_dielUnit.UNIT_ID;\r\n if (!unitId) {\r\n toast.error('Unidade inválida');\r\n return;\r\n }\r\n\r\n if (!state.combo_meters) {\r\n toast.error('Selecione um dispositivo');\r\n return;\r\n }\r\n\r\n const meterId = state.combo_meters?.dataSource || null;\r\n\r\n if (state.combo_supplier === 'Laager') {\r\n await apiCall('/laager/associate-meter-to-diel-unit', { unitId, meterId });\r\n } else if (state.combo_dielUnit && state.combo_dielUnit.CLIENT_ID && meterId) {\r\n await apiCall('/dma/set-dma-info', {\r\n DMA_ID: meterId,\r\n UNIT_ID: unitId,\r\n CLIENT_ID: state.combo_dielUnit.CLIENT_ID,\r\n });\r\n }\r\n window.location.reload();\r\n } catch (error) {\r\n toast.error('Houve erro');\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {state.loading && }\r\n {(!state.loading) && (\r\n
\r\n
\r\n
\r\n { setState({ combo_dielUnit: item }); }}\r\n />\r\n { setState({ combo_supplier: item }); }}\r\n />\r\n { setState({ combo_meters: item }); }}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n

TABELA DIEL

\r\n \r\n \r\n \r\n Cliente DIEL\r\n Unidades DIEL\r\n Dispositivos Associado\r\n \r\n \r\n \r\n {(state.units || []).map((row) => (\r\n \r\n {row.CLIENT_NAME}\r\n {row.UNIT_NAME}\r\n {row.meter && row.meter.dataSource}\r\n \r\n ))}\r\n \r\n \r\n
\r\n
\r\n

TABELA DIEL

\r\n \r\n \r\n \r\n ID DO DMA\r\n \r\n \r\n \r\n {(state.freeDmas || []).map((row) => (\r\n \r\n {row.dataSource}\r\n \r\n ))}\r\n \r\n \r\n
\r\n
\r\n

TABELA LAAGER

\r\n \r\n \r\n \r\n Medidor Laager\r\n \r\n \r\n \r\n {(state.freeMeters || []).map((row) => (\r\n \r\n {row.dataSource}\r\n \r\n ))}\r\n \r\n \r\n
\r\n\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nconst TableBasic = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import { useRef } from 'react';\r\n\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory } from 'react-router';\r\nimport { Headers2 } from 'pages/Analysis/Header';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport { CoolAutomation } from './CoolAutomation';\r\nimport { DRIUnits } from './DRIUnits';\r\nimport { GreenAntMeters } from './GreenAntMeters';\r\nimport { Water } from './Water';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport const Integrations = (): JSX.Element => {\r\n const history = useHistory();\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n const allTabs = [\r\n {\r\n title: 'GreenAnt',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'greenant' })}`,\r\n isActive: (queryPars.aba === 'greenant') || (!queryPars.aba),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'CoolAutomation',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'coolautomation' })}`,\r\n isActive: (queryPars.aba === 'coolautomation'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'Água',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'water' })}`,\r\n isActive: (queryPars.aba === 'water'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'DRI',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'dri' })}`,\r\n isActive: (queryPars.aba === 'dri'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n ];\r\n const tabs = allTabs.filter((x) => x.visible);\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Integrações\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n {(allTabs[0].isActive) && }\r\n {(allTabs[1].isActive) && }\r\n {(allTabs[2].isActive) && }\r\n {(allTabs[3].isActive) && }\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('Integrations', 'component')(Integrations);\r\n","import styled from 'styled-components';\r\n\r\nimport {\r\n Button,\r\n} from '~/components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\n\r\nexport const TableHead = styled.thead`\r\n`;\r\n\r\nexport const TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\n\r\nexport const HeaderCell = styled.th`\r\n text-align: left;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\n\r\nexport const DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\n\r\nexport const Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\n\r\nexport const HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n\r\nexport const SimpleButton = styled(Button)`\r\n width: initial;\r\n padding: 8px 15px;\r\n margin: 7px 7px;\r\n`;\r\n","import { useState, useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n Input, ModalWindow, ActionButton, Button, Loader,\r\n} from 'components';\r\nimport parseDecimalNumber from 'helpers/parseDecimalNumber';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DeleteOutlineIcon, EditIcon } from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n TableContainer,\r\n TableHead,\r\n TableBody,\r\n HeaderCell,\r\n DataCell,\r\n Row,\r\n HeaderRow,\r\n SimpleButton,\r\n} from './styles';\r\n\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const SensorsConfig = (): JSX.Element => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n sensorsList: [] as { SENSOR_ID: string; MULT_QUAD: number; MULT_LIN: number; OFST: number; SENSOR_NAME: string; }[],\r\n openModal: false,\r\n selectedSensor: null,\r\n loading: true,\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n\r\n async function fetchData() {\r\n try {\r\n setState({ loading: true });\r\n const sensorsList = (await apiCall('/config/get-pressure-sensors', {})).list || [];\r\n state.sensorsList = sensorsList.filter((item) => item.SENSOR_ID !== 'NO_CONV');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loading: false });\r\n }\r\n function openCreateEditSensor(itemToEdit?) {\r\n state.selectedSensor = itemToEdit || null;\r\n setState({ openModal: true });\r\n }\r\n async function deleteSensor(item) {\r\n try {\r\n if (window.confirm(`Deseja excluir o sensor ${item.SENSOR_ID}?`)) {\r\n await apiCall('/config/delete-pressure-sensor', { SENSOR_ID: item.SENSOR_ID });\r\n state.sensorsList = state.sensorsList.filter((sensor) => sensor.SENSOR_ID !== item.SENSOR_ID);\r\n render();\r\n toast.success('Sucesso');\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n async function afterCreateEditSensor({ item: responseData, action }) {\r\n try {\r\n setState({ openModal: false });\r\n if (action === 'new') {\r\n state.sensorsList.push(responseData);\r\n render();\r\n }\r\n else if (action === 'edit') {\r\n const found = state.sensorsList.find((item) => item.SENSOR_ID === responseData.SENSOR_ID);\r\n if (found) {\r\n Object.assign(found, responseData);\r\n render();\r\n }\r\n else {\r\n await fetchData();\r\n }\r\n }\r\n else {\r\n await fetchData();\r\n }\r\n toast.success('Sucesso');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n }\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Configurações\r\n \r\n \r\n {state.loading && }\r\n {(!state.loading)\r\n && (\r\n
\r\n
\r\n
 
\r\n openCreateEditSensor()}>Adicionar Sensor\r\n
\r\n \r\n {state.openModal && (\r\n \r\n { setState({ openModal: false }); }}\r\n onSuccess={afterCreateEditSensor}\r\n />\r\n \r\n )}\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nfunction TableSensors({ list, onDeleteClick, onEditClick }) {\r\n return (\r\n \r\n \r\n \r\n ID\r\n Fator A\r\n Offset B\r\n Fator C\r\n \r\n \r\n \r\n \r\n {list.map((item) => (\r\n \r\n {item.SENSOR_ID}\r\n {formatNumberWithFractionDigits(item.MULT_LIN, { minimum: 0, maximum: 6 })}\r\n {formatNumberWithFractionDigits(item.OFST, { minimum: 0, maximum: 6 })}\r\n {formatNumberWithFractionDigits(item.MULT_QUAD, { minimum: 0, maximum: 6 })}\r\n \r\n onDeleteClick(item)} variant=\"red-inv\">\r\n \r\n \r\n onEditClick(item)} variant=\"blue-inv\">\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction FormEditSensor({ sensorInfo, onSuccess, onCancel }) {\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n idTouched: false,\r\n SENSOR_ID: (sensorInfo && sensorInfo.SENSOR_ID) || '',\r\n SENSOR_NAME: (sensorInfo && sensorInfo.SENSOR_NAME) || '',\r\n MULT_QUAD: (sensorInfo && String(sensorInfo.MULT_QUAD)) || '0',\r\n MULT_LIN: (sensorInfo && String(sensorInfo.MULT_LIN)) || '1',\r\n OFST: (sensorInfo && String(sensorInfo.OFST)) || '0',\r\n });\r\n const isEdit = !!(sensorInfo && sensorInfo.SENSOR_ID);\r\n if (isEdit) { state.SENSOR_ID = sensorInfo.SENSOR_ID; }\r\n\r\n async function confirm() {\r\n let response = null as null|{ SENSOR_ID: string };\r\n let action = null as null|'new'|'edit';\r\n try {\r\n if (!state.MULT_QUAD) { toast.error('É necessário informar o fator C'); return; }\r\n if (!state.MULT_LIN) { toast.error('É necessário informar o fator A'); return; }\r\n if (!state.OFST) { toast.error('É necessário informar o offset'); return; }\r\n setState({ submitting: true });\r\n const reqData = {\r\n SENSOR_ID: state.SENSOR_ID || null,\r\n SENSOR_NAME: state.SENSOR_NAME || null,\r\n MULT_QUAD: parseDecimalNumber(state.MULT_QUAD)!,\r\n MULT_LIN: parseDecimalNumber(state.MULT_LIN)!,\r\n OFST: parseDecimalNumber(state.OFST)!,\r\n };\r\n if (isEdit) {\r\n response = await apiCall('/config/edit-pressure-sensor', reqData);\r\n action = 'edit';\r\n } else {\r\n response = await apiCall('/config/add-pressure-sensor', reqData);\r\n action = 'new';\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ submitting: false });\r\n if (response && action) onSuccess({ item: response, action });\r\n }\r\n\r\n return (\r\n
\r\n {/* { state.SENSOR_NAME = event.target.value; render() }}\r\n />\r\n
*/}\r\n setState({ SENSOR_ID: event.target.value, idTouched: true })}\r\n disabled={isEdit}\r\n />\r\n
\r\n setState({ MULT_LIN: event.target.value })}\r\n />\r\n
\r\n setState({ OFST: event.target.value })}\r\n />\r\n
\r\n setState({ MULT_QUAD: event.target.value })}\r\n />\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default withTransaction('SensorsConfig', 'component')(SensorsConfig);\r\n","import { useEffect } from 'react';\r\n\r\nimport { useStateVar } from 'helpers/useStateVar';\r\n\r\nimport {\r\n LineChart,\r\n Line,\r\n CartesianGrid,\r\n XAxis,\r\n YAxis,\r\n Tooltip,\r\n ReferenceArea,\r\n ResponsiveContainer,\r\n} from 'recharts';\r\n\r\nexport const colorPalete = [\r\n '#1F77B4',\r\n '#FF7F0E',\r\n '#2CA02C',\r\n '#D62728',\r\n '#9467BD',\r\n '#8C564B',\r\n '#E377C2',\r\n '#7F7F7F',\r\n '#BCBD22',\r\n '#17BECF',\r\n];\r\n\r\nexport function ChartLine(props: {\r\n commonX: number[]\r\n varsInfo: {\r\n name: string\r\n unit?: string\r\n color: string\r\n axisId: string\r\n y: (number|null)[]\r\n type?: 'step'|'linear' // https://github.com/d3/d3-shape#curves\r\n }[]\r\n axisInfo: {\r\n x: {\r\n domain: [number|string, number|string] // [minX, maxX], ['dataMin', 'dataMax+50']\r\n }\r\n y: {\r\n [axisId: string]: {\r\n domain: [number|string, number|string] // [minY, maxY]\r\n orientation?: 'right'\r\n }\r\n }\r\n }\r\n numDays?: number\r\n tooltipXLabelFormater?: (x: number) => string\r\n formaterXTick?: (x: number) => string\r\n tickSecondX?: (x: any) => JSX.Element\r\n}) {\r\n const [state, _render, setState] = useStateVar({\r\n indexes: props.commonX.map((_v, i) => i),\r\n commonX: props.commonX,\r\n xDomain: null as null|([number, number]),\r\n refAreaLeft: null as null|number,\r\n refAreaRight: null as null|number,\r\n });\r\n\r\n useEffect(() => {\r\n setState({\r\n indexes: props.commonX.map((_v, i) => i),\r\n commonX: props.commonX,\r\n });\r\n }, props.commonX);\r\n\r\n function zoom() {\r\n let { refAreaLeft, refAreaRight } = state;\r\n\r\n if (refAreaLeft === refAreaRight || refAreaRight == null || refAreaLeft == null) {\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n });\r\n return;\r\n }\r\n\r\n // xAxis domain\r\n if (refAreaLeft > refAreaRight) [refAreaLeft, refAreaRight] = [refAreaRight, refAreaLeft];\r\n\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n indexes: state.indexes.slice(),\r\n xDomain: [refAreaLeft, refAreaRight],\r\n });\r\n }\r\n\r\n function zoomOut() {\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n indexes: state.indexes.slice(),\r\n xDomain: null,\r\n });\r\n }\r\n\r\n function toolTipFormater(\r\n value: number,\r\n _accessor: string|Function,\r\n _payload: {\r\n value: number,\r\n payload: number // x index\r\n },\r\n index: number,\r\n ) {\r\n const varInfo = (index < props.varsInfo.length) && props.varsInfo[index];\r\n const name = (varInfo && varInfo.name) || String(index);\r\n return `${name}: ${value}${(varInfo && varInfo.unit) || ''}`;\r\n }\r\n\r\n return (\r\n
\r\n
\r\n \r\n
\r\n\r\n \r\n { setState({ refAreaLeft: e.activeLabel }); }}\r\n onMouseMove={(e) => { (state.refAreaLeft != null) && setState({ refAreaRight: e.activeLabel }); }}\r\n onMouseUp={zoom}\r\n >\r\n \r\n\r\n state.commonX[i]} domain={state.xDomain || props.axisInfo.x.domain} type=\"number\" tickFormatter={props.formaterXTick} />\r\n {props.numDays && props.numDays > 1 ? ( state.commonX[i]} domain={state.xDomain || props.axisInfo.x.domain} />) : null}\r\n {Object.entries(props.axisInfo.y).map(([axisId, axisInfo]) => (\r\n \r\n ))}\r\n\r\n \r\n\r\n {props.varsInfo.map((varInfo) => (\r\n varInfo.y[i]} dot={false} stroke={varInfo.color} animationDuration={300} />\r\n ))}\r\n\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n
\r\n );\r\n}\r\n\r\n// } />\r\n// function CustomTooltip (props: {\r\n// active: boolean\r\n// payload: {\r\n// name: string\r\n// value: number\r\n// payload: {}\r\n// }[]\r\n// label: string\r\n// }) {\r\n// const { active, payload, label } = props;\r\n// if (active && payload && payload.length >= 2) {\r\n// const groupInfo = payload[0].payload;\r\n// let temperature: number | null = null;\r\n// if (payload[1].name === 'temp') {\r\n// temperature = payload[1].value;\r\n// }\r\n// const hora = String(Math.trunc(payload[0].value)).padStart(2, '0');\r\n// const minuto = String(Math.trunc((payload[0].value % 1) * 60)).padStart(2, '0');\r\n// return (
...
);\r\n// }\r\n// return null;\r\n// }\r\n","import React from 'react';\r\n\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { SketchPicker } from 'react-color';\r\nimport { AccordionV2 } from 'components/Accordion';\r\nimport styled from 'styled-components';\r\nimport { colors } from '../../styles/colors';\r\nimport { useStateVar } from '../../helpers/useStateVar';\r\nimport { Flex } from 'reflexbox';\r\n\r\ninterface LineInfo {\r\n id: string\r\n name: string\r\n unit?: string\r\n color: string\r\n checked?: boolean\r\n}\r\n\r\nexport function LegendaGroup(props: {\r\n groups: {\r\n name: string\r\n lines: LineInfo[]\r\n }[]\r\n onCheckboxChanging: () => void\r\n onColorChanging: (color: { hex: string }, lineInfo: LineInfo, group: { name: string }) => void\r\n}) {\r\n const {\r\n groups, onCheckboxChanging, onColorChanging, ...cProps\r\n } = props;\r\n function setAllGroup(list: { checked?: boolean }[]) {\r\n const shouldBeChecked = list.some((group) => !group.checked);\r\n for (const group of list) {\r\n group.checked = shouldBeChecked;\r\n }\r\n props.onCheckboxChanging();\r\n }\r\n\r\n return (\r\n
\r\n {props.groups.map((group) => (\r\n \r\n line.checked)} onClick={() => setAllGroup(group.lines)} />\r\n Selecionar Todos\r\n
\r\n )}\r\n >\r\n {\r\n props.onCheckboxChanging();\r\n }}\r\n onColorChanging={(color, lineInfo) => {\r\n props.onColorChanging(color, lineInfo, group);\r\n }}\r\n />\r\n \r\n ))}\r\n
\r\n );\r\n}\r\n\r\nexport function Legenda(props: {\r\n lines: LineInfo[]\r\n onCheckboxChanging: (lineInfo: LineInfo) => void\r\n onColorChanging: (color: { hex: string }, lineInfo: LineInfo) => void\r\n}) {\r\n const [state, _render, setState] = useStateVar({\r\n displayColorPickerFor: null as null|LineInfo,\r\n });\r\n\r\n function onLineColorClick(lineInfo: LineInfo) {\r\n setState({ displayColorPickerFor: lineInfo });\r\n }\r\n\r\n function onBackgroundClick() {\r\n setState({ displayColorPickerFor: null });\r\n }\r\n\r\n return (\r\n
\r\n {props.lines.map((lineInfo) => (\r\n \r\n \r\n { lineInfo.checked = !lineInfo.checked; props.onCheckboxChanging(lineInfo); }}\r\n style={{ padding: '3px' }}\r\n />\r\n \r\n {lineInfo.name}\r\n {lineInfo.unit && ` [${lineInfo.unit}]`}\r\n \r\n \r\n onLineColorClick(lineInfo)}\r\n >\r\n \r\n
\r\n \r\n ))}\r\n {(state.displayColorPickerFor) && (\r\n
\r\n onBackgroundClick()}\r\n />\r\n { props.onColorChanging && props.onColorChanging(color, state.displayColorPickerFor!); }} />\r\n
\r\n )}\r\n
\r\n );\r\n}\r\n\r\nconst Text = styled.span`\r\n font-weight: normal;\r\n font-size: 1em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nconst CheckboxLine = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Loader,\r\n Input,\r\n Button,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, apiCallDownload } from '~/providers';\r\nimport { ChartLine, colorPalete } from '~/components/ChartRecharts';\r\nimport { LegendaGroup } from '~/components/ChartRecharts/Legenda';\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport { SingleDatePicker } from 'react-dates';\r\nimport moment from 'moment';\r\nimport i18n from '~/i18n';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\ninterface ChartData {\r\n commonX: number[]\r\n lines: {\r\n id: string\r\n name: string\r\n unit?: string\r\n color: string\r\n axisId: string\r\n y: (number|null)[]\r\n checked?: boolean\r\n type?: 'linear'|'step'\r\n }[]\r\n axisInfo: {\r\n x: {\r\n domain: [number|string, number|string] // [minX, maxX], ['dataMin', 'dataMax+50']\r\n }\r\n y: {\r\n [axisId: string]: {\r\n domain: [number|string, number|string] // [minY, maxY]\r\n orientation?: 'right'\r\n }\r\n }\r\n }\r\n numDays?: number\r\n tooltipXLabelFormater?: (x: number) => string\r\n formaterXTick?: (x: number) => string\r\n tickSecondX?: (x: any) => JSX.Element\r\n}\r\n\r\nexport const ServersMonitoring = (): JSX.Element => {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n loadingOtherCharts: true,\r\n loadingBrokersMonit: true,\r\n formExport: {\r\n timespan: '10',\r\n tsStart: new Date(Date.now() - 3 * 60 * 60 * 1000 - 30 * 60 * 1000).toISOString().substring(0, 19).replace('T', ' '),\r\n exporting: false,\r\n },\r\n serversList: [] as {\r\n address: string // \"::ffff:172.31.94.63\"\r\n isBroker2Dynamo: boolean\r\n isIotRelay: boolean\r\n firstTs: Date\r\n charts: { [id: string]: ChartData }\r\n }[],\r\n brokersMonit: null as null|{\r\n firstTs: Date\r\n charts: { [id: string]: ChartData }\r\n },\r\n selectedDay: moment(moment().format('YYYY-MM-DD')),\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n datePickerFocused: false,\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n fetchData();\r\n }, []);\r\n async function fetchData() {\r\n try {\r\n setState({ loadingOtherCharts: true });\r\n // const { list2 } = await apiCall('/realtime/devtools/getServersStatus', {});\r\n const list2: any[] = [];\r\n state.serversList = [];\r\n for (const serverData of list2) {\r\n const serverItem: typeof state.serversList[number] = {\r\n ...serverData,\r\n isBrokerDiel: !!(serverData.records.some((x) => x.payload.origin === 'broker-diel-v1')),\r\n isBroker2Dynamo: !!(serverData.records.some((x) => x.payload.disk_info)),\r\n isIotRelay: !!(serverData.records.some((x) => x.payload.origin === 'iotrelay-v1')),\r\n firstTs: (serverData.records[0] && new Date(serverData.records[0].payload_ts)) || new Date(),\r\n charts: {},\r\n };\r\n if (serverItem.isBroker2Dynamo) {\r\n const flatRecords = flattenRecords(serverData.records);\r\n serverItem.charts = createChartsBroker2Dynamo(flatRecords.filter((x) => x.origin === 'broker2dynamo-v1'), serverItem.firstTs);\r\n state.serversList.push(serverItem);\r\n } else if (serverItem.isIotRelay) {\r\n const flatRecords = flattenRecords(serverData.records);\r\n serverItem.charts = createChartsIotRelay(flatRecords.filter((x) => x.origin === 'iotrelay-v1'), serverItem.firstTs);\r\n state.serversList.push(serverItem);\r\n }\r\n }\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loadingOtherCharts: false });\r\n }\r\n\r\n useEffect(() => {\r\n fetchBrokersMonit();\r\n }, [state.selectedDay]);\r\n async function fetchBrokersMonit() {\r\n try {\r\n setState({ loadingBrokersMonit: true });\r\n\r\n state.brokersMonit = null;\r\n const dayYMD = state.selectedDay.format('YYYY-MM-DD');\r\n await new Promise((r) => setTimeout(r, 3000));\r\n const brokersMonHist1 = await apiCall('/devtools/brokers-monitor-hist-v1', { dayYMD });\r\n state.brokersMonit = {\r\n firstTs: new Date(`${dayYMD}T00:00:00-0300`),\r\n charts: createChartsBrokerDiel2(brokersMonHist1.records, brokersMonHist1.commonx.map((x) => x * 1000)),\r\n };\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n setState({ loadingBrokersMonit: false });\r\n }\r\n\r\n async function exportDisconnectedDevs() {\r\n try {\r\n if (state.formExport.tsStart.length !== 19) {\r\n toast.error('Horário de início em formato inválido');\r\n return;\r\n }\r\n\r\n const tsStart = new Date(`${state.formExport.tsStart.substring(0, 10)}T${state.formExport.tsStart.substring(11)}-0300`);\r\n const tsEnd = new Date(tsStart.getTime() + Number(state.formExport.timespan.trim()) * 60 * 1000);\r\n\r\n state.formExport.exporting = true;\r\n render();\r\n\r\n const exportResponse = await apiCallDownload('/devtools/brokers-monitor-disconnected-devs', {\r\n tsStart: tsStart.toISOString(),\r\n tsEnd: tsEnd.toISOString(),\r\n });\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || 'Export.xlsx';\r\n link.click();\r\n toast.success('Exportado com sucesso.');\r\n } catch (err) { console.log(err); toast.error('Houve erro'); }\r\n\r\n state.formExport.exporting = false;\r\n render();\r\n }\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Servidores\r\n \r\n \r\n\r\n {state.loadingBrokersMonit && }\r\n {(!state.loadingBrokersMonit) && state.brokersMonit && (\r\n <>\r\n

broker-connections-sniffing

\r\n
\r\n
\r\n { setState({ selectedDay: value }); }}\r\n focused={state.datePickerFocused}\r\n onFocusChange={({ focused }) => setState({ datePickerFocused: focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n
\r\n {Object.entries(state.brokersMonit.charts).map(([chartId, chartData]) => (\r\n
\r\n { render(); }}\r\n onColorChanging={(color, line) => { line.color = color.hex; render(); }}\r\n />\r\n line.checked)}\r\n axisInfo={chartData.axisInfo}\r\n formaterXTick={(x) => new Date(state.brokersMonit!.firstTs.getTime() + x).toLocaleTimeString()}\r\n tooltipXLabelFormater={(x) => new Date(state.brokersMonit!.firstTs.getTime() + x).toLocaleString()}\r\n />\r\n
\r\n ))}\r\n
\r\n
Existem 2 brokers em operação, que nas variáveis são chamados de b0 e b1. Abaixo vou listar só as do b0 para não ficar repetindo texto.
\r\n
    \r\n
  • b0_conn_arr: conexões que chegaram e foram (ou seriam) encaminhadas para o b0. Pode ser que a conexão seja fechada antes mesmo de ser encaminhada para o broker, caso ocorra erro no estabelecimento da criptografia.
  • \r\n
  • b0_conn_closed: conexões fechadas. Pode ser fechamento por erro em estabelecer a criptografia, ou o dispositivo quis fechar, ou o broker fechou ou qualquer outro motivo.
  • \r\n
  • b0_tls_err: erro ao abrir a conexão, geralmente por erro ao estabelecer a criptografia (TLS).
  • \r\n
  • b0_pub_brtodv: mensagens trafegando do broker para o dispositivo. Como o iotrelay se conecta diretamente aos brokers, as conexões monitoradas aqui são sempre de dispositivos. Então essas mensagens devem ser comandos que o dash envia.
  • \r\n
  • b0_pub_others: mensagens trafegando dos dispositivos para o broker, que são as telemetrias e as mensagens de controle.
  • \r\n
  • b0_subscr: quantidade de pacotes de subscribe.
  • \r\n
  • b0_est_conn: estimativa de quantas conexões estão abertas com o broker. Eu chamo de estimativa porque por enquanto eu considero que existe uma possibilidade de uma conexão ser fechada sem decrementar esse contador.
  • \r\n
  • est_conn: total de conexões abertas sendo monitoradas, é a soma de b0 e b1.
  • \r\n
\r\n
\r\n
\r\n
\r\n \r\n )}\r\n
\r\n\r\n {state.loadingOtherCharts && }\r\n {(!state.loadingOtherCharts) && (\r\n <>\r\n

Brokers Instances

\r\n {state.serversList.filter((x) => x.isBroker2Dynamo).map((serverData) => (\r\n
\r\n

{serverData.address}

\r\n {Object.entries(serverData.charts).map(([chartId, chartData]) => (\r\n
\r\n { render(); }}\r\n onColorChanging={(color, line) => { line.color = color.hex; render(); }}\r\n />\r\n line.checked)}\r\n axisInfo={chartData.axisInfo}\r\n formaterXTick={(x) => new Date(serverData.firstTs.getTime() + x).toLocaleTimeString()}\r\n tooltipXLabelFormater={(x) => new Date(serverData.firstTs.getTime() + x).toLocaleString()}\r\n />\r\n
\r\n ))}\r\n
\r\n ))}\r\n
\r\n

IotRelay

\r\n {state.serversList.filter((x) => x.isIotRelay).map((serverData) => (\r\n
\r\n

{serverData.address}

\r\n {Object.entries(serverData.charts).map(([chartId, chartData]) => (\r\n
\r\n { render(); }}\r\n onColorChanging={(color, line) => { line.color = color.hex; render(); }}\r\n />\r\n line.checked)}\r\n axisInfo={chartData.axisInfo}\r\n formaterXTick={(x) => new Date(serverData.firstTs.getTime() + x).toLocaleTimeString()}\r\n tooltipXLabelFormater={(x) => new Date(serverData.firstTs.getTime() + x).toLocaleString()}\r\n />\r\n
\r\n ))}\r\n
\r\n ))}\r\n \r\n )}\r\n
\r\n
Em construção. Falta mostrar validade de certificados.
\r\n \r\n );\r\n};\r\n\r\nfunction flattenRecords(records: { payload_ts: string, payload: any }[]) {\r\n return records.map((telm) => {\r\n if (telm.payload.origin === 'broker-diel-v1') {\r\n return {\r\n ts: telm.payload_ts,\r\n origin: telm.payload.origin,\r\n interval: telm.payload.interval,\r\n est_conn: telm.payload.est_conn,\r\n b0_conn_arr: Math.round((telm.payload.brokers_stats[0].conn_arr * 60 / telm.payload.interval) * 10) / 10,\r\n b0_conn_closed: Math.round((telm.payload.brokers_stats[0].conn_closed * 60 / telm.payload.interval) * 10) / 10,\r\n b0_est_conn: telm.payload.brokers_stats[0].est_conn,\r\n b0_pub_brtodv: Math.round((telm.payload.brokers_stats[0].pub_brtodv * 60 / telm.payload.interval) * 10) / 10,\r\n b0_pub_others: Math.round((telm.payload.brokers_stats[0].pub_others * 60 / telm.payload.interval) * 10) / 10,\r\n b0_subscr: Math.round((telm.payload.brokers_stats[0].subscr * 60 / telm.payload.interval) * 10) / 10,\r\n b0_tls_err: Math.round((telm.payload.brokers_stats[0].tls_err * 60 / telm.payload.interval) * 10) / 10,\r\n b1_conn_arr: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].conn_arr * 60 / telm.payload.interval) * 10) / 10,\r\n b1_conn_closed: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].conn_closed * 60 / telm.payload.interval) * 10) / 10,\r\n b1_est_conn: (telm.payload.brokers_stats[1] || null) && telm.payload.brokers_stats[1].est_conn,\r\n b1_pub_brtodv: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].pub_brtodv * 60 / telm.payload.interval) * 10) / 10,\r\n b1_pub_others: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].pub_others * 60 / telm.payload.interval) * 10) / 10,\r\n b1_subscr: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].subscr * 60 / telm.payload.interval) * 10) / 10,\r\n b1_tls_err: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].tls_err * 60 / telm.payload.interval) * 10) / 10,\r\n };\r\n }\r\n if (telm.payload.disk_info) {\r\n return {\r\n ts: telm.payload_ts,\r\n origin: 'broker2dynamo-v1',\r\n disk_info_free: Math.round(telm.payload.disk_info.free / 1000 / 100) / 10,\r\n disk_info_total: Math.round(telm.payload.disk_info.total / 1000 / 100) / 10,\r\n loadavg_fifteen: Math.round(telm.payload.loadavg.fifteen * 1000) / 10,\r\n loadavg_five: Math.round(telm.payload.loadavg.five * 1000) / 10,\r\n loadavg_one: Math.round(telm.payload.loadavg.one * 1000) / 10,\r\n mem_info_avail: Math.round(telm.payload.mem_info.avail / 1000 / 100) / 10,\r\n mem_info_buffers: Math.round(telm.payload.mem_info.buffers / 1000 / 100) / 10,\r\n mem_info_cached: Math.round(telm.payload.mem_info.cached / 1000 / 100) / 10,\r\n mem_info_free: Math.round(telm.payload.mem_info.free / 1000 / 100) / 10,\r\n mem_info_swap_free: Math.round(telm.payload.mem_info.swap_free / 1000 / 100) / 10,\r\n mem_info_swap_total: Math.round(telm.payload.mem_info.swap_total / 1000 / 100) / 10,\r\n mem_info_total: Math.round(telm.payload.mem_info.total / 1000 / 100) / 10,\r\n };\r\n }\r\n if (telm.payload.origin === 'iotrelay-v1') {\r\n return {\r\n ts: telm.payload_ts,\r\n origin: telm.payload.origin,\r\n interval: telm.payload.interval,\r\n http_reqs: telm.payload.http_reqs,\r\n command_reqs: telm.payload.command_reqs,\r\n b0_commands_sent: Math.round((telm.payload.brokers_stats[0].commands_sent * 60 / telm.payload.interval) * 10) / 10,\r\n b0_commands_error: Math.round((telm.payload.brokers_stats[0].commands_error * 60 / telm.payload.interval) * 10) / 10,\r\n b1_commands_sent: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].commands_sent * 60 / telm.payload.interval) * 10) / 10,\r\n b1_commands_error: (telm.payload.brokers_stats[1] || null) && Math.round((telm.payload.brokers_stats[1].commands_error * 60 / telm.payload.interval) * 10) / 10,\r\n };\r\n }\r\n return {\r\n ...telm.payload,\r\n ts: telm.payload_ts,\r\n };\r\n });\r\n}\r\n\r\ninterface BrokerMonitorRecord {\r\n // origin: \"broker-diel-v1\",\r\n interval: number,\r\n est_conn: number,\r\n brokers_stats: {\r\n conn_arr: number,\r\n conn_closed: number,\r\n est_conn: number,\r\n pub_brtodv: number,\r\n pub_others: number,\r\n subscr: number,\r\n tls_err: number,\r\n }[],\r\n}\r\nfunction createChartsBrokerDiel2(records: BrokerMonitorRecord[], commonX: number[]) {\r\n let numBrokers = 0;\r\n for (const record of records) {\r\n if (record.brokers_stats.length > numBrokers) {\r\n numBrokers = record.brokers_stats.length;\r\n }\r\n }\r\n const axisInfo: ChartData['axisInfo'] = {\r\n x: { domain: [0, 86400 * 1000] },\r\n y: {\r\n y: { domain: [0, 'dataMax'] },\r\n },\r\n };\r\n const charts: { [id: string]: ChartData } = {\r\n clientes: {\r\n commonX,\r\n lines: [\r\n {\r\n id: 'est_conn',\r\n name: 'est_conn',\r\n color: colorPalete[0],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.est_conn),\r\n },\r\n ],\r\n axisInfo,\r\n },\r\n mqttAct: {\r\n commonX,\r\n lines: [],\r\n axisInfo,\r\n },\r\n conexoes: {\r\n commonX,\r\n lines: [],\r\n axisInfo,\r\n },\r\n };\r\n let nColor = 1;\r\n for (let b = 0; b < numBrokers; b++) {\r\n charts.clientes.lines.push({\r\n id: `est_conn_b${b}`,\r\n name: `est_conn_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => (rec.brokers_stats[b] || null) && rec.brokers_stats[b].est_conn),\r\n });\r\n }\r\n nColor = 0;\r\n for (let b = 0; b < numBrokers; b++) {\r\n charts.mqttAct.lines.push({\r\n id: `pub_brtodv_b${b}`,\r\n name: `pub_brtodv_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => ((rec.brokers_stats[b] || null) && Math.round((rec.brokers_stats[b].pub_brtodv * 60 / rec.interval) * 10) / 10)),\r\n });\r\n charts.mqttAct.lines.push({\r\n id: `pub_others_b${b}`,\r\n name: `pub_others_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => ((rec.brokers_stats[b] || null) && Math.round((rec.brokers_stats[b].pub_others * 60 / rec.interval) * 10) / 10)),\r\n });\r\n }\r\n for (let b = 0; b < numBrokers; b++) {\r\n charts.mqttAct.lines.push({\r\n id: `subscr_b${b}`,\r\n name: `subscr_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => ((rec.brokers_stats[b] || null) && Math.round((rec.brokers_stats[b].subscr * 60 / rec.interval) * 10) / 10)),\r\n });\r\n }\r\n nColor = 0;\r\n for (let b = 0; b < numBrokers; b++) {\r\n charts.conexoes.lines.push({\r\n id: `conn_arr_b${b}`,\r\n name: `conn_arr_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => ((rec.brokers_stats[b] || null) && Math.round((rec.brokers_stats[b].conn_arr * 60 / rec.interval) * 10) / 10)),\r\n });\r\n }\r\n for (let b = 0; b < numBrokers; b++) {\r\n charts.conexoes.lines.push({\r\n id: `conn_closed_b${b}`,\r\n name: `conn_closed_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => ((rec.brokers_stats[b] || null) && Math.round((rec.brokers_stats[b].conn_closed * 60 / rec.interval) * 10) / 10)),\r\n });\r\n }\r\n for (let b = 0; b < numBrokers; b++) {\r\n charts.conexoes.lines.push({\r\n id: `tls_err_b${b}`,\r\n name: `tls_err_b${b}`,\r\n color: colorPalete[(nColor++) % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((rec) => ((rec.brokers_stats[b] || null) && Math.round((rec.brokers_stats[b].tls_err * 60 / rec.interval) * 10) / 10)),\r\n });\r\n }\r\n return charts;\r\n}\r\n\r\nfunction createChartsBroker2Dynamo(records: any[], refTs: Date) {\r\n const commonX = records.map((x) => ((new Date(x.ts)).getTime() - refTs.getTime()));\r\n const axisInfo: ChartData['axisInfo'] = {\r\n x: { domain: ['dataMin', 'dataMax'] },\r\n y: {\r\n y: { domain: [0, 'dataMax'] },\r\n },\r\n };\r\n const charts: { [id: string]: ChartData } = {\r\n unico: {\r\n commonX,\r\n lines: [\r\n {\r\n id: 'disk_info_free',\r\n name: 'disk_info_free',\r\n unit: 'GB',\r\n color: colorPalete[0 % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.disk_info_free),\r\n },\r\n {\r\n id: 'disk_info_total',\r\n name: 'disk_info_total',\r\n unit: 'GB',\r\n color: colorPalete[1 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.disk_info_total),\r\n },\r\n {\r\n id: 'loadavg_fifteen',\r\n name: 'loadavg_fifteen',\r\n unit: '%',\r\n color: colorPalete[2 % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.loadavg_fifteen),\r\n },\r\n {\r\n id: 'loadavg_five',\r\n name: 'loadavg_five',\r\n unit: '%',\r\n color: colorPalete[2 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.loadavg_five),\r\n },\r\n {\r\n id: 'loadavg_one',\r\n name: 'loadavg_one',\r\n unit: '%',\r\n color: colorPalete[2 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.loadavg_one),\r\n },\r\n {\r\n id: 'mem_info_avail',\r\n name: 'mem_info_avail',\r\n unit: 'GB',\r\n color: colorPalete[3 % colorPalete.length],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_avail),\r\n },\r\n {\r\n id: 'mem_info_buffers',\r\n name: 'mem_info_buffers',\r\n unit: 'GB',\r\n color: colorPalete[4 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_buffers),\r\n },\r\n {\r\n id: 'mem_info_cached',\r\n name: 'mem_info_cached',\r\n unit: 'GB',\r\n color: colorPalete[5 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_cached),\r\n },\r\n {\r\n id: 'mem_info_free',\r\n name: 'mem_info_free',\r\n unit: 'GB',\r\n color: colorPalete[6 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_free),\r\n },\r\n {\r\n id: 'mem_info_swap_free',\r\n name: 'mem_info_swap_free',\r\n unit: 'GB',\r\n color: colorPalete[7 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_swap_free),\r\n },\r\n {\r\n id: 'mem_info_swap_total',\r\n name: 'mem_info_swap_total',\r\n unit: 'GB',\r\n color: colorPalete[8 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_swap_total),\r\n },\r\n {\r\n id: 'mem_info_total',\r\n name: 'mem_info_total',\r\n unit: 'GB',\r\n color: colorPalete[9 % colorPalete.length],\r\n axisId: 'y',\r\n checked: false,\r\n type: 'linear',\r\n y: records.map((x) => x.mem_info_total),\r\n },\r\n ],\r\n axisInfo,\r\n },\r\n };\r\n return charts;\r\n}\r\n\r\nfunction createChartsIotRelay(records: any[], refTs: Date) {\r\n const commonX = records.map((x) => ((new Date(x.ts)).getTime() - refTs.getTime()));\r\n const axisInfo: ChartData['axisInfo'] = {\r\n x: { domain: ['dataMin', 'dataMax'] },\r\n y: {\r\n y: { domain: [0, 'dataMax'] },\r\n },\r\n };\r\n const charts: { [id: string]: ChartData } = {\r\n unico: {\r\n commonX,\r\n lines: [\r\n {\r\n id: 'http_reqs',\r\n name: 'http_reqs',\r\n color: colorPalete[0],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.http_reqs),\r\n },\r\n {\r\n id: 'command_reqs',\r\n name: 'command_reqs',\r\n color: colorPalete[1],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.command_reqs),\r\n },\r\n {\r\n id: 'b0_commands_sent',\r\n name: 'b0_commands_sent',\r\n color: colorPalete[2],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.b0_commands_sent),\r\n },\r\n {\r\n id: 'b0_commands_error',\r\n name: 'b0_commands_error',\r\n color: colorPalete[3],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.b0_commands_error),\r\n },\r\n {\r\n id: 'b1_commands_sent',\r\n name: 'b1_commands_sent',\r\n color: colorPalete[4],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.b1_commands_sent),\r\n },\r\n {\r\n id: 'b1_commands_error',\r\n name: 'b1_commands_error',\r\n color: colorPalete[5],\r\n axisId: 'y',\r\n checked: true,\r\n type: 'linear',\r\n y: records.map((x) => x.b1_commands_error),\r\n },\r\n ],\r\n axisInfo,\r\n },\r\n };\r\n return charts;\r\n}\r\n\r\nexport default withTransaction('ServersMonitoring', 'component')(ServersMonitoring);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Select,\r\n} from '~/components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const TableContainer = styled.table`\r\n width: 100%;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n`;\r\n\r\nexport const TableHead = styled.thead`\r\n`;\r\n\r\nexport const TableBody = styled.tbody`\r\n border: 1px solid ${colors.Grey};\r\n`;\r\n\r\nexport const HeaderCell = styled.th`\r\n flex: 1;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\n\r\nexport const HeaderCellOrder = styled.th`\r\n flex: 1;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0 10px;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n cursor: pointer;\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n`;\r\n\r\nexport const DataCell = styled.td`\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\n\r\nexport const DataCellCenter = styled.td`\r\n text-align: center;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\n\r\nexport const DataCellRight = styled.td`\r\n text-align: right;\r\n color: ${colors.DarkGrey};\r\n min-width: 50px;\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n`;\r\n\r\nexport const Row = styled.tr`\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n`;\r\n\r\nexport const HeaderRow = styled.tr`\r\n height: 40px;\r\n display: table-row;\r\n`;\r\n\r\nexport const SimpleButton = styled(Button)`\r\n width: initial;\r\n padding: 8px 15px;\r\n margin: 7px 7px;\r\n`;\r\n\r\nexport const CustomSelect = styled(Select)`\r\n margin-bottom: 20px;\r\n`;\r\n\r\nexport const ChevronTop = styled.span`\r\n border-style: solid;\r\n border-width: 0.25em 0.25em 0 0;\r\n content: '';\r\n display: inline-block;\r\n height: 0.45em;\r\n left: 0.15em;\r\n position: relative;\r\n top: 0.15em;\r\n transform: rotate(-45deg);\r\n vertical-align: top;\r\n width: 0.45em;\r\n margin-left: 10px;\r\n margin-top: 3px;\r\n`;\r\n\r\nexport const ChevronBottom = styled.span`\r\n border-style: solid;\r\n border-width: 0.25em 0.25em 0 0;\r\n content: '';\r\n display: inline-block;\r\n height: 0.45em;\r\n left: 0.15em;\r\n position: relative;\r\n top: 0;\r\n transform: rotate(135deg);\r\n vertical-align: top;\r\n width: 0.45em;\r\n margin-left: 10px;\r\n margin-top: 3px;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Black};\r\n font-weight: normal;\r\n font-size: 10px !important;\r\n`;\r\n","import styled from 'styled-components';\r\nimport { colors } from 'styles/colors';\r\n\r\nexport const SelectButton = styled.div`\r\n margin-right: 10px;\r\n padding: 2px;\r\n border-radius: 3px;\r\n color: ${colors.BlueSecondary};\r\n background-color: ${colors.White};\r\n :hover {\r\n background-color: ${colors.GreyLight}\r\n })\r\n`;\r\n\r\nexport const Container = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n width: 300px;\r\n flex-wrap: wrap;\r\n`;\r\n\r\nexport const Item = styled.div`\r\n`;\r\n","import { ClickAwayListener, Grid } from '@material-ui/core';\r\nimport Box from '@material-ui/core/Box';\r\nimport Row from 'antd/lib/row';\r\nimport { useState } from 'react';\r\nimport { Container, Item, SelectButton } from './styles';\r\nimport moment from 'moment';\r\nimport i18n from '../../i18n';\r\nimport { Flex } from 'reflexbox';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nexport const QuickSelection = (props: {\r\n isShortMode?: boolean, excludeSelects?: string[], height?: string, setDate: (startDate, endDate, timeSelected?) => void }): JSX.Element => {\r\n const [showDialog, setShowDialog] = useState(false);\r\n const { setDate } = props;\r\n const handleClickAway = () => {\r\n setShowDialog(false);\r\n };\r\n\r\n return (\r\n \r\n
\r\n setShowDialog(!showDialog)}\r\n style={{\r\n color: '#363BC4', textDecorationLine: 'underline', cursor: 'pointer', fontSize: '11px',\r\n }}\r\n >\r\n {t('selecaoRapida')}\r\n \r\n {showDialog && (\r\n \r\n \r\n {t('selecaoRapida')}\r\n \r\n {!props.isShortMode\r\n ? (\r\n \r\n { setDate(moment(), moment(), 'Hoje'); setShowDialog(false); }}>Hoje\r\n { setDate(moment().subtract(1, 'days'), moment().subtract(1, 'days'), 'Ontem'); setShowDialog(false); }}>Ontem\r\n { setDate(moment().startOf('week'), moment(), 'Semana Atual'); setShowDialog(false); }}>Semana Atual\r\n { setDate(moment().subtract(7, 'days').startOf('week'), moment().subtract(7, 'days').endOf('week'), 'Semana Passada'); setShowDialog(false); }}>Semana Passada\r\n { setDate(moment().subtract(7, 'days'), moment(), 'Últimos 7 dias'); setShowDialog(false); }}>Últimos 7 dias\r\n { setDate(moment().subtract(30, 'days'), moment(), 'Últimos 30 dias'); setShowDialog(false); }}>Últimos 30 dias\r\n {!props.excludeSelects?.includes('Últimos 60 dias') && (\r\n { setDate(moment().subtract(60, 'days'), moment(), 'Últimos 60 dias'); setShowDialog(false); }}>Últimos 60 dias\r\n )}\r\n {!props.excludeSelects?.includes('Últimos 90 dias') && (\r\n { setDate(moment().subtract(90, 'days'), moment(), 'Últimos 90 dias'); setShowDialog(false); }}>Últimos 90 dias\r\n )}\r\n { setDate(moment().subtract(12, 'months'), moment(), 'Últimos 12 meses'); setShowDialog(false); }}>Últimos 12 meses\r\n\r\n \r\n )\r\n : (\r\n \r\n \r\n { setDate(moment().startOf('week'), moment(), 'Semana Atual'); setShowDialog(false); }}>Semana Atual\r\n \r\n \r\n { setDate(moment().subtract(7, 'days'), moment(), 'Últimos 7 dias'); setShowDialog(false); }}>Últimos 7 dias\r\n \r\n \r\n { setDate(moment().subtract(14, 'days'), moment(), 'Últimos 14 dias'); setShowDialog(false); }}>Últimos 14 dias\r\n \r\n \r\n { setDate(moment().subtract(30, 'days'), moment(), 'Últimos 30 dias'); setShowDialog(false); }}>Últimos 30 dias\r\n \r\n \r\n )}\r\n \r\n )}\r\n
\r\n
\r\n );\r\n};\r\n","import { t } from 'i18next';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '../providers';\r\nimport { getCachedDevInfo } from './cachedStorage';\r\nimport { getUserProfile } from './userProfile';\r\n\r\nexport function setValueState(key) {\r\n const profile = getUserProfile();\r\n if (profile.permissions.isAdminSistema) {\r\n return [];\r\n }\r\n if (sessionStorage.key(key) !== null && sessionStorage.getItem(key) !== null) {\r\n if (sessionStorage.getItem(key)!.split(',').length > 1) {\r\n const newList = sessionStorage.getItem(key)?.split(',');\r\n return newList;\r\n }\r\n return sessionStorage.getItem(key)!;\r\n }\r\n return [];\r\n}\r\n\r\nexport async function getCitiesList(state, render): Promise {\r\n try {\r\n const { list: citiesList } = await apiCall('/dac/get-cities-list', {});\r\n state.citiesListOpts = citiesList.map((city) => ({\r\n value: city.id.toString(),\r\n name: city.name,\r\n stateId: city.stateId,\r\n }));\r\n state.selectedCityOpts = setValueState('filterCity')!;\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('ErroCidades'));\r\n }\r\n}\r\n\r\nexport async function getUnitsList(state, render): Promise {\r\n try {\r\n const profile = getUserProfile();\r\n const { list: unitsList } = await apiCall('/clients/get-units-list-basic', {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients || !!profile.permissions.isInstaller,\r\n });\r\n state.unitsListOpts = unitsList.map((unit) => ({\r\n value: unit.UNIT_ID.toString(),\r\n name: unit.UNIT_NAME,\r\n clientId: unit.CLIENT_ID,\r\n city: unit.CITY_ID,\r\n state: unit.STATE_ID,\r\n }));\r\n state.selectedUnitOpts = setValueState('filterUnit')!;\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroUnidades'));\r\n }\r\n}\r\n\r\nexport async function getClientsList(state, render): Promise {\r\n try {\r\n const { list: clientsList } = await apiCall('/clients/get-clients-list', { INCLUDE_CITIES: true, INCLUDE_STATES: true });\r\n state.clientsListOpts = clientsList.map((client) => ({\r\n value: client.CLIENT_ID.toString(),\r\n name: client.NAME,\r\n cities: client.CITIES,\r\n states: client.STATES,\r\n }));\r\n state.selectedClientOpts = setValueState('filterClient')!;\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroUnidades'));\r\n }\r\n}\r\n\r\nexport async function getStatesList(state, render): Promise {\r\n try {\r\n const { list: statesList } = await apiCall('/dac/get-states-list', {});\r\n state.statesListOpts = statesList.map((state) => ({\r\n value: state.id.toString(),\r\n name: state.name,\r\n }));\r\n state.selectedStateOpts = setValueState('filterStates')!;\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('ErroEstados'));\r\n }\r\n}\r\n\r\nexport async function getDeviceInfo(devId: string, state: { devInfo, isLoading: boolean }, setState: (props: { devInfo?, isLoading?: boolean }) => void): Promise {\r\n if (!state.devInfo) {\r\n try {\r\n state.devInfo = await getCachedDevInfo(devId, {});\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n setState({ isLoading: false });\r\n}\r\n\r\nexport async function getCountry(state, render, typeValueName) {\r\n try {\r\n const { list: statesList } = await apiCall('/dac/get-countries-list', {});\r\n state.countryListOpts = statesList.map((state) => ({\r\n value: typeValueName?.includes('pais') ? state.name : state.id,\r\n name: state.name,\r\n }));\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('ErroEstados'));\r\n }\r\n}\r\n\r\nexport function ajustParams(param) {\r\n if (typeof param === 'string') {\r\n return [param];\r\n }\r\n return param;\r\n}\r\n\r\nexport async function getSupervisorsList(state, render): Promise {\r\n try {\r\n const { list: supervisors } = await apiCall('/clients/get-unit-supervisors', { UNIT_IDS: state.unitsListOpts?.map((x) => Number(x.value)) });\r\n const formattedData = supervisors.map((supervisor) => ({\r\n name: `${supervisor.NOME} ${supervisor.SOBRENOME}`,\r\n value: supervisor.USER_ID,\r\n unit_id: supervisor.UNIT_ID,\r\n }));\r\n\r\n const list = [] as { name: string; value: string; unit_ids: number[] }[];\r\n formattedData.forEach((supervisorOptions) => {\r\n const { name, value, unit_id } = supervisorOptions;\r\n const existingSupervisor = list.find((item) => item.name === name && item.value === value);\r\n\r\n if (existingSupervisor) {\r\n if (!existingSupervisor.unit_ids.includes(unit_id)) {\r\n existingSupervisor.unit_ids.push(unit_id);\r\n }\r\n } else {\r\n list.push({ name, value, unit_ids: [unit_id] });\r\n }\r\n });\r\n\r\n state.selectedSupervisorOpts = setValueState('filterSupervisor')!;\r\n state.supervisorListOpts = list;\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSupervisor'));\r\n }\r\n}\r\n\r\nexport async function getClassesList(state, render): Promise {\r\n try {\r\n const { list: classesList } = await apiCall('/clients/get-classes-list', { });\r\n\r\n const listClasses = [] as { name: string; value: string; }[];\r\n const listClassesNames = [] as { name: string; value: string; class: string, units: number[] }[];\r\n\r\n classesList.forEach((item) => {\r\n const exists = listClasses.some((listItem) => listItem.value === item.class.CLASS_TYPE);\r\n if (!exists) {\r\n listClasses.push({ name: item.class.CLASS_TYPE, value: item.class.CLASS_TYPE });\r\n }\r\n\r\n const existsName = listClassesNames.some((listItem) => listItem.class === item.class.CLASS_NAME);\r\n if (!existsName) {\r\n listClassesNames.push({\r\n name: item.class.CLASS_NAME,\r\n value: item.class.CLASS_NAME,\r\n class: item.class.CLASS_TYPE,\r\n units: item.units.map((unit) => unit.UNIT_ID),\r\n });\r\n }\r\n });\r\n\r\n state.classesNamesListOpts = listClassesNames;\r\n state.classesListOpts = listClasses;\r\n\r\n const selectedClass = setValueState('filterClass')!;\r\n state.selectedClassesOpts = selectedClass;\r\n state.selectedClassesNamesOpts = setValueState('filterClassName')!;\r\n state.classesNamesFilterListOpts = listClassesNames.filter((x) => !selectedClass?.length || selectedClass === x.class);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroClasse'));\r\n }\r\n}\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '../../../styles/colors';\r\n\r\nexport const Container = styled.div<{filterStyle}>(({ filterStyle }) => `\r\n position: relative;\r\n border-radius: 5px;\r\n ${filterStyle}\r\n`);\r\n\r\nconst BaseSpan = `\r\n color: ${colors.Blue300};\r\n font-size: 0.85em;\r\n font-weight: bold;\r\n top: 4px;\r\n`;\r\n\r\nexport const Base = styled.input<{ noBorder }>(({ noBorder }) => `\r\n border: none;\r\n outline: none;\r\n min-height: 41px;\r\n font-size: 1em;\r\n border-radius: 8px;\r\n padding: 10px 16px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n max-width: 224px;\r\n ${!noBorder && `border: 0.7px solid ${colors.GreyInputBorder};`}\r\n\r\n &:focus {\r\n color: ${colors.Grey400}\r\n }\r\n\r\n &::placeholder {\r\n font-size: 12px;\r\n color: ${colors.GreyInputPlaceholder};\r\n }\r\n`);\r\n\r\nexport const Label = styled.label<{ disabled, value, filterStyle, noBorder }>(\r\n ({\r\n disabled, value, filterStyle, noBorder,\r\n }) => `\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n cursor: ${disabled ? 'not-allowed' : 'default'};\r\n ${filterStyle && 'border-radius: 5px;'}\r\n\r\n span {\r\n color: ${disabled ? colors.Grey200 : colors.Blue700};\r\n transition: 0.2s all ease-in-out;\r\n font-size: 1em;\r\n left: 15px;\r\n font-weight: bold;\r\n font-size: 11px;\r\n position: absolute;\r\n cursor: auto;\r\n ${value ? BaseSpan : 'top: calc(50% - 22px);'}\r\n }\r\n &:focus-within {\r\n span {\r\n ${BaseSpan}\r\n }\r\n }\r\n\r\n ${(filterStyle && !noBorder) && 'border: 1px solid #E9E9E9;'}\r\n `,\r\n);\r\n\r\nexport const IconWrapper = styled.div`\r\n position: absolute;\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n right: 15px;\r\n top: calc(50% - 12px);\r\n\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n","import { SearchIcon } from '../../../icons';\r\n\r\nimport {\r\n IconWrapper,\r\n Base,\r\n Container,\r\n Label,\r\n} from './styles';\r\n\r\ntype InputSearchProps = {\r\n label: string;\r\n placeholder: string;\r\n value: string;\r\n name: string;\r\n disabled?: boolean;\r\n onChange: (value: string) => void;\r\n onEnterKey?: () => void;\r\n noBorder?: boolean;\r\n filterStyle?: boolean;\r\n};\r\n\r\nexport const InputSearch = ({\r\n label, placeholder, value, name, disabled, onChange, onEnterKey, noBorder, filterStyle, ...props\r\n}: InputSearchProps): JSX.Element => {\r\n const onKeyPress = (e) => {\r\n if (e.nativeEvent && e.nativeEvent.keyCode === 13 && onEnterKey) {\r\n e.preventDefault(); // Ensure it is only this code that runs\r\n onEnterKey();\r\n }\r\n };\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n","import moment from 'moment';\r\n\r\nexport function getDatesList(date: moment.Moment, numDays: number) {\r\n const dateList = [] as {\r\n mdate: moment.Moment;\r\n YMD: string;\r\n DMY: string;\r\n totalGreenAntCons: number;\r\n totalGreenAntInvoice: number;\r\n totalAirCondCons: number;\r\n savings_kWh: number;\r\n }[];\r\n\r\n for (let i = 0; i < numDays; i++) {\r\n const mdate = moment(date).add(i, 'days');\r\n dateList.push({\r\n mdate,\r\n DMY: mdate.format('DD/MM/YYYY'),\r\n YMD: mdate.format('YYYY-MM-DD'),\r\n totalGreenAntCons: 0,\r\n totalGreenAntInvoice: 0,\r\n totalAirCondCons: 0,\r\n savings_kWh: 0,\r\n });\r\n }\r\n\r\n return dateList;\r\n}\r\n","import SelectSearch, {\r\n fuzzySearch,\r\n SelectedOptionValue,\r\n SelectedOption,\r\n SelectSearchOption,\r\n SelectSearchProps,\r\n} from 'react-select-search';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport {\r\n SearchInput,\r\n Label,\r\n StatusIcon,\r\n ControlFilter,\r\n CleanBtn,\r\n ExportBtn,\r\n TempGreat,\r\n TempHigh,\r\n TempLow,\r\n NoTempData,\r\n OptionExportList,\r\n CancelButton,\r\n ContentDate,\r\n DateLabel,\r\n ContainerCheckbox,\r\n HoverExportList,\r\n ModalWindowStyled,\r\n ContainerModal,\r\n TitleModal,\r\n SubtitleModal,\r\n FiltersContainer,\r\n ContainerArea,\r\n ContentDateNew,\r\n ArrowButton,\r\n ContainerDateNew,\r\n} from './styles';\r\nimport { DateRangePicker, SingleDatePicker } from 'react-dates';\r\nimport i18n from '~/i18n';\r\nimport {\r\n Button, Card, Checkbox, HealthIcon, ModalWindow, FiltersContainer as FiltersSelected,\r\n} from '~/components';\r\n\r\nimport {\r\n useEffect,\r\n useRef,\r\n useState,\r\n} from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n ArrowDownIconV2, ArrowUpIconV2, CompleteListIcon, CustomListIcon, ExportIcon, FilterIcon, InfoIcon, NewExpandIcon,\r\n} from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport { CSVLink } from 'react-csv';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { QuickSelection } from '~/components/QuickSelection';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport moment, { Moment } from 'moment';\r\nimport { StyledCalendarIcon } from '../../DACs/DACHistoric';\r\nimport {\r\n getClientsList, getCitiesList, getStatesList, getUnitsList, getCountry,\r\n getSupervisorsList,\r\n getClassesList,\r\n} from '~/helpers/genericHelper';\r\nimport { InputSearch } from '~/components/NewInputs/Search';\r\nimport { apiCall } from '~/providers';\r\nimport DatePicker from 'react-datepicker';\r\nimport { getDatesList } from '~/helpers/dates';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\n// para usar o filtro tem que ter as variaveis criadas no state do componente:\r\n// state.searchState\r\n// state.selectedCity\r\n// state.selectedState\r\n// state.selectedUnit\r\n// state.selectedClientFilter\r\n// state.selectedHealthOpts\r\n// state.selectedTemperatureOpts\r\n// state.selectedControlOpts\r\n// state.selectedModeEcoOpts\r\n// state.selectedPeriodOpts\r\n// state.selectedDataTypeOpts\r\n// state.selectedAnalysisOpts\r\n// state.selectedCountry\r\n\r\nexport type TListFilters = 'progDisp' | 'tipo' | 'operacao' | 'cliente' | 'estado' | 'cidade' | 'unidade' | 'statusOperacao' | 'conexao' | 'status' | 'saude' | 'temperatura' | 'controle' | 'modoEco' | 'periodo' | 'data' | 'dataUnica' | 'dados' | 'analise' | 'pais' | 'id' | 'search' | 'tipoNotificacao' | 'subtipoNotificacao' | 'destinatario' | 'responsavel' | 'grupo' | 'dataNew' | 'fornecedor';\r\n\r\ntype TValueFilter = string | string[];\r\n\r\ntype FilterColumnsSelected = {\r\n [key: string]: {\r\n label: string;\r\n values: {\r\n value: string;\r\n name: string\r\n }[]\r\n };\r\n}\r\n\r\nexport const UtilFilter = (props:{\r\n state: any,\r\n updateCheckInformations?: (value: any, date?: Moment) => void,\r\n informationsUnits?: any,\r\n optionsConnetions?: SelectSearchOption[],\r\n optionsConnetionsName?: string,\r\n render: any,\r\n searchLabel?: string;\r\n onAply: () => void, // funçao para quando mudar o valor do select;\r\n clearFilters?: () => void, // função de limpar o filtro\r\n listFilters?: TListFilters[], // passar os selects que é pra ter;\r\n exportFunc?: () => Promise | void, // usado em exportação;\r\n typeValueName?: TListFilters[], // usado para quando você quer que os valores sejam os nomes ou seja label e name ficam iguais;\r\n isProg?: boolean, // usado no select de dispostivo / programação;\r\n setView?: (timeSelected: string) => void, // usado no select de periodo para ter as seleções rapidas\r\n setProg?: (value: string) => void, // usado no select de dispostivo / programação;\r\n infoType?: { value: string, name: string }[],\r\n isFilterButton?: boolean,\r\n isPeriodLabel?: boolean,\r\n isMaxOneMonthPeriod?: boolean,\r\n removeYearFilter?: boolean,\r\n fixedPeriod?: boolean,\r\n margin?: boolean;\r\n isLoading?: boolean;\r\n filterFooter?: boolean;\r\n closeDefault?: boolean;\r\n csvHeader?: { // usado para exportação\r\n label: string;\r\n key: string;\r\n}[]}): JSX.Element => {\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: false, // setIsLoading\r\n showFilter: props.closeDefault != null ? !props.closeDefault : true as boolean,\r\n clientsListOpts: [] as { value: string, name: string, cities: string[], states: number[] }[],\r\n selectedClientOpts: [] as TValueFilter,\r\n statesListOpts: [] as { value: string, name: string }[],\r\n statesListFilterOpts: [] as { value: string, name: string }[],\r\n selectedStateOpts: [] as TValueFilter,\r\n citiesListFilterOpts: [] as { value: string, name: string, stateId: number }[],\r\n citiesListOpts: [] as { value: string, name: string, stateId: number }[],\r\n selectedCityOpts: [] as TValueFilter,\r\n unitsFilterOpts: [] as { value: string, name: string, clientId: number, city: string, state: string }[],\r\n unitsListOpts: [] as { value: string, name: string, clientId: number, city: string, state: string }[],\r\n selectedUnitOpts: [] as TValueFilter,\r\n supervisorListOpts: [] as { value: string, name: string, unit_ids: number[] }[],\r\n supervisorFilterListOpts: [] as { value: string, name: string}[],\r\n classesListOpts: [] as { value: string, name: string}[],\r\n classesNamesListOpts: [] as { value: string, name: string, class: string, units: number[] }[],\r\n classesNamesFilterListOpts: [] as { value: string, name: string, class: string, units: number[] }[],\r\n selectedSupervisorOpts: [] as TValueFilter,\r\n selectedClassesOpts: [] as TValueFilter,\r\n selectedClassesNamesOpts: [] as TValueFilter,\r\n selectedConnectionOpts: [] as TValueFilter,\r\n selectedStatusOpts: [] as TValueFilter,\r\n selectedSupplierOpts: '' as TValueFilter,\r\n selectedHealthOpts: [] as TValueFilter,\r\n selectedTemperatureOpts: [] as TValueFilter,\r\n selectedControlOpts: [] as TValueFilter,\r\n selectedModeEcoOpts: [] as TValueFilter,\r\n selectedPeriodOpts: props.state?.selectedTimeRange ?? '' as string,\r\n selectedDataTypeOpts: 'energia' as TValueFilter,\r\n selectedAnalysisOpts: 'unidades' as TValueFilter,\r\n selectedCountry: [] as TValueFilter,\r\n countryListOpts: [] as { value: string | number; name: string; }[],\r\n searchTerms: '',\r\n selectStartOperationOpts: '' as TValueFilter,\r\n selectEndOperationOpts: '' as TValueFilter,\r\n selectedOperationStatusOpts: [] as TValueFilter,\r\n selectedOwnershipFilter: props.infoType ? 'all' : { value: 'CLIENTS' } as any | any[],\r\n selectedInfoExib: 'dispositivo' as any | any[],\r\n dateValuePicker: {} as {\r\n startDate: moment.Moment | null,\r\n endDate: moment.Moment | null,\r\n },\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n focused: {} as {\r\n id: string,\r\n focused: boolean,\r\n },\r\n selectedDevId: '',\r\n csvData: [], // setCsvData,\r\n selectedNotificationType: [] as TValueFilter,\r\n selectedNotificationSubtype: [] as TValueFilter,\r\n selectedNotificationDestinatary: [] as TValueFilter,\r\n selectedDateStart: null as Moment | null,\r\n selectedDateEnd: null as Moment | null,\r\n selectFocused: false,\r\n destinataryListOps: [] as { name: string, value: string }[],\r\n buttonName: props?.isFilterButton ? t('filtrar') : t('botaoAnalisar'),\r\n typesNotificationFilterOpts: [] as { value: number, name: string }[],\r\n typesNotificationListOpts: [] as { value: number, name: string }[],\r\n subtypesNotificationFilterOpts: [] as { value: number, name: string, typeId: number }[],\r\n subtypesNotificationListOpts: [] as { value: number, name: string, typeId: number }[],\r\n isClearFilter: false as boolean,\r\n selectedFiltersColumns: {\r\n CLIENT: {\r\n label: t('cliente'),\r\n values: [],\r\n },\r\n UNIT: {\r\n label: t('unidade'),\r\n values: [],\r\n },\r\n STATE: {\r\n label: t('estado'),\r\n values: [],\r\n },\r\n CITY: {\r\n label: t('cidade'),\r\n values: [],\r\n },\r\n SUPERVISOR: {\r\n label: t('responsavel'),\r\n values: [],\r\n },\r\n CLASS_NAME: {\r\n label: t('nomeDoGrupo'),\r\n values: [],\r\n },\r\n } as FilterColumnsSelected,\r\n };\r\n return state;\r\n });\r\n const [profile] = useState(getUserProfile);\r\n\r\n const isDesktop = window.matchMedia('(min-width: 1039px)').matches;\r\n\r\n function clearFilters() {\r\n state.isClearFilter = true;\r\n state.selectedCityOpts = [];\r\n state.searchTerms = '';\r\n state.selectedClientOpts = [];\r\n state.selectedConnectionOpts = [];\r\n state.selectedStateOpts = [];\r\n state.selectedStatusOpts = [];\r\n state.selectedSupplierOpts = 'Todos';\r\n state.selectedUnitOpts = [];\r\n state.selectedHealthOpts = [];\r\n state.selectedTemperatureOpts = [];\r\n state.selectedControlOpts = [];\r\n state.selectedModeEcoOpts = [];\r\n state.selectedDataTypeOpts = [];\r\n state.selectedAnalysisOpts = [];\r\n state.selectedNotificationType = [];\r\n state.selectedNotificationSubtype = [];\r\n state.selectedNotificationDestinatary = [];\r\n state.selectedClassesNamesOpts = [];\r\n state.selectedSupervisorOpts = [];\r\n state.selectedClassesOpts = [];\r\n\r\n if (!props.fixedPeriod) {\r\n state.selectedPeriodOpts = '';\r\n }\r\n\r\n removeAllFilters();\r\n if (props.listFilters?.includes('data')) {\r\n props.informationsUnits.dates.dateStart = null;\r\n props.informationsUnits.dates.dateEnd = null;\r\n }\r\n if (props.state.isUnits) {\r\n props.informationsUnits.statusUnitsCheck = '2';\r\n }\r\n state.selectEndOperationOpts = '';\r\n state.selectStartOperationOpts = '';\r\n state.dateValuePicker.startDate = null;\r\n state.dateValuePicker.endDate = null;\r\n state.selectedDateStart = null;\r\n state.selectedDateEnd = null;\r\n state.selectedDevId = '';\r\n clearOwners();\r\n setState({ statesListFilterOpts: state.statesListOpts });\r\n setState({ citiesListFilterOpts: state.citiesListOpts });\r\n setState({ supervisorFilterListOpts: state.supervisorListOpts });\r\n setState({ unitsFilterOpts: state.unitsListOpts });\r\n setState({ typesNotificationFilterOpts: state.typesNotificationListOpts });\r\n setState({ subtypesNotificationFilterOpts: state.subtypesNotificationListOpts });\r\n render();\r\n if (!props.onAply) {\r\n filter();\r\n }\r\n sessionStorage.clear();\r\n props.state.needFilter = null;\r\n state.isLoading = false;\r\n }\r\n\r\n async function getDestinataryListOpts() {\r\n try {\r\n const clientIds = Array.isArray(state.selectedClientOpts) && state.selectedClientOpts.length > 0 ? state.selectedClientOpts.map((x) => Number(x)) : undefined;\r\n await apiCall('/users/list-users', { CLIENT_IDS: clientIds, includeAdmins: profile.permissions.isAdminSistema }).then(({ list, adminUsers }) => {\r\n const fullList = list.map((item) => ({ FULLNAME: item.FULLNAME, USER: item.USER, unitIds: item.unitIds })) as {\r\n FULLNAME: string,\r\n USER: string,\r\n unitIds?: number[],\r\n }[];\r\n for (const adminUser of (adminUsers || [])) {\r\n if (fullList.some((x) => x.USER === adminUser.USER)) { continue; } // user already in the list\r\n else fullList.push({ FULLNAME: adminUser.FULLNAME, USER: adminUser.USER });\r\n }\r\n state.destinataryListOps = fullList.map((x) => ({ name: x.FULLNAME, value: x.USER }));\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroDestinatarios'));\r\n }\r\n render();\r\n }\r\n\r\n function getTypesNotificationListOpts() {\r\n setState({\r\n typesNotificationListOpts: [\r\n { value: 1, name: t('ambiente') },\r\n { value: 2, name: t('maquina') },\r\n { value: 3, name: t('utilitario') },\r\n ],\r\n });\r\n setState({ typesNotificationFilterOpts: state.typesNotificationListOpts });\r\n render();\r\n }\r\n\r\n function getSubtypesNotificationListOpts() {\r\n setState({\r\n subtypesNotificationListOpts: [\r\n { value: 4, name: t('agua'), typeId: 3 },\r\n { value: 1, name: t('ambiente'), typeId: 1 },\r\n { value: 3, name: t('energia'), typeId: 3 },\r\n { value: 5, name: t('saude'), typeId: 2 },\r\n { value: 6, name: t('usoCondensadora'), typeId: 2 },\r\n { value: 7, name: t('VRF'), typeId: 2 },\r\n ],\r\n });\r\n setState({ subtypesNotificationFilterOpts: state.subtypesNotificationListOpts });\r\n render();\r\n }\r\n\r\n function clearOwners() {\r\n if (props.infoType) {\r\n state.selectedOwnershipFilter = 'all';\r\n } else {\r\n state.selectedOwnershipFilter = { value: 'CLIENTS' };\r\n }\r\n }\r\n\r\n async function getValues() {\r\n if (props.listFilters?.includes('estado')) {\r\n await getStatesList(state, render);\r\n setState({ statesListFilterOpts: state.statesListOpts });\r\n }\r\n if (props.listFilters?.includes('cidade')) {\r\n await getCitiesList(state, render);\r\n setState({ citiesListFilterOpts: state.citiesListOpts });\r\n }\r\n if (props.listFilters?.includes('cliente') && profile.manageAllClients) {\r\n await getClientsList(state, render);\r\n }\r\n if (props.listFilters?.includes('unidade')) {\r\n await getUnitsList(state, render);\r\n setState({ unitsFilterOpts: state.unitsListOpts });\r\n }\r\n if (props.listFilters?.includes('pais')) {\r\n await getCountry(state, render, props.typeValueName);\r\n }\r\n if (props.listFilters?.includes('responsavel')) {\r\n await getSupervisorsList(state, render);\r\n setState({ supervisorFilterListOpts: state.supervisorListOpts });\r\n }\r\n if (props.listFilters?.includes('grupo') && !profile.manageAllClients) {\r\n await getClassesList(state, render);\r\n }\r\n\r\n getPreFilteredParams();\r\n }\r\n\r\n useEffect(() => {\r\n if (props.listFilters?.includes('tipoNotificacao')) {\r\n getTypesNotificationListOpts();\r\n }\r\n\r\n if (props.listFilters?.includes('subtipoNotificacao')) {\r\n getSubtypesNotificationListOpts();\r\n }\r\n\r\n getValues();\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (props.listFilters?.includes('destinatario')) {\r\n getDestinataryListOpts();\r\n }\r\n }, [state.selectedClientOpts]);\r\n\r\n function getPreFilteredParams() {\r\n let hasPrefilters = false;\r\n\r\n if (props.state?.selectedState?.length) {\r\n hasPrefilters = true;\r\n state.selectedFiltersColumns.STATE.values = state.statesListOpts.filter((c) => props.state?.selectedState.includes(c.value));\r\n setState({ selectedStateOpts: props.state.selectedState });\r\n }\r\n if (props.state?.selectedCity?.length) {\r\n hasPrefilters = true;\r\n state.selectedFiltersColumns.CITY.values = state.citiesListOpts.filter((c) => props.state?.selectedCity.includes(c.value));\r\n setState({ selectedCityOpts: props.state.selectedCity });\r\n }\r\n if (props.state?.selectedUnit?.length) {\r\n hasPrefilters = true;\r\n state.selectedFiltersColumns.UNIT.values = state.unitsListOpts.filter((c) => props.state?.selectedUnit.includes(c.value));\r\n setState({ selectedUnitOpts: props.state.selectedUnit });\r\n }\r\n if (props.state.selectedTemperature?.length) {\r\n hasPrefilters = true;\r\n setState({ selectedTemperatureOpts: props.state.selectedTemperature });\r\n }\r\n if (props.state.selectedSupervisor?.length) {\r\n hasPrefilters = true;\r\n state.selectedFiltersColumns.SUPERVISOR.values = state.supervisorListOpts.filter((c) => props.state?.selectedSupervisor.includes(c.value));\r\n setState({ selectedSupervisorOpts: props.state.selectedSupervisor });\r\n }\r\n\r\n if (state.selectedClassesNamesOpts.length) {\r\n hasPrefilters = true;\r\n state.selectedFiltersColumns.CLASS_NAME.values = state.classesNamesListOpts.filter((c) => state.selectedClassesNamesOpts.includes(c.value));\r\n }\r\n\r\n if (hasPrefilters) {\r\n setVariables();\r\n props.onAply!();\r\n }\r\n\r\n render();\r\n }\r\n\r\n function filter() {\r\n props.state.isLoading = true; props.render();\r\n props.state.filteredUtilities = props.state.utilities\r\n .filter((dev) => !state.selectedStateOpts!.length || state.selectedStateOpts!.includes(dev.STATE_UF))\r\n .filter((dev) => !state.selectedCityOpts!.length || state.selectedCityOpts!.includes(dev.CITY_NAME))\r\n .filter((dev) => !state.selectedClientOpts!.length || state.selectedClientOpts!.includes(dev.CLIENT_NAME))\r\n .filter((dev) => !state.selectedUnitOpts!.length || state.selectedUnitOpts!.includes(dev.UNIT_NAME))\r\n .filter((dev) => !state.selectedConnectionOpts!.length || state.selectedConnectionOpts!.includes(dev.connection))\r\n .filter((dev) => !state.selectedStatusOpts!.length || state.selectedStatusOpts!.includes(dev.status));\r\n\r\n props.state.isLoading = false; props.render();\r\n }\r\n\r\n function setVariablesUsuals() {\r\n if (props.listFilters?.includes('estado')) {\r\n props.state.selectedState = state.selectedStateOpts;\r\n defineSessionStorage('filterStates', state.selectedStateOpts);\r\n }\r\n if (props.listFilters?.includes('cidade')) {\r\n props.state.selectedCity = state.selectedCityOpts;\r\n defineSessionStorage('filterCity', state.selectedCityOpts);\r\n }\r\n if (props.listFilters?.includes('cliente') && profile.manageAllClients) {\r\n props.state.selectedClientFilter = state.selectedClientOpts;\r\n defineSessionStorage('filterClient', state.selectedClientOpts);\r\n }\r\n if (props.listFilters?.includes('unidade')) {\r\n props.state.selectedUnit = state.selectedUnitOpts;\r\n defineSessionStorage('filterUnit', state.selectedUnitOpts);\r\n }\r\n if (props.listFilters?.includes('responsavel')) {\r\n props.state.selectedSupervisor = state.selectedSupervisorOpts;\r\n defineSessionStorage('filterSupervisor', state.selectedSupervisorOpts);\r\n }\r\n if (props.listFilters?.includes('grupo')) {\r\n defineSessionStorage('filterClass', state.selectedClassesOpts);\r\n defineSessionStorage('filterClassName', state.selectedClassesNamesOpts);\r\n }\r\n if (props.listFilters?.includes('search')) {\r\n props.state.searchState = state.searchTerms;\r\n }\r\n }\r\n\r\n function setVariablesWater() {\r\n if (props.listFilters?.includes('fornecedor')) {\r\n props.state.selectSupplier = state.selectedSupplierOpts;\r\n }\r\n }\r\n\r\n function setVariablesNotification() {\r\n if (props.listFilters?.includes('dataUnica')) {\r\n props.state.selectedDateStart = state.selectedDateStart;\r\n props.state.selectedDateEnd = state.selectedDateEnd;\r\n }\r\n if (props.listFilters?.includes('tipoNotificacao')) {\r\n props.state.selectedNotificationType = state.selectedNotificationType;\r\n }\r\n if (props.listFilters?.includes('subtipoNotificacao')) {\r\n props.state.selectedNotificationSubtype = state.selectedNotificationSubtype;\r\n }\r\n if (props.listFilters?.includes('destinatario')) {\r\n props.state.selectedNotificationDestinatary = state.selectedNotificationDestinatary;\r\n }\r\n }\r\n\r\n function defineSessionStorage(key, value) {\r\n sessionStorage.setItem(key, value);\r\n }\r\n\r\n function onChangeClient(clients) {\r\n const filteredArray = clients.filter((value) => !state.selectedClientOpts.includes(value));\r\n if (filteredArray?.length) {\r\n const selectedClients = [...state.selectedClientOpts, ...filteredArray];\r\n state.selectedFiltersColumns.CLIENT.values = state.clientsListOpts.filter((c) => selectedClients.includes(c.value));\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.STATE.values = [];\r\n state.selectedFiltersColumns.CITY.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n onChangeClientAux(selectedClients);\r\n } else {\r\n state.selectedFiltersColumns.CLIENT.values = state.clientsListOpts.filter((c) => clients.includes(c.value));\r\n onChangeClientAux(clients);\r\n }\r\n\r\n render();\r\n }\r\n\r\n function onChangeClientAux(selectedValues) {\r\n const filteredStates = state.statesListOpts.filter((st) => !selectedValues?.length || state.clientsListOpts.some((client) => client.states.includes(Number(st.value)) && selectedValues.includes(client.value)));\r\n\r\n const filteredCities = state.citiesListOpts.filter((city) => !selectedValues?.length || state.clientsListOpts.some((client) => selectedValues.includes(client.value) && client.cities.includes(city.value)));\r\n\r\n const filteredUnits = state.unitsListOpts.filter((unit) => {\r\n const isClientMatching = !selectedValues?.length || selectedValues.includes(unit.clientId.toString());\r\n const isCityMatching = filteredCities.some((city) => city.value === unit.city);\r\n return isClientMatching && isCityMatching;\r\n });\r\n\r\n const filteredSupervisors = state.supervisorListOpts.filter((supervisor) => supervisor.unit_ids.some((unitId) => filteredUnits.some((unit) => unit.value === unitId.toString())));\r\n\r\n state.selectedFiltersColumns.CITY.values = [];\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n state.selectedFiltersColumns.STATE.values = [];\r\n\r\n setState({\r\n selectedUnitOpts: [],\r\n selectedSupervisorOpts: [],\r\n selectedCityOpts: [],\r\n selectedStateOpts: [],\r\n citiesListFilterOpts: filteredCities,\r\n unitsFilterOpts: filteredUnits,\r\n supervisorFilterListOpts: filteredSupervisors,\r\n statesListFilterOpts: filteredStates,\r\n selectedClientOpts: selectedValues,\r\n });\r\n }\r\n\r\n function onChangeState(states) {\r\n const filteredArray = states.filter((value) => !state.selectedStateOpts.includes(value));\r\n if (filteredArray?.length) {\r\n const selectedStates = [...state.selectedStateOpts, ...filteredArray];\r\n state.selectedFiltersColumns.CITY.values = [];\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n state.selectedFiltersColumns.STATE.values = state.statesListOpts.filter((c) => selectedStates.includes(c.value));\r\n\r\n onChangeStateAux(selectedStates);\r\n } else {\r\n state.selectedFiltersColumns.STATE.values = state.statesListOpts.filter((st) => states.some((val) => val === st.value));\r\n\r\n onChangeStateAux(states);\r\n }\r\n\r\n render();\r\n }\r\n\r\n function onChangeStateAux(selectedValues) {\r\n const filteredCities = state.citiesListOpts.filter((city) => {\r\n const isStateMatching = !selectedValues?.length || selectedValues.includes(city.stateId.toString());\r\n const isClientMatching = !state.selectedClientOpts.length || state.clientsListOpts.some((client) => state.selectedClientOpts.includes(client.value) && client.cities.includes(city.value));\r\n return isStateMatching && isClientMatching;\r\n });\r\n\r\n const filteredUnits = state.unitsListOpts.filter((unit) => {\r\n const isStateMatching = !selectedValues?.length || selectedValues.includes(unit.state?.toString());\r\n const isCityMatching = !state.selectedCityOpts.length || filteredCities.some((city) => city.value === unit.city);\r\n const isClientMatching = !state.selectedClientOpts.length || state.selectedClientOpts.includes(unit.clientId.toString());\r\n return isStateMatching && isCityMatching && isClientMatching;\r\n });\r\n\r\n const filteredSupervisors = state.supervisorListOpts.filter((supervisor) => supervisor.unit_ids.some((unitId) => filteredUnits.some((unit) => unit.value === unitId.toString())));\r\n\r\n state.selectedFiltersColumns.CITY.values = [];\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n\r\n setState({\r\n selectedUnitOpts: [],\r\n selectedSupervisorOpts: [],\r\n selectedCityOpts: [],\r\n citiesListFilterOpts: filteredCities,\r\n unitsFilterOpts: filteredUnits,\r\n supervisorFilterListOpts: filteredSupervisors,\r\n selectedStateOpts: selectedValues,\r\n });\r\n }\r\n\r\n function onChangeCity(cities) {\r\n const filteredArray = cities.filter((value) => !state.selectedCityOpts.includes(value));\r\n if (filteredArray?.length) {\r\n const selectedCities = [...state.selectedCityOpts, ...filteredArray];\r\n state.selectedFiltersColumns.CITY.values = state.citiesListOpts.filter((c) => selectedCities.includes(c.value));\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n\r\n onChangeCityAux(selectedCities);\r\n } else {\r\n state.selectedFiltersColumns.CITY.values = state.citiesListOpts.filter((ct) => cities.some((val) => val === ct.value));\r\n onChangeCityAux(cities);\r\n }\r\n\r\n render();\r\n }\r\n\r\n function onChangeCityAux(selectedValues) {\r\n const filteredUnits = state.unitsListOpts.filter((unit) => {\r\n const isCityMatching = !selectedValues?.length || selectedValues.includes(unit.city);\r\n const isStateMatching = !state.selectedStateOpts.length || state.selectedStateOpts.includes(unit.state?.toString());\r\n const isClientMatching = !state.selectedClientOpts.length || state.selectedClientOpts.includes(unit.clientId.toString());\r\n return isCityMatching && isStateMatching && isClientMatching;\r\n });\r\n\r\n const filteredSupervisors = state.supervisorListOpts.filter((supervisor) => {\r\n supervisor.unit_ids.some((unitId) => filteredUnits.some((unit) => unit.value === unitId.toString()));\r\n });\r\n\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n\r\n setState({\r\n unitsFilterOpts: filteredUnits,\r\n selectedUnitOpts: [],\r\n selectedSupervisorOpts: [],\r\n selectedCityOpts: selectedValues,\r\n supervisorFilterListOpts: filteredSupervisors,\r\n });\r\n }\r\n\r\n function onChangeUnit(units) {\r\n const filteredArray = units.filter((value) => !state.selectedUnitOpts.includes(value));\r\n if (filteredArray?.length) {\r\n state.selectedFiltersColumns.UNIT.values = state.unitsFilterOpts\r\n .filter((unit) => [...state.selectedUnitOpts, ...filteredArray].some((val) => val.toString() === unit.value))\r\n .map((unit) => ({\r\n name: unit.name,\r\n value: unit.value,\r\n }));\r\n setState({\r\n selectedUnitOpts: [...state.selectedUnitOpts, ...filteredArray],\r\n supervisorFilterListOpts: state.supervisorListOpts.filter((item) => item.unit_ids.some((unitId) => [...state.selectedUnitOpts, ...filteredArray].some((unit) => Number(unit) === unitId))),\r\n });\r\n } else {\r\n state.selectedFiltersColumns.UNIT.values = state.unitsListOpts.filter((u) => units.some((val) => val === u.value));\r\n state.selectedFiltersColumns.CLASS_NAME.values = [];\r\n setState({\r\n selectedUnitOpts: units,\r\n unitsFilterOpts: state.unitsListOpts,\r\n supervisorFilterListOpts: state.supervisorListOpts,\r\n selectedSupervisorOpts: [],\r\n selectedClassesNamesOpts: [],\r\n });\r\n }\r\n\r\n render();\r\n }\r\n\r\n function onChangeClasses(value) {\r\n if (value && value !== state.selectedClassesOpts) {\r\n setState({\r\n selectedClassesOpts: value,\r\n selectedClassesNamesOpts: [],\r\n classesNamesFilterListOpts: state.classesNamesListOpts.filter((x) => value === x.class),\r\n });\r\n } else {\r\n setState({\r\n selectedClassesOpts: [],\r\n selectedClassesNamesOpts: [],\r\n classesNamesFilterListOpts: [],\r\n });\r\n }\r\n state.selectedFiltersColumns.CLASS_NAME.values = [];\r\n\r\n render();\r\n }\r\n\r\n function onChangeClassesNames(classesNames) {\r\n const filteredArray = classesNames.filter((value) => !state.selectedClassesNamesOpts.includes(value));\r\n if (filteredArray?.length) {\r\n const selectedClasses = [...state.selectedClassesNamesOpts, ...filteredArray];\r\n\r\n const selectedUnits = state.unitsFilterOpts.filter((unit) => state.classesNamesListOpts\r\n .filter((classItem) => selectedClasses.includes(classItem.value))\r\n .some((classItem) => classItem.units.includes(Number(unit.value))));\r\n\r\n state.selectedFiltersColumns.CLASS_NAME.values = state.classesNamesListOpts.filter((c) => selectedClasses.includes(c.value));\r\n state.selectedFiltersColumns.UNIT.values = selectedUnits;\r\n\r\n setState({\r\n selectedClassesNamesOpts: selectedClasses,\r\n selectedUnitOpts: selectedUnits.map((u) => u.value),\r\n });\r\n } else {\r\n const selectedUnits = state.unitsFilterOpts.filter((unit) => state.classesNamesListOpts\r\n .filter((classItem) => classesNames.includes(classItem.value))\r\n .some((classItem) => classItem.units.includes(Number(unit.value))));\r\n state.selectedFiltersColumns.UNIT.values = selectedUnits;\r\n state.selectedFiltersColumns.CLASS_NAME.values = state.classesNamesListOpts.filter((c) => classesNames.some((val) => val === c.value));\r\n setState({\r\n selectedUnitOpts: selectedUnits.map((u) => u.value),\r\n selectedClassesNamesOpts: classesNames,\r\n });\r\n }\r\n\r\n render();\r\n }\r\n\r\n function onChangeSupervisor(supervisors) {\r\n const filteredArray = supervisors.filter((value) => !state.selectedSupervisorOpts.includes(value));\r\n if (filteredArray?.length) {\r\n state.selectedSupervisorOpts = [...state.selectedSupervisorOpts, ...filteredArray];\r\n state.selectedFiltersColumns.SUPERVISOR.values = state.supervisorListOpts.filter((st) => [...state.selectedSupervisorOpts, ...filteredArray].some((val) => val === st.value));\r\n } else {\r\n state.selectedSupervisorOpts = supervisors;\r\n state.selectedFiltersColumns.SUPERVISOR.values = state.supervisorListOpts.filter((st) => supervisors.some((val) => val === st.value));\r\n }\r\n\r\n render();\r\n }\r\n\r\n function onChangeNotificationTypes(value) {\r\n if (value) {\r\n state.selectedNotificationSubtype = [];\r\n state.selectedNotificationType = value;\r\n setState({ subtypesNotificationFilterOpts: state.subtypesNotificationListOpts.filter((item) => (value.includes(item.typeId) || value === item.typeId)) });\r\n render();\r\n }\r\n }\r\n\r\n function setVariables() {\r\n setVariablesUsuals();\r\n if (props.listFilters?.includes('conexao')) {\r\n props.state.selectedConnection = state.selectedConnectionOpts;\r\n }\r\n if (props.listFilters?.includes('status')) {\r\n props.state.selectedStatus = state.selectedStatusOpts;\r\n }\r\n\r\n if (props.listFilters?.includes('saude')) {\r\n props.state.selectedHealth = state.selectedHealthOpts;\r\n }\r\n if (props.listFilters?.includes('temperatura')) {\r\n props.state.selectedTemperature = state.selectedTemperatureOpts;\r\n }\r\n if (props.listFilters?.includes('controle')) {\r\n props.state.selectedControlType = state.selectedControlOpts;\r\n }\r\n if (props.listFilters?.includes('modoEco')) {\r\n props.state.selectedEcoMode = state.selectedModeEcoOpts;\r\n }\r\n if (props.listFilters?.includes('periodo')) {\r\n props.state.selectedTimeRange = state.selectedPeriodOpts;\r\n }\r\n if (props.listFilters?.includes('dados')) {\r\n props.state.selectedDataType = state.selectedDataTypeOpts;\r\n }\r\n if (props.listFilters?.includes('analise')) {\r\n props.state.selectedAnalysis = state.selectedAnalysisOpts;\r\n }\r\n if (props.listFilters?.includes('pais')) {\r\n props.state.selectedCountry = state.selectedCountry;\r\n }\r\n if (props.listFilters?.includes('operacao')) {\r\n props.state.selectedOperationStatus = state.selectedOperationStatusOpts;\r\n }\r\n if (props.listFilters?.includes('tipo')) {\r\n props.state.ownershipFilter = state.selectedOwnershipFilter;\r\n }\r\n if (props.listFilters?.includes('id')) {\r\n props.state.selectedDevId = state.selectedDevId;\r\n }\r\n setVariablesWater();\r\n setVariablesNotification();\r\n if (state.isClearFilter) state.isClearFilter = false;\r\n else state.showFilter = false;\r\n }\r\n\r\n function quickHandleChangeData(startDate, endDate, timeSelected) {\r\n const data = [...props.state.data];\r\n data.forEach((itemData) => {\r\n itemData.date.startDate = startDate.format('YYYY-MM-DD');\r\n itemData.date.endDate = endDate.format('YYYY-MM-DD');\r\n });\r\n setState({ ...state, selectedPeriodOpts: timeSelected, data });\r\n props.setView!(timeSelected);\r\n props.state.selectedTimeRange = state.selectedPeriodOpts;\r\n }\r\n\r\n const handleClickChange = (value: any, date?: Moment | null) => {\r\n if (props.updateCheckInformations) {\r\n if (date) props.updateCheckInformations(value, date);\r\n else props.updateCheckInformations(value);\r\n }\r\n props.render();\r\n };\r\n\r\n function quickChangeData(startDate, endDate) {\r\n props.informationsUnits.dates.dateStart = startDate;\r\n if (endDate) { handleClickChange('dateEnd', endDate); }\r\n }\r\n\r\n function onSelectedOwnership(value) {\r\n if (!props.infoType) {\r\n state.selectedOwnershipFilter = { value };\r\n } else {\r\n state.selectedOwnershipFilter = value;\r\n }\r\n render();\r\n }\r\n\r\n const setOnChange = (opt, data) => {\r\n if (opt.placeholder === t('inicioOperacao')) {\r\n state.dateValuePicker.startDate = data;\r\n } else {\r\n state.dateValuePicker.endDate = data;\r\n }\r\n };\r\n const isOutsideRange = (day) => {\r\n if (!props.isMaxOneMonthPeriod || props.state.focusedInput === 'startDate') return !day.isBefore(state.tomorrow);\r\n if (props.state.focusedInput === 'endDate') {\r\n return !day.isBefore(state.tomorrow) || day.isAfter(moment(new Date(props.informationsUnits.dates.dateStart)).add(30, 'days'));\r\n }\r\n return false;\r\n };\r\n\r\n const getColorExpandIcon = () => (state.isLoading ? colors.Grey200 : colors.Blue700);\r\n\r\n function removeAllFilters() {\r\n setState({\r\n selectedClientOpts: [],\r\n selectedUnitOpts: [],\r\n selectedStateOpts: [],\r\n selectedCityOpts: [],\r\n selectedSupervisorOpts: [],\r\n selectedClassesNamesOpts: [],\r\n selectedClassesOpts: [],\r\n unitsFilterOpts: state.unitsListOpts,\r\n statesListFilterOpts: state.statesListOpts,\r\n citiesListFilterOpts: state.citiesListOpts,\r\n supervisorFilterListOpts: state.supervisorListOpts,\r\n classesNamesFilterListOpts: state.classesNamesListOpts,\r\n });\r\n\r\n state.selectedFiltersColumns.CLIENT.values = [];\r\n state.selectedFiltersColumns.UNIT.values = [];\r\n state.selectedFiltersColumns.STATE.values = [];\r\n state.selectedFiltersColumns.CITY.values = [];\r\n state.selectedFiltersColumns.SUPERVISOR.values = [];\r\n state.selectedFiltersColumns.CLASS_NAME.values = [];\r\n setVariables();\r\n props.onAply!();\r\n }\r\n\r\n function handleRemoveFilterAux(filtersSelected: TValueFilter, valueRemoved: { value: string, name: string }) {\r\n let updateOpts: TValueFilter = '';\r\n\r\n if (Array.isArray(filtersSelected)) {\r\n updateOpts = filtersSelected.filter((x) => x.toString() !== valueRemoved.value.toString());\r\n } else {\r\n updateOpts = filtersSelected === valueRemoved.value ? '' : state.selectedUnitOpts;\r\n }\r\n\r\n return updateOpts;\r\n }\r\n\r\n function handleRemoveFilter(columnKey: string, filterIndex: number) {\r\n const valueRemoved = state.selectedFiltersColumns[columnKey].values[filterIndex];\r\n\r\n switch (columnKey) {\r\n case 'UNIT': {\r\n const updateOpts = handleRemoveFilterAux(state.selectedUnitOpts, valueRemoved);\r\n onChangeUnit(updateOpts);\r\n break;\r\n }\r\n case 'CLIENT': {\r\n const updateOpts = handleRemoveFilterAux(state.selectedClientOpts, valueRemoved);\r\n onChangeClient(updateOpts);\r\n break;\r\n }\r\n case 'STATE': {\r\n const updateOpts = handleRemoveFilterAux(state.selectedStateOpts, valueRemoved);\r\n onChangeState(updateOpts);\r\n break;\r\n }\r\n case 'CITY': {\r\n const updateOpts = handleRemoveFilterAux(state.selectedCityOpts, valueRemoved);\r\n onChangeCity(updateOpts);\r\n break;\r\n }\r\n case 'SUPERVISOR': {\r\n const updateOpts = handleRemoveFilterAux(state.selectedSupervisorOpts, valueRemoved);\r\n onChangeSupervisor(updateOpts);\r\n break;\r\n }\r\n case 'CLASS_NAME': {\r\n const updateOpts = handleRemoveFilterAux(state.selectedClassesNamesOpts, valueRemoved);\r\n onChangeClassesNames(updateOpts);\r\n break;\r\n }\r\n default:\r\n break;\r\n }\r\n\r\n setVariables();\r\n props.onAply!();\r\n }\r\n\r\n function handleRemoveCategoryFilter(columnKey: string) {\r\n switch (columnKey) {\r\n case 'UNIT':\r\n onChangeUnit([]);\r\n break;\r\n case 'CLIENT':\r\n onChangeClient([]);\r\n break;\r\n case 'STATE':\r\n onChangeState([]);\r\n break;\r\n case 'CITY':\r\n onChangeCity([]);\r\n break;\r\n case 'SUPERVISOR':\r\n onChangeSupervisor([]);\r\n break;\r\n case 'CLASS_NAME':\r\n onChangeClassesNames([]);\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n setVariables();\r\n props.onAply!();\r\n }\r\n\r\n function alterDate(type: 'next' | 'previous') {\r\n let newDate;\r\n const today = moment();\r\n\r\n if (state.selectedPeriodOpts === t('mes')) {\r\n newDate = type === 'next' ? new Date(props.state.monthDate.getFullYear(), props.state.monthDate.getMonth() + 1, 1) : new Date(props.state.monthDate.getFullYear(), props.state.monthDate.getMonth() - 1, 1);\r\n }\r\n if (state.selectedPeriodOpts === t('semana')) {\r\n newDate = type === 'next' ? moment(props.state.date).add(7, 'days') : moment(props.state.date).subtract(7, 'days');\r\n }\r\n if (state.selectedPeriodOpts === t('dia')) {\r\n newDate = type === 'next' ? moment(props.state.date).add(1, 'days') : moment(props.state.date).subtract(1, 'days');\r\n }\r\n if (newDate && moment(newDate).isSameOrBefore(today, 'day')) onDateChange(newDate, newDate);\r\n }\r\n\r\n function onDateChange(date, dateEnd) {\r\n if (state.selectedPeriodOpts === t('semana')) {\r\n props.state.date = date;\r\n render();\r\n props.state.dateList = getDatesList(date, 7);\r\n } else if (state.selectedPeriodOpts === t('dia')) {\r\n props.state.date = date;\r\n render();\r\n props.state.dateList = getDatesList(date, 1);\r\n } else if (state.selectedPeriodOpts === t('flexivel')) {\r\n props.state.startDate = date;\r\n props.state.endDate = dateEnd;\r\n if (dateEnd) {\r\n dateEnd.set({\r\n hour: 12, minute: 0, second: 0, millisecond: 0,\r\n });\r\n }\r\n props.state.dateList = getDatesList(date, dateEnd.diff(date, 'days') + 1);\r\n } else if (state.selectedPeriodOpts === t('mes')) {\r\n props.state.monthDate = date;\r\n props.state.dateList = getDatesList(moment(date), new Date(moment(date).year(), moment(date).month() + 1, 0).getDate());\r\n }\r\n\r\n render();\r\n }\r\n\r\n const loading = props.isLoading || props.state.isLoading || state.isLoading;\r\n\r\n return (\r\n \r\n \r\n {\r\n state.showFilter && (\r\n \r\n
\r\n
\r\n {\r\n (props.listFilters?.includes('cliente') && profile.manageAllClients) && (\r\n { onChangeClient(value); }}\r\n multiple\r\n placeholder={t('cliente')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('pais') && (\r\n { state.selectedCountry = value as any; render(); }}\r\n multiple\r\n placeholder={t('pais')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('estado') && (\r\n { onChangeState(value); }}\r\n multiple\r\n placeholder={t('estado')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('cidade') && (\r\n { onChangeCity(value); }}\r\n multiple\r\n placeholder={t('cidade')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('unidade') && (\r\n { onChangeUnit(value); }}\r\n multiple\r\n placeholder={t('unidade')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('responsavel') && (\r\n { onChangeSupervisor(value); }}\r\n multiple\r\n placeholder={t('responsavel')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n (props.listFilters?.includes('grupo') && state.classesListOpts.length > 0) && (\r\n <>\r\n { onChangeClasses(value); }}\r\n placeholder=\"Grupo\"\r\n disabled={loading}\r\n />\r\n { onChangeClassesNames(value); }}\r\n placeholder=\"Nome do Grupo\"\r\n multiple\r\n disabled={loading || !state.selectedClassesOpts.length}\r\n />\r\n \r\n )\r\n }\r\n {\r\n props.listFilters?.includes('statusOperacao') && profile.manageAllClients && (\r\n { handleClickChange(value);\r\n props.render(); }}\r\n placeholder=\"Status\"\r\n disabled={loading}\r\n renderOption\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('conexao') && (\r\n },\r\n { value: 'LATE', name: t('late'), icon: },\r\n { value: 'OFFLINE', name: t('offline'), icon: },\r\n ]}\r\n onChange={(value) => { state.selectedConnectionOpts = value as any; render(); }}\r\n multiple\r\n placeholder={props.optionsConnetionsName || t('conexao')}\r\n disabled={loading}\r\n renderOption\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('status') && (\r\n <>\r\n {props.state.utilities[0] && props.state.utilities[0].APPLICATION === 'Nobreak' && (\r\n { state.selectedStatusOpts = value as any; render(); }}\r\n multiple\r\n placeholder=\"Status\"\r\n disabled={loading}\r\n renderOption\r\n />\r\n )}\r\n\r\n {props.state.utilities[0] && props.state.utilities[0].APPLICATION === 'Iluminação' && (\r\n { state.selectedStatusOpts = value as any; render(); }}\r\n multiple\r\n placeholder=\"Status\"\r\n disabled={loading}\r\n renderOption\r\n />\r\n )}\r\n \r\n )\r\n }\r\n {\r\n props.listFilters?.includes('saude') && (\r\n },\r\n { value: '75', name: t('foraDeEspecificacao'), icon: },\r\n { value: '50', name: t('riscoIminente'), icon: },\r\n { value: '25', name: t('manutencaoUrgente'), icon: },\r\n { value: '2', name: t('equipamentoOffline'), icon: },\r\n { value: '4', name: t('maquinaDesativada'), icon: },\r\n ]}\r\n onChange={(value) => { state.selectedHealthOpts = value as any; render(); }}\r\n multiple\r\n placeholder={t('saude')}\r\n disabled={loading}\r\n renderOption\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('temperatura') && (\r\n },\r\n { value: 'good', name: t('correta'), icon: },\r\n { value: 'low', name: t('abaixo'), icon: },\r\n { value: 'no data', name: t('semInfo'), icon: },\r\n ]}\r\n onChange={(value) => { state.selectedTemperatureOpts = value as any; render(); }}\r\n multiple\r\n placeholder={t('temperatura')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('controle') && (\r\n { state.selectedControlOpts = value as any; render(); }}\r\n multiple\r\n placeholder={t('tipoControle')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('tipoNotificacao') && (\r\n { onChangeNotificationTypes(value); }}\r\n multiple\r\n placeholder={t('tipoNotificacao')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('subtipoNotificacao') && (\r\n { state.selectedNotificationSubtype = value as any; render(); }}\r\n multiple\r\n placeholder=\"Subtipo\"\r\n disabled={loading || !state.selectedNotificationType.length}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('destinatario') && (\r\n { state.selectedNotificationDestinatary = value as any; render(); }}\r\n multiple\r\n placeholder=\"Destinatário\"\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('modoEco') && (\r\n { state.selectedModeEcoOpts = value as any; render(); }}\r\n multiple\r\n placeholder={t('modoEco')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('operacao') && (\r\n { state.selectedOperationStatusOpts = value as any; render(); }}\r\n multiple\r\n placeholder={t('operacao')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('analise') && (\r\n { state.selectedAnalysisOpts = value as any; render(); }}\r\n placeholder={t('analisar')}\r\n disabled\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('dados') && (\r\n { state.selectedDataTypeOpts = value as any; render(); }}\r\n placeholder={t('tipoDeDados')}\r\n disabled\r\n />\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('periodo') && (\r\n
\r\n { state.selectedPeriodOpts = value as any; render(); }}\r\n placeholder={t('periodo')}\r\n disabled={loading}\r\n />\r\n
\r\n )\r\n }\r\n {\r\n props.listFilters?.includes('data') && (\r\n\r\n
\r\n \r\n {props?.isPeriodLabel ? t('periodo') : t('inicioOperacao')}\r\n {!props?.isPeriodLabel && }\r\n \r\n\r\n \r\n {t('informacoesInicioOperacao')}\r\n \r\n\r\n \r\n {\r\n if (startDate) { handleClickChange('dateStart', startDate); }\r\n if (startDate !== props.informationsUnits.dates.dateStart) { handleClickChange('dateEnd', null); }\r\n else {\r\n handleClickChange('dateEnd', endDate);\r\n }\r\n }} // PropTypes.func.isRequired,\r\n onFocusChange={(focused: 'endDate' | 'startDate' | null) => {\r\n props.state.focusedInput = focused;\r\n props.render();\r\n }}\r\n focusedInput={props.state.focusedInput}\r\n noBorder\r\n isOutsideRange={(d) => isOutsideRange(d)}\r\n startDatePlaceholderText={t('dataInicial')}\r\n endDatePlaceholderText={t('dataFinal')}\r\n />\r\n \r\n \r\n
\r\n\r\n )\r\n }\r\n { props.listFilters?.includes('dataNew') && state.selectedPeriodOpts !== t('flexivel') && (\r\n \r\n !loading && alterDate('previous')}>\r\n \r\n \r\n {\r\n state.selectedPeriodOpts === t('mes') && (\r\n \r\n \r\n \r\n \r\n )\r\n }\r\n {\r\n [t('semana'), t('dia')].includes(state.selectedPeriodOpts) && (\r\n \r\n \r\n { props.state.focused = focused; render(); }}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(moment())}\r\n />\r\n \r\n )\r\n }\r\n !loading && alterDate('next')}>\r\n \r\n \r\n \r\n )}\r\n { props.listFilters?.includes('dataNew') && state.selectedPeriodOpts === t('flexivel') && (\r\n
\r\n \r\n {t('data')}\r\n onDateChange(startDate, endDate)}\r\n onFocusChange={(focused) => { props.state.focusedInput = focused; render(); }}\r\n focusedInput={props.state.focusedInput}\r\n noBorder\r\n startDatePlaceholderText={t('dataInicial')}\r\n endDatePlaceholderText={t('dataFinal')}\r\n isOutsideRange={(d) => d.startOf('day').isAfter(moment().startOf('day'))}\r\n />\r\n \r\n
\r\n )}\r\n\r\n {\r\n (props.listFilters?.includes('tipo') && (profile.viewAllClients || profile.permissions.isInstaller)) && (\r\n { onSelectedOwnership(value); }}\r\n placeholder={t('tipo')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n (props.listFilters?.includes('progDisp')) && (\r\n { state.selectedInfoExib = value; props.setProg!(state.selectedInfoExib); render(); }}\r\n placeholder={t('informacoesExibidas')}\r\n disabled={loading}\r\n />\r\n )\r\n }\r\n {\r\n (props.listFilters?.includes('id') && (\r\n
\r\n { setVariables(); props.onAply!(); }}\r\n onChange={(id) => { state.selectedDevId = id; render(); }}\r\n disabled={loading}\r\n filterStyle\r\n noBorder\r\n />\r\n
\r\n ))\r\n }\r\n {\r\n props.listFilters?.includes('fornecedor') && (\r\n\r\n { state.selectedSupplierOpts = value as any; render(); }}\r\n placeholder={t('fornecedor')}\r\n disabled={loading}\r\n renderOption\r\n />\r\n )\r\n }\r\n {\r\n (props.listFilters?.includes('search') && (\r\n
\r\n \r\n \r\n\r\n \r\n {t('pesquiseAmbientes')}\r\n \r\n\r\n \r\n { setVariables(); props.onAply!(); }}\r\n onChange={(term) => { state.searchTerms = term; render(); }}\r\n disabled={loading}\r\n filterStyle\r\n noBorder\r\n />\r\n
\r\n ))\r\n }\r\n
\r\n {\r\n props.listFilters?.includes('dataUnica') && (\r\n \r\n {t('data')}\r\n setState({ selectedDateStart: value, selectedDateEnd: value })}\r\n focused={state.selectFocused}\r\n onFocusChange={({ focused }) => setState({ selectFocused: focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n placeholder={t('data')}\r\n />\r\n\r\n \r\n \r\n )\r\n\r\n }\r\n
\r\n {\r\n (state.showFilter)\r\n && (\r\n { clearFilters(); setVariables(); props.onAply!(); }}>\r\n {t('limparTodos')}\r\n \r\n )\r\n }\r\n
\r\n
\r\n { setVariables(); props.onAply!(); }}\r\n >\r\n {state.buttonName}\r\n \r\n
\r\n )\r\n }\r\n \r\n {state.showFilter &&
}\r\n \r\n { state.showFilter = !state.showFilter; render(); }}>\r\n \r\n {t('filtros')}\r\n {state.showFilter ? : }\r\n \r\n {\r\n (props.filterFooter && isDesktop && !state.showFilter && Object.values(state.selectedFiltersColumns).some((item) => item.values.length > 0)) && (\r\n
\r\n \r\n
\r\n\r\n )\r\n }\r\n {\r\n props.exportFunc && (\r\n \r\n )\r\n }\r\n
\r\n {state.showFilter &&
}\r\n\r\n \r\n );\r\n};\r\n\r\nexport const CustomFilter = (props : {\r\n showFilter: boolean,\r\n tab: string,\r\n state: any,\r\n updateCheckInformations?: (value: any, date?: Moment) => void,\r\n informationsUnits?: any,\r\n stateFilter: any,\r\n render: any,\r\n exportFunc: (() => Promise | void) | undefined,\r\n csvHeader: {\r\n label: string;\r\n key: string;\r\n }[] | undefined\r\n}): JSX.Element => {\r\n const csvLinkEl = useRef();\r\n const [profile] = useState(getUserProfile);\r\n\r\n function verifyParams() {\r\n if (props.state.isUnits && props.state.openExportList === false) {\r\n return openExportList();\r\n }\r\n if (props.exportFunc) {\r\n return props.exportFunc();\r\n }\r\n return getCsvData();\r\n }\r\n function openExportList() {\r\n try {\r\n props.state.openExportList = true;\r\n props.render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n function isCompleteList() {\r\n try {\r\n handleClick('complete');\r\n props.render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n function isCustomList() {\r\n try {\r\n handleClick('custom');\r\n props.render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n function closeExportList() {\r\n try {\r\n props.state.openExportList = false;\r\n props.state.modeExportList = '';\r\n props.render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n const handleClick = (value: string, date?: Moment) => {\r\n if (props.updateCheckInformations) {\r\n if (date) props.updateCheckInformations(value, date);\r\n else props.updateCheckInformations(value);\r\n }\r\n };\r\n\r\n const getCsvData = async () => {\r\n props.state.isLoading = true; props.render();\r\n const formatterCSV = props.state.filteredUtilities.map((dev) => ({\r\n CLIENT_NAME: dev.CLIENT_NAME || '-',\r\n STATE: dev.STATE_UF || '-',\r\n CITY_NAME: dev.CITY_NAME || '-',\r\n NAME: dev.NAME || '-',\r\n UNIT: dev.UNIT_NAME || '-',\r\n DAT_CODE: dev.DAT_CODE || '-',\r\n DMT_CODE: dev.DMT_CODE || '-',\r\n STATUS: dev.status || '-',\r\n averageDur: dev.averageDur || '-',\r\n autonon: dev.autonon || '-',\r\n connection: dev.connection || '-',\r\n }));\r\n\r\n props.stateFilter.csvData = formatterCSV;\r\n props.render();\r\n\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n window.location.reload();\r\n }, 1000);\r\n props.state.isLoading = false; props.render();\r\n };\r\n\r\n useEffect(() => {\r\n props.state.filteredUtilities = props.state.utilities;\r\n props.render();\r\n }, []);\r\n\r\n return (\r\n \r\n {\r\n props.tab === 'devices' && (\r\n <>\r\n { verifyParams(); }}>\r\n \r\n \r\n {t('exportarListaCap')}\r\n \r\n \r\n \r\n \r\n )\r\n }\r\n {props.state.isUnits && props.state.openExportList && (\r\n
\r\n closeExportList()}\r\n >\r\n \r\n \r\n \r\n {t('exportarPlanilha')}\r\n \r\n \r\n {t('selecioneOpcaoDesejada')}\r\n \r\n\r\n \r\n {/* Complete */}\r\n { isCompleteList(); }}\r\n >\r\n \r\n {t('planilhaCompleta')}\r\n \r\n \r\n \r\n {t('informacoesPlanilhaCompleta')}\r\n \r\n \r\n \r\n\r\n {/* Custom */}\r\n { isCustomList(); }}\r\n >\r\n \r\n\r\n \r\n {t('planilhaCustomizada')}\r\n \r\n \r\n\r\n \r\n\r\n \r\n {t('informacoesPlanilhaCustomizada')}\r\n \r\n\r\n \r\n \r\n \r\n\r\n {props.informationsUnits.modeExportList === 'custom' && (\r\n <>\r\n\r\n \r\n \r\n {t('informacoes')}\r\n :\r\n \r\n \r\n \r\n {\r\n handleClick('estado');\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('estado')}\r\n \r\n \r\n \r\n {\r\n handleClick('cidade');\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('cidade')}\r\n \r\n \r\n \r\n {\r\n handleClick('unidade');\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('unidade')}\r\n \r\n \r\n \r\n {\r\n handleClick('maquinas');\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('maquinas')}\r\n \r\n \r\n \r\n {\r\n handleClick('ambientes');\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('ambientes')}\r\n \r\n \r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('utilitarios');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('utilitarios')}\r\n \r\n \r\n\r\n {profile.manageAllClients && (\r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('inicioMonitoramento');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('inicioMonitoramento')}\r\n \r\n \r\n\r\n )}\r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('dispositivosAgua');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('dispositivosAgua')}\r\n \r\n \r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('dispositivosEnergia');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('dispositivosEnergia')}\r\n \r\n \r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('dispositivosAutomacao');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('dispositivosAutomacao')}\r\n \r\n \r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('dispositivosMonitoramento');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('dispositivosMonitoramento')}\r\n \r\n \r\n\r\n {profile.manageAllClients && (\r\n \r\n {\r\n props.updateCheckInformations !== undefined && props.updateCheckInformations('status');\r\n props.render();\r\n }}\r\n size={16}\r\n />\r\n \r\n {t('status')}\r\n \r\n \r\n )}\r\n\r\n \r\n\r\n \r\n \r\n\r\n )}\r\n\r\n verifyParams()}\r\n >\r\n {t('exportar')}\r\n \r\n\r\n \r\n closeExportList()}\r\n >\r\n {t('cancelar')}\r\n \r\n\r\n \r\n \r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nconst FilterOption = (props: {\r\n value: string | string[] | undefined\r\n placeholder: string,\r\n onChange: ((selectedValue: SelectedOptionValue | SelectedOptionValue[], selectedOption: SelectedOption | SelectedOption[], optionSnapshot: SelectSearchProps) => void) | undefined\r\n options: SelectSearchOption[],\r\n disabled?: boolean,\r\n multiple?: boolean,\r\n closeOnSelected?: boolean,\r\n renderOption?: boolean,\r\n type?: string,\r\n getSelectedDate?: (opt: any, state: any) => any,\r\n setOnChange?: (opt: any, data: any) => void,\r\n state?: any,\r\n setState?: any,\r\n render?: any,\r\n}) => {\r\n function renderOption(props, option, snapshot, className) {\r\n return (\r\n \r\n );\r\n }\r\n return (\r\n <>\r\n {\r\n props.type && props.type === 'date'\r\n ? (\r\n <>\r\n \r\n {props.placeholder}\r\n
\r\n {\r\n props.setOnChange!(props, data);\r\n props.onChange!(data, [], [] as any);\r\n props.render();\r\n }}\r\n focused={props.state.focused.id === props.placeholder ? props.state.focused.focused : false}\r\n onFocusChange={({ focused }) => {\r\n props.setState({ focused: { id: props.placeholder, focused } });\r\n props.render();\r\n }}\r\n numberOfMonths={1}\r\n displayFormat=\"DD/MM/YYYY\"\r\n isOutsideRange={(d) => {\r\n if (props.placeholder === t('fimOperacao') && props.state.dateValuePicker.startDate) {\r\n return d.isBefore(props.state.dateValuePicker.startDate);\r\n }\r\n return d.isAfter(props.state.dateValuePicker.endDate);\r\n }}\r\n placeholder={props.placeholder}\r\n />\r\n \r\n \r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n }\r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const FilterContainer = styled.div`\r\n display: flex;\r\n width: 100%;\r\n`;\r\n\r\nexport const ControlFilter = styled.div`\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n background-color: #ffffff;\r\n padding: 6px 10px;\r\n user-select: none;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n flex-wrap: nowrap;\r\n z-index: 10;\r\n &:hover {\r\n cursor: pointer;\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n svg path {\r\n fill: white !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const ContainerFilterOptions = styled.div`\r\n\r\n`;\r\n\r\nexport const Label = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-top: 6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n margin-left: 16px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n background-color: #fff;\r\n`;\r\n\r\nexport const StatusIcon = styled.div<{ color?, status?}>(\r\n ({ color, status }) => `\r\n width: 10px;\r\n height: 10px;\r\n margin-left: 5px;\r\n border-radius: 50%;\r\n border: 2px solid ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n background: ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n font-weight: bold;\r\n font-size: 0.8em;\r\n line-height: 18px;\r\n color: ${colors.White};\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n text-transform: capitalize;\r\n`,\r\n);\r\n","import { useEffect, useRef, useMemo } from 'react';\r\n\r\nimport moment from 'moment';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport { Box } from 'reflexbox';\r\n\r\nimport {\r\n Loader, Button, ActionButton, ModalWindow, Input, InputSearch,\r\n} from 'components';\r\nimport queryString from 'query-string';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { EditIcon } from 'icons';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport { colors } from 'styles/colors';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { useTranslation, Trans } from 'react-i18next';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { AdminLayout } from '../AdminLayout';\r\nimport {\r\n TableContainer,\r\n TableHead,\r\n TableBody,\r\n HeaderCell,\r\n DataCell,\r\n DataCellCenter,\r\n DataCellRight,\r\n Row,\r\n HeaderRow,\r\n CustomSelect,\r\n ChevronTop,\r\n ChevronBottom,\r\n StyledLink,\r\n HeaderCellOrder,\r\n} from './styles';\r\n\r\nimport 'moment/locale/pt-br';\r\n\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { Headers2 } from '~/pages/Analysis/Header';\r\nimport { Pagination } from '~/components/NewTable';\r\nimport { UtilFilter } from '~/pages/Analysis/Utilities/UtilityFilter';\r\nimport { StatusIcon } from '~/pages/Analysis/AnalysisLayout/styles';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nfunction sizeToByteConversion(size: number, measure: string) {\r\n switch (measure.toLowerCase()) {\r\n case 'kb':\r\n return size * 1024;\r\n case 'mb':\r\n return size * 1048576;\r\n case 'gb':\r\n return size * 1073741824;\r\n default:\r\n return size;\r\n }\r\n}\r\n\r\nfunction dynamicSort(property: string, sortOrder: '+'|'-') {\r\n return function (a, b) {\r\n let aa;\r\n let bb;\r\n if (property === 'line__total_f') {\r\n aa = sizeToByteConversion(parseFloat(a[property]?.split(' ')[0]), a[property]?.split(' ')[1]);\r\n bb = sizeToByteConversion(parseFloat(b[property]?.split(' ')[0]), b[property]?.split(' ')[1]);\r\n } else {\r\n aa = a[property];\r\n bb = b[property];\r\n }\r\n // equal items sort equally\r\n if (aa === bb) {\r\n return 0;\r\n }\r\n // nulls sort after anything else\r\n if (aa == null) {\r\n return 1;\r\n }\r\n if (bb == null) {\r\n return -1;\r\n }\r\n // otherwise...\r\n if (sortOrder === '+') {\r\n // if we're ascending, lowest sorts first\r\n return aa < bb ? -1 : 1;\r\n }\r\n // if descending, highest sorts first\r\n return aa < bb ? 1 : -1;\r\n };\r\n}\r\n\r\n// type SimCardItem = NonNullable[number]&{ consumptionPercent?: number }\r\ntype SimCardItem = {\r\n iccid: string\r\n onlineStatus: string\r\n soldplan: string\r\n lastConn: string | undefined\r\n lastDisc?: string|null\r\n consumption?: string|null\r\n clientId: number\r\n clientName: string\r\n unitId: number\r\n unitName: string\r\n accessPoint: string\r\n modem: string\r\n accessPointMAC: string\r\n repeaterMAC: string\r\n empresa: string\r\n consumptionPercent: number\r\n associationDate?: string|null\r\n stateId: number\r\n cityId: number\r\n}\r\n\r\nexport const SimCards = (): JSX.Element => {\r\n const history = useHistory();\r\n const queryPars = queryString.parse(history.location.search);\r\n const [state, render, setState] = useStateVar({\r\n simCardsList: [] as SimCardItem[],\r\n simCardsListFiltered: [] as SimCardItem[],\r\n loading: true,\r\n openModal: false,\r\n selectedSim: null as null|SimCardItem,\r\n searchState: '',\r\n orderColum: '',\r\n sortOrder: '+' as '+'|'-',\r\n resetSolicitado: [] as string[],\r\n pageSize: 40,\r\n currentPage: 1,\r\n selectedConnection: '' as string | string[],\r\n selectedState: '' as string | string[],\r\n selectedCity: '' as string | string[],\r\n selectedClientFilter: '' as string | string[],\r\n selectedUnit: '' as string | string[],\r\n });\r\n\r\n const linkBase = history.location.pathname;\r\n const { t } = useTranslation();\r\n\r\n useEffect(() => {\r\n fetchData();\r\n setState({ currentPage: 1 });\r\n }, [queryPars.empresa]);\r\n\r\n const getDataPerPage = useMemo(() => getPages(), [state.simCardsListFiltered, state.currentPage, state.pageSize]);\r\n\r\n function getPages() {\r\n return state.simCardsListFiltered.map((item, index) => ({ ...item, key: `${index} ${item.iccid}` })).slice((state.currentPage - 1) * state.pageSize, state.currentPage * state.pageSize);\r\n }\r\n const allTabs = [\r\n {\r\n title: 'TNS',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, empresa: 'tns' })}`,\r\n isActive: (queryPars.empresa === 'tns' || !queryPars.empresa),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'Meta',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, empresa: 'meta' })}`,\r\n isActive: (queryPars.empresa === 'meta'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'Vivo Kite',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, empresa: 'kite' })}`,\r\n isActive: queryPars.empresa === 'kite',\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'Todos',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, empresa: 'todos' })}`,\r\n isActive: (queryPars.empresa === 'todos'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n function openEditSimCard(itemToEdit: SimCardItem) {\r\n state.selectedSim = itemToEdit;\r\n state.openModal = true;\r\n render();\r\n }\r\n\r\n async function afterEditSim() {\r\n try {\r\n state.openModal = false;\r\n await fetchData();\r\n render();\r\n\r\n toast.success(t('sucesso'));\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n function setOrderColum(column: string) {\r\n if (state.orderColum !== column || state.sortOrder === '-') {\r\n setState({ simCardsListFiltered: state.simCardsListFiltered.sort(dynamicSort(column, '+')) });\r\n state.sortOrder = '+';\r\n } else {\r\n setState({ simCardsListFiltered: state.simCardsListFiltered.sort(dynamicSort(column, '-')) });\r\n state.sortOrder = '-';\r\n }\r\n setState({ currentPage: 1 });\r\n applyTextFilter();\r\n state.orderColum = column;\r\n render();\r\n }\r\n\r\n function chevron(column: string) {\r\n if (state.orderColum === column) {\r\n if (state.sortOrder === '+') {\r\n return ;\r\n }\r\n\r\n return ;\r\n }\r\n }\r\n\r\n function formatSimTns(response: ApiResps['/sims-v2']) {\r\n for (const sim of (response.tns || [])) {\r\n const [planSize, planMeasure] = sim.soldplan__consumption_f.split(' ');\r\n const [consumptionSize, consumptionMeasure] = sim.line__total_f.split(' ');\r\n let consumptionMB = 0;\r\n if (consumptionMeasure === 'GB') {\r\n consumptionMB = parseFloat(consumptionSize) * 1000;\r\n } else if (consumptionMeasure === 'B') {\r\n consumptionMB = parseFloat(consumptionSize) / 0.000001;\r\n } else {\r\n consumptionMB = parseFloat(consumptionSize);\r\n }\r\n let consumptionPercent = 0;\r\n if (parseFloat(consumptionSize) === 0) {\r\n consumptionPercent = 0;\r\n } else if (planMeasure === consumptionMeasure) {\r\n consumptionPercent = parseFloat(consumptionSize) * 100 / parseFloat(planSize);\r\n } else {\r\n const planSizeInBytes = sizeToByteConversion(parseFloat(planSize), planMeasure);\r\n const consumptionSizeInBytes = sizeToByteConversion(parseFloat(consumptionSize), consumptionMeasure);\r\n consumptionPercent = consumptionSizeInBytes * 100 / planSizeInBytes;\r\n }\r\n\r\n state.simCardsList.push({\r\n iccid: sim.iccid,\r\n onlineStatus: sim.status__name,\r\n soldplan: sim.soldplan__name,\r\n lastConn: sim.last_conn,\r\n lastDisc: sim.last_disc,\r\n consumption: sim.line__total_f,\r\n clientId: sim.client,\r\n clientName: sim.clientName,\r\n unitId: sim.unit,\r\n unitName: sim.unitName,\r\n accessPoint: sim.accessPoint,\r\n modem: sim.modem,\r\n accessPointMAC: sim.accessPointMAC,\r\n repeaterMAC: sim.repeaterMAC,\r\n empresa: 'TNS',\r\n consumptionPercent,\r\n consumptionMB,\r\n associationDate: sim.associationDate,\r\n cityId: sim.cityId,\r\n stateId: sim.stateId,\r\n });\r\n }\r\n }\r\n\r\n function getSoldPlanMeta(sim) {\r\n const soldplan = [] as string[];\r\n if (sim.operadora) {\r\n if (sim.operadora === '200') soldplan.push(t('vivo'));\r\n else soldplan.push(`Operadora-${sim.operadora}`);\r\n }\r\n if (sim.reset) {\r\n if (sim.reset >= 1000) soldplan.push(`${Math.round(sim.reset / 1000 * 10) / 10}GB`);\r\n else soldplan.push(`${formatNumberWithFractionDigits(Math.round(sim.reset))}MB`);\r\n }\r\n if (sim.mensalidade) {\r\n soldplan.push(`R$${formatNumberWithFractionDigits(sim.mensalidade.toFixed(2), { minimum: 0, maximum: 2 })}`);\r\n }\r\n return soldplan;\r\n }\r\n\r\n function formatSimMeta(response: ApiResps['/sims-v2']) {\r\n for (const sim of (response.meta || [])) {\r\n let consumption = null as string|null;\r\n let consumptionPercent = 0;\r\n let consumptionMB = 0;\r\n if (sim.reset && sim.saldo != null && sim.saldo <= sim.reset) {\r\n consumptionMB = sim.reset - sim.saldo;\r\n if (consumptionMB >= 1000) consumption = `${Math.round(consumptionMB / 1000 * 100) / 100} GB`;\r\n else consumption = `${Math.round(consumptionMB * 100) / 100} MB`;\r\n consumptionPercent = Math.round(consumptionMB / sim.reset * 100);\r\n }\r\n\r\n let onlineStatus = '';\r\n if (sim.online === '1') onlineStatus = t('online');\r\n else if (sim.online === '0') onlineStatus = t('offline');\r\n\r\n const soldplan = getSoldPlanMeta(sim);\r\n\r\n state.simCardsList.push({\r\n iccid: sim.iccid,\r\n onlineStatus,\r\n soldplan: soldplan.join(' '),\r\n lastConn: sim.ultimaConexao,\r\n lastDisc: null,\r\n consumption,\r\n clientId: sim.client,\r\n clientName: sim.clientName,\r\n unitId: sim.unit,\r\n unitName: sim.unitName,\r\n accessPoint: sim.accessPoint,\r\n modem: sim.modem,\r\n accessPointMAC: sim.accessPointMAC,\r\n repeaterMAC: sim.repeaterMAC,\r\n empresa: t('meta'),\r\n consumptionPercent,\r\n consumptionMB,\r\n associationDate: sim.associationDate,\r\n cityId: sim.cityId,\r\n stateId: sim.stateId,\r\n });\r\n }\r\n }\r\n\r\n function getSimOperatorVivo(sim) {\r\n const soldplan = [] as string[];\r\n if (sim.operator) {\r\n soldplan.push(sim.operator);\r\n if (sim.ratType === 1) {\r\n soldplan.push('3G');\r\n }\r\n else if (sim.ratType === 2) {\r\n soldplan.push('2G');\r\n }\r\n else if (sim.ratType === 5) {\r\n soldplan.push('3.5G');\r\n }\r\n else if (sim.ratType === 6) {\r\n soldplan.push('4G');\r\n }\r\n else if (sim.ratType === 8) {\r\n soldplan.push('NB-IoT');\r\n }\r\n }\r\n return soldplan;\r\n }\r\n\r\n function formatSimVivo(response: ApiResps['/sims-v2']) {\r\n for (const sim of (response.vivo || [])) {\r\n let onlineStatus = '';\r\n if (sim.gprsStatus?.status === 1) onlineStatus = t('online');\r\n else if (sim.gprsStatus?.status === 0) onlineStatus = t('offline');\r\n else if (sim.gprsStatus?.status === 2) onlineStatus = t('inativo');\r\n\r\n const soldplan = getSimOperatorVivo(sim);\r\n\r\n const lastConn = sim.gprsStatus?.status === 1 ? sim.gprsStatus.lastConnStart : '';\r\n const lastDisc = sim.gprsStatus?.status === 1 ? sim.gprsStatus.lastConnStop : '';\r\n const gb = 1073741824;\r\n const mb = 1048576;\r\n\r\n let consumption = null as string|null;\r\n const consumptionMB = Number((sim.consumptionMonthly.data.value / mb).toFixed(2));\r\n if (consumptionMB >= 1000) consumption = `${(sim.consumptionMonthly.data.value / gb).toFixed(2)} GB`;\r\n else if (consumptionMB === 0) consumption = '0.00 B';\r\n else consumption = `${consumptionMB} MB`;\r\n\r\n state.simCardsList.push({\r\n iccid: sim.iccid,\r\n onlineStatus,\r\n soldplan: soldplan.join(' '),\r\n lastConn,\r\n lastDisc,\r\n consumption,\r\n clientId: sim.client,\r\n clientName: sim.clientName,\r\n unitId: sim.unit,\r\n unitName: sim.unitName,\r\n accessPoint: sim.accessPoint,\r\n modem: sim.modem,\r\n accessPointMAC: sim.accessPointMAC,\r\n repeaterMAC: sim.repeaterMAC,\r\n empresa: t('VIVO'),\r\n consumptionPercent: 0,\r\n consumptionMB,\r\n associationDate: sim.associationDate,\r\n cityId: sim.cityId,\r\n stateId: sim.stateId,\r\n });\r\n }\r\n }\r\n const onPreviousPage = () => {\r\n if (state.currentPage > 1) {\r\n setState({ currentPage: state.currentPage - 1 });\r\n }\r\n };\r\n\r\n const onNextPage = () => {\r\n if (state.currentPage * state.pageSize < state.simCardsListFiltered.length) {\r\n setState({ currentPage: state.currentPage + 1 });\r\n }\r\n };\r\n async function fetchData() {\r\n try {\r\n state.simCardsListFiltered = state.simCardsList = [];\r\n state.loading = true; render();\r\n const response = await apiCall('/sims-v2', { solution: queryPars.empresa as ('tns' | 'meta' | 'kite' | 'todos') });\r\n\r\n formatSimTns(response);\r\n formatSimMeta(response);\r\n formatSimVivo(response);\r\n\r\n applyTextFilter();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n state.loading = false;\r\n render();\r\n }\r\n\r\n async function solicitarReset(item: { iccid: string, clientName: string, unitName: string, empresa: string }) {\r\n const {\r\n iccid, clientName, unitName, empresa,\r\n } = item;\r\n if (state.resetSolicitado.includes(iccid)) return;\r\n if (!window.confirm(`${t('temCertezaQueDesejaReiniciarSimcard')}\\n${unitName || clientName || iccid}`)) return;\r\n state.resetSolicitado.push(iccid);\r\n try {\r\n await apiCall('/sims/send-reset-request', {\r\n iccid, type: empresa,\r\n });\r\n toast.success(t('sucessoEnviarSolicitacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n state.resetSolicitado.shift();\r\n }\r\n\r\n function onApplyFilter() {\r\n setState({\r\n simCardsListFiltered: state.simCardsList.filter((dev) => (state.selectedState.length > 0 && state.selectedState.includes(dev.stateId?.toString())) || state.selectedState.length === 0)\r\n .filter((dev) => (state.selectedCity.length > 0 && state.selectedCity.includes(dev.cityId?.toString())) || state.selectedCity.length === 0)\r\n .filter((dev) => (state.selectedUnit.length > 0 && state.selectedUnit.includes(dev.unitId?.toString())) || state.selectedUnit.length === 0)\r\n .filter((dev) => (state.selectedClientFilter.length > 0 && state.selectedClientFilter.includes(dev.clientId?.toString())) || state.selectedClientFilter.length === 0)\r\n .filter((dev) => (state.selectedConnection.length > 0 && state.selectedConnection.includes(dev.onlineStatus.toLocaleUpperCase())) || state.selectedConnection.length === 0),\r\n });\r\n }\r\n\r\n function clearFilters() {\r\n state.selectedState = [];\r\n state.selectedCity = [];\r\n state.selectedUnit = [];\r\n state.selectedConnection = [];\r\n state.selectedClientFilter = [];\r\n }\r\n\r\n function applyTextFilter() {\r\n const searchState = state.searchState.trim().toLowerCase();\r\n state.simCardsListFiltered = state.simCardsList.filter((item) => (!searchState)\r\n || item.iccid && item.iccid.toLowerCase().includes(searchState)\r\n || item.onlineStatus && item.onlineStatus.toLowerCase().includes(searchState)\r\n || item.soldplan && item.soldplan.toLowerCase().includes(searchState)\r\n || item.clientName && item.clientName.toLowerCase().includes(searchState)\r\n || item.unitName && item.unitName.toLowerCase().includes(searchState)\r\n || item.accessPoint && item.accessPoint.toLowerCase().includes(searchState)\r\n || item.accessPointMAC && item.accessPointMAC.toLowerCase().includes(searchState)\r\n || item.modem && item.modem.toLowerCase().includes(searchState)\r\n || item.repeaterMAC && item.repeaterMAC.toLowerCase().includes(searchState)\r\n || item.empresa && item.empresa.toLowerCase().includes(searchState));\r\n state.simCardsListFiltered = state.simCardsListFiltered.sort(dynamicSort(state.orderColum, state.sortOrder));\r\n setState({ currentPage: 1 });\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {t('dielEnergiaConfiguracoes')}\r\n \r\n \r\n
\r\n \r\n
\r\n onApplyFilter()}\r\n setState={setState}\r\n clearFilter={clearFilters}\r\n listFilters={['estado', 'cidade', 'cliente', 'unidade', 'conexao']}\r\n optionsConnetionsName=\"Status\"\r\n optionsConnetions={[\r\n { value: 'ONLINE', name: t('online'), icon: },\r\n { value: 'INATIVO', name: t('inativo'), icon: },\r\n { value: 'OFFLINE', name: t('offline'), icon: },\r\n { value: 'BLOQUEADO', name: t('bloqueadoMinusculo'), icon: },\r\n { value: 'STANDBY', name: 'Stand By', icon: },\r\n ]}\r\n />\r\n {state.loading && (\r\n <>\r\n
\r\n \r\n \r\n )}\r\n {!state.loading && (\r\n
\r\n
\r\n \r\n {\r\n state.searchState = e.target.value;\r\n applyTextFilter();\r\n render();\r\n }}\r\n />\r\n \r\n
\r\n \r\n \r\n \r\n { setOrderColum('iccid'); render(); }}>\r\n ICCID\r\n {' '}\r\n { chevron('iccid') }\r\n {' '}\r\n \r\n { setOrderColum('onlineStatus'); render(); }}>\r\n {t('status')}\r\n {' '}\r\n { chevron('onlineStatus') }\r\n \r\n { setOrderColum('soldplan'); render(); }}>\r\n {t('plano')}\r\n {' '}\r\n { chevron('soldplan') }\r\n \r\n { setOrderColum('lastConn'); render(); }}>\r\n {t('ultimaConexao')}\r\n {' '}\r\n { chevron('lastConn') }\r\n \r\n { setOrderColum('lastDisc'); render(); }}>\r\n {t('ultimaDesconexao')}\r\n {' '}\r\n { chevron('lastDisc') }\r\n \r\n { setOrderColum('consumptionMB'); render(); }}>\r\n {t('consumo')}\r\n {' '}\r\n { chevron('consumptionMB') }\r\n \r\n { setOrderColum('clientName'); render(); }}>\r\n {t('cliente')}\r\n {' '}\r\n { chevron('clientName') }\r\n \r\n { setOrderColum('unitName'); render(); }}>\r\n {t('unidade')}\r\n {' '}\r\n { chevron('unitName') }\r\n \r\n { setOrderColum('associationDate'); render(); }}>\r\n
\r\n {t('dataAssociacao')}\r\n
\r\n {' '}\r\n { chevron('associationDate') }\r\n \r\n \r\n \r\n Datas de Renovação\r\n Mensal\r\n dos planos de Fornecedor:\r\n
\r\n TNS - Dia 01\r\n
\r\n Meta Telecom - Dia 20\r\n
\r\n Vivo Telefônica - Dia 24\r\n
\r\n
\r\n
\r\n \r\n
\r\n { setOrderColum('accessPoint'); render(); }}>\r\n {t('pontoAcesso')}\r\n {' '}\r\n { chevron('accessPoint') }\r\n \r\n { setOrderColum('modem'); render(); }}>\r\n {t('modem')}\r\n {' '}\r\n { chevron('modem') }\r\n \r\n { setOrderColum('accessPointMAC'); render(); }}>\r\n {t('macPontoAcesso')}\r\n {' '}\r\n { chevron('accessPointMAC') }\r\n \r\n { setOrderColum('repeaterMAC'); render(); }}>\r\n {t('macRepetidor')}\r\n {' '}\r\n { chevron('repeaterMAC') }\r\n \r\n { setOrderColum('empresa'); render(); }}>\r\n {t('empresa')}\r\n {' '}\r\n { chevron('empresa') }\r\n \r\n \r\n {t('solicitarReset')}\r\n \r\n \r\n
\r\n
\r\n \r\n {getDataPerPage.map((item) => (\r\n \r\n {item.iccid}\r\n {item.onlineStatus}\r\n {item.soldplan}\r\n {moment(item.lastConn).format('DD/MM/YYYY HH:mm:ss')}\r\n {(item.lastDisc && moment(item.lastDisc).format('DD/MM/YYYY HH:mm:ss')) || '-'}\r\n \r\n {formatNumberWithFractionDigits(item.consumption ?? 0, { minimum: 0, maximum: 2 })}\r\n \r\n {item.clientName || '-'}\r\n {item.unitId ? {item.unitName} : '-'}\r\n {(item.associationDate && moment(item.associationDate).format('DD/MM/YYYY HH:mm:ss')) || '-'}\r\n {item.accessPoint}\r\n {item.modem}\r\n {item.accessPointMAC}\r\n {item.repeaterMAC}\r\n {item.empresa}\r\n \r\n {(item.empresa === 'TNS' || item.empresa === 'VIVO') && (\r\n solicitarReset(item)} variant=\"blue-inv\">\r\n \r\n \r\n )}\r\n \r\n \r\n openEditSimCard(item)} variant=\"blue-inv\">\r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
\r\n \r\n {state.openModal && (\r\n \r\n { state.openModal = false; render(); }}\r\n onSuccess={afterEditSim}\r\n />\r\n \r\n )}\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nfunction FormEditItem(props: {\r\n simInfo: SimCardItem\r\n onSuccess: () => void\r\n onCancel: () => void\r\n}) {\r\n const { t } = useTranslation();\r\n const { simInfo, onSuccess, onCancel } = props;\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n comboClients: [] as {}[],\r\n comboUnits: [] as {}[],\r\n client: simInfo.clientName || '',\r\n unit: simInfo.unitName || '',\r\n clientId: simInfo.clientId || null,\r\n unitId: simInfo.unitId || null,\r\n accessPoint: simInfo.accessPoint || '',\r\n modem: simInfo.modem || '',\r\n accessPointMAC: simInfo.accessPointMAC || '',\r\n repeaterMAC: simInfo.repeaterMAC || '',\r\n associationDate: simInfo.associationDate || null,\r\n });\r\n\r\n useEffect(() => {\r\n if (state.comboClients.length === 0) {\r\n apiCall('/clients/get-clients-list', {}).then((response) => {\r\n state.comboClients = response.list.map((row) => ({ label: row.NAME, value: row.CLIENT_ID }));\r\n render();\r\n });\r\n }\r\n if (state.clientId) {\r\n loadUnitsClient(state.clientId);\r\n }\r\n }, [false]);\r\n\r\n async function confirm() {\r\n try {\r\n state.submitting = true;\r\n if (!state.clientId || !state.unitId) {\r\n toast.error(t('selecioneClienteEUnidade'));\r\n return;\r\n }\r\n render();\r\n const reqData = {\r\n ICCID: simInfo.iccid,\r\n CLIENT: state.clientId || null,\r\n UNIT: state.unitId || null,\r\n ACCESSPOINT: state.accessPoint || null,\r\n MODEM: state.modem || null,\r\n MACACCESSPOINT: state.accessPointMAC || null,\r\n MACREPEATER: state.repeaterMAC || null,\r\n ASSOCIATION_DATE: new Date(Date.now()).toISOString(),\r\n };\r\n await apiCall('/sims/set-sim-info', reqData);\r\n onSuccess();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n\r\n state.submitting = false;\r\n render();\r\n }\r\n\r\n const calculateAssociationDate = () => {\r\n if (state.unitId !== simInfo.unitId || state.associationDate === null) {\r\n return moment(new Date()).format('YYYY-MM-DD HH:mm:ss');\r\n }\r\n return moment(state.associationDate).format('YYYY-MM-DD HH:mm:ss');\r\n };\r\n\r\n const loadUnitsClient = (clientId) => {\r\n const reqCombos = { CLIENT_ID: clientId, units: true };\r\n apiCall('/dev/dev-info-combo-options', reqCombos)\r\n .then((response) => {\r\n state.comboUnits = response.units!.map((row) => ({ label: row.label, value: row.value }));\r\n render();\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n });\r\n };\r\n\r\n const onSelectClient = (item) => {\r\n state.client = item.label;\r\n state.clientId = item.value;\r\n state.unit = '';\r\n state.comboUnits = [];\r\n\r\n render();\r\n\r\n if (item && item.value != null) {\r\n loadUnitsClient(item.value);\r\n } else if (item === '') {\r\n state.unitId = null;\r\n }\r\n };\r\n\r\n return (\r\n
\r\n \r\n {\r\n state.unitId = item.value;\r\n state.unit = item.label;\r\n render();\r\n }}\r\n haveFuzzySearch\r\n disabled={!state.client}\r\n />\r\n { state.accessPoint = event.target.value; render(); }}\r\n />\r\n
\r\n { state.modem = event.target.value; render(); }}\r\n />\r\n
\r\n { state.accessPointMAC = event.target.value; render(); }}\r\n />\r\n
\r\n { state.repeaterMAC = event.target.value; render(); }}\r\n />\r\n
\r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport default withTransaction('SimCards', 'component')(SimCards);\r\n","import { useHistory } from 'react-router-dom';\r\nimport { Header, Headers2 } from '../../../Analysis/Header';\r\nimport queryString from 'query-string';\r\nimport { useRef } from 'react';\r\n\r\nexport const ProjetoBBLayout = ({ ...props }): JSX.Element => {\r\n const links = [\r\n {\r\n link: '/painel/projeto-bb/kpis',\r\n title: 'KPIs do Projeto',\r\n },\r\n {\r\n link: '/painel/projeto-bb/ans/recente',\r\n title: 'ANS',\r\n },\r\n {\r\n link: '/painel/projeto-bb/cronograma',\r\n title: 'Cronograma de Instalação',\r\n },\r\n {\r\n link: '/painel/projeto-bb/cadastroAC',\r\n title: 'Cadastro AC',\r\n },\r\n {\r\n link: '/painel/projeto-bb/nobreak',\r\n title: 'Cadastro Nobreak',\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const AnsLayout = ({ ...props }): JSX.Element => {\r\n const history = useHistory();\r\n const linkBase = history.location.pathname;\r\n const links = [\r\n {\r\n title: 'Recente',\r\n link: '/painel/projeto-bb/ans/recente',\r\n isActive: linkBase.includes('recente'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'Antiga',\r\n link: '/painel/projeto-bb/ans/antiga',\r\n isActive: linkBase.includes('antiga'),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n \r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nexport const PowerBIEmbedContainer = styled.div`\r\n overflow-x: hidden;\r\n overflow-y: scroll;\r\n width: 100%;\r\n height: 1000px;\r\n position: relative;\r\n border: 1px solid #CBCBCB;\r\n border-radius: 10px;\r\n`;\r\n\r\nexport const PowerBIEmbedTitle = styled.span`\r\nposition: absolute;\r\npadding-inline: 10px;\r\nwidth: 100%;\r\nheight: 25px;\r\nbackground-color: white;\r\nz-index: 5;\r\nborder-bottom: 1px solid #CBCBCB;\r\n`;\r\n","import { Helmet } from 'react-helmet';\r\nimport {\r\n Card,\r\n} from 'components';\r\n\r\nimport { AdminLayout } from '../../AdminLayout';\r\nimport { ProjetoBBLayout } from '../ProjetoBBLayout';\r\nimport { PowerBIEmbedContainer, PowerBIEmbedTitle } from '../styles';\r\nimport '../ProjetoBB.css';\r\nimport { PowerBIEmbed } from 'powerbi-client-react';\r\nimport { models } from 'powerbi-client';\r\nimport { useState } from 'react';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { ClientPanelLayout } from '~/pages/ClientPanel/ClientPanelLayout';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport function ProjetoBBKPIs(): JSX.Element {\r\n const [profile] = useState(getUserProfile);\r\n\r\n return (\r\n <>\r\n \r\n Diel Energia - Projeto BB KPIs\r\n \r\n {(profile.permissions.isAdminSistema)\r\n && }\r\n {((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller && profile.permissions.CLIENT_MANAGE.includes(145))\r\n && }\r\n {(profile.permissions.isAdminSistema || ((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller && profile.permissions.CLIENT_MANAGE.includes(145)))\r\n && (\r\n <>\r\n
\r\n \r\n
\r\n \r\n <>\r\n \r\n KPIs BB\r\n ',\r\n embedUrl: 'https://dielenergialtda749.sharepoint.com/:x:/s/PROJETO-BANCODOBRASIL/EYrrEYQhukxBhr0ublrGkPUBHTl_gK1zTb_3-JWdMZPbHA?e=4%3ApiYdph&fromShare=true&at=9&action=embedview',\r\n accessToken: '',\r\n tokenType: models.TokenType.Embed, // Use models.TokenType.Aad for SaaS embed\r\n settings: {\r\n panes: {\r\n filters: {\r\n expanded: false,\r\n visible: false,\r\n },\r\n },\r\n background: models.BackgroundType.Transparent,\r\n },\r\n }}\r\n eventHandlers={\r\n new Map([\r\n ['loaded', function () { console.log('Report loaded'); }],\r\n ['rendered', function () { console.log('Report rendered'); }],\r\n ['error', function (event) { console.log(event && event.detail); }],\r\n ['visualClicked', () => console.log('visual clicked')],\r\n ['pageChanged', (event) => console.log(event)],\r\n ])\r\n }\r\n cssClassName=\"Embed-container\"\r\n />\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default withTransaction('ProjetoBBKPIs', 'component')(ProjetoBBKPIs);\r\n","import { Helmet } from 'react-helmet';\r\nimport {\r\n Card,\r\n} from 'components';\r\nimport { AdminLayout } from '../../AdminLayout';\r\nimport { AnsLayout, ProjetoBBLayout } from '../ProjetoBBLayout';\r\nimport { PowerBIEmbedContainer, PowerBIEmbedTitle } from '../styles';\r\nimport '../ProjetoBB.css';\r\nimport { PowerBIEmbed } from 'powerbi-client-react';\r\nimport { models } from 'powerbi-client';\r\nimport { useState } from 'react';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { ClientPanelLayout } from '~/pages/ClientPanel/ClientPanelLayout';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport function ProjetoBBANS(): JSX.Element {\r\n const [profile] = useState(getUserProfile);\r\n return (\r\n <>\r\n \r\n Diel Energia - Projeto BB ANS\r\n \r\n {(profile.permissions.isAdminSistema)\r\n && }\r\n {((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller)\r\n && }\r\n {(profile.permissions.isAdminSistema || ((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller && profile.permissions.CLIENT_MANAGE.includes(145)))\r\n && (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n ANS - BANCO DO BRASIL\r\n ',\r\n embedUrl: 'https://dielenergialtda749.sharepoint.com/:x:/s/PROJETO-BANCODOBRASIL/EabBfIhP1tRDtDUvTe0pQEMB4yXEsLiH5aTG90lca01b6Q?e=4%3A7H1RRc&fromShare=true&at=9&action=embedview',\r\n accessToken: '',\r\n tokenType: models.TokenType.Embed, // Use models.TokenType.Aad for SaaS embed\r\n settings: {\r\n panes: {\r\n filters: {\r\n expanded: false,\r\n visible: false,\r\n },\r\n },\r\n background: models.BackgroundType.Transparent,\r\n },\r\n }}\r\n eventHandlers={\r\n new Map([\r\n ['loaded', function () { console.log('Report loaded'); }],\r\n ['rendered', function () { console.log('Report rendered'); }],\r\n ['error', function (event) { console.log(event && event.detail); }],\r\n ['visualClicked', () => console.log('visual clicked')],\r\n ['pageChanged', (event) => console.log(event)],\r\n ])\r\n }\r\n cssClassName=\"Embed-container\"\r\n />\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default withTransaction('ProjetoBBANS', 'component')(ProjetoBBANS);\r\n","import { Helmet } from 'react-helmet';\r\nimport {\r\n Card,\r\n} from 'components';\r\n\r\nimport { AdminLayout } from '../../AdminLayout';\r\nimport { ProjetoBBLayout } from '../ProjetoBBLayout';\r\nimport { PowerBIEmbedContainer, PowerBIEmbedTitle } from '../styles';\r\nimport '../ProjetoBB.css';\r\nimport { PowerBIEmbed } from 'powerbi-client-react';\r\nimport { models } from 'powerbi-client';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useState } from 'react';\r\nimport { ClientPanelLayout } from '~/pages/ClientPanel/ClientPanelLayout';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport function ProjetoBBCronograma(): JSX.Element {\r\n const [profile] = useState(getUserProfile);\r\n return (\r\n <>\r\n \r\n Diel Energia - Projeto BB Cronograma\r\n \r\n {(profile.permissions.isAdminSistema)\r\n && }\r\n {((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller)\r\n && }\r\n {(profile.permissions.isAdminSistema || ((!profile.manageAllClients) && (profile.manageSomeClient) && !profile.permissions.isInstaller && profile.permissions.CLIENT_MANAGE.includes(145)))\r\n && (\r\n <>\r\n
\r\n \r\n
\r\n \r\n <>\r\n \r\n REPORT BANCO DO BRASIL - Resumo\r\n ',\r\n embedUrl: 'https://dielenergialtda749.sharepoint.com/:x:/s/PROJETO-BANCODOBRASIL/EdJ3Mf6TM39CvxE4sejqsAMBKYdOD3sAzJvJP47IIV7wNA?rtime=X6BHYBbx20g&action=embedview',\r\n accessToken: '',\r\n tokenType: models.TokenType.Embed, // Use models.TokenType.Aad for SaaS embed\r\n settings: {\r\n panes: {\r\n filters: {\r\n expanded: false,\r\n visible: false,\r\n },\r\n },\r\n background: models.BackgroundType.Transparent,\r\n },\r\n }}\r\n eventHandlers={\r\n new Map([\r\n ['loaded', function () { console.log('Report loaded'); }],\r\n ['rendered', function () { console.log('Report rendered'); }],\r\n ['error', function (event) { console.log(event && event.detail); }],\r\n ['visualClicked', () => console.log('visual clicked')],\r\n ['pageChanged', (event) => console.log(event)],\r\n ])\r\n }\r\n cssClassName=\"Embed-container\"\r\n />\r\n \r\n\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default withTransaction('ProjetoBBCronograma', 'component')(ProjetoBBCronograma);\r\n","import styled from 'styled-components';\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 16px;\r\n height: 16px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 12px;\r\n height: 12px;\r\n }\r\n`;\r\n\r\nexport const IconBiggerWrapper = styled.div`\r\n display: inline-block;\r\n width: 20px;\r\n height: 20px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 16px;\r\n height: 16px;\r\n }\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocketLazy } from 'helpers/wsConnection';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n NoSignalIcon,\r\n BadSignalIcon,\r\n RegularSignalIcon,\r\n GoodSignalIcon,\r\n GreatSignalIcon,\r\n} from '../../icons';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\ninterface ComponentProps {\r\n DEV_ID?: string|null,\r\n isAutomation: boolean,\r\n DEV_AUT?: string|null,\r\n DUT_ID: string|null,\r\n}\r\n\r\nexport const AssetConnection = (props: ComponentProps): JSX.Element => {\r\n const [state, render] = useStateVar(() => ({\r\n RSSI: null as string|null,\r\n STATUS: null as string|null,\r\n }));\r\n const { t } = useTranslation();\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n wsl.start(onWsOpen, onWsMessage, beforeWsClose);\r\n } catch (err) {\r\n toast.error(t('erroStatusDoDispositivo'));\r\n console.log(err);\r\n }\r\n }());\r\n }, [props.DEV_ID]);\r\n\r\n const wsl = useWebSocketLazy();\r\n function onWsOpen(wsConn) {\r\n if (!props.DEV_ID) return;\r\n if (!props.isAutomation && props.DEV_ID.startsWith('DAC')) wsConn.send({ type: 'subscribeTelemetry', data: { dac_id: props.DEV_ID } });\r\n else if (props.isAutomation && props.DEV_AUT && (props.DEV_AUT.startsWith('DAM') || props.DEV_AUT.startsWith('DAC'))) wsConn.send({ type: 'subscribeStatus', data: { dam_id: props.DEV_ID } });\r\n else if (props.isAutomation && props.DEV_ID.startsWith('DRI')) wsConn.send({ type: 'driSubscribeRealTime', data: { DRI_ID: props.DEV_ID } });\r\n else if (props.isAutomation && props.DEV_ID.startsWith('DMT')) wsConn.send({ type: 'dmtSubscribeRealTime', data: { DMT_CODE: props.DEV_ID } });\r\n else if (props.isAutomation && props.DEV_ID.startsWith('DAL')) wsConn.send({ type: 'dalSubscribeRealTime', data: { DAL_CODE: props.DEV_ID } });\r\n else wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: props.DEV_ID } });\r\n }\r\n\r\n const verifyAndUpdateDataStatus = (payload) => {\r\n if (payload.data.status) {\r\n state.STATUS = payload.data.status;\r\n }\r\n };\r\n\r\n function handleDamStatusMessage(payload) {\r\n if (payload.type === 'damStatus' && payload.data.dev_id === props.DEV_ID) {\r\n verifyAndUpdateDataStatus(payload);\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n render();\r\n }\r\n }\r\n\r\n function handleDacTelemetryMessage(payload) {\r\n if (payload.type === 'dacTelemetry' && payload.data.dac_id === props.DEV_ID) {\r\n verifyAndUpdateDataStatus(payload);\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n render();\r\n }\r\n }\r\n\r\n function handleDacOnlineStatusMessage(payload) {\r\n if (payload.type === 'dacOnlineStatus' && payload.data.dac_id === props.DEV_ID) {\r\n verifyAndUpdateDataStatus(payload);\r\n render();\r\n }\r\n }\r\n\r\n function handleDevsTelemetryMessage(payload) {\r\n if (\r\n (payload.type === 'dutTelemetry' || payload.type === 'driTelemetry' || payload.type === 'dalTelemetry' || payload.type === 'dmtTelemetry')\r\n && payload.data.dev_id === props.DEV_ID\r\n ) {\r\n verifyAndUpdateDataStatus(payload);\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n render();\r\n }\r\n }\r\n\r\n function onWsMessage(payload) {\r\n if (!payload) return;\r\n handleDamStatusMessage(payload);\r\n handleDacTelemetryMessage(payload);\r\n handleDacOnlineStatusMessage(payload);\r\n handleDevsTelemetryMessage(payload);\r\n }\r\n\r\n function beforeWsClose(wsConn) {\r\n if (!props.DEV_ID) return;\r\n if (!props.isAutomation && props.DEV_ID) wsConn.send({ type: 'subscribeTelemetry', data: {} });\r\n else if (props.isAutomation && props.DEV_AUT && (props.DEV_AUT.startsWith('DAM') || props.DEV_AUT?.startsWith('DAC'))) wsConn.send({ type: 'unsubscribeStatus' });\r\n else if (props.isAutomation && props.DUT_ID) wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n else if (props.isAutomation && props.DEV_ID.startsWith('DRI')) wsConn.send({ type: 'driUnsubscribeRealTime' });\r\n else if (props.isAutomation && props.DEV_ID.startsWith('DMT')) wsConn.send({ type: 'dmtUnsubscribeRealTime' });\r\n }\r\n\r\n function rssiDesc(RSSI: number, status: string) {\r\n if (RSSI < 0 && status === 'ONLINE') {\r\n if (RSSI > -50) return 'Excelente';\r\n if (RSSI > -60) return 'Bom';\r\n if (RSSI > -70) return 'Regular';\r\n return 'Ruim';\r\n }\r\n return '-';\r\n }\r\n\r\n function formatRssiIcon(rssi: string|null) {\r\n switch (rssi) {\r\n case 'Excelente': return ;\r\n case 'Bom': return ;\r\n case 'Regular': return ;\r\n case 'Ruim': return ;\r\n default: return ;\r\n }\r\n }\r\n\r\n function rssiText() {\r\n return state.RSSI || '-';\r\n }\r\n\r\n return (\r\n <>\r\n {(rssiText() != null)\r\n && (\r\n formatRssiIcon(state.RSSI)\r\n )}\r\n \r\n );\r\n};\r\n","import { useEffect, useState } from 'react';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { Flex } from 'reflexbox';\r\nimport { IconWrapper, IconBiggerWrapper } from './styles';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { AssetConnection } from 'components/AssetConnection';\r\nimport { formatHealthIcon, healthLevelColor } from 'components/HealthIcon';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n BoxIcon,\r\n LayersIcon,\r\n ChipIcon,\r\n} from '../../icons';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { position } from 'html2canvas/dist/types/css/property-descriptors/position';\r\n\r\ninterface ComponentProps {\r\n assets: {\r\n ASSET_ID: number,\r\n DAT_ID: string,\r\n AST_TYPE: string,\r\n AST_DESC: string,\r\n DEV_ID: string|null,\r\n H_INDEX: number|null,\r\n AST_ROLE_NAME: string,\r\n AST_ROLE_INDEX: number\r\n selected: boolean,\r\n rssiText: string,\r\n } [],\r\n AUTOM_ID: string|null,\r\n DEV_AUT: string|null,\r\n DUT_ID: string|null,\r\n GROUP_NAME: string|null,\r\n GROUP_ID: string,\r\n isAutomationelected: boolean,\r\n isGroupSelected: boolean,\r\n onHandleSelectCard,\r\n}\r\n\r\nexport const AssetTree = (props: ComponentProps): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const [state, render] = useStateVar(() => ({\r\n assets: props.assets,\r\n automationSelected: props.isAutomationelected,\r\n groupSelected: props.isGroupSelected,\r\n isSelected: false,\r\n }));\r\n\r\n // position -1 means selected automation and -2 means selected group\r\n function selectCard(position: number) {\r\n state.isSelected = true;\r\n state.assets.forEach((asset, index) => asset.selected = position === index);\r\n state.automationSelected = position === -1;\r\n state.groupSelected = position === -2;\r\n props.onHandleSelectCard(position);\r\n render();\r\n }\r\n\r\n function splitUrl(url: string) {\r\n const partes = url.split('/');\r\n const index = partes.indexOf('ativos');\r\n if (index !== -1 && index + 1 < partes.length) {\r\n return partes[index + 1];\r\n }\r\n return null;\r\n }\r\n\r\n useEffect(() => {\r\n if (!state.isSelected) {\r\n let position;\r\n const machineId = splitUrl(history.location.pathname);\r\n if (!machineId) {\r\n position = -2;\r\n state.groupSelected = true;\r\n state.automationSelected = false;\r\n state.assets.forEach((asset) => asset.selected = false);\r\n }\r\n else if (props.AUTOM_ID === machineId) {\r\n position = -1;\r\n state.groupSelected = false;\r\n state.automationSelected = true;\r\n state.assets.forEach((asset) => asset.selected = false);\r\n }\r\n else {\r\n const assetfilter = state.assets.filter((asset) => String(asset.ASSET_ID) === machineId || asset.DEV_ID === machineId);\r\n position = assetfilter.length > 0 ? state.assets.indexOf(assetfilter[0]) : -1;\r\n state.groupSelected = false;\r\n state.assets.forEach((asset, index) => asset.selected = position === index);\r\n }\r\n props.onHandleSelectCard(position);\r\n render();\r\n }\r\n state.isSelected = false;\r\n }, [history.location.pathname]);\r\n\r\n function borderCard(isSelected: boolean) {\r\n return !isSelected ? '1px solid lightgrey' : '2px solid #363BC4';\r\n }\r\n\r\n function borderLeftCard(isSelected: boolean) {\r\n return !isSelected ? '1px solid lightgrey' : '4px solid #363BC4';\r\n }\r\n\r\n function cardName(DAT_ID: string, DEV_ID: string|null) {\r\n const devIdText = DEV_ID ? `/${DEV_ID}` : '';\r\n if (DAT_ID) return `${DAT_ID}${devIdText}`;\r\n return DEV_ID;\r\n }\r\n\r\n function cardRootDescription(name: string|null, maxSize: number) {\r\n if (!name) return null;\r\n const overExtended = name.length > maxSize;\r\n const nameDisplay = !overExtended ? name : `${name.substring(0, maxSize)}...`;\r\n return (\r\n <>\r\n \r\n \r\n {name}\r\n \r\n
\r\n {overExtended && (\r\n \r\n \r\n \r\n {name}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n function formatItemIcon(type: string) {\r\n switch (type) {\r\n case 'Group': return ;\r\n case 'Asset': return ;\r\n case 'Automation': return ;\r\n default: return null;\r\n }\r\n }\r\n\r\n function shouldShowHealthIcon(asset: (typeof state.assets)[number]) {\r\n return props.AUTOM_ID === asset.DEV_ID\r\n || asset.DEV_ID?.startsWith('DAC'); // DACs sempre mostram ícone de saúde se existir\r\n }\r\n\r\n return (\r\n \r\n \r\n selectCard(-2)}\r\n >\r\n \r\n \r\n ▼\r\n \r\n \r\n \r\n \r\n {formatItemIcon('Group')}\r\n \r\n \r\n \r\n {cardRootDescription(props.GROUP_NAME, 36)}\r\n {profile.manageAllClients && (\r\n \r\n {`ID${props.GROUP_ID}`}\r\n \r\n )}\r\n \r\n \r\n \r\n {state.assets.map((asset, index) => (\r\n \r\n
\r\n
\r\n selectCard(index)}\r\n >\r\n \r\n \r\n {formatItemIcon('Asset')}\r\n \r\n \r\n \r\n \r\n {cardRootDescription(`${asset.AST_DESC}`, 20)}\r\n {profile.manageAllClients && (\r\n
\r\n {cardName(asset.DAT_ID, asset.DEV_ID)}\r\n
\r\n )}\r\n \r\n \r\n {asset.H_INDEX && shouldShowHealthIcon(asset)\r\n && (\r\n \r\n \r\n \r\n \r\n \r\n {profile.manageAllClients && (\r\n \r\n \r\n \r\n )}\r\n \r\n {formatHealthIcon(asset.H_INDEX)}\r\n \r\n \r\n \r\n )}\r\n {!asset.H_INDEX\r\n && (\r\n \r\n \r\n \r\n \r\n \r\n {profile.manageAllClients && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n ))}\r\n {props.AUTOM_ID && (\r\n \r\n selectCard(-1)}\r\n >\r\n \r\n \r\n {formatItemIcon('Automation')}\r\n \r\n \r\n \r\n {cardRootDescription(t('descricaoRaizCartaoArvoreAtivos'), 20)}\r\n {profile.manageAllClients && (\r\n \r\n {props.AUTOM_ID}\r\n \r\n )}\r\n \r\n {profile.manageAllClients && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { colors } from 'styles/colors';\r\n\r\nexport const Data = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 16px;\r\n`;\r\nexport const DataText = styled.span<{ fontWeight? }>(\r\n ({ color = colors.Grey400, fontWeight = 'normal' }) => `\r\n font-size: 12px;\r\n font-weight: ${fontWeight};\r\n color: ${color};\r\n`,\r\n);\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 21px;\r\n height: 27px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 21px;\r\n height: 27px;\r\n }\r\n`;\r\n\r\nexport const StatusBox = styled.div<{ color?, status? }>(\r\n ({ color, status }) => `\r\n width: 80px;\r\n height: 25px;\r\n margin-left: 5px;\r\n border-radius: 5px;\r\n border: 2px solid ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n background: ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n font-weight: bold;\r\n font-size: 0.8em;\r\n line-height: 18px;\r\n color: ${colors.White};\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n text-transform: capitalize;\r\n`,\r\n);\r\n","import { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { getCachedDevInfo } from 'helpers/cachedStorage';\r\nimport { useWebSocketLazy } from 'helpers/wsConnection';\r\nimport { Flex } from 'reflexbox';\r\nimport { useTranslation } from 'react-i18next';\r\nimport i18n from 'i18n';\r\nimport {\r\n IconWrapper,\r\n Data,\r\n DataText,\r\n StatusBox,\r\n} from './styles';\r\nimport { colors } from 'styles/colors';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '../../providers';\r\n\r\nimport {\r\n NoSignalIcon,\r\n BadSignalIcon,\r\n RegularSignalIcon,\r\n GoodSignalIcon,\r\n GreatSignalIcon,\r\n} from '../../icons';\r\n\r\ninterface ComponentProps {\r\n DEV_ID: string|null,\r\n isAutomation: boolean,\r\n DEV_AUT: string|null,\r\n DUT_ID: string|null,\r\n withoutMarginTop?: boolean\r\n onlyIcon?: boolean\r\n}\r\n\r\nconst getLteQuality = (value: number, status: string | null) => {\r\n if (value < 0 && status === 'ONLINE') {\r\n if (value <= -100) return 'Ruim';\r\n if (value <= -90 && value > -100) return 'Regular';\r\n if (value < -80 && value > -90) return 'Bom';\r\n if (value >= -80) return 'Excelente';\r\n }\r\n\r\n return null;\r\n};\r\n\r\nexport const AssetStatus = (props: ComponentProps): JSX.Element => {\r\n const [state, render] = useStateVar(() => ({\r\n TIMESTAMP: null,\r\n LAST_TELEMETRY: null as string|null,\r\n STATUS: null as string|null,\r\n RSSI: null as string|null,\r\n oldDate: false as boolean,\r\n lteQuality: '' as string,\r\n }));\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const { t } = useTranslation();\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n if (props.DEV_ID) {\r\n const devInfo = (await getCachedDevInfo(props.DEV_ID, { forceFresh: true }))!;\r\n\r\n if (devInfo.lastMessageTS) state.LAST_TELEMETRY = devInfo.lastMessageTS;\r\n\r\n const lteNetworkRsrpQuality = devInfo?.LTE_NETWORK && devInfo?.LTE_RSRP && getLteQuality(devInfo?.LTE_RSRP, devInfo?.status);\r\n state.lteQuality = lteNetworkRsrpQuality;\r\n\r\n render();\r\n }\r\n wsl.start(onWsOpen, onWsMessage, beforeWsClose);\r\n } catch (err) {\r\n toast.error(t('erroDadosDispositivo'));\r\n console.log(err);\r\n }\r\n }());\r\n }, [props.DEV_ID]);\r\n\r\n const wsl = useWebSocketLazy();\r\n function onWsOpen(wsConn) {\r\n if (!props.DEV_ID) return;\r\n if (!props.isAutomation && props.DEV_ID.startsWith('DAC')) wsConn.send({ type: 'subscribeTelemetry', data: { dac_id: props.DEV_ID } });\r\n else if (props.isAutomation && props.DEV_AUT && (props.DEV_AUT.startsWith('DAM') || props.DEV_AUT.startsWith('DAC'))) wsConn.send({ type: 'subscribeStatus', data: { dam_id: props.DEV_AUT } });\r\n else if (props.isAutomation && props.DEV_AUT && props.DEV_AUT.startsWith('DRI')) wsConn.send({ type: 'driSubscribeRealTime', data: { DRI_ID: props.DEV_AUT } });\r\n else if (props.isAutomation && props.DEV_AUT && props.DEV_AUT.startsWith('DMT')) wsConn.send({ type: 'dmtSubscribeRealTime', data: { DMT_CODE: props.DEV_AUT } });\r\n else if (props.isAutomation && props.DEV_AUT && props.DEV_AUT.startsWith('DAL')) wsConn.send({ type: 'dalSubscribeRealTime', data: { DAL_CODE: props.DEV_AUT } });\r\n else wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: props.DEV_ID } });\r\n }\r\n\r\n function handleDacIdMessage(payload) {\r\n if (payload.data.dac_id === props.DEV_ID) {\r\n if (payload.type === 'dacTelemetry') {\r\n verifyAndUpdateDataStatusAndRSSI(payload);\r\n }\r\n if (payload.type === 'dacOnlineStatus') {\r\n verifyAndUpdateDataStatus(payload);\r\n render();\r\n }\r\n }\r\n }\r\n\r\n function handleDevIdMessage(payload) {\r\n if (payload.data.dev_id === props.DEV_ID) {\r\n if (payload.type === 'damStatus') {\r\n if (payload.data.deviceTimestamp) state.TIMESTAMP = payload.data.deviceTimestamp;\r\n verifyAndUpdateDataStatusAndRSSI(payload);\r\n }\r\n if (payload.type === 'dutTelemetry') {\r\n verifyAndUpdateDataStatusAndRSSI(payload);\r\n render();\r\n }\r\n if (payload.type === 'dmtTelemetry') {\r\n verifyAndUpdateDataStatusAndRSSI(payload);\r\n render();\r\n }\r\n if (payload.type === 'driTelemetry') {\r\n verifyAndUpdateDataStatusAndRSSI(payload);\r\n }\r\n if (payload.type === 'dalTelemetry') {\r\n verifyAndUpdateDataStatusAndRSSI(payload);\r\n }\r\n }\r\n }\r\n\r\n function onWsMessage(payload) {\r\n if (!payload) return;\r\n handleDacIdMessage(payload);\r\n handleDevIdMessage(payload);\r\n }\r\n\r\n const verifyAndUpdateDataStatus = (payload) => {\r\n if (payload.data.status) state.STATUS = payload.data.status;\r\n if (payload.data.timestamp || payload.data.deviceTimestamp) {\r\n const timestamp = payload.data.timestamp || payload.data.deviceTimestamp;\r\n const data = moment(timestamp);\r\n payload.data.timestamp = data;\r\n state.LAST_TELEMETRY = payload.data.timestamp;\r\n checkLastTemetry(state.LAST_TELEMETRY);\r\n }\r\n };\r\n\r\n const verifyAndUpdateDataStatusAndRSSI = (payload) => {\r\n verifyAndUpdateDataStatus(payload);\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n else {\r\n state.RSSI = state.lteQuality || null;\r\n }\r\n render();\r\n };\r\n\r\n function beforeWsClose(wsConn) {\r\n if (!props.DEV_ID) return;\r\n if (!props.isAutomation && props.DEV_ID) wsConn.send({ type: 'subscribeTelemetry', data: {} });\r\n else if (props.isAutomation && props.DEV_AUT && (props.DEV_AUT.startsWith('DAM') || props.DEV_AUT?.startsWith('DAC'))) wsConn.send({ type: 'unsubscribeStatus' });\r\n else if (props.isAutomation && props.DUT_ID) wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n else if (props.isAutomation && props.DEV_AUT && (props.DEV_AUT.startsWith('DRI'))) wsConn.send({ type: 'driUnsubscribeRealTime' });\r\n else if (props.isAutomation && props.DEV_AUT && (props.DEV_AUT.startsWith('DMT'))) wsConn.send({ type: 'dmtUnsubscribeRealTime' });\r\n }\r\n\r\n function rssiDesc(RSSI: number, status: string) {\r\n if (RSSI < 0 && status === 'ONLINE') {\r\n if (RSSI > -50) return t('excelente');\r\n if (RSSI > -60) return t('bom');\r\n if (RSSI > -70) return t('regular');\r\n return t('ruim');\r\n }\r\n return '-';\r\n }\r\n\r\n function formatRssiIcon(rssi: string) {\r\n switch (rssi) {\r\n case t('excelente'): return ;\r\n case t('bom'): return ;\r\n case t('regular'): return ;\r\n case t('ruim'): return ;\r\n default: return ;\r\n }\r\n }\r\n\r\n function statusText() {\r\n return (!state.oldDate && state.STATUS) || 'OFFLINE';\r\n }\r\n\r\n function rssiText() {\r\n return (!state.oldDate && state.RSSI) || '-';\r\n }\r\n\r\n function lastTelemetryText() {\r\n return (state.LAST_TELEMETRY && moment(state.LAST_TELEMETRY).format('lll')) || t('semInformacao');\r\n }\r\n\r\n function checkLastTemetry(lastTelemetry:string | null) {\r\n if (lastTelemetry) {\r\n const dateLastTelemetry = new Date(lastTelemetry);\r\n const dateCurrent = new Date();\r\n const dateMil = dateCurrent.getTime() - dateLastTelemetry.getTime();\r\n const dateDays = dateMil / (1000 * 60 * 60 * 24);\r\n\r\n if (dateDays > 7) {\r\n state.oldDate = true;\r\n } else {\r\n state.oldDate = false;\r\n }\r\n }\r\n }\r\n\r\n if (props.onlyIcon) {\r\n return (\r\n \r\n {t('status')}\r\n \r\n {formatRssiIcon(rssiText())}\r\n \r\n
\r\n );\r\n }\r\n const isDesktop = window.matchMedia('(min-width: 1039px)');\r\n const isMobile = !isDesktop.matches;\r\n return (\r\n \r\n \r\n
\r\n \r\n \r\n {t('status')}\r\n \r\n {statusText()}\r\n \r\n
\r\n
\r\n\r\n {(props.DEV_ID && props.DEV_ID.startsWith('DRI')) && (\r\n \r\n
\r\n \r\n \r\n {`${t('intensidade')}:`}\r\n \r\n
\r\n {(!state.oldDate && state.RSSI && state.RSSI !== '-') ? state.RSSI : t('semSinal')}\r\n
\r\n
\r\n
\r\n )}\r\n\r\n \r\n
\r\n {(rssiText() != null)\r\n && (\r\n \r\n {formatRssiIcon(rssiText())}\r\n \r\n )}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n \r\n {t('ultimaLeitura')}\r\n \r\n \r\n {lastTelemetryText()}\r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { colors } from 'styles/colors';\r\n\r\nexport const Card = styled.div`\r\n padding: 32px 0 32px 32px;\r\n margin-top: 24px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\nexport const Data = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 16px;\r\n`;\r\nexport const DataText = styled.span<{ fontWeight? }>(\r\n ({ color = colors.Grey400, fontWeight = 'normal' }) => `\r\n font-size: 12px;\r\n font-weight: ${fontWeight};\r\n color: ${color};\r\n`,\r\n);\r\nexport const Title = styled.h1`\r\n font-size: 1.25em;\r\n color: #363BC4;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n`;\r\n\r\nexport const StatusBox = styled.div<{ color?, status? }>(\r\n ({ color, status }) => `\r\n width: 80px;\r\n height: 25px;\r\n margin-left: 5px;\r\n border-radius: 5px;\r\n border: 2px solid ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n background: ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n font-weight: bold;\r\n font-size: 0.8em;\r\n line-height: 18px;\r\n color: ${colors.White};\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n text-transform: capitalize;\r\n`,\r\n);\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 21px;\r\n height: 27px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 21px;\r\n height: 27px;\r\n }\r\n`;\r\n","import { ChangeEvent, useEffect } from 'react';\r\nimport { t } from 'i18next';\r\nimport { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Input, Loader, RadioButton, StatusBox, LayerBackgroundModal, Card, Checkbox,\r\n} from 'components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { getDayProgDesc } from 'helpers/scheduleData';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocketLazy, WSConn } from 'helpers/wsConnection';\r\nimport {\r\n TrashIcon, EditIcon, CheckboxIcon, CloseIcon, TermometerIcon,\r\n} from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\nimport { colors } from 'styles/colors';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport function SchedulesList(props: {\r\n damId: string\r\n devSched: FullProg_v4,\r\n wantDelException: ((date: string) => void)|null,\r\n // wantSaveVent: ((ventInput: string) => void)|null,\r\n wantSaveVent: ((ventTime: { begin: string, end: string }) => void)|null,\r\n wantAddProg: (() => void)|null,\r\n wantEditDay: ((day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => void)|null,\r\n wantRemoveDay: ((day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => void)|null,\r\n isLoading: boolean,\r\n hideId?: boolean,\r\n readOnly?: boolean,\r\n assetLayout?: boolean,\r\n}): JSX.Element {\r\n const {\r\n damId, devSched, wantDelException, wantSaveVent, wantAddProg, wantEditDay, wantRemoveDay, isLoading, hideId,\r\n } = props;\r\n const [state, render, setState] = useStateVar({\r\n devInfo: getCachedDevInfoSync(damId),\r\n editingVentilation: false,\r\n submittingVentilation: false,\r\n ventInput: '',\r\n ventTime: {} as { begin: string, end: string },\r\n dayProgs: [] as {\r\n day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun',\r\n dayName: string,\r\n text: string,\r\n isBlank: boolean,\r\n }[],\r\n excepts: [] as { dateYMD: string, date: string, text: string }[],\r\n ecoModeCfg: null as null|string,\r\n relDutInfo: null as null|{\r\n REL_DUT_ID: string,\r\n ROOM_DESC?: string,\r\n TUSEMIN?: number,\r\n Temperature?: number,\r\n status?: string,\r\n },\r\n damRealTimeInfo: {} as null|{\r\n Temperature?: null|number,\r\n status?: null|string,\r\n },\r\n });\r\n const weekDaysList = {\r\n mon: t('diasDaSemana.seg'),\r\n tue: t('diasDaSemana.ter'),\r\n wed: t('diasDaSemana.qua'),\r\n thu: t('diasDaSemana.qui'),\r\n fri: t('diasDaSemana.sex'),\r\n sat: t('diasDaSemana.sab'),\r\n sun: t('diasDaSemana.dom'),\r\n };\r\n\r\n const ecoModeCfgs: { [k: string]: string } = {\r\n 'eco-D': t('desligar'),\r\n 'eco-V': t('ventilar'),\r\n 'eco-C1-V': t('desligarCondensadora2DepoisVentilar'),\r\n 'eco-C2-V': t('desligarCondensadora1DepoisVentilar'),\r\n };\r\n\r\n const lws = useWebSocketLazy();\r\n useEffect(() => {\r\n // if (state.relatedDutId) {\r\n // return wsConn.addListener(onWsEvent);\r\n // }\r\n (async function () {\r\n try {\r\n state.devInfo = await getCachedDevInfo(damId, {});\r\n if (!state.devInfo) return;\r\n state.ecoModeCfg = ((state.devInfo.dam?.ENABLE_ECO === 1 || state.devInfo.dam?.ENABLE_ECO === 2) && state.devInfo.dam?.ECO_CFG) || null;\r\n state.relDutInfo = null;\r\n if (state.devInfo.dam?.REL_DUT_ID) {\r\n state.relDutInfo = {\r\n REL_DUT_ID: state.devInfo.dam!.REL_DUT_ID,\r\n };\r\n const dutInfo = await apiCall('/dut/get-dut-info', { DEV_ID: state.relDutInfo.REL_DUT_ID });\r\n state.relDutInfo.TUSEMIN = dutInfo.info.TUSEMIN;\r\n state.relDutInfo.ROOM_DESC = dutInfo.info.ROOM_NAME ? `${dutInfo.info.ROOM_NAME}` : '';\r\n lws.start(onWsOpen, onWsMessage, beforeWsClose);\r\n }\r\n else if (state.devInfo.dam?.SELF_REFERENCE) {\r\n state.damRealTimeInfo = { Temperature: null, state: null };\r\n lws.start(onWsOpen, onWsMessage, beforeWsClose);\r\n }\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }());\r\n }, []);\r\n\r\n function onWsOpen(wsConn: WSConn) {\r\n if (state.relDutInfo && state.relDutInfo.REL_DUT_ID) {\r\n wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: state.relDutInfo.REL_DUT_ID } });\r\n }\r\n else if (state.devInfo.dam && state.devInfo.dam.SELF_REFERENCE) {\r\n wsConn.send({ type: 'subscribeStatus', data: { dam_id: damId } });\r\n }\r\n }\r\n function onWsMessage(message: { type: string, data: any }) {\r\n if (message && message.type === 'dutTelemetry' && state.relDutInfo && message.data.dev_id === state.relDutInfo.REL_DUT_ID) {\r\n state.relDutInfo.Temperature = message.data && message.data.Temperature;\r\n state.relDutInfo.status = message.data && message.data.status;\r\n render();\r\n }\r\n if (message && message.type === 'devOnlineStatus' && state.relDutInfo && message.data.dev_id === state.relDutInfo.REL_DUT_ID) {\r\n state.relDutInfo.status = message.data && message.data.status;\r\n render();\r\n }\r\n if (message && message.type === 'damStatus' && state.damRealTimeInfo && message.data.status && message.data.dev_id === damId && state.devInfo.dam && state.devInfo.dam.SELF_REFERENCE) {\r\n state.damRealTimeInfo.Temperature = message.data.Temperature || null;\r\n state.damRealTimeInfo.status = message.data.status;\r\n render();\r\n }\r\n }\r\n function beforeWsClose(wsConn: WSConn) {\r\n wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n wsConn.send({ type: 'unsubscribeStatus' });\r\n }\r\n\r\n useEffect(() => {\r\n const ventilation = devSched.ventTime && (devSched.ventTime.end || devSched.ventTime.begin);\r\n state.ventInput = (ventilation ? String(ventilation) : '0');\r\n state.ventTime = {\r\n begin: devSched.ventTime ? String(devSched.ventTime.begin) : '0',\r\n end: devSched.ventTime ? String(((devSched.ventTime.end !== null) && (devSched.ventTime.end !== undefined)) ? devSched.ventTime.end : devSched.ventTime.begin) : '0',\r\n };\r\n const daysList: (keyof typeof weekDaysList)[] = ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'];\r\n if (!devSched.week) devSched.week = {};\r\n state.dayProgs = daysList.map((day) => ({\r\n day,\r\n dayName: weekDaysList[day],\r\n text: getDayProgDesc((devSched.week && devSched.week[day]) || null),\r\n isBlank: !(devSched.week && devSched.week[day]),\r\n }));\r\n state.excepts = Object.entries(devSched.exceptions || {}).map(([day, prog]) => ({\r\n dateYMD: day,\r\n date: `${day.substr(8, 2)}/${day.substr(5, 2)}/${day.substr(0, 4)}`,\r\n text: getDayProgDesc(prog),\r\n }));\r\n render();\r\n }, [devSched]);\r\n\r\n async function saveVentilation() {\r\n if (!wantSaveVent) return;\r\n try {\r\n setState({ editingVentilation: true, submittingVentilation: true });\r\n if (state.devInfo?.dam?.supportsVentEnd) {\r\n await wantSaveVent(state.ventTime);\r\n } else {\r\n await wantSaveVent({ begin: state.ventInput, end: state.ventInput });\r\n }\r\n toast.success(t('sucessoEnviar'));\r\n state.editingVentilation = false;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ submittingVentilation: false });\r\n }\r\n\r\n const Ventilacao = (\r\n
\r\n \r\n {t('ventilacao')}\r\n \r\n {\r\n (state.submittingVentilation)\r\n ? (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n : (state.editingVentilation)\r\n ? (\r\n
\r\n {t('habilitarTempoDeVentilacao')}\r\n       \r\n { (state.devInfo?.dam?.supportsVentEnd)\r\n ? (\r\n
\r\n
\r\n {t('inicio')}\r\n
\r\n       \r\n ) => setState({ ventTime: { begin: event.target.value, end: state.ventTime.end } })} />\r\n       \r\n
\r\n {t('fim')}\r\n
\r\n       \r\n ) => setState({ ventTime: { begin: state.ventTime.begin, end: event.target.value } })} />\r\n       \r\n
\r\n )\r\n : (\r\n ) => setState({ ventInput: event.target.value })} />\r\n )}\r\n \r\n \r\n \r\n       \r\n setState({ editingVentilation: false })}>\r\n \r\n \r\n
\r\n )\r\n : (\r\n
\r\n {(devSched.ventTime && (devSched.ventTime.begin || devSched.ventTime.end)) ? (\r\n <>\r\n \r\n {(devSched.ventTime.begin)}\r\n {' '}\r\n {t('minutosAposHorarioPermitidoInicial')}\r\n {' '}\r\n {(devSched.ventTime.end)}\r\n {' '}\r\n {t('minutosAntesHorarioPermitidoFinal')}\r\n \r\n \r\n ) : (\r\n {t('desabilitado')}\r\n )}\r\n {(!props.readOnly) && (\r\n
\r\n {(devSched.ventTime && (devSched.ventTime.begin || devSched.ventTime.end)) ? (\r\n { state.ventTime = { begin: '0', end: '0' }; state.ventInput = '0'; saveVentilation(); }}>\r\n \r\n \r\n ) :
 
}\r\n { state.editingVentilation = true; render(); }}>\r\n \r\n \r\n
\r\n )}\r\n
\r\n )\r\n }\r\n
\r\n );\r\n\r\n const ModoEco = (\r\n
\r\n {t('modoEco')}\r\n
\r\n
\r\n
\r\n {(!state.ecoModeCfg)\r\n && {t('desabilitado')}}\r\n {(state.ecoModeCfg)\r\n && (\r\n \r\n {t('acao')}\r\n {': '}\r\n {ecoModeCfgs[state.ecoModeCfg] || state.ecoModeCfg}\r\n \r\n )}\r\n
\r\n {(state.relDutInfo)\r\n && (\r\n <>\r\n \r\n \r\n {t('ambienteRefrigerado')}\r\n {' '}\r\n {state.relDutInfo.ROOM_DESC || state.relDutInfo.REL_DUT_ID}\r\n {`(${state.relDutInfo.REL_DUT_ID})`}\r\n \r\n \r\n
\r\n \r\n {t('limiteDeTemperatura')}\r\n {': '}\r\n {(state.relDutInfo.TUSEMIN != null) ? `${state.relDutInfo.TUSEMIN} °C` : t('semInformacao')}\r\n \r\n
\r\n \r\n )}\r\n {state.devInfo?.dam && state.devInfo.dam?.SELF_REFERENCE && (\r\n <>\r\n {t('modoControle')}\r\n {t('utilizandoDamIdComoReferencia', { damId })}\r\n \r\n \r\n {' '}\r\n {t('temperaturaAmbiente')}\r\n \r\n
\r\n {(state.damRealTimeInfo?.Temperature == null) ? '-' : `${formatNumberWithFractionDigits(state.damRealTimeInfo.Temperature)}°C`}\r\n
\r\n
\r\n \r\n {state.damRealTimeInfo?.status || 'OFFLINE'}\r\n \r\n
\r\n
\r\n \r\n {`${t('limiteTemperatura')} ${state.devInfo.dam?.MAXIMUM_TEMPERATURE || '-'}ºC`}\r\n \r\n
\r\n \r\n )}\r\n
\r\n \r\n {(state.relDutInfo)\r\n && (\r\n <>\r\n \r\n \r\n {' '}\r\n {t('temperaturaAmbiente')}\r\n \r\n
\r\n {(state.relDutInfo.Temperature == null) ? '-' : `${formatNumberWithFractionDigits(state.relDutInfo.Temperature)}°C`}\r\n
\r\n
\r\n \r\n {state.relDutInfo.status || 'OFFLINE'}\r\n \r\n
\r\n \r\n )}\r\n
\r\n
\r\n
\r\n );\r\n\r\n const returnDamId = (damId: string) => (damId.startsWith('DAM') ? t('damId') : t('dacId'));\r\n\r\n return (\r\n <>\r\n \r\n \r\n {(!isLoading) ? (\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {(!hideId) && (\r\n <>\r\n
\r\n { returnDamId(damId) }\r\n
\r\n \r\n {damId}\r\n \r\n \r\n )}\r\n
\r\n {(!props.readOnly) && (\r\n \r\n )}\r\n  \r\n
\r\n
\r\n
\r\n \r\n \r\n 0) ? 1 / 2 : 1]} pr={[0, 0, 0, 0, 40]}>\r\n {t('funcionamento')}\r\n {state.dayProgs.map((item) => (\r\n \r\n {item.dayName}\r\n {item.text}\r\n
\r\n {(item.isBlank || props.readOnly)\r\n ?
 
\r\n : (\r\n <>\r\n { wantRemoveDay && wantRemoveDay(item.day); }}>\r\n \r\n \r\n { wantEditDay && wantEditDay(item.day); }}>\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n {(state.excepts.length > 0) && (\r\n \r\n {t('excecoes')}\r\n {state.excepts.map((item) => (\r\n \r\n {item.date}\r\n {item.text}\r\n
\r\n {(!props.readOnly) && (\r\n wantDelException && wantDelException(item.dateYMD)}>\r\n \r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n \r\n {(damId && (!damId.startsWith('DAC'))) && ( // TODO: FIXME: find a better way to check this\r\n \r\n {Ventilacao}\r\n \r\n )}\r\n \r\n {ModoEco}\r\n \r\n \r\n
\r\n
\r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport function SchedulesEdit(props: {\r\n devSched: FullProg_v4,\r\n selectedDay: null|('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n onConfirmProg: (days: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')[], prog: DayProg) => void,\r\n onConfirmExcept: (day: string, prog: DayProg) => void,\r\n onCancel: () => void,\r\n isSending: boolean,\r\n}) {\r\n const {\r\n devSched, selectedDay, onConfirmProg, onConfirmExcept, onCancel, isSending,\r\n } = props;\r\n const weekDaysList = {\r\n mon: t('diasDaSemana.seg'),\r\n tue: t('diasDaSemana.ter'),\r\n wed: t('diasDaSemana.qua'),\r\n thu: t('diasDaSemana.qui'),\r\n fri: t('diasDaSemana.sex'),\r\n sat: t('diasDaSemana.sab'),\r\n sun: t('diasDaSemana.dom'),\r\n };\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n exception_date: '',\r\n ruleException: 'rule' as 'rule'|'exception',\r\n allowForbid: 'allow' as 'allow'|'forbid',\r\n weekDays: Object.entries(weekDaysList).map(([day, name]) => ({ name, day: day as keyof typeof weekDaysList, checked: false })),\r\n start_time: '',\r\n end_time: '',\r\n formErrors: {\r\n start_time: '',\r\n end_time: '',\r\n days: '',\r\n },\r\n };\r\n\r\n const editProg = selectedDay && devSched.week && devSched.week[selectedDay];\r\n if (editProg) {\r\n for (const item of state.weekDays) {\r\n item.checked = (item.day === selectedDay);\r\n }\r\n state.start_time = editProg.start || '';\r\n state.end_time = editProg.end || '';\r\n }\r\n\r\n return state;\r\n });\r\n\r\n function handleSelectDay(day: { checked: boolean }) {\r\n day.checked = !day.checked;\r\n changeExceptionMode('rule');\r\n // render();\r\n }\r\n\r\n function changeExceptionMode(newMode: 'rule'|'exception') {\r\n if (newMode === 'rule') {\r\n state.ruleException = 'rule';\r\n state.exception_date = '';\r\n } else {\r\n state.ruleException = 'exception';\r\n for (const day of state.weekDays) {\r\n day.checked = false;\r\n }\r\n }\r\n state.formErrors.days = '';\r\n render();\r\n }\r\n\r\n function validateForm() {\r\n let start_index = null as null|number;\r\n if (!/^\\d\\d:\\d\\d$/.test(state.start_time)) {\r\n state.formErrors.start_time = t('erroTempoInicialObrigatorio');\r\n } else {\r\n const horas = Number(state.start_time.substr(0, 2));\r\n const minutos = Number(state.start_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n state.formErrors.start_time = t('erroValorInvalido');\r\n } else {\r\n state.formErrors.start_time = '';\r\n start_index = horas * 60 + minutos;\r\n }\r\n }\r\n if (!/^\\d\\d:\\d\\d$/.test(state.end_time)) {\r\n state.formErrors.end_time = t('campoTempoFinalObrigatorio');\r\n } else {\r\n const horas = Number(state.end_time.substr(0, 2));\r\n const minutos = Number(state.end_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n state.formErrors.end_time = t('erroValorInvalido');\r\n } else {\r\n const end_index = horas * 60 + minutos;\r\n if (start_index != null && !(end_index >= start_index)) {\r\n state.formErrors.end_time = t('erroValorInvalido');\r\n } else {\r\n state.formErrors.end_time = '';\r\n }\r\n }\r\n }\r\n if (state.ruleException === 'rule') {\r\n if (!state.weekDays.some((item) => item.checked)) {\r\n state.formErrors.days = t('erroNecessarioSelecionarMinimoUmDia');\r\n } else {\r\n state.formErrors.days = '';\r\n }\r\n } else if (state.ruleException === 'exception') {\r\n if (state.exception_date.length !== 10 || state.exception_date.includes('_')) {\r\n state.formErrors.days = t('erroDataExcecaoObrigatoria');\r\n } else {\r\n state.formErrors.days = '';\r\n }\r\n }\r\n render();\r\n return !(state.formErrors.start_time || state.formErrors.end_time || state.formErrors.days);\r\n }\r\n\r\n function handleSubmit() {\r\n if (!validateForm()) return;\r\n const prog = {\r\n permission: state.allowForbid,\r\n start: state.start_time,\r\n end: state.end_time,\r\n };\r\n if (state.ruleException === 'rule') {\r\n const days = state.weekDays.filter((item) => item.checked).map((item) => item.day);\r\n onConfirmProg(days, prog);\r\n } else if (state.ruleException === 'exception') {\r\n const { exception_date } = state;\r\n const day = `${exception_date.substr(6, 4)}-${exception_date.substr(3, 2)}-${exception_date.substr(0, 2)}`;\r\n onConfirmExcept(day, prog);\r\n }\r\n }\r\n\r\n return (\r\n \r\n
\r\n setState({ allowForbid: 'allow' })} />\r\n           \r\n setState({ allowForbid: 'forbid' })} />\r\n
\r\n
\r\n \r\n \r\n ) => { state.start_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n ) => { state.end_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n { state.start_time = '00:00'; state.end_time = '23:59'; render(); }}\r\n />\r\n \r\n \r\n {t('dias')}\r\n \r\n \r\n {state.weekDays.map((item) => (\r\n { handleSelectDay(item); }}\r\n >\r\n {item.name}\r\n \r\n ))}\r\n \r\n {(!selectedDay) && (\r\n \r\n { changeExceptionMode('exception'); }} />\r\n  \r\n ) => { setState({ exception_date: e.target.value }); }}\r\n disabled={state.ruleException !== 'exception'}\r\n />\r\n \r\n )}\r\n \r\n {state.formErrors.days && {state.formErrors.days}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function SchedulesRemove(props: {\r\n selectedDay: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n onConfirm: (day: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')) => void,\r\n onCancel: () => void,\r\n isRemoving: boolean,\r\n}) {\r\n const {\r\n selectedDay, onConfirm, onCancel, isRemoving,\r\n } = props;\r\n return (\r\n <>\r\n \r\n \r\n {t('desejaExcluirEstaProgramacao')}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
onConfirm(selectedDay)}>\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport function DamScheduleSummary(props: { damId: string, assetLayout?: boolean, }) {\r\n const { damId, assetLayout } = props;\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n devSched: { week: {}, exceptions: {} } as FullProg_v4,\r\n };\r\n return state;\r\n });\r\n\r\n async function getData() {\r\n try {\r\n setState({ isLoading: true });\r\n if (damId) {\r\n state.devSched = await apiCall('/dam/get-programming-v3', { damId });\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n useEffect(() => {\r\n getData();\r\n }, []);\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\n// export function parseReceivedProgramming(data: ApiResps['/dam/get-programming-v2']) {\r\n\r\nconst Text = styled.p<{ isBold?: boolean }>(\r\n ({ isBold }) => `\r\n margin-bottom: ${isBold ? 0 : '1em'};\r\n margin-top: ${isBold ? '1em' : 0};\r\n color: ${isBold ? colors.Grey300 : colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n `,\r\n);\r\n\r\nconst ProgTable = styled.div`\r\n display: grid;\r\n grid-template-columns: 43px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst ProgTableExc = styled.div`\r\n display: grid;\r\n grid-template-columns: 90px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst TextProgTabDay = styled.span`\r\n color: ${colors.Grey300};\r\n font-weight: bold;\r\n`;\r\n\r\nconst TextProgTabMode = styled.div`\r\n display: grid;\r\n grid-template-columns: auto auto;\r\n`;\r\n\r\nconst ItemTitle = styled.h3`\r\n margin-bottom: 0;\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Blue300};\r\n`;\r\n\r\nconst ItemWrapper = styled.div`\r\n width: 100%;\r\n border-top: 2px solid ${colors.Grey050};\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n cursor: pointer;\r\n`;\r\n\r\nconst StyledLink = styled(Link)`\r\n font-size: 1em;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nconst StyledText = styled.span<{ fontSize?: string }>(\r\n ({ fontSize = '12px' }) => `\r\n font-size: ${fontSize};\r\n font-weight: bold;\r\n color: ${colors.Grey400};\r\n white-space: nowrap;\r\n text-align: center;\r\n`,\r\n);\r\n\r\nconst Wrapper = styled.div`\r\n text-align: center;\r\n`;\r\n\r\nconst SelectDay = styled.div<{ isSelected: boolean, ruleException: 'rule'|'exception' }>(\r\n ({ isSelected, ruleException }) => `\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n width: 48px;\r\n height: 32px;\r\n box-sizing: border-box;\r\n border-radius: 8px;\r\n margin-left: 2px;\r\n margin-right: 2px;\r\n background-color: ${ruleException === 'rule' ? (isSelected ? colors.Blue300 : colors.White) : colors.White};\r\n border: 1px solid ${ruleException === 'rule' ? colors.Blue300 : colors.Grey200};\r\n color: ${ruleException === 'rule' ? (isSelected ? colors.White : colors.Blue300) : colors.Grey200};\r\n `,\r\n);\r\n\r\nconst ErrorMessage = styled.span`\r\n color: ${colors.Red};\r\n font-size: 0.75em;\r\n`;\r\n","import { ChangeEvent, useEffect, useMemo } from 'react';\r\n\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Input, Loader, RadioButton, Checkbox, Select,\r\n} from 'components';\r\nimport { getDayProgDesc } from 'helpers/scheduleData';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport {\r\n TrashIcon, CloseIcon, CheckboxIcon, EditIcon,\r\n} from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\nimport { colors } from 'styles/colors';\r\nimport { t } from 'i18next';\r\n\r\nconst dutControlOperation = [\r\n { label: t('desabilitado'), value: '0_NO_CONTROL' },\r\n { label: t('modoEco'), value: '1_CONTROL' },\r\n { label: t('modoSobDemanda'), value: '2_SOB_DEMANDA' },\r\n { label: t('modoBackup'), value: '3_BACKUP' },\r\n { label: t('modoBloqueio'), value: '4_BLOCKED' },\r\n { label: t('modoBackupEco'), value: '5_BACKUP_CONTROL' },\r\n { label: t('modoEco2'), value: '6_BACKUP_CONTROL_V2' },\r\n { label: t('modoForcado'), value: '7_FORCED' },\r\n] as { label: string, value: '0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP'|'4_BLOCKED'|'5_BACKUP_CONTROL'|'6_BACKUP_CONTROL_V2'|'7_FORCED' }[];\r\n\r\nexport function SchedulesList(props: {\r\n devSched: FullProg_v4,\r\n wantDelException: ((date: string) => void)|null,\r\n wantSaveVent: ((ventInput: string) => void)|null,\r\n wantSaveCtrl: ((mode: '0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP'|'4_BLOCKED'|'5_BACKUP_CONTROL'|'6_BACKUP_CONTROL_V2'|'7_FORCED', setPoint: number, LTC: number, LTI: number) => void)|null,\r\n wantAddProg: (() => void)|null,\r\n wantEditDay: ((day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => void)|null,\r\n wantRemoveDay: ((day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => void)|null,\r\n isLoading: boolean,\r\n readOnly?: boolean,\r\n temprtControl?: boolean,\r\n}): JSX.Element {\r\n const {\r\n devSched, wantDelException, wantSaveVent, wantSaveCtrl, wantAddProg, wantEditDay, wantRemoveDay, isLoading,\r\n } = props;\r\n const weekDaysList = {\r\n mon: t('diaSeg'),\r\n tue: t('diaTer'),\r\n wed: t('diaQua'),\r\n thu: t('diaQui'),\r\n fri: t('diaSex'),\r\n sat: t('diaSab'),\r\n sun: t('diaDom'),\r\n };\r\n const [state, render, setState] = useStateVar(() => ({\r\n editingTemprtControl: false,\r\n editingVentilation: false,\r\n submittingVentilation: false,\r\n ventInput: '',\r\n dayProgs: [] as {\r\n day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun',\r\n dayName: string,\r\n text: string,\r\n isBlank: boolean,\r\n }[],\r\n excepts: [] as { dateYMD: string, date: string, text: string }[],\r\n dutControlOperation,\r\n CTRLOPER_item: dutControlOperation.find((x) => x.value === (devSched.temprtControl && devSched.temprtControl.mode)),\r\n TSETPOINT: ((devSched.temprtControl && devSched.temprtControl.temperature) != null) ? devSched.temprtControl!.temperature.toString() : '24',\r\n LTCRIT: ((devSched.temprtControl && devSched.temprtControl.LTC) != null) ? devSched.temprtControl!.LTC.toString() : '30',\r\n LTINF: ((devSched.temprtControl && devSched.temprtControl.LTI) != null) ? devSched.temprtControl!.LTI.toString() : '21',\r\n }));\r\n\r\n useEffect(() => {\r\n const ventilation = devSched.ventTime && (devSched.ventTime.end || devSched.ventTime.begin);\r\n state.ventInput = (ventilation ? String(ventilation) : '0');\r\n const daysList: (keyof typeof weekDaysList)[] = ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'];\r\n if (!devSched.week) devSched.week = {};\r\n state.dayProgs = daysList.map((day) => ({\r\n day,\r\n dayName: weekDaysList[day],\r\n text: getDayProgDesc((devSched.week && devSched.week[day]) || null),\r\n isBlank: !(devSched.week && devSched.week[day]),\r\n }));\r\n state.excepts = Object.entries(devSched.exceptions || {}).map(([day, prog]) => ({\r\n dateYMD: day,\r\n date: `${day.substr(8, 2)}/${day.substr(5, 2)}/${day.substr(0, 4)}`,\r\n text: getDayProgDesc(prog),\r\n }));\r\n render();\r\n }, [devSched]);\r\n\r\n async function saveVentilation() {\r\n if (!wantSaveVent) return;\r\n try {\r\n setState({ editingVentilation: true, submittingVentilation: true });\r\n await wantSaveVent(state.ventInput);\r\n toast.success(t('sucessoEnviar'));\r\n state.editingVentilation = false;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n setState({ submittingVentilation: false });\r\n }\r\n\r\n function saveTemperatureControl() {\r\n if (!wantSaveCtrl) return;\r\n if (!state.CTRLOPER_item) return toast.error(t('erroNecessarioSelecionarModoControleTemperatura'));\r\n\r\n if (['1_CONTROL', '2_SOB_DEMANDA', '3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2'].includes(state.CTRLOPER_item.value)) {\r\n if (!state.TSETPOINT) return toast.error(t('erroNecessarioSetpointTemperatura'));\r\n }\r\n const setPoint = Number(state.TSETPOINT || '24');\r\n if (!Number.isFinite(setPoint)) return toast.error(t('erroSetpointTemperatura'));\r\n\r\n if (['3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2'].includes(state.CTRLOPER_item.value)) {\r\n if (!state.LTCRIT) return toast.error(t('erroNecessarioLimiarCriticoTemperatura'));\r\n }\r\n const LTC = Number(state.LTCRIT || '30');\r\n if (!Number.isFinite(LTC)) return toast.error(t('erroLimiarCriticoTemperatura'));\r\n\r\n if (['6_BACKUP_CONTROL_V2'].includes(state.CTRLOPER_item.value)) {\r\n if (!state.LTINF) return toast.error(t('erroNecessarioLimiarTemperaturaInferior'));\r\n }\r\n const LTI = Number(state.LTINF || '21');\r\n if (!Number.isFinite(LTC)) return toast.error(t('erroLimiarTemperaturaInferior'));\r\n\r\n wantSaveCtrl(state.CTRLOPER_item.value, setPoint, LTC, LTI);\r\n setState({ editingTemprtControl: false });\r\n }\r\n\r\n const Ventilacao = (\r\n
\r\n \r\n {t('ventilacao')}\r\n \r\n {\r\n (state.submittingVentilation)\r\n ? (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n : (state.editingVentilation)\r\n ? (\r\n
\r\n {t('habilitarTempoVentilacao')}\r\n       \r\n ) => setState({ ventInput: event.target.value })} />\r\n       \r\n \r\n \r\n \r\n       \r\n setState({ editingVentilation: false })}>\r\n \r\n \r\n
\r\n )\r\n : (\r\n
\r\n {(devSched.ventTime && (devSched.ventTime.begin || devSched.ventTime.end)) ? (\r\n <>\r\n \r\n {(devSched.ventTime.begin || devSched.ventTime.end)}\r\n {' '}\r\n {t('minutosAposHorarioPermitidoInicialEAntesHorarioPermitidoFinal')}\r\n \r\n \r\n ) : (\r\n {t('desabilitado')}\r\n )}\r\n {(!props.readOnly) && (\r\n
\r\n {(devSched.ventTime && (devSched.ventTime.begin || devSched.ventTime.end)) ? (\r\n { state.ventInput = '0'; saveVentilation(); }}>\r\n \r\n \r\n ) :
 
}\r\n { state.editingVentilation = true; render(); }}>\r\n \r\n \r\n
\r\n )}\r\n
\r\n )\r\n }\r\n
\r\n );\r\n\r\n const TemperatureControl = (\r\n
\r\n
\r\n {t('controleTemperatura')}\r\n
\r\n {(!state.editingTemprtControl) && (\r\n
\r\n {(devSched.temprtControl && devSched.temprtControl.mode) ? (\r\n {(dutControlOperation.find((x) => x.value === devSched.temprtControl!.mode) || { label: devSched.temprtControl!.mode }).label}\r\n ) : (\r\n {t('modoNaoConfigurado')}\r\n )}\r\n {(devSched.temprtControl && devSched.temprtControl.mode && ['1_CONTROL', '2_SOB_DEMANDA', '3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2'].includes(devSched.temprtControl.mode)) && (\r\n \r\n    \r\n {(devSched.temprtControl.temperature == null) ? '-' : devSched.temprtControl.temperature}\r\n °C\r\n \r\n )}\r\n {(devSched.temprtControl && devSched.temprtControl.mode && ['3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2'].includes(devSched.temprtControl.mode)) && (\r\n \r\n   /  \r\n {(devSched.temprtControl.LTC == null) ? '-' : devSched.temprtControl.LTC}\r\n °C\r\n \r\n )}\r\n {(devSched.temprtControl && devSched.temprtControl.mode && ['6_BACKUP_CONTROL_V2'].includes(devSched.temprtControl.mode)) && (\r\n \r\n   /  \r\n {(devSched.temprtControl.LTI == null) ? '-' : devSched.temprtControl.LTI}\r\n °C\r\n \r\n )}\r\n {(!props.readOnly) && (wantSaveCtrl) && (\r\n <>\r\n        \r\n setState({ editingTemprtControl: true })}>\r\n \r\n \r\n \r\n )}\r\n
\r\n )}\r\n {(state.editingTemprtControl) && (\r\n
\r\n setState({ CTRLOPER_item: item })}\r\n notNull\r\n />\r\n {(state.CTRLOPER_item && ['1_CONTROL', '2_SOB_DEMANDA', '3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2'].includes(state.CTRLOPER_item.value)) && (\r\n
\r\n setState({ TSETPOINT: e.target.value })}\r\n />\r\n
\r\n )}\r\n {(state.CTRLOPER_item && ['3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2'].includes(state.CTRLOPER_item.value)) && (\r\n
\r\n setState({ LTCRIT: e.target.value })}\r\n />\r\n
\r\n )}\r\n {(state.CTRLOPER_item && ['6_BACKUP_CONTROL_V2'].includes(state.CTRLOPER_item.value)) && (\r\n
\r\n setState({ LTINF: e.target.value })}\r\n />\r\n
\r\n )}\r\n       \r\n \r\n \r\n \r\n       \r\n setState({ editingTemprtControl: false })}>\r\n \r\n \r\n
\r\n )}\r\n
\r\n );\r\n\r\n return (\r\n <>\r\n \r\n \r\n {(!isLoading) ? (\r\n <>\r\n \r\n \r\n
\r\n
\r\n {(!props.readOnly) && (\r\n \r\n )}\r\n  \r\n
\r\n \r\n \r\n \r\n \r\n 0) ? 1 / 2 : 1]} pr={[0, 0, 0, 0, 40]}>\r\n {t('funcionamento')}\r\n {state.dayProgs.map((item) => (\r\n \r\n {item.dayName}\r\n {item.text}\r\n
\r\n {(item.isBlank || props.readOnly)\r\n ?
 
\r\n : (\r\n <>\r\n { wantRemoveDay && wantRemoveDay(item.day); }}>\r\n \r\n \r\n { wantEditDay && wantEditDay(item.day); }}>\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n {(state.excepts.length > 0) && (\r\n \r\n {t('excecoes')}\r\n {state.excepts.map((item) => (\r\n \r\n {item.date}\r\n {item.text}\r\n
\r\n {(!props.readOnly) && (\r\n wantDelException && wantDelException(item.dateYMD)}>\r\n \r\n \r\n )}\r\n
\r\n
\r\n ))}\r\n
\r\n )}\r\n
\r\n
\r\n {(props.temprtControl || devSched.temprtControl) && (\r\n \r\n {TemperatureControl}\r\n \r\n )}\r\n {false && (\r\n \r\n {Ventilacao}\r\n \r\n )}\r\n \r\n ) : (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport function SchedulesEdit(props: {\r\n devSched: FullProg_v4,\r\n selectedDay: null|('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n onConfirmProg: (days: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')[], prog: DayProg) => void,\r\n onConfirmExcept: (day: string, prog: DayProg) => void,\r\n onCancel: () => void,\r\n isSending: boolean,\r\n}) {\r\n const {\r\n devSched, selectedDay, onConfirmProg, onConfirmExcept, onCancel, isSending,\r\n } = props;\r\n const weekDaysList = {\r\n mon: t('diaSeg'),\r\n tue: t('diaTer'),\r\n wed: t('diaQua'),\r\n thu: t('diaQui'),\r\n fri: t('diaSex'),\r\n sat: t('diaSab'),\r\n sun: t('diaDom'),\r\n };\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n exception_date: '',\r\n ruleException: 'rule' as 'rule'|'exception',\r\n allowForbid: 'allow' as 'allow'|'forbid',\r\n weekDays: Object.entries(weekDaysList).map(([day, name]) => ({ name, day: day as keyof typeof weekDaysList, checked: false })),\r\n start_time: '',\r\n end_time: '',\r\n formErrors: {\r\n start_time: '',\r\n end_time: '',\r\n days: '',\r\n },\r\n };\r\n\r\n const editProg = selectedDay && devSched.week && devSched.week[selectedDay];\r\n if (editProg) {\r\n for (const item of state.weekDays) {\r\n item.checked = (item.day === selectedDay);\r\n }\r\n state.start_time = editProg.start || '';\r\n state.end_time = editProg.end || '';\r\n }\r\n\r\n return state;\r\n });\r\n\r\n function handleSelectDay(day: { checked?: boolean }) {\r\n day.checked = !day.checked;\r\n changeExceptionMode('rule');\r\n // render();\r\n }\r\n\r\n function changeExceptionMode(newMode: 'rule'|'exception') {\r\n if (newMode === 'rule') {\r\n state.ruleException = 'rule';\r\n state.exception_date = '';\r\n } else {\r\n state.ruleException = 'exception';\r\n for (const day of state.weekDays) {\r\n day.checked = false;\r\n }\r\n }\r\n state.formErrors.days = '';\r\n render();\r\n }\r\n\r\n function validateForm() {\r\n let start_index = null as null|number;\r\n if (!/^\\d\\d:\\d\\d$/.test(state.start_time)) {\r\n state.formErrors.start_time = t('erroTempoInicialObrigatorio');\r\n } else {\r\n const horas = Number(state.start_time.substr(0, 2));\r\n const minutos = Number(state.start_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n state.formErrors.start_time = t('erroValorInvalido');\r\n } else {\r\n state.formErrors.start_time = '';\r\n start_index = horas * 60 + minutos;\r\n }\r\n }\r\n if (!/^\\d\\d:\\d\\d$/.test(state.end_time)) {\r\n state.formErrors.end_time = t('erroTempoFinalObrigatorio');\r\n } else {\r\n const horas = Number(state.end_time.substr(0, 2));\r\n const minutos = Number(state.end_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n state.formErrors.end_time = t('erroValorInvalido');\r\n } else {\r\n const end_index = horas * 60 + minutos;\r\n if (start_index != null && !(end_index >= start_index)) {\r\n state.formErrors.end_time = t('erroValorInvalido');\r\n } else {\r\n state.formErrors.end_time = '';\r\n }\r\n }\r\n }\r\n if (state.ruleException === 'rule') {\r\n if (!state.weekDays.some((item) => item.checked)) {\r\n state.formErrors.days = t('erroNecessarioSelecionarMinimoUmDia');\r\n } else {\r\n state.formErrors.days = '';\r\n }\r\n } else if (state.ruleException === 'exception') {\r\n if (state.exception_date.length !== 10 || state.exception_date.includes('_')) {\r\n state.formErrors.days = t('erroDataExcecaoObrigatoria');\r\n } else {\r\n state.formErrors.days = '';\r\n }\r\n }\r\n render();\r\n return !(state.formErrors.start_time || state.formErrors.end_time || state.formErrors.days);\r\n }\r\n\r\n function handleSubmit() {\r\n if (!validateForm()) return;\r\n const prog = {\r\n permission: state.allowForbid,\r\n start: state.start_time,\r\n end: state.end_time,\r\n };\r\n if (state.ruleException === 'rule') {\r\n const days = state.weekDays.filter((item) => item.checked).map((item) => item.day);\r\n onConfirmProg(days, prog);\r\n } else if (state.ruleException === 'exception') {\r\n const { exception_date } = state;\r\n const day = `${exception_date.substr(6, 4)}-${exception_date.substr(3, 2)}-${exception_date.substr(0, 2)}`;\r\n onConfirmExcept(day, prog);\r\n }\r\n }\r\n\r\n return (\r\n \r\n
\r\n setState({ allowForbid: 'allow' })} />\r\n           \r\n setState({ allowForbid: 'forbid' })} />\r\n
\r\n
\r\n \r\n \r\n ) => { state.start_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n ) => { state.end_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n { state.start_time = '00:00'; state.end_time = '23:59'; render(); }}\r\n />\r\n \r\n \r\n {t('Dias')}\r\n \r\n \r\n {state.weekDays.map((item) => (\r\n { handleSelectDay(item); }}\r\n >\r\n {item.name}\r\n \r\n ))}\r\n \r\n {(!selectedDay) && (\r\n \r\n { changeExceptionMode('exception'); }} />\r\n  \r\n ) => { setState({ exception_date: e.target.value }); }}\r\n disabled={state.ruleException !== 'exception'}\r\n />\r\n \r\n )}\r\n \r\n {state.formErrors.days && {state.formErrors.days}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function SchedulesRemove(props: {\r\n selectedDay: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n onConfirm: (day: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')) => void,\r\n onCancel: () => void,\r\n isRemoving: boolean,\r\n}) {\r\n const {\r\n selectedDay, onConfirm, onCancel, isRemoving,\r\n } = props;\r\n return (\r\n <>\r\n \r\n \r\n {t('desejaExcluirEstaProgramacao')}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
onConfirm(selectedDay)}>\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport function DutScheduleSummary(props: { dutId: string }) {\r\n const { dutId } = props;\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n devSched: { week: {}, exceptions: {} } as FullProg_v4,\r\n };\r\n return state;\r\n });\r\n\r\n async function getData() {\r\n try {\r\n setState({ isLoading: true });\r\n state.devSched = await apiCall('/dut/get-programming-v3', { dutId });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n useEffect(() => {\r\n getData();\r\n }, []);\r\n\r\n return (\r\n \r\n );\r\n}\r\n\r\nconst Text = styled.p<{ isBold?: boolean }>(\r\n ({ isBold }) => `\r\n margin-bottom: ${isBold ? 0 : '1em'};\r\n margin-top: ${isBold ? '1em' : 0};\r\n color: ${isBold ? colors.Grey300 : colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n `,\r\n);\r\n\r\nconst ProgTable = styled.div`\r\n display: grid;\r\n grid-template-columns: 43px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst ProgTableExc = styled.div`\r\n display: grid;\r\n grid-template-columns: 90px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst TextProgTabDay = styled.span`\r\n color: ${colors.Grey300};\r\n font-weight: bold;\r\n`;\r\n\r\nconst TextProgTabMode = styled.div`\r\n display: grid;\r\n grid-template-columns: auto auto;\r\n`;\r\n\r\nconst ItemTitle = styled.h3`\r\n margin-bottom: 0;\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Blue300};\r\n`;\r\n\r\nconst ItemWrapper = styled.div`\r\n width: 100%;\r\n border-top: 2px solid ${colors.Grey050};\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n cursor: pointer;\r\n`;\r\n\r\nconst SelectDay = styled.div<{ isSelected: boolean, ruleException: 'rule'|'exception' }>(\r\n ({ isSelected, ruleException }) => `\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n width: 48px;\r\n height: 32px;\r\n box-sizing: border-box;\r\n border-radius: 8px;\r\n margin-left: 2px;\r\n margin-right: 2px;\r\n background-color: ${ruleException === 'rule' ? (isSelected ? colors.Blue300 : colors.White) : colors.White};\r\n border: 1px solid ${ruleException === 'rule' ? colors.Blue300 : colors.Grey200};\r\n color: ${ruleException === 'rule' ? (isSelected ? colors.White : colors.Blue300) : colors.Grey200};\r\n `,\r\n);\r\n\r\nconst ErrorMessage = styled.span`\r\n color: ${colors.Red};\r\n font-size: 0.75em;\r\n`;\r\n","import { useMemo, useRef, useState } from 'react';\r\n\r\nimport { useRouteMatch, useHistory } from 'react-router-dom';\r\n\r\nimport { Breadcrumb2 } from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nimport { Header } from '../Header';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\ntype Props = {\r\n devInfo?: null | { UNIT_NAME: string, GROUP_NAME: string, GROUP_ID: number, UNIT_ID: number, TIMEZONE_ID?: number, TIMEZONE_AREA?: string, TIMEZONE_OFFSET?: number};\r\n clientName?: string,\r\n screenInfo?: {\r\n assetRoleSelected?: number,\r\n groupSelected: boolean,\r\n hasNonDutDeviceInAssets: boolean,\r\n dutAutomationInfo: { placement?: string, dutId?: string },\r\n devAssociated?: string\r\n assetId?: string\r\n isDuoSelected: boolean,\r\n forceHideHealthTab?: boolean,\r\n }\r\n}\r\nexport const AssetLayout = ({\r\n devInfo, clientName, screenInfo,\r\n}: Props): JSX.Element => {\r\n const { t } = useTranslation();\r\n const match = useRouteMatch<{ devId, groupId }>();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n const { devId } = match.params;\r\n const { groupId } = match.params;\r\n const linkBase = groupId ? `/analise/maquina/${groupId}/ativos` : match.url.split(`/${devId}`)[0];\r\n const isEdit = history.location.pathname.includes('/editarAtivo');\r\n\r\n function verifyDevIdStartsWith(devInit: string) {\r\n if (devId?.startsWith(devInit)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyShowDutDuoUsage() {\r\n if (screenInfo?.dutAutomationInfo?.placement === 'DUO' && ((screenInfo.groupSelected && !screenInfo.hasNonDutDeviceInAssets))) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyShowDutDuoHealth() {\r\n return isDutPage && screenInfo?.isDuoSelected && screenInfo?.assetRoleSelected !== undefined;\r\n }\r\n\r\n function verifyShowHealthTab() {\r\n return !screenInfo?.forceHideHealthTab\r\n && (isDacPage || verifyShowDutDuoHealth());\r\n }\r\n\r\n const isDacPage = verifyDevIdStartsWith('DAC');\r\n const isDamPage = verifyDevIdStartsWith('DAM');\r\n const isDutPage = verifyDevIdStartsWith('DUT');\r\n const isDriPage = verifyDevIdStartsWith('DRI');\r\n const isAssetPage = screenInfo?.devAssociated ? screenInfo?.devAssociated : verifyDevIdStartsWith('ASSET');\r\n\r\n const showDutDuoUsage = !isDacPage && verifyShowDutDuoUsage();\r\n const bcrumbs = useMemo(() => {\r\n const path = [] as { text: string, link: string|null }[];\r\n if (devInfo?.UNIT_NAME) {\r\n path.push({ text: t('unidade'), link: '/analise/unidades' });\r\n path.push({ text: devInfo.UNIT_NAME, link: `/analise/unidades/${devInfo.UNIT_ID}` });\r\n if (devInfo.GROUP_NAME) {\r\n path.push({ text: devInfo.GROUP_NAME, link: `/analise/maquina/${devInfo.GROUP_ID}/ativos` });\r\n }\r\n } else {\r\n path.push({ text: t('maquinas'), link: '/analise/maquinas' });\r\n }\r\n\r\n devId && path.push({ text: devId, link: null }); // match.url\r\n if (profile.manageAllClients && clientName !== undefined) {\r\n (!path.some((item) => item.text === clientName)) && path.unshift({ text: clientName, link: null });\r\n }\r\n return ();\r\n }, [devInfo, devId]);\r\n\r\n const links = [\r\n {\r\n title: t('perfil'),\r\n link: devId ? `${linkBase}/${devId}/informacoes` : linkBase,\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('tempoReal'),\r\n link: `${linkBase}/${devId}/tempo-real`,\r\n visible: isAssetPage || isDacPage || isDamPage || isDutPage || isDriPage,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('indiceUso'),\r\n link: `${linkBase}/${showDutDuoUsage ? screenInfo?.dutAutomationInfo.dutId : devId}/indice-de-uso`,\r\n visible: isAssetPage || isDacPage || showDutDuoUsage && !profile.permissions.isInstaller,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('saude'),\r\n link: `${linkBase}/${devId}/saude`,\r\n visible: verifyShowHealthTab() && !profile.permissions.isInstaller,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('historico'),\r\n link: `${linkBase}/${devId}/historico`,\r\n visible: isAssetPage || isDacPage || isDutPage || isDamPage || isDriPage,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('controleRemoto'),\r\n link: `${linkBase}/${devId}/controle-remoto`,\r\n visible: isDutPage && (\r\n profile.manageAllClients\r\n || profile.permissions.isUserManut\r\n || (profile.permissions.CLIENT_MANAGE.includes(104)) // alteração temporária\r\n ),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('editar'),\r\n link: match.url,\r\n visible: !!isEdit,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n {bcrumbs}\r\n
\r\n
x.visible)} match={history} />\r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const NotyNumStyle = styled.div`\r\n position: absolute;\r\n right: 10px;\r\n top: -10px;\r\n background-color: #363BC4;\r\n font-size: 11px;\r\n color: white;\r\n display: inline;\r\n padding: 2px 8px;\r\n border-radius: 25px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const NotyIconStyle = styled.div`\r\n width: 180px;\r\n position: relative;\r\n display: inline;\r\n`;\r\n\r\nexport const ControlButtonIcon = styled.img<{ isActive?: boolean, status?: string }>`\r\n width: 13%;\r\n ${({ isActive }) => (isActive ? 'filter: brightness(10)' : '')};\r\n ${({ status }) => (status === 'ONLINE' ? '' : 'filter: contrast(0)')};\r\n`;\r\n\r\nexport const ControlButton = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: 160px;\r\n height: 40px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n padding: 10px 12px;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n`;\r\n\r\nexport const Data = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 16px;\r\n`;\r\nexport const DataText = styled.span<{ fontWeight? }>(\r\n ({ color = colors.Grey400, fontWeight = 'normal' }) => `\r\n font-size: 12px;\r\n font-weight: ${fontWeight};\r\n color: ${color};\r\n`,\r\n);\r\nexport const Title = styled.h1`\r\n font-size: 1.25em;\r\n color: #363BC4;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n`;\r\n\r\nexport const NotyNumStyleMini = styled.div`\r\n position: absolute;\r\n right: 0px;\r\n top: -10px;\r\n background-color: #363BC4;\r\n font-size: 11px;\r\n color: white;\r\n display: inline;\r\n padding: 4px 8px;\r\n border-radius: 20px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const NotyIconStyleMini = styled.div`\r\n position: relative;\r\n display: inline;\r\n`;\r\n\r\nexport const ControlButtonIconMini = styled.img<{ isActive?: boolean, status?: string }>`\r\n max-width: 100%;\r\n ${({ isActive }) => (isActive ? 'filter: brightness(10)' : '')};\r\n ${({ status }) => (status === 'ONLINE' ? '' : 'filter: contrast(0)')};\r\n`;\r\n\r\nexport const ControlButtonMini = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: 70px;\r\n height: 70px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n`;\r\n\r\nexport const TextLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n color: #5d5d5d;\r\n`;\r\n\r\nexport const WeekDayButton = styled.div<{ checked: boolean, status?: string, size?: 'small' }>`\r\n padding: 8px 10px;\r\n border-radius: 5px;\r\n margin: 5px;\r\n background-color: ${({ checked, status }) => (checked ? (status === '0' ? '#B5B5B5' : colors.BlueSecondary) : 'lightgrey')};\r\n color: ${({ checked }) => (checked ? 'white' : 'black')};\r\n ${({ size }) => size === 'small' && (`\r\n width: 34px;\r\n height: 37px;\r\n padding: 0;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n `\r\n )}\r\n`;\r\n\r\nexport const SelectContainer = styled.div`\r\n position: fixed;\r\n background: white;\r\n border: 1px solid #d3d3d3;\r\n border-radius: 10px;\r\n`;\r\n\r\nexport const SchedCardContainer = styled.div<{size?: 'small'}>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-radius: 10px;\r\n display: flex;\r\n flex-direction: row;\r\n margin-bottom: 10px;\r\n width: auto;\r\n min-width: 300px;\r\n width: ${({ size }) => (size === 'small' ? '346px' : '100%')};\r\n ${({ size }) => size === 'small' && (`\r\n height: 300px;\r\n `)}\r\n`;\r\n\r\nexport const Sidebar = styled.div<{active?: string}>`\r\n border-radius: 8px 0 0 8px;\r\n background-color: ${({ active }) => (active === '1' ? '#363BC4' : colors.Grey200)};\r\n width: 15px;\r\n`;\r\n\r\nexport const DefaultModeContainer = styled.div`\r\n border: 1px solid #818181;\r\n border-radius: 5px;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n width: 200px;\r\n height: 50px;\r\n margin: 20px;\r\n span{\r\n margin-left: 15px;\r\n }\r\n\r\n`;\r\n","import styled from 'styled-components';\r\nimport { LineIcon, TimeIcon, CalendarIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const VarsCardTitle = styled.div`\r\n font-weight: bold;\r\n padding-bottom: 15px;\r\n`;\r\nexport const VarName = styled.div`\r\n font-weight: bold;\r\n color: #5b5b5b;\r\n`;\r\nexport const VarValue = styled.span<{relevance?: number | string }>`\r\n font-weight: bold;\r\n font-size: ${(props) => (props.relevance === 2 || props.relevance === '2' ? '100%' : '150%')};\r\n`;\r\nexport const VarUnit = styled.span<{relevance?: number | string }>`\r\n font-size: ${(props) => (props.relevance === 2 || props.relevance === '2' ? '85%' : '130%')};\r\n color: #8c8c8c;\r\n padding-left: 0.35em;\r\n`;\r\nexport const CardContainer = styled.div`\r\n margin: 15px;\r\n`;\r\nexport const VarContainer = styled.div`\r\n margin: 10px 0 10px 15px;\r\n min-width: 230px;\r\n`;\r\n\r\nexport const CardElev = styled.div`\r\n margin-top: 24px;\r\n border-radius: 8px;\r\n border: 1px solid ${colors.Grey100};\r\n`;\r\n\r\nexport const RealTimeBox = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n`;\r\n\r\nexport const Bluebar = styled.div`\r\n border-radius: 8px 8px 0 0;\r\n background-color: #363BC4;\r\n height: 20px;\r\n width: 100%;\r\n`;\r\n\r\nexport const Sidebar = styled.div<{active?: string}>`\r\n border-radius: 8px 0 0 8px;\r\n background-color: ${({ active }) => (active === '1' ? '#363BC4' : colors.Grey200)};\r\n width: 15px;\r\n`;\r\n\r\nexport const ConteinerTitle = styled.div`\r\n margin: 5px 0 10px 15px;\r\n min-width: 230px;\r\n\r\n h1 {\r\n color: black;\r\n font-weight: bold;\r\n font-size: 1.2rem;\r\n }\r\n`;\r\n\r\nexport const ContentRealTime = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n flex-wrap: wrap;\r\n`;\r\n\r\nexport const Content = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n padding: 1rem 4rem 2rem 10rem;\r\n width: 400px;\r\n\r\n h3 {\r\n color: #8c8c8c;\r\n font-weight: bold;\r\n }\r\n\r\n span {\r\n display: flex;\r\n flex-direction: row;\r\n color: black;\r\n font-size: 1.7rem;\r\n font-weight: bold;\r\n\r\n p {\r\n color: #8c8c8c;\r\n }\r\n }\r\n`;\r\n\r\nexport const WeekDayButton = styled.div<{ checked: boolean }>`\r\n padding: 8px 10px;\r\n border-radius: 5px;\r\n margin: 5px;\r\n background-color: ${({ checked }) => (checked ? colors.BlueSecondary : 'lightgrey')};\r\n color: ${({ checked }) => (checked ? 'white' : 'black')};\r\n`;\r\n\r\nexport const ControlButtonIcon = styled.img<{ isActive?: boolean, status?: string }>`\r\n max-width: 100%;\r\n ${({ isActive }) => (isActive ? 'filter: brightness(10)' : '')};\r\n ${({ status }) => (status === 'ONLINE' ? '' : 'filter: contrast(0)')};\r\n`;\r\n\r\nexport const ControlButtonIconFancoil = styled.img<{ isActive?: boolean, status?: string }>`\r\n width: 20%;\r\n ${({ isActive }) => (isActive ? 'filter: brightness(10)' : '')};\r\n`;\r\n\r\nexport const ControlButton = styled.div<{ isActive?: boolean, noBorder?: boolean, larger?: boolean, disabled?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: ${({ larger }) => (larger ? '120px' : '70px')};\r\n height: ${({ larger }) => (larger ? '45px' : '70px')};\r\n cursor: pointer;\r\n display: flex;\r\n ${({ larger }) => (larger ? 'padding: 0 11px;' : '')}\r\n align-items: center;\r\n justify-content: ${({ larger }) => (larger ? 'space-between' : 'center')};;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n ${({ disabled }) => (disabled ? `background-color: ${colors.LightGrey_v3};` : '')}\r\n ${({ disabled }) => (disabled ? 'opacity: 0.14;' : '')}\r\n`;\r\n\r\nexport const SelectContainer = styled.div`\r\n position: fixed;\r\n background: white;\r\n border: 1px solid #d3d3d3;\r\n border-radius: 10px;\r\n`;\r\n\r\nexport const SchedCardContainer = styled.div`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-radius: 10px;\r\n display: flex;\r\n flex-direction: row;\r\n margin-bottom: 10px;\r\n width: auto;\r\n min-width: 450px;\r\n`;\r\n\r\nexport const NotyNumStyle = styled.div`\r\n position: absolute;\r\n right: 0;\r\n background-color: #363BC4;\r\n font-size: 11px;\r\n color: white;\r\n display: inline;\r\n padding: 4px 8px;\r\n border-radius: 20px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const NotyNumCornerStyle = styled.div`\r\n position: absolute;\r\n right: -10px;\r\n top: -10px;\r\n background-color: #363BC4;\r\n width: 22px;\r\n height: 22px;\r\n line-height: 22px;\r\n font-size: 12px;\r\n color: white;\r\n display: inline;\r\n border-radius: 10px;\r\n font-weight: bold;\r\n text-align: center;\r\n vertical-align: middle;\r\n`;\r\n\r\nexport const NotyIconStyle = styled.div`\r\n position: relative;\r\n display: inline;\r\n`;\r\n\r\nexport const Container = styled.div`\r\n display: inline-block;\r\n color: ${colors.DarkGrey};\r\n cursor: pointer;\r\n`;\r\n\r\nexport const Slider = styled.div<{ checked }>`\r\n line-height: 0;\r\n display: inline-block;\r\n width: 45px;\r\n height: 25px;\r\n border-radius: 13px;\r\n padding-top: 2px;\r\n position: relative;\r\n -webkit-transition: .4s;\r\n transition: .4s;\r\n background-color: #ccc;\r\n ${({ checked }) => (checked ? 'padding-left: 21px;' : 'padding-left: 3px;')}\r\n`;\r\n\r\nexport const Cursor = styled.div<{ onOff, checked }>`\r\n line-height: 0;\r\n display: inline-block;\r\n width: 21px;\r\n height: 21px;\r\n border: 0;\r\n border-radius: 50%;\r\n ${({ onOff, checked }) => {\r\n if (onOff) {\r\n return checked ? 'background-color: black;' : `background-color: ${colors.BlueSecondary};`;\r\n }\r\n return `background-color: ${colors.BlueSecondary};`;\r\n }}\r\n`;\r\n\r\nexport const Line = styled.div`\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\n\r\nexport const Text = styled.span`\r\nfont-weight: normal;\r\nfont-size: 1em;\r\nline-height: 26px;\r\ncolor: ${colors.Grey400};\r\n`;\r\n\r\nexport const ColoredLine = styled(LineIcon)(\r\n ({ color }) => `\r\n margin-left: 10px;\r\n color: ${color}\r\n`,\r\n);\r\n\r\nexport const WaterTooltip = styled.div`\r\n min-width: 230px;\r\n min-height: 100px;\r\n background: #FFFFFFF7;\r\n border: 1px solid #8c8c8c;\r\n border-radius: 4px;\r\n padding: 15px;\r\n\r\n > span {\r\n font-weight: bold;\r\n color: #000000;\r\n }\r\n\r\n > p {\r\n > strong {\r\n font-size: 150%;\r\n }\r\n margin-bottom: 0;\r\n > span {\r\n font-size: 130%;\r\n color: #8c8c8c;\r\n padding-left: 0.30em;\r\n }\r\n }\r\n`;\r\n\r\nexport const Calendar = styled(CalendarIcon)`\r\n width: 1rem;\r\n height: 1rem;\r\n margin-right: 2px;\r\n`;\r\n\r\nexport const Timer = styled(TimeIcon)`\r\n width: 1rem;\r\n height: 1rem;\r\n margin-right: 2px;\r\n`;\r\n\r\nexport const ParamName = styled.div`\r\n font-weight: 700;\r\n font-size: 14px;\r\n color: #5B5B5B;\r\n`;\r\n\r\nexport const ParamTitle = styled.h3`\r\nfont-weight: 700;\r\nfont-size: 16px;\r\n`;\r\n\r\nexport const ParamValue = styled.div<{ isOk: boolean }>`\r\n font-weight: 700;\r\n font-size: 14px;\r\n padding-bottom: 10px;\r\n ${({ isOk }) => (isOk ? 'color: #5B5B5B' : 'color : #5B5B5B')};\r\n`;\r\n\r\nexport const TextLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n color: #5d5d5d;\r\n`;\r\n\r\nexport const SetpointButton = styled.div<{ up?: boolean, down?: boolean }>`\r\n flex-basis: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-right: 1px solid #D7D7D7;\r\n user-select: none;\r\n ${({ up }) => (up ? 'border-bottom: 1px solid #D7D7D7' : '')}\r\n ${({ down }) => (down ? 'border-top: 1px solid #D7D7D7' : '')}\r\n`;\r\n\r\nexport const ModalContainerLoading = styled.div<{display?: boolean }>`\r\n ${({ display }) => (display ? 'display: block' : 'display: none')}\r\n padding-top: 20%;\r\n align-items: center;\r\n justify-content: center;\r\n flex-direction: column;\r\n width: 100%;\r\n height: 100%;\r\n background-color: #fcfdfcd9;\r\n z-index: 1;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n color: #5B5B5B;\r\n font-size: 14px;\r\n text-align: center;\r\n gap: 8px;\r\n cursor: wait;\r\n pointer-events: none;\r\n h4 {\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 21px;\r\n height: 27px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 21px;\r\n height: 27px;\r\n }\r\n`;\r\n","export default __webpack_public_path__ + \"static/media/schedule.14baa6e2.svg\";","export default __webpack_public_path__ + \"static/media/mode_cool.b05cd6b8.svg\";","export default __webpack_public_path__ + \"static/media/mode_fan.2f7bbd9c.svg\";","import {\r\n apiCall, ApiResps,\r\n} from '~/providers';\r\nimport {\r\n NotyIconStyle, NotyNumStyle, ControlButton, ControlButtonIcon, Title, Data, DataText, NotyIconStyleMini, NotyNumStyleMini, ControlButtonIconMini, ControlButtonMini, TextLine, WeekDayButton, SelectContainer, Sidebar, SchedCardContainer,\r\n} from './styles';\r\nimport {\r\n Bluebar,\r\n} from '../Integrations/IntegrRealTime/styles';\r\nimport {\r\n ModalWindow,\r\n Button,\r\n Loader,\r\n Input,\r\n Checkbox,\r\n} from '~/components';\r\nimport {\r\n driApplicationOpts,\r\n driFancoilsApplications,\r\n driMeterApplications,\r\n driProtocolsOpts,\r\n driVAVsApplications,\r\n} from '~/helpers/driConfigOptions';\r\nimport { Flex } from 'reflexbox';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport {\r\n getCachedDevInfo, getCachedDevInfoSync,\r\n} from '~/helpers/cachedStorage';\r\n\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n ChangeEvent, ReactElement, useEffect, useState,\r\n} from 'react';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport { ToggleSwitchMini } from 'components/ToggleSwitch';\r\nimport {\r\n EditIcon,\r\n CheckboxIcon,\r\n VAVOpenedIcon,\r\n VAVClosedIcon,\r\n} from '~/icons';\r\nimport { SmallTrashIcon } from '~/icons/Trash';\r\nimport img_schedule from '~/assets/img/cool_ico/schedule.svg';\r\nimport img_mode_cool from '~/assets/img/cool_ico/mode_cool.svg';\r\nimport img_mode_fan from '~/assets/img/cool_ico/mode_fan.svg';\r\n\r\nimport { t } from 'i18next';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { checkNewProtocolsValues } from '~/helpers/driConfig';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nexport interface ScheduleInfo {\r\n SCHED_ID: number;\r\n DRI_ID: string;\r\n NAME: string;\r\n ACTIVE: string;\r\n OPERATION: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n MODE: string;\r\n DAYS: string;\r\n SETPOINT: number;\r\n EXCEPTION_DATE: string;\r\n EXCEPTION_REPEAT_YEARLY: string;\r\n}\r\n\r\nexport const DriSchedModeOpts = {\r\n 0: 'COOL',\r\n 1: 'FAN',\r\n};\r\n\r\nexport const MIN_SETPOINT = 15;\r\nexport const MAX_SETPOINT = 30;\r\n\r\nfunction getKeyByValue(object, value) {\r\n return Object.keys(object).find((key) => object[key] === value);\r\n}\r\n\r\nexport const DRIScheduleSummary = (props: { driId: string, layout: 'asset' | 'small-btn' | 'large-btn', devInfo: ApiResps['/get-integration-info']['info'], varsCfg?: { application: string, protocol: string, worksheetName: string }|null|undefined}): JSX.Element => {\r\n const {\r\n driId, varsCfg, layout,\r\n } = props;\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const [state, render, setState] = useStateVar({\r\n driScheds: null as null | {\r\n SCHED_ID: number;\r\n DRI_ID: string;\r\n NAME: string;\r\n ACTIVE: string;\r\n OPERATION: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n MODE: string;\r\n DAYS: string;\r\n SETPOINT: number;\r\n EXCEPTION_DATE: string;\r\n EXCEPTION_REPEAT_YEARLY: string;\r\n }[],\r\n driExceptionScheds: null as null | {\r\n SCHED_ID: number;\r\n DRI_ID: string;\r\n NAME: string;\r\n ACTIVE: string;\r\n OPERATION: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n MODE: string;\r\n DAYS: string;\r\n SETPOINT: number;\r\n EXCEPTION_DATE: string;\r\n EXCEPTION_REPEAT_YEARLY: string;\r\n }[],\r\n modalEditSchedule: null as null | {\r\n schedId: number | undefined\r\n addEdit: 'Add' | 'Edit'\r\n name: string\r\n active: boolean\r\n operation: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon?: boolean\r\n tue?: boolean\r\n wed?: boolean\r\n thu?: boolean\r\n fri?: boolean\r\n sat?: boolean\r\n sun?: boolean\r\n }\r\n isException: boolean\r\n exceptionDate: string\r\n repeatYearly: boolean\r\n useSetpoint: boolean\r\n setpointValue: string\r\n useMode: boolean\r\n mode: number | undefined\r\n },\r\n showScheds: false,\r\n showExceptions: false,\r\n shouldRender: true,\r\n devInfo: getCachedDevInfoSync(driId),\r\n loadingSchedule: false,\r\n loading: true,\r\n driInterval: null as null | number,\r\n totalScheds: 0,\r\n });\r\n async function updateTimeReceiveTelemetries(DRI_ID: string, interval: number) {\r\n try {\r\n await apiCall('/dri/update-time-send-config', {\r\n DRI_ID,\r\n VALUE: interval,\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroAtualizarTempoReceberTelemetrias'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (state.shouldRender) {\r\n Promise.resolve().then(async () => {\r\n try {\r\n setState({ loading: true });\r\n const [\r\n devInfo,\r\n { list: driScheds },\r\n ] = await Promise.all([\r\n getCachedDevInfo(driId, {}),\r\n apiCall('/dri/get-dri-scheds', { DRI_ID: driId }),\r\n ]);\r\n // @ts-ignore\r\n // if (onDevInfoUpdate) onDevInfoUpdate();\r\n state.devInfo = devInfo;\r\n state.driInterval = devInfo.dri.varsCfg.driConfigs.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'interval'))?.value;\r\n state.driScheds = [];\r\n state.driExceptionScheds = [];\r\n state.totalScheds = driScheds.length;\r\n driScheds.forEach((sched) => {\r\n if (sched.EXCEPTION_DATE) {\r\n state.driExceptionScheds && state.driExceptionScheds.push(sched);\r\n } else {\r\n state.driScheds && state.driScheds.push(sched);\r\n }\r\n });\r\n // if (state.driInterval) updateTimeReceiveTelemetries(driId, 2);\r\n render();\r\n } catch (err) { toast.error(t('erro')); console.error(err);\r\n setState({ loading: false }); }\r\n });\r\n }\r\n setState({ shouldRender: false });\r\n }, [state.shouldRender]);\r\n\r\n function generateDaysObject(days) {\r\n return {\r\n mon: days ? days.mon : false,\r\n tue: days ? days.tue : false,\r\n wed: days ? days.wed : false,\r\n thu: days ? days.thu : false,\r\n fri: days ? days.fri : false,\r\n sat: days ? days.sat : false,\r\n sun: days ? days.sun : false,\r\n };\r\n }\r\n\r\n function getSchedTimesValues(item?: ScheduleInfo) {\r\n return {\r\n start_time: item ? item.BEGIN_TIME : '',\r\n start_time_error: '',\r\n end_time: item ? item.END_TIME : '',\r\n end_time_error: '',\r\n };\r\n }\r\n\r\n function getSchedExceptionValues(item?: ScheduleInfo) {\r\n return {\r\n isException: state.showExceptions,\r\n exceptionDate: (item && item.EXCEPTION_DATE) || '',\r\n repeatYearly: !!(item && item.EXCEPTION_REPEAT_YEARLY === '1'),\r\n };\r\n }\r\n\r\n function getSchedSetpointValues(item?: ScheduleInfo) {\r\n return {\r\n useSetpoint: item ? (item.SETPOINT != null && Number(getKeyByValue(DriSchedModeOpts, item.MODE)) !== 1) : false,\r\n setpointValue: item ? (item.SETPOINT != null) ? String(item.SETPOINT) : '24' : '24',\r\n };\r\n }\r\n\r\n function getSchedModeValues(item?: ScheduleInfo) {\r\n return {\r\n useMode: item ? (item.MODE != null) : false,\r\n mode: item ? Number(getKeyByValue(DriSchedModeOpts, item.MODE)) : undefined,\r\n };\r\n }\r\n\r\n function editAddProgramming(item?: ScheduleInfo) {\r\n try {\r\n const days = item && JSON.parse(item.DAYS);\r\n state.modalEditSchedule = {\r\n schedId: item && item.SCHED_ID,\r\n addEdit: item ? 'Edit' : 'Add',\r\n name: (item && item.NAME) || '',\r\n active: !!(item && item.ACTIVE === '1'),\r\n operation: !!(item && item.OPERATION === '1'),\r\n ...getSchedTimesValues(item),\r\n selectedDays: !state.showExceptions ? generateDaysObject(days) : {},\r\n ...getSchedExceptionValues(item),\r\n ...getSchedSetpointValues(item),\r\n ...getSchedModeValues(item),\r\n };\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n function formatStringToDate(str?: string) {\r\n return str && `${str.substring(6, 10)}-${str.substring(3, 5)}-${str.substring(0, 2)}` || undefined;\r\n }\r\n\r\n async function saveNewProgramming() {\r\n try {\r\n if (!state.modalEditSchedule) return;\r\n if (!state.devInfo.GROUP_ID) {\r\n toast.warn(t('necessarioMaquinaAutomatizada'));\r\n return;\r\n }\r\n\r\n if (state.modalEditSchedule.name === '') return toast.error(t('erroDigiteNomeProgramacao'));\r\n if (!state.showExceptions && state.modalEditSchedule.selectedDays && Object.values(state.modalEditSchedule.selectedDays).every((item) => item === false)) {\r\n return toast.error(t('erroSelecionePeloMenosUmDia'));\r\n }\r\n if (state.showExceptions && (state.modalEditSchedule.exceptionDate.length !== 10 || state.modalEditSchedule.exceptionDate.includes('_'))) {\r\n return toast.error(t('erroDataExcecaoObrigatoria'));\r\n }\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.start_time)) return toast.error(t('erroHorarioInvalido'));\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.end_time)) return toast.error(t('erroHorarioInvalido'));\r\n\r\n if (state.modalEditSchedule.addEdit === 'Add') {\r\n await apiCall('/dri/add-dri-sched', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n NAME: state.modalEditSchedule.name,\r\n ACTIVE: state.modalEditSchedule.active ? '1' : '0',\r\n OPERATION: state.modalEditSchedule.operation ? '1' : '0',\r\n BEGIN_TIME: state.modalEditSchedule.start_time,\r\n END_TIME: state.modalEditSchedule.end_time,\r\n MODE: (state.modalEditSchedule.mode !== undefined) && DriSchedModeOpts[state.modalEditSchedule.mode] || undefined,\r\n DAYS: JSON.stringify(state.modalEditSchedule.selectedDays),\r\n SETPOINT: (state.modalEditSchedule.useSetpoint && Number(state.modalEditSchedule.setpointValue)) || undefined,\r\n EXCEPTION_DATE: (state.modalEditSchedule.isException && formatStringToDate(state.modalEditSchedule.exceptionDate)) || undefined,\r\n EXCEPTION_REPEAT_YEARLY: (state.modalEditSchedule.isException && (state.modalEditSchedule.repeatYearly ? '1' : '0')) || undefined,\r\n });\r\n } else if (state.modalEditSchedule.addEdit === 'Edit' && state.modalEditSchedule.schedId) {\r\n await apiCall('/dri/update-dri-sched', {\r\n SCHED_ID: state.modalEditSchedule.schedId,\r\n DRI_ID: state.devInfo.DEV_ID,\r\n NAME: state.modalEditSchedule.name,\r\n ACTIVE: (state.modalEditSchedule && state.modalEditSchedule.active ? '1' : '0') || undefined,\r\n OPERATION: (state.modalEditSchedule && state.modalEditSchedule.operation ? '1' : '0') || undefined,\r\n BEGIN_TIME: (state.modalEditSchedule && state.modalEditSchedule.start_time) || undefined,\r\n END_TIME: (state.modalEditSchedule && state.modalEditSchedule.end_time) || undefined,\r\n MODE: (state.modalEditSchedule.mode !== undefined && DriSchedModeOpts[state.modalEditSchedule.mode]) || undefined,\r\n DAYS: JSON.stringify(state.modalEditSchedule.selectedDays) || undefined,\r\n SETPOINT: state.modalEditSchedule.useSetpoint ? Number(state.modalEditSchedule.setpointValue) : undefined,\r\n EXCEPTION_DATE: (state.modalEditSchedule.isException && formatStringToDate(state.modalEditSchedule.exceptionDate)) || undefined,\r\n EXCEPTION_REPEAT_YEARLY: (state.modalEditSchedule.isException && (state.modalEditSchedule.repeatYearly ? '1' : '0')) || undefined,\r\n });\r\n }\r\n state.modalEditSchedule = null;\r\n setState({ shouldRender: true });\r\n render();\r\n toast.success(t('sucessoAdicionarProgramacao'));\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n async function deleteProgramming(sched) {\r\n try {\r\n const { SCHED_ID, DRI_ID } = sched;\r\n await apiCall('/dri/delete-dri-sched', { SCHED_ID, DRI_ID });\r\n setState({ shouldRender: true });\r\n render();\r\n toast.success(t('sucessoRemoverProgramacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n function showScheds() {\r\n try {\r\n state.showScheds = true;\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n function verifyProfileCanManageProgramming() {\r\n return !!(profile.manageAllClients || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === state.devInfo?.CLIENT_ID));\r\n }\r\n\r\n return (\r\n \r\n {layout === 'asset' && (\r\n <>\r\n \r\n Informações\r\n \r\n \r\n {t('fonteDados')}\r\n \r\n {driId || '-'}\r\n \r\n \r\n \r\n {t('aplicacao')}\r\n \r\n \r\n {varsCfg && (\r\n getKeyByValue(driApplicationOpts, varsCfg.application)\r\n || (getKeyByValue(driMeterApplications, varsCfg.application) && t('medidorEnergia'))\r\n || (getKeyByValue(driVAVsApplications, varsCfg.application) && 'VAV') || (getKeyByValue(driFancoilsApplications, varsCfg.application) && 'Fancoil')\r\n ) || '-'}\r\n\r\n \r\n \r\n {varsCfg && (\r\n getKeyByValue(driMeterApplications, varsCfg.application)\r\n || getKeyByValue(driVAVsApplications, varsCfg.application) || getKeyByValue(driFancoilsApplications, varsCfg.application)\r\n ) && (\r\n \r\n \r\n {t('modelo')}\r\n \r\n \r\n {' '}\r\n {getKeyByValue(driMeterApplications, varsCfg.application) || getKeyByValue(driVAVsApplications, varsCfg.application) || getKeyByValue(driFancoilsApplications, varsCfg.application) || '-'}\r\n \r\n \r\n )}\r\n \r\n \r\n {t('protocoloComunicacao')}\r\n \r\n \r\n {' '}\r\n {varsCfg && getKeyByValue(driProtocolsOpts, varsCfg.protocol) || '-'}\r\n \r\n \r\n \r\n \r\n {t('planilha')}\r\n \r\n {varsCfg && varsCfg.worksheetName || '-'}\r\n \r\n\r\n \r\n {varsCfg?.application?.startsWith('fancoil') && (\r\n \r\n Funcionamento\r\n \r\n {state.driScheds && state.driScheds?.length > 0 ? {state.driScheds?.length} : null}\r\n\r\n { showScheds(); }}\r\n >\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n \r\n Ver Programações\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n\r\n {layout === 'small-btn' && (\r\n \r\n {state.driScheds && state.driScheds?.length > 0 ? {state.driScheds?.length} : null}\r\n { showScheds(); }}\r\n style={{ margin: '0 10px' }}\r\n >\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n \r\n \r\n )}\r\n\r\n {layout === 'large-btn' && (\r\n \r\n {state.driScheds && state.driScheds?.length > 0 ? {state.driScheds?.length} : null}\r\n\r\n { showScheds(); }}\r\n >\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n \r\n Ver Programações\r\n \r\n \r\n \r\n )}\r\n\r\n {(state.showScheds) && (\r\n
\r\n {\r\n if (!state.modalEditSchedule) {\r\n setState({ showScheds: false });\r\n }\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n { state.showExceptions && setState({ showExceptions: !state.showExceptions, showList: false }); }}\r\n >\r\n {t('programacoes')}\r\n \r\n \r\n { (!state.showExceptions) && setState({ showExceptions: !state.showExceptions }); }}\r\n >\r\n {t('excecoes')}\r\n \r\n \r\n
\r\n
\r\n
\r\n {`Total: ${(!state.showExceptions ? state.driScheds?.length : state.driExceptionScheds?.length) || 0}`}\r\n { verifyProfileCanManageProgramming() && (\r\n editAddProgramming()}\r\n >\r\n {t('botaoAdicionarProgramacaoExcecao', { value: !state.showExceptions ? t('Programação') : t('excecao') })}\r\n \r\n )}\r\n
\r\n
\r\n {!state.showExceptions && state.driScheds?.map((sched) => (\r\n editAddProgramming(sched)} onDelete={() => deleteProgramming(sched)} />\r\n ))}\r\n {state.showExceptions && state.driExceptionScheds && (\r\n <>\r\n \r\n \r\n {t('titulo')}\r\n
\r\n \r\n {t('Data')}\r\n
\r\n \r\n {t('repetirTodoAno')}\r\n
\r\n \r\n {t('inicio')}\r\n
\r\n \r\n {t('fim')}\r\n
\r\n \r\n {state.driExceptionScheds?.map((exception) => (\r\n \r\n editAddProgramming(exception)} onDelete={() => deleteProgramming(exception)} />\r\n \r\n ))}\r\n \r\n )}\r\n
\r\n \r\n
\r\n )}\r\n {(state.modalEditSchedule) && (\r\n
\r\n { setState({ modalEditSchedule: null }); }}>\r\n \r\n { setState({ modalEditSchedule: null }); }}\r\n />\r\n \r\n
\r\n )}\r\n \r\n\r\n );\r\n};\r\n\r\nexport function DRISchedForm(props: {\r\n driCfg: { application: string, protocol: string },\r\n modalEditSchedule: {\r\n addEdit: 'Add' | 'Edit'\r\n name: string\r\n active: boolean\r\n operation: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon?: boolean\r\n tue?: boolean\r\n wed?: boolean\r\n thu?: boolean\r\n fri?: boolean\r\n sat?: boolean\r\n sun?: boolean\r\n }\r\n isException: boolean\r\n exceptionDate: string\r\n repeatYearly: boolean\r\n useSetpoint: boolean\r\n setpointValue: string\r\n useMode: boolean\r\n mode: number | undefined\r\n },\r\n onConfirm: () => void\r\n onCancel: () => void\r\n}): JSX.Element {\r\n const [state, render] = useStateVar({\r\n entireDay: (props.modalEditSchedule.start_time === '00:00' && props.modalEditSchedule.end_time === '23:59') as boolean,\r\n editSetpoint: true,\r\n });\r\n\r\n const isEdit = props.modalEditSchedule.addEdit === 'Edit';\r\n\r\n function selectDay(day: string) {\r\n if (props.modalEditSchedule.selectedDays && props.modalEditSchedule.selectedDays[day] !== undefined) {\r\n props.modalEditSchedule.selectedDays[day] = !props.modalEditSchedule.selectedDays[day];\r\n render();\r\n }\r\n }\r\n\r\n return (\r\n
\r\n
{t('editarAdicionarProgramacao', { value: isEdit ? t('editar') : t('botaoAdicionar') })}
\r\n
\r\n
\r\n
{t('titulo')}
\r\n { props.modalEditSchedule.name = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('Programação')}
\r\n
\r\n {props.modalEditSchedule.active ? t('habilitada') : t('desabilitada')}\r\n { props.modalEditSchedule.active = !props.modalEditSchedule.active; render(); }} />\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
{t('selecioneDias')}
\r\n {props.modalEditSchedule.isException ? (\r\n \r\n \r\n \r\n { props.modalEditSchedule.exceptionDate = e.target.value; render(); }}\r\n />\r\n \r\n \r\n {\r\n props.modalEditSchedule.repeatYearly = !props.modalEditSchedule.repeatYearly;\r\n render();\r\n }}\r\n >\r\n \r\n {props.modalEditSchedule.repeatYearly ? : null}\r\n \r\n \r\n
\r\n \r\n {t('repetirTodoOAno')}\r\n
\r\n \r\n

\r\n {t('maquinaPermaneceraDesligadaIntervalosHorariosNaoDefinidos')}\r\n

\r\n \r\n ) : (\r\n
\r\n selectDay('sun')}>DOM\r\n selectDay('mon')}>SEG\r\n selectDay('tue')}>TER\r\n selectDay('wed')}>QUA\r\n selectDay('thu')}>QUI\r\n selectDay('fri')}>SEX\r\n selectDay('sat')}>SAB\r\n
\r\n )}\r\n
\r\n\r\n \r\n
\r\n
{t('horarioInicio')}
\r\n ) => { props.modalEditSchedule!.start_time = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('horarioTermino')}
\r\n ) => { props.modalEditSchedule!.end_time = e.target.value; render(); }}\r\n />\r\n
\r\n {\r\n state.entireDay = !state.entireDay;\r\n if (state.entireDay) {\r\n props.modalEditSchedule.start_time = '00:00';\r\n props.modalEditSchedule.end_time = '23:59';\r\n } else {\r\n props.modalEditSchedule.start_time = '';\r\n props.modalEditSchedule.end_time = '';\r\n }\r\n render();\r\n }}\r\n />\r\n
\r\n\r\n
\r\n {(props.driCfg?.protocol === 'carrier-ecosplit' || props.driCfg?.application.startsWith('fancoil')) && (\r\n
{t('funcionamento')}
\r\n )}\r\n {props.driCfg?.application.startsWith('vav') && (\r\n
{t('atuadorVav')}
\r\n )}\r\n
\r\n {(props.driCfg?.protocol === 'carrier-ecosplit' || props.driCfg?.application.startsWith('fancoil')) && (\r\n {t('ligadoMin')}\r\n )}\r\n {props.driCfg?.application.startsWith('vav') && (\r\n {t('aberto')}\r\n )}\r\n {\r\n props.modalEditSchedule.operation = !props.modalEditSchedule.operation;\r\n if (props.modalEditSchedule.operation) {\r\n if (props.driCfg.protocol === 'carrier-ecosplit' || props.driCfg.application.startsWith('fancoil')) {\r\n props.modalEditSchedule.useMode = true;\r\n props.modalEditSchedule.mode = 0;\r\n }\r\n props.modalEditSchedule.useSetpoint = true;\r\n } else {\r\n props.modalEditSchedule.useSetpoint = false;\r\n props.modalEditSchedule.useMode = false;\r\n }\r\n render();\r\n }}\r\n />\r\n {(props.driCfg?.protocol === 'carrier-ecosplit' || props.driCfg?.application.startsWith('fancoil')) && (\r\n {t('desligadoMin')}\r\n )}\r\n {props.driCfg?.application.startsWith('vav') && (\r\n {t('fechado')}\r\n )}\r\n
\r\n
\r\n\r\n {props.modalEditSchedule.operation && (\r\n
\r\n {(props.driCfg.protocol === 'carrier-ecosplit' || props.driCfg?.application.startsWith('fancoil')) && (\r\n
\r\n {t('selecioneModo')}\r\n \r\n
\r\n { props.modalEditSchedule.mode = 0; props.modalEditSchedule.useSetpoint = true; render(); }}\r\n >\r\n \r\n \r\n
\r\n
\r\n { props.modalEditSchedule.mode = 1; props.modalEditSchedule.useSetpoint = false; render(); }}\r\n >\r\n \r\n \r\n
\r\n \r\n {t('ventilar')}\r\n \r\n \r\n {t('refrigerar')}\r\n \r\n\r\n
\r\n
\r\n )}\r\n {props.modalEditSchedule.useSetpoint && (\r\n
\r\n
\r\n
Setpoint  
\r\n
\r\n
\r\n {state.editSetpoint && (\r\n
\r\n {\r\n if ((Number(props.modalEditSchedule.setpointValue) + 1) >= MIN_SETPOINT\r\n && (Number(props.modalEditSchedule.setpointValue) + 1) <= MAX_SETPOINT) {\r\n props.modalEditSchedule.setpointValue = String(Number(props.modalEditSchedule.setpointValue) + 1);\r\n render();\r\n }\r\n }}\r\n />\r\n {\r\n if ((Number(props.modalEditSchedule.setpointValue) - 1) >= MIN_SETPOINT\r\n && (Number(props.modalEditSchedule.setpointValue) - 1) <= MAX_SETPOINT) {\r\n props.modalEditSchedule.setpointValue = String(Number(props.modalEditSchedule.setpointValue) - 1);\r\n render();\r\n }\r\n }}\r\n />\r\n
\r\n )}\r\n
\r\n {props.modalEditSchedule.setpointValue}\r\n
\r\n
 °C
\r\n
\r\n
\r\n )}\r\n
\r\n )}\r\n\r\n
\r\n \r\n
\r\n
\r\n {t('botaoCancelar')}\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function SchedCard(props: {\r\n sched: ScheduleInfo\r\n driCfg: { application: string, protocol: string },\r\n onEdit: () => void,\r\n onDelete: () => void,\r\n size?: 'small',\r\n canManageProgramming: boolean,\r\n}): JSX.Element {\r\n const [, render] = useStateVar({});\r\n const {\r\n sched, onEdit, onDelete, size,\r\n } = props;\r\n const days = JSON.parse(sched.DAYS);\r\n\r\n return (\r\n \r\n \r\n
\r\n
\r\n
\r\n {sched.NAME}\r\n {\r\n props.canManageProgramming && (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n )\r\n }\r\n
\r\n\r\n
\r\n
{t('Programação')}
\r\n
\r\n {sched.ACTIVE === '1' ? t('habilitada') : t('desabilitada')}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
{ props.driCfg?.application.startsWith('fancoil') ? t('statusAutomacao') : t('funcionamento')}
\r\n
\r\n {props.driCfg?.application.startsWith('vav') && (\r\n
\r\n {sched.OPERATION === '1' ? t('aberto') : t('fechado')}\r\n {sched.OPERATION === '1' && }\r\n {sched.OPERATION === '0' && }\r\n
\r\n )}\r\n {(props.driCfg?.protocol === 'carrier-ecosplit' || props.driCfg?.application.startsWith('fancoil')) && (\r\n
\r\n {(!props.driCfg?.application.startsWith('fancoil')) && (sched.OPERATION === '1' ? t('ligadoMin') : t('desligadoMin'))}\r\n {props.driCfg?.application.startsWith('fancoil') && (sched.OPERATION === '1' ? (sched.MODE === 'COOL' ? 'Refrigerar' : 'Ventilar') : t('desligadoMin'))}\r\n\r\n {sched.MODE === 'COOL' && (\r\n \r\n )}\r\n {sched.MODE === 'FAN' && (\r\n \r\n )}\r\n
\r\n )}\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n {t('horarioDeInicio')}\r\n : \r\n \r\n \r\n {sched.BEGIN_TIME}\r\n \r\n
\r\n
\r\n \r\n {t('horarioDeFim')}\r\n : \r\n \r\n \r\n {sched.END_TIME}\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n {sched.OPERATION === '1' && sched.MODE !== 'FAN' && (\r\n
\r\n
Setpoint
\r\n
\r\n
{sched.SETPOINT}
\r\n
 °C
\r\n
\r\n
\r\n )}\r\n
\r\n\r\n
\r\n {days && (\r\n
\r\n DOM\r\n SEG\r\n TER\r\n QUA\r\n QUI\r\n SEX\r\n SAB\r\n
\r\n )}\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport const ExceptionSchedCard = (props: {\r\n sched: ScheduleInfo,\r\n onEdit: () => void,\r\n onDelete: () => void,\r\n size?: 'small',\r\n}): JSX.Element => {\r\n const [, render] = useStateVar({});\r\n\r\n const { sched, onEdit, onDelete } = props;\r\n\r\n return (\r\n \r\n \r\n {sched.NAME}\r\n
\r\n \r\n {sched.EXCEPTION_DATE.substring(0, sched.EXCEPTION_REPEAT_YEARLY === '1' ? 5 : 10)}\r\n
\r\n \r\n {`${sched.EXCEPTION_REPEAT_YEARLY === '1' ? t('sim') : t('nao')}`}\r\n
\r\n \r\n {sched.BEGIN_TIME}\r\n
\r\n \r\n {sched.END_TIME}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport function LimitExceedTooltip({\r\n disabled,\r\n isException,\r\n children,\r\n}: { disabled: boolean, isException: boolean, children: ReactElement }): ReactElement {\r\n const warnMessage = t(isException ? 'limiteCadastroExcecoesAtingido' : 'limiteCadastroProgramacoesAtingido');\r\n return (\r\n <>\r\n {disabled ? (\r\n
\r\n {children}\r\n \r\n
\r\n ) : (children)}\r\n \r\n );\r\n}\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '../../styles/colors';\r\nimport { Link } from 'react-router-dom';\r\n\r\nexport const Text = styled.span`\r\n font-weight: normal;\r\n font-size: 1em;\r\n color: ${colors.Grey400};\r\n\r\n strong {\r\n font-weight: bold;\r\n color: ${colors.Grey400};\r\n }\r\n`;\r\n\r\nexport const TransparentLink = styled(Link)`\r\n color: inherit;\r\n text-decoration: inherit;\r\n :hover {\r\n color: ${colors.Black};\r\n text-decoration: none;\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const ViewAllContainer = styled.span`\r\n width: 200px;\r\n height: 40px;\r\n border-radius: 10px;\r\n border: 1px solid #D7D7D7;\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n align-self: flex-end;\r\n gap : 8px;\r\n position: absolute;\r\n top: -60px;\r\n right: 0px;\r\n span {\r\n font-weight: 700;\r\n font-size: 12px;\r\n color: #363BC4;\r\n }\r\n box-shadow: 0px 4px 4px 0px #0000001A;\r\n\r\n`;\r\n","import { useEffect, useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport moment from 'moment';\r\nimport 'moment/locale/pt-br';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport {\r\n AssetTree,\r\n} from '~/components/AssetTree';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport {\r\n NoSignalIcon,\r\n BadSignalIcon,\r\n RegularSignalIcon,\r\n GoodSignalIcon,\r\n GreatSignalIcon,\r\n} from '~/icons';\r\n\r\nimport {\r\n Carousel,\r\n Loader,\r\n Button,\r\n} from 'components';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, apiCallFormData, ApiResps } from 'providers';\r\nimport { colors } from 'styles/colors';\r\nimport {\r\n Card,\r\n Data,\r\n DataText,\r\n Title,\r\n} from './styles';\r\nimport { DamScheduleSummary } from '../../SchedulesModals/DAM_Schedule';\r\nimport { DutScheduleSummary } from '../../SchedulesModals/DUT_Schedule';\r\nimport { AssetLayout } from '../AssetLayout';\r\nimport { DRIScheduleSummary } from '../../SchedulesModals/DRI_Shedule';\r\nimport { verifyInfoAdditionalParameters } from '~/helpers/additionalParameters';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { TransparentLink } from '~/pages/NewNotifications/styles';\r\nimport { ReferenceType } from '../../../../providers/types/api-upload-service';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\ntype DevInfo = null\r\n | (\r\n ((ApiResps['/clients/get-asset-info']['info'])|(ApiResps['/clients/get-group-info']))\r\n & { PLACEMENT?: string }\r\n )\r\n\r\nexport const AssetInfo = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n const match = useRouteMatch<{ devId: string, groupId: string }>();\r\n const history = useHistory();\r\n\r\n const [state, render, setState] = useStateVar(() => {\r\n moment.locale('pt-br');\r\n return {\r\n devId: match.params.devId,\r\n groupId: match.params.groupId,\r\n linkBase: match.url.split(`/${match.params.devId}`)[0],\r\n isLoading: true,\r\n devInfo: null as DevInfo,\r\n driInfo: null as null|ApiResps['/get-integration-info'],\r\n additionalMachineParameters: [] as {\r\n ID: number,\r\n COLUMN_NAME: string,\r\n COLUMN_VALUE: string,\r\n }[],\r\n assetSelected: false,\r\n selectedIndex: -1 as number,\r\n automationSelected: false as boolean,\r\n groupSelected: false as boolean,\r\n assetRoleSelected: undefined as undefined|number,\r\n placementSelected: null as null | string,\r\n DEV_AUT: null as string|null,\r\n DUT_ID: null as string|null,\r\n AUTOM_ID: null as string|null,\r\n AUTOM_DEVICE_ID: undefined as number|undefined,\r\n GROUP_INSTALLATION_DATE: null as string|null,\r\n GROUP_MODEL: null as string|null,\r\n FLUID_TYPE: null as string|null,\r\n MCHN_BRAND: null as string|null,\r\n RSSI: null as string|null,\r\n assets: [] as {\r\n ASSET_ID: number,\r\n DAT_ID: string,\r\n AST_TYPE: string,\r\n AST_DESC: string,\r\n DEV_ID: string,\r\n DEVICE_ID: number|null,\r\n H_INDEX: number|null,\r\n AST_ROLE: number,\r\n AST_ROLE_NAME: string,\r\n INSTALLATION_DATE: string,\r\n DAT_INDEX: number,\r\n MCHN_BRAND: string,\r\n CAPACITY_PWR: number,\r\n CAPACITY_UNIT: string,\r\n FLUID_TYPE: string,\r\n MCHN_MODEL: string,\r\n PLACEMENT: string | null,\r\n AST_ROLE_INDEX: number,\r\n selected: boolean,\r\n rssiText: string,\r\n }[],\r\n selectedDevInfo: [] as {\r\n DEV_ID: string,\r\n DEVICE_ID: number,\r\n MODEL: string|null,\r\n CAPACITY_PWR: number|null,\r\n FLUID_TYPE: string|null,\r\n DAT_BEGMON: string|null,\r\n LAST_TELEMETRY: string|null,\r\n STATUS: string|null,\r\n RSSI: string|null,\r\n DEVICE_TIMESTAMP: string|null,\r\n PLACEMENT?: string|null,\r\n }[],\r\n clientName: undefined as undefined|string,\r\n dutAutomationInfo: {} as {\r\n dutId?: string,\r\n placement?: string\r\n },\r\n hasNonDutDeviceInAssets: false as boolean,\r\n };\r\n });\r\n\r\n async function checkSetDutPlacement() {\r\n let cachedDutInfo: { info: { DEV_ID: string, PLACEMENT: string } } | null = null;\r\n if (state.devInfo && state.devId && state.devId.startsWith('DUT')) {\r\n cachedDutInfo = await apiCall('/dut/get-dut-info', { DEV_ID: state.devId });\r\n setState({ devInfo: { PLACEMENT: cachedDutInfo.info.PLACEMENT, ...state.devInfo } });\r\n }\r\n if (state.AUTOM_ID?.startsWith('DUT')) {\r\n // Evitando fazer 2 requests caso dut de automação seja o mesmo do focado\r\n if (state.AUTOM_ID !== state.devId || cachedDutInfo == null) {\r\n cachedDutInfo = await apiCall('/dut/get-dut-info', { DEV_ID: state.AUTOM_ID });\r\n }\r\n setState({ dutAutomationInfo: { dutId: cachedDutInfo.info.DEV_ID, placement: cachedDutInfo.info?.PLACEMENT } });\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n setState({ isLoading: true });\r\n if (state.devId) {\r\n await verifyDevInfo();\r\n }\r\n else {\r\n await verifyGroupInfo();\r\n }\r\n\r\n await verifyAssetInfo();\r\n\r\n if (profile.manageAllClients) {\r\n // @ts-ignore\r\n const { client } = await apiCall('/clients/get-client-info', { CLIENT_ID: state.devInfo.CLIENT_ID });\r\n setState({ clientName: client.NAME });\r\n }\r\n handleUrl();\r\n await checkSetDutPlacement();\r\n } catch (err) {\r\n toast.error(t('erroDadosDispositivo'));\r\n console.log(err);\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (state.groupSelected || state.groupId) {\r\n getMachineAdditionalParameters();\r\n }\r\n }, [state.groupSelected]);\r\n\r\n async function verifyDevInfo() {\r\n if (!state.devId.includes('DAM') && !state.devId.includes('DUT') && !state.devId.includes('DRI')) {\r\n const { info: devInfoRes } = await apiCall('/clients/get-asset-info', { DEV_ID: state.devId, DAT_ID: state.devId, ASSET_ID: state.devId });\r\n state.devInfo = devInfoRes;\r\n }\r\n else {\r\n const devInfoRes = await apiCall('/clients/get-group-info', { GROUP_ID: Number(state.groupId) });\r\n state.devInfo = devInfoRes;\r\n state.automationSelected = true;\r\n }\r\n }\r\n\r\n async function verifyGroupInfo() {\r\n const devInfoRes = await apiCall('/clients/get-group-info', { GROUP_ID: Number(state.groupId) });\r\n state.devInfo = devInfoRes;\r\n state.groupSelected = true;\r\n }\r\n\r\n async function verifyAssetInfo() {\r\n if (state.devInfo?.GROUP_ID) {\r\n const assetsApiResponse = await apiCall('/clients/get-client-assets-by-group',\r\n {\r\n CLIENT_ID: [state.devInfo?.CLIENT_ID] || undefined,\r\n GROUP_ID: state.groupId ? Number(state.groupId) : state.devInfo?.GROUP_ID,\r\n });\r\n\r\n state.DEV_AUT = assetsApiResponse.DEV_AUT || assetsApiResponse.DAM_ID;\r\n state.DUT_ID = assetsApiResponse.DUT_ID;\r\n\r\n let condenser = 0;\r\n let evaporator = 0;\r\n let heatExchanger = 0;\r\n\r\n for (let index = 0; index < assetsApiResponse.assets.length; index++) {\r\n if (assetsApiResponse.assets[index].AST_ROLE === 1 && assetsApiResponse.assets[index].DEV_ID === '' && assetsApiResponse.DUT_ID?.length > 1) {\r\n assetsApiResponse.assets[index].DEV_ID = assetsApiResponse.DUT_ID;\r\n }\r\n\r\n if (assetsApiResponse.assets[index].DAT_INDEX === 0) {\r\n condenser += assetsApiResponse.assets[index].AST_ROLE === 2 ? 1 : 0;\r\n evaporator += assetsApiResponse.assets[index].AST_ROLE === 1 ? 1 : 0;\r\n heatExchanger += assetsApiResponse.assets[index].AST_ROLE === 4 ? 1 : 0;\r\n }\r\n\r\n let astRoleIndex = condenser;\r\n astRoleIndex = assetsApiResponse.assets[index].AST_ROLE === 1 ? evaporator : astRoleIndex;\r\n astRoleIndex = assetsApiResponse.assets[index].AST_ROLE === 4 ? heatExchanger : astRoleIndex;\r\n\r\n state.assets.push({\r\n ASSET_ID: assetsApiResponse.assets[index].ASSET_ID,\r\n DAT_ID: assetsApiResponse.assets[index].DAT_ID,\r\n AST_TYPE: assetsApiResponse.assets[index].AST_TYPE,\r\n AST_DESC: assetsApiResponse.assets[index].AST_DESC,\r\n DEV_ID: assetsApiResponse.assets[index].DEV_ID,\r\n DEVICE_ID: assetsApiResponse.assets[index].DEVICE_ID,\r\n H_INDEX: assetsApiResponse.assets[index].H_INDEX,\r\n AST_ROLE: assetsApiResponse.assets[index].AST_ROLE,\r\n AST_ROLE_NAME: assetsApiResponse.assets[index].AST_ROLE_NAME,\r\n INSTALLATION_DATE: assetsApiResponse.assets[index].INSTALLATION_DATE,\r\n DAT_INDEX: assetsApiResponse.assets[index].DAT_INDEX,\r\n MCHN_BRAND: assetsApiResponse.assets[index].MCHN_BRAND,\r\n CAPACITY_PWR: assetsApiResponse.assets[index].CAPACITY_PWR,\r\n CAPACITY_UNIT: assetsApiResponse.assets[index].CAPACITY_UNIT,\r\n FLUID_TYPE: assetsApiResponse.assets[index].FLUID_TYPE,\r\n MCHN_MODEL: assetsApiResponse.assets[index].MCHN_MODEL,\r\n AST_ROLE_INDEX: astRoleIndex,\r\n PLACEMENT: assetsApiResponse.assets[index].PLACEMENT,\r\n selected: assetsApiResponse.assets[index].DAT_ID === state.devId || assetsApiResponse.assets[index].DEV_ID === state.devId || assetsApiResponse.assets[index].ASSET_ID === Number(state.devId),\r\n rssiText: t('excelente'),\r\n });\r\n\r\n if (state.assets[state.assets.length - 1].selected) {\r\n state.assetSelected = true;\r\n state.selectedIndex = index;\r\n state.assetRoleSelected = assetsApiResponse.assets[index].AST_ROLE;\r\n }\r\n\r\n if (state.assets[index].DEV_ID && !state.assets[index].DEV_ID.startsWith('DUT')) {\r\n state.hasNonDutDeviceInAssets = true;\r\n }\r\n // Get dev info\r\n if (assetsApiResponse.assets[index].DEV_ID) {\r\n const itemDev = await apiCall('/get-dev-full-info', { DEV_ID: assetsApiResponse.assets[index].DEV_ID });\r\n state.selectedDevInfo.push({\r\n DEV_ID: assetsApiResponse.assets[index].DEV_ID,\r\n DEVICE_ID: itemDev.info.DEVICE_ID,\r\n MODEL: itemDev.dac?.DAC_MODEL || null,\r\n CAPACITY_PWR: itemDev.dac?.CAPACITY_PWR || 0,\r\n FLUID_TYPE: itemDev.dac?.FLUID_TYPE || null,\r\n LAST_TELEMETRY: '',\r\n STATUS: '',\r\n RSSI: null,\r\n DEVICE_TIMESTAMP: null,\r\n DAT_BEGMON: itemDev.info.DAT_BEGMON,\r\n });\r\n if (!assetsApiResponse.assets[index].DEVICE_ID) {\r\n assetsApiResponse.assets[index].DEVICE_ID = itemDev.info.DEVICE_ID;\r\n state.assets[index].DEVICE_ID = itemDev.info.DEVICE_ID;\r\n }\r\n }\r\n }\r\n\r\n if (state.groupId || state.devInfo.GROUP_ID) {\r\n const groupIdToRequest = state.groupId || state.devInfo.GROUP_ID;\r\n const groupInfo = await apiCall('/clients/get-group-info', { GROUP_ID: Number(groupIdToRequest) });\r\n state.GROUP_INSTALLATION_DATE = groupInfo.INSTALLATION_DATE;\r\n state.FLUID_TYPE = groupInfo.FLUID_TYPE;\r\n state.MCHN_BRAND = groupInfo.MCHN_BRAND;\r\n state.GROUP_MODEL = groupInfo.MODEL;\r\n state.AUTOM_ID = groupInfo.AUTOM_ID;\r\n state.AUTOM_DEVICE_ID = groupInfo.AUTOM_DEVICE_ID;\r\n if (state.AUTOM_ID && state.AUTOM_ID.startsWith('DRI')) {\r\n state.driInfo = await apiCall('/get-integration-info', { supplier: 'diel', integrId: state.AUTOM_ID });\r\n }\r\n }\r\n }\r\n else {\r\n const assetApiResponse = await apiCall('/clients/get-client-asset',\r\n {\r\n CLIENT_ID: [state.devInfo?.CLIENT_ID] || undefined,\r\n // @ts-ignore\r\n ASSET_ID: state.devInfo.ASSET_ID || undefined,\r\n });\r\n\r\n state.selectedIndex = 0;\r\n state.assets.push({\r\n ASSET_ID: assetApiResponse.asset.ASSET_ID,\r\n DAT_ID: assetApiResponse.asset.DAT_ID,\r\n AST_TYPE: assetApiResponse.asset.AST_TYPE,\r\n AST_DESC: assetApiResponse.asset.AST_DESC,\r\n DEV_ID: assetApiResponse.asset.DEV_ID,\r\n DEVICE_ID: assetApiResponse.asset.DEVICE_ID,\r\n H_INDEX: assetApiResponse.asset.H_INDEX,\r\n AST_ROLE: assetApiResponse.asset.AST_ROLE,\r\n AST_ROLE_NAME: assetApiResponse.asset.AST_ROLE_NAME,\r\n INSTALLATION_DATE: assetApiResponse.asset.INSTALLATION_DATE,\r\n DAT_INDEX: assetApiResponse.asset.DAT_INDEX,\r\n MCHN_BRAND: assetApiResponse.asset.MCHN_BRAND,\r\n CAPACITY_PWR: assetApiResponse.asset.CAPACITY_PWR,\r\n CAPACITY_UNIT: assetApiResponse.asset.CAPACITY_UNIT,\r\n FLUID_TYPE: assetApiResponse.asset.FLUID_TYPE,\r\n MCHN_MODEL: assetApiResponse.asset.MCHN_MODEL,\r\n AST_ROLE_INDEX: 0,\r\n PLACEMENT: null,\r\n selected: assetApiResponse.asset.DAT_ID === state.devId || assetApiResponse.asset.DEV_ID === state.devId || assetApiResponse.asset.ASSET_ID === Number(state.devId),\r\n rssiText: t('excelente'),\r\n });\r\n state.assetSelected = true;\r\n state.assetRoleSelected = assetApiResponse.asset.AST_ROLE;\r\n\r\n // Get dev info\r\n if (assetApiResponse.asset.DEV_ID) {\r\n const itemDev = await apiCall('/get-dev-full-info', { DEV_ID: assetApiResponse.asset.DEV_ID });\r\n state.selectedDevInfo.push({\r\n DEV_ID: assetApiResponse.asset.DEV_ID,\r\n DEVICE_ID: itemDev.info.DEVICE_ID,\r\n MODEL: itemDev.dac?.DAC_MODEL || null,\r\n CAPACITY_PWR: itemDev.dac?.CAPACITY_PWR || 0,\r\n FLUID_TYPE: itemDev.dac?.FLUID_TYPE || null,\r\n LAST_TELEMETRY: '',\r\n STATUS: '',\r\n RSSI: null,\r\n DEVICE_TIMESTAMP: null,\r\n DAT_BEGMON: itemDev.info.DAT_BEGMON,\r\n });\r\n\r\n if (!assetApiResponse.asset.DEV_ID.startsWith('DUT')) {\r\n state.hasNonDutDeviceInAssets = true;\r\n }\r\n }\r\n }\r\n }\r\n\r\n async function getMachineAdditionalParameters() {\r\n const additionalParameters = await apiCall('/get-machine-additional-parameters', { MACHINE_ID: Number(state.groupId) });\r\n state.additionalMachineParameters = additionalParameters;\r\n }\r\n\r\n function handleUrl() {\r\n if (!state.groupId && state.devInfo?.GROUP_ID) {\r\n state.groupId = state.devInfo.GROUP_ID.toString();\r\n state.linkBase = `/analise/maquina/${state.groupId}/ativos`;\r\n const devAux = state.assets[state.selectedIndex]?.ASSET_ID;\r\n const url = `${state.linkBase}/${devAux}/informacoes`;\r\n history.push(url);\r\n }\r\n else if (!state.devInfo?.GROUP_ID) {\r\n state.linkBase = '/analise/ativo';\r\n const devAux = state.assets[state.selectedIndex]?.ASSET_ID;\r\n const url = `${state.linkBase}/${devAux}/informacoes`;\r\n history.push(url);\r\n }\r\n\r\n if (state.linkBase.endsWith('/')) {\r\n state.linkBase = state.linkBase.slice(0, -1);\r\n }\r\n }\r\n\r\n function getCarouselId() {\r\n return state.assetSelected ? state.assets[state.selectedIndex].ASSET_ID : state.groupId;\r\n }\r\n\r\n async function handleGetImages() {\r\n if (state.assetSelected) {\r\n if (state.assets[state.selectedIndex].DEV_ID) {\r\n let referenceType: ReferenceType = 'DACS';\r\n if (state.assets[state.selectedIndex].DEV_ID.startsWith('DUT')) {\r\n referenceType = 'DUTS';\r\n }\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.assets[state.selectedIndex].DEVICE_ID!,\r\n referenceType,\r\n });\r\n }\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.assets[state.selectedIndex].ASSET_ID!,\r\n referenceType: 'ASSETS',\r\n });\r\n }\r\n\r\n const listAll = await Promise.all(state.assets.map((item) => {\r\n if (item.DEV_ID?.startsWith('DAC')) {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: item.DEVICE_ID!,\r\n referenceType: 'DACS',\r\n });\r\n }\r\n if (item.DEV_ID?.startsWith('DUT')) {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: item.DEVICE_ID!,\r\n referenceType: 'DUTS',\r\n });\r\n }\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: item.ASSET_ID,\r\n referenceType: 'ASSETS',\r\n });\r\n }));\r\n\r\n let list = [] as string[];\r\n\r\n const listGroup = await apiCall('/upload-service/get-images', {\r\n referenceId: Number(state.groupId),\r\n referenceType: 'MACHINES',\r\n });\r\n list = list.concat(listGroup.list);\r\n listAll.forEach((item) => list = list.concat(item.list));\r\n\r\n return { list };\r\n }\r\n\r\n async function handlePostImage(photo: Blob) {\r\n if (state.assetSelected) {\r\n if (state.assets[state.selectedIndex].DEV_ID) {\r\n let referenceType: ReferenceType = 'DACS';\r\n if (state.assets[state.selectedIndex].DEV_ID.startsWith('DUT')) {\r\n referenceType = 'DUTS';\r\n }\r\n return apiCallFormData('/upload-service/upload-image', { referenceId: state.assets[state.selectedIndex].DEVICE_ID!, referenceType }, { file: photo });\r\n }\r\n return apiCallFormData('/upload-service/upload-image', { referenceId: state.assets[state.selectedIndex].ASSET_ID, referenceType: 'ASSETS' }, { file: photo });\r\n }\r\n return apiCallFormData('/upload-service/upload-image', { referenceId: Number(state.groupId), referenceType: 'MACHINES' }, { file: photo });\r\n }\r\n\r\n async function handleDeleteImage(imageUrl: string) {\r\n if (state.assetSelected) {\r\n if (state.assets[state.selectedIndex].DEV_ID.length > 0) {\r\n if (state.assets[state.selectedIndex].DEV_ID.startsWith('DUT')) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.assets[state.selectedIndex].DEVICE_ID!,\r\n referenceType: 'DUTS',\r\n filename: imageUrl,\r\n });\r\n }\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.assets[state.selectedIndex].DEVICE_ID!,\r\n referenceType: 'DACS',\r\n filename: imageUrl,\r\n });\r\n }\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.assets[state.selectedIndex].ASSET_ID,\r\n referenceType: 'ASSETS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n if (imageUrl.includes('assets_images') || imageUrl.includes('ASSETS/')) {\r\n const beginAssetIdIndex = imageUrl.includes('assets_images/') ? imageUrl.lastIndexOf('assets_images/') : imageUrl.lastIndexOf('ASSETS/');\r\n const assetId = imageUrl.substring(beginAssetIdIndex + (imageUrl.includes('assets_images/') ? 'assets_images/' : 'ASSETS/').length).split('-')[0].toUpperCase();\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: Number(assetId.slice(assetId.indexOf('_') + 1)),\r\n referenceType: 'ASSETS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n if (imageUrl.includes('dev_groups_images') || imageUrl.includes('MACHINES')) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: Number(state.groupId),\r\n referenceType: 'MACHINES',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n const beginDacIdIndex = imageUrl.includes('dac_images/') ? imageUrl.lastIndexOf('dac_images/') : imageUrl.lastIndexOf('DACS/');\r\n const dacId = imageUrl.substring(beginDacIdIndex + (imageUrl.includes('dac_images/') ? 'dac_images/' : 'DACS/').length).split('-')[0];\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: Number(dacId),\r\n referenceType: 'DACS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n function getReferenceTypeDevAut(): ReferenceType {\r\n if (state.AUTOM_ID?.startsWith('DAM')) {\r\n return 'DAMS';\r\n }\r\n if (state.AUTOM_ID?.startsWith('DRI')) {\r\n return 'DRIS';\r\n }\r\n if (state.AUTOM_ID?.startsWith('DAC')) {\r\n return 'DACS';\r\n }\r\n return 'DUTS';\r\n }\r\n\r\n const handleGetAutomationImages = async () => {\r\n const referenceType = getReferenceTypeDevAut();\r\n\r\n if (referenceType) {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.AUTOM_DEVICE_ID!,\r\n referenceType,\r\n });\r\n }\r\n return { list: [] };\r\n };\r\n\r\n const handlePostAutomationImage = async (photo: Blob) => {\r\n const referenceType = getReferenceTypeDevAut();\r\n return apiCallFormData('/upload-service/upload-image', { referenceId: state.AUTOM_DEVICE_ID!, referenceType }, { file: photo });\r\n };\r\n\r\n const handleDeleteAutomationImage = async (imageUrl: string) => {\r\n const referenceType = getReferenceTypeDevAut();\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.AUTOM_DEVICE_ID!,\r\n referenceType,\r\n filename: imageUrl,\r\n });\r\n };\r\n\r\n function showButton() {\r\n if (state.assetSelected) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n const { devInfo } = state;\r\n\r\n function groupName(group: {GROUP_NAME: string} | null) {\r\n return group?.GROUP_NAME || t('semInformacao');\r\n }\r\n\r\n async function selectedCard(position: number) {\r\n setState({ isLoading: true });\r\n state.selectedIndex = position;\r\n state.assetSelected = position > -1;\r\n state.automationSelected = position === -1;\r\n state.groupSelected = position === -2;\r\n state.assetRoleSelected = state.assetSelected ? state.assets[state.selectedIndex].AST_ROLE : undefined;\r\n state.placementSelected = state.assetSelected && state.assets[state.selectedIndex].PLACEMENT ? state.assets[state.selectedIndex].PLACEMENT : null;\r\n\r\n let urlAux = '';\r\n if (state.assetSelected) {\r\n const devAux = state.assets[state.selectedIndex].DEV_ID || state.assets[state.selectedIndex].DAT_ID || state.assets[state.selectedIndex].ASSET_ID;\r\n urlAux = `${state.linkBase}/${devAux}/informacoes`;\r\n }\r\n else if (state.automationSelected) {\r\n urlAux = state.AUTOM_ID ? `${state.linkBase}/${state.AUTOM_ID}/informacoes` : state.linkBase;\r\n }\r\n else {\r\n urlAux = state.AUTOM_ID ? `${state.linkBase}` : state.linkBase;\r\n }\r\n\r\n history.push(urlAux);\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n\r\n function devSelected() {\r\n const result = (state.assetSelected ? (state.assets[state.selectedIndex].DEV_ID || state.assets[state.selectedIndex].DAT_ID) : state.AUTOM_ID);\r\n return result;\r\n }\r\n\r\n function devText() {\r\n let result = (state.assetSelected ? (state.assets[state.selectedIndex].DAT_ID) : state.AUTOM_ID) || null;\r\n result = !state.groupSelected ? result : state.groupId;\r\n if (state.assetSelected && state.assets[state.selectedIndex].DEV_ID) {\r\n result = result ? `${result}/${state.assets[state.selectedIndex].DEV_ID}` : `${state.assets[state.selectedIndex].DEV_ID}`;\r\n }\r\n return result;\r\n }\r\n\r\n function capacityPowerText() {\r\n let totalCapacity = 0;\r\n state.assets.forEach((asset) => { if (asset.AST_ROLE === 2) totalCapacity += asset.CAPACITY_PWR; });\r\n return state.assetSelected ? formatNumberWithFractionDigits(state.assets[state.selectedIndex].CAPACITY_PWR ?? t('semInformacao')) : formatNumberWithFractionDigits(totalCapacity);\r\n }\r\n\r\n function capacityUnitText() {\r\n return state.assets[(state.selectedIndex > -1 ? state.selectedIndex : 0)]?.CAPACITY_UNIT || '';\r\n }\r\n\r\n function fluidTypeText() {\r\n const indexAux = state.selectedIndex > -1 ? state.selectedIndex : 0;\r\n const fluidAux = state.assetSelected ? state.assets[indexAux].FLUID_TYPE : state.FLUID_TYPE;\r\n return fluidAux || t('semInformacao');\r\n }\r\n\r\n function modelText() {\r\n const modelAux = state.assetSelected ? state.assets[state.selectedIndex].MCHN_MODEL : state.GROUP_MODEL || (state.assets[0]?.MCHN_MODEL || null);\r\n return modelAux || t('semInformacao');\r\n }\r\n\r\n function brandText() {\r\n const indexAux = state.selectedIndex > -1 ? state.selectedIndex : 0;\r\n const brandAux = state.assetSelected ? state.assets[indexAux].MCHN_BRAND : state.MCHN_BRAND;\r\n return brandAux || t('semInformacao');\r\n }\r\n\r\n function instalationDateText() {\r\n const monitorationDateAux = state.assetSelected ? state.assets[state.selectedIndex].INSTALLATION_DATE : state.GROUP_INSTALLATION_DATE;\r\n return (monitorationDateAux && moment(monitorationDateAux).format('DD/MM/YYYY')) || t('semInformacao');\r\n }\r\n\r\n function formatRssiIcon(rssi: string) {\r\n switch (rssi) {\r\n case t('excelente'): return ;\r\n case t('bom'): return ;\r\n case t('regular'): return ;\r\n case t('ruim'): return ;\r\n default: return ;\r\n }\r\n }\r\n\r\n function showEditButton() {\r\n if (!state.groupSelected && (state.assetSelected || state.automationSelected)) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function showTree() {\r\n if (state.groupId) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function editDevice() {\r\n if (state.assetSelected) {\r\n if (state.assets[state.selectedIndex].DEV_ID) {\r\n history.push(`${state.linkBase}/${state.assets[state.selectedIndex].DEV_ID}/editar`);\r\n }\r\n else if (!state.assets[state.selectedIndex].DAT_INDEX) {\r\n history.push(`${state.linkBase}/${state.assets[state.selectedIndex].ASSET_ID}/editarAtivo`);\r\n }\r\n else {\r\n history.push(`${state.linkBase}/${state.assets[state.selectedIndex].ASSET_ID}/editarAtivo/${state.assets[state.selectedIndex].DAT_INDEX}`);\r\n }\r\n }\r\n else if (state.automationSelected && state.AUTOM_ID) {\r\n history.push(`${state.linkBase}/${state.AUTOM_ID}/editar`);\r\n }\r\n }\r\n\r\n function showStatus() {\r\n return state.assetSelected ? state.assets[state.selectedIndex]?.DEV_ID?.length > 0 : (state.automationSelected && state.AUTOM_ID != null);\r\n }\r\n\r\n function getGroupName() {\r\n return !state.groupSelected ? t('ativo') : t('maquina');\r\n }\r\n\r\n function getIsDevice() {\r\n return (devText()?.startsWith('DUT') || devText()?.startsWith('DAM') || devText()?.startsWith('DAC'));\r\n }\r\n\r\n function getEditDevicePermissions(devInfo) {\r\n return (profile.manageAllClients || profile.permissions.CLIENT_MANAGE.includes(devInfo.CLIENT_ID)) && (showEditButton());\r\n }\r\n\r\n function buildScreenInfoParams(): Parameters<(typeof AssetLayout)>[0]['screenInfo'] {\r\n // caso onde dispositivo de automação não é o próprio DUT duo selecionado.\r\n // Queremos ocultar pois não existe falha possível se isso acontecer.\r\n // Se não houver dispositivo de automação, seguimos a lógica normal de decidir se aba aparece ou não.\r\n const shouldForceHideHealthTab = state.assetRoleSelected !== undefined\r\n && state.devInfo?.PLACEMENT === 'DUO'\r\n && ((state.dutAutomationInfo?.dutId ?? state.devId) !== state.devId);\r\n return {\r\n assetRoleSelected: state.assetRoleSelected,\r\n groupSelected: state.groupSelected,\r\n hasNonDutDeviceInAssets: state.hasNonDutDeviceInAssets,\r\n dutAutomationInfo: {\r\n placement: state.dutAutomationInfo?.placement,\r\n dutId: state.dutAutomationInfo?.dutId,\r\n },\r\n devAssociated: state?.assets[state.selectedIndex]?.DEV_ID,\r\n isDuoSelected: state.devInfo?.PLACEMENT === 'DUO' || state.dutAutomationInfo?.placement === 'DUO' || state.placementSelected === 'DUO',\r\n forceHideHealthTab: shouldForceHideHealthTab,\r\n };\r\n }\r\n\r\n function isAssetWithoutIdSelected() {\r\n return state.assetSelected\r\n && !state.assets[state.selectedIndex]?.DAT_ID\r\n && !state.assets[state.selectedIndex]?.DEV_ID;\r\n }\r\n\r\n const isDesktop = window.matchMedia('(min-width: 765px)');\r\n const isMobile = !isDesktop.matches;\r\n function selectedDecideName() {\r\n if (state.assetSelected) {\r\n return state.assets[state.selectedIndex].AST_DESC;\r\n }\r\n if (state.groupSelected) {\r\n return state.devInfo?.GROUP_NAME;\r\n }\r\n if (state.automationSelected) {\r\n return state.DEV_AUT;\r\n }\r\n return null;\r\n }\r\n function selectedDecideNameInfo() {\r\n if (state.assetSelected) {\r\n return t('ativo');\r\n }\r\n if (state.automationSelected) {\r\n return t('automacao');\r\n }\r\n return t('maquina');\r\n }\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(selectedDecideName(), selectedDecideNameInfo())}\r\n \r\n \r\n \r\n \r\n {showTree()\r\n && (\r\n \r\n {state.isLoading\r\n ? (\r\n \r\n )\r\n : (\r\n <>\r\n
\r\n \r\n {t('maquina')}\r\n \r\n
\r\n \r\n \r\n )}\r\n
\r\n )}\r\n \r\n {state.isLoading\r\n ? (\r\n \r\n )\r\n : (devInfo && (\r\n \r\n \r\n \r\n
\r\n \r\n {getGroupName()}\r\n \r\n
\r\n \r\n {state.assets[state.selectedIndex]?.AST_DESC || groupName(devInfo)}\r\n \r\n
\r\n {!isAssetWithoutIdSelected() && (\r\n \r\n \r\n {!state.groupSelected ? t('devId') : t('idMaquina')}\r\n \r\n {getIsDevice() ? (\r\n \r\n {devText()}\r\n \r\n )\r\n : (\r\n \r\n {devText()}\r\n \r\n )}\r\n \r\n )}\r\n
\r\n {showStatus()\r\n && (\r\n \r\n \r\n \r\n )}\r\n
\r\n {(!state.automationSelected || (state.automationSelected && state.AUTOM_ID?.startsWith('DRI'))) && (\r\n \r\n )}\r\n \r\n \r\n \r\n {!state.automationSelected && (\r\n <>\r\n \r\n \r\n
\r\n \r\n {t('informacoes')}\r\n \r\n {state.assetSelected\r\n && (\r\n \r\n \r\n {t('tipoAtivo')}\r\n \r\n {state.assets[state.selectedIndex].AST_ROLE_NAME}\r\n \r\n )}\r\n {!state.assetSelected && (\r\n \r\n \r\n {t('fabricante')}\r\n \r\n {brandText()}\r\n \r\n ) }\r\n \r\n \r\n {t('modelo')}\r\n \r\n {modelText()}\r\n \r\n \r\n \r\n {t('capacidadeFrigorifica')}\r\n \r\n {`${capacityPowerText()} ${capacityUnitText()}`}\r\n \r\n \r\n \r\n {t('fluidoRefrigerante')}\r\n \r\n {fluidTypeText()}\r\n \r\n \r\n \r\n {t('dataInstalacao')}\r\n \r\n {instalationDateText()}\r\n \r\n
\r\n
\r\n
\r\n {(state.groupSelected && state.additionalMachineParameters.length > 0) && (\r\n \r\n \r\n {verifyInfoAdditionalParameters(state.additionalMachineParameters)}\r\n \r\n \r\n )}\r\n \r\n {getEditDevicePermissions(devInfo) && (\r\n
\r\n editDevice()}\r\n variant=\"primary\"\r\n >\r\n {t('botaoEditar')}\r\n \r\n
\r\n )}\r\n
\r\n \r\n )}\r\n {(state.automationSelected && state.AUTOM_ID) && (\r\n \r\n \r\n
\r\n {state.AUTOM_ID.startsWith('DAM') && (\r\n \r\n )}\r\n {state.AUTOM_ID.startsWith('DUT') && (\r\n \r\n )}\r\n {state.AUTOM_ID.startsWith('DRI') && state.driInfo && (\r\n \r\n )}\r\n \r\n {getEditDevicePermissions(devInfo) && (\r\n
\r\n editDevice()}\r\n variant=\"primary\"\r\n >\r\n {t('editar')}\r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n {!state.automationSelected && (\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n {(state.automationSelected && state.AUTOM_ID) && (\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n
\r\n
\r\n ) || null)}\r\n \r\n \r\n
\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('AssetInfo', 'component')(AssetInfo);\r\n","import {\r\n useEffect,\r\n} from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\nimport {\r\n Select, Button, Loader, FormAsset,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport { colors } from 'styles/colors';\r\nimport { AssetLayout } from './AssetLayout';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\ntype Asset = {\r\n index: number,\r\n name: string,\r\n installationLocation: string | null,\r\n datId: string|null,\r\n devId: string|null,\r\n roleId: number|null,\r\n role: string|null,\r\n type: string|null,\r\n brandName: string|null,\r\n model: string|null,\r\n refrigerationCapacity: string|null,\r\n ratedPower: string|null,\r\n refrigerationFluid: string|null,\r\n capacityMeasurementUnit: string|null,\r\n devClientAssetId: number|null,\r\n datIndex: number|null,\r\n devIdPersisted: string|null,\r\n assetId: number|null,\r\n};\r\n\r\nexport const EditAssetInfo = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ devId: string, indexId: string }>();\r\n const [state, render, setState] = useStateVar(() => ({\r\n devId: routeParams.devId,\r\n indexId: routeParams.indexId != null ? Number(routeParams.indexId) : undefined,\r\n isLoading: true,\r\n devInfo: null as null|(ApiResps['/clients/get-asset-info']['info']),\r\n formData: {\r\n CLIENT_ID_item: null as null|{ NAME: string, CLIENT_ID: number },\r\n UNIT_ID_item: null as null|{ UNIT_NAME: string, UNIT_ID: number },\r\n GROUP_ID_item: null as null|{ label: string, value: number, unit: number },\r\n MCHN_APPL_item: null as null|{ label: string, value: string },\r\n FLUID_TYPE_item: null as null|{ label: string, value: string },\r\n AST_TYPE_item: null as null|{ label: string, value: string, tags: string },\r\n MCHN_ENV_item: null as null|{ label: string, value: string, tags: string },\r\n MCHN_BRAND_item: null as null|{ label: string, value: string },\r\n CAPACITY_UNIT_item: null as null|{ value: string },\r\n MCHN_MODEL: '',\r\n AST_DESC: '',\r\n CAPACITY_PWR: '',\r\n MCHN_KW: '',\r\n GROUP_ID: null as number|null,\r\n UNIT_ID: null as number|null,\r\n CLIENT_ID: null as number|null,\r\n\r\n asset: {\r\n index: 0 as number,\r\n name: null as string|null,\r\n installationLocation: null as string | null,\r\n datId: null as string|null,\r\n devId: null as string|null,\r\n roleId: null as number|null,\r\n role: null as string|null,\r\n type: null as string|null,\r\n brandName: null as string|null,\r\n model: null as string|null,\r\n refrigerationCapacity: null as string|null,\r\n ratedPower: null as string|null,\r\n refrigerationFluid: null as string|null,\r\n capacityMeasurementUnit: null as string|null,\r\n devClientAssetId: null as number|null,\r\n datIndex: null as number|null,\r\n devIdPersisted: null as string|null,\r\n assetId: null as number|null,\r\n },\r\n },\r\n comboOpts: {\r\n yesNo: [\r\n {\r\n label: 'Sim', value: '1', valueN: 1, valueNinv: 0,\r\n },\r\n {\r\n label: 'Não', value: '0', valueN: 0, valueNinv: 1,\r\n },\r\n ] as { label: string, value: string, valueN: 0|1, valueNinv: 0|1 }[],\r\n capacUnits: [\r\n { label: 'TR', value: 'TR' },\r\n { label: 'BTU/hr', value: 'BTU/hr' },\r\n { label: 'kW', value: 'kW' },\r\n { label: 'HP', value: 'HP' },\r\n ],\r\n clients: [] as { NAME: string, CLIENT_ID: number }[],\r\n states: [] as { STATE_NAME: string, STATE_ID: string }[],\r\n cities: [] as { CITY_NAME: string, CITY_ID: string, STATE_ID: string }[],\r\n units: [] as { UNIT_NAME: string, UNIT_ID: number }[],\r\n groups: [] as { label: string, value: number, unit: number }[],\r\n envs: [] as { label: string, value: string }[],\r\n fluids: [] as { value: number, name: string, id: string, }[],\r\n types: [] as { value: number, name: string, id: string, }[],\r\n brands: [] as { value: number, name: string, id: string, }[],\r\n roles: [] as { value: number, name: string }[],\r\n },\r\n filtComboOpts: {\r\n groups: [] as { label: string, value: number, unit: number }[],\r\n envs: [] as { label: string, value: string }[],\r\n fluids: [] as { value: number, name: string, id: string, }[],\r\n types: [] as { value: number, name: string, id: string, }[],\r\n brands: [] as { value: number, name: string, id: string, }[],\r\n roles: [] as { value: number, name: string }[],\r\n },\r\n openModal: null as null|string,\r\n }));\r\n\r\n const { formData } = state;\r\n const { comboOpts } = state;\r\n\r\n async function getData() {\r\n try {\r\n const { info: devInfoData } = await apiCall('/clients/get-asset-info', { ASSET_ID: state.devId, DAT_ID: state.devId, DAT_INDEX: state.indexId });\r\n state.devInfo = devInfoData;\r\n\r\n await apiCall('/dev/dev-info-combo-options', {\r\n CLIENT_ID: formData.CLIENT_ID_item?.CLIENT_ID,\r\n fluids: true,\r\n types: true,\r\n brands: true,\r\n roles: true,\r\n applics: true,\r\n }).then(({\r\n types,\r\n brands,\r\n fluids,\r\n roles,\r\n }) => {\r\n state.comboOpts.brands = [];\r\n state.comboOpts.fluids = [];\r\n state.comboOpts.roles = [];\r\n state.comboOpts.types = [];\r\n types?.forEach((type, index) => { state.comboOpts.types.push({ value: index + 1, name: type.label, id: type.value }); });\r\n brands?.forEach((brand, index) => state.comboOpts.brands.push({ value: index + 1, name: brand.label, id: brand.value }));\r\n fluids?.forEach((fluid, index) => state.comboOpts.fluids.push({ value: index + 1, name: fluid.label, id: fluid.value }));\r\n roles?.forEach((role) => state.comboOpts.roles.push({ value: Number(role.value), name: role.label }));\r\n });\r\n\r\n formData.CLIENT_ID = devInfoData.CLIENT_ID || null;\r\n formData.UNIT_ID = devInfoData.UNIT_ID || null;\r\n formData.GROUP_ID = devInfoData.GROUP_ID || null;\r\n formData.asset.name = devInfoData.AST_DESC || '';\r\n formData.asset.installationLocation = devInfoData.INSTALLATION_LOCATION || '';\r\n formData.asset.datId = devInfoData.DAT_ID || '';\r\n formData.asset.devId = devInfoData.DEV_ID || '';\r\n formData.asset.roleId = devInfoData.AST_ROLE || null;\r\n formData.asset.role = devInfoData.AST_ROLE_NAME || '';\r\n formData.asset.type = devInfoData.AST_TYPE || '';\r\n formData.asset.brandName = devInfoData.MCHN_BRAND || '';\r\n formData.asset.model = devInfoData.MCHN_MODEL || '';\r\n formData.asset.refrigerationCapacity = devInfoData.CAPACITY_PWR?.toString() || '';\r\n formData.asset.ratedPower = devInfoData.MCHN_KW?.toString() || '';\r\n formData.asset.refrigerationFluid = devInfoData.FLUID_TYPE || '';\r\n formData.asset.capacityMeasurementUnit = devInfoData.CAPACITY_UNIT || '';\r\n formData.asset.devClientAssetId = devInfoData.DEV_CLIENT_ASSET_ID || null;\r\n formData.asset.datIndex = devInfoData.DAT_INDEX || null;\r\n formData.asset.devIdPersisted = devInfoData.DEV_ID || '';\r\n formData.asset.assetId = devInfoData.ASSET_ID;\r\n } catch (err) {\r\n console.log(err);\r\n alert(t('erro'));\r\n }\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n useEffect(() => {\r\n getData();\r\n }, []);\r\n\r\n async function saveDevInfo() {\r\n try {\r\n if (!formData.asset.name) {\r\n alert(t('alertaNecessarioInformarNomeAtivos'));\r\n render();\r\n return;\r\n }\r\n\r\n const devIdChanged = formData.asset.devIdPersisted != null && formData.asset.devIdPersisted !== formData.asset.devId;\r\n if (devIdChanged) {\r\n // is new devId, so 'set-dac-info' old and new\r\n if (formData.asset.devIdPersisted?.startsWith('DAC')) {\r\n await apiCall('/dac/set-dac-info', { DAC_ID: formData.asset.devIdPersisted!, GROUP_ID: null });\r\n }\r\n }\r\n\r\n await apiCall('/clients/edit-asset', {\r\n ASSET_ID: formData.asset.assetId,\r\n DAT_ID: formData.asset.datId as string,\r\n AST_DESC: formData.asset.name,\r\n AST_TYPE: formData.asset.type,\r\n CAPACITY_PWR: formData.asset.refrigerationCapacity != null ? Number(formData.asset.refrigerationCapacity) : null,\r\n CAPACITY_UNIT: formData.asset.capacityMeasurementUnit,\r\n CLIENT_ID: formData.CLIENT_ID,\r\n FLUID_TYPE: formData.asset.refrigerationFluid,\r\n GROUP_ID: formData.GROUP_ID,\r\n MCHN_BRAND: formData.asset.brandName,\r\n MCHN_MODEL: formData.asset.model,\r\n UNIT_ID: formData.UNIT_ID,\r\n AST_ROLE: formData.asset.roleId,\r\n DEV_ID: formData.asset.devId,\r\n DAT_COUNT: formData.asset.index,\r\n OLD_DEV_ID: formData.asset.devIdPersisted,\r\n DEV_CLIENT_ASSET_ID: formData.asset.devClientAssetId,\r\n DAT_INDEX: formData.asset.datIndex,\r\n MCHN_KW: formData.asset.ratedPower != null ? Number(formData.asset.ratedPower) : null,\r\n INSTALLATION_LOCATION: formData.asset.installationLocation,\r\n UPDATE_MACHINE_RATED_POWER: true,\r\n });\r\n\r\n if (devIdChanged && formData.asset.devId && formData.asset.devId.includes('DAC')) {\r\n await apiCall('/dac/set-dac-info', { DAC_ID: formData.asset.devId, GROUP_ID: formData.GROUP_ID });\r\n }\r\n\r\n getData().catch(console.log);\r\n toast.success(t('sucessoSalvar'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n async function fetchGroupsAndUnits(CLIENT_ID) {\r\n comboOpts.units = [];\r\n comboOpts.groups = [];\r\n if (!CLIENT_ID) return;\r\n\r\n const reqCombos = { CLIENT_ID, units: true, groups: true };\r\n\r\n const [\r\n combos,\r\n ] = await Promise.all([\r\n apiCall('/dev/dev-info-combo-options', reqCombos),\r\n ]);\r\n\r\n let units;\r\n if (combos.units) {\r\n units = combos.units.map((unit) => ({ UNIT_ID: unit.value, UNIT_NAME: unit.label }));\r\n }\r\n\r\n Object.assign(comboOpts, combos, { units });\r\n }\r\n\r\n function handleChangeAssets(assetsForm: Asset) {\r\n formData.asset = assetsForm;\r\n }\r\n\r\n function handleDeleteAsset(_assetIndex: number) {\r\n // do nothing\r\n }\r\n const { devInfo } = state;\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaEditar')}\r\n \r\n \r\n {state.isLoading && (\r\n
\r\n \r\n
\r\n )}\r\n {(!state.isLoading) && devInfo && (\r\n <>\r\n \r\n {t('botaoEditar')}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nconst Text = styled.span`\r\n margin-left: 7px;\r\n`;\r\nconst TextLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n color: #5d5d5d;\r\n`;\r\nconst Title = styled.h1`\r\n font-size: 1.5em;\r\n color: ${colors.Grey400};\r\n`;\r\nconst CustomSelect = styled(Select)`\r\n margin-bottom: 20px;\r\n`;\r\nconst ContainerInfo = styled.div`\r\n display: flex;\r\n padding: 25px 0 0 0;\r\n height: auto;\r\n`;\r\nconst ContainerText = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 30px;\r\n`;\r\nconst Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport default withTransaction('EditAssetInfo', 'component')(EditAssetInfo);\r\n","import { useHistory } from 'react-router-dom';\r\nimport { Header } from 'pages/Analysis/Header';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { getUserProfile } from '../../../helpers/userProfile';\r\nimport { useState } from 'react';\r\n\r\nexport const AnalysisLayout = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const links = [\r\n {\r\n title: t('unidades'),\r\n link: '/analise/unidades',\r\n },\r\n {\r\n title: t('maquinas'),\r\n link: '/analise/maquinas',\r\n },\r\n {\r\n title: t('ambientes'),\r\n link: '/analise/ambientes',\r\n },\r\n {\r\n title: t('automacao'),\r\n link: '/analise/dams',\r\n },\r\n {\r\n title: t('energia'),\r\n link: '/analise/energia',\r\n },\r\n ];\r\n\r\n if (history.location.pathname.includes('/analise/programacao-dams')) {\r\n links.push({\r\n title: t('programacao'),\r\n link: history.location.pathname + history.location.search,\r\n });\r\n }\r\n\r\n if (!profile.permissions.isInstaller) {\r\n links.push({\r\n title: t('geolocalizacao'),\r\n link: '/analise/geolocalizacao',\r\n });\r\n }\r\n links.push({\r\n title: t('dispositivos'),\r\n link: '/analise/dispositivos',\r\n });\r\n links.push({\r\n title: t('utilitarios'),\r\n link: '/analise/utilitarios',\r\n });\r\n\r\n return (\r\n <>\r\n
\r\n \r\n );\r\n};\r\n\r\nexport const AnalysisLayoutGeneral = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const links = [\r\n {\r\n title: t('geral'),\r\n link: '/analise/geral',\r\n },\r\n {\r\n title: t('comparativo'),\r\n link: '/analise/comparativo',\r\n },\r\n {\r\n title: t('geolocalizacao'),\r\n link: '/analise/geolocalizacao',\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n
\r\n \r\n );\r\n};\r\n","import { FoldedSheet } from '~/icons';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport const AnalysisEmpty = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n {t('resultadoDaAnalise')}\r\n {t('filtrarParaGerarAnalise')}\r\n \r\n {t('filtrarParaGerarAnaliseContinuacao')}\r\n {t('analisarNegrito')}\r\n \r\n
\r\n
\r\n );\r\n};\r\n","import { useEffect, useRef } from 'react';\r\n\r\nimport queryString from 'query-string';\r\nimport { CSVLink } from 'react-csv';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport { useTranslation } from 'react-i18next';\r\nimport styled from 'styled-components';\r\nimport i18n from '~/i18n';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport {\r\n Button, DataTable, Loader, AntSwitch, StatusBox, Checkbox, Select, HealthIcon,\r\n} from '~/components';\r\nimport { healthLevelDesc } from '~/components/HealthIcon';\r\nimport { ModalWindow } from '~/components/ModalWindow';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { AnalysisLayout } from '~/pages/Analysis/AnalysisLayout';\r\nimport { saveSessionStorageItem, removeSessionStorageItem, getSessionStorageItem } from '~/helpers/cachedStorage';\r\nimport { apiCall } from '~/providers';\r\nimport { AnalysisEmpty } from '../../AnalysisEmpty';\r\n\r\nimport {\r\n WrapperDesktop,\r\n WrapperMobile,\r\n StyledLink,\r\n StyledSpan,\r\n} from './styles';\r\n\r\nimport '~/assets/css/ReactTags.css';\r\nimport { TableColumn, OrderableHeaderCell } from '~/components/DataTable';\r\nimport { FilterItem } from '../../AnalysisFilters';\r\nimport { UtilFilter } from '../../Utilities/UtilityFilter';\r\nimport { ajustParams, setValueState } from '~/helpers/genericHelper';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nconst KeyCodes = {\r\n comma: 188,\r\n slash: 191,\r\n enter: [10, 13],\r\n};\r\n\r\nconst delimiters = [...KeyCodes.enter, KeyCodes.comma, KeyCodes.slash];\r\n\r\nconst CSVheader = [\r\n { label: t('cliente'), key: 'CLIENT_NAME' },\r\n { label: t('estado'), key: 'state' },\r\n { label: t('cidade'), key: 'city' },\r\n { label: t('unidade'), key: 'unit' },\r\n { label: t('maquina'), key: 'group' },\r\n { label: t('dispositivo'), key: 'machine' },\r\n { label: t('saude'), key: 'health' },\r\n { label: t('ultimaAlteracaoDaSaude'), key: 'healthDate' },\r\n { label: t('descricaoSaude'), key: 'healthDesc' },\r\n { label: t('conexao'), key: 'status' },\r\n { label: t('ultimoVisto'), key: 'lastCommTs' },\r\n { label: t('fluido'), key: 'fluidType' },\r\n { label: t('aplicacaoMaquina'), key: 'appl' },\r\n { label: t('tipoMaquina'), key: 'type' },\r\n { label: t('tipoAmbiente'), key: 'env' },\r\n { label: t('variavelP0'), key: 'p0var' },\r\n { label: t('tipoSensorP0'), key: 'p0sensor' },\r\n { label: t('variavelP1'), key: 'p1var' },\r\n { label: t('tipoSensorP1'), key: 'p1sensor' },\r\n { label: t('capacidadeKw'), key: 'capkw' },\r\n { label: t('temperaturaAmbienteC'), key: 'Tamb' },\r\n { label: t('temperaturaLiquidoC'), key: 'Tliq' },\r\n { label: t('temperaturaSuccaoC'), key: 'Tsuc' },\r\n { label: 'P0 (ADC)', key: 'P0Raw' },\r\n { label: 'P1 (ADC)', key: 'P1Raw' },\r\n];\r\n\r\nconst healthCodes = {\r\n 'Equipamento offline': 2,\r\n 'Máquina desativada': 4,\r\n 'Manutenção urgente': 25,\r\n 'Risco iminente': 50,\r\n 'Fora de especificação': 75,\r\n 'Operando corretamente': 100,\r\n};\r\n\r\nexport const Machines = ({ history }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const csvLinkEl = useRef();\r\n const profile = getUserProfile();\r\n function formattedFilter(preFiltered: string | string[] | null) {\r\n let formattedPreFilter = [] as string[];\r\n if (preFiltered === 'Sem informação') {\r\n formattedPreFilter.push('Máquina desativada');\r\n formattedPreFilter.push('Equipamento offline');\r\n } else if (preFiltered?.includes('Sem informação') && typeof preFiltered !== 'string') {\r\n formattedPreFilter = preFiltered.filter((x) => x !== 'Sem informação');\r\n formattedPreFilter.push('Máquina desativada');\r\n formattedPreFilter.push('Equipamento offline');\r\n } else if (typeof preFiltered === 'string') {\r\n if (preFiltered) {\r\n formattedPreFilter = [preFiltered];\r\n }\r\n else {\r\n formattedPreFilter = [...preFiltered];\r\n }\r\n }\r\n return formattedPreFilter;\r\n }\r\n const [state, render] = useStateVar(() => {\r\n const {\r\n preFiltered,\r\n unitIds,\r\n stateIds,\r\n cityIds,\r\n } = queryString.parse(history.location.search, { arrayFormat: 'comma' });\r\n const formattedPreFilter = formattedFilter(preFiltered);\r\n\r\n const state = {\r\n actionOpts: [] as {}[],\r\n columnsMobile: [] as TableColumn[],\r\n columnsDesktop: [] as TableColumn[],\r\n list: [] as {\r\n STATE_ID: string\r\n CITY_NAME: string\r\n CLIENT_NAME: string\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n GROUP_NAME: string\r\n DAC_ID?: string\r\n DAT_ID?: string\r\n AST_DESC?: string\r\n ASSET_ID?: number\r\n VAV_ID?: string\r\n DUT_DUO_ID?: string\r\n H_INDEX?: number\r\n H_DESC?: string\r\n status?: string\r\n lastCommTs?: string\r\n DAC_COMIS?: string\r\n checked?: boolean\r\n }[],\r\n clientsList: [] as { CLIENT_ID: number, NAME: string }[],\r\n selectedClientFilter: setValueState('filterClient') as any[],\r\n manufacturers: [] as {}[],\r\n isLoading: !profile.manageAllClients && !profile.manageSomeClient,\r\n csvData: [] as {}[],\r\n searchState: '' as string,\r\n searchValue: '' as string,\r\n // searchState: preFiltered\r\n // ? typeof preFiltered === 'string'\r\n // ? [...[{ id: preFiltered.toString(), text: preFiltered.toString() }]]\r\n // : [...preFiltered.map((filter) => ({ id: filter.toString(), text: filter.toString() }))]\r\n // : [],\r\n selectedClient: null as null | { CLIENT_ID: number },\r\n wantSetClient: false,\r\n ownershipOpts: [\r\n { value: 'CLIENTS', label: t('deClientes') },\r\n { value: 'N-COMIS', label: t('naoComissionados') }, // aqueles com DEV_ID default de firmware\r\n { value: 'N-ASSOC', label: t('naoAssociados') }, // Aqueles que já tem DEV_ID próprio, mas não possuem cliente associado\r\n { value: 'MANUFAC', label: t('comissionadosEmFabrica') }, // Aqueles que já tem DEV_ID próprio, e possuem cliente SERDIA\r\n { value: 'D-TESTS', label: t('emTestes') }, // Aqueles que estão associados ao cliente DIEL ENERGIA LTDA.\r\n { value: 'ALLDEVS', label: t('todos') },\r\n ],\r\n ownershipFilter: null as null | { value: string, label: string },\r\n dielClientId: undefined as undefined | number,\r\n profile,\r\n tablePage: 1,\r\n tablePageSize: 50,\r\n totalItems: 0,\r\n timeOutId: null as null | NodeJS.Timeout,\r\n orderBy: null as null | [string, 'ASC' | 'DESC'],\r\n\r\n statesList: [] as { value: string, name: string }[],\r\n selectedState: setValueState('filterStates') as any[],\r\n citiesList: [] as { value: string, name: string }[],\r\n selectedCity: setValueState('filterCity') as any[],\r\n unitsList: [] as { value: string, name: string }[],\r\n selectedUnit: setValueState('filterUnit') as any[],\r\n selectedHealth: formattedPreFilter.map((code) => healthCodes[code]),\r\n selectedConnection: [],\r\n selectedDevId: '',\r\n filters: [] as FilterItem[],\r\n needFilter: profile.manageAllClients || profile.manageSomeClient,\r\n };\r\n\r\n return state;\r\n });\r\n useEffect(() => {\r\n // TODO: use window.matchMedia('(min-width: 768px)') instead of WrapperDesktop and WrapperMobile\r\n if (profile.viewAllClients || profile.permissions.isInstaller) {\r\n state.ownershipFilter = state.ownershipOpts[0];\r\n }\r\n\r\n if (profile.permissions.isAdminSistema) {\r\n state.actionOpts = [{ label: 'Excluir', value: 'delete' }, { label: 'Monitorado', value: 'comis-true' }, { label: 'Não-Monitorado', value: 'comis-false' }, { label: 'Atribuir Cliente', value: 'set-client' }];\r\n } else if (profile.manageAllClients) {\r\n state.actionOpts = [{ label: 'Monitorado', value: 'comis-true' }, { label: 'Não-Monitorado', value: 'comis-false' }, { label: 'Atribuir Cliente', value: 'set-client' }];\r\n }\r\n populateColumnsDesktop();\r\n populateColumnsMobile();\r\n verifyPermissionsAndPopulateColumns();\r\n }, []);\r\n\r\n function cellGroup(DAT_ID: string, GROUP_NAME: string, GROUP_ID: number) {\r\n if (!DAT_ID && !GROUP_ID) {\r\n const ternaryAux = GROUP_NAME.length > 100 ? (GROUP_NAME).slice(0, 100).concat('...') : GROUP_NAME;\r\n return (GROUP_NAME ? {ternaryAux} : '-');\r\n }\r\n const ternaryAux = GROUP_NAME.length > 100 ? (GROUP_NAME).slice(0, 100).concat('...') : GROUP_NAME;\r\n return (GROUP_NAME ? {ternaryAux} : '-');\r\n }\r\n\r\n function cellGroupAsset(ASSET_NAME: string, DAT_ID: string, ASSET_ID: number) {\r\n const ternaryAux = ASSET_NAME?.length > 50 ? (ASSET_NAME).slice(0, 50).concat('...') : ASSET_NAME;\r\n const urlAux = DAT_ID || ASSET_ID;\r\n\r\n return (urlAux ? {ternaryAux} : '-');\r\n }\r\n\r\n function urlDac(DAT_ID: string, DAC_ID: string) {\r\n if (!DAT_ID) {\r\n return `/analise/dispositivo/${DAC_ID}/informacoes`;\r\n }\r\n return `/analise/dispositivo/${DAT_ID}/informacoes`;\r\n }\r\n\r\n function orderColumn(column: TableColumn) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n function devicesLabel(DEV_ID?: string, DUT_ID?: string, VAV_ID?: string) {\r\n if (DEV_ID) return DEV_ID;\r\n if (DUT_ID) return DUT_ID;\r\n if (VAV_ID) return VAV_ID;\r\n return '-';\r\n }\r\n\r\n const columnClientName = () => {\r\n if (profile.viewMultipleClients) {\r\n state.columnsDesktop.push({\r\n Header: t('cliente'),\r\n accessor: 'col_CLIENT_NAME',\r\n Cell: (props) => (props.CLIENT_NAME ? {props.CLIENT_NAME} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n }\r\n };\r\n\r\n function populateColumnsDesktop() {\r\n columnClientName();\r\n\r\n state.columnsDesktop.push({\r\n Header: t('estado'),\r\n accessor: 'col_STATE_ID',\r\n Cell: (props) => (props.STATE_ID ? {props.STATE_ID} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('cidade'),\r\n accessor: 'col_CITY_NAME',\r\n Cell: (props) => (props.CITY_NAME ? {props.CITY_NAME} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('unidade'),\r\n accessor: 'col_UNIT_NAME',\r\n Cell: (props) => (props.UNIT_ID\r\n ? {props.UNIT_NAME} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('maquina'),\r\n accessor: 'col_GROUP_NAME',\r\n Cell: (props) => (\r\n \r\n \r\n {cellGroup(props.DAT_ID, props.GROUP_NAME, props.GROUP_ID)}\r\n \r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('ativo'),\r\n accessor: 'col_DAT_ID',\r\n Cell: (props) => (\r\n \r\n {cellGroupAsset(props.AST_DESC, props.DAT_ID, props.ASSET_ID)}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('dispositivo'),\r\n accessor: 'col_DEV_ID',\r\n Cell: (props) => (\r\n \r\n \r\n {devicesLabel(props.DAC_ID, props.VAV_ID, props.DUT_DUO_ID)}\r\n \r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('saude'),\r\n accessor: 'col_H_INDEX',\r\n Cell: (props) => ((props.H_INDEX != null) ? : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: t('conexao'),\r\n accessor: 'col_status',\r\n Cell: (props) => (props.status ? {props.status} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n }\r\n\r\n function populateColumnsMobile() {\r\n state.columnsMobile.push({\r\n Header: t('ativo'),\r\n accessor: 'col_DAT_ID',\r\n Cell: (props) => (\r\n \r\n {cellGroupAsset(props.AST_DESC, props.DAT_ID, props.ASSET_ID)}\r\n \r\n ),\r\n });\r\n\r\n state.columnsMobile.push({\r\n Header: t('dispositivo'),\r\n accessor: 'col_DEV_ID',\r\n Cell: (props) => ({props.DAC_ID || props.VAV_ID}),\r\n });\r\n\r\n state.columnsMobile.push({\r\n Header: t('saude'),\r\n accessor: 'col_H_INDEX',\r\n Cell: (props) => ((props.H_INDEX != null) ? : '-'),\r\n });\r\n\r\n state.columnsMobile.push({\r\n Header: t('conexao'),\r\n accessor: 'col_status',\r\n Cell: (props) => (props.status ? {props.status} : '-'),\r\n });\r\n }\r\n\r\n function verifyPermissionsAndPopulateColumns() {\r\n if (profile.manageAllClients) {\r\n state.columnsDesktop.push({\r\n Header: t('ultimaVezVisto'),\r\n accessor: 'col_lastCommTs',\r\n Cell: (props) => (props.lastCommTs || '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: 'Monitorado',\r\n accessor: 'col_DAC_COMIS',\r\n Cell: (props) => (props.DAC_ID ? switchDacMonitoring(props)} /> : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n state.columnsDesktop.push({\r\n Header: '',\r\n accessor: 'col_selection',\r\n Cell: (props) => { props.checked = !props.checked; render(); }} />,\r\n });\r\n }\r\n }\r\n\r\n function loadSessionFilters() {\r\n const filters = getSessionStorageItem('machinesAnalysisFilters') as null | {\r\n searchState: '',\r\n selectedState: [],\r\n selectedCity: [],\r\n selectedUnit: [],\r\n selectedClientFilter?: [],\r\n selectedHealth: [],\r\n selectedConnection: [],\r\n };\r\n if (filters) {\r\n state.searchState = filters.searchState || '';\r\n state.selectedState = filters.selectedState || [];\r\n state.selectedCity = filters.selectedCity || [];\r\n state.selectedUnit = filters.selectedUnit || [];\r\n state.selectedClientFilter = filters.selectedClientFilter || [];\r\n state.selectedHealth = filters.selectedHealth || [];\r\n state.selectedConnection = filters.selectedConnection || [];\r\n }\r\n render();\r\n removeSessionStorageItem('machinesAnalysisFilters');\r\n }\r\n\r\n function saveSessionFilters() {\r\n const filters = {\r\n searchState: state.searchState,\r\n selectedState: state.selectedState,\r\n selectedCity: state.selectedCity,\r\n selectedUnit: state.selectedUnit,\r\n selectedHealth: state.selectedHealth,\r\n selectedConnection: state.selectedConnection,\r\n selectedClientFilter: null as null|({}[]),\r\n };\r\n if (profile.manageAllClients) {\r\n filters.selectedClientFilter = state.selectedClientFilter;\r\n }\r\n saveSessionStorageItem('machinesAnalysisFilters', filters);\r\n }\r\n\r\n async function clearFilters() {\r\n state.searchState = '';\r\n state.selectedCity = [];\r\n state.selectedClientFilter = [];\r\n state.selectedState = [];\r\n state.selectedConnection = [];\r\n state.selectedUnit = [];\r\n state.selectedHealth = [];\r\n\r\n state.isLoading = true;\r\n render();\r\n await handleGetData();\r\n }\r\n\r\n function verifyObject(dev) {\r\n if (!dev.STATE_ID) dev.STATE_ID = '-';\r\n if (!dev.CITY_NAME) dev.CITY_NAME = '-';\r\n if (!dev.UNIT_NAME) dev.UNIT_NAME = '-';\r\n if (!dev.GROUP_NAME) dev.GROUP_NAME = '-';\r\n if (dev.lastCommTs) { dev.lastCommTs = dev.lastCommTs.replace('T', ' '); }\r\n }\r\n\r\n function getParamsToCallDacsAndAssetsList() {\r\n const params = {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.viewAllClients || !!profile.permissions.isInstaller,\r\n SKIP: (state.tablePage - 1) * state.tablePageSize,\r\n LIMIT: state.tablePageSize,\r\n searchTerms: state.selectedDevId ? [state.selectedDevId.toLowerCase()] : [],\r\n ownershipFilter: (state.ownershipFilter?.value) || undefined,\r\n orderByProp: state.orderBy && state.orderBy[0]?.substring('col_'.length) || undefined,\r\n orderByDesc: (state.orderBy && state.orderBy[1] === 'DESC') || undefined,\r\n stateIds: (state.selectedState.length > 0) ? ajustParams(state.selectedState) : undefined,\r\n cityIds: (state.selectedCity.length > 0) ? ajustParams(state.selectedCity) : undefined,\r\n unitIds: (state.selectedUnit.length > 0) ? ajustParams(state.selectedUnit) : undefined,\r\n clientIds: (state.selectedClientFilter.length > 0) ? ajustParams(state.selectedClientFilter) : undefined,\r\n healthIndexes: (state.selectedHealth.length > 0) ? state.selectedHealth : undefined,\r\n status: (state.selectedConnection.length > 0) ? state.selectedConnection : undefined,\r\n searchMachine: state.searchState || undefined,\r\n };\r\n return params;\r\n }\r\n\r\n async function handleGetData() {\r\n try {\r\n state.isLoading = true; render();\r\n if (state.needFilter !== null) state.needFilter = false;\r\n loadSessionFilters();\r\n const [\r\n { list: dacsAndAssetsList, totalItems },\r\n ] = await Promise.all([\r\n apiCall('/get-dacs-and-assets-list', getParamsToCallDacsAndAssetsList()),\r\n ]);\r\n\r\n state.list = dacsAndAssetsList;\r\n\r\n for (const dev of state.list) {\r\n verifyObject(dev);\r\n Object.assign(dev, {\r\n checked: false,\r\n rowKey: dev.DAC_ID || dev.DAT_ID,\r\n col_H_DESC: healthLevelDesc[String(dev.H_INDEX)] || dev.H_DESC || 'Sem informação',\r\n });\r\n }\r\n\r\n state.totalItems = totalItems;\r\n // Estado sem uso\r\n // state.manufacturers = clientsList.filter((row) => (row.clientType || []).includes('fabricante')).map((row) => row.CLIENT_ID);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroDadosMaquinas'));\r\n }\r\n if (state.needFilter === null) state.needFilter = true;\r\n state.isLoading = false; render();\r\n }\r\n\r\n async function switchDacMonitoring(rowData) {\r\n try {\r\n const dacData = {\r\n DAC_ID: rowData.DAC_ID,\r\n DAC_COMIS: ((rowData.DAC_COMIS === '1') ? '0' : '1'),\r\n };\r\n await apiCall('/dac/set-dac-info', dacData);\r\n window.location.reload(); // TODO: remover todos os reloads\r\n // toast.success('Alterado')\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n async function confirmSetClient() {\r\n try {\r\n const selectedDevs = state.list.filter((dev) => dev.checked);\r\n if (!selectedDevs.length) {\r\n toast.error(t('erroNenhumDispositivoSelecionado'));\r\n return;\r\n }\r\n const clientId = state.selectedClient && state.selectedClient.CLIENT_ID;\r\n\r\n if (!clientId) {\r\n toast.error(t('erroClienteNaoSelecionadoOuInvalido'));\r\n return;\r\n }\r\n\r\n const selectedDacs = selectedDevs.filter((row) => row.DAC_ID);\r\n const selectedAssets = selectedDevs.filter((row) => row.DAT_ID);\r\n for (const dev of selectedDacs) {\r\n await apiCall('/dac/set-dac-info', { DAC_ID: dev.DAC_ID!, CLIENT_ID: clientId });\r\n }\r\n for (const dev of selectedAssets) {\r\n await apiCall('/clients/edit-asset', { ASSET_ID: dev.ASSET_ID, DAT_ID: dev.DAT_ID!, CLIENT_ID: clientId });\r\n }\r\n\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n const awaitData = async () => {\r\n try {\r\n await handleGetData();\r\n } catch (error) {\r\n console.log(error); toast.error(t('houveErro'));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n state.tablePage = 1;\r\n if (!profile.manageAllClients && !profile.manageSomeClient) {\r\n awaitData();\r\n }\r\n }, []);\r\n\r\n const onPageChange = (page) => {\r\n state.tablePage = page;\r\n render();\r\n handleGetData();\r\n };\r\n\r\n function onColumnClick(column: { accessor: string }) {\r\n if (state.orderBy && (state.orderBy[1] === 'ASC') && (state.orderBy[0] === column.accessor)) {\r\n state.orderBy = [column.accessor, 'DESC'];\r\n } else {\r\n state.orderBy = [column.accessor, 'ASC'];\r\n }\r\n render();\r\n handleGetData();\r\n }\r\n\r\n function verifyExist(item) {\r\n if (item) return item;\r\n return '-';\r\n }\r\n\r\n const getCsvData = async () => {\r\n state.isLoading = true; render();\r\n\r\n try {\r\n const { list } = await apiCall('/dac/get-dacs-list', {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.viewAllClients || !!profile.permissions.isInstaller,\r\n includeHealthDesc: true,\r\n includeSensorInfo: true,\r\n includeCapacityKW: true,\r\n includeLastMeasures: true,\r\n });\r\n const formattedMachineCSV = list.map((machine) => ({\r\n CLIENT_NAME: verifyExist(machine.CLIENT_NAME),\r\n state: verifyExist(machine.STATE_ID),\r\n city: verifyExist(machine.CITY_NAME),\r\n unit: verifyExist(machine.UNIT_NAME),\r\n group: verifyExist(machine.GROUP_NAME),\r\n machine: verifyExist(machine.DAC_ID),\r\n health: healthLevelDesc[String(machine.H_INDEX)] || machine.H_DESC || '-',\r\n healthDate: verifyExist((machine.H_DATE && machine.H_DATE.replace('T', ' ').slice(0, 19))),\r\n status: verifyExist(machine.status),\r\n lastCommTs: verifyExist(machine.lastCommTs && machine.lastCommTs.replace('T', ' ')),\r\n healthDesc: verifyExist(machine.H_DESC),\r\n fluidType: verifyExist(machine.FLUID_TYPE),\r\n appl: verifyExist(machine.DAC_APPL),\r\n type: verifyExist(machine.DAC_TYPE),\r\n env: verifyExist(machine.DAC_ENV),\r\n p0var: verifyExist(machine.P0_POSITN),\r\n p0sensor: verifyExist(machine.P0_SENSOR),\r\n p1var: verifyExist(machine.P1_POSITN),\r\n p1sensor: verifyExist(machine.P1_SENSOR),\r\n capkw: verifyExist(machine.capacityKW),\r\n Tamb: verifyExist(machine.Tamb),\r\n Tliq: verifyExist(machine.Tliq),\r\n Tsuc: verifyExist(machine.Tsuc),\r\n P0Raw: verifyExist(machine.P0Raw),\r\n P1Raw: verifyExist(machine.P1Raw),\r\n }));\r\n state.csvData = formattedMachineCSV;\r\n render();\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n\r\n state.isLoading = false; render();\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {t('dielEnergiaMaquinas')}\r\n \r\n \r\n { state.tablePage = 1; handleGetData(); }}\r\n clearFilter={clearFilters}\r\n exportFunc={getCsvData}\r\n csvHeader={CSVheader}\r\n listFilters={['conexao', 'tipo', 'saude', 'estado', 'cidade', 'cliente', 'unidade', 'id', 'conexao', 'search']}\r\n searchLabel={t('maquinas')}\r\n />\r\n \r\n \r\n \r\n \r\n {state.needFilter && (\r\n <>\r\n \r\n \r\n )}\r\n {state.isLoading\r\n ? \r\n : !state.needFilter && (\r\n \r\n )}\r\n \r\n \r\n {state.isLoading\r\n ? \r\n : (\r\n \r\n )}\r\n \r\n \r\n \r\n {(state.wantSetClient)\r\n && (\r\n \r\n

{t('selecioneCliente')}

\r\n { state.selectedClient = item; render(); }}\r\n />\r\n
\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nconst StatusIcon = styled.div<{ color?, status?}>(\r\n ({ color, status }) => `\r\n width: 10px;\r\n height: 10px;\r\n margin-left: 5px;\r\n border-radius: 50%;\r\n border: 2px solid ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n background: ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n font-weight: bold;\r\n font-size: 0.8em;\r\n line-height: 18px;\r\n color: ${colors.White};\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n text-transform: capitalize;\r\n`,\r\n);\r\n\r\nexport default withTransaction('Machines', 'component')(Machines);\r\n","import { ChangeEvent, useMemo } from 'react';\r\n\r\n// import { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Loader, Input, RadioButton, Checkbox,\r\n} from 'components';\r\nimport { getDayProgDesc } from 'helpers/scheduleData';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport {\r\n TrashIcon, EditIcon, CheckboxIcon, CloseIcon, AddIcon,\r\n} from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\nimport { colors } from 'styles/colors';\r\n\r\nconst weekDays = ['mon', 'tue', 'wed', 'thu', 'fri', 'sat', 'sun'];\r\nconst dayName = {\r\n mon: 'Seg',\r\n tue: 'Ter',\r\n wed: 'Qua',\r\n thu: 'Qui',\r\n fri: 'Sex',\r\n sat: 'Sáb',\r\n sun: 'Dom',\r\n};\r\n\r\n// programmingData = {\r\n// mon: { permission: \"allow\", start: \"05:30\", end: \"20:00\" },\r\n// exceptions: {\r\n// \"2020-12-25\": { permission: \"forbid\", start: \"00:00\", end: \"23:59\" }\r\n// },\r\n// ventilation: 5,\r\n// }\r\n\r\nexport const FullProgEdit = (props: {\r\n fullProg: FullProg_v4|null\r\n onConfirm: (fullProg: FullProg_v4) => void\r\n onChange: (fullProg: FullProg_v4) => void\r\n readOnly?: boolean\r\n devType?: string\r\n devConfigOpts?: JSX.Element|null\r\n multiple?: boolean\r\n}): JSX.Element => {\r\n const { fullProg, onConfirm, onChange } = props;\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isSending: false,\r\n isLoading: false,\r\n activePage: 'List',\r\n editingVentilation: false,\r\n editingSetpointDut: false,\r\n submittingVentilation: false,\r\n ventTime: {} as { begin: string, end: string },\r\n programmingData: { week: {}, exceptions: {} } as FullProg_v4,\r\n formValues: {\r\n allowForbid: 'allow' as 'allow'|'forbid',\r\n start_time: '',\r\n end_time: '',\r\n ruleException: 'rule',\r\n selectedDays: [] as string[],\r\n exception_date: '',\r\n ventInput: '',\r\n setpointDut: 0,\r\n clearProg: false,\r\n },\r\n formErrors: {\r\n start_time: '',\r\n end_time: '',\r\n days: '',\r\n },\r\n holidaysList: [] as {\r\n DAT_FER: string\r\n DESC_FER: string\r\n dateDMY?: string\r\n checked?: boolean\r\n }[],\r\n };\r\n\r\n Promise.resolve().then(async () => {\r\n const { list } = await apiCall('/get-holidays-list', {});\r\n state.holidaysList = list || [];\r\n state.holidaysList.forEach((row) => { row.dateDMY = `${row.DAT_FER.substr(8, 2)}/${row.DAT_FER.substr(5, 2)}/${row.DAT_FER.substr(0, 4)}`; });\r\n }).catch(console.log);\r\n\r\n return state;\r\n });\r\n\r\n useMemo(() => {\r\n if (fullProg) {\r\n if (!fullProg.week) fullProg.week = {};\r\n if (!fullProg.exceptions) fullProg.exceptions = {};\r\n state.programmingData = { week: {}, exceptions: {} };\r\n const programmingData = state.programmingData;\r\n\r\n let ventilation = (fullProg.ventTime && Number(fullProg.ventTime.end || fullProg.ventTime.begin));\r\n if (ventilation) {\r\n programmingData.ventTime = { begin: ventilation, end: ventilation };\r\n } else {\r\n ventilation = 0;\r\n }\r\n state.formValues.ventInput = (ventilation && String(ventilation)) || '';\r\n\r\n if (fullProg.week.mon) state.programmingData.week.mon = { ...fullProg.week.mon };\r\n if (fullProg.week.tue) state.programmingData.week.tue = { ...fullProg.week.tue };\r\n if (fullProg.week.wed) state.programmingData.week.wed = { ...fullProg.week.wed };\r\n if (fullProg.week.thu) state.programmingData.week.thu = { ...fullProg.week.thu };\r\n if (fullProg.week.fri) state.programmingData.week.fri = { ...fullProg.week.fri };\r\n if (fullProg.week.sat) state.programmingData.week.sat = { ...fullProg.week.sat };\r\n if (fullProg.week.sun) state.programmingData.week.sun = { ...fullProg.week.sun };\r\n for (const [date, dayProg] of Object.entries(fullProg.exceptions || {})) {\r\n if (!state.programmingData.exceptions) state.programmingData.exceptions = {};\r\n state.programmingData.exceptions[date] = {\r\n ...dayProg,\r\n dateDMY: `${date.substr(8, 2)}/${date.substr(5, 2)}/${date.substr(0, 4)}`,\r\n };\r\n }\r\n }\r\n if (onChange) { onChange(state.programmingData); }\r\n }, [fullProg]);\r\n\r\n const { formValues } = state;\r\n const { formErrors } = state;\r\n const { programmingData } = state;\r\n\r\n function set_exception_date(v) { formValues.exception_date = v; formValues.clearProg = false; render(); }\r\n function set_allowForbid(v) { formValues.allowForbid = v; formValues.clearProg = false; render(); }\r\n function set_clearProg() { formValues.clearProg = true; render(); }\r\n\r\n function editDayProg(item, day) {\r\n state.editingVentilation = false;\r\n state.editingSetpointDut = false;\r\n formValues.allowForbid = (item && item.permission) || 'allow';\r\n formValues.start_time = (item && item.start) || '';\r\n formValues.end_time = (item && item.end) || '';\r\n if ((!day) || day.length === 'YYYY-MM-DD'.length) {\r\n formValues.exception_date = '';\r\n changeExceptionMode('exception');\r\n } else {\r\n formValues.selectedDays = day ? [day] : [];\r\n changeExceptionMode('rule');\r\n }\r\n state.activePage = 'Edit';\r\n render();\r\n }\r\n function removeProg(day) {\r\n if (!window.confirm('Tem certeza?')) return;\r\n if (!programmingData.exceptions) programmingData.exceptions = {};\r\n delete programmingData.exceptions[day];\r\n delete programmingData[day];\r\n delete programmingData.week[day];\r\n\r\n render();\r\n if (onChange) { onChange(programmingData); }\r\n }\r\n\r\n function handleSelectDay(day) {\r\n if (formValues.selectedDays.includes(day)) {\r\n formValues.selectedDays = formValues.selectedDays.filter((x) => x !== day);\r\n } else {\r\n formValues.selectedDays.push(day);\r\n }\r\n changeExceptionMode('rule');\r\n render();\r\n }\r\n\r\n function changeExceptionMode(newMode) {\r\n if (newMode === 'rule') {\r\n formValues.ruleException = 'rule';\r\n formValues.exception_date = '';\r\n } else {\r\n formValues.ruleException = 'exception';\r\n formValues.selectedDays = [];\r\n for (const row of state.holidaysList) {\r\n row.checked = false;\r\n }\r\n }\r\n formErrors.days = '';\r\n }\r\n\r\n function validateForm() {\r\n let start_index = null as null|number;\r\n if (!/^\\d\\d:\\d\\d$/.test(formValues.start_time) && !formValues.clearProg) {\r\n formErrors.start_time = 'O campo de tempo inicial é obrigatório';\r\n } else {\r\n const horas = Number(formValues.start_time.substr(0, 2));\r\n const minutos = Number(formValues.start_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n formErrors.start_time = 'Valor inválido';\r\n } else {\r\n formErrors.start_time = '';\r\n start_index = horas * 60 + minutos;\r\n }\r\n }\r\n if (!/^\\d\\d:\\d\\d$/.test(formValues.end_time) && !formValues.clearProg) {\r\n formErrors.end_time = 'O campo de tempo final é obrigatório';\r\n } else {\r\n const horas = Number(formValues.end_time.substr(0, 2));\r\n const minutos = Number(formValues.end_time.substr(3, 2));\r\n if (!(horas >= 0 && horas <= 23 && minutos >= 0 && minutos <= 59)) {\r\n formErrors.end_time = 'Valor inválido';\r\n } else {\r\n const end_index = horas * 60 + minutos;\r\n if (start_index != null && !(end_index >= start_index)) {\r\n formErrors.end_time = 'Valor inválido';\r\n } else {\r\n formErrors.end_time = '';\r\n }\r\n }\r\n }\r\n if (formValues.ruleException === 'rule') {\r\n if (!formValues.selectedDays.length) {\r\n formErrors.days = 'É necessário selecionar no mínimo um dia';\r\n } else {\r\n formErrors.days = '';\r\n }\r\n } else if (formValues.ruleException === 'exception') {\r\n const selectedHoliday = state.holidaysList.some((x) => x.checked);\r\n if ((formValues.exception_date) && !/^\\d\\d\\/\\d\\d\\/\\d\\d\\d\\d$/.test(formValues.exception_date)) {\r\n formErrors.days = 'Data inválida';\r\n } else if ((!selectedHoliday) && !/^\\d\\d\\/\\d\\d\\/\\d\\d\\d\\d$/.test(formValues.exception_date)) {\r\n formErrors.days = 'É necessário escolher uma data';\r\n } else {\r\n formErrors.days = '';\r\n }\r\n }\r\n render();\r\n return !(formErrors.start_time || formErrors.end_time || formErrors.days);\r\n }\r\n\r\n async function saveDayProg() {\r\n try {\r\n if (!validateForm()) return;\r\n const dayProg = {\r\n permission: formValues.allowForbid,\r\n start: formValues.start_time,\r\n end: formValues.end_time,\r\n clearProg: props.multiple ? formValues.clearProg : undefined,\r\n };\r\n if (props.multiple) {\r\n if (formValues.clearProg) {\r\n for (const day of formValues.selectedDays) {\r\n programmingData[day] = dayProg;\r\n programmingData.week[day] = dayProg;\r\n }\r\n }\r\n }\r\n if (formValues.ruleException === 'rule') {\r\n for (const day of formValues.selectedDays) {\r\n programmingData[day] = dayProg;\r\n programmingData.week[day] = dayProg;\r\n }\r\n }\r\n if (formValues.ruleException === 'exception') {\r\n const dates = state.holidaysList.filter((x) => x.checked).map((x) => x.dateDMY!);\r\n if (formValues.exception_date) dates.push(formValues.exception_date);\r\n for (const dateDMY of dates) {\r\n const date = `${dateDMY.substr(6, 4)}-${dateDMY.substr(3, 2)}-${dateDMY.substr(0, 2)}`;\r\n if (!programmingData.exceptions) programmingData.exceptions = {};\r\n programmingData.exceptions[date] = { ...dayProg, dateDMY };\r\n }\r\n }\r\n state.activePage = 'List';\r\n render();\r\n if (onChange) { onChange(programmingData); }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível adicionar a programação.');\r\n }\r\n }\r\n\r\n async function handleSubmit() {\r\n try {\r\n await onConfirm(programmingData);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível salvar a programação.');\r\n }\r\n }\r\n\r\n function saveVentilation() {\r\n const ventilation = (formValues.ventInput && Number(formValues.ventInput)) || 0;\r\n formValues.ventInput = (ventilation && String(ventilation)) || '';\r\n if (state.ventTime && props.multiple) {\r\n programmingData.ventTime = { begin: Number(state.ventTime.begin) || 0, end: Number(state.ventTime.end) || 0 };\r\n } else if (!state.ventTime && props.multiple) {\r\n delete programmingData.ventTime;\r\n state.ventTime = { begin: '0', end: '0' };\r\n } else {\r\n programmingData.ventTime = { begin: ventilation, end: ventilation };\r\n }\r\n\r\n state.editingVentilation = false;\r\n render();\r\n if (onChange) { onChange(programmingData); }\r\n }\r\n\r\n const exceptionsItems = programmingData.exceptions as { [day: string]: DayProg&{ dateDMY: string } };\r\n\r\n const Ventilacao = (\r\n
\r\n \r\n Ventilação\r\n \r\n {\r\n (state.submittingVentilation)\r\n ? (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n : (state.editingVentilation)\r\n ? (\r\n
\r\n Habilitar tempo de ventilação de:\r\n       \r\n { (props.multiple)\r\n ? (\r\n
\r\n Início\r\n       \r\n ) => setState({ ventTime: { begin: event.target.value, end: state.ventTime.end } })} />\r\n       \r\n Fim\r\n       \r\n ) => setState({ ventTime: { begin: state.ventTime.begin, end: event.target.value } })} />\r\n       \r\n
\r\n )\r\n : (\r\n ) => setState({ ventTime: { begin: event.target.value, end: state.ventTime.end } })} />\r\n )}\r\n \r\n \r\n \r\n       \r\n setState({ editingVentilation: false })}>\r\n \r\n \r\n
\r\n )\r\n : (\r\n
\r\n {(programmingData.ventTime && (programmingData.ventTime.begin || programmingData.ventTime.end)) ? (\r\n <>\r\n \r\n {(programmingData.ventTime.begin)}\r\n {' '}\r\n minuto(s) após horário permitido inicial e\r\n {' '}\r\n {(programmingData.ventTime.end)}\r\n {' '}\r\n minuto(s) antes do horário permitido final\r\n \r\n \r\n ) : (\r\n desabilitado\r\n )}\r\n {(!props.readOnly) && (\r\n
\r\n {(programmingData.ventTime && (programmingData.ventTime.begin || programmingData.ventTime.end)) ? (\r\n // @ts-ignore\r\n { state.ventTime = null; saveVentilation(); }}>\r\n \r\n \r\n ) :
 
}\r\n { state.editingVentilation = true; render(); }}>\r\n \r\n \r\n
\r\n )}\r\n
\r\n )\r\n }\r\n
\r\n );\r\n\r\n const EditProg = (\r\n \r\n
\r\n set_allowForbid('allow')} />\r\n           \r\n set_allowForbid('forbid')} />\r\n           \r\n {props.multiple && (\r\n set_clearProg()} />\r\n )}\r\n {/* null} /> */}\r\n
\r\n \r\n \r\n { formValues.start_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n { formValues.end_time = e.target.value; render(); }}\r\n />\r\n \r\n \r\n { formValues.start_time = '00:00'; formValues.end_time = '23:59'; render(); }}\r\n />\r\n \r\n \r\n Dias\r\n \r\n {(formValues.ruleException === 'exception')\r\n ? (\r\n <>\r\n \r\n { set_exception_date(e.target.value); }}\r\n disabled={formValues.ruleException !== 'exception'}\r\n />\r\n \r\n {(state.holidaysList.length > 0)\r\n && (\r\n \r\n {state.holidaysList.map((row) => (\r\n \r\n { row.checked = !row.checked; render(); }} style={{ padding: '3px' }} />\r\n {row.dateDMY}\r\n {' '}\r\n -\r\n {row.DESC_FER}\r\n \r\n ))}\r\n \r\n )}\r\n \r\n )\r\n : (\r\n <>\r\n \r\n {weekDays.map((day) => (\r\n { handleSelectDay(day); }}\r\n >\r\n {dayName[day]}\r\n \r\n ))}\r\n \r\n \r\n )}\r\n \r\n {formErrors.days && {formErrors.days}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n\r\n const ProgOverview = (\r\n
\r\n \r\n \r\n Funcionamento\r\n {weekDays.map((day) => (\r\n \r\n {dayName[day]}\r\n {getDayProgDesc(programmingData[day])}\r\n
\r\n {(programmingData[day]) ? (\r\n <>\r\n { removeProg(day); }}>\r\n \r\n \r\n \r\n ) :
 
}\r\n { editDayProg(programmingData[day], day); }}>\r\n \r\n \r\n
\r\n
\r\n ))}\r\n
\r\n \r\n Exceções\r\n {Object.keys(programmingData.exceptions || {}).map((day) => (\r\n \r\n {exceptionsItems[day].dateDMY}\r\n {getDayProgDesc(programmingData.exceptions![day])}\r\n
\r\n removeProg(day)}>\r\n \r\n \r\n
\r\n
\r\n ))}\r\n { editDayProg(null, null); }}>\r\n \r\n \r\n
\r\n
\r\n { (!props.devType || (props.devType === 'DAM')) && (\r\n \r\n {Ventilacao}\r\n \r\n )}\r\n { props.devConfigOpts && (\r\n \r\n { props.devConfigOpts }\r\n \r\n )}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n  \r\n
\r\n \r\n \r\n \r\n
\r\n );\r\n\r\n return (\r\n <>\r\n \r\n \r\n {state.isLoading ? (\r\n \r\n \r\n \r\n \r\n \r\n ) : (\r\n
\r\n {(state.activePage === 'List') && ProgOverview}\r\n {(state.activePage === 'Edit') && EditProg}\r\n
\r\n )}\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nconst Text = styled.p<{ isBold? }>(\r\n ({ isBold }) => `\r\n margin-bottom: ${isBold ? 0 : '1em'};\r\n margin-top: ${isBold ? '1em' : 0};\r\n color: ${isBold ? colors.Grey300 : colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n `,\r\n);\r\n\r\nconst SelectDay = styled.div<{ isSelected, disabled }>(\r\n ({ isSelected, disabled }) => `\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n cursor: pointer;\r\n width: 48px;\r\n height: 32px;\r\n box-sizing: border-box;\r\n border-radius: 8px;\r\n margin-left: 2px;\r\n margin-right: 2px;\r\n background-color: ${disabled ? colors.White : (isSelected ? colors.Blue300 : colors.White)};\r\n border: 1px solid ${disabled ? colors.Grey200 : colors.Blue300};\r\n color: ${disabled ? colors.Grey200 : (isSelected ? colors.White : colors.Blue300)};\r\n `,\r\n);\r\n\r\nconst ErrorMessage = styled.span`\r\n color: ${colors.Red};\r\n font-size: 0.75em;\r\n`;\r\n\r\nconst ProgTable = styled.div`\r\n display: grid;\r\n grid-template-columns: 43px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst ProgTableExc = styled.div`\r\n display: grid;\r\n grid-template-columns: 90px 1fr 60px;\r\n color: ${colors.Grey400};\r\n padding-top: 12px;\r\n`;\r\n\r\nconst TextProgTabDay = styled.span`\r\n color: ${colors.Grey300};\r\n font-weight: bold;\r\n`;\r\n\r\nconst TextProgTabMode = styled.div`\r\n display: grid;\r\n grid-template-columns: auto auto;\r\n`;\r\n\r\nconst ItemTitle = styled.h3`\r\n margin-bottom: 0;\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Blue300};\r\n`;\r\n\r\nconst ItemWrapper = styled.div`\r\n width: 100%;\r\n border-top: 2px solid ${colors.Grey050};\r\n`;\r\n\r\nconst IconWrapper = styled.div`\r\n cursor: pointer;\r\n`;\r\n","import { useState, useEffect } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n EmptyWrapper, Loader,\r\n} from 'components';\r\nimport { AnalysisLayout } from 'pages/Analysis/AnalysisLayout';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nfunction serializeDayProg(dayProg: DayProg|null|undefined) {\r\n if (!dayProg) return '';\r\n return `${dayProg.permission};${dayProg.start}-${dayProg.end}`;\r\n}\r\nfunction serializeFullProg2(fullProg: FullProg_v4) {\r\n const descWeekList = [] as string[];\r\n descWeekList.push(`[mon:${serializeDayProg(fullProg.week && fullProg.week.mon)}]`);\r\n descWeekList.push(`[tue:${serializeDayProg(fullProg.week && fullProg.week.tue)}]`);\r\n descWeekList.push(`[wed:${serializeDayProg(fullProg.week && fullProg.week.wed)}]`);\r\n descWeekList.push(`[thu:${serializeDayProg(fullProg.week && fullProg.week.thu)}]`);\r\n descWeekList.push(`[fri:${serializeDayProg(fullProg.week && fullProg.week.fri)}]`);\r\n descWeekList.push(`[sat:${serializeDayProg(fullProg.week && fullProg.week.sat)}]`);\r\n descWeekList.push(`[sun:${serializeDayProg(fullProg.week && fullProg.week.sun)}]`);\r\n const fullDescWeek = descWeekList.join('');\r\n\r\n let fullDescVent = `[ventilation-begin:${(fullProg.ventTime && fullProg.ventTime.begin) || ''}]`;\r\n fullDescVent += `[ventilation-end:${(fullProg.ventTime && fullProg.ventTime.end) || ''}]`;\r\n\r\n const descExceptList = [] as string[];\r\n for (const [day, prog] of Object.entries(fullProg.exceptions || {})) {\r\n descExceptList.push(`[${day}:${serializeDayProg(prog)}]`);\r\n }\r\n const fullDescExcept = descExceptList.sort().join('');\r\n return {\r\n fullDescWeek, fullDescVent, fullDescExcept, descWeekList, descExceptList,\r\n };\r\n}\r\nexport function serializeFullProg(fullProg: FullProg_v4) {\r\n let fullDesc = '';\r\n fullDesc += `[mon:${serializeDayProg(fullProg.week && fullProg.week.mon)}]`;\r\n fullDesc += `[tue:${serializeDayProg(fullProg.week && fullProg.week.tue)}]`;\r\n fullDesc += `[wed:${serializeDayProg(fullProg.week && fullProg.week.wed)}]`;\r\n fullDesc += `[thu:${serializeDayProg(fullProg.week && fullProg.week.thu)}]`;\r\n fullDesc += `[fri:${serializeDayProg(fullProg.week && fullProg.week.fri)}]`;\r\n fullDesc += `[sat:${serializeDayProg(fullProg.week && fullProg.week.sat)}]`;\r\n fullDesc += `[sun:${serializeDayProg(fullProg.week && fullProg.week.sun)}]`;\r\n fullDesc += `[ventilation-begin:${(fullProg.ventTime && fullProg.ventTime.begin) || ''}]`;\r\n fullDesc += `[ventilation-end:${(fullProg.ventTime && fullProg.ventTime.end) || ''}]`;\r\n for (const [day, prog] of Object.entries(fullProg.exceptions || {})) {\r\n fullDesc += `[${day}:${serializeDayProg(prog)}]`;\r\n }\r\n return fullDesc;\r\n}\r\n\r\nexport const ScheduleCheck = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const [, stateChanged] = useState({});\r\n function render() { stateChanged({}); }\r\n const [state] = useState(() => {\r\n const state = {\r\n changed() { stateChanged({}); },\r\n set(obj) { Object.assign(state, obj); stateChanged({}); },\r\n isLoading: false,\r\n damsList: [] as {\r\n damId: string\r\n currentS: { fullDescWeek: string, fullDescVent: string, fullDescExcept: string, descWeekList: string[], descExceptList: string[] }\r\n desiredS: { fullDescWeek: string, fullDescVent: string, fullDescExcept: string, descWeekList: string[], descExceptList: string[] }\r\n }[],\r\n };\r\n\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n Promise.resolve().then(() => {\r\n fetchListFromServer();\r\n });\r\n }, []);\r\n\r\n async function fetchListFromServer() {\r\n state.isLoading = true;\r\n render();\r\n try {\r\n const { list } = await apiCall('/dam/get-sched-list-v2', {});\r\n state.damsList = list.map((damInf) => ({\r\n damId: damInf.damId,\r\n currentS: serializeFullProg2(damInf.current),\r\n desiredS: serializeFullProg2(damInf.desired),\r\n }));\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n state.isLoading = false;\r\n render();\r\n }\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaAutomacao')}\r\n \r\n \r\n \r\n {state.isLoading\r\n ? (\r\n \r\n \r\n \r\n )\r\n : (\r\n <>\r\n {(state.damsList.length === 0)\r\n && (\r\n
\r\n {t('nenhumDam')}\r\n
\r\n )}\r\n
\r\n {state.damsList.map((dam) => {\r\n if ((dam.currentS.fullDescWeek + dam.currentS.fullDescWeek + dam.currentS.fullDescExcept)\r\n === (dam.desiredS.fullDescWeek + dam.desiredS.fullDescWeek + dam.desiredS.fullDescExcept)) {\r\n return null;\r\n }\r\n return (\r\n <>\r\n {dam.damId}\r\n\r\n \r\n {(dam.currentS.fullDescWeek === dam.desiredS.fullDescWeek)\r\n ? t('igual')\r\n : dam.currentS.descWeekList.map((day) =>
{day}
)}\r\n
\r\n \r\n {(dam.currentS.fullDescWeek === dam.desiredS.fullDescWeek)\r\n ? ''\r\n : dam.desiredS.descWeekList.map((day) =>
{day}
)}\r\n
\r\n\r\n \r\n {(dam.currentS.fullDescVent === dam.desiredS.fullDescVent) ? t('igual') : dam.currentS.fullDescVent}\r\n \r\n \r\n {(dam.currentS.fullDescVent === dam.desiredS.fullDescVent) ? '' : dam.desiredS.fullDescVent}\r\n \r\n\r\n \r\n {(dam.currentS.fullDescExcept === dam.desiredS.fullDescExcept)\r\n ? t('igual')\r\n : dam.currentS.descExceptList.length\r\n ? dam.currentS.descExceptList.map((day) =>
{day}
)\r\n : `(${t('nenhuma')})`}\r\n
\r\n \r\n {(dam.currentS.fullDescExcept === dam.desiredS.fullDescExcept)\r\n ? ''\r\n : dam.desiredS.descExceptList.length\r\n ? dam.desiredS.descExceptList.map((day) =>
{day}
)\r\n : `(${t('nenhuma')})`}\r\n
\r\n \r\n );\r\n })}\r\n
\r\n \r\n )}\r\n
\r\n \r\n );\r\n};\r\n\r\nconst ElevatedCard = styled.div`\r\n padding: 32px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\nconst GridCell = styled.div`\r\n border: 1px solid grey;\r\n`;\r\n\r\nexport default withTransaction('ScheduleCheck', 'component')(ScheduleCheck);\r\n","import { useState } from 'react';\r\n\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n EmptyWrapper, Loader,\r\n} from 'components';\r\nimport { AnalysisLayout } from 'pages/Analysis/AnalysisLayout';\r\nimport { apiCall } from 'providers';\r\nimport { FullProg_v4 } from 'providers/types';\r\n\r\nimport { FullProgEdit } from '../SchedulesModals/FullProgEdit';\r\nimport { serializeFullProg } from './ScheduleCheck';\r\nimport { useTranslation } from 'react-i18next';\r\n// TODO: Botão de atualizar\r\n\r\nexport const BatchSchedule = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const [, stateChanged] = useState({});\r\n function render() { stateChanged({}); }\r\n const [state] = useState(() => {\r\n const state = {\r\n changed() { stateChanged({}); },\r\n set(obj) { Object.assign(state, obj); stateChanged({}); },\r\n isLoading: false,\r\n initialProg: null as null|FullProg_v4,\r\n expectedProgS: null as null|string,\r\n damsList: [] as { damId: string; currentS: string; }[],\r\n };\r\n\r\n Promise.resolve().then(() => {\r\n fetchListFromServer();\r\n });\r\n\r\n return state;\r\n });\r\n\r\n async function fetchListFromServer() {\r\n state.isLoading = true;\r\n render();\r\n try {\r\n const { ids } = queryString.parse(history.location.search);\r\n const damIds = (ids && (ids as string).split('*')) || [];\r\n const { list } = await apiCall('/dam/get-sched-list-v2', { damIds });\r\n state.damsList = list.map((damInf) => {\r\n if ((!state.initialProg) && (damInf.desired)) {\r\n state.initialProg = damInf.desired;\r\n }\r\n return {\r\n damId: damInf.damId,\r\n currentS: serializeFullProg(damInf.current),\r\n };\r\n });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n state.isLoading = false;\r\n render();\r\n }\r\n\r\n function sendSchedule(sched) {\r\n state.expectedProgS = serializeFullProg(sched);\r\n render();\r\n\r\n Promise.resolve().then(async () => {\r\n try {\r\n const { ids } = queryString.parse(history.location.search);\r\n const damIds = (ids && (ids as string).split('*')) || [];\r\n state.isLoading = true;\r\n render();\r\n await apiCall('/set-full-sched-batch-v2', {\r\n ...sched,\r\n damIds,\r\n });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n await fetchListFromServer();\r\n });\r\n }\r\n\r\n function updateSchedule(sched) {\r\n state.expectedProgS = serializeFullProg(sched);\r\n render();\r\n }\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaAutomacao')}\r\n \r\n \r\n {(state.damsList.length > 0)\r\n && (\r\n
\r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n {state.isLoading ? (\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n

\r\n \r\n {/*

{state.expectedProgS}
*/}\r\n

\r\n {(state.damsList.length === 0)\r\n && (\r\n
\r\n {t('nenhumDam')}\r\n
\r\n )}\r\n
\r\n {state.damsList.map((dam) => (\r\n
\r\n {dam.damId}\r\n {(dam.currentS === state.expectedProgS) ? 'igual' : 'diferente'}\r\n {/* {dam.currentS.replace(/\\]\\[/g, '] [')} */}\r\n
\r\n ))}\r\n
\r\n \r\n )}\r\n
\r\n \r\n );\r\n};\r\n\r\nconst ElevatedCard = styled.div`\r\n padding: 32px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n","export const CloseBtn = (): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","import { colors } from '../styles/colors';\r\n\r\nexport const ColorChangeBtn = ({ blueVersion }: {blueVersion?: boolean}) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n","import { Link } from 'react-router-dom';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport styled from 'styled-components';\r\nimport { CalendarIcon, ExportWorksheetIcon, ZoomOutIcon } from '../../icons';\r\nimport { CloseBtn } from '~/icons/CloseBtn';\r\nimport { ColorChangeBtn } from '../../icons/ColorChange';\r\n\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const Container = styled.div`\r\n display: flex;\r\n minHeight: 350px;\r\n position: relative;\r\n flex-wrap: wrap;\r\n @media (min-width: 992px) {\r\n flex-wrap: nowrap;\r\n }\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\nmin-height: 48px;\r\nmargin: 0;\r\nfont-size: 12px;\r\ncolor: #000;\r\nwidth: 100%;\r\nborder: 1px solid #E9E9E9;\r\nborder-radius: 5px;\r\nbox-sizing: border-box !important;\r\ndisplay: inline-flex;\r\n`;\r\n\r\nexport const Text = styled.span`\r\n font-weight: normal;\r\n font-size: 1em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n font-weight: normal;\r\n font-size: 1em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const CheckboxLine = styled.div`\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\n\r\nexport const TransparentLink = styled(Link)`\r\n color: inherit;\r\n text-decoration: inherit;\r\n :hover {\r\n color: ${colors.Black};\r\n text-decoration: none;\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const TransparentLinkDut = styled(Link)`\r\n width: 11%;\r\n padding-top: 11px;\r\n padding-left: 7px;\r\n padding-right: 15px;\r\n color: inherit;\r\n text-decoration: inherit;\r\n :hover {\r\n color: ${colors.Black};\r\n text-decoration: none;\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\nposition: absolute;\r\ndisplay: inline-block;\r\nwidth: 18px;\r\nheight: 18px;\r\nright: 15px;\r\ntop: calc(50% - 12px);\r\nsvg {\r\n width: 18px;\r\n height: 18px;\r\n}\r\n`;\r\n\r\nexport const IconWrapperSearch = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n margin-top: 15px;\r\n margin-right: 15px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n text-decoration: underline;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 55px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker_picker {\r\n z-index: 999;\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .CalendarDay__hovered_span {\r\n background: ${colors.BlueSelectedSpan};\r\n border: 1px double ${colors.BlueSelectedSpan};\r\n color: ${colors.White};\r\n }\r\n CalendarDay__hovered_span:hover {\r\n background: ${colors.BlueSelectedSpan};\r\n border: 1px double ${colors.BlueSelectedSpan};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__hovered_span_3 {\r\n background: ${colors.BlueSelectedSpan};\r\n border: 1px double ${colors.BlueSelectedSpan};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__hovered_span_3:hover {\r\n background: ${colors.BlueSelectedSpan};\r\n border: 1px double ${colors.BlueSelectedSpan};\r\n color: ${colors.White};\r\n }\r\n`;\r\n\r\nexport const DateLabel = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 14px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 12px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const BtnExport = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-left: 10px;\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n ${Text} {\r\n color: ${colors.White}\r\n }\r\n })\r\n`;\r\n\r\nexport const ZoomOut = styled(ZoomOutIcon)(\r\n () => `\r\n padding-left: 10px;\r\n color: #363BC4;\r\n`,\r\n);\r\n\r\nexport const ExportWorksheet = styled(ExportWorksheetIcon)(\r\n () => `\r\n padding-left: 10px;\r\n color: #363BC4;\r\n`,\r\n);\r\n\r\nexport const CloseBtnIcon = styled(CloseBtn)(\r\n () => `\r\n padding-left: 10px;\r\n color: #363BC4;\r\n`,\r\n);\r\n\r\nexport const TextLabel = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-top: 6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 12px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const OptionColor = styled.div`\r\n display: inline;\r\n border-radius: 4px;\r\n width: 26px;\r\n height: 22px;\r\n padding: 0 10px;\r\n background-color: ${(props) => props.color};\r\n`;\r\n\r\nexport const StyledReactTooltip = styled(ReactTooltip)`\r\n opacity: 1 !important;\r\n`;\r\n\r\nexport const ModalContent = styled.div`\r\n background-color: #fefefe;\r\n padding: 20px;\r\n width: 400px;\r\n height: 400px;\r\n border-radius: 10px;\r\n`;\r\n\r\nexport const ColorChangeBtnSvg = styled(ColorChangeBtn)(\r\n () => `\r\n padding-left: 10px;\r\n color: #363BC4;\r\n `,\r\n);\r\n\r\nexport const ColorChangeBtnWithHover = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-left: 10px;\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n ${Text} {\r\n color: ${colors.White}\r\n }\r\n })\r\n`;\r\n\r\nexport const ListBoxOptionColor = styled.div`\r\n display: inline;\r\n border-radius: 4px;\r\n width: 20px;\r\n height: 6px;\r\n padding: 0 10px;\r\n background-color: ${(props) => props.color};\r\n`;\r\n","import { useEffect } from 'react';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport moment, { Moment } from 'moment';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n ResponsiveContainer,\r\n CartesianGrid,\r\n XAxis,\r\n YAxis,\r\n ReferenceArea,\r\n Label,\r\n Tooltip,\r\n LineChart,\r\n Line,\r\n} from 'recharts';\r\nimport DefaultTooltipContent from 'recharts/lib/component/DefaultTooltipContent';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { DateRangePicker, SingleDatePicker } from 'react-dates';\r\nimport { WithContext as ReactTags } from 'react-tag-input';\r\nimport { SketchPicker } from 'react-color';\r\nimport '~/assets/css/ReactTags.css';\r\nimport { t } from 'i18next';\r\nimport {\r\n Loader, Card, ModalWindow,\r\n} from 'components';\r\nimport * as axisCalc from 'helpers/axisCalc';\r\nimport { getDaySched } from 'helpers/scheduleData';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { ApiResps, apiCall, apiCallDownload } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport {\r\n ArrowDownIconV2, ArrowUpIconV2, FilterIcon, LinkIcon, SearchIcon,\r\n} from '../../icons';\r\nimport {\r\n Text,\r\n CheckboxLine,\r\n IconWrapperSearch,\r\n BtnClean,\r\n ContentDate,\r\n DateLabel,\r\n StyledCalendarIcon,\r\n SearchInput,\r\n BtnExport,\r\n ZoomOut,\r\n TextLabel,\r\n ExportWorksheet,\r\n StyledReactTooltip,\r\n OptionColor,\r\n TransparentLink,\r\n ModalContent,\r\n ColorChangeBtnWithHover,\r\n ColorChangeBtnSvg,\r\n ListBoxOptionColor,\r\n CloseBtnIcon,\r\n TransparentLinkDut,\r\n} from './styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { addDays_YMD } from '~/helpers/formatTime';\r\nimport { NoGraph } from '../NoGraph';\r\nimport { ControlFilter } from '~/pages/Analysis/Utilities/UtilityFilter/styles';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\ninterface GroupChartData {\r\n lineId: string;\r\n data: { y: (number|null)[], L?: (number|null)[] };\r\n isL1: boolean;\r\n tempLimits?: [number, number];\r\n humLimits?: [number, number];\r\n co2Limits?: [number, number];\r\n powerLimits?: [number, number];\r\n color?: string;\r\n axisId?: string;\r\n distance?: string;\r\n name?: string;\r\n type?: string;\r\n showLine?: boolean\r\n}\r\ninterface GroupInfo {\r\n GROUP_ID: string;\r\n GROUP_NAME: string;\r\n checked: boolean;\r\n devs?: {\r\n DAC_ID?: string;\r\n DEV_ID?: string;\r\n DRI_ID?: string;\r\n DMT_CODE?: string;\r\n DAL_CODE?: string;\r\n VARS?: string;\r\n PLACEMENT?: string;\r\n isVav?: boolean;\r\n }[];\r\n gData: GroupChartData[];\r\n type: string;\r\n color: string;\r\n unitId?: number;\r\n CD_ESTACAO?: string;\r\n displayColorPicker?: boolean;\r\n DISTANCIA_EM_KM?: string;\r\n vars?: string;\r\n ENERGY_DEVICE_ID?: string;\r\n SERIAL?: string;\r\n MANUFACTURER?: string;\r\n MODEL?: string;\r\n humidity?: boolean;\r\n temperature?: boolean;\r\n eco2?: boolean;\r\n}\r\n\r\n// https://www.colourlovers.com/palettes\r\n// https://colorbrewer2.org/\r\n// https://blog.graphiq.com/finding-the-right-color-palettes-for-data-visualizations-fcd4e707a283\r\nconst colorList = [\r\n '#e6194B',\r\n '#287833',\r\n '#f032e6',\r\n '#3259e6',\r\n '#f58231',\r\n '#847c7c',\r\n '#347069',\r\n '#0f8aa6',\r\n '#800000',\r\n '#000075',\r\n '#A16B00',\r\n '#8719a9',\r\n '#565655',\r\n '#6a9400',\r\n '#3668A3',\r\n '#554694',\r\n '#A10A00',\r\n '#693c0e',\r\n '#9d847c',\r\n '#AB00A2',\r\n];\r\n\r\nconst KeyCodes = {\r\n comma: 188,\r\n slash: 191,\r\n enter: [10, 13],\r\n};\r\n\r\nconst delimiters = [...KeyCodes.enter, KeyCodes.comma, KeyCodes.slash];\r\n\r\nexport const CustomYTick = ({\r\n x, y, payload, anchor, namedTicks, unitProps,\r\n}: any) => {\r\n let text = payload.value == null ? '' : payload.value.toString();\r\n\r\n if (namedTicks && namedTicks[text]) {\r\n text = namedTicks[text];\r\n }\r\n\r\n let unit = '';\r\n\r\n switch (unitProps) {\r\n case 'temp':\r\n unit = ' °C';\r\n break;\r\n case 'hum':\r\n unit = ' %';\r\n break;\r\n case 'kw':\r\n unit = ' Kw';\r\n break;\r\n case 'co2':\r\n unit = ' ppm';\r\n }\r\n\r\n return (\r\n \r\n \r\n {text + unit}\r\n \r\n \r\n );\r\n};\r\n\r\nconst CustomPowerTick = ({\r\n x, y, payload, anchor,\r\n}: any) => {\r\n const text = payload.value < 0 ? '' : payload.value;\r\n return (\r\n \r\n \r\n {`${text}Kw`}\r\n \r\n \r\n );\r\n};\r\n\r\nexport function tickXLabelFormaterHour(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const sign = hour - 24 * numDays < 0 ? '-' : '';\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const mm = Math.floor((Math.abs(hour) * 60) % 60);\r\n return `${'\\n'} ${sign}${String(hh).padStart(2, '0')}:${String(mm).padStart(\r\n 2,\r\n '0',\r\n )}`;\r\n}\r\n\r\nexport const renderQuarterTickHour = (tickProps: any) => {\r\n const { x, y, payload } = tickProps;\r\n const { value } = payload;\r\n\r\n return (\r\n \r\n {`${tickXLabelFormaterHour(value)}`}\r\n\r\n \r\n );\r\n};\r\n\r\ninterface ComponentProps {\r\n ambientes: {\r\n DEV_ID: string;\r\n ROOM_NAME: string;\r\n lineColor?: string;\r\n temperature?: number | string;\r\n eCO2?: number | string;\r\n VARS?: string;\r\n PLACEMENT?: string;\r\n }[];\r\n conjuntos: {\r\n groupId: number;\r\n name: string;\r\n dacs: {\r\n DAC_ID: string;\r\n DAC_NAME: string;\r\n }[];\r\n dris: {\r\n DRI_ID: string;\r\n }[];\r\n lineColor?: string;\r\n }[];\r\n utilitarios?: {\r\n ID: number\r\n TYPE: string\r\n NAME: string\r\n PORT: number\r\n FEEDBACK: number\r\n DMT_CODE: string\r\n DAL_CODE: string\r\n }[];\r\n weatherStations?: {\r\n CD_ESTACAO: string;\r\n DC_NOME: string;\r\n DISTANCIA_EM_KM?: string;\r\n }[];\r\n unitId: number;\r\n unitName: string;\r\n includePower: boolean;\r\n includeDme?: ApiResps['/energy/get-energy-list']['list'];\r\n L1only?: boolean;\r\n splitLcmp?: boolean;\r\n height?: number;\r\n temperatureLimits: null | {\r\n workPeriods: { [day: string]: string };\r\n workPeriodExceptions: { [day: string]: string };\r\n TUSEMAX: number;\r\n TUSEMIN: number;\r\n };\r\n unitCoordinate?: {\r\n lat: string | null;\r\n lon: string | null;\r\n }\r\n}\r\n\r\ntype Truthy = T extends false | '' | 0 | null | undefined ? never : T; // from lodash\r\n\r\nfunction truthy(value: T): value is Truthy {\r\n return !!value;\r\n}\r\n\r\nexport const EnvGroupAnalysis = (props: ComponentProps): JSX.Element => {\r\n const {\r\n ambientes,\r\n conjuntos,\r\n utilitarios,\r\n unitId,\r\n unitName,\r\n includePower,\r\n includeDme,\r\n L1only,\r\n height,\r\n temperatureLimits,\r\n splitLcmp,\r\n unitCoordinate,\r\n } = props;\r\n\r\n const [state, render, setState] = useStateVar({\r\n showFilter: true as boolean,\r\n date: null as Moment | null,\r\n grupos: {} as { [group: string]: GroupInfo },\r\n loadingData: false as boolean,\r\n exportLoading: false as boolean,\r\n selectedVars: [] as GroupChartData[],\r\n search: [] as { id: string; text: string }[],\r\n trooms: [] as GroupInfo[],\r\n l1s: [] as GroupInfo[],\r\n tambs: [] as GroupInfo[],\r\n powers: [] as GroupInfo[],\r\n utilities: [] as GroupInfo[],\r\n troomsOpened: true as boolean,\r\n l1sOpened: true as boolean,\r\n tambsOpened: true as boolean,\r\n powersOpened: true as boolean,\r\n utilitiesOpened: true as boolean,\r\n troomsFiltered: [] as { name: string; value: string }[],\r\n l1sFiltered: [] as { name: string; value: string }[],\r\n tambsFiltered: [] as { name: string; value: string }[],\r\n powersFiltered: [] as { name: string; value: string }[],\r\n tInmetFiltered: [] as { name: string; value: string }[],\r\n utilitiesFiltered: [] as { name: string; value: string }[],\r\n tInmet: [] as GroupInfo[],\r\n selectedTrooms: [] as string[],\r\n selectedTambs: [] as string[],\r\n selectedPowers: [] as string[],\r\n selectedTInmets: [] as string[],\r\n selectedL1s: [] as string[],\r\n selectedUtilities: []as string[],\r\n allCheck: false as boolean,\r\n isSelected: false as boolean,\r\n axisDataLimits: {} as {\r\n minTval?: number;\r\n maxTval?: number;\r\n minPval?: number;\r\n maxPval?: number;\r\n },\r\n axisInfo: {\r\n L1start: null,\r\n tempLimits: [-15, 40],\r\n tempTicks: [-10, -5, 0, 5, 10, 15, 20, 25, 30, 35, 40],\r\n humLimits: [0, 100],\r\n humTicks: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100],\r\n powerLimits: [-15, 40],\r\n powerTicks: [0, 5, 10, 15, 20, 25, 30, 35, 40],\r\n co2Limits: [0, 3600],\r\n co2Ticks: [\r\n 0, 400, 800, 1200, 1600, 2000, 2400, 2800, 3200, 3600,\r\n ],\r\n } as {\r\n L1start: number | null;\r\n tempLimits: number[];\r\n tempTicks: number[];\r\n powerLimits: number[];\r\n powerTicks: number[];\r\n co2Limits: number[];\r\n co2Ticks: number[];\r\n },\r\n boolTicksNames: null as { [v: string]: string } | null,\r\n displayColorPicker: false as boolean,\r\n useMinGraphData: null as { x: number; y: number }[] | null | undefined,\r\n useMaxGraphData: null as { x: number; y: number }[] | null | undefined,\r\n refAreaLeft: null as null | number,\r\n refAreaRight: null as null | number,\r\n commonX: [] as number[],\r\n xDomain: null as null | [number, number],\r\n xTicks: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24] as number[],\r\n numDays: 1 as number,\r\n multiDays: false,\r\n dateStart: null as Moment | null,\r\n dateEnd: null as Moment | null,\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n focusedInput: null as 'endDate' | 'startDate' | null,\r\n focused: false,\r\n isModalOpen: false,\r\n weatherStationsData: {} as {\r\n [key: string]: {\r\n date: string;\r\n temperatures: { y: number[] };\r\n tempLimits: number[];\r\n distance?: string;\r\n }\r\n },\r\n });\r\n verifyExternalProps();\r\n useEffect(() => {\r\n calcNumDays();\r\n if (state.dateEnd) dateChanged();\r\n\r\n state.xDomain = [0, 24 * state.numDays];\r\n state.xTicks = Array.from({ length: 13 }, (_, i) => i * 2 * state.numDays);\r\n }, [state.date, state.dateStart, state.dateEnd]);\r\n\r\n function handleCommonX() {\r\n const commonX = [] as number[];\r\n let xInsert = 0;\r\n while (xInsert <= state.numDays * 24) {\r\n commonX.push(xInsert);\r\n xInsert += (0.00138888888 * (state.numDays * state.numDays));\r\n }\r\n return commonX;\r\n }\r\n\r\n function getTemperatureLimitLines(dayYMD: string | null) {\r\n if (!temperatureLimits) return;\r\n if (!temperatureLimits.workPeriods) return;\r\n if (!dayYMD) return;\r\n const pData = getDaySched(\r\n temperatureLimits.workPeriods,\r\n temperatureLimits.workPeriodExceptions,\r\n dayYMD,\r\n );\r\n if (pData.isDefault) return;\r\n if (pData.type !== 'enabled') return;\r\n\r\n const indexIni = (Number(pData.startHM.substring(0, 2)) * 60\r\n + Number(pData.startHM.substring(3, 5)) * 1)\r\n / 60;\r\n const indexEnd = (Number(pData.endHM.substring(0, 2)) * 60\r\n + Number(pData.endHM.substring(3, 5)) * 1)\r\n / 60;\r\n let useMaxGraphData: { x: number; y: number }[] | null = null;\r\n if (temperatureLimits.TUSEMAX != null) {\r\n useMaxGraphData = [\r\n { x: indexIni, y: temperatureLimits.TUSEMAX },\r\n { x: indexEnd, y: temperatureLimits.TUSEMAX },\r\n ];\r\n }\r\n let useMinGraphData: { x: number; y: number }[] | null = null;\r\n if (temperatureLimits.TUSEMIN != null) {\r\n useMinGraphData = [\r\n { x: indexIni, y: temperatureLimits.TUSEMIN },\r\n { x: indexEnd, y: temperatureLimits.TUSEMIN },\r\n ];\r\n }\r\n return { useMaxGraphData, useMinGraphData };\r\n }\r\n\r\n type ColorIndexAux = { colorIndex: number }\r\n\r\n function verifyEnvProps(aux: ColorIndexAux) {\r\n for (const dut of ambientes) {\r\n const GROUP_ID = `g${dut.DEV_ID}`;\r\n const GROUP_NAME = dut.ROOM_NAME;\r\n if (!state.grupos[GROUP_ID]) {\r\n if (!dut.lineColor) {\r\n dut.lineColor = colorList[++aux.colorIndex % colorList.length];\r\n }\r\n const info = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n checked: false,\r\n devs: [dut],\r\n gData: [],\r\n type: 'room-temp',\r\n color: dut.lineColor,\r\n vars: dut.VARS,\r\n };\r\n state.grupos[GROUP_ID] = info;\r\n if (dut.PLACEMENT === 'DUO') {\r\n const INS_GROUP_ID = info.GROUP_ID.concat('-INS');\r\n state.grupos[INS_GROUP_ID] = { ...info, GROUP_ID: INS_GROUP_ID, GROUP_NAME: '(INS) '.concat(info.GROUP_NAME) };\r\n }\r\n }\r\n }\r\n }\r\n\r\n function addDacGroupByType(\r\n grupo: ComponentProps['conjuntos'][number],\r\n dac: ComponentProps['conjuntos'][number]['dacs'][number],\r\n aux: ColorIndexAux,\r\n type: string,\r\n ) {\r\n const GROUP_ID = `g-${type}:${grupo.groupId}\\t${dac.DAC_ID}`;\r\n let GROUP_NAME = grupo.name;\r\n if (grupo.dacs.length > 1) {\r\n if (!dac.DAC_NAME) {\r\n dac.DAC_NAME = `Condensadora ${grupo.dacs.indexOf(dac) + 1}`;\r\n }\r\n GROUP_NAME += ` (${dac.DAC_NAME})`;\r\n }\r\n if (!state.grupos[GROUP_ID]) {\r\n if (!grupo.lineColor) {\r\n grupo.lineColor = colorList[++aux.colorIndex % colorList.length];\r\n }\r\n state.grupos[GROUP_ID] = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n checked: false,\r\n devs: [dac],\r\n gData: [],\r\n type,\r\n color: grupo.lineColor,\r\n };\r\n }\r\n }\r\n\r\n function verifyDacsProps(grupo: ComponentProps['conjuntos'][number], aux: ColorIndexAux) {\r\n for (const dac of grupo.dacs) {\r\n addDacGroupByType(grupo, dac, aux, 'Lcmp');\r\n if (!L1only) {\r\n addDacGroupByType(grupo, dac, aux, 'Tamb');\r\n }\r\n }\r\n }\r\n\r\n function verifyDrisProps(grupo: ComponentProps['conjuntos'][number], aux: ColorIndexAux) {\r\n for (const dri of grupo.dris) {\r\n const GROUP_ID = `g-ValveOn:${grupo.groupId}\\t${dri.DRI_ID}`;\r\n const GROUP_NAME = grupo.name;\r\n if (!state.grupos[GROUP_ID]) {\r\n if (!grupo.lineColor) {\r\n grupo.lineColor = colorList[++aux.colorIndex % colorList.length];\r\n }\r\n state.grupos[GROUP_ID] = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n checked: false,\r\n devs: [dri],\r\n gData: [],\r\n type: 'ValveOn',\r\n color: grupo.lineColor,\r\n };\r\n }\r\n }\r\n }\r\n\r\n function verifyGroupsProps(aux: ColorIndexAux) {\r\n for (const grupo of conjuntos) {\r\n verifyDacsProps(grupo, aux);\r\n verifyDrisProps(grupo, aux);\r\n }\r\n }\r\n\r\n function verifyWeatherStationsProps(aux: ColorIndexAux) {\r\n for (const grupo of props.weatherStations ?? []) {\r\n const GROUP_ID = `g-Inmet:${grupo.CD_ESTACAO}`;\r\n const GROUP_NAME = grupo.DC_NOME;\r\n if (!state.grupos[GROUP_ID]) {\r\n state.grupos[GROUP_ID] = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n checked: false,\r\n unitId,\r\n DISTANCIA_EM_KM: grupo.DISTANCIA_EM_KM,\r\n CD_ESTACAO: grupo.CD_ESTACAO,\r\n gData: [],\r\n type: 'Tinmet',\r\n color: colorList[++aux.colorIndex % colorList.length],\r\n };\r\n }\r\n }\r\n }\r\n\r\n function verifyGreenAntPowerProps(aux: ColorIndexAux) {\r\n if (includePower) {\r\n const GROUP_ID = 'greenant:meter';\r\n const GROUP_NAME = unitName || t('energiaConsumida');\r\n const linerColor = colorList[++aux.colorIndex % colorList.length];\r\n if (!state.grupos[GROUP_ID]) {\r\n state.grupos[GROUP_ID] = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n checked: false,\r\n unitId,\r\n gData: [],\r\n type: 'energy',\r\n color: linerColor,\r\n };\r\n }\r\n }\r\n }\r\n function verifyDMEPowerProps(aux: ColorIndexAux) {\r\n if (includeDme) {\r\n for (const grupo of includeDme ?? []) {\r\n const GROUP_ID = `dme:meter:${grupo.ENERGY_DEVICE_ID}`;\r\n const GROUP_NAME = grupo.ESTABLISHMENT_NAME || unitName || t('energiaConsumida');\r\n if (!state.grupos[GROUP_ID]) {\r\n state.grupos[GROUP_ID] = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n ENERGY_DEVICE_ID: grupo.ENERGY_DEVICE_ID,\r\n SERIAL: grupo.SERIAL,\r\n MANUFACTURER: grupo.MANUFACTURER,\r\n MODEL: grupo.MODEL,\r\n checked: false,\r\n unitId,\r\n gData: [],\r\n type: 'energy',\r\n color: colorList[++aux.colorIndex % colorList.length],\r\n };\r\n }\r\n }\r\n }\r\n }\r\n\r\n function verifyUtilityProps(aux: ColorIndexAux) {\r\n for (const util of utilitarios ?? []) {\r\n const GROUP_ID = `g-Util-${util.TYPE}:${util.ID}`;\r\n const GROUP_NAME = util.NAME;\r\n if (!state.grupos[GROUP_ID]) {\r\n state.grupos[GROUP_ID] = {\r\n GROUP_ID,\r\n GROUP_NAME,\r\n checked: false,\r\n devs: [util],\r\n gData: [],\r\n type: `utility-${util.TYPE}`,\r\n color: colorList[++aux.colorIndex % colorList.length],\r\n };\r\n }\r\n }\r\n }\r\n\r\n function verifyExternalProps() {\r\n const aux: ColorIndexAux = { colorIndex: -1 };\r\n verifyEnvProps(aux);\r\n verifyGroupsProps(aux);\r\n verifyWeatherStationsProps(aux);\r\n verifyGreenAntPowerProps(aux);\r\n verifyDMEPowerProps(aux);\r\n verifyUtilityProps(aux);\r\n }\r\n\r\n const calcNumDays = () => {\r\n const d1 = new Date(\r\n `${moment(state.dateStart).format('YYYY-MM-DD')}T00:00:00Z`,\r\n ).getTime();\r\n const d2 = new Date(\r\n `${moment(state.dateEnd).format('YYYY-MM-DD')}T00:00:00Z`,\r\n ).getTime();\r\n\r\n const numDays = Math.round((d2 - d1) / 1000 / 60 / 60 / 24) + 1;\r\n\r\n if (numDays < 1 || numDays > 15) { return toast.error(t('periodo1a15')); }\r\n\r\n state.numDays = numDays;\r\n };\r\n\r\n async function dateChanged() {\r\n try {\r\n Object.values(state.grupos).forEach((grupo) => {\r\n grupo.gData = [];\r\n });\r\n const dayYMD = state.date && state.date.format().substring(0, 10);\r\n const { useMinGraphData, useMaxGraphData } = getTemperatureLimitLines(dayYMD) || {};\r\n state.useMinGraphData = useMinGraphData;\r\n state.useMaxGraphData = useMaxGraphData;\r\n render();\r\n await fetchMissingData();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n calculateGraphData();\r\n setState({ loadingData: false });\r\n }\r\n\r\n function getTambGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'Tamb' && grupo.devs?.length) {\r\n grupo.devs.forEach((dac) => {\r\n const params = {\r\n dacId: dac.DAC_ID!,\r\n selectedParams: ['Tamb'],\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dac/get-charts-data-common', params).then(\r\n async (websocketHistory) => {\r\n const {\r\n vars: { Tamb },\r\n commonX,\r\n limts,\r\n } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n\r\n gData.push({\r\n lineId: `${grupo.type}-${dac.DAC_ID}`,\r\n data: Tamb,\r\n isL1: false,\r\n showLine: true,\r\n axisId: 'temp',\r\n tempLimits: [\r\n limts.minTval,\r\n limts.maxTval,\r\n ] as GroupChartData['tempLimits'],\r\n type: grupo.type,\r\n });\r\n },\r\n );\r\n promises.push(promise);\r\n });\r\n }\r\n }\r\n\r\n function getLcmpGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'Lcmp' && grupo.devs?.length) {\r\n grupo.devs.forEach((dac) => {\r\n if (splitLcmp) {\r\n const params = {\r\n dacId: dac.DAC_ID!,\r\n selectedParams: ['Levp', 'Lcut'],\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dac/get-charts-data-common', params).then(\r\n async (websocketHistory) => {\r\n const {\r\n vars: { Levp, Lcut },\r\n commonX,\r\n } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n\r\n gData.push({\r\n lineId: `Levp-${grupo.type}-${dac.DAC_ID}`,\r\n data: Levp,\r\n isL1: true,\r\n type: grupo.type,\r\n showLine: true,\r\n });\r\n gData.push({\r\n lineId: `Lcut-${grupo.type}-${dac.DAC_ID}`,\r\n data: Lcut,\r\n isL1: true,\r\n type: grupo.type,\r\n showLine: true,\r\n });\r\n },\r\n );\r\n promises.push(promise);\r\n } else {\r\n const params = {\r\n dacId: dac.DAC_ID!,\r\n selectedParams: ['Lcmp'],\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dac/get-charts-data-common', params).then(\r\n async (websocketHistory) => {\r\n const {\r\n vars: { Lcmp },\r\n commonX,\r\n } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n\r\n gData.push({\r\n lineId: `${grupo.type}-${dac.DAC_ID}`,\r\n data: Lcmp,\r\n isL1: true,\r\n showLine: true,\r\n type: grupo.type,\r\n axisId: 'temp',\r\n });\r\n },\r\n );\r\n promises.push(promise);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function getValveOnGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'ValveOn' && grupo.devs?.length) {\r\n grupo.devs.forEach((dri) => {\r\n const params = {\r\n driId: dri.DRI_ID!,\r\n selectedParams: ['ValveOn'],\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dri/get-day-charts-data-common', params).then(\r\n async (websocketHistory) => {\r\n const {\r\n vars: { ValveOn },\r\n commonX,\r\n } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n\r\n gData.push({\r\n lineId: `${grupo.type}-${dri.DRI_ID}`,\r\n data: ValveOn,\r\n isL1: true,\r\n showLine: true,\r\n type: grupo.type,\r\n });\r\n },\r\n );\r\n promises.push(promise);\r\n });\r\n }\r\n }\r\n\r\n function getVavRoomTempGraphData(\r\n grupo: GroupInfo,\r\n dut: { DEV_ID?: string },\r\n promises: Promise[],\r\n gData: GroupChartData[],\r\n ) {\r\n const params = {\r\n driId: dut.DEV_ID!,\r\n selectedParams: ['TempAmb'],\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dri/get-day-charts-data-common', params)\r\n .then(async (websocketHistory) => {\r\n const {\r\n vars: { TempAmb: Temperature },\r\n commonX,\r\n limits: { minTval, maxTval },\r\n } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n const tempLimits = [minTval, maxTval] as [number, number];\r\n\r\n gData.push({\r\n lineId: dut.DEV_ID ?? '',\r\n data: Temperature,\r\n isL1: false,\r\n tempLimits,\r\n axisId: 'temp',\r\n type: grupo.type,\r\n showLine: true,\r\n });\r\n });\r\n promises.push(promise);\r\n }\r\n\r\n function identifyDutDuoInsuf(grupo: GroupInfo, params: { selectedParams: string[] }, placement?: string) {\r\n let isDutDuoInsuf = false;\r\n if (placement === 'DUO' && grupo.GROUP_ID.endsWith('-INS')) {\r\n params.selectedParams = ['Temperature_1'];\r\n isDutDuoInsuf = true;\r\n }\r\n return isDutDuoInsuf;\r\n }\r\n\r\n function getDutGraphData(\r\n grupo: GroupInfo,\r\n dut: { DEV_ID?: string, PLACEMENT?: string, VARS?: string },\r\n promises: Promise[],\r\n gData: GroupChartData[],\r\n ) {\r\n const params = {\r\n devId: dut.DEV_ID!,\r\n selectedParams: ['Temperature', 'eCO2', 'Humidity'],\r\n day: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n\r\n const isDutDuoInsuf = identifyDutDuoInsuf(grupo, params, dut?.PLACEMENT);\r\n\r\n const promise = apiCall(\r\n '/dut/get-day-charts-data-commonX',\r\n params,\r\n ).then(async (websocketHistory) => {\r\n const {\r\n Temperature, Temperature_1, eCO2, axisInfo, commonX, Humidity,\r\n } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n\r\n if (dut.VARS == null || dut.VARS.includes('T')) {\r\n // assumindo que DUTs sem VARS são mais antigos e têm ao menos a temperatura\r\n const isDutDuo = ((dut.DEV_ID && isDutDuoInsuf) ? dut.DEV_ID.concat('-INS') : dut.DEV_ID);\r\n gData.push({\r\n lineId: isDutDuo ?? '',\r\n data: isDutDuoInsuf ? Temperature_1 : Temperature,\r\n isL1: false,\r\n tempLimits: axisInfo.tempLimits,\r\n axisId: 'temp',\r\n type: grupo.type,\r\n showLine: true,\r\n });\r\n }\r\n if (dut.VARS?.includes('D')) {\r\n gData.push({\r\n lineId: dut.DEV_ID ?? '',\r\n data: eCO2,\r\n isL1: false,\r\n co2Limits: axisInfo.co2Limits,\r\n axisId: 'co2',\r\n type: 'co2',\r\n showLine: true,\r\n });\r\n }\r\n\r\n if (dut.VARS?.includes('D')) {\r\n gData.push({\r\n lineId: dut.DEV_ID ?? '',\r\n data: Humidity,\r\n isL1: false,\r\n humLimits: axisInfo.humLimits,\r\n axisId: 'hum',\r\n type: 'hum',\r\n showLine: true,\r\n });\r\n }\r\n });\r\n promises.push(promise);\r\n }\r\n\r\n function getRoomTempGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'room-temp' && grupo.devs?.length) {\r\n grupo.devs.forEach((dut) => {\r\n if (dut.isVav) {\r\n getVavRoomTempGraphData(grupo, dut, promises, gData);\r\n } else {\r\n getDutGraphData(grupo, dut, promises, gData);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function calculateEnergyLimits(eConsumption: { y: number[] }, commonX: number[], isDme: boolean) {\r\n let maxValue = 1;\r\n let minValue = 0;\r\n for (let i = 0; i < commonX.length; i++) {\r\n if (eConsumption.y[i] != null) {\r\n if (!isDme) eConsumption.y[i] = Math.round(eConsumption.y[i] / 100) / 10;\r\n\r\n if (eConsumption.y[i] > maxValue) {\r\n maxValue = eConsumption.y[i];\r\n }\r\n if (eConsumption.y[i] < minValue) {\r\n minValue = eConsumption.y[i];\r\n }\r\n }\r\n }\r\n\r\n return [minValue, maxValue];\r\n }\r\n\r\n function handleEnergyGraphDME(energyGraph) {\r\n let powerLast = 0 as number | undefined;\r\n let powerFirst = 0 as number | undefined;\r\n\r\n const energyGraphDME = energyGraph.map((power) => {\r\n if (powerFirst === 0 && power !== -1) powerFirst = power;\r\n if (power === null) { return 0; }\r\n if (power !== -1) { powerLast = power; return power; }\r\n if (powerFirst === 0) return -1;\r\n return powerLast;\r\n });\r\n\r\n const energyGraphAux = energyGraphDME.map((power) => {\r\n if (power === -1) return powerFirst;\r\n return power;\r\n });\r\n\r\n return energyGraphAux;\r\n }\r\n\r\n function getGreenAntGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.GROUP_ID === 'greenant:meter' && grupo.type === 'energy' && grupo.unitId) {\r\n const params = {\r\n UNIT_ID: grupo.unitId,\r\n day: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall(\r\n '/get-unit-energy-consumption-commonX',\r\n params,\r\n ).then(async (energyConsumption) => {\r\n const { commonX, energyConsumption: eConsumption } = energyConsumption;\r\n\r\n state.commonX = commonX;\r\n\r\n const limits = calculateEnergyLimits(eConsumption, commonX, false);\r\n gData.push({\r\n lineId: grupo.GROUP_ID,\r\n data: eConsumption,\r\n isL1: false,\r\n powerLimits: limits as GroupChartData['powerLimits'],\r\n axisId: 'power',\r\n type: grupo.type,\r\n showLine: true,\r\n });\r\n });\r\n promises.push(promise);\r\n }\r\n }\r\n\r\n function getDMEGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.GROUP_ID.startsWith('dme:meter') && grupo.type === 'energy' && grupo.unitId) {\r\n const params = {\r\n energy_device_id: grupo.ENERGY_DEVICE_ID,\r\n serial: grupo.SERIAL,\r\n manufacturer: grupo.MANUFACTURER,\r\n model: grupo.MODEL,\r\n start_time: `${moment(state.dateStart).format('YYYY-MM-DD')}T00:00:00`,\r\n end_time: `${moment(state.dateEnd).format('YYYY-MM-DD')}T23:59:59`,\r\n };\r\n const promise = apiCall(\r\n '/energy/get-hist',\r\n params,\r\n ).then(async (energyConsumption) => {\r\n const energyPower = energyConsumption.data.map((telemetry) => ({\r\n power: telemetry.pot_ap_tri,\r\n timestamp: telemetry.timestamp,\r\n }));\r\n\r\n const commonX = handleCommonX();\r\n state.commonX = commonX;\r\n const energyGraph = new Array(state.commonX.length).fill(-1);\r\n for (const energy of energyPower) {\r\n const momentCurrent = moment(energy.timestamp);\r\n const timestampObj = new Date(energy.timestamp);\r\n state.dateStart?.startOf('day');\r\n const diffInDays = momentCurrent.diff(state.dateStart, 'days');\r\n const timestampFr = (diffInDays * 86400 + timestampObj.getHours() * 3600 + timestampObj.getMinutes() * 60 + timestampObj.getSeconds()) / 3600;\r\n\r\n const pos = state.commonX.findIndex((elemento) => elemento > timestampFr) - 1;\r\n const powerCurrent = energy?.power?.toFixed(1);\r\n if (powerCurrent !== undefined) energyGraph[pos] = parseFloat(powerCurrent);\r\n }\r\n\r\n const energyGraphDME = handleEnergyGraphDME(energyGraph);\r\n const eConsumption = { y: energyGraphDME };\r\n const limits = calculateEnergyLimits(eConsumption, commonX, true);\r\n gData.push({\r\n lineId: grupo.GROUP_ID,\r\n data: eConsumption,\r\n isL1: false,\r\n powerLimits: limits as GroupChartData['powerLimits'],\r\n axisId: 'power',\r\n type: grupo.type,\r\n showLine: true,\r\n });\r\n });\r\n\r\n promises.push(promise);\r\n }\r\n }\r\n\r\n function getTinmetGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'Tinmet' && grupo.unitId && grupo.CD_ESTACAO) {\r\n let promise = Promise.resolve();\r\n promise = promise.then(async () => {\r\n const params = {\r\n unitId: grupo.unitId!,\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n stations: [grupo.GROUP_NAME],\r\n numDays: state.numDays,\r\n };\r\n const { commonX, stationsTemps } = await apiCall(\r\n '/get-weather-data-near-unit-commonX-v2',\r\n params,\r\n );\r\n\r\n state.commonX = commonX;\r\n\r\n const temperatures = stationsTemps[grupo.GROUP_NAME].temperatures;\r\n const tempLimits = stationsTemps[grupo.GROUP_NAME].tempLimits;\r\n\r\n state.weatherStationsData[grupo.GROUP_NAME] = {\r\n date: params.dayYMD,\r\n temperatures,\r\n tempLimits,\r\n distance: grupo.DISTANCIA_EM_KM,\r\n };\r\n });\r\n\r\n promise = promise.then(async () => {\r\n gData.push({\r\n lineId: grupo.GROUP_ID,\r\n data: state.weatherStationsData[grupo.GROUP_NAME].temperatures,\r\n isL1: false,\r\n tempLimits: state.weatherStationsData[grupo.GROUP_NAME].tempLimits as [number, number],\r\n type: grupo.type,\r\n axisId: 'temp',\r\n showLine: true,\r\n distance: state.weatherStationsData[grupo.GROUP_NAME].distance,\r\n });\r\n });\r\n promises.push(promise);\r\n }\r\n }\r\n\r\n function getDMTGraphData(DMT_CODE: string, type: string, grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n const params = {\r\n dmtCode: DMT_CODE,\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dmt/get-nobreaks-charts-data', params).then(\r\n async (websocketHistory) => {\r\n const { vars, commonX } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n const utilId = grupo.GROUP_ID.split(':')[1];\r\n const utilVar = vars[utilId];\r\n\r\n gData.push({\r\n lineId: `${type}-${grupo.GROUP_ID}-${DMT_CODE}`,\r\n data: { L: utilVar?.y || [], y: utilVar?.y || [] },\r\n isL1: true,\r\n type,\r\n showLine: true,\r\n });\r\n },\r\n );\r\n\r\n promises.push(promise);\r\n }\r\n\r\n function getNobreakData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'utility-nobreak' && grupo.devs?.length) {\r\n grupo.devs.forEach((dev) => {\r\n if (dev.DMT_CODE) {\r\n getDMTGraphData(dev.DMT_CODE, 'nobreak', grupo, promises, gData);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function getIlluminationData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n if (grupo.type === 'utility-illumination' && grupo.devs?.length) {\r\n grupo.devs.forEach((dev) => {\r\n if (dev.DAL_CODE) {\r\n const params = {\r\n dalCode: dev.DAL_CODE,\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays: state.numDays,\r\n };\r\n const promise = apiCall('/dal/get-illuminations-charts-data', params).then(\r\n async (websocketHistory) => {\r\n const { vars: { Feedback }, commonX } = websocketHistory;\r\n\r\n state.commonX = commonX;\r\n const utilId = grupo.GROUP_ID.split(':')[1];\r\n const utilFeedbackPort = utilitarios?.find((util) => util.ID.toString() === utilId)?.FEEDBACK;\r\n const data = utilFeedbackPort && Feedback[utilFeedbackPort - 1];\r\n\r\n gData.push({\r\n lineId: `illumination-${grupo.GROUP_ID}-${dev.DMT_CODE}`,\r\n data: { L: data || [], y: data || [] },\r\n isL1: true,\r\n type: 'illumination',\r\n showLine: true,\r\n });\r\n },\r\n );\r\n\r\n promises.push(promise);\r\n }\r\n\r\n if (dev.DMT_CODE) {\r\n getDMTGraphData(dev.DMT_CODE, 'illumination', grupo, promises, gData);\r\n }\r\n });\r\n }\r\n }\r\n\r\n function getUtilityGraphData(grupo: GroupInfo, promises: Promise[], gData: GroupChartData[]) {\r\n getNobreakData(grupo, promises, gData);\r\n getIlluminationData(grupo, promises, gData);\r\n }\r\n\r\n async function fetchGraphData(grupo: GroupInfo) {\r\n const gData: GroupChartData[] = [];\r\n const promises: Promise[] = [];\r\n getTambGraphData(grupo, promises, gData);\r\n getLcmpGraphData(grupo, promises, gData);\r\n getValveOnGraphData(grupo, promises, gData);\r\n getRoomTempGraphData(grupo, promises, gData);\r\n getGreenAntGraphData(grupo, promises, gData);\r\n getDMEGraphData(grupo, promises, gData);\r\n getTinmetGraphData(grupo, promises, gData);\r\n getUtilityGraphData(grupo, promises, gData);\r\n await Promise.all(promises);\r\n return gData;\r\n }\r\n\r\n async function fetchMissingData() {\r\n if (!state.date || !state.dateStart) return;\r\n\r\n try {\r\n const promises = Object.values(state.grupos).map(async (grupo) => {\r\n if (grupo.checked && !grupo.gData.length) {\r\n setState({ loadingData: true });\r\n return fetchGraphData(grupo).then((gData) => {\r\n for (const line of gData) {\r\n line.color = grupo.color || '#3a393e';\r\n }\r\n grupo.gData = gData;\r\n });\r\n }\r\n });\r\n await Promise.all(promises);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n type BooleanLinesData = { L?: number | null; y?: number | null, }[][]\r\n\r\n function getBoolTicksNames(\r\n booleanLines: BooleanLinesData,\r\n ticksValues: [number[]],\r\n booleanTypes: string[],\r\n ) {\r\n const boolTicksNames = {};\r\n for (let i = 0; i < booleanLines.length; i++) {\r\n const [tick_0, tick_1, tick_2] = ticksValues[i];\r\n const isVav = booleanTypes[i] === 'VAV';\r\n const isNobreak = booleanTypes[i] === 'Nobreak';\r\n if (isNobreak) {\r\n boolTicksNames[String(tick_0)] = 'DESLIGADO';\r\n boolTicksNames[String(tick_1)] = 'BATERIA';\r\n boolTicksNames[String(tick_2)] = 'REDE ELÉTRICA';\r\n }\r\n else if (isVav) {\r\n boolTicksNames[String(tick_0)] = 'FECHADO';\r\n boolTicksNames[String(tick_1)] = 'ABERTO';\r\n } else if (splitLcmp) {\r\n boolTicksNames[String(tick_0)] = i % 2 ? 'BLOQUEADO' : 'DESLIGADO';\r\n boolTicksNames[String(tick_1)] = i % 2 ? 'LIBERADO' : 'LIGADO';\r\n } else {\r\n boolTicksNames[String(tick_0)] = 'DESLIGADO';\r\n boolTicksNames[String(tick_1)] = 'LIGADO';\r\n }\r\n }\r\n\r\n return boolTicksNames;\r\n }\r\n\r\n function updateTempLimits(line: GroupChartData, tempLimits: { maxTval?: number, minTval?: number }) {\r\n if (line.tempLimits) {\r\n if (tempLimits.maxTval == null || line.tempLimits[1] > tempLimits.maxTval) { tempLimits.maxTval = line.tempLimits[1]; }\r\n if (tempLimits.minTval == null || line.tempLimits[0] < tempLimits.minTval) { tempLimits.minTval = line.tempLimits[0]; }\r\n }\r\n }\r\n function updatePowerLimits(line: GroupChartData, powerLimits: { maxPval?: number, minPval?: number }) {\r\n if (line.powerLimits) {\r\n if (powerLimits.maxPval == null || line.powerLimits[1] > powerLimits.maxPval) { powerLimits.maxPval = line.powerLimits[1]; }\r\n if (powerLimits.minPval == null || line.powerLimits[0] < powerLimits.minPval) { powerLimits.minPval = line.powerLimits[0]; }\r\n }\r\n }\r\n\r\n function updateCO2Limits(line: GroupChartData, co2Limits: { maxCO2val?: number, minCO2val?: number }) {\r\n if (line.co2Limits) {\r\n if (co2Limits.maxCO2val == null || line.co2Limits[1] > co2Limits.maxCO2val) { co2Limits.maxCO2val = line.co2Limits[1]; }\r\n if (co2Limits.minCO2val == null || line.co2Limits[0] < co2Limits.minCO2val) { co2Limits.minCO2val = line.co2Limits[0]; }\r\n }\r\n }\r\n\r\n function handleBooleanData(line: GroupChartData, booleanLines: BooleanLinesData, booleanTypes: string[]) {\r\n const lData: { L: (number|null) }[] = [];\r\n if (line.data.L) {\r\n line.data.L.forEach((L) => lData.push({ L }));\r\n } else {\r\n line.data.y.forEach((y) => lData.push({ L: y }));\r\n }\r\n booleanLines.push(lData);\r\n const isVav = line.type === 'ValveOn';\r\n const isNobreak = line.type === 'nobreak';\r\n if (isVav) {\r\n booleanTypes.push('VAV');\r\n } else if (isNobreak) {\r\n booleanTypes.push('Nobreak');\r\n } else {\r\n booleanTypes.push('L1');\r\n }\r\n }\r\n\r\n function getVarsData() {\r\n const selectedVars: GroupChartData[] = [];\r\n const booleanLines: BooleanLinesData = [];\r\n const booleanTypes: string[] = [];\r\n const tempLimits = {} as { maxTval?: number, minTval?: number };\r\n const powerLimits = {} as { maxPval?: number, minPval?: number };\r\n const co2Limits = {} as { maxCO2val?: number, minCO2val?: number };\r\n for (const grupo of Object.values(state.grupos)) {\r\n if (!grupo.checked) continue;\r\n for (const line of grupo.gData) {\r\n selectedVars.push({ ...line, name: grupo.GROUP_NAME });\r\n if (line.isL1) {\r\n handleBooleanData(line, booleanLines, booleanTypes);\r\n continue;\r\n }\r\n updateTempLimits(line, tempLimits);\r\n updatePowerLimits(line, powerLimits);\r\n updateCO2Limits(line, co2Limits);\r\n }\r\n }\r\n return {\r\n selectedVars, booleanLines, booleanTypes, ...tempLimits, ...powerLimits, ...co2Limits,\r\n };\r\n }\r\n\r\n function calculateGraphData() {\r\n const {\r\n selectedVars,\r\n booleanLines,\r\n booleanTypes,\r\n maxTval,\r\n minTval,\r\n maxPval,\r\n minPval,\r\n maxCO2val,\r\n minCO2val,\r\n } = getVarsData();\r\n state.selectedVars = selectedVars;\r\n const dataLimits = {\r\n maxTval,\r\n minTval,\r\n maxPval,\r\n minPval,\r\n maxCO2val,\r\n minCO2val,\r\n };\r\n const axisInfo = axisCalc.calculateAxisInfo(\r\n dataLimits,\r\n booleanLines.length,\r\n booleanTypes,\r\n );\r\n\r\n state.axisInfo = {\r\n ...state.axisInfo,\r\n ...axisInfo,\r\n powerLimits: axisInfo.presLimits,\r\n powerTicks: axisInfo.presTicks,\r\n presLimits: null,\r\n presTicks: null,\r\n };\r\n const ticksValues = axisCalc.updateBoolY(\r\n booleanLines,\r\n state.axisInfo.L1start as number,\r\n booleanTypes,\r\n );\r\n\r\n let indexBool = 0;\r\n for (const selectedVar of state.selectedVars) {\r\n if (booleanLines[indexBool] && selectedVar.isL1) {\r\n const yData: (number|null)[] = [];\r\n\r\n booleanLines[indexBool].forEach((data) => {\r\n yData.push(data.y!);\r\n });\r\n selectedVar.data.y = yData;\r\n indexBool++;\r\n }\r\n }\r\n\r\n state.boolTicksNames = getBoolTicksNames(booleanLines, ticksValues, booleanTypes);\r\n }\r\n\r\n async function requireMultiDaysCsv(params) {\r\n const days = [] as string[];\r\n for (let i = 0; i < state.numDays; i++) {\r\n const dayAux = addDays_YMD(\r\n moment(state.dateStart).format('YYYY-MM-DD'),\r\n i,\r\n );\r\n days.push(dayAux);\r\n }\r\n\r\n return Promise.all(\r\n days.map(async (day) => {\r\n const paramsAux = { ...params, day };\r\n\r\n return apiCallDownload('/analise-integrada-export', paramsAux);\r\n }),\r\n );\r\n }\r\n\r\n async function requireCsvExport() {\r\n if (!state.dateStart) return;\r\n try {\r\n const selectedDate = state.dateStart.format().substring(0, 10);\r\n const params: {\r\n day: string;\r\n dacsTamb: string[];\r\n dacsL1: string[];\r\n dutsTemp: string[];\r\n unitsPower: number[];\r\n tempInmet: {\r\n GROUP_ID: string;\r\n GROUP_NAME: string;\r\n }[];\r\n } = {\r\n day: selectedDate,\r\n dacsTamb: [],\r\n dacsL1: [],\r\n dutsTemp: [],\r\n unitsPower: [],\r\n tempInmet: [],\r\n };\r\n setState({ exportLoading: true });\r\n for (const grupo of Object.values(state.grupos)) {\r\n if (grupo.checked && grupo.gData && grupo.gData.length) {\r\n if (grupo.type === 'Tamb' && grupo.devs && grupo.devs.length) {\r\n params.dacsTamb = params.dacsTamb.concat(\r\n grupo.devs.map((dac) => dac.DAC_ID).filter(truthy),\r\n );\r\n } else if (grupo.type === 'Lcmp' && grupo.devs && grupo.devs.length) {\r\n params.dacsL1 = params.dacsL1.concat(\r\n grupo.devs.map((dac) => dac.DAC_ID).filter(truthy),\r\n );\r\n } else if (\r\n grupo.type === 'room-temp'\r\n && grupo.devs\r\n && grupo.devs.length\r\n ) {\r\n params.dutsTemp = params.dutsTemp.concat(\r\n grupo.devs.map((dut) => dut.DEV_ID).filter(truthy),\r\n );\r\n } else if (grupo.type === 'energy' && grupo.unitId) {\r\n params.unitsPower.push(grupo.unitId);\r\n } else if (\r\n grupo.type === 'Tinmet'\r\n && grupo.gData\r\n && grupo.gData.length\r\n ) {\r\n params.tempInmet.push({\r\n GROUP_ID: grupo.CD_ESTACAO!,\r\n GROUP_NAME: grupo.GROUP_NAME,\r\n });\r\n }\r\n }\r\n }\r\n const responses = await requireMultiDaysCsv(params);\r\n const responsesData = responses.map((response) => response.data);\r\n const link = document.getElementById('downloadLink') as any;\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(\r\n new Blob([...responsesData], { type: 'text/csv' }),\r\n );\r\n link.download = `Análise ${moment(state.dateStart).format(\r\n 'DD-MM-YYYY',\r\n )} - ${moment(state.dateEnd).format('DD-MM-YYYY')}`;\r\n link.click();\r\n toast.success(t('sucessoGerar'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ exportLoading: false });\r\n }\r\n\r\n async function onSelectDevice(devices, selectedDevicesState: string) {\r\n state.isSelected = true;\r\n Object.values(state.grupos).forEach((group) => {\r\n const deviceFound = devices.find((d) => d === group.GROUP_ID);\r\n\r\n if (deviceFound) {\r\n group.checked = true;\r\n } else if (\r\n state[selectedDevicesState].find((d) => d === group.GROUP_ID)\r\n ) {\r\n group.checked = false;\r\n const updatedVars = state.selectedVars.filter(\r\n (selectedVar) => selectedVar.name !== group.GROUP_NAME,\r\n );\r\n state.selectedVars = updatedVars;\r\n }\r\n });\r\n\r\n state[selectedDevicesState] = devices;\r\n render();\r\n }\r\n\r\n async function handleSelect() {\r\n state.isSelected = false;\r\n await fetchMissingData();\r\n calculateGraphData();\r\n setState({ loadingData: false });\r\n }\r\n\r\n function replaceLastCharacters(str: string) {\r\n return str.length > 23 ? `${str.slice(0, 24)}...` : str;\r\n }\r\n\r\n function getFilterOptions(filterOptions: GroupInfo[]) {\r\n return filterOptions.map((group) => ({\r\n name: group.GROUP_NAME,\r\n value: group.GROUP_ID,\r\n icon: (\r\n \r\n \r\n \r\n \r\n ),\r\n distance: group.DISTANCIA_EM_KM,\r\n }));\r\n }\r\n\r\n function setSearchState() {\r\n if (state.search.length > 0) {\r\n state.search.forEach((search) => {\r\n state.troomsFiltered = getFilterOptions(\r\n state.trooms.filter((item) => item.GROUP_NAME.toLowerCase().includes(search.text.toLowerCase())),\r\n );\r\n state.l1sFiltered = getFilterOptions(\r\n state.l1s.filter((item) => item.GROUP_NAME.toLowerCase().includes(search.text.toLowerCase())),\r\n );\r\n state.tambsFiltered = getFilterOptions(\r\n state.tambs.filter((item) => item.GROUP_NAME.toLowerCase().includes(search.text.toLowerCase())),\r\n );\r\n state.powersFiltered = getFilterOptions(\r\n state.powers.filter((item) => item.GROUP_NAME.toLowerCase().includes(search.text.toLowerCase())),\r\n );\r\n state.utilitiesFiltered = getFilterOptions(\r\n state.utilities.filter((item) => item.GROUP_NAME.toLowerCase().includes(search.text.toLowerCase())),\r\n );\r\n });\r\n } else {\r\n state.troomsFiltered = getFilterOptions(state.trooms);\r\n state.l1sFiltered = getFilterOptions(state.l1s);\r\n state.tambsFiltered = getFilterOptions(state.tambs);\r\n state.powersFiltered = getFilterOptions(state.powers);\r\n state.tInmetFiltered = getFilterOptions(state.tInmet);\r\n state.utilitiesFiltered = getFilterOptions(state.utilities);\r\n }\r\n\r\n render();\r\n }\r\n\r\n function buildItemsList() {\r\n Object.values(state.grupos).forEach((grupo) => {\r\n if (grupo.type === 'room-temp') {\r\n state.trooms.push(grupo);\r\n }\r\n if (grupo.type === 'Lcmp' || grupo.type === 'ValveOn') {\r\n state.l1s.push(grupo);\r\n }\r\n if (grupo.type === 'Tamb') {\r\n state.tambs.push(grupo);\r\n }\r\n if (grupo.type === 'energy') {\r\n state.powers.push(grupo);\r\n }\r\n if (grupo.type === 'Tinmet') {\r\n state.tInmet.push(grupo);\r\n }\r\n if (grupo.type.startsWith('utility')) {\r\n state.utilities.push(grupo);\r\n }\r\n });\r\n }\r\n\r\n function itemsWithoutFilter() {\r\n if (state.search.length === 0) {\r\n state.trooms = [];\r\n state.l1s = [];\r\n state.tambs = [];\r\n state.powers = [];\r\n state.tInmet = [];\r\n state.utilities = [];\r\n\r\n buildItemsList();\r\n\r\n state.troomsFiltered = getFilterOptions(state.trooms);\r\n state.l1sFiltered = getFilterOptions(state.l1s);\r\n state.tambsFiltered = getFilterOptions(state.tambs);\r\n state.powersFiltered = getFilterOptions(state.powers);\r\n state.tInmetFiltered = getFilterOptions(state.tInmet);\r\n state.utilitiesFiltered = getFilterOptions(state.utilities);\r\n }\r\n }\r\n itemsWithoutFilter();\r\n\r\n async function clearGroup(list: GroupInfo[], selectedGroup: string) {\r\n try {\r\n for (const group of list) {\r\n group.checked = false;\r\n }\r\n\r\n state[selectedGroup] = [];\r\n await fetchMissingData();\r\n calculateGraphData();\r\n setState({ loadingData: false });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n async function setAllGroup(list: GroupInfo[], selectedGroup: string) {\r\n try {\r\n const shouldBeChecked = list.some((group) => !group.checked);\r\n for (const group of list) {\r\n group.checked = shouldBeChecked;\r\n state[selectedGroup].push(group.GROUP_ID);\r\n }\r\n\r\n await fetchMissingData();\r\n calculateGraphData();\r\n setState({ loadingData: false });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n function zoom() {\r\n let { refAreaLeft, refAreaRight } = state;\r\n\r\n if (\r\n refAreaLeft === refAreaRight\r\n || refAreaRight == null\r\n || refAreaLeft == null\r\n ) {\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n });\r\n return;\r\n }\r\n\r\n // xAxis domain\r\n if (refAreaLeft > refAreaRight) { [refAreaLeft, refAreaRight] = [refAreaRight, refAreaLeft]; }\r\n\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n xDomain: [refAreaLeft, refAreaRight],\r\n xTicks: [],\r\n });\r\n }\r\n\r\n function zoomOut() {\r\n setState({\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n xDomain: null,\r\n xTicks: Array.from({ length: 13 }, (_, i) => i * 2 * state.numDays),\r\n });\r\n }\r\n\r\n function onMultidaysClick() {\r\n state.multiDays = !state.multiDays;\r\n if (!state.multiDays) {\r\n state.dateEnd = state.dateStart;\r\n }\r\n render();\r\n }\r\n\r\n function tickXLabelFormaterDay(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(\r\n `${moment(state.dateStart)\r\n .add(numDays + 1, 'days')\r\n .format('YYYY-MM-DD')}T00:00:00Z`,\r\n );\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n\r\n return `${dd}/${mm}`;\r\n }\r\n\r\n function tooltipXLabelFormater(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(\r\n `${moment(state.dateStart)\r\n .add(numDays + 1, 'days')\r\n .format('YYYY-MM-DD')}T00:00:00Z`,\r\n );\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const dateFinal = `${dd}/${mm}`;\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n return (\r\n

\r\n {dateFinal}\r\n {' '}\r\n -\r\n {' '}\r\n \r\n {`${String(hh).padStart(2, '0')}:${String(min).padStart(\r\n 2,\r\n '0',\r\n )}:${String(ss).padStart(2, '0')}`}\r\n \r\n

\r\n );\r\n }\r\n\r\n function formatLabel(value: number, label: string, isBool: boolean, isVav: boolean, isNobreak: boolean) {\r\n let formattedLabel = label;\r\n if (isBool) {\r\n formattedLabel = value % 5 > -2.5 ? 'LIGADO' : 'DESLIGADO';\r\n }\r\n\r\n if (isVav) {\r\n formattedLabel = value % 5 > -2.5 ? 'ABERTO' : 'FECHADO';\r\n }\r\n\r\n if (isNobreak) {\r\n if (value % 6 < -5) formattedLabel = 'DESLIGADO';\r\n else if (value % 6 > -2) formattedLabel = 'REDE ELÉTRICA';\r\n else formattedLabel = 'BATERIA';\r\n }\r\n\r\n return formattedLabel;\r\n }\r\n\r\n function toolTipFormater(\r\n value: number,\r\n _accessor: string | Function,\r\n payload: {\r\n value: number;\r\n payload: number; // x index\r\n name: string;\r\n label: string;\r\n },\r\n _index: number,\r\n ) {\r\n if (state.selectedVars && state.axisInfo.L1start !== null) {\r\n const varInfo = state.selectedVars.find(\r\n (data) => `${data.name}|${data.lineId}|${data.axisId}` === payload.name,\r\n );\r\n const type = (varInfo?.type) ?? '';\r\n const isBool = type === 'Levp' || type === 'Lcut' || type === 'Lcmp' || type === 'illumination';\r\n\r\n let unit = '';\r\n\r\n switch (varInfo?.axisId) {\r\n case 'temp':\r\n unit = ' °C ';\r\n break;\r\n case 'hum':\r\n unit = ' % ';\r\n break;\r\n case 'power':\r\n unit = ' Kw ';\r\n break;\r\n case 'co2':\r\n unit = ' ppm ';\r\n }\r\n\r\n const isVav = type === 'ValveOn';\r\n const isNobreak = type === 'nobreak';\r\n\r\n let label = formatNumberWithFractionDigits(value.toString());\r\n\r\n label = formatLabel(payload.value, label, isBool, isVav, isNobreak);\r\n\r\n if (label.toLocaleLowerCase().includes('km')) { unit = ''; }\r\n\r\n const unitMeasure = varInfo && varInfo.axisId !== 'power' ? unit : 'kW';\r\n\r\n const formattedValue = (\r\n \r\n {`${label}${(!isBool) ? unitMeasure : ''}`}\r\n \r\n );\r\n\r\n const name = payload.name.split('|')[0];\r\n const formattedName = payload.label || (name.length > 35 ? `${name.substring(0, 35)}...` : name);\r\n\r\n return [formattedValue, formattedName];\r\n }\r\n\r\n return '';\r\n }\r\n\r\n const CustomTooltipContent = (customTooltipProps) => {\r\n if (unitCoordinate?.lat && unitCoordinate?.lon && customTooltipProps.payload && customTooltipProps.payload.length !== 0) {\r\n const newPayload = [\r\n ...customTooltipProps.payload,\r\n ];\r\n\r\n customTooltipProps.payload.forEach((e) => {\r\n const varInfo = state.selectedVars.find(\r\n (data) => `${data.name}|${data.lineId}|${data.axisId}` === e.name,\r\n );\r\n if (varInfo && varInfo.type === 'Tinmet') {\r\n const indexToInsert = newPayload.findIndex((o) => o.name === e.name) + 1;\r\n\r\n newPayload.splice(indexToInsert, 0, {\r\n name: e.name,\r\n label: t('distanciaUnidadeEstacao'),\r\n value: varInfo?.distance || t('indisponivel'),\r\n });\r\n }\r\n });\r\n\r\n return ;\r\n }\r\n\r\n return ;\r\n };\r\n\r\n const findDeviceGroup = (deviceId: string) => {\r\n const trooms = state.trooms.find((troom) => troom.GROUP_ID === deviceId);\r\n const troomsFiltered = state.troomsFiltered.find((troom) => troom.value === deviceId);\r\n\r\n if (trooms) { return {\r\n name: t('ambiente'), group: trooms, filter: 'selectedTrooms', troomsFiltered,\r\n }; }\r\n\r\n const l1s = state.l1s.find((l1) => l1.GROUP_ID === deviceId);\r\n\r\n if (l1s) return { name: t('maquina'), group: l1s, filter: 'selectedL1s' };\r\n\r\n const tambs = state.tambs.find((tamb) => tamb.GROUP_ID === deviceId);\r\n\r\n if (tambs) return { name: t('temperaturaExterna'), group: tambs, filter: 'selectedTambs' };\r\n\r\n const tInmet = state.tInmet.find((inmet) => inmet.GROUP_ID === deviceId);\r\n\r\n if (tInmet) return { name: 'Tem. Ext. - Est. Metereológicas', group: null, filter: 'selectedTInmets' };\r\n\r\n const powers = state.powers.find((power) => power.GROUP_ID === deviceId);\r\n\r\n if (powers) return { name: t('consumoEnergia'), group: null, filter: 'selectedPowers' };\r\n\r\n const utilities = state.utilities.find((util) => util.GROUP_ID === deviceId);\r\n\r\n if (utilities) return { name: t('utilitario'), group: utilities, filter: 'selectedUtilities' };\r\n\r\n return { name: '', group: null, filter: '' };\r\n };\r\n\r\n function getOptionLink(\r\n groupName: string,\r\n group: GroupInfo | null,\r\n optionName: string,\r\n ) {\r\n if (groupName === t('ambiente')) {\r\n return (\r\n
\r\n \r\n {\r\n replaceLastCharacters(optionName)\r\n }\r\n \r\n
\r\n );\r\n }\r\n\r\n if (groupName === t('temperaturaExterna')) {\r\n return (\r\n \r\n \r\n {\r\n replaceLastCharacters(optionName)\r\n }\r\n \r\n \r\n );\r\n }\r\n\r\n if (groupName === t('utilitario')) {\r\n const utilId = group?.GROUP_ID.split(':')[1];\r\n return (\r\n group?.type === 'utility-nobreak' ? (\r\n \r\n \r\n {\r\n replaceLastCharacters(optionName)\r\n }\r\n \r\n \r\n\r\n )\r\n : (\r\n \r\n \r\n {\r\n replaceLastCharacters(optionName)\r\n }\r\n \r\n \r\n )\r\n );\r\n }\r\n\r\n return L1only ? (\r\n \r\n \r\n {\r\n replaceLastCharacters(optionName)\r\n }\r\n \r\n \r\n ) : (\r\n \r\n \r\n {\r\n replaceLastCharacters(optionName)\r\n }\r\n \r\n \r\n );\r\n }\r\n\r\n function renderOption(propsOption, option, _snapshot, className) {\r\n const deviceGroup = findDeviceGroup(option.value);\r\n\r\n function changeCheckbox(value: 'temp' | 'hum' | 'co2') {\r\n const tempValue = state.selectedVars.filter((item) => item.axisId === value).find((item) => item.lineId === deviceGroup.group?.GROUP_ID.substring(1));\r\n const getIndex = tempValue && state.selectedVars.indexOf(tempValue);\r\n if (getIndex !== undefined && tempValue) {\r\n state.selectedVars[getIndex].showLine = !tempValue.showLine;\r\n }\r\n }\r\n\r\n let showCheckbox = 0;\r\n const tempItem = state.selectedVars.filter((item) => item.axisId === 'temp').find((item) => item.lineId === deviceGroup.group?.GROUP_ID.substring(1));\r\n const co2Item = state.selectedVars.filter((item) => item.axisId === 'co2').find((item) => item.lineId === deviceGroup.group?.GROUP_ID.substring(1));\r\n const humItem = state.selectedVars.filter((item) => item.axisId === 'hum').find((item) => item.lineId === deviceGroup.group?.GROUP_ID.substring(1));\r\n\r\n if (tempItem) showCheckbox++;\r\n if (co2Item) showCheckbox++;\r\n if (humItem) showCheckbox++;\r\n\r\n return (\r\n <>\r\n
\r\n \r\n \r\n {option.icon}\r\n {(deviceGroup\r\n && deviceGroup.name === t('temExtEstMetereologicas'))\r\n || (deviceGroup && deviceGroup.name === t('consumoEnergia')) ? (\r\n \r\n {\r\n replaceLastCharacters(option.name)\r\n }\r\n \r\n ) : (\r\n getOptionLink(deviceGroup.name, deviceGroup?.group, option.name)\r\n )}\r\n\r\n
\r\n \r\n { (deviceGroup.group?.GROUP_ID)?.startsWith('gD') && (\r\n \r\n \r\n \r\n ) }\r\n
\r\n { deviceGroup.group?.GROUP_NAME && deviceGroup.group.checked && (showCheckbox > 1) && (\r\n <>\r\n \r\n
\r\n
\r\n \r\n {\r\n changeCheckbox('temp');\r\n render();\r\n }}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n {t('temperatura')}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {\r\n changeCheckbox('hum');\r\n render();\r\n }}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n {t('umidade')}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {\r\n changeCheckbox('co2');\r\n render();\r\n }}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n CO²\r\n \r\n \r\n \r\n ) }\r\n \r\n
\r\n {deviceGroup?.name}\r\n
\r\n
\r\n {\r\n deviceGroup.name === t('temExtEstMetereologicas') && unitCoordinate?.lat && unitCoordinate?.lon ? (\r\n <>\r\n \r\n {t('estacao')}\r\n {option.name}\r\n \r\n
\r\n \r\n {t('distanciaEstacaoUnidade')}\r\n {formatNumberWithFractionDigits(option.distance)}\r\n \r\n \r\n ) : (\r\n \r\n {option.name}\r\n \r\n )\r\n }\r\n
\r\n \r\n\r\n \r\n );\r\n }\r\n\r\n const handleSearchDelete = (i) => {\r\n state.search = state.search.filter((_tag, index) => index !== i);\r\n render();\r\n setSearchState();\r\n };\r\n\r\n const handleSearchAddition = (tag) => {\r\n state.search = [...state.search, tag];\r\n render();\r\n setSearchState();\r\n };\r\n\r\n function handleClick(group: GroupInfo) {\r\n if (!group) return;\r\n group.displayColorPicker = !group.displayColorPicker;\r\n render();\r\n }\r\n\r\n function handleClose(group: GroupInfo) {\r\n if (!group) return;\r\n group.displayColorPicker = false;\r\n render();\r\n }\r\n\r\n function changeGroupsColor(groupId: string, color: string) {\r\n const group = state.selectedVars.filter((g) => g.lineId === groupId);\r\n if (group) {\r\n for (const item of group) {\r\n item.color = color;\r\n }\r\n }\r\n }\r\n\r\n function handleChange(color: { hex: string }, group: GroupInfo) {\r\n if (!group) return;\r\n group.color = color.hex;\r\n for (const line of group.gData) {\r\n line.color = color.hex;\r\n changeGroupsColor(line.lineId, color.hex);\r\n }\r\n\r\n render();\r\n }\r\n\r\n function isXDomainValid() {\r\n if (state.xDomain) {\r\n const isValidArrOfNumbers = state.xDomain.every((n) => typeof n === 'number' && n.toString() !== 'NaN');\r\n const isNotDefault = state.xDomain.toString() !== [0, 24 * state.numDays].toString();\r\n\r\n return isValidArrOfNumbers && isNotDefault;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n function handleModalClose() {\r\n state.isModalOpen = false;\r\n render();\r\n }\r\n\r\n function renderModalGroups(groupData: GroupInfo[], groupName: string) {\r\n const selectedGroup = (\r\n groupData.map((group) => (\r\n group.checked && (\r\n \r\n handleClick(group)}\r\n style={{ cursor: 'pointer' }}\r\n />\r\n {group.GROUP_NAME}\r\n {group.displayColorPicker ? (\r\n \r\n handleClose(group)}\r\n />\r\n handleChange(color, group)}\r\n />\r\n
\r\n ) : null}\r\n \r\n )\r\n ))\r\n );\r\n\r\n return (\r\n <>\r\n {groupData.some((group) => group.checked) && (\r\n \r\n {groupName}\r\n \r\n )}\r\n {selectedGroup}\r\n \r\n );\r\n }\r\n\r\n return (\r\n <>\r\n { state.showFilter && (\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {t('pesquisar')}\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {t('data')}\r\n {!state.multiDays && (\r\n {\r\n setState({\r\n date: value,\r\n dateStart: value,\r\n dateEnd: value,\r\n });\r\n }}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => setState({ focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n placeholder={t('selecioneUmaData')}\r\n />\r\n )}\r\n {state.multiDays && (\r\n {\r\n setState({\r\n date: startDate,\r\n dateStart: startDate,\r\n dateEnd: startDate !== state.dateStart ? null : endDate,\r\n });\r\n }} // PropTypes.func.isRequired,\r\n onFocusChange={(focused: 'endDate' | 'startDate' | null) => {\r\n setState({ focusedInput: focused });\r\n }}\r\n focusedInput={state.focusedInput}\r\n noBorder\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n startDatePlaceholderText={t('dataInicial')}\r\n endDatePlaceholderText={t('dataFinal')}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {t('multiplosDias')}\r\n \r\n \r\n \r\n
\r\n \r\n {state.selectedVars.length > 0 && (\r\n \r\n (state.exportLoading ? null : requireCsvExport())}\r\n >\r\n
\r\n \r\n \r\n {state.exportLoading ? 'Aguarde...' : t('exportarDados')}\r\n \r\n
\r\n \r\n
\r\n )}\r\n
\r\n \r\n \r\n \r\n \r\n {state.trooms.length > 0 && (\r\n \r\n \r\n \r\n \r\n {t('ambientes')}\r\n renderOption(DomProps, option, snapshot, className)}\r\n multiple\r\n closeOnSelect={false}\r\n printOptions=\"on-focus\"\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecionarAmbientes')}\r\n // eslint-disable-next-line react/jsx-no-bind\r\n onChange={(value) => onSelectDevice(value, 'selectedTrooms')}\r\n onBlur={() => {\r\n if (state.isSelected) {\r\n handleSelect();\r\n }\r\n }}\r\n disabled={state.loadingData}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n grupo.checked)}\r\n style={{ marginLeft: '-10px' }}\r\n onClick={() => (state.trooms.every((grupo) => grupo.checked)\r\n ? clearGroup(state.trooms, 'selectedTrooms')\r\n : setAllGroup(state.trooms, 'selectedTrooms'))}\r\n color=\"primary\"\r\n />\r\n {t('selecionarTodos')}\r\n \r\n \r\n \r\n clearGroup(state.trooms, 'selectedTrooms')}\r\n >\r\n {t('limparSelecao')}\r\n \r\n \r\n \r\n \r\n )}\r\n {state.l1s.length > 0 && (\r\n \r\n \r\n \r\n \r\n {t('maquinas')}\r\n onSelectDevice(value, 'selectedL1s')}\r\n onBlur={() => {\r\n if (state.isSelected) {\r\n handleSelect();\r\n }\r\n }}\r\n disabled={state.loadingData}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n grupo.checked)}\r\n style={{ marginLeft: '-10px' }}\r\n onClick={() => (state.l1s.every((grupo) => grupo.checked)\r\n ? clearGroup(state.l1s, 'selectedL1s')\r\n : setAllGroup(state.l1s, 'selectedL1s'))}\r\n color=\"primary\"\r\n />\r\n {t('selecionarTodos')}\r\n \r\n \r\n \r\n clearGroup(state.l1s, 'selectedL1s')}\r\n >\r\n {t('limparSelecao')}\r\n \r\n \r\n \r\n \r\n )}\r\n {state.tambs.length > 0 && (\r\n \r\n \r\n \r\n \r\n {t('temperaturaExterna')}\r\n onSelectDevice(value, 'selectedTambs')}\r\n onBlur={() => {\r\n if (state.isSelected) {\r\n handleSelect();\r\n }\r\n }}\r\n disabled={state.loadingData}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n grupo.checked)}\r\n onClick={() => (state.tambs.every((grupo) => grupo.checked)\r\n ? clearGroup(state.tambs, 'selectedTambs')\r\n : setAllGroup(state.tambs, 'selectedTambs'))}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n {t('selecionarTodos')}\r\n \r\n \r\n \r\n clearGroup(state.tambs, 'selectedTambs')}\r\n >\r\n {t('limparSelecao')}\r\n \r\n \r\n \r\n \r\n )}\r\n {state.tInmet && state.tInmet.length > 0 && (\r\n \r\n \r\n \r\n \r\n {t('temExtEstMetereologicas')}\r\n onSelectDevice(value, 'selectedTInmets')}\r\n onBlur={() => {\r\n if (state.isSelected) {\r\n handleSelect();\r\n }\r\n }}\r\n disabled={state.loadingData}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n grupo.checked)}\r\n onClick={() => (state.tInmet.every((grupo) => grupo.checked)\r\n ? clearGroup(state.tInmet, 'selectedTInmets')\r\n : setAllGroup(state.tInmet, 'selectedTInmets'))}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n {t('selecionarTodos')}\r\n \r\n \r\n \r\n clearGroup(state.tInmet, 'selectedTInmets')}\r\n >\r\n {t('limparSelecao')}\r\n \r\n \r\n \r\n \r\n )}\r\n {state.powers.length > 0 && (\r\n \r\n \r\n \r\n \r\n {t('potenciaAtiva')}\r\n onSelectDevice(value, 'selectedPowers')}\r\n onBlur={() => {\r\n if (state.isSelected) {\r\n handleSelect();\r\n }\r\n }}\r\n disabled={state.loadingData}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n grupo.checked)}\r\n onClick={() => (state.powers.every((grupo) => grupo.checked)\r\n ? clearGroup(state.powers, 'selectedPowers')\r\n : setAllGroup(state.powers, 'selectedPowers'))}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n {t('selecionarTodos')}\r\n \r\n \r\n \r\n clearGroup(state.powers, 'selectedPowers')}\r\n >\r\n {t('limparSelecao')}\r\n \r\n \r\n \r\n \r\n )}\r\n {state.utilities.length > 0 && (\r\n \r\n \r\n \r\n \r\n {t('utilitarios')}\r\n onSelectDevice(value, 'selectedUtilities')}\r\n onBlur={() => {\r\n if (state.isSelected) {\r\n handleSelect();\r\n }\r\n }}\r\n disabled={state.loadingData}\r\n />\r\n
\r\n \r\n \r\n \r\n \r\n \r\n grupo.checked)}\r\n onClick={() => (state.utilities.every((grupo) => grupo.checked)\r\n ? clearGroup(state.utilities, 'selectedUtilities')\r\n : setAllGroup(state.utilities, 'selectedUtilities'))}\r\n style={{ marginLeft: '-10px' }}\r\n color=\"primary\"\r\n />\r\n {t('selecionarTodos')}\r\n \r\n \r\n \r\n clearGroup(state.utilities, 'selectedUtilities')}\r\n >\r\n {t('limparSelecao')}\r\n \r\n \r\n \r\n \r\n )}\r\n {state.loadingData && (\r\n \r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n ) }\r\n\r\n {state.isModalOpen && (\r\n \r\n )}\r\n { state.showFilter = !state.showFilter; render(); }}>\r\n \r\n {t('filtros')}\r\n {state.showFilter ? : }\r\n \r\n\r\n {(state.dateStart && state.dateEnd) && (\r\n \r\n \r\n \r\n { state.isModalOpen = true; render(); }}>\r\n \r\n \r\n {t('alterarCores')}\r\n \r\n \r\n {state.xDomain\r\n && isXDomainValid() && (\r\n \r\n \r\n \r\n Zoom Out\r\n \r\n \r\n )}\r\n {state.dateStart && (\r\n \r\n {moment(state.dateEnd).isAfter(state.dateStart)\r\n ? `${moment(state.dateStart).format('DD/MM/YYYY')} - ${moment(state.dateEnd).format('DD/MM/YYYY')}`\r\n : moment(state.dateStart).format('DD/MM/YYYY')}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n ({ index }))}\r\n onMouseDown={(e) => {\r\n setState({ refAreaLeft: e?.activeLabel });\r\n }}\r\n onMouseMove={(e) => {\r\n state.refAreaLeft != null\r\n && setState({ refAreaRight: e.activeLabel });\r\n }}\r\n onMouseUp={zoom}\r\n >\r\n \r\n 1\r\n ? tickXLabelFormaterDay\r\n : tickXLabelFormaterHour\r\n }\r\n dataKey={({ index }) => state.commonX[index]}\r\n ticks={state.xTicks}\r\n allowDecimals={false}\r\n domain={state.xDomain}\r\n />\r\n {state.numDays && state.numDays > 1 ? (\r\n state.commonX[index]}\r\n ticks={state.xTicks}\r\n domain={state.xDomain}\r\n />\r\n ) : null}\r\n }\r\n ticks={state.axisInfo.tempTicks}\r\n interval={0}\r\n domain={state.axisInfo.tempLimits}\r\n >\r\n
\r\n\r\n gData.isL1)) ? '' : t('temperaturaC')}\r\n offset={20}\r\n dx={40}\r\n angle=\"0\"\r\n position=\"top\"\r\n style={{\r\n color: '#464555', fontSize: '13px', textAnchor: 'middle', fontWeight: 'bold',\r\n }}\r\n />\r\n \r\n }\r\n dataKey=\"y\"\r\n ticks={[0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100]}\r\n interval={0}\r\n domain={[0, 100]}\r\n >\r\n gData.isL1)) ? '' : 'Umidade (%)'}\r\n offset={20}\r\n angle=\"0\"\r\n dx={-10}\r\n position=\"top\"\r\n style={{\r\n color: '#464555', fontSize: '13px', textAnchor: 'middle', fontWeight: 'bold',\r\n }}\r\n />\r\n \r\n {state.selectedVars.some((gData) => !!gData.co2Limits) && (\r\n }\r\n tickMargin={49}\r\n dataKey=\"y\"\r\n ticks={[0, 400, 800, 1200, 1600, 2000, 2400, 2800, 3200, 3600]}\r\n interval={0}\r\n domain={[0, 3600]}\r\n orientation=\"right\"\r\n >\r\n \r\n \r\n )}\r\n {(state.selectedVars.some((item) => item.axisId === 'power')) && (\r\n }\r\n orientation=\"right\"\r\n ticks={state.axisInfo.powerTicks}\r\n tickMargin={20}\r\n interval={0}\r\n domain={state.axisInfo.powerLimits}\r\n >\r\n \r\n \r\n )}\r\n }\r\n />\r\n {state.selectedVars.length > 0\r\n && state.selectedVars.map((gData) => (\r\n gData.showLine && (\r\n gData.data.y[index]}\r\n dot={false}\r\n animationDuration={300}\r\n type=\"monotone\"\r\n />\r\n )\r\n ))}\r\n {state.useMinGraphData && (\r\n \r\n )}\r\n {state.useMaxGraphData && (\r\n \r\n )}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n
\r\n
\r\n )}\r\n\r\n {(!state.dateStart || !state.dateEnd) ? : null}\r\n\r\n \r\n );\r\n};\r\n\r\nexport const ModalColorsWindow = ({ handleModalClose, renderModalGroups, state }: {\r\n handleModalClose: () => void,\r\n renderModalGroups: (state, name) => JSX.Element,\r\n state: any,\r\n }): JSX.Element => (\r\n \r\n \r\n \r\n \r\n

{t('alterarCores')}

\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {renderModalGroups(state.trooms, t('ambientes'))}\r\n {renderModalGroups(state.l1s, t('maquinas'))}\r\n {renderModalGroups(state.tambs, t('temperaturaExterna'))}\r\n {renderModalGroups(state.tInmet, t('temExtEstMetereologicas'))}\r\n {renderModalGroups(state.powers, t('potenciaAtiva'))}\r\n {renderModalGroups(state.utilities, t('utilitarios'))}\r\n \r\n
\r\n
\r\n);\r\n\r\nexport const ColorsPalet = ({ state, render }: { state, render: () => void }): JSX.Element => (\r\n { state.isModalOpen = true; render(); }}>\r\n \r\n \r\n {t('alterarCores')}\r\n \r\n \r\n);\r\n","import {\r\n useMemo, useRef, useState,\r\n} from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useRouteMatch, useHistory } from 'react-router-dom';\r\n\r\nimport { Breadcrumb2 } from '~/components';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nimport { Header } from '../Header';\r\n\r\nexport const DevLayout = ({ devInfo }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const match = useRouteMatch<{ devId, utilId, type }>();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const { devId, utilId, type } = match.params;\r\n const linkBase = '/analise/dispositivo'; // match.url.split(`/${devId}`)[0];\r\n const isEdit = history.location.pathname.endsWith('/editar');\r\n\r\n let isDac = false;\r\n let isDam = false;\r\n let isDut = false;\r\n let isDutAut = false;\r\n let isDal = false;\r\n let isDmt = false;\r\n let isDutDuo = false;\r\n\r\n if (devInfo) {\r\n isDac = !!devInfo.dac;\r\n isDam = !!devInfo.dam;\r\n isDut = !!devInfo.dut;\r\n isDutAut = !!devInfo.dut_aut;\r\n isDal = !!devInfo.dal;\r\n isDmt = !!devInfo.dmt;\r\n isDutDuo = devInfo.dut?.PLACEMENT === 'DUO';\r\n }\r\n const permissionManageClient = (devInfo?.CLIENT_ID && profile.permissions.CLIENT_MANAGE.includes(devInfo.CLIENT_ID));\r\n const bcrumbs = useMemo(() => {\r\n const path = [] as { text: string, link: string|null }[];\r\n if (devInfo && devInfo.UNIT_NAME) {\r\n if (profile.manageAllClients) {\r\n path.push({ text: devInfo.CLIENT_NAME, link: null });\r\n }\r\n path.push({ text: t('unidades'), link: '/analise/unidades' });\r\n path.push({ text: devInfo.UNIT_NAME, link: `/analise/unidades/${devInfo.UNIT_ID}` });\r\n if (devInfo.dac && devInfo.dac.GROUP_NAME) {\r\n path.push({ text: devInfo.dac.GROUP_NAME, link: null });\r\n }\r\n if (devInfo.dut && devInfo.dut.ROOM_NAME) {\r\n path.push({ text: devInfo.dut.ROOM_NAME, link: null });\r\n }\r\n if (devInfo.dam && (!devInfo.dac) && devInfo.dam.groups && devInfo.dam.groups.length > 0) {\r\n const groupName = devInfo.dam.groups.filter((x) => x.GROUP_NAME).map((x) => x.GROUP_NAME).join(', ');\r\n if (groupName) {\r\n path.push({ text: groupName, link: null });\r\n }\r\n }\r\n } else if (isDac) {\r\n path.push({ text: t('maquinas'), link: '/analise/maquinas' });\r\n } else if (isDam) {\r\n path.push({ text: t('automacao'), link: '/analise/dams' });\r\n } else if (isDut) {\r\n path.push({ text: t('ambientes'), link: '/analise/ambientes' });\r\n }\r\n // if (isEdit) {\r\n // path.push({ text: devId, link: `${linkBase}/${devId}/informacoes` })\r\n // path.push({ text: 'Editar', link: match.url })\r\n // }\r\n path.push({ text: devId, link: null }); // match.url\r\n return ();\r\n }, [devInfo]);\r\n\r\n const links = [\r\n {\r\n title: t('perfil'),\r\n link: `${linkBase}/${devId}/informacoes`,\r\n visible: !utilId,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('perfil'),\r\n link: `/analise/utilitario/${type}/${utilId}/informacoes`,\r\n visible: !!utilId,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('tempoReal'),\r\n link: `${linkBase}/${devId}/tempo-real`,\r\n visible: !utilId,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('tempoReal'),\r\n link: `${linkBase}/${type}/${utilId}/${devId}/tempo-real`,\r\n visible: !!utilId,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('indiceUso'),\r\n link: `${linkBase}/${devId}/indice-de-uso`,\r\n visible: isDal || isDutDuo || isDmt || isDac && !profile.permissions.isInstaller,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('saude'),\r\n link: `${linkBase}/${devId}/saude`,\r\n visible: (isDac || isDutDuo) && !profile.permissions.isInstaller,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('historico'),\r\n link: `${linkBase}/${devId}/historico`,\r\n visible: !utilId && !isDal && !isDmt && (isDac || isDut || profile.manageAllClients || permissionManageClient || profile.permissions.isInstaller),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('historico'),\r\n link: `${linkBase}/${type}/${utilId}/${devId}/historico`,\r\n visible: !!utilId && !isDal && !isDmt && (isDac || isDut || profile.manageAllClients || permissionManageClient || profile.permissions.isInstaller),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('infra-vermelho'),\r\n link: `${linkBase}/${devId}/infravermelho`,\r\n visible: isDutAut && (\r\n profile.manageAllClients\r\n || profile.permissions.isUserManut\r\n || profile.permissions.isInstaller\r\n || permissionManageClient\r\n || (profile.permissions.CLIENT_MANAGE.includes(104)) // alteração temporária\r\n ),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('editar'),\r\n link: match.url,\r\n visible: !!isEdit,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n return (\r\n <>\r\n { bcrumbs }\r\n
\r\n
x.visible)} match={history} />\r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport { Loader, LayerBackgroundModal } from 'components';\r\nimport { EnvGroupAnalysis } from 'components/EnvGroupAnalysis';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport {\r\n SchedulesList, SchedulesRemove, SchedulesEdit,\r\n} from 'pages/Analysis/SchedulesModals/DAM_Schedule';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\nimport i18n from '~/i18n';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nfunction handleSelectTitle(type: 'List'|'Edit'|'Remove'|'Add'): string {\r\n switch (type) {\r\n case 'List':\r\n return t('programacao');\r\n case 'Edit':\r\n return t('editarProgramacao');\r\n case 'Remove':\r\n return t('excluirProgramacao');\r\n case 'Add':\r\n return t('adicionarProgramacao');\r\n\r\n default:\r\n return '-';\r\n }\r\n}\r\n\r\nexport const DamSchedule = (): JSX.Element => {\r\n const routeParams = useParams<{ devId: string }>();\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(routeParams.devId, t('detalhesDAM'))}\r\n \r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport function DamScheduleContents(props: {\r\n onDevInfoUpdate?: () => void\r\n hideAnalysis?: boolean\r\n}) {\r\n const { onDevInfoUpdate, hideAnalysis } = props;\r\n const routeParams = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n damId: routeParams.devId,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n isLoading: true,\r\n isSaving: false,\r\n devSched: {} as FullProg_v4,\r\n schedulesTypeActive: 'List' as ('List'|'Add'|'Edit'|'Remove'),\r\n selectedDay: null as null|('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n relDutInfo: null as null|{\r\n DEV_ID: string;\r\n ROOM_NAME: string;\r\n TUSEMAX: number;\r\n TUSEMIN: number;\r\n workPeriods: { [day: string]: string };\r\n workPeriodExceptions: { [day: string]: string };\r\n },\r\n groups: [] as {\r\n name: string\r\n groupId: number\r\n dacs: { DAC_ID: string, DAC_NAME: string }[]\r\n dris: { DRI_ID: string }[]\r\n }[],\r\n };\r\n return state;\r\n });\r\n\r\n async function fetchDamInfo(damId: string) {\r\n state.devInfo = await getCachedDevInfo(damId, {});\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n\r\n if (state.devInfo!.dam!.REL_DUT_ID) {\r\n const dutInfo = await apiCall('/dut/get-dut-info', { DEV_ID: state.devInfo!.dam!.REL_DUT_ID });\r\n state.relDutInfo = {\r\n workPeriods: dutInfo.workPeriods,\r\n workPeriodExceptions: dutInfo.workPeriodExceptions,\r\n ...dutInfo.info,\r\n };\r\n }\r\n\r\n if (!state.devInfo!.dam!.groups) return;\r\n if (state.devInfo!.dam!.groups.length === 0) return;\r\n const groupIds = state.devInfo!.dam!.groups.map((x) => x.GROUP_ID);\r\n const { list: dacsList } = await apiCall('/dac/get-dacs-list', { groupIds });\r\n const filteredByGroupName: {\r\n [k: string]: {\r\n name: string\r\n groupId: number\r\n dacs: { DAC_ID: string, DAC_NAME: string }[]\r\n dris: { DRI_ID: string }[]\r\n }\r\n } = {};\r\n for (const dac of dacsList) {\r\n if (!dac.GROUP_NAME) continue;\r\n const groupName = dac.GROUP_NAME;\r\n const groupId = String(dac.GROUP_ID);\r\n if (!filteredByGroupName[groupId]) {\r\n filteredByGroupName[groupId] = {\r\n name: groupName, groupId: dac.GROUP_ID, dacs: [], dris: [],\r\n };\r\n }\r\n const group = filteredByGroupName[groupId];\r\n group.dacs.push(dac);\r\n }\r\n state.groups = Object.values(filteredByGroupName); render();\r\n }\r\n\r\n async function handleGetDamProgramming(damId: string) {\r\n if (damId) {\r\n try {\r\n state.isLoading = true; render();\r\n state.devSched = await apiCall('/dam/get-programming-v3', { damId });\r\n } catch (err) {\r\n console.log(err);\r\n toast.warn(t('erroNaoExisteProgramacoes'));\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n state.isLoading = true; render();\r\n await Promise.all([\r\n handleGetDamProgramming(routeParams.devId),\r\n fetchDamInfo(routeParams.devId),\r\n ]);\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n state.isLoading = false; render();\r\n }());\r\n }, []);\r\n\r\n async function onConfirmRemoveProg(day: keyof FullProg_v4['week']) {\r\n try {\r\n const newProg = cloneProg()!;\r\n if (newProg.week[day]) {\r\n delete newProg.week[day];\r\n await saveProg(newProg);\r\n toast.success(t('sucessoExcluirProgramacao'));\r\n }\r\n setState({ schedulesTypeActive: 'List', selectedDay: null });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroExcluirProgramacao'));\r\n }\r\n }\r\n\r\n async function onConfirmProg(days: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')[], prog: DayProg) {\r\n try {\r\n const newProg = cloneProg()!;\r\n for (const day of days) {\r\n newProg.week[day] = prog;\r\n }\r\n await saveProg(newProg);\r\n setState({ schedulesTypeActive: 'List', selectedDay: null });\r\n toast.success(t('sucessoProgramacaoAdicionada'));\r\n state.selectedDay = null;\r\n state.schedulesTypeActive = 'List';\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroAdicionarProgramacao'));\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n async function onConfirmExcept(day: string, prog: DayProg) {\r\n try {\r\n const newProg = cloneProg()!;\r\n if (!newProg.exceptions) newProg.exceptions = {};\r\n newProg.exceptions[day] = prog;\r\n await saveProg(newProg);\r\n setState({ schedulesTypeActive: 'List', selectedDay: null });\r\n toast.success(t('sucessoProgramacaoAdicionada'));\r\n state.selectedDay = null;\r\n state.schedulesTypeActive = 'List';\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroAdicionarProgramacao'));\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n async function onDelException(exception_date: string) {\r\n const newProg = cloneProg()!;\r\n if (!newProg.exceptions) return;\r\n if (!newProg.exceptions[exception_date]) return;\r\n if (!window.confirm(t('temCerteza'))) return;\r\n try {\r\n delete newProg.exceptions[exception_date];\r\n await saveProg(newProg);\r\n toast.success(t('sucessoExcluirProgramacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroExcluirProgramacao'));\r\n }\r\n }\r\n\r\n async function wantSaveVent(ventTime: { begin: string, end: string }) {\r\n try {\r\n const newProg = cloneProg()!;\r\n newProg.ventTime = { begin: (Number(ventTime.begin) || 0), end: (Number(ventTime.end) || 0) };\r\n await saveProg(newProg);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Erro');\r\n }\r\n }\r\n\r\n function cloneProg(): typeof state.devSched {\r\n const newprog: typeof state.devSched = JSON.parse(JSON.stringify(state.devSched));\r\n if (!newprog.week) newprog.week = {};\r\n if (!newprog.exceptions) newprog.exceptions = {};\r\n return newprog;\r\n }\r\n\r\n async function saveProg(prog: FullProg_v4) {\r\n try {\r\n setState({ isSaving: true });\r\n const devSched = await apiCall('/dam/set-programming-v3', {\r\n damId: state.damId,\r\n ...prog,\r\n });\r\n state.devSched = devSched;\r\n toast.success(t('sucessoSalvarProgramacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarProgramacao'));\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n let modalContent: null|JSX.Element = null;\r\n if (state.schedulesTypeActive === 'Edit') {\r\n modalContent = (\r\n setState({ schedulesTypeActive: 'List', selectedDay: null })}\r\n isSending={state.isSaving}\r\n />\r\n );\r\n }\r\n if (state.schedulesTypeActive === 'Remove') {\r\n modalContent = (\r\n setState({ schedulesTypeActive: 'List', selectedDay: null })}\r\n isRemoving={state.isSaving}\r\n />\r\n );\r\n }\r\n if (state.schedulesTypeActive === 'Add') {\r\n modalContent = (\r\n setState({ schedulesTypeActive: 'List', selectedDay: null })}\r\n isSending={state.isSaving}\r\n />\r\n );\r\n }\r\n\r\n const isDac = !!(state.devInfo && state.devInfo.dac);\r\n\r\n return (\r\n \r\n {state.isLoading ? (\r\n \r\n ) : (state.devInfo && (\r\n <>\r\n
\r\n \r\n setState({ schedulesTypeActive: 'Add', selectedDay: null })}\r\n wantEditDay={(day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => setState({ schedulesTypeActive: 'Edit', selectedDay: day })}\r\n wantRemoveDay={(day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') => setState({ schedulesTypeActive: 'Remove', selectedDay: day })}\r\n isLoading={state.isLoading}\r\n />\r\n \r\n
\r\n {(!hideAnalysis)\r\n && (\r\n
\r\n \r\n \r\n \r\n
\r\n )}\r\n {modalContent\r\n && (\r\n \r\n \r\n \r\n \r\n {modalContent}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n ))}\r\n
\r\n );\r\n}\r\n\r\nconst Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n background-color: white;\r\n`;\r\nconst ElevatedCard = styled.div`\r\n padding: 32px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport default withTransaction('DamSchedule', 'component')(DamSchedule);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const DesktopTable = styled.div`\r\n display: none;\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nexport const MobileTable = styled.div`\r\n display: block;\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nexport const StyledSpan = styled.span`\r\n color: ${colors.Grey400};\r\n font-size: 1em;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n font-size: 1em;\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n margin-left: 16px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n align-items: center;\r\n`;\r\n\r\nexport const Label = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-top: 6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n margin-left: 10px;\r\n text-decoration: underline;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const BtnInput = styled.button`\r\ndisplay: flex;\r\nalign-items: center;\r\njustify-content: center;\r\nbackground-color: white;\r\nwidth: 32px;\r\nheight: 30px;\r\nmargin-right: 10px;\r\n\r\nborder: 1px solid rgba(0, 0, 0, 0.15);\r\ncursor: pointer;\r\nborder-radius: 5px;\r\nbox-shadow: 0 0.3em 0.3em rgba(0, 0, 0, 0.09);\r\ntransition: all 0.5s ease-in;\r\n&:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n cursor: pointer;\r\n }\r\n`;\r\n","import React, { useState, useEffect, useMemo } from 'react';\r\n\r\nimport { CSVLink } from 'react-csv';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory } from 'react-router-dom';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { WithContext as ReactTags } from 'react-tag-input';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n DataTable, Button, EmptyWrapper, Loader, StatusBox, Checkbox, Select,\r\n} from '~/components';\r\nimport { ModalWindow } from '~/components/ModalWindow';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { TermometerSubIcon } from '~/icons';\r\nimport { AnalysisLayout } from '~/pages/Analysis/AnalysisLayout';\r\nimport { saveSessionStorageItem, removeSessionStorageItem, getSessionStorageItem } from '~/helpers/cachedStorage';\r\nimport { ApiResps, apiCall } from '../../../../providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport {\r\n DesktopTable,\r\n MobileTable,\r\n StyledSpan,\r\n StyledLink,\r\n SearchInput,\r\n Label,\r\n BtnClean,\r\n BtnInput,\r\n} from './styles';\r\n\r\nimport '~/assets/css/ReactTags.css';\r\nimport { FilterItem } from '../../AnalysisFilters';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport { FullProg_v4 } from '~/providers/types';\r\nimport { OrderableHeaderCell, TableColumn } from '~/components/DataTable';\r\nimport i18n from '~/i18n';\r\nimport { UtilFilter } from '../../Utilities/UtilityFilter';\r\nimport { ajustParams, setValueState } from '~/helpers/genericHelper';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { AnalysisEmpty } from '../../AnalysisEmpty';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nconst descOper = {\r\n allow: t('liberadoMin'),\r\n forbid: t('bloqueadoMin'),\r\n onlyfan: t('ventilacao'),\r\n enabling: t('habilitando'),\r\n disabling: t('bloqueando'),\r\n eco: 'Eco-Mode',\r\n};\r\n\r\nconst CSVHeader = [\r\n { label: t('cliente'), key: 'CLIENT_NAME' },\r\n { label: t('estado'), key: 'state' },\r\n { label: t('cidade'), key: 'city' },\r\n { label: t('unidade'), key: 'unit' },\r\n { label: t('maquina'), key: 'group' },\r\n { label: t('dispositivo'), key: 'devId' },\r\n { label: t('diasDaSemana.seg'), key: 'mon' },\r\n { label: t('diasDaSemana.ter'), key: 'tue' },\r\n { label: t('diasDaSemana.qua'), key: 'wed' },\r\n { label: t('diasDaSemana.qui'), key: 'thu' },\r\n { label: t('diasDaSemana.sex'), key: 'fri' },\r\n { label: t('diasDaSemana.sab'), key: 'sat' },\r\n { label: t('diasDaSemana.dom'), key: 'sun' },\r\n { label: t('modo'), key: 'mode' },\r\n { label: 'Setpoint', key: 'setpoint' },\r\n { label: t('rele'), key: 'relay' },\r\n { label: t('temperatura'), key: 'temperature' },\r\n { label: t('conexao'), key: 'status' },\r\n { label: t('ultimoVisto'), key: 'lastCommTs' },\r\n];\r\n\r\nconst KeyCodes = {\r\n comma: 188,\r\n slash: 191,\r\n enter: [10, 13],\r\n};\r\n\r\nconst delimiters = [...KeyCodes.enter, KeyCodes.comma, KeyCodes.slash];\r\n\r\nexport const DamsList = (): JSX.Element => {\r\n const csvLinkEl = React.useRef();\r\n const [profile] = useState(getUserProfile);\r\n const [isProg, setIsProg] = useState(false); // Altera seleção do switch \"Informações Exibidas\"\r\n const [isDesktop, setIsDesktop] = useState(true); // Exibe ou não o switch de programação horária\r\n const history = useHistory();\r\n\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n firstLoading: null as boolean | null,\r\n dielClientId: null,\r\n actionOpts: [] as { label: string, value: string }[],\r\n clientsList: [] as { CLIENT_ID: number, NAME: string }[],\r\n selectedClientFilter: setValueState('filterClient') as any | any[],\r\n selectedClient: null,\r\n wantSetClient: false,\r\n ownershipOpts: [\r\n { value: 'CLIENTS', label: t('deClientes') },\r\n { value: 'N-COMIS', label: t('naoComissionados') }, // aqueles com DEV_ID default de firmware\r\n { value: 'N-ASSOC', label: t('naoAssociados') }, // Aqueles que já tem DEV_ID próprio, mas não possuem cliente associado\r\n { value: 'MANUFAC', label: t('comissionadosFabrica') }, // Aqueles que já tem DEV_ID próprio, e possuem cliente SERDIA\r\n { value: 'D-TESTS', label: t('emTestes') }, // Aqueles que estão associados ao cliente DIEL ENERGIA LTDA.\r\n { value: 'ALLDEVS', label: t('todos') },\r\n ],\r\n ownershipFilter: null,\r\n isLoading: !profile.manageAllClients && !profile.manageSomeClient, // setIsLoading\r\n csvData: [], // setCsvData\r\n environments: [], // setEnvironments\r\n searchState: [] as { id: string, text: string }[],\r\n searchValue: '' as string,\r\n tablePage: 1,\r\n tablePageSize: 50,\r\n totalItems: 0,\r\n selectedState: setValueState('filterStates') as any | any[],\r\n selectedCity: setValueState('filterCity') as any | any[],\r\n selectedUnit: setValueState('filterUnit') as any | any[],\r\n selectedControlType: [] as any | any[],\r\n selectedOperationStatus: [] as any | any[],\r\n selectedEcoMode: [] as any | any[],\r\n selectedConnection: [] as any | any[],\r\n selectedDevId: '',\r\n filters: [] as FilterItem[],\r\n orderBy: null as null | [string, 'ASC' | 'DESC'],\r\n needFilter: profile.manageAllClients || profile.manageSomeClient,\r\n selectedTemperature: [] as string[],\r\n };\r\n\r\n if (profile.viewAllClients) {\r\n // @ts-ignore\r\n state.ownershipFilter = state.ownershipOpts[0];\r\n }\r\n\r\n if (profile.permissions.isAdminSistema) {\r\n state.actionOpts = [{ label: t('definirProgramacao'), value: 'set-schedule' }, { label: t('excluir'), value: 'delete' }, { label: t('atribuirCliente'), value: 'set-client' }];\r\n } else if (profile.manageAllClients) {\r\n state.actionOpts = [{ label: t('definirProgramacao'), value: 'set-schedule' }, { label: t('atribuirCliente'), value: 'set-client' }];\r\n } else if (profile.manageSomeClient) {\r\n // @ts-ignore\r\n state.actionOpts = [{ label: t('definirProgramacao'), value: 'set-schedule' }];\r\n }\r\n\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n const screenSize = window.matchMedia('(max-width: 768px)');\r\n\r\n setIsDesktop(!screenSize.matches);\r\n }, []);\r\n\r\n async function applyActionToSelected(action, list) {\r\n try {\r\n const selectedDevs = list.filter((dev) => dev.checked);\r\n\r\n if (!selectedDevs.length) return;\r\n\r\n if (action === 'delete') {\r\n if (!window.confirm(t('desejaExcluirDams', { value: selectedDevs.length }))) {\r\n return;\r\n }\r\n for (const dev of selectedDevs) {\r\n if (dev.isDut) {\r\n await apiCall('/dut/delete-dut-info', { dutId: dev.devId }).then((data) => ({ data }));\r\n } else if (dev.isDri) {\r\n await apiCall('/dri/delete-dri-info', { driId: dev.devId }).then((data) => ({ data }));\r\n } else {\r\n await apiCall('/dam/delete-dam-info', { damId: dev.DAM_ID }).then((data) => ({ data }));\r\n }\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n if (action === 'set-client') {\r\n state.wantSetClient = true; render();\r\n return;\r\n }\r\n if (action === 'set-schedule') {\r\n const ids = selectedDevs.map((x) => x.DEV_ID);\r\n const onlyDuts = !selectedDevs.some((dev) => !dev.isDut);\r\n // TODO: programação em batelada de DUT\r\n history.push(`/analise/programacao-dams/?ids=${encodeURIComponent(ids.join('*'))}`);\r\n return;\r\n }\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n async function confirmSetClient() {\r\n try {\r\n // @ts-ignore\r\n const selectedDevs = state.environments.filter((dev) => dev.checked);\r\n if (!selectedDevs.length) {\r\n toast.error(t('erroNenhumDispositivoSelecionado'));\r\n return;\r\n }\r\n\r\n // @ts-ignore\r\n const clientId = state.selectedClient && state.selectedClient.CLIENT_ID;\r\n\r\n if (!clientId) {\r\n toast.error(t('erroClienteNaoSelecionadoInvalido'));\r\n return;\r\n }\r\n\r\n for (const dev of selectedDevs) {\r\n // @ts-ignore\r\n if (dev.isDut) {\r\n // @ts-ignore\r\n await apiCall('/dut/set-dut-info', { DEV_ID: dev.devId, CLIENT_ID: clientId });\r\n } else {\r\n // @ts-ignore\r\n await apiCall('/dam/set-dam-info', { DAM_ID: dev.DAM_ID, CLIENT_ID: clientId });\r\n }\r\n }\r\n\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n const outputJSXSchedule = (schedule: string) => {\r\n if (schedule === 'Sem info') {\r\n return (\r\n \r\n \r\n {t('sem')}\r\n \r\n \r\n info\r\n \r\n \r\n );\r\n }\r\n\r\n if (schedule === 'Mult. progs.') {\r\n return (\r\n \r\n \r\n {t('mult.')}\r\n \r\n \r\n {t('progs.')}\r\n \r\n \r\n );\r\n }\r\n\r\n if (schedule === '24h/dia') {\r\n return {schedule};\r\n }\r\n\r\n if (schedule === 'Desligado') {\r\n return {schedule};\r\n }\r\n\r\n const [start, end] = schedule.split(' - ');\r\n return (\r\n \r\n {start}\r\n -\r\n {end}\r\n \r\n );\r\n };\r\n\r\n const outputSchedule = (schedule: string, hasMultSchedule?: boolean) => {\r\n if (schedule === '- - -') return !hasMultSchedule ? 'Sem info' : 'Mult. progs.';\r\n\r\n if (schedule === '00:00 - 23:59') return '24h/dia';\r\n\r\n return schedule;\r\n };\r\n\r\n function orderColumn(column: TableColumn) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n async function onColumnClick(column: { accessor: string }) {\r\n if (state.orderBy && (state.orderBy[1] === 'ASC') && (state.orderBy[0] === column.accessor)) {\r\n state.orderBy = [column.accessor, 'DESC'];\r\n } else {\r\n state.orderBy = [column.accessor, 'ASC'];\r\n }\r\n render();\r\n await handleGetDAMS();\r\n }\r\n\r\n const [columns, columnsMobile] = useMemo(() => {\r\n const columnsDesktop = [] as TableColumn[];\r\n const columnsMobile = [] as TableColumn[];\r\n\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('estado'),\r\n // @ts-ignore\r\n accessor: 'col_STATE_ID',\r\n // @ts-ignore\r\n Cell: (props) => {props.state},\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('cidade'),\r\n // @ts-ignore\r\n accessor: 'col_CITY_NAME',\r\n // @ts-ignore\r\n Cell: (props) => {props.city},\r\n HeaderCell: orderColumn,\r\n });\r\n if (profile.viewMultipleClients) {\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('cliente'),\r\n // @ts-ignore\r\n accessor: 'col_CLIENT_NAME',\r\n // @ts-ignore\r\n Cell: (props) => (props.CLIENT_NAME ? {props.CLIENT_NAME} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n }\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('unidade'),\r\n // @ts-ignore\r\n accessor: 'col_UNIT_NAME',\r\n // @ts-ignore\r\n Cell: (props) => <>{props.unit.id && props.unit.name ? {props.unit.name} : '-'},\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('maquina'),\r\n // @ts-ignore\r\n accessor: 'col_MACHINE_NAME',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n \r\n \r\n {(props.group && props.group.length > 100 ? (props.group).slice(0, 100).concat('...') : props.group || '-')}\r\n \r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('dispositivo'),\r\n // @ts-ignore\r\n accessor: 'col_DEV_ID',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.devId\r\n ? (\r\n \r\n {props.devId}\r\n \r\n )\r\n : (\r\n '-'\r\n )}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: t('dispositivo'),\r\n // @ts-ignore\r\n accessor: 'col_DEV_ID',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.devId\r\n ? (\r\n \r\n {props.devId}\r\n \r\n )\r\n : (\r\n '-'\r\n )}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n !isProg\r\n ? columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('controle'),\r\n // @ts-ignore\r\n accessor: 'col_MODE',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.mode}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n })\r\n : columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.seg'),\r\n // @ts-ignore\r\n accessor: 'mon',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.mon)}\r\n \r\n ),\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: t('controle'),\r\n // @ts-ignore\r\n accessor: 'col_MODE',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.mode}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n !isProg\r\n ? columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('operacao'),\r\n // @ts-ignore\r\n accessor: 'col_STATE',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.relay}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n })\r\n : columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.ter'),\r\n // @ts-ignore\r\n accessor: 'tue',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.tue)}\r\n \r\n ),\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: t('operacao'),\r\n // @ts-ignore\r\n accessor: 'col_STATE',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.relay}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n !isProg\r\n ? columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('modoEco'),\r\n // @ts-ignore\r\n accessor: 'col_ECO_MODE_ENABLED',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {(props.ecoModeEnabled === false) ? t('desabilitado') : (props.ecoModeEnabled === true) ? t('habilitado') : '-'}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n })\r\n : columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.qua'),\r\n // @ts-ignore\r\n accessor: 'wed',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.wed)}\r\n \r\n ),\r\n });\r\n !isProg\r\n ? columnsDesktop.push({\r\n // @ts-ignore\r\n Header: 'Setpoint',\r\n // @ts-ignore\r\n accessor: 'col_TEMPRT_SETPOINT',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {formatNumberWithFractionDigits(props.temprtSetpoint)}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n })\r\n : columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.qui'),\r\n // @ts-ignore\r\n accessor: 'thu',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.thu)}\r\n \r\n ),\r\n });\r\n !isProg\r\n ? columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('temperatura'),\r\n // @ts-ignore\r\n accessor: 'col_REFERENCE_TEMPERATURE',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n \r\n {formatNumberWithFractionDigits(props.referenceTemperature) || '-'}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n })\r\n : columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.sex'),\r\n // @ts-ignore\r\n accessor: 'fri',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.fri)}\r\n \r\n ),\r\n });\r\n isProg && columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.sab'),\r\n // @ts-ignore\r\n accessor: 'sat',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.sat)}\r\n \r\n ),\r\n });\r\n isProg && columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('diasDaSemana.dom'),\r\n // @ts-ignore\r\n accessor: 'sun',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {outputJSXSchedule(props.sun)}\r\n \r\n ),\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('conexao'),\r\n // @ts-ignore\r\n accessor: 'col_STATUS',\r\n // @ts-ignore\r\n Cell: (props) => {props.status},\r\n HeaderCell: orderColumn,\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: t('conexao'),\r\n // @ts-ignore\r\n accessor: 'col_STATUS',\r\n // @ts-ignore\r\n Cell: (props) => {props.status},\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n if (profile.manageAllClients) {\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('ultimaVezVisto'),\r\n // @ts-ignore\r\n accessor: 'col_LAST_SEEN',\r\n // @ts-ignore\r\n Cell: (props) => (props.lastCommTs || '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n }\r\n\r\n if (state.actionOpts.length > 0) {\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: '',\r\n // @ts-ignore\r\n accessor: 'col_selection',\r\n // @ts-ignore\r\n Cell: (props) => { props.checked = !props.checked; render(); }} />,\r\n });\r\n }\r\n\r\n return [columnsDesktop, columnsMobile];\r\n }, [isProg]);\r\n\r\n const getDailySchedule = (\r\n devId: string,\r\n dutLastProg: FullProg_v4 | undefined,\r\n damLastProg: FullProg_v4 | undefined,\r\n key: string,\r\n hasMultSchedule: boolean,\r\n ) => {\r\n const isDut = devId.includes('DUT');\r\n\r\n if (isDut) {\r\n if (dutLastProg?.week[key]?.permission === 'forbid') {\r\n return outputSchedule(t('desligadoMin'));\r\n }\r\n\r\n const startDate = dutLastProg?.week[key]?.start || '-';\r\n const endDate = dutLastProg?.week[key]?.end || '-';\r\n\r\n return outputSchedule(`${startDate} - ${endDate}`, hasMultSchedule);\r\n }\r\n\r\n if (damLastProg?.week[key]?.permission === 'forbid') {\r\n return outputSchedule(t('desligadoMin'));\r\n }\r\n\r\n const startDate = damLastProg?.week[key]?.start || '-';\r\n const endDate = damLastProg?.week[key]?.end || '-';\r\n\r\n return outputSchedule(`${startDate} - ${endDate}`);\r\n };\r\n\r\n function ajustObjectOfDev(list) {\r\n for (const dev of list) {\r\n dev.State = descOper[dev.State] || dev.State;\r\n if (dev.Mode === 'Auto') dev.Mode = 'Automático';\r\n // @ts-ignore\r\n if (dev.lastCommTs) { dev.lastCommTs = dev.lastCommTs.replace('T', ' '); }\r\n\r\n Object.assign(dev, {\r\n state: dev.STATE_ID || '-',\r\n city: dev.CITY_NAME || '-',\r\n unit: { id: dev.UNIT_ID, name: dev.UNIT_NAME } || '-',\r\n group: dev.machineName || '-',\r\n devId: dev.DEV_ID || '-',\r\n mode: dev.Mode || '-',\r\n relay: dev.State || '-',\r\n status: dev.status || '-',\r\n isDut: dev.DEV_ID.includes('DUT'),\r\n isDri: dev.DEV_ID.includes('DRI'),\r\n mon: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'mon', dev.DUT_NEED_MULT_SCHEDULES),\r\n tue: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'tue', dev.DUT_NEED_MULT_SCHEDULES),\r\n wed: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'wed', dev.DUT_NEED_MULT_SCHEDULES),\r\n thu: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'thu', dev.DUT_NEED_MULT_SCHEDULES),\r\n fri: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'fri', dev.DUT_NEED_MULT_SCHEDULES),\r\n sat: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'sat', dev.DUT_NEED_MULT_SCHEDULES),\r\n sun: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'sun', dev.DUT_NEED_MULT_SCHEDULES),\r\n });\r\n }\r\n }\r\n\r\n async function handleGetDAMS() {\r\n try {\r\n setState({ isLoading: true });\r\n if (state.needFilter !== null) setState({ needFilter: false });\r\n\r\n loadSessionFilters();\r\n\r\n const [\r\n { list, totalItems },\r\n ] = await Promise.all([\r\n apiCall('/get-autom-devs-list', {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.viewAllClients || !!profile.permissions.isInstaller,\r\n includeDacs: true,\r\n SKIP: (state.tablePage - 1) * state.tablePageSize,\r\n LIMIT: state.tablePageSize,\r\n // @ts-ignore\r\n searchTerms: state.selectedDevId ? [state.selectedDevId.toLowerCase()] : [],\r\n // @ts-ignore\r\n ownershipFilter: (state.ownershipFilter && state.ownershipFilter.value) || undefined,\r\n clientIds: (state.selectedClientFilter.length > 0) ? ajustParams(state.selectedClientFilter) : undefined,\r\n stateIds: (state.selectedState.length > 0) ? ajustParams(state.selectedState) : undefined,\r\n cityIds: (state.selectedCity.length > 0) ? ajustParams(state.selectedCity) : undefined,\r\n unitIds: (state.selectedUnit.length > 0) ? ajustParams(state.selectedUnit) : undefined,\r\n controlMode: (state.selectedControlType.length > 0) ? state.selectedControlType : undefined,\r\n operationStatus: (state.selectedOperationStatus.length > 0) ? state.selectedOperationStatus : undefined,\r\n ecoMode: (state.selectedEcoMode.length > 0) ? state.selectedEcoMode : undefined,\r\n status: (state.selectedConnection.length > 0) ? state.selectedConnection : undefined,\r\n orderByProp: state.orderBy && state.orderBy[0]?.substring('col_'.length) || undefined,\r\n orderByDesc: (state.orderBy && state.orderBy[1] === 'DESC') || undefined,\r\n temprtAlerts: (state.selectedTemperature.length > 0) ? state.selectedTemperature : undefined,\r\n }),\r\n ]);\r\n\r\n verifyAutomationsTemperatureLimits(list);\r\n ajustObjectOfDev(list);\r\n\r\n state.totalItems = totalItems;\r\n // @ts-ignore\r\n // @ts-ignore\r\n state.environments = list;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroCarregarDados'));\r\n }\r\n if (state.needFilter === null) setState({ needFilter: true });\r\n setState({ isLoading: false });\r\n }\r\n\r\n function verifyAutomationsTemperatureLimits(automationDevice: ApiResps['/get-autom-devs-list']['list']) {\r\n return automationDevice.map((devAutomation) => {\r\n let specialColor: string|undefined;\r\n\r\n if (devAutomation.referenceTemperature && devAutomation.temprtAlert) {\r\n if (devAutomation.temprtAlert === 'low') specialColor = colors.LightBlue;\r\n else if (devAutomation.temprtAlert === 'high') specialColor = colors.Red;\r\n }\r\n return Object.assign(devAutomation, {\r\n specialColor,\r\n });\r\n });\r\n }\r\n\r\n const getCsvData = async () => {\r\n state.isLoading = true; render();\r\n\r\n apiCall('/get-autom-devs-list', {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.viewAllClients || !!profile.permissions.isInstaller,\r\n // @ts-ignore\r\n searchTerms: state.selectedDevId ? [state.selectedDevId.toLowerCase()] : [],\r\n // @ts-ignore\r\n ownershipFilter: (state.ownershipFilter && state.ownershipFilter.value) || undefined,\r\n clientIds: (state.selectedClientFilter.length > 0) ? ajustParams(state.selectedClientFilter) : undefined,\r\n stateIds: (state.selectedState.length > 0) ? ajustParams(state.selectedState) : undefined,\r\n cityIds: (state.selectedCity.length > 0) ? ajustParams(state.selectedCity) : undefined,\r\n unitIds: (state.selectedUnit.length > 0) ? ajustParams(state.selectedUnit) : undefined,\r\n controlMode: (state.selectedControlType.length > 0) ? state.selectedControlType : undefined,\r\n operationStatus: (state.selectedOperationStatus.length > 0) ? state.selectedOperationStatus : undefined,\r\n ecoMode: (state.selectedEcoMode.length > 0) ? state.selectedEcoMode : undefined,\r\n status: (state.selectedConnection.length > 0) ? state.selectedConnection : undefined,\r\n orderByProp: state.orderBy && state.orderBy[0]?.substring('col_'.length) || undefined,\r\n orderByDesc: (state.orderBy && state.orderBy[1] === 'DESC') || undefined,\r\n }).then(({ list }) => {\r\n const formatterCSV = list.map((dev) => ({\r\n CLIENT_NAME: dev.CLIENT_NAME || '-',\r\n state: dev.STATE_ID || '-',\r\n city: dev.CITY_NAME || '-',\r\n unit: dev.UNIT_NAME || '-',\r\n group: dev.machineName || '-',\r\n devId: dev.DEV_ID || '-',\r\n mode: dev.Mode || '-',\r\n setpoint: dev.temprtSetpoint,\r\n relay: dev.State || '-',\r\n status: dev.status || '-',\r\n temperature: dev.referenceTemperature || '-',\r\n // @ts-ignore\r\n lastCommTs: (dev.lastCommTs && dev.lastCommTs.replace('T', ' ')) || '-',\r\n mon: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'mon', dev.DUT_NEED_MULT_SCHEDULES),\r\n tue: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'tue', dev.DUT_NEED_MULT_SCHEDULES),\r\n wed: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'wed', dev.DUT_NEED_MULT_SCHEDULES),\r\n thu: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'thu', dev.DUT_NEED_MULT_SCHEDULES),\r\n fri: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'fri', dev.DUT_NEED_MULT_SCHEDULES),\r\n sat: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'sat', dev.DUT_NEED_MULT_SCHEDULES),\r\n sun: getDailySchedule(dev.DEV_ID, dev.DUT_LASTPROG, dev.DAM_LASTPROG, 'sun', dev.DUT_NEED_MULT_SCHEDULES),\r\n }));\r\n // @ts-ignore\r\n state.csvData = formatterCSV;\r\n state.isLoading = false; render();\r\n\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n });\r\n };\r\n\r\n const onPageChange = (page) => {\r\n state.tablePage = page;\r\n render();\r\n handleGetDAMS();\r\n };\r\n\r\n useEffect(() => {\r\n if (state.firstLoading) {\r\n handleGetDAMS();\r\n }\r\n }, [state.tablePage]);\r\n\r\n useEffect(() => {\r\n if (state.firstLoading && !profile.viewAllClients && !profile.viewMultipleClients) {\r\n state.tablePage = 1;\r\n render();\r\n handleGetDAMS();\r\n }\r\n }, [state.ownershipFilter]);\r\n\r\n useEffect(() => {\r\n if (!profile.viewAllClients && !profile.viewMultipleClients) {\r\n handleGetDAMS();\r\n }\r\n state.firstLoading = true;\r\n }, []);\r\n\r\n function loadSessionFilters() {\r\n const filters = getSessionStorageItem('automationAnalysisFilters') as null | {\r\n searchState: [],\r\n selectedState: [],\r\n selectedCity: [],\r\n selectedUnit: [],\r\n selectedClientFilter?: [],\r\n selectedControlType: [],\r\n selectedOperationStatus: [],\r\n selectedEcoMode: [],\r\n selectedConnection: [],\r\n selectedTemperature: [],\r\n };\r\n if (filters) {\r\n state.searchState = filters.searchState || [];\r\n state.selectedState = filters.selectedState || [];\r\n state.selectedCity = filters.selectedCity || [];\r\n state.selectedUnit = filters.selectedUnit || [];\r\n state.selectedClientFilter = filters.selectedClientFilter || [];\r\n state.selectedControlType = filters.selectedControlType || [];\r\n state.selectedOperationStatus = filters.selectedOperationStatus || [];\r\n state.selectedEcoMode = filters.selectedEcoMode || [];\r\n state.selectedConnection = filters.selectedConnection || [];\r\n state.selectedTemperature = filters.selectedTemperature || [];\r\n }\r\n render();\r\n removeSessionStorageItem('automationAnalysisFilters');\r\n }\r\n\r\n function saveSessionFilters() {\r\n const filters = {\r\n searchState: state.searchState,\r\n selectedState: state.selectedState,\r\n selectedCity: state.selectedCity,\r\n selectedUnit: state.selectedUnit,\r\n selectedControlType: state.selectedControlType,\r\n selectedOperationStatus: state.selectedOperationStatus,\r\n selectedEcoMode: state.selectedEcoMode,\r\n selectedConnection: state.selectedConnection,\r\n } as any;\r\n if (state.dielClientId) {\r\n filters.selectedClientFilter = state.selectedClientFilter;\r\n }\r\n saveSessionStorageItem('automationAnalysisFilters', filters);\r\n }\r\n\r\n async function clearFilters() {\r\n state.searchState = [];\r\n state.selectedCity = [];\r\n state.selectedClientFilter = [];\r\n state.selectedState = [];\r\n state.selectedConnection = [];\r\n state.selectedUnit = [];\r\n state.selectedControlType = [];\r\n state.selectedOperationStatus = [];\r\n state.selectedEcoMode = [];\r\n\r\n render();\r\n await handleGetDAMS();\r\n }\r\n // @ts-ignore\r\n const selectedDevs = state.environments.filter((dev) => dev.checked);\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaAutomacao')}\r\n \r\n \r\n { state.tablePage = 1; handleGetDAMS(); }}\r\n setState={setState}\r\n clearFilter={clearFilters}\r\n exportFunc={getCsvData}\r\n csvHeader={CSVHeader}\r\n listFilters={['estado', 'cidade', 'unidade', 'cliente', 'conexao', 'controle', 'modoEco', 'operacao', 'tipo', 'progDisp', 'id', 'temperatura']}\r\n isProg={isProg}\r\n setProg={(value: string) => { if (value === 'dispositivo') { setIsProg(false); } else { setIsProg(true); } }}\r\n />\r\n \r\n \r\n \r\n {(selectedDevs.length > 0) && (\r\n \r\n applyActionToSelected(opt.value, selectedDevs)}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.needFilter && (\r\n <>\r\n \r\n \r\n )}\r\n {state.isLoading\r\n ? (\r\n \r\n \r\n \r\n )\r\n : !state.needFilter && (\r\n <>\r\n \r\n {state.environments\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n \r\n {t('naoFoiPossivelCarregarDados')}\r\n \r\n \r\n )}\r\n \r\n \r\n {state.environments\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n \r\n {t('naoFoiPossivelCarregarDados')}\r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n {(state.wantSetClient)\r\n && (\r\n // @ts-ignore\r\n \r\n

{t('selecioneCliente')}

\r\n { state.selectedClient = item; render(); }}\r\n />\r\n
\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nconst StatusIcon = styled.div<{ color?, status?}>(\r\n ({ color, status }) => `\r\n width: 10px;\r\n height: 10px;\r\n margin-left: 5px;\r\n border-radius: 50%;\r\n border: 2px solid ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n background: ${color || (status === 'ONLINE' ? colors.Blue300 : colors.Grey200)};\r\n font-weight: bold;\r\n font-size: 0.8em;\r\n line-height: 18px;\r\n color: ${colors.White};\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n text-transform: capitalize;\r\n`,\r\n);\r\n\r\nexport default withTransaction('DamsList', 'component')(DamsList);\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport Plot from 'react-plotly.js';\r\nimport { useParams } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n Button, Datepicker, Overlay, Loader,\r\n} from '~/components';\r\nimport { processReceivedHistoryDAM } from '~/helpers';\r\nimport * as axisCalc from '~/helpers/axisCalc';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { DiscreteHistVar } from '~/helpers/formatArrHistory';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { CloseIcon } from '~/icons';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\nimport { AssetLayout } from '~/pages/Analysis/Assets/AssetLayout';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { apiCall, ApiResps } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { NoGraph } from '~/components/NoGraph';\r\nimport moment from 'moment';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const DamHistory = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ devId }>();\r\n const history = useHistory();\r\n const linkBase = history.location.pathname;\r\n let assetLayout = false;\r\n assetLayout = linkBase.includes('/ativo');\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaHistorico')}\r\n \r\n {!assetLayout ? () : ()}\r\n \r\n \r\n );\r\n};\r\n\r\nexport function DamHistoryContents(props: { onDevInfoUpdate?: () => void }): JSX.Element {\r\n const { onDevInfoUpdate } = props;\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n damId: routeParams.devId,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n isModalOpen: false,\r\n isLoading: false,\r\n date: null as null|moment.Moment,\r\n dutRoomName: '' as string,\r\n damCharts: {} as {\r\n State?: DiscreteHistVar,\r\n Mode?: DiscreteHistVar,\r\n ecoCmd?: DiscreteHistVar,\r\n humidity?: {\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n } | null\r\n Temperature?: {\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n Temperature_1?: {\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n limTmin?: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n limTmax?: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n tSetpoint?: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n },\r\n dutChart: null as null|{\r\n temprt: {\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n temprt1: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n limTmin: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n limTmax: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n tSetpoint: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n l1: null | DiscreteHistVar\r\n },\r\n dutDuoChartNotAut: null as null|{\r\n temprt: {\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n temprt1: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n limTmin: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n limTmax: null|{\r\n d: { x: number, y?: number|null }[]\r\n limits: [number, number]\r\n }\r\n },\r\n conclusionsDam: [] as string[],\r\n dacsCharts: [] as {\r\n dacId: string\r\n groupId: string\r\n potNominal: number\r\n chartData: DiscreteHistVar\r\n conclusions: string[]\r\n stateStats: {\r\n cond1_hit: number\r\n cond1_miss: number\r\n cond2_hit: number\r\n cond2_miss: number\r\n ecoFull_hit: number\r\n noEcoVent_hit: number\r\n }\r\n isCond1?: boolean\r\n isCond2?: boolean\r\n }[],\r\n asTable: [] as (number|string)[][],\r\n dacsCols: [] as string[],\r\n newCharts: [] as {\r\n x: string[],\r\n y: (number|null)[],\r\n text?: string[],\r\n type: string,\r\n mode: string,\r\n line: {\r\n color: string,\r\n width: number,\r\n dash?: string,\r\n },\r\n hovertemplate?: string\r\n }[],\r\n daySched: null as null|{\r\n type: 'allow' | 'forbid';\r\n startHM: string;\r\n endHM: string;\r\n indexIni: number;\r\n indexEnd: number;\r\n },\r\n axisDataLimits: {} as { minTval?: number, maxTval?: number },\r\n axisInfo: {\r\n L1start: null as null|number,\r\n leftLimits: [-10, 5],\r\n leftTicks: [-10, 5],\r\n leftTicksLabels: ['-10', '5'],\r\n stepTicksNames: {}, // { '-1.1': 'LIGADO' }\r\n rightLimits: [0, 100],\r\n rightTicks: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100],\r\n rightTickLabels: ['0%', '10%', '20%', '30%', '40%', '50%', '60%', '70%', '80%', '90%', '100%'],\r\n },\r\n graphEnable: {\r\n State: true,\r\n Mode: true,\r\n ecoCmd: true,\r\n dutT: true,\r\n dutL1: true,\r\n },\r\n profile: getUserProfile(),\r\n };\r\n return state;\r\n });\r\n\r\n function setFormattedDate(date) {\r\n if (!date) {\r\n state.date = null;\r\n } else {\r\n state.date = date.set({ hour: 0 });\r\n }\r\n render();\r\n }\r\n\r\n async function fetchServerData() {\r\n try {\r\n const devInfo = await getCachedDevInfo(state.damId, {});\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n state.devInfo = devInfo;\r\n if (devInfo?.dam?.REL_DUT_ID) {\r\n const dutInfo = await getCachedDevInfo(devInfo?.dam?.REL_DUT_ID, {});\r\n state.dutRoomName = dutInfo?.dut?.ROOM_NAME ?? 'DUT';\r\n }\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n const getTranslatedInstallationLocation = (str?: string|null) => {\r\n const opts = {\r\n 'casa-de-maquina': t('casaDeMaquina'),\r\n 'ambiente-refrigerado': t('ambienteRefrigeradoDam'),\r\n };\r\n\r\n return (str && opts[str]) || `Temperatura do Local de Instalação do ${state.devInfo.DEV_ID}`;\r\n };\r\n\r\n const getDamTemperatureLabel = () => ((state.devInfo.dam?.PLACEMENT === 'RETURN' || (state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam?.T0_POSITION === 'RETURN')) ? getTranslatedInstallationLocation(state.devInfo?.dam?.INSTALLATION_LOCATION) : t('temperaturaDeInsuflamento'));\r\n const getDamTemperature1Label = () => (state.devInfo.dam?.T1_POSITION === 'RETURN' ? getTranslatedInstallationLocation(state.devInfo?.dam?.INSTALLATION_LOCATION) : t('temperaturaDeInsuflamento'));\r\n\r\n const addDamTemperatureLines = (damCharts: typeof state.damCharts) => {\r\n if (state.devInfo.dam && damCharts.Temperature && (state.devInfo.dam?.PLACEMENT === 'RETURN' || (state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam.T0_POSITION))) {\r\n if (!((state.devInfo.dam?.PLACEMENT === 'RETURN' || (state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam.T0_POSITION === 'RETURN')) && (state.dutChart?.temprt))) {\r\n state.newCharts.push({\r\n name: getDamTemperatureLabel(),\r\n x: damCharts.Temperature.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.Temperature.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n visible: 'legendonly',\r\n line: { color: colors.Yellow, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.Temperature.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n }\r\n // FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA\r\n if (state.devInfo.dam && damCharts.Temperature_1 && state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam.T1_POSITION && (state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1)) {\r\n if (!((state.devInfo.dam?.PLACEMENT === 'RETURN' || (state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam.T1_POSITION === 'RETURN')) && (state.dutChart?.temprt))) {\r\n state.newCharts.push({\r\n name: getDamTemperature1Label(),\r\n x: damCharts.Temperature_1.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.Temperature_1.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Green_v2, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.Temperature_1.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n }\r\n };\r\n\r\n const addDamDefaultLines = (damCharts: typeof state.damCharts) => {\r\n if (damCharts.Mode) {\r\n state.newCharts.push({\r\n name: 'Mode',\r\n x: damCharts.Mode.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.Mode.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Red, width: 1 },\r\n hovertemplate: '%{y}',\r\n });\r\n }\r\n if (damCharts.State) {\r\n state.newCharts.push({\r\n name: 'State',\r\n x: damCharts.State.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.State.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: '#F032E6', width: 1 },\r\n hovertemplate: '%{y}',\r\n });\r\n }\r\n if (damCharts.ecoCmd) {\r\n state.newCharts.push({\r\n name: 'CmdEco',\r\n x: damCharts.ecoCmd.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.ecoCmd.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Blue300, width: 1 },\r\n hovertemplate: '%{y}',\r\n });\r\n }\r\n if (damCharts.humidity) {\r\n state.newCharts.push({\r\n name: 'Umidade',\r\n x: damCharts.humidity.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.humidity.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Blue400, width: 1 },\r\n hovertemplate: '%{customdata} %',\r\n customdata: damCharts.humidity.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n yaxis: 'y2',\r\n });\r\n }\r\n addDamTemperatureLines(damCharts);\r\n };\r\n\r\n const addDamSelfReferenceLines = (damCharts: typeof state.damCharts, parsedGraphData: ReturnType) => {\r\n if (damCharts.limTmax) {\r\n state.newCharts.push({\r\n name: 'max',\r\n x: damCharts.limTmax.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.limTmax.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Green, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.limTmax.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n if (damCharts.limTmin) {\r\n state.newCharts.push({\r\n name: 'min',\r\n x: damCharts.limTmin.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.limTmin.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Green, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.limTmin.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n if (damCharts.tSetpoint && (parsedGraphData.setpointHist == null || parsedGraphData.setpointHist.d.length === 0)) {\r\n state.newCharts.push({\r\n name: 'setpoint',\r\n x: damCharts.tSetpoint.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.tSetpoint.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { dash: 'dot', color: colors.Green, width: 2 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.tSetpoint.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n else if (parsedGraphData.setpointHist != null && parsedGraphData.setpointHist.d.length > 0) {\r\n state.newCharts.push({\r\n name: 'setpoint',\r\n x: parsedGraphData.setpointHist.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: parsedGraphData.setpointHist.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { dash: 'dot', color: colors.Green, width: 2 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: parsedGraphData.setpointHist.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n if (state.profile.manageAllClients && state.devInfo.dam && state.devInfo.dam.CAN_SELF_REFERENCE) {\r\n if (damCharts.tSetpoint) {\r\n state.newCharts.push({\r\n name: 'histerese sup.',\r\n x: damCharts.tSetpoint.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.tSetpoint.d.map((item) => item.y! + (state.devInfo.dam.UPPER_HYSTERESIS || 0)),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: '#6AA5E0', width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.tSetpoint.d.map((item) => formatNumberWithFractionDigits(item.y! + (state.devInfo.dam.UPPER_HYSTERESIS || 0))),\r\n });\r\n state.newCharts.push({\r\n name: 'histerese inf.',\r\n x: damCharts.tSetpoint.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: damCharts.tSetpoint.d.map((item) => item.y! - (state.devInfo.dam.LOWER_HYSTERESIS || 0)),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: '#6AA5E0', width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: damCharts.tSetpoint.d.map((item) => formatNumberWithFractionDigits(item.y! - (state.devInfo.dam.LOWER_HYSTERESIS || 0))),\r\n });\r\n }\r\n }\r\n };\r\n\r\n const addDutHistereseLines = () => {\r\n if (state.profile.manageAllClients && state.devInfo.dam?.CAN_SELF_REFERENCE) {\r\n if (state.dutChart?.tSetpoint) {\r\n state.newCharts.push({\r\n name: 'histerese sup.',\r\n x: state.dutChart.tSetpoint.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.tSetpoint.d.map((item) => item.y! + (state.devInfo.dam.UPPER_HYSTERESIS || 0)),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: '#6AA5E0', width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.tSetpoint.d.map((item) => formatNumberWithFractionDigits(item.y! + (state.devInfo.dam.UPPER_HYSTERESIS || 0))),\r\n });\r\n state.newCharts.push({\r\n name: 'histerese inf.',\r\n x: state.dutChart.tSetpoint.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.tSetpoint.d.map((item) => item.y! - (state.devInfo.dam.LOWER_HYSTERESIS || 0)),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: '#6AA5E0', width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.tSetpoint.d.map((item) => formatNumberWithFractionDigits(item.y! - (state.devInfo.dam.LOWER_HYSTERESIS || 0))),\r\n });\r\n }\r\n }\r\n };\r\n\r\n function isFancoil() {\r\n if (state.devInfo.dut && state.devInfo.dut.APPLICATION === 'fancoil') {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function nameTemp1() {\r\n let name;\r\n if (state.dutChart && !state.dutChart.temprt1) {\r\n name = state.dutRoomName ?? 'DUT';\r\n } else if (isFancoil()) {\r\n name = 'DUT Temp Saída de Água';\r\n } else {\r\n name = 'DUT Temp Retorno';\r\n }\r\n return name;\r\n }\r\n\r\n function nameTemp2() {\r\n let name = '';\r\n if (isFancoil()) {\r\n name = 'DUT Temp Entrada de Água';\r\n }\r\n else {\r\n name = 'DUT Temp Insuflamento';\r\n }\r\n return name;\r\n }\r\n\r\n const addDutChartLines = (parsedGraphData: ReturnType) => {\r\n if (state.dutChart?.temprt) {\r\n state.newCharts.push({\r\n name: nameTemp1(),\r\n x: state.dutChart.temprt.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.temprt.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Orange, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.temprt.d.map((item) => formatNumberWithFractionDigits(item.y ?? 0)),\r\n });\r\n }\r\n if (state.dutChart?.temprt1) {\r\n state.newCharts.push({\r\n name: nameTemp2(),\r\n x: state.dutChart.temprt1.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.temprt1.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Blue300, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.temprt1.d.map((item) => formatNumberWithFractionDigits(item.y ?? 0)),\r\n });\r\n }\r\n if (state.dutChart?.l1) {\r\n state.newCharts.push({\r\n name: 'DUT L1',\r\n x: state.dutChart.l1.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.l1.d.map((item) => item.y || null),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Black, width: 1 },\r\n hovertemplate: '%{y}',\r\n });\r\n }\r\n if (state.dutChart?.limTmax) {\r\n state.newCharts.push({\r\n name: 'max',\r\n x: state.dutChart.limTmax.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.limTmax.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Green, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.limTmax.d.map((item) => formatNumberWithFractionDigits(item.y ?? 0)),\r\n });\r\n }\r\n if (state.dutChart?.limTmin) {\r\n state.newCharts.push({\r\n name: 'min',\r\n x: state.dutChart.limTmin.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.limTmin.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Green, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.limTmin.d.map((item) => formatNumberWithFractionDigits(item.y ?? 0)),\r\n });\r\n }\r\n if (state.dutChart?.tSetpoint && (parsedGraphData.setpointHist == null || parsedGraphData.setpointHist.d.length === 0)) {\r\n state.newCharts.push({\r\n name: 'setpoint',\r\n x: state.dutChart.tSetpoint.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutChart.tSetpoint.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { dash: 'dot', color: colors.Green, width: 2 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutChart.tSetpoint.d.map((item) => formatNumberWithFractionDigits(item.y ?? 0)),\r\n });\r\n }\r\n else if (parsedGraphData.setpointHist != null && parsedGraphData.setpointHist.d.length > 0) {\r\n state.newCharts.push({\r\n name: 'setpoint',\r\n x: parsedGraphData.setpointHist.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: parsedGraphData.setpointHist.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { dash: 'dot', color: colors.Green, width: 2 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: parsedGraphData.setpointHist.d.map((item) => formatNumberWithFractionDigits(item.y ?? 0)),\r\n });\r\n }\r\n\r\n addDutHistereseLines();\r\n };\r\n\r\n const addDutDuoNotAutLines = () => {\r\n if (state.dutDuoChartNotAut) {\r\n if (state.dutDuoChartNotAut.temprt1) {\r\n state.newCharts.push({\r\n name: t('temperaturadeInsuflamento'),\r\n x: state.dutDuoChartNotAut.temprt1.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutDuoChartNotAut.temprt1.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Yellow, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutDuoChartNotAut.temprt1.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n if (state.dutDuoChartNotAut.temprt) {\r\n state.newCharts.push({\r\n name: t('temperaturadeRetorno'),\r\n x: state.dutDuoChartNotAut.temprt.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: state.dutDuoChartNotAut.temprt.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: colors.Green_v2, width: 1 },\r\n hovertemplate: '%{customdata} °C',\r\n customdata: state.dutDuoChartNotAut.temprt.d.map((item) => formatNumberWithFractionDigits(item.y!)),\r\n });\r\n }\r\n }\r\n };\r\n\r\n const addDacLines = () => {\r\n for (const dacInfo of (state.dacsCharts || [])) {\r\n state.newCharts.push({\r\n name: dacInfo.dacId,\r\n x: dacInfo.chartData.d.map((item) => state.date!.clone().add(moment.duration(item.x * 3600 * 1000)).toISOString(true)),\r\n y: dacInfo.chartData.d.map((item) => item.y!),\r\n type: 'scatter',\r\n mode: 'lines',\r\n line: { color: '#911EB4', width: 1 },\r\n hovertemplate: '%{y}',\r\n });\r\n }\r\n };\r\n\r\n const valueOrEmptyArr = (value) => (value || []);\r\n\r\n const formatAsTable = (comprHistory: ApiResps['/get-autom-day-charts-data']) => {\r\n state.asTable = [];\r\n state.dacsCols = [];\r\n if (!comprHistory.asTable?.c.length) return;\r\n const {\r\n c, prog, Mode, State, ecoCmd, dacsRows, dacsCols, labels_State,\r\n } = comprHistory.asTable;\r\n state.dacsCols = valueOrEmptyArr(dacsCols);\r\n const labelsMode = valueOrEmptyArr(comprHistory.Mode?.labels);\r\n const labelsState = valueOrEmptyArr(labels_State || (comprHistory.State?.labels));\r\n const labelsEcoCmd = valueOrEmptyArr(comprHistory.ecoCmd?.labels);\r\n const labelsProg = valueOrEmptyArr(comprHistory.prog?.labels);\r\n for (let i = 0; i < c.length; i++) {\r\n const row = [\r\n c[i],\r\n (prog && labelsProg[prog[i]]) || '',\r\n (Mode && labelsMode[Mode[i]]) || '',\r\n (State && labelsState[State[i]]) || '',\r\n (ecoCmd && labelsEcoCmd[ecoCmd[i]]) || '',\r\n ];\r\n row.push(''); // Modo Economia\r\n for (const dac of dacsRows) {\r\n row.push(dac[i]);\r\n row.push(''); // Economia DAC\r\n }\r\n state.asTable.push(row);\r\n }\r\n };\r\n\r\n const createDacLines = (comprHistory: ApiResps['/get-autom-day-charts-data'], parsedGraphData: ReturnType) => {\r\n for (const [dacId, dacLine] of Object.entries(parsedGraphData.dacs || {})) {\r\n // if (!dacLine) continue;\r\n if (!comprHistory.asTable.dacsCols.includes(dacId)) continue;\r\n const dacInf = comprHistory.dacsInfo?.[dacId];\r\n state.dacsCharts.push({\r\n dacId,\r\n groupId: dacLine.groupId,\r\n chartData: dacLine,\r\n usePeriod: null,\r\n useFactor: null,\r\n potNominal: dacInf?.DAC_KW,\r\n conclusions: [],\r\n states: [],\r\n stateStats: {\r\n cond1_hit: 0,\r\n cond1_miss: 0,\r\n cond2_hit: 0,\r\n cond2_miss: 0,\r\n ecoFull_hit: 0,\r\n noEcoVent_hit: 0,\r\n },\r\n });\r\n }\r\n };\r\n\r\n async function updateChartData() {\r\n if (!state.devInfo) return;\r\n if (!state.date) return;\r\n\r\n try {\r\n if (!state.isLoading) {\r\n setState({ isLoading: true });\r\n }\r\n state.damCharts = {};\r\n state.dacsCharts = [];\r\n state.dutChart = null;\r\n state.dutDuoChartNotAut = null;\r\n\r\n const params = {\r\n devId: state.damId,\r\n day: state.date.format().substring(0, 10),\r\n };\r\n const comprHistory = await apiCall('/get-autom-day-charts-data', params);\r\n\r\n if (comprHistory.provision_error) { toast.error(t('erroDadosIncompletos')); }\r\n\r\n const parsedGraphData = processReceivedHistoryDAM(comprHistory, state.devInfo);\r\n\r\n const damCharts = state.damCharts = {\r\n State: parsedGraphData.State,\r\n Mode: parsedGraphData.Mode,\r\n ecoCmd: parsedGraphData.ecoCmd,\r\n Temperature: parsedGraphData.damTemperature,\r\n Temperature_1: parsedGraphData.damTemperature_1,\r\n limTmin: parsedGraphData.limTmin,\r\n limTmax: parsedGraphData.limTmax,\r\n tSetpoint: parsedGraphData.tSetpoint,\r\n humidity: parsedGraphData.humidity,\r\n };\r\n\r\n createDacLines(comprHistory, parsedGraphData);\r\n\r\n state.conclusionsDam = [];\r\n state.dutChart = (!parsedGraphData.duts[0]?.isDutDuo && parsedGraphData.duts[0]) || null;\r\n const dutsDuoNotAut = parsedGraphData.duts.filter((dut) => dut?.isDutDuo);\r\n state.dutDuoChartNotAut = dutsDuoNotAut.length > 0 ? dutsDuoNotAut[0] : null;\r\n state.daySched = comprHistory.daySched || null;\r\n\r\n updateAxis();\r\n\r\n state.newCharts = [];\r\n addDamDefaultLines(damCharts);\r\n if (state.devInfo.dam?.SELF_REFERENCE) {\r\n addDamSelfReferenceLines(damCharts, parsedGraphData);\r\n }\r\n else if (state.dutChart) {\r\n addDutChartLines(parsedGraphData);\r\n }\r\n\r\n addDutDuoNotAutLines();\r\n\r\n addDacLines();\r\n\r\n for (const chart of state.newCharts) {\r\n chart.text = chart.x.map((x) => x.substring(11, 19));\r\n }\r\n\r\n formatAsTable(comprHistory);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n\r\n setState({ isLoading: false });\r\n }\r\n\r\n const setTemprtLimits = (limits: { max: null|number, min: null|number }) => {\r\n if (!state.dutChart?.temprt?.limits) return;\r\n\r\n const [minTval, maxTval] = state.dutChart.temprt.limits;\r\n if (state.dutChart && maxTval && (maxTval > limits.max! || limits.max == null)) {\r\n limits.max = maxTval;\r\n }\r\n if (state.dutChart && minTval && (minTval < limits.min! || limits.min == null)) {\r\n limits.min = minTval;\r\n }\r\n };\r\n\r\n const setDutsLimits = (limits: { max: null|number, min: null|number }) => {\r\n if (!state.dutChart) return;\r\n\r\n if (state.dutChart.limTmax?.limits.length) {\r\n if (!limits.max || state.dutChart.limTmax.limits[1] > limits.max) {\r\n limits.max = state.dutChart.limTmax.limits[1];\r\n }\r\n }\r\n if (state.dutChart.limTmin?.limits.length) {\r\n if (!limits.min || state.dutChart.limTmin.limits[0] < limits.min) {\r\n limits.min = state.dutChart.limTmin.limits[0];\r\n }\r\n }\r\n\r\n setTemprtLimits(limits);\r\n };\r\n\r\n const setDamsTLimits = (limits: { max: null|number, min: null|number }) => {\r\n if (state.damCharts.limTmax?.limits.length) {\r\n if (!limits.max || state.damCharts.limTmax.limits[1] > limits.max) {\r\n limits.max = state.damCharts.limTmax.limits[1];\r\n }\r\n }\r\n if (state.damCharts.limTmin?.limits.length) {\r\n if (!limits.min || state.damCharts.limTmin.limits[0] < limits.min) {\r\n limits.min = state.damCharts.limTmin.limits[0];\r\n }\r\n }\r\n };\r\n\r\n const setDamsTempLimits = (limits: { max: null|number, min: null|number }) => {\r\n if (state.damCharts.Temperature && (state.devInfo.dam?.PLACEMENT === 'RETURN' || (state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam.T0_POSITION))) {\r\n const [minTval, maxTval] = state.damCharts.Temperature.limits;\r\n if (state.damCharts && maxTval && (maxTval > limits.max! || limits.max == null)) {\r\n limits.max = maxTval;\r\n }\r\n if (state.damCharts && minTval && (minTval < limits.min! || limits.min == null)) {\r\n limits.min = minTval;\r\n }\r\n }\r\n };\r\n\r\n const setDamsTemp1Limits = (limits: { max: null|number, min: null|number }) => {\r\n // FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA\r\n if (state.damCharts.Temperature_1 && state.devInfo.dam?.PLACEMENT === 'DUO' && state.devInfo.dam.T1_POSITION && (state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1)) {\r\n const [minTval, maxTval] = state.damCharts.Temperature_1.limits;\r\n if (state.damCharts && maxTval && (maxTval > limits.max! || limits.max == null)) {\r\n limits.max = maxTval;\r\n }\r\n if (state.damCharts && minTval && (minTval < limits.min! || limits.min == null)) {\r\n limits.min = minTval;\r\n }\r\n }\r\n };\r\n\r\n const setDamsLimits = (limits: { max: null|number, min: null|number }) => {\r\n setDamsTLimits(limits);\r\n setDamsTempLimits(limits);\r\n setDamsTemp1Limits(limits);\r\n };\r\n\r\n const setDutsDuoTemprtLimits = (limits: { max: null|number, min: null|number }) => {\r\n if (!state.dutDuoChartNotAut?.temprt?.limits) return;\r\n\r\n const [minTval, maxTval] = state.dutDuoChartNotAut.temprt.limits;\r\n if (maxTval && (maxTval > limits.max! || limits.max == null)) {\r\n limits.max = maxTval;\r\n }\r\n if (minTval && (minTval < limits.min! || limits.min == null)) {\r\n limits.min = minTval;\r\n }\r\n };\r\n\r\n const setDutsDuoTemprt1Limits = (limits: { max: null|number, min: null|number }) => {\r\n if (!state.dutDuoChartNotAut?.temprt1?.limits) return;\r\n\r\n const [minTval, maxTval] = state.dutDuoChartNotAut.temprt1.limits;\r\n if (maxTval && (maxTval > limits.max! || limits.max == null)) {\r\n limits.max = maxTval;\r\n }\r\n if (minTval && (minTval < limits.min! || limits.min == null)) {\r\n limits.min = minTval;\r\n }\r\n };\r\n\r\n const setDutsDuoLimits = (limits: { max: null|number, min: null|number }) => {\r\n if (!state.dutDuoChartNotAut) return;\r\n\r\n if (state.dutDuoChartNotAut.temprt?.limits) {\r\n setDutsDuoTemprtLimits(limits);\r\n }\r\n if (state.dutDuoChartNotAut.temprt1?.limits) {\r\n setDutsDuoTemprt1Limits(limits);\r\n }\r\n };\r\n\r\n function updateAxis() {\r\n const limits = { max: null as null|number, min: null as null|number };\r\n\r\n setDutsLimits(limits);\r\n\r\n setDamsLimits(limits);\r\n\r\n setDutsDuoLimits(limits);\r\n\r\n const { L1start, ticks, maxAxisVal } = axisCalc.calculateTemprtAxisInfo(limits);\r\n\r\n const steppedLines: DiscreteHistVar[] = [];\r\n if (state.damCharts.Mode) steppedLines.push(state.damCharts.Mode);\r\n if (state.damCharts.State) steppedLines.push(state.damCharts.State);\r\n if (state.damCharts.ecoCmd) steppedLines.push(state.damCharts.ecoCmd);\r\n for (const dacInfo of (state.dacsCharts || [])) {\r\n steppedLines.push(dacInfo.chartData);\r\n }\r\n if (state.dutChart?.l1) steppedLines.push(state.dutChart.l1);\r\n\r\n const { allTicks, ticksNames, endValue } = axisCalc.updateStepY(steppedLines, L1start);\r\n state.axisInfo.L1start = L1start;\r\n state.axisInfo.leftLimits = [endValue - 2, ticks.length ? maxAxisVal : (L1start + 0.5)];\r\n state.axisInfo.leftTicks = [...ticks, ...allTicks];\r\n state.axisInfo.stepTicksNames = ticksNames;\r\n\r\n state.axisInfo.leftTicksLabels = state.axisInfo.leftTicks.map((v) => { const vs = String(v); return ticksNames[vs] || vs; });\r\n }\r\n\r\n function calculateStats(comprHistory: ApiResps['/get-autom-day-charts-data']) {\r\n // groupsInfo: { [groupId: string]: { GROUP_NAME: string } }, unitInfo: { greenAntCons_kWh: number, averageTariff: number }, damInfo: { FU_NOM: number }\r\n const { groupsInfo, unitInfo, automInfo: damInfo } = comprHistory;\r\n const statsCounters = {} as {\r\n [dacId: string]: {\r\n dacId: string\r\n firstL1: number|null\r\n lastL1: number|null\r\n lastL1iRow: number\r\n fuRef: number|null\r\n inL1: {\r\n on: number\r\n off: number\r\n ignr: number\r\n }\r\n inProg: {\r\n on: number\r\n off: number\r\n ignr: number\r\n }\r\n inProg_B: {\r\n on: number\r\n off: number\r\n ena: number\r\n dis: number\r\n C1: number\r\n C2: number\r\n ignr: number\r\n }\r\n inEnabled: {\r\n on: number\r\n off: number\r\n ignr: number\r\n }\r\n inC1: {\r\n on: number\r\n off: number\r\n ignr: number\r\n }\r\n inC2: {\r\n on: number\r\n off: number\r\n ignr: number\r\n }\r\n inForbid: {\r\n on: number\r\n off: number\r\n ignr: number\r\n }\r\n stateStats: {\r\n cond1_hit: number\r\n cond1_miss: number\r\n cond2_hit: number\r\n cond2_miss: number\r\n ecoFull_hit: number\r\n noEcoVent_hit: number\r\n }\r\n }\r\n };\r\n for (let iD = 0; iD < state.dacsCols.length; iD++) {\r\n const dacId = state.dacsCols[iD];\r\n let lastL1iRow = -1;\r\n for (let iR = state.asTable.length - 1; iR >= 0; iR--) {\r\n const row = state.asTable[iR];\r\n const dacL1 = row[6 + 2 * iD];\r\n if (dacL1 === 1) {\r\n lastL1iRow = iR;\r\n break;\r\n }\r\n }\r\n statsCounters[dacId] = {\r\n dacId,\r\n firstL1: null,\r\n lastL1: null,\r\n fuRef: null,\r\n lastL1iRow,\r\n inL1: { on: 0, off: 0, ignr: 0 },\r\n inProg: { on: 0, off: 0, ignr: 0 },\r\n inProg_B: {\r\n on: 0, off: 0, ena: 0, dis: 0, C1: 0, C2: 0, ignr: 0,\r\n },\r\n inEnabled: { on: 0, off: 0, ignr: 0 },\r\n inC1: { on: 0, off: 0, ignr: 0 },\r\n inC2: { on: 0, off: 0, ignr: 0 },\r\n inForbid: { on: 0, off: 0, ignr: 0 },\r\n inProgOn: 0,\r\n inProgOff: 0,\r\n inProgIgnored: 0,\r\n stateStats: {\r\n cond1_hit: 0,\r\n cond1_miss: 0,\r\n cond2_hit: 0,\r\n cond2_miss: 0,\r\n ecoFull_hit: 0,\r\n noEcoVent_hit: 0,\r\n },\r\n };\r\n const dacInfo = state.dacsCharts.find((x) => x.dacId === dacId)!;\r\n dacInfo.stateStats = statsCounters[dacId].stateStats;\r\n }\r\n let tempoStateEnabled = 0;\r\n let tempoStateVentilation = 0;\r\n let tempoStateC1 = 0;\r\n let tempoStateC2 = 0;\r\n let accT = 0;\r\n let timeDamOffline = 0;\r\n // let damIsBlocking = null;\r\n for (let iR = 0; iR < state.asTable.length; iR++) {\r\n const row = state.asTable[iR];\r\n const rowDuration = row[0] as number;\r\n const rowProg = row[1] as string;\r\n const rowMode = row[2] as string;\r\n const rowState = row[3] as string;\r\n const rowEcoCmd = row[4] as string;\r\n\r\n if (!rowState) timeDamOffline += rowDuration;\r\n else timeDamOffline = 0;\r\n\r\n if (rowMode === 'Auto') {\r\n if (rowState === 'Enabled') { tempoStateEnabled += rowDuration; } else if (rowState === 'Ventilation') { tempoStateVentilation += rowDuration; } else if (rowState === 'Condenser 1') { tempoStateC1 += rowDuration; } else if (rowState === 'Condenser 2') { tempoStateC2 += rowDuration; }\r\n }\r\n\r\n const isEcoCmd = (rowEcoCmd && rowEcoCmd !== 'Sem eco') || ['Condenser 1', 'Enabling Condenser 1', 'Condenser 2', 'Enabling Condenser 2'].includes(rowState);\r\n let rowSavingDet = '';\r\n if (isEcoCmd) {\r\n if (!rowEcoCmd) rowSavingDet = t('ignoradoCMD');\r\n else if (rowProg && (rowProg !== 'allow')) rowSavingDet = t('ignoradoProg');\r\n else if (['Disabling', 'Starting Ventilation', 'Enabling Condenser 1', 'Enabling Condenser 2'].includes(rowState)) rowSavingDet = t('ignoradoTRN');\r\n else if (rowState && (rowState !== rowEcoCmd)) rowSavingDet = t('ignoradoState');\r\n else if (rowMode && (rowMode !== 'Auto')) rowSavingDet = t('ignoradoMode');\r\n else if (timeDamOffline >= 20 * 60) rowSavingDet = t('ignoradoOffl');\r\n else rowSavingDet = 'ECO';\r\n }\r\n if (!rowSavingDet) {\r\n if (rowState === 'Starting Ventilation') rowSavingDet = t('ignoradoTRN');\r\n else if (rowState === 'Ventilation') rowSavingDet = t('ventilacao');\r\n }\r\n row[5] = rowSavingDet;\r\n\r\n // if (!rowProg) { // no programming defined\r\n // damIsBlocking = null;\r\n // }\r\n // else if (timeDamOffline >= 20*60) { // offline\r\n // damIsBlocking = null;\r\n // }\r\n // else if (rowProg === 'allow') {\r\n // damIsBlocking = false;\r\n // } else { // if (rowProg === 'forbid')\r\n // damIsBlocking = false;\r\n // }\r\n\r\n for (let iD = 0; iD < state.dacsCols.length; iD++) {\r\n const dacId = state.dacsCols[iD];\r\n const dacStats = statsCounters[dacId];\r\n const dacL1 = row[6 + 2 * iD];\r\n if (dacL1 === 1) {\r\n if (dacStats.firstL1 == null) dacStats.firstL1 = accT;\r\n dacStats.inL1.on += rowDuration;\r\n if (iR === dacStats.lastL1iRow) {\r\n dacStats.lastL1 = accT + rowDuration - 1;\r\n }\r\n } else if (dacL1 === 0) {\r\n if ((dacStats.firstL1 != null) && (iR < dacStats.lastL1iRow)) {\r\n dacStats.inL1.off += rowDuration;\r\n }\r\n } else if ((dacStats.firstL1 != null) && (iR < dacStats.lastL1iRow)) {\r\n dacStats.inL1.ignr += rowDuration;\r\n }\r\n let disabledRow = '';\r\n if (rowProg === 'allow') {\r\n if (dacL1 === 1) {\r\n dacStats.inProg.on += rowDuration;\r\n } else if (dacL1 === 0) {\r\n dacStats.inProg.off += rowDuration;\r\n } else {\r\n dacStats.inProg.ignr += rowDuration;\r\n }\r\n if (rowMode === 'Auto') {\r\n if (dacL1 === 1) {\r\n dacStats.inProg_B.on += rowDuration;\r\n disabledRow = t('ligadoMin');\r\n } else if (dacL1 === 0) {\r\n dacStats.inProg_B.off += rowDuration;\r\n disabledRow = t('desligadoMin');\r\n } else if (rowState === 'Enabled') {\r\n dacStats.inProg_B.ena += rowDuration;\r\n disabledRow = t('ligadoMin');\r\n } else if (rowState === 'Ventilation') {\r\n dacStats.inProg_B.dis += rowDuration;\r\n disabledRow = t('desligadoMin');\r\n } else if (rowState === 'Disabled') {\r\n dacStats.inProg_B.dis += rowDuration;\r\n disabledRow = t('desligadoMin');\r\n } else if (rowState === 'Condenser 1') {\r\n dacStats.inProg_B.C1 += rowDuration;\r\n disabledRow = t('ignoradoC1');\r\n } else if (rowState === 'Condenser 2') {\r\n dacStats.inProg_B.C2 += rowDuration;\r\n disabledRow = t('ignoradoC2');\r\n } else {\r\n dacStats.inProg_B.ignr += rowDuration;\r\n disabledRow = t('ignoradoState');\r\n }\r\n } else {\r\n dacStats.inProg_B.ignr += rowDuration;\r\n disabledRow = t('ignoradoMode');\r\n }\r\n }\r\n if (rowProg === 'forbid') {\r\n if (dacL1 === 1) {\r\n dacStats.inForbid.on += rowDuration;\r\n } else if (dacL1 === 0) {\r\n dacStats.inForbid.off += rowDuration;\r\n } else {\r\n dacStats.inForbid.ignr += rowDuration;\r\n }\r\n }\r\n if (rowMode === 'Auto') {\r\n if (rowState === 'Enabled') {\r\n if (dacL1 === 1) {\r\n dacStats.inEnabled.on += rowDuration;\r\n } else if (dacL1 === 0) {\r\n dacStats.inEnabled.off += rowDuration;\r\n } else {\r\n dacStats.inEnabled.ignr += rowDuration;\r\n }\r\n } else if (rowState === 'Condenser 1') {\r\n if (dacL1 === 1) {\r\n dacStats.inC1.on += rowDuration;\r\n } else if (dacL1 === 0) {\r\n dacStats.inC1.off += rowDuration;\r\n } else {\r\n dacStats.inC1.ignr += rowDuration;\r\n }\r\n } else if (rowState === 'Condenser 2') {\r\n if (dacL1 === 1) {\r\n dacStats.inC2.on += rowDuration;\r\n } else if (dacL1 === 0) {\r\n dacStats.inC2.off += rowDuration;\r\n } else {\r\n dacStats.inC2.ignr += rowDuration;\r\n }\r\n }\r\n }\r\n\r\n // if (['Condenser 1', 'Condenser 2'].includes(rowState) || ((!rowState) && ['Condenser 1', 'Condenser 2'].includes(rowEcoCmd))) {\r\n if (rowSavingDet === 'ECO') {\r\n if (rowEcoCmd === 'Condenser 1') {\r\n if (dacL1 === 1) { dacStats.stateStats.cond1_hit += rowDuration; } else { dacStats.stateStats.cond1_miss += rowDuration; }\r\n } else if (rowEcoCmd === 'Condenser 2') {\r\n if (dacL1 === 1) { dacStats.stateStats.cond2_hit += rowDuration; } else { dacStats.stateStats.cond2_miss += rowDuration; }\r\n } else if (dacL1 === 1) { } // ignore\r\n else { dacStats.stateStats.ecoFull_hit += rowDuration; }\r\n }\r\n if ((!isEcoCmd) && (rowState === 'Ventilation')) { // (rowSavingDet === 'Ventilation')\r\n if (dacL1 === 1) { } // ignore\r\n else { dacStats.stateStats.noEcoVent_hit += rowDuration; }\r\n }\r\n\r\n // let ecoDac = '';\r\n // if (rowSavingDet) {\r\n // if (rowSavingDet.startsWith('Ignorado')) {\r\n // // Ignore\r\n // }\r\n // else {\r\n // if (dacL1 === 1) {\r\n // ecoDac = 'Ignorado [L1]';\r\n // } else {\r\n // if (rowSavingDet === 'ECO') {\r\n // if ((rowEcoCmd === 'Disabled') || (rowEcoCmd === 'Ventilation')) ecoDac = 'Saving ECO';\r\n // else if ((rowEcoCmd === 'Condenser 1') || (rowEcoCmd === 'Condenser 2')) ecoDac = 'Ignorado [COND]';\r\n // else ecoDac = 'Ignorado [E1]';\r\n // }\r\n // else if (rowSavingDet === 'Ventilation') {\r\n // ecoDac = 'Saving Vent';\r\n // }\r\n // else {\r\n // ecoDac = 'Ignorado [E2]';\r\n // }\r\n // }\r\n // }\r\n // }\r\n // row[6 + 2 * iD + 1] = ecoDac;\r\n row[6 + 2 * iD + 1] = disabledRow;\r\n }\r\n accT += rowDuration;\r\n }\r\n\r\n identifyConds();\r\n\r\n // if (state.devInfo && state.devInfo.dam) {\r\n // state.conclusionsDam.push(`Configuração do DAM: ${JSON.stringify({\r\n // REL_DUT_ID: state.devInfo.dam.REL_DUT_ID,\r\n // ENABLE_ECO: state.devInfo.dam.ENABLE_ECO,\r\n // ECO_CFG: state.devInfo.dam.ECO_CFG,\r\n // ECO_OFST_START: state.devInfo.dam.ECO_OFST_START,\r\n // ECO_OFST_END: state.devInfo.dam.ECO_OFST_END,\r\n // ECO_INT_TIME: state.devInfo.dam.ECO_INT_TIME,\r\n // FW_MODE: state.devInfo.dam.FW_MODE,\r\n // DAM_DISABLED: state.devInfo.dam.DAM_DISABLED,\r\n // dam_mode: state.devInfo.dam.dam_mode,\r\n // })}`);\r\n // state.conclusionsDam.push(`Máquinas do DAM: ${JSON.stringify(state.devInfo.dam.groups)}`);\r\n // }\r\n // state.conclusionsDam.push(`Máquinas do DAM: ${JSON.stringify(comprHistory.groupsInfo)}`);\r\n // state.conclusionsDam.push(`Programação horária: ${JSON.stringify(comprHistory.daySched)}`);\r\n // for (const dut of (comprHistory.dutsTemprt || [])) {\r\n // state.conclusionsDam.push(`Tipo de ambiente: ${JSON.stringify({\r\n // dutId: dut.dutId,\r\n // daySched: dut.daySched,\r\n // })}`);\r\n // }\r\n\r\n let progDesc = null as null|string;\r\n if (state.daySched && state.daySched.type === 'allow') {\r\n progDesc = `${state.daySched.startHM} a ${state.daySched.endHM}`;\r\n const hoursAllowed = Math.round((state.daySched.indexEnd - state.daySched.indexIni + 1) / 60 * 10) / 10;\r\n const hoursForbid = 24 - hoursAllowed;\r\n state.conclusionsDam.push(t('pelaProgramacaoHorarioFuncionamento', { progDesc, hoursForbid, hoursAllowed }));\r\n state.conclusionsDam.push(t('damEnabledVentilation', { tempoStateEnabled, tempoStateVentilation }));\r\n if (unitInfo && unitInfo.greenAntCons_kWh) {\r\n state.conclusionsDam.push(t('consumoTotalUnidadeMedidoGreenAnt', { kWh: unitInfo.greenAntCons_kWh }));\r\n }\r\n }\r\n\r\n for (const dacInfo of state.dacsCharts) {\r\n const dacStats = statsCounters[dacInfo.dacId];\r\n if (!dacStats.inProg.on) {\r\n if (dacStats.inProg.off) {\r\n dacInfo.conclusions.push(t('compressorMonitoradoNaoUtilizado'));\r\n } else {\r\n dacInfo.conclusions.push(t('naoTemInformacaoSobreEstadoCompressor'));\r\n }\r\n } else {\r\n const potNominal = dacInfo.potNominal ? t('potenciaNominalCompressor', { potNominal: dacInfo.potNominal }) : t('faltaInformacaoPotenciaNominalCompressor');\r\n const machineName = ((groupsInfo && dacInfo.groupId && groupsInfo[dacInfo.groupId]) || {}).GROUP_NAME || '';\r\n dacStats.fuRef = damInfo.FU_NOM || 0.6;\r\n if (dacInfo.isCond1) {\r\n dacInfo.conclusions.push(t('condensadora1MaquinaFuNominal', { machineName, potNominal, percent: dacStats.fuRef * 100 }));\r\n } else if (dacInfo.isCond2) {\r\n dacInfo.conclusions.push(t('condensadora2MaquinaFuNominal', { machineName, potNominal, percent: dacStats.fuRef * 100 }));\r\n } else {\r\n dacInfo.conclusions.push(potNominal);\r\n }\r\n if (progDesc) {\r\n if (dacStats.inProg.on) {\r\n const FUprog = `${Math.round(dacStats.inProg.on / (dacStats.inProg.on + dacStats.inProg.off) * 100 * 10) / 10}%`;\r\n dacInfo.conclusions.push(t('durantePeriodoPermitidoProgamacaoDacFicou', {\r\n tempOn: dacStats.inProg.on,\r\n tempOff: dacStats.inProg.off,\r\n tempOffline: dacStats.inProg.ignr,\r\n FUprog,\r\n }));\r\n }\r\n if (dacStats.inForbid.off && dacStats.inForbid.on) {\r\n dacInfo.conclusions.push(t('foraHorarioProgramacaoDacFicou', {\r\n tempOn: dacStats.inForbid.on,\r\n tempOff: dacStats.inForbid.off,\r\n tempOffline: dacStats.inForbid.ignr,\r\n }));\r\n }\r\n }\r\n if (dacStats.inEnabled.on) {\r\n // dacStats.fuRef = dacStats.inEnabled.on / (dacStats.inEnabled.on + dacStats.inEnabled.off);\r\n // const FUenab = `${Math.round(dacStats.inEnabled.on / (dacStats.inEnabled.on + dacStats.inEnabled.off) * 100 * 10) / 10}%`\r\n dacInfo.conclusions.push(t('considerandoDamEnabledDacFicou', { tempOn: dacStats.inEnabled.on, tempOff: dacStats.inEnabled.off, tempOffline: dacStats.inEnabled.ignr }));\r\n }\r\n if (dacInfo.isCond1 && tempoStateC1) {\r\n dacInfo.conclusions.push(t('considerandoDamCondenser1DacFicou', { tempOn: dacStats.inC1.on, tempOff: dacStats.inC1.off, tempOffline: dacStats.inC1.ignr }));\r\n }\r\n if (dacInfo.isCond2 && tempoStateC2) {\r\n dacInfo.conclusions.push(t('considerandoDamCondenser2DacFicou', { tempOn: dacStats.inC1.on, tempOff: dacStats.inC1.off, tempOffline: dacStats.inC1.ignr }));\r\n }\r\n if (dacStats.inL1.on) {\r\n if (dacStats.firstL1 != null) {\r\n const usePeriod = `${convertToTime(dacStats.firstL1)} a ${convertToTime(dacStats.lastL1!)}`;\r\n // dacInfo.useFactor = (dacStats.inL1.on) ? `${dacStats.inL1.on} / ${(dacStats.inL1.on + dacStats.inL1.off)} = ${Math.round(dacStats.inL1.on / (dacStats.inL1.on + dacStats.inL1.off) * 100 * 10) / 10}%` : '';\r\n const FU = `${Math.round(dacStats.inL1.on / (dacStats.inL1.on + dacStats.inL1.off) * 100 * 10) / 10}%`;\r\n dacInfo.conclusions.push(t('observandoL1DacFuncionouPeriodo', {\r\n usePeriod,\r\n tempOn: dacStats.inL1.on,\r\n tempOff: dacStats.inL1.off,\r\n tempOffline: dacStats.inL1.ignr,\r\n FU,\r\n }));\r\n }\r\n }\r\n }\r\n }\r\n\r\n for (let iD = 0; iD < state.dacsCols.length; iD++) {\r\n const dacId = state.dacsCols[iD];\r\n const dac = state.dacsCharts.find((x) => x.dacId === dacId);\r\n if (!dac) continue;\r\n for (let iR = 0; iR < state.asTable.length; iR++) {\r\n const row = state.asTable[iR];\r\n // let ecoDac = row[6 + 2 * iD + 1];\r\n // if (ecoDac === 'Ignorado [COND]') {\r\n // const rowEcoCmd = row[4];\r\n // if ((rowEcoCmd === 'Condenser 1') && (dac.isCond1 === false)) ecoDac = 'Saving ECO';\r\n // else if ((rowEcoCmd === 'Condenser 2') && (dac.isCond2 === false)) ecoDac = 'Saving ECO';\r\n // row[6 + 2 * iD + 1] = ecoDac;\r\n // }\r\n // else if (ecoDac === 'Ignorado [L1]') {\r\n // const rowEcoCmd = row[4];\r\n // if ((rowEcoCmd === 'Condenser 1') && (dac.isCond1 === true)) ecoDac = 'Ignorado [COND]';\r\n // else if ((rowEcoCmd === 'Condenser 2') && (dac.isCond2 === true)) ecoDac = 'Ignorado [COND]';\r\n // row[6 + 2 * iD + 1] = ecoDac;\r\n // }\r\n let disabledRow = row[6 + 2 * iD + 1];\r\n if ((disabledRow === t('ignoradoC1')) && (!dac.isCond1)) {\r\n disabledRow = t('desligadoMin');\r\n row[6 + 2 * iD + 1] = disabledRow;\r\n } else if ((disabledRow === t('ignoradoC2')) && (!dac.isCond2)) {\r\n disabledRow = t('desligadoMin');\r\n row[6 + 2 * iD + 1] = disabledRow;\r\n }\r\n }\r\n }\r\n\r\n for (const dacInfo of state.dacsCharts) {\r\n const dacStats = statsCounters[dacInfo.dacId];\r\n\r\n let ecoModeSavings_n = dacStats.stateStats.ecoFull_hit;\r\n if (!dacInfo.isCond1) ecoModeSavings_n += dacStats.stateStats.cond1_miss;\r\n if (!dacInfo.isCond2) ecoModeSavings_n += dacStats.stateStats.cond2_miss;\r\n const ventilSavings_n = dacStats.stateStats.noEcoVent_hit;\r\n const ecoVentSavings = ecoModeSavings_n + ventilSavings_n;\r\n let tempoDesligado = dacStats.inProg_B.off + dacStats.inProg_B.dis;\r\n if (!dacInfo.isCond1) tempoDesligado += dacStats.inProg_B.C1;\r\n if (!dacInfo.isCond2) tempoDesligado += dacStats.inProg_B.C2;\r\n const tempoLigado = dacStats.inProg_B.on + dacStats.inProg_B.ena;\r\n const FU = dacStats.fuRef || 1;\r\n const timeSavedEst = ecoVentSavings * FU / 3600;\r\n\r\n if (dacStats.inL1.on) {\r\n let consumoCompressor = `${dacStats.inL1.on}s = ${Math.round(dacStats.inL1.on / 3600 * 1000) / 1000}hs`;\r\n if (dacInfo.potNominal) {\r\n consumoCompressor += ` = ${Math.round(dacStats.inL1.on / 3600 * dacInfo.potNominal * 10) / 10} kWh`;\r\n }\r\n dacInfo.conclusions.push(t('consumoCompressorDia', { consumo: consumoCompressor }));\r\n }\r\n // if (ecoModeSavings_n) {\r\n // let ecoModeSavings_s = `${ecoModeSavings_n}s = ${Math.round(ecoModeSavings_n / 3600 * 1000) / 1000}hs`;\r\n // if (dacStats.fuRef != null) {\r\n // ecoModeSavings_s += `. Considerando o FU (${Math.round(FU * 1000) / 10}): ${Math.round(ecoModeSavings_n / 3600 * FU * 1000) / 1000} hs`;\r\n // if (dacInfo.potNominal) {\r\n // ecoModeSavings_s += ` = ${Math.round(ecoModeSavings_n / 3600 * dacInfo.potNominal* FU * 10) / 10} kWh`;\r\n // }\r\n // }\r\n // dacInfo.conclusions.push(`Economia pelo modo ECO: ${ecoModeSavings_s}`);\r\n // }\r\n // if (ventilSavings_n) {\r\n // let ventilSavings_s = `${ventilSavings_n}s = ${Math.round(ventilSavings_n / 3600 * 1000) / 1000}hs`;\r\n // if (dacStats.fuRef != null) {\r\n // ventilSavings_s += `. Considerando o FU (${Math.round(FU * 1000) / 10}): ${Math.round(ventilSavings_n / 3600 * FU * 1000) / 1000} hs`;\r\n // if (dacInfo.potNominal) {\r\n // ventilSavings_s += ` = ${Math.round(ventilSavings_n / 3600 * dacInfo.potNominal* FU * 10) / 10} kWh`;\r\n // }\r\n // }\r\n // dacInfo.conclusions.push(`Economia por ventilação fora do modo ECO: ${ventilSavings_s}`);\r\n // }\r\n if (ecoVentSavings) {\r\n let descr = t('economiaEcoVentilacaoHs', {\r\n ecoModeSavings_n,\r\n ventilSavings_n,\r\n valueHs: (Math.round(ecoVentSavings / 3600 * 1000) / 1000),\r\n });\r\n if (dacStats.fuRef != null) {\r\n descr += t('comOFuCompressorDeixouDeOperar', { FU: (Math.round(FU * 1000) / 10), valueHs: (Math.round(ecoVentSavings / 3600 * FU * 1000) / 1000) });\r\n if (dacInfo.potNominal) {\r\n descr += ` = ${Math.round(ecoVentSavings / 3600 * dacInfo.potNominal * FU * 10) / 10} kWh`;\r\n if (unitInfo.averageTariff) {\r\n descr += ` = R$ ${(timeSavedEst * dacInfo.potNominal * unitInfo.averageTariff).toFixed(2)} (tarifa ${unitInfo.averageTariff.toFixed(2)})`;\r\n }\r\n }\r\n }\r\n dacInfo.conclusions.push(descr);\r\n }\r\n\r\n if (dacStats.inL1.on) {\r\n // const timeInOperation = dacStats.inL1.on / 3600;\r\n // let savingsTotal = `${Math.round(timeSavedEst * 1000) / 1000} / (${Math.round(timeSavedEst * 1000) / 1000} + ${Math.round(timeInOperation * 1000) / 1000}) = ${Math.round(timeSavedEst / (timeSavedEst + timeInOperation) * 100 * 10) / 10}%.`;\r\n if (state.daySched && state.daySched.type === 'allow') {\r\n const hoursAllowed = (state.daySched.indexEnd - state.daySched.indexIni + 1) / 60;\r\n const expectHoursOff = hoursAllowed * (1 - FU);\r\n if (ecoVentSavings) {\r\n dacInfo.conclusions.push(t('comparandoTempoAtuacaoEstrategiaEconomiaComHorarioFuncionamento', { valueHs1: (Math.round(ecoVentSavings / 3600 * 1000) / 1000), valueHs2: (Math.round(hoursAllowed * 1000) / 1000), valueHs3: (Math.round(ecoVentSavings / 3600 / hoursAllowed * 1000) / 10) }));\r\n }\r\n dacInfo.conclusions.push(t('considerandoProgramacaoFuCompressor', { value1: (FU.toFixed(2)), value2: (Math.round(hoursAllowed * FU * 1000) / 1000), value3: (Math.round(expectHoursOff * 1000) / 1000) }));\r\n dacInfo.conclusions.push(t('consideradoDacFicou', {\r\n tempoLig: tempoLigado,\r\n tempoDes: tempoDesligado,\r\n tempoOff: dacStats.inProg_B.ignr,\r\n value1: Math.round(tempoLigado / 3600 * 1000) / 1000,\r\n value2: Math.round(tempoDesligado / 3600 * 1000) / 1000,\r\n value3: Math.round(dacStats.inProg_B.ignr / 3600 * 1000) / 1000,\r\n }));\r\n dacInfo.conclusions.push(t('foiConsideradoDacFicou', {\r\n tempoLigado,\r\n tempoDesligado,\r\n tempoOff: dacStats.inProg_B.ignr,\r\n value1: (Math.round(tempoLigado / 3600 * 1000) / 1000),\r\n value2: (Math.round(tempoDesligado / 3600 * 1000) / 1000),\r\n value3: (Math.round(dacStats.inProg_B.ignr / 3600 * 1000) / 1000),\r\n }));\r\n // A equação é a economia do modo ECO e ventilação (7.511) menos o tempo que a máquina naturalmente já ficaria com o compressor desligado.\r\n\r\n // const savingsHours_A = ((ecoVentSavings / 3600) - expectHoursOff);\r\n // dacInfo.conclusions.push(`Economia total A: ${Math.round(ecoVentSavings / 3600 * 1000) / 1000} - ${Math.round(expectHoursOff * 1000) / 1000} = ${Math.round(savingsHours_A * 1000) / 1000} hs.`);\r\n\r\n const savingsHours_B = ((tempoDesligado / 3600) - expectHoursOff);\r\n let economiaTotal = t('economiaTotalHs', { valueHs1: (Math.round(tempoDesligado / 3600 * 1000) / 1000), valueHs2: (Math.round(expectHoursOff * 1000) / 1000), valueHs3: (Math.round(savingsHours_B * 1000) / 1000) });\r\n if (dacInfo.potNominal) {\r\n economiaTotal += ` = ${Math.round(savingsHours_B * dacInfo.potNominal * 10) / 10} kWh`;\r\n if (unitInfo.averageTariff) {\r\n economiaTotal += t('economiaTotalRS', { value1: (savingsHours_B * dacInfo.potNominal * unitInfo.averageTariff).toFixed(2), value2: unitInfo.averageTariff.toFixed(2) });\r\n }\r\n }\r\n dacInfo.conclusions.push(economiaTotal);\r\n }\r\n }\r\n }\r\n\r\n // ESAVED = ESAVED_TIME + ESAVED_ECO\r\n // ESAVED_TIME: Energia economizada com a programação horária.\r\n // ESAVED_ECO: Energia economizada com o modo ECO dentro do horário permitido de funcionamento.\r\n\r\n // ESAVED_ECO = ENOMINAL - EECO\r\n // ENOMINAL = (PNOMINAL x tTOTAL_PERM) x FUNOMINAL\r\n // EECO = (ECOND1 + ECOND2 + ECOND3 + EVENT) x mode\r\n // ECOND2 = PCOND2 x (tENABLED+ tCOND2)\r\n // ECOND1 = PCOND1 x tENABLED\r\n // EVENT = PVENT x tVENT\r\n }\r\n\r\n function identifyConds() {\r\n const groups = [] as string[];\r\n for (const dacInfo of state.dacsCharts) {\r\n if (!dacInfo.groupId) continue;\r\n if (!groups.includes(dacInfo.groupId)) {\r\n groups.push(dacInfo.groupId);\r\n }\r\n }\r\n for (const groupId of groups) {\r\n const dacsInfo = state.dacsCharts.filter((x) => x.groupId === groupId);\r\n\r\n if (dacsInfo.length < 2) {\r\n dacsInfo[0].isCond1 = true;\r\n dacsInfo[0].isCond2 = false;\r\n continue;\r\n }\r\n\r\n let cond1_hits = 0;\r\n let cond2_hits = 0;\r\n for (const dac of dacsInfo) {\r\n cond1_hits += dac.stateStats.cond1_hit;\r\n cond2_hits += dac.stateStats.cond2_hit;\r\n }\r\n let cond1: null|{ stateStats: { cond1_hit: number } } = null;\r\n let cond2: null|{ stateStats: { cond2_hit: number } } = null;\r\n\r\n if (cond2_hits > cond1_hits) {\r\n for (const dac of dacsInfo) {\r\n if ((cond2 == null) || (dac.stateStats.cond2_hit > cond2.stateStats.cond2_hit)) {\r\n cond2 = dac;\r\n }\r\n }\r\n for (const dac of dacsInfo) {\r\n if (dac === cond2) continue;\r\n if ((cond1 == null) || (dac.stateStats.cond1_hit > cond1.stateStats.cond1_hit)) {\r\n cond1 = dac;\r\n }\r\n }\r\n } else {\r\n for (const dac of dacsInfo) {\r\n if ((cond1 == null) || (dac.stateStats.cond1_hit > cond1.stateStats.cond1_hit)) {\r\n cond1 = dac;\r\n }\r\n }\r\n for (const dac of dacsInfo) {\r\n if (dac === cond1) continue;\r\n if ((cond2 == null) || (dac.stateStats.cond2_hit > cond2.stateStats.cond2_hit)) {\r\n cond2 = dac;\r\n }\r\n }\r\n }\r\n\r\n for (const dac of dacsInfo) {\r\n dac.isCond1 = (dac === cond1);\r\n dac.isCond2 = (dac === cond2);\r\n }\r\n }\r\n }\r\n\r\n function fillGaps() {\r\n const conversions: { [k: string]: string } = {\r\n // 'Disabling': 'Disabled',\r\n // 'Enabling': 'Enabled',\r\n // 'Starting Ventilation': 'Ventilation',\r\n // 'Enabling Condenser 1': 'Condenser 1',\r\n // 'Enabling Condenser 2': 'Condenser 2',\r\n };\r\n\r\n let lastState = null as null|string;\r\n let lastMode = null as null|string;\r\n let accOfflineState = 0;\r\n let accOfflineMode = 0;\r\n for (let iR = 0; iR < state.asTable.length; iR++) {\r\n const row = state.asTable[iR];\r\n const rowDuration = row[0] as number;\r\n const rowMode = row[2] as string;\r\n const rowState = row[3] as string;\r\n if (!rowState) {\r\n accOfflineState += rowDuration;\r\n } else {\r\n if ((accOfflineState > 0) && (accOfflineState < 20 * 60)) {\r\n const currState = conversions[rowState] || rowState;\r\n if (currState === lastState) {\r\n let j = iR - 1;\r\n while ((j >= 0) && !state.asTable[j][3]) {\r\n state.asTable[j][3] = lastState;\r\n j--;\r\n }\r\n }\r\n }\r\n if (lastState !== rowState) {\r\n lastState = conversions[rowState] || rowState;\r\n }\r\n accOfflineState = 0;\r\n }\r\n if (!rowMode) {\r\n accOfflineMode += rowDuration;\r\n } else {\r\n if ((accOfflineMode > 0) && (accOfflineMode < 20 * 60)) {\r\n const currMode = rowMode;\r\n if (currMode === lastMode) {\r\n let j = iR - 1;\r\n while ((j >= 0) && !state.asTable[j][2]) {\r\n state.asTable[j][2] = lastMode;\r\n j--;\r\n }\r\n }\r\n }\r\n if (lastMode !== rowMode) {\r\n lastMode = rowMode;\r\n }\r\n accOfflineMode = 0;\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n fetchServerData();\r\n }, []);\r\n\r\n useEffect(() => {\r\n updateChartData();\r\n }, [state.devInfo, JSON.stringify(state.date)]);\r\n\r\n const { axisInfo, graphEnable, damCharts } = state;\r\n\r\n const isDesktop = window.matchMedia('(min-width: 768px)');\r\n const isMobile = !isDesktop;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {t('Filtrar por')}\r\n setState({ isModalOpen: false })} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {(isMobile)\r\n && (\r\n \r\n \r\n
setState({ isModalOpen: true })}>\r\n \r\n
\r\n
\r\n
\r\n )}\r\n \r\n {(isDesktop) && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {(!state.date) ? : null}\r\n\r\n {state.date && (\r\n \r\n \r\n \r\n {state.isLoading && (\r\n \r\n \r\n \r\n )}\r\n state.date!.clone().add(x, 'h').toISOString(true)),\r\n tickformat: '%-H',\r\n hoverformat: '%H:%M:%S',\r\n },\r\n yaxis: {\r\n title: null,\r\n showgrid: true,\r\n zeroline: false,\r\n showline: true,\r\n range: axisInfo.leftLimits,\r\n tickvals: axisInfo.leftTicks,\r\n ticktext: axisInfo.leftTicksLabels,\r\n },\r\n yaxis2: {\r\n title: 'Umidade',\r\n showgrid: true,\r\n zeroline: false,\r\n showline: true,\r\n overlaying: 'y',\r\n range: axisInfo.rightLimits,\r\n tickvals: axisInfo.rightTicks,\r\n ticktext: axisInfo.rightTickLabels,\r\n side: 'right',\r\n },\r\n hovermode: 'x unified',\r\n hoverdistance: 1920,\r\n hoverlabel: {\r\n bgcolor: 'rgba(255, 255, 255, 0.7)',\r\n font: {\r\n color: colors.Black,\r\n },\r\n },\r\n }}\r\n config={{ responsive: true }}\r\n style={{ width: '100%' }}\r\n />\r\n \r\n \r\n \r\n )}\r\n \r\n\r\n {(state.profile.manageAllClients && state.asTable && state.asTable.length > 0)\r\n && (\r\n \r\n
\r\n

\r\n

{state.conclusionsDam.join('\\n')}
\r\n

\r\n {(state.dacsCharts || []).map((dacInfo) => (\r\n
\r\n

\r\n \r\n {dacInfo.dacId}\r\n :\r\n \r\n

\r\n
{dacInfo.conclusions.join('\\n')}
\r\n
\r\n ))}\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.dacsCols.map((dacId, idac) => (\r\n <>\r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n \r\n {state.asTable.map((row, irow) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {state.dacsCols.map((dacId, idac) => (\r\n <>\r\n \r\n \r\n \r\n ))}\r\n \r\n ))}\r\n \r\n
{t('duracaoS')}Prog{t('modo')}{t('estadoAtual')}{t('modoEco')}{t('modoEconomia')}L1{dacId}
{formatNumberWithFractionDigits(row[0])}{row[1]}{row[2]}{row[3]}{row[4]}{row[5]}{row[6 + 2 * idac]}{row[6 + 2 * idac + 1]}
\r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction convertToTime(index: number) {\r\n if (index == null) return '';\r\n const hours = Math.floor(index / 3600).toString().padStart(2, '0');\r\n const minutes = Math.floor((index % 3600) / 60).toString().padStart(2, '0');\r\n const seconds = Math.floor(index % 60).toString().padStart(2, '0');\r\n return `${hours}:${minutes}:${seconds}`;\r\n}\r\n\r\nconst GraphWrapper = styled.div`\r\n width: 100%;\r\n position: relative;\r\n height: 100%;\r\n`;\r\n\r\nconst ModalMobile = styled.div<{ isModalOpen }>(\r\n ({ isModalOpen }) => `\r\n display:${isModalOpen ? 'block' : 'none'};\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n background-color: ${colors.White};\r\n width: 100%;\r\n height: 100vh;\r\n z-index: 1;\r\n overflow: hidden;\r\n transition: all .5s ease-in-out;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`,\r\n);\r\n\r\nconst ModalSection = styled.div`\r\n width: 100%;\r\n height: 80px;\r\n background: ${colors.Grey030};\r\n border-bottom: 2px solid ${colors.Grey100};\r\n box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);\r\n`;\r\n\r\nconst ModalTitleContainer = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: 100%;\r\n width: 100%;\r\n padding: 16px;\r\n svg {\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nconst ModalTitle = styled.span`\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nconst CardWrapper = styled.div`\r\n padding: 32px 24px;\r\n margin-top: 24px;\r\n background: ${colors.White};\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nconst Table = styled.table`\r\n white-space: nowrap;\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const ControlButtonIcon = styled.img<{ isActive?: boolean, status?: string }>`\r\n max-width: 100%;\r\n ${({ isActive }) => (isActive ? 'filter: brightness(10)' : '')};\r\n ${({ status }) => (status === 'ONLINE' ? '' : 'filter: contrast(0)')};\r\n`;\r\n\r\nexport const ControlButton = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: 70px;\r\n height: 70px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n`;\r\n\r\nexport const HistoryContainerQA = styled.div`\r\n`;\r\n\r\nexport const SetpointButton = styled.div<{ up?: boolean, down?: boolean }>`\r\n flex-basis: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-right: 1px solid #D7D7D7;\r\n user-select: none;\r\n ${({ up }) => (up ? 'border-bottom: 1px solid #D7D7D7' : '')}\r\n ${({ down }) => (down ? 'border-top: 1px solid #D7D7D7' : '')}\r\n`;\r\n\r\nexport const SelectContainer = styled.div`\r\n position: fixed;\r\n background: white;\r\n border: 1px solid #d3d3d3;\r\n border-radius: 10px;\r\n`;\r\n","import { colors } from '~/styles/colors';\r\nimport styled, { css } from 'styled-components';\r\nimport { Link } from 'react-router-dom';\r\n\r\nexport const CardContent = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n gap: 12px;\r\n\r\n button {\r\n width: 134px;\r\n }\r\n`;\r\n\r\nexport const CardHeader = styled.div`\r\n display: flex;\r\n gap: 8px;\r\n\r\n h1 {\r\n margin: 0;\r\n\r\n color: #000;\r\n\r\n font-family: Inter;\r\n font-size: 14px;\r\n font-weight: 700;\r\n }\r\n\r\n p {\r\n margin: 0;\r\n\r\n color: #4B4B4B\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n }\r\n`;\r\n\r\nexport const SearchBarWrapper = styled.div`\r\n display: flex;\r\n align-items: center;\r\n\r\n height: 33px;\r\n width: min-content;\r\n border: 0.8px solid #C5C5C58F;\r\n border-radius: 8px;\r\n\r\n padding-left: 12px;\r\n\r\n input {\r\n border: none;\r\n outline: none;\r\n border-radius: 8px;\r\n\r\n color: #000000;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n\r\n &::placeholder {\r\n color: #000000;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n }\r\n }\r\n\r\n div {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n width: 33px;\r\n height: 33px;\r\n\r\n svg {\r\n width: 13px;\r\n height: 13px;\r\n\r\n path {\r\n fill: #363BC4;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const Tabs = styled.div`\r\n display: flex;\r\n gap: 5px;\r\n`;\r\n\r\nexport const TabOption = styled.span<{active?: boolean}>`\r\n position: relative;\r\n\r\n width: 176px;\r\n height: 34px;\r\n\r\n padding: 8px 25px;\r\n\r\n border-radius: 8px 8px 0 0;\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-bottom: none;\r\n\r\n color: ${colors.Black};\r\n\r\n text-align: center;\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-style: normal;\r\n font-weight: 700;\r\n line-height: 20px;\r\n\r\n ${({ active = false }) => {\r\n if (active) {\r\n return css`\r\n background-color: white;\r\n `;\r\n }\r\n\r\n return css`\r\n background-color: #F4F4F4;\r\n cursor: pointer;\r\n `;\r\n }}\r\n`;\r\n\r\nexport const ModelListContainer = styled.div`\r\n overflow-y: scroll;\r\n\r\n background-color: #f9f9f9;\r\n border: 1px solid #e3e3e3;\r\n border-bottom-left-radius: 7px;\r\n border-bottom-right-radius: 7px;\r\n\r\n display: flex;\r\n flex-direction: column;\r\n gap: 8px;\r\n\r\n height: 195px;\r\n max-height: 195px;\r\n padding: 12px;\r\n`;\r\n\r\nexport const ModelRow = styled.div<{isSelected?: boolean}>`\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n\r\n padding: 8px 12px;\r\n border: 1px solid #68686833;\r\n border-radius: 5px;\r\n\r\n background: #FFFFFF;\r\n\r\n cursor: pointer;\r\n\r\n p {\r\n margin: 0;\r\n\r\n color: #464555;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 500;\r\n }\r\n\r\n svg {\r\n cursor: pointer;\r\n }\r\n\r\n ${({ isSelected = false }) => isSelected && css`\r\n background: #363BC4;\r\n\r\n cursor: unset;\r\n\r\n p {\r\n color: #FFFFFF;\r\n }\r\n\r\n svg {\r\n path {\r\n stroke: #FFFFFF;\r\n }\r\n }\r\n `}\r\n`;\r\n\r\nexport const EmptyContent = styled.div`\r\n width: 100%;\r\n height: 100%;\r\n\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n gap: 8px;\r\n\r\n p {\r\n width: 214px;\r\n margin: 0;\r\n\r\n color: #818181;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 600;\r\n text-align: center;\r\n }\r\n`;\r\n\r\nexport const TitleSectionDropdown = styled.div<{ isOpen?: boolean }>`\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n\r\n padding: 4px 8px;\r\n\r\n width: max-content;\r\n\r\n border: 0.8px solid rgba(80, 80, 80, 0.17);\r\n border-radius: 8px;\r\n\r\n box-shadow: 0px 3px 3px 0px rgba(0, 0, 0, 0.03);\r\n\r\n cursor: pointer;\r\n\r\n span {\r\n color: #000000;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n text-align: center;\r\n }\r\n\r\n div {\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n }\r\n\r\n svg {\r\n width: 7.5px;\r\n height: 7.5px;\r\n }\r\n\r\n ${({ isOpen = false }) => !isOpen && css`\r\n div {\r\n transform: rotate(270deg);\r\n }\r\n `}\r\n`;\r\n\r\nexport const DateExportRow = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n`;\r\n\r\nexport const ResultContainer = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n gap: 12px;\r\n\r\n position: relative;\r\n`;\r\n\r\nexport const ResultContainerOverlay = styled.div`\r\n height: 80%;\r\n width: 100%;\r\n\r\n position: absolute;\r\n top: 0;\r\n\r\n background-color: white;\r\n\r\n opacity: 0.6;\r\n`;\r\n\r\nexport const AnalisysResult = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n gap: 12px;\r\n`;\r\n\r\nexport const NoAnalisysSelected = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n\r\n border: 1px solid #0000000F;\r\n border-radius: 10px;\r\n\r\n background: #F9F9F9;\r\n\r\n height: 273px;\r\n\r\n color: #7D7D7D;\r\n\r\n span {\r\n margin: 0;\r\n\r\n font-family: Inter;\r\n font-size: 13px;\r\n font-weight: 700;\r\n text-align: center;\r\n }\r\n\r\n p {\r\n margin: 0;\r\n\r\n font-family: Inter;\r\n font-size: 10px;\r\n font-weight: 500;\r\n text-align: center;\r\n }\r\n`;\r\n\r\nexport const DateWrapper = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n gap: 8px;\r\n\r\n .DayPicker {\r\n z-index: 300;\r\n\r\n position: absolute;\r\n top: 200%;\r\n left: 0%;\r\n }\r\n .DayPickerKeyboardShortcuts_buttonReset {\r\n &::before {\r\n display: none;\r\n }\r\n }\r\n .CalendarMonth_caption {\r\n color: #000;\r\n text-transform: capitalize;\r\n }\r\n .CalendarDay__selected {\r\n background: #363BC4;\r\n border-color: #363BC4;\r\n font-weight: bold;\r\n }\r\n .CalendarDay__selected:hover {\r\n background: #363BC4;\r\n border-color: #363BC4;\r\n }\r\n .CalendarDay__selected_span {\r\n background: #D0D2F1;\r\n border: 1px double #F4EBEB;\r\n color: #000;\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n display: none;\r\n }\r\n .CalendarDay__hovered_span, .CalendarDay__hovered_span:hover {\r\n background: #E5E6F8;\r\n border: 1px double #F4EBEB;\r\n color: #000;\r\n }\r\n .CalendarDay__selected_span:hover {\r\n background: #B5B7DD;\r\n border: 1px double #B5B7DD;\r\n color: #fff;\r\n }\r\n`;\r\n\r\nexport const DateButton = styled.div<{ disabled?: boolean }>(\r\n ({ disabled }) => `\r\n width: max-content;\r\n height: 30px;\r\n min-height: 30px;\r\n position: relative;\r\n\r\n display: flex;\r\n gap: 8px;\r\n align-items: center;\r\n\r\n padding: 0 12px;\r\n\r\n border: 1px solid #C5C5C58F;\r\n border-radius: 8px;\r\n\r\n cursor: pointer;\r\n\r\n p {\r\n margin: 0;\r\n color: #000;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n }\r\n\r\n ${disabled && `\r\n opacity: 0.5;\r\n cursor: not-allowed;\r\n `}\r\n`,\r\n);\r\n\r\nexport const DateButtonActions = styled.div<{ disabled?: boolean }>(\r\n ({ disabled }) => `\r\n width: 100%;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n\r\n span {\r\n margin: 0;\r\n color: #363BC4;\r\n\r\n font-family: Inter;\r\n font-size: 11px;\r\n text-decoration: underline;\r\n cursor: pointer;\r\n }\r\n ${disabled && `\r\n opacity: 0.5;\r\n cursor: not-allowed;\r\n `}\r\n`,\r\n);\r\n\r\nexport const StatusColor = styled.div<{color?: string}>`\r\n width: 11px;\r\n height: 11px;\r\n border-radius: 3px;\r\n\r\n ${({ color = '#00A74A' }) => css`\r\n background: ${color}\r\n `}\r\n`;\r\n\r\nexport const ResultsResume = styled.div`\r\n display: flex;\r\n align-items: start;\r\n justify-content: center;\r\n\r\n gap: 40px;\r\n\r\n border-radius: 9px;\r\n border: 1px solid #e3e3e3;\r\n\r\n background-color: #f9f9f9;\r\n\r\n width: 100%;\r\n height: 100%;\r\n`;\r\n\r\nexport const ResultsContent = styled.div`\r\n height: 100%;\r\n padding: 22px 0;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n p{\r\n text-align: center;\r\n margin: 0;\r\n }\r\n`;\r\n\r\nexport const ResultsContentEF = styled.div<{ qtdCharacteres?: number }>`\r\n height: 100%;\r\n padding: 22px 0;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n p{\r\n text-align: center;\r\n margin: 0;\r\n }\r\n\r\n ${({ qtdCharacteres }) => qtdCharacteres === 1 && css`\r\n max-width: 145px;\r\n width: 100%;\r\n `}\r\n\r\n ${({ qtdCharacteres }) => qtdCharacteres === 2 && css`\r\n max-width: 175px;\r\n width: 100%;\r\n `}\r\n\r\n ${({ qtdCharacteres }) => qtdCharacteres === 3 && css`\r\n max-width: 240px;\r\n width: 100%;\r\n `}\r\n\r\n ${({ qtdCharacteres }) => qtdCharacteres === 4 && css`\r\n max-width: 330px;\r\n width: 100%;\r\n `}\r\n`;\r\n\r\nexport const EnergyEfficiencyItem = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n gap: 4px;\r\n width: 100%;\r\n`;\r\n\r\nexport const EnergyEfficiencyBar = styled.div<{\r\n barColor: string;\r\n barHeight: string;\r\n}>`\r\n width: 14px;\r\n border-radius: 0 0 3px 3px;\r\n display: flex;\r\n justify-content: center;\r\n align-items: start;\r\n ${({ barColor, barHeight }) => css`\r\n background: ${barColor};\r\n height: ${barHeight};\r\n `}\r\n font-size: 10px;\r\n font-weight: 500;\r\n color: #000000;\r\n margin: 0;\r\n`;\r\n\r\nexport const ExportButton = styled.div<{ disabled?: boolean }>(\r\n ({ disabled }) => `\r\n padding: 5px;\r\n display: flex;\r\n flex-direction: row;\r\n width: 97px;\r\n height: max-content;\r\n justify-content: space-around;\r\n align-items: center;\r\n text-align: center;\r\n border-radius: 11px;\r\n border: 1px solid;\r\n border-color: #e3e3e3;\r\n cursor: pointer;\r\n\r\n ${disabled && `\r\n opacity: 0.5;\r\n cursor: not-allowed;\r\n `}\r\n`,\r\n);\r\n\r\nexport const ShowProblemDataWrapper = styled.div`\r\n display: flex;\r\n justify-content: start;\r\n align-items: center;\r\n gap: 4px;\r\n`;\r\n\r\nexport const NoInfoTooltip = styled.div`\r\n display: flex;\r\n gap: 8px;\r\n max-width: 172px;\r\n\r\n div {\r\n display: flex;\r\n flex-direction: column;\r\n gap: 8px;\r\n\r\n max-width: 142px;\r\n }\r\n\r\n span {\r\n margin: 0;\r\n color: #FFFFFF;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 700;\r\n\r\n white-space: normal;\r\n }\r\n\r\n p {\r\n margin: 0;\r\n color: #FFFFFF;\r\n\r\n font-family: Inter;\r\n font-size: 11px;\r\n font-weight: 400;\r\n\r\n white-space: normal;\r\n }\r\n`;\r\n\r\nexport const UnitLink = styled(Link)`\r\n color: #000000;\r\n\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n text-decoration: underline;\r\n`;\r\n\r\nexport const NoInfoIcon = styled.span`\r\n display: flex;\r\n justify-content: center;\r\n`;\r\n\r\nexport const LoaderOverlay = styled.div`\r\n position: absolute;\r\n top: 0;\r\n\r\n background-color: ${`${colors.Grey030}99`};\r\n\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n border-radius: 10px;\r\n\r\n width: 100%;\r\n height: 100%;\r\n`;\r\n\r\nexport const TableWrapper = styled.div`\r\n padding: 20px 29px 20px 21px;\r\n`;\r\n\r\nexport const SelectOptionStyled = styled.button<{ selected: boolean }>`\r\n display: flex;\r\n align-items: center;\r\n gap: 8px;\r\n\r\n height: 41px;\r\n width: 100%;\r\n\r\n border: none;\r\n background: transparent;\r\n padding: 10px;\r\n\r\n border-left: 5px solid transparent;\r\n\r\n ${({ selected }) => selected\r\n && css`\r\n border-left: 5px solid #363BC4;\r\n `}\r\n`;\r\n","type EmptyDocumentIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const EmptyDocumentIcon = ({ color = '#818181', ...props }: EmptyDocumentIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n);\r\n","import React, { useState, useEffect, useCallback } from 'react';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport { SketchPicker } from 'react-color';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Label, LineChart, Line, ReferenceLine, Tooltip,\r\n} from 'recharts';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\nimport {\r\n Button, Datepicker, Loader, ModalWindow,\r\n} from '~/components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { LineIcon, CloseIcon } from '~/icons';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { t } from 'i18next';\r\nimport { NoGraph } from '~/components/NoGraph';\r\nimport { HistoryContainerQA } from './styles';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport {\r\n BtnExport, CloseBtnIcon, ModalContent, OptionColor,\r\n} from '~/components/EnvGroupAnalysis/styles';\r\nimport {\r\n ColorsPalet,\r\n} from '~/components/EnvGroupAnalysis';\r\nimport moment from 'moment';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\nimport { toast } from 'react-toastify';\r\nimport { NoAnalisysSelected } from '~/pages/General/styles';\r\nimport { EmptyDocumentIcon } from '~/icons/EmptyDocumentIcon';\r\n\r\nconst ticksXgraph = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24];\r\n\r\nexport const DUTHistory = (): JSX.Element => {\r\n const routeParams = useParams<{ devId }>();\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaHistorico')}\r\n \r\n \r\n {/* @ts-ignore */}\r\n \r\n );\r\n};\r\n\r\nexport function DUTHistoryContents({ onDevInfoUpdate = undefined }): JSX.Element {\r\n const { devId } = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n devInfo: getCachedDevInfoSync(devId),\r\n dutInfo: null,\r\n graphDataX: undefined as any,\r\n isLoading: false,\r\n useMaxGraphData: null as null|{},\r\n useMinGraphData: null as null|{},\r\n useCO2LimitGraphData: null as null|{},\r\n showLimits: true,\r\n showCO2Limits: false,\r\n daySched: null as null | { TUSEMIN: number, TUSEMAX: number, indexEnd: number, indexIni: number },\r\n isDutQA: true,\r\n groupGraph: false,\r\n isModalOpen: false,\r\n dateStart: null as null|moment.Moment,\r\n dateEnd: null as null|moment.Moment,\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n focused: false,\r\n focusedInput: null as 'endDate' | 'startDate' | null,\r\n multiDays: false,\r\n numDays: 1 as number,\r\n refAreaLeft: null as null | number,\r\n refAreaRight: null as null | number,\r\n xDomain: null as null | [number, number],\r\n xTicks: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24] as number[],\r\n axisInfo: {\r\n tempLimits: [10, 40],\r\n tempTicks: [10, 15, 20, 25, 30, 35, 40],\r\n humLimits: [0, 100],\r\n humTicks: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100],\r\n eCO2Ticks: [200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800],\r\n eCO2Domain: [200, 1800],\r\n L1start: 0,\r\n },\r\n humLineInfo: {\r\n lineColorObj: {\r\n lineColor: '#2D81FF',\r\n isDisplayColorVisible: false,\r\n text: 'Umidade [%]',\r\n },\r\n limitColorObj: {\r\n lineColor: '#1E5DBA',\r\n isDisplayColorVisible: false,\r\n text: 'Limite umidade [%]',\r\n },\r\n lineColor: '#2D81FF',\r\n colorLimit: '#1E5DBA',\r\n isVisible: true,\r\n isLimitVisible: true,\r\n isDisplayColorVisible: false,\r\n },\r\n tempLineInfo: {\r\n lineColorObj: {\r\n lineColor: '#E00030',\r\n isDisplayColorVisible: false,\r\n text: 'Temperatura [°C]',\r\n },\r\n limitColorObj: {\r\n lineColor: '#8C001E',\r\n isDisplayColorVisible: false,\r\n text: 'Limite de Temperatura [°C]',\r\n },\r\n lineColor: '#E00030',\r\n colorLimit: '#8C001E',\r\n isVisible: true,\r\n isLimitVisible: true,\r\n isDisplayColorVisible: false,\r\n },\r\n temp1LineInfo: {\r\n lineColor: 'rgb(255, 190, 22)',\r\n isVisible: true,\r\n },\r\n L1LineInfo: {\r\n lineColor: '#000',\r\n isVisible: true,\r\n },\r\n co2LineInfo: {\r\n lineColorObj: {\r\n lineColor: '#FFBE16',\r\n isDisplayColorVisible: false,\r\n text: 'CO₂ [ppm]',\r\n },\r\n limitColorObj: {\r\n lineColor: '#C68F00',\r\n isDisplayColorVisible: false,\r\n text: 'Limite de CO₂ [ppm]',\r\n },\r\n lineColor: '#FFBE16',\r\n colorLimit: '#C68F00',\r\n isVisible: true,\r\n isLimitVisible: true,\r\n isDisplayColorVisible: false,\r\n },\r\n hasL1: false,\r\n };\r\n return state;\r\n });\r\n const [date, setDate] = useState(null as null|moment.Moment);\r\n const [graphData, setGraphData] = useState({});\r\n const [isModalOpen, setIsModalOpen] = useState(false);\r\n const [graphEnable, setGraphEnable] = useState({\r\n Temperature: true,\r\n Temperature_1: true,\r\n Humidity: true,\r\n eCO2: true,\r\n TVOC: false,\r\n L1: true,\r\n });\r\n\r\n const [axisInfo, setAxisInfo] = useState({\r\n tempLimits: [10, 40],\r\n tempTicks: [10, 15, 20, 25, 30, 35, 40],\r\n humLimits: [0, 100],\r\n humTicks: [0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100],\r\n eCO2Ticks: [200, 400, 600, 800, 1000, 1200, 1400, 1600, 1800],\r\n eCO2Domain: [200, 1800],\r\n L1start: 0,\r\n });\r\n\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n const devInfo = await getCachedDevInfo(devId, {});\r\n // @ts-ignore\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n // @ts-ignore\r\n const dutInfo = devInfo.dut;\r\n // @ts-ignore\r\n\r\n ({ devInfo, dutInfo });\r\n }).catch(console.log);\r\n }, []);\r\n\r\n function proximoMultiploDeCinco(num) {\r\n if (num % 5 === 0) {\r\n return num;\r\n }\r\n return Math.ceil(num / 5) * 5;\r\n }\r\n\r\n useEffect(() => {\r\n if (!state.devInfo || !date) return;\r\n Promise.resolve().then(async () => {\r\n setState({ isLoading: true });\r\n\r\n try {\r\n const params = {\r\n devId,\r\n day: date.format().substring(0, 10),\r\n selectedParams: ['Temperature', 'Temperature_1', 'Humidity', 'eCO2', 'L1'],\r\n numDays: 1,\r\n };\r\n const dutHist = await apiCall('/dut/get-day-charts-data-commonX', params);\r\n const maxValue = dutHist.daySched?.TUSEMAX ? dutHist.daySched?.TUSEMAX + 5 : 30;\r\n const minValue = dutHist.daySched?.TUSEMIN ? dutHist.daySched?.TUSEMIN - 5 : -35;\r\n state.axisInfo.tempLimits[0] = dutHist.axisInfo.tempLimits[0] > 0 ? 0 : Math.max(Math.min(...dutHist.Temperature.y, minValue), -40);\r\n state.axisInfo.tempLimits[1] = dutHist.Temperature?.y.length ? proximoMultiploDeCinco(Math.max(...dutHist.Temperature.y, maxValue)) : 40;\r\n if (dutHist.daySched) state.daySched = dutHist.daySched;\r\n state.graphDataX = dutHist;\r\n state.hasL1 = dutHist.L1?.y?.some((item) => item !== null);\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErroBuscandoGrafico')); }\r\n state.isLoading = false;\r\n render();\r\n });\r\n }, [date, state.devInfo]);\r\n\r\n useEffect(() => {\r\n const { dutInfo } = state;\r\n\r\n if (state.daySched) {\r\n const indexIni = state.daySched.indexIni / 60;\r\n const indexEnd = state.daySched.indexEnd / 60;\r\n let useMaxGraphData = null as null|{};\r\n if (state.daySched.TUSEMAX != null) {\r\n useMaxGraphData = [\r\n { x: indexIni, y: state.daySched.TUSEMAX },\r\n { x: indexEnd, y: state.daySched.TUSEMAX },\r\n ];\r\n }\r\n let useMinGraphData = null as null|{};\r\n if (state.daySched.TUSEMIN != null) {\r\n useMinGraphData = [\r\n { x: indexIni, y: state.daySched.TUSEMIN },\r\n { x: indexEnd, y: state.daySched.TUSEMIN },\r\n ];\r\n }\r\n let useCO2LimitGraphData = null as null|{};\r\n // @ts-ignore\r\n if (dutInfo && dutInfo.CO2MAX != null) {\r\n useCO2LimitGraphData = [\r\n // @ts-ignore\r\n { x: 0, y: dutInfo.CO2MAX },\r\n // @ts-ignore\r\n { x: 24, y: dutInfo.CO2MAX },\r\n ];\r\n }\r\n\r\n setState({ useMaxGraphData, useMinGraphData, useCO2LimitGraphData });\r\n }\r\n }, [state.dutInfo, state.daySched, JSON.stringify(date)]);\r\n\r\n const handleChange = (name) => {\r\n setGraphEnable({ ...graphEnable, [name]: !graphEnable[name] });\r\n };\r\n\r\n const setFormattedDate = useCallback((date) => setDate(date ? date.set({ hour: 0 }) : null), []);\r\n\r\n const DesktopFiltering = () => (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n\r\n if (state.isLoading) {\r\n return ;\r\n }\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n {t('Filtrar por')}\r\n setIsModalOpen(false)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
setIsModalOpen(true)}>\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nfunction tooltipXLabelFormater(hour: number, day) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(\r\n `${moment(day).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`,\r\n );\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const finalDate = `${dd}/${mm}`;\r\n\r\n const hh = String(Math.floor(Math.abs(hour)) - 24 * numDays);\r\n const min = String(Math.floor((Math.abs(hour) * 60) % 60));\r\n const ss = String(Math.floor((Math.abs(hour) * 60 * 60) % 60));\r\n\r\n return (\r\n

\r\n {finalDate}\r\n {' '}\r\n -\r\n {' '}\r\n \r\n {`${hh.padStart(2, '0')}:${min.padStart(\r\n 2,\r\n '0',\r\n )}:${ss.padStart(2, '0')}`}\r\n \r\n

\r\n );\r\n}\r\n\r\nfunction returnUnityMeasure(payload): string {\r\n if (payload.unit === 'Temperatura') return `${payload.value} °C`;\r\n if (payload.unit === 'Umidade') return `${payload.value} %`;\r\n if (payload.unit === 'CO₂') return `${payload.value} ppm`;\r\n return payload.value;\r\n}\r\n\r\nfunction tickXLabelFormaterHour(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n\r\n return `${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}`;\r\n}\r\n\r\nconst CustomTooltip = ({\r\n payload, limitData, date, label,\r\n}) => {\r\n const { limitInfo, dut } = limitData;\r\n const { tempLineInfo, humLineInfo, co2LineInfo } = limitInfo;\r\n\r\n if (payload?.length) {\r\n const minTemp = dut?.TUSEMIN && `${formatNumberWithFractionDigits(dut.TUSEMIN)} ºC min` || '';\r\n const maxTemp = dut?.TUSEMAX && `${formatNumberWithFractionDigits(dut?.TUSEMAX)}ºC max` || '';\r\n const minHum = dut?.HUMIMIN && `${formatNumberWithFractionDigits(dut?.HUMIMIN)}% min` || '';\r\n const maxHum = dut?.HUMIMAX && `${formatNumberWithFractionDigits(dut?.HUMIMAX)}% max` || '';\r\n return (\r\n
\r\n { payload.map((payload) => (\r\n <>\r\n {tooltipXLabelFormater(label, date)}\r\n

{`${payload.unit}: ${returnUnityMeasure(payload)}`}

\r\n

\r\n {payload.unit === 'Temperatura' && tempLineInfo.isLimitVisible && (dut?.TUSEMIN || dut?.TUSEMAX) && (\r\n

\r\n {`Limites de Temperatura: ${minTemp} ${maxTemp}`}\r\n

\r\n )}\r\n

\r\n

\r\n {\r\n payload.unit === 'Umidade' && humLineInfo.isLimitVisible && (dut?.HUMIMIN || dut?.HUMIMAX) && (\r\n

\r\n {`Limites de Umidade: ${minHum} ${maxHum}`}\r\n

\r\n )\r\n }\r\n

\r\n

\r\n { payload.unit === 'CO₂' && co2LineInfo.isLimitVisible && dut?.CO2MAX && (\r\n

\r\n {`Limites de CO₂: ${dut.CO2MAX} CO₂ max`}\r\n

\r\n ) }\r\n

\r\n \r\n )) }\r\n {\r\n\r\n }\r\n
\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n};\r\n\r\nconst CustomTooltipGroup = ({\r\n payload, data, limitData, label, date, isDutQA,\r\n}) => {\r\n const { limitInfo, dut } = limitData;\r\n const {\r\n tempLineInfo, humLineInfo, co2LineInfo, temp1LineInfo, L1LineInfo,\r\n } = limitInfo;\r\n if (payload?.length) {\r\n const humidity = payload.find((item) => item.unit === 'umidade');\r\n const temperature = payload.find((item) => item.unit === 'Temperatura' || item.unit === 'temperatura');\r\n const eCO2 = payload.find((item) => item.unit === 'eCO2');\r\n const l1 = payload.find((item) => item.unit === 'L1');\r\n const Temperature1 = payload.find((item) => item.unit === 'temperatura1');\r\n return (\r\n
\r\n
\r\n { label && (\r\n {tooltipXLabelFormater(label, date)}\r\n )}\r\n { temperature && data?.Temperature?.y.some((item) => item) && (\r\n

{`Temperatura: ${formatNumberWithFractionDigits(temperature.value)} ºC`}

\r\n )}\r\n { Temperature1 && data?.Temperature_1?.y.some((item) => item !== null) && (\r\n

{`Temperatura de Insuflação: ${formatNumberWithFractionDigits(Temperature1.value)} ºC`}

\r\n )}\r\n { isDutQA && humidity && data?.Humidity?.y.some((item) => item) && (\r\n

{`Umidade: ${formatNumberWithFractionDigits(humidity.value)} %`}

\r\n )}\r\n { isDutQA && eCO2 && data?.eCO2?.y.some((item) => item) && (\r\n

{`CO₂: ${formatNumberWithFractionDigits(eCO2.value)} ppm`}

\r\n )}\r\n { l1 && data?.L1?.y.some((item) => item !== null) && (\r\n

{`Status do Compressor: ${l1.value === -2 ? 'Desligado' : 'Ligado'}`}

\r\n )}\r\n { groupLimitsTip(dut, limitInfo, isDutQA) }\r\n\r\n
\r\n );\r\n }\r\n\r\n return null;\r\n};\r\n\r\nfunction groupLimitsTip(dut, limitInfo, isDutQA) {\r\n const { tempLineInfo, humLineInfo, co2LineInfo } = limitInfo;\r\n const minTemp = dut?.TUSEMIN && `${formatNumberWithFractionDigits(dut.TUSEMIN)} ºC min` || '';\r\n const maxTemp = dut?.TUSEMAX && `${formatNumberWithFractionDigits(dut?.TUSEMAX)}ºC max` || '';\r\n const minHum = dut?.HUMIMIN && `${formatNumberWithFractionDigits(dut?.HUMIMIN)}% min` || '';\r\n const maxHum = dut?.HUMIMAX && `${formatNumberWithFractionDigits(dut?.HUMIMAX)}% max` || '';\r\n return (\r\n <>\r\n {\r\n tempLineInfo.isLimitVisible && (dut?.TUSEMIN || dut?.TUSEMAX) && (\r\n

\r\n {`Limites de Temperatura: ${formatNumberWithFractionDigits(minTemp)} ${formatNumberWithFractionDigits(maxTemp)}`}\r\n

\r\n )\r\n }\r\n {\r\n isDutQA && humLineInfo.isLimitVisible && (dut?.HUMIMIN || dut?.HUMIMAX) && (\r\n

\r\n {`Limites de Umidade: ${formatNumberWithFractionDigits(minHum)} ${formatNumberWithFractionDigits(maxHum)}`}\r\n

\r\n )\r\n }\r\n {\r\n isDutQA && co2LineInfo.isLimitVisible && dut?.CO2MAX && (\r\n

\r\n {`Limites de CO₂: ${formatNumberWithFractionDigits(dut.CO2MAX)} CO₂ max`}\r\n

\r\n )\r\n }\r\n\r\n \r\n );\r\n}\r\n\r\nfunction returnTooltip(limitData, date, data, hasL1 = false, isDutQA = false) {\r\n return (\r\n (!hasL1 ? : )}\r\n />\r\n );\r\n}\r\n\r\nfunction returnTooltipGroup(date, data, limitData, isDutQA) {\r\n return (\r\n }\r\n />\r\n );\r\n}\r\n\r\nconst xaxisObject = (graphDataX) => ({\r\n id: 1,\r\n allowDataOverflow: true,\r\n type: 'number',\r\n name: 'time',\r\n dataKey: ({ index }) => graphDataX?.commonX[index],\r\n ticks: ticksXgraph,\r\n allowDecimals: false,\r\n domain: [0, 24],\r\n ticksFormater: tickXLabelFormaterHour,\r\n});\r\n\r\nfunction DutQAHistory({\r\n state, graphData, render, tickXLabelFormaterHour, date, isDutQA, labelTemp, labelTemp1, hasData,\r\n}): JSX.Element {\r\n const {\r\n axisInfo, tempLineInfo, humLineInfo, co2LineInfo, graphDataX, temp1LineInfo, hasL1, L1LineInfo,\r\n } = state;\r\n let menorNumber = 0;\r\n\r\n function generateTicks(range: [number, number], step = 5): number[] {\r\n const [min, max] = range;\r\n const start = Math.floor(min / step) * step;\r\n const end = Math.ceil(max / step) * step;\r\n const ticks = [] as number[];\r\n for (let i = start; i <= end; i += step) {\r\n ticks.push(i);\r\n }\r\n\r\n // Garantir que 0 esteja incluído\r\n if (!ticks.includes(0)) {\r\n ticks.push(0);\r\n ticks.sort((a, b) => a - b);\r\n }\r\n menorNumber = ticks[0];\r\n if (menorNumber >= 0) {\r\n menorNumber += 2;\r\n } else {\r\n menorNumber -= 2;\r\n }\r\n if (hasL1) {\r\n const firstTick = ticks[0];\r\n const additionalTicks = [firstTick - 1, firstTick - 2];\r\n\r\n ticks.unshift(...additionalTicks);\r\n ticks.sort((a, b) => a - b);\r\n }\r\n return ticks;\r\n }\r\n return (\r\n \r\n {\r\n state.groupGraph && state.graphDataX && (\r\n <>\r\n \r\n ({ index }))}\r\n margin={{\r\n top: 40,\r\n right: 30,\r\n left: 20,\r\n bottom: 5,\r\n }}\r\n >\r\n \r\n graphDataX?.commonX[index]}\r\n ticks={ticksXgraph}\r\n tickFormatter={tickXLabelFormaterHour}\r\n allowDecimals={false}\r\n domain={[0, 24]}\r\n />\r\n {graphDataX.Humidity?.y && (\r\n }\r\n dataKey=\"y\"\r\n ticks={axisInfo.humTicks}\r\n tickMargin={35}\r\n orientation=\"right\"\r\n domain={axisInfo.humLimits}\r\n >\r\n \r\n \r\n )}\r\n {humLineInfo.isVisible && graphDataX.Humidity?.y && (\r\n graphDataX.Humidity.y[index]}\r\n stroke={humLineInfo.lineColorObj.lineColor}\r\n strokeWidth={1.2}\r\n unit=\"umidade\"\r\n type=\"monotone\"\r\n dot={false}\r\n />\r\n )}\r\n {graphDataX.eCO2 && (\r\n }\r\n ticks={state.axisInfo.eCO2Ticks}\r\n tickMargin={70}\r\n orientation=\"right\"\r\n interval={0}\r\n domain={state.axisInfo.eCO2Domain}\r\n tickLine\r\n >\r\n \r\n \r\n )}\r\n {graphDataX.eCO2?.y && co2LineInfo.isVisible && (\r\n graphDataX.eCO2.y[index]}\r\n stroke={co2LineInfo.lineColorObj.lineColor}\r\n strokeWidth={1.2}\r\n unit=\"eCO2\"\r\n type=\"monotone\"\r\n dot={false}\r\n />\r\n )}\r\n
\r\n {graphDataX.Temperature && (\r\n }\r\n ticks={state.axisInfo.tempTicks}\r\n orientation=\"left\"\r\n interval={0}\r\n domain={state.axisInfo.tempLimits}\r\n >\r\n
\r\n \r\n \r\n )}\r\n {graphDataX.Temperature && tempLineInfo.isVisible && (\r\n graphDataX.Temperature.y[index]}\r\n stroke={tempLineInfo.lineColorObj.lineColor}\r\n strokeWidth={1.2}\r\n type=\"monotone\"\r\n unit=\"temperatura\"\r\n dot={false}\r\n\r\n />\r\n )}\r\n {humLineInfo.isLimitVisible && graphDataX.Humidity && (\r\n \r\n )}\r\n {humLineInfo.isLimitVisible && graphDataX.Humidity && (\r\n \r\n )}\r\n {tempLineInfo.isLimitVisible && graphDataX.Temperature && (\r\n \r\n )}\r\n {tempLineInfo.isLimitVisible && graphDataX.Temperature && (\r\n \r\n )}\r\n {co2LineInfo.isLimitVisible && graphDataX?.eCO2 && state.devInfo?.dut?.CO2MAX && (\r\n \r\n )}\r\n { returnTooltipGroup(date, graphDataX, { dut: state.devInfo.dut, limitInfo: { co2LineInfo, tempLineInfo, humLineInfo } }, isDutQA) }\r\n \r\n \r\n
\r\n { graphDataX.Temperature && (\r\n
\r\n { tempLineInfo.isVisible = !tempLineInfo.isVisible; render(); }} checked={tempLineInfo.isVisible} color={tempLineInfo.lineColorObj.lineColor} />\r\n { tempLineInfo.isLimitVisible = !tempLineInfo.isLimitVisible; render(); }} checked={tempLineInfo.isLimitVisible} color={tempLineInfo.limitColorObj.lineColor} />\r\n
\r\n ) }\r\n { graphDataX.Humidity && (\r\n
\r\n { humLineInfo.isVisible = !humLineInfo.isVisible; render(); }} checked={humLineInfo.isVisible} color={humLineInfo.lineColorObj.lineColor} />\r\n { humLineInfo.isLimitVisible = !humLineInfo.isLimitVisible; render(); }} checked={humLineInfo.isLimitVisible} color={humLineInfo.limitColorObj.lineColor} />\r\n
\r\n ) }\r\n { graphDataX.eCO2 && (\r\n
\r\n { co2LineInfo.isVisible = !co2LineInfo.isVisible; render(); }} checked={co2LineInfo.isVisible} color={co2LineInfo.lineColorObj.lineColor} />\r\n { co2LineInfo.isLimitVisible = !co2LineInfo.isLimitVisible; render(); }} checked={co2LineInfo.isLimitVisible} color={co2LineInfo.limitColorObj.lineColor} />\r\n
\r\n ) }\r\n
\r\n \r\n )\r\n }\r\n { !state.groupGraph && graphDataX?.Temperature?.y.some((item) => item !== null) && (\r\n <>\r\n {t('temperatura')}\r\n ,\r\n dataKey: 'y',\r\n ticks: generateTicks(axisInfo.tempLimits),\r\n interval: 0,\r\n domain: hasL1 && axisInfo.tempLimits ? [axisInfo.tempLimits[0] - 2, axisInfo.tempLimits[1]] : axisInfo.tempLimits,\r\n Label: {\r\n offset: -45,\r\n angle: 90,\r\n position: 'right',\r\n style: { color: '#656565', fontSize: '16px', textAnchor: 'middle' },\r\n },\r\n }]\r\n }\r\n lineProps={\r\n [{\r\n id: 3,\r\n yAxisId: 'tempId',\r\n dataKey: ({ index }) => graphDataX?.Temperature?.y[index],\r\n stroke: tempLineInfo.lineColorObj.lineColor,\r\n strokeWidth: 1.2,\r\n unit: 'Temperatura',\r\n type: 'monotone',\r\n dot: false,\r\n isVisible: tempLineInfo.isVisible,\r\n }, {\r\n id: 4,\r\n yAxisId: 'tempId',\r\n dataKey: ({ index }) => graphDataX?.Temperature_1?.y[index],\r\n stroke: temp1LineInfo.lineColor,\r\n strokeWidth: 1.2,\r\n unit: 'temperatura1',\r\n type: 'monotone',\r\n dot: false,\r\n isVisible: temp1LineInfo.isVisible,\r\n }, {\r\n id: 5,\r\n yAxisId: 'tempId',\r\n dataKey: ({ index }) => (graphDataX?.L1?.y[index] != null ? graphDataX?.L1?.y[index] - menorNumber : null),\r\n stroke: L1LineInfo.lineColor,\r\n strokeWidth: 1.2,\r\n unit: 'L1',\r\n type: 'monotone',\r\n dot: false,\r\n isVisible: L1LineInfo.isVisible,\r\n }]\r\n }\r\n referenceProps={[{\r\n id: 6,\r\n yAxisId: 'tempId',\r\n y: state.devInfo?.dut?.TUSEMAX,\r\n stroke: tempLineInfo.limitColorObj.lineColor,\r\n strokeWidth: 0.7,\r\n isVisible: tempLineInfo.isLimitVisible,\r\n segment: state.useMaxGraphData,\r\n isDutQA,\r\n },\r\n {\r\n id: 7,\r\n yAxisId: 'tempId',\r\n y: state.devInfo?.dut?.TUSEMIN,\r\n stroke: tempLineInfo.limitColorObj.lineColor,\r\n strokeWidth: 0.7,\r\n isVisible: tempLineInfo.isLimitVisible,\r\n segment: state.useMinGraphData,\r\n isDutQA,\r\n }]}\r\n hasL1={state.hasL1 || graphDataX?.Temperature_1?.y.some((item) => item !== null)}\r\n />\r\n \r\n { tempLineInfo.isVisible = !tempLineInfo.isVisible; render(); }} checked={tempLineInfo.isVisible} color={tempLineInfo.lineColorObj.lineColor} />\r\n { tempLineInfo.isLimitVisible = !tempLineInfo.isLimitVisible; render(); }} checked={tempLineInfo.isLimitVisible} color={tempLineInfo.limitColorObj.lineColor} />\r\n { (graphDataX.Temperature_1?.y?.length > 0 && graphDataX.Temperature_1?.y?.filter((item) => item !== null).length > 0) && (\r\n { temp1LineInfo.isVisible = !temp1LineInfo.isVisible; render(); }} checked={temp1LineInfo.isVisible} color={temp1LineInfo.lineColor} />\r\n )}\r\n {\r\n state.hasL1 && (\r\n { L1LineInfo.isVisible = !L1LineInfo.isVisible; render(); }} checked={L1LineInfo.isVisible} color={L1LineInfo.lineColor} />\r\n )\r\n }\r\n
\r\n \r\n )}\r\n { !state.groupGraph && isDutQA && graphDataX?.Humidity?.y.some((item) => item !== null) && (\r\n <>\r\n {t('umidade')}\r\n ,\r\n dataKey: 'y',\r\n ticks: axisInfo.humTicks,\r\n interval: 0,\r\n domain: axisInfo.humLimits,\r\n Label: {\r\n offset: -45,\r\n angle: 90,\r\n position: 'right',\r\n style: { color: '#656565', fontSize: '16px', textAnchor: 'middle' },\r\n },\r\n }]\r\n }\r\n lineProps={\r\n [{\r\n id: 3,\r\n yAxisId: 'hum',\r\n dataKey: ({ index }) => graphDataX?.Humidity?.y[index],\r\n stroke: humLineInfo.lineColorObj.lineColor,\r\n strokeWidth: 1.2,\r\n unit: 'Umidade',\r\n type: 'monotone',\r\n dot: false,\r\n isVisible: humLineInfo.isVisible,\r\n }]\r\n }\r\n referenceProps={[{\r\n id: 5,\r\n yAxisId: 'hum',\r\n y: state.devInfo?.dut?.HUMIMAX,\r\n stroke: humLineInfo.limitColorObj.lineColor,\r\n strokeWidth: 0.7,\r\n isVisible: humLineInfo.isLimitVisible,\r\n },\r\n {\r\n id: 7,\r\n yAxisId: 'hum',\r\n y: state.devInfo?.dut?.HUMIMAX,\r\n stroke: humLineInfo.limitColorObj.lineColor,\r\n strokeWidth: 0.7,\r\n isVisible: humLineInfo.isLimitVisible,\r\n },\r\n ]}\r\n />\r\n
\r\n { humLineInfo.isVisible = !humLineInfo.isVisible; render(); }} checked={humLineInfo.isVisible} color={humLineInfo.lineColorObj.lineColor} />\r\n { humLineInfo.isLimitVisible = !humLineInfo.isLimitVisible; render(); }} checked={humLineInfo.isLimitVisible} color={humLineInfo.limitColorObj.lineColor} />\r\n
\r\n \r\n )}\r\n { !state.groupGraph && isDutQA && graphDataX?.eCO2?.y.some((item) => item !== null) && (\r\n <>\r\n CO₂\r\n ,\r\n dataKey: 'y',\r\n ticks: axisInfo.eCO2Ticks,\r\n interval: 0,\r\n domain: axisInfo.eCO2Domain,\r\n Label: {\r\n offset: -45,\r\n angle: 90,\r\n position: 'right',\r\n style: { color: '#656565', fontSize: '16px', textAnchor: 'middle' },\r\n },\r\n }]\r\n }\r\n lineProps={\r\n [{\r\n id: 21,\r\n yAxisId: 'hum',\r\n data: graphData.eCO2,\r\n dataKey: ({ index }) => graphDataX?.eCO2?.y[index],\r\n unit: 'CO₂',\r\n stroke: co2LineInfo.lineColorObj.lineColor,\r\n strokeWidth: 1.2,\r\n type: 'monotone',\r\n dot: false,\r\n isVisible: co2LineInfo.isVisible,\r\n }]\r\n }\r\n referenceProps={[{\r\n id: 22,\r\n yAxisId: 'hum',\r\n y: state.devInfo?.dut?.CO2MAX,\r\n stroke: co2LineInfo.limitColorObj.lineColor,\r\n strokeWidth: 0.7,\r\n isVisible: co2LineInfo.isLimitVisible,\r\n },\r\n ]}\r\n />\r\n
\r\n { co2LineInfo.isVisible = !co2LineInfo.isVisible; render(); }} checked={co2LineInfo.isVisible} color={co2LineInfo.lineColorObj.lineColor} />\r\n { co2LineInfo.isLimitVisible = !co2LineInfo.isLimitVisible; render(); }} checked={co2LineInfo.isLimitVisible} color={co2LineInfo.limitColorObj.lineColor} />\r\n
\r\n \r\n )}\r\n {\r\n !hasData && (\r\n \r\n )\r\n }\r\n \r\n );\r\n}\r\n\r\nconst CheckBoxLines = ({\r\n text, checked, onClick, color,\r\n}) => (\r\n \r\n \r\n \r\n {text}\r\n
\r\n
\r\n \r\n \r\n);\r\n\r\nconst CustomTickGraph = (props) => {\r\n const {\r\n x, y, payload, anchor, type, ticks, hasL1,\r\n } = props;\r\n let label = payload.value;\r\n switch (type) {\r\n case 'co2':\r\n label = `${payload.value}ppm`;\r\n break;\r\n case 'hum':\r\n label = `${payload.value}%`;\r\n break;\r\n case 'temp':\r\n label = `${payload.value}°C`;\r\n break;\r\n }\r\n if (Array.isArray(ticks) && hasL1) {\r\n if (payload.value === ticks[0]) {\r\n label = 'DESLIGADO';\r\n } else if (payload.value === ticks[1]) {\r\n label = 'LIGADO';\r\n }\r\n }\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n};\r\n\r\nfunction handleClick(LineInfo) {\r\n if (!LineInfo) return;\r\n LineInfo.isDisplayColorVisible = !LineInfo.isDisplayColorVisible;\r\n}\r\n\r\nfunction handleClose(lineInfo) {\r\n if (!lineInfo) return;\r\n lineInfo.displayColorPicker = false;\r\n}\r\n\r\nfunction RenderModalLines({\r\n lineInfo, render,\r\n}): JSX.Element {\r\n return (\r\n \r\n { handleClick(lineInfo); render(); }}\r\n />\r\n {lineInfo.text}\r\n { lineInfo.isDisplayColorVisible && (\r\n \r\n handleClose(lineInfo)}\r\n />\r\n {\r\n lineInfo.lineColor = hex;\r\n lineInfo.isDisplayColorVisible = false;\r\n render(); }}\r\n />\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction Card({\r\n Filtering,\r\n graphData,\r\n graphEnable,\r\n handleChange,\r\n axisInfo,\r\n state,\r\n date,\r\n render,\r\n tickXLabelFormaterHour,\r\n}: {\r\n // @ts-ignore\r\n Filtering?: React.Element,\r\n graphData?: any,\r\n graphEnable?: any,\r\n handleChange?: () => void,\r\n axisInfo: any,\r\n state: any,\r\n date: null|moment.Moment,\r\n isDutQA: boolean,\r\n render: () => void,\r\n tickXLabelFormaterHour,\r\n}) {\r\n function isFancoil() {\r\n if (state.devInfo.dut && state.devInfo.dut.APPLICATION === 'fancoil') {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function labelTemp() {\r\n if (isFancoil() && graphData?.Temperature_1) {\r\n return `${t('temperaturaSaidaAgua')} [°C]`;\r\n }\r\n if (!isFancoil() && graphData?.Temperature_1) {\r\n return `${t('temperaturaRetorno')} [°C]`;\r\n }\r\n return `${t('temperaturaAmbiente')} [°C]`;\r\n }\r\n\r\n function labelTemp1() {\r\n if (isFancoil()) {\r\n return `${t('temperaturaEntradaAgua')} [°C]`;\r\n }\r\n return `${t('temperaturaInsuflamento')}`;\r\n }\r\n const hasData = (state.graphDataX?.Temperature?.y.some((item) => item !== null) || state.graphDataX?.Temperature_1?.y.some((item) => item !== null) || state.graphDataX?.Humidity?.y.some((item) => item !== null) || state.graphDataX?.eCO2?.y.some((item) => item !== null || state.graphDataX?.L1?.y.some((item) => item !== null)));\r\n return (\r\n \r\n {state.isModalOpen && (\r\n \r\n \r\n \r\n \r\n

{t('alterarCores')}

\r\n { state.isModalOpen = false; render(); }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n { state.graphDataX.Humidity && (\r\n <>\r\n \r\n \r\n \r\n ) }\r\n { state.graphDataX.Temperature && (\r\n <>\r\n \r\n \r\n \r\n ) }\r\n { state.graphDataX.eCO2 && (\r\n <>\r\n \r\n \r\n \r\n ) }\r\n \r\n
\r\n
\r\n )}\r\n \r\n
\r\n { Filtering && }\r\n { (state.devInfo.dut.operation_mode === 5 && hasData && date) && (\r\n \r\n {t('visualizacao')}\r\n \r\n {t('desagrupar')}\r\n { state.groupGraph = !state.groupGraph; render(); }}\r\n style={{ marginLeft: '10px', marginRight: '10px' }}\r\n />\r\n {t('agrupar')}\r\n \r\n \r\n ) }\r\n
\r\n { (state.devInfo.dut.operation_mode === 5 && hasData && date) && }\r\n
\r\n {(!date) ? : null}\r\n {date && (\r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\ntype LabelType = {\r\n offset: number\r\n angle: number\r\n position: string\r\n style: object\r\n}\r\n\r\ntype XaxisType = {\r\n id: number\r\n allowDataOverflow: boolean\r\n type: string\r\n name: string\r\n dataKey: any\r\n ticks: number []\r\n allowDecimals: boolean\r\n domain: number []\r\n ticksFormater: (x: number) => string\r\n}\r\n\r\ntype YaxisType = {\r\n id: number\r\n yAxisId: string\r\n allowDataOverflow: boolean\r\n tick: JSX.Element\r\n dataKey: string\r\n ticks: number []\r\n interval: number\r\n domain: number []\r\n Label: LabelType\r\n}\r\n\r\ntype LineType = {\r\n id: number\r\n yAxisId: string\r\n unit: string\r\n dataKey: (item: any) => any\r\n stroke: string\r\n strokeWidth: number\r\n type: string\r\n dot: boolean\r\n isVisible: boolean\r\n}\r\n\r\ntype ReferenceLine = {\r\n id: number\r\n yAxisId: string\r\n y: number\r\n strokeWidth: number\r\n isVisible: boolean\r\n stroke: string\r\n segment?: { x: number, y: number }[]\r\n isDutQA?: boolean\r\n}\r\n\r\nconst GraphLineChart = ({\r\n xaxisProps, yaxisProps, lineProps, referenceProps, limitData, graphDataX, date, hasL1 = false, isDutQA = false,\r\n}: { xaxisProps?: XaxisType[], yaxisProps?: YaxisType[], lineProps?: LineType[], referenceProps?: ReferenceLine[], limitData, graphDataX, date, hasL1?: boolean, isDutQA?: boolean }): JSX.Element => (\r\n \r\n ({ index }))}\r\n margin={{\r\n top: 25,\r\n right: 30,\r\n left: 20,\r\n bottom: 5,\r\n }}\r\n >\r\n \r\n { xaxisProps && xaxisProps?.map((xaxis) => (\r\n \r\n )) }\r\n {\r\n yaxisProps && yaxisProps?.map((yaxis) => (\r\n \r\n \r\n \r\n ))\r\n }\r\n {\r\n lineProps && lineProps?.map((line) => line.isVisible && (\r\n \r\n ))\r\n }\r\n {\r\n referenceProps && referenceProps?.map((line) => {\r\n if (line.isVisible) {\r\n if (line.segment && !line.isDutQA) {\r\n return (\r\n \r\n );\r\n }\r\n return ;\r\n }\r\n return <>;\r\n })\r\n }\r\n { returnTooltip(limitData, date, graphDataX, hasL1, isDutQA) }\r\n \r\n \r\n);\r\n\r\nconst NoDataInTable = () => (\r\n \r\n \r\n

\r\n {t('graficoSemDados')}\r\n

\r\n
\r\n);\r\n\r\nconst GraphWrapper = styled.div`\r\n width: 100%;\r\n position: relative;\r\n height: 100%;\r\n`;\r\n\r\nconst ModalMobile = styled.div<{ isModalOpen }>(\r\n ({ isModalOpen }) => `\r\n display:${isModalOpen ? 'block' : 'none'};\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n background-color: ${colors.White};\r\n width: 100%;\r\n height: 100vh;\r\n z-index: 1;\r\n overflow: hidden;\r\n transition: all .5s ease-in-out;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`,\r\n);\r\n\r\nconst ModalTitle = styled.span`\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nconst ModalTitleContainer = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: 100%;\r\n width: 100%;\r\n padding: 16px;\r\n svg {\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nconst ModalSection = styled.div`\r\n width: 100%;\r\n height: 80px;\r\n background: ${colors.Grey030};\r\n border-bottom: 2px solid ${colors.Grey100};\r\n box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);\r\n`;\r\n\r\nconst MobileWrapper = styled.div`\r\n display: block;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nconst DesktopWrapper = styled.div`\r\n display: none;\r\n\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nconst Text = styled.span`\r\n font-weight: normal;\r\n font-size: 0.8em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n\r\n @media (min-width: 460px) {\r\n font-size: 1em;\r\n }\r\n`;\r\n\r\nconst CheckboxLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n padding-right: 0px;\r\n @media (min-width: 460px) {\r\n padding-right: 20px;\r\n }\r\n`;\r\n\r\nconst ColoredLine = styled(LineIcon)(\r\n ({ color }) => `\r\n margin-left: 10px;\r\n color: ${color};\r\n`,\r\n);\r\n\r\nconst CardWrapper = styled.div`\r\n padding: 32px 24px;\r\n margin-top: 24px;\r\n background: ${colors.White};\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport {\r\n CalendarIcon, LineIcon, ExportWorksheetIcon, DashedLineIcon,\r\n} from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n\r\n .CalendarMonth_caption {\r\n color: #000;\r\n text-transform: capitalize;\r\n }\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n\r\n .CalendarDay__selected_span {\r\n background: #D0D2F1;\r\n border: 1px double #F4EBEB;\r\n color: #000;\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n display: none;\r\n }\r\n .CalendarDay__default:hover {\r\n background: #e4e7e7;\r\n border: 1px solid #e4e7e7;\r\n color: inherit;\r\n }\r\n\r\n .CalendarDay__hovered_span, .CalendarDay__hovered_span:hover {\r\n background: #E5E6F8;\r\n border: 1px double #F4EBEB;\r\n color: #000;\r\n }\r\n\r\n .CalendarDay__selected_span:hover {\r\n background: #B5B7DD;\r\n border: 1px double #B5B7DD;\r\n color: #fff;\r\n }\r\n \r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::before,\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n display: none;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n background: none;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .react-datepicker__year-text--selected, .react-datepicker__year-text--in-selecting-range, .react-datepicker__year-text--in-range {\r\n background-color: #363BC4;\r\n }\r\n .react-datepicker__year-wrapper {\r\n justify-content: center;\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 15px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 15px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n font-weight: bold;\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const StyledCalendarIconMonthViewBtn = styled(CalendarIcon)(\r\n () => `\r\n width: 30px;\r\n height: 24px;\r\n color: #363BC4;\r\n`,\r\n);\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-left: 16px;\r\n color: ${colors.Grey300};\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const VarContainer = styled.div`\r\n margin: 10px 0 10px 15px;\r\n min-width: 230px;\r\n`;\r\n\r\nexport const VarName = styled.div`\r\n font-size: 12px;\r\n font-weight: 700;\r\n color: #000;\r\n line-height: '13.31px'\r\n`;\r\nexport const VarValue = styled.span`\r\n font-weight: bold;\r\n font-size: 150%;\r\n`;\r\nexport const VarUnit = styled.span`\r\n font-size: 130%;\r\n color: #8c8c8c;\r\n padding-left: 0.35em;\r\n`;\r\n\r\nexport const CustomLegendUl = styled.ul`\r\n transform: rotate(270deg);\r\n position: relative;\r\n left: 50px;\r\n`;\r\n\r\nexport const CustomLegendLi = styled.li`\r\n font-family: Inter;\r\n font-style: normal;\r\n font-weight: 700;\r\n font-size: 11px;\r\n color: #000000;\r\n list-style-type: none;\r\n display: inline-flex;\r\n align-items: center;\r\n`;\r\n\r\nexport const WaterTooltip = styled.div`\r\n min-width: 210px;\r\n min-height: 140px;\r\n background: #FFFFFFF7;\r\n border: 1px solid #202370;\r\n border-radius: 4px;\r\n padding: 24px;\r\n\r\n > span {\r\n font-weight: bold;\r\n color: #000000;\r\n }\r\n\r\n > p {\r\n > strong {\r\n font-size: 150%;\r\n }\r\n\r\n > span {\r\n font-size: 130%;\r\n color: #8c8c8c;\r\n padding-left: 0.35em;\r\n }\r\n }\r\n`;\r\n\r\nexport const GraphWrapper = styled.div`\r\n width: 100%;\r\n position: relative;\r\n height: 100%;\r\n`;\r\n\r\nexport const ModalMobile = styled.div<{ isModalOpen }>(\r\n ({ isModalOpen }) => `\r\n display:${isModalOpen ? 'block' : 'none'};\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n background-color: ${colors.White};\r\n width: 100%;\r\n height: 100vh;\r\n z-index: 1;\r\n overflow: hidden;\r\n transition: all .5s ease-in-out;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`,\r\n);\r\n\r\nexport const ModalTitle = styled.span`\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n line-height: 27px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const ModalTitleContainer = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n height: 100%;\r\n width: 100%;\r\n padding: 16px;\r\n svg {\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const ModalSection = styled.div`\r\n width: 100%;\r\n height: 80px;\r\n background: ${colors.Grey030};\r\n border-bottom: 2px solid ${colors.Grey100};\r\n box-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);\r\n`;\r\n\r\nexport const MobileWrapper = styled.div`\r\n display: block;\r\n\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nexport const DesktopWrapper = styled.div`\r\n display: none;\r\n\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nexport const Text = styled.span`\r\n font-weight: bold;\r\n font-size: 1em;\r\n line-height: 26px;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const MonthViewBtnText = styled.span`\r\n font-size: 1rem;\r\n line-height: 20px;\r\n color: ${colors.Black};\r\n`;\r\n\r\nexport const CheckboxLine = styled.div`\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n`;\r\n\r\nexport const ColoredLine = styled(LineIcon)(\r\n ({ color }) => `\r\n margin-left: 10px;\r\n color: ${color}\r\n`,\r\n);\r\n\r\nexport const DashedColoredLine = styled(DashedLineIcon)(\r\n ({ color }) => `\r\n margin-left: 10px;\r\n color: ${color}\r\n`,\r\n);\r\n\r\nexport const CardWrapper = styled.div`\r\n padding: 32px 24px;\r\n margin-top: 24px;\r\n background: ${colors.White};\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CustomLabel = styled.text<{ angle }>`\r\n transform: rotate(${({ angle }) => (angle || -90)}deg);\r\n`;\r\n\r\nexport const DateLabel = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const BtnExport = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-left: 10px;\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n ${Text} {\r\n color: ${colors.White}\r\n }\r\n })\r\n`;\r\n\r\nexport const BtnExportReduced = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-left: 10px;\r\n border-radius: 12px;\r\n height: 1px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n })\r\n`;\r\n\r\nexport const ExportWorksheet = styled(ExportWorksheetIcon)(\r\n () => `\r\n padding-left: 10px;\r\n color: #363BC4;\r\n`,\r\n);\r\n\r\nexport const BtnMonthView = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n margin-right: 20px;\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n :hover {\r\n color: ${colors.White}\r\n background-color: #363BC4\r\n ${MonthViewBtnText} {\r\n color: ${colors.White}\r\n }\r\n })\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\ncolor: #363BC4;\r\nfont-family: 'Inter';\r\nfont-style: normal;\r\nfont-weight: 400;\r\nfont-size: 12px;\r\nline-height: 12px;\r\ntext-decoration-line: underline;\r\ndisplay: block;\r\n`;\r\n\r\nexport const InfoText = styled.p`\r\ncolor: ${colors.Grey400};\r\nfont-family: 'Inter';\r\nfont-style: normal;\r\nfont-weight: 400;\r\nfont-size: 12px;\r\nline-height: 12px;\r\ndisplay: block;\r\n`;\r\n","import { Box, Dialog } from '@material-ui/core';\r\nimport { ColorChangeBtn } from '../../icons/ColorChange';\r\nimport { useState } from 'react';\r\nimport { SketchPicker } from 'react-color';\r\nimport { t } from 'i18next';\r\n\r\nexport type ChangeColorProps = {\r\n data: {color:string, description: string, index: number}[];\r\n setColor?: any;\r\n blueVersion?: boolean;\r\n}\r\n\r\nexport type ButtonChangeColorProps = {\r\n onClick?: any;\r\n blueVersion?: boolean;\r\n}\r\n\r\nexport type ChangeColorDialogProps = {\r\n onClose?:any;\r\n open: boolean;\r\n data: {color:string, description: string, index: number}[];\r\n setColor: any;\r\n}\r\n\r\nexport function ChangeColor({ data, setColor, blueVersion }: ChangeColorProps): JSX.Element {\r\n const [showDialog, setShowDialog] = useState(false);\r\n return (\r\n <>\r\n setShowDialog(!showDialog)} />\r\n setShowDialog(false)}\r\n open={showDialog}\r\n data={data}\r\n setColor={setColor}\r\n />\r\n \r\n );\r\n}\r\n\r\nexport function ButtonChangeColor({ onClick, blueVersion }: ButtonChangeColorProps): JSX.Element {\r\n return (\r\n \r\n \r\n \r\n {t('alterarCores')}\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function ChangeColorDialog({\r\n onClose, open, data, setColor,\r\n}: ChangeColorDialogProps): JSX.Element {\r\n const [selected, setSelected] = useState({ color: '', description: '', index: 0 });\r\n const [showPickerColor, setShowPickerColor] = useState(false);\r\n\r\n return (\r\n \r\n \r\n \r\n

Alterar Cores

\r\n
\r\n \r\n \r\n {data.map((itemData) => (\r\n \r\n { setSelected(itemData); setShowPickerColor(true); }}\r\n style={{\r\n width: '16px', height: '16px', background: itemData.color, borderRadius: '5px', marginRight: '10px', cursor: 'pointer',\r\n }}\r\n />\r\n
\r\n {itemData.description}\r\n
\r\n
\r\n ))}\r\n
\r\n \r\n {showPickerColor && (\r\n setColor(color, selected.index)}\r\n size=\"small\"\r\n />\r\n )}\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport const ChangeColorSample = (option, setColor, color) => {\r\n const [showPickerColor, setShowPickerColor] = useState(false);\r\n return (\r\n <>\r\n
setShowPickerColor(!showPickerColor)} />\r\n \r\n {showPickerColor && (\r\n setColor(color, option.index)}\r\n />\r\n )}\r\n \r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const Wrapper = styled.div`\r\ndisplay: flex;\r\nflex-direction: column;\r\nmargin-bottom: 20px;\r\n`;\r\n\r\nexport const StyledList = styled.ul`\r\ndisplay: flex;\r\nflex-direction: row;\r\nalign-items: center;\r\njustify-content: flex-start;\r\nlist-style: none;\r\npadding: 0;\r\nmargin-bottom: -1px;\r\nli:not(:first-child) {\r\n margin-left: 32px;\r\n}\r\n.active {\r\n color: ${colors.Blue300}; // texto nav maior\r\n}\r\n`;\r\n\r\nexport const StyledItem = styled.li`\r\ndisplay: flex;\r\nalign-items: center;\r\njustify-content: center;\r\nflex-direction: column;\r\nwhite-space: nowrap;\r\ngap: 5px;\r\npadding-top: 10px;\r\n`;\r\n\r\nexport const Content = styled.div`\r\ndisplay: flex;\r\nalign-items: center;\r\noverflow-x: auto;\r\noverflow-y: hidden;\r\nmargin: 5px 5px 0 5px;\r\npadding: 0;\r\nheight: 40px;\r\nmax-width: 100%;\r\nborder-bottom: 1px solid ${colors.Grey100};\r\njustify-content: space-between;\r\nmargin: 0px;\r\n@media (max-width: 1241px) {\r\n height: 41px;\r\n overflow-x: scroll;\r\n}\r\n`;\r\n\r\nexport const StyledLine = styled.div<{ isActive }>(\r\n ({ isActive }) => `\r\n background: ${isActive ? colors.Blue300 : 'transparent'};\r\n width: 100%;\r\n height: 10px;\r\n animation: grow .5s;\r\n border-radius: 3px 3px 0px 0px;\r\n @keyframes grow {\r\n from {\r\n width: 0;\r\n }\r\n to{\r\n width: 100%;\r\n }\r\n }\r\n @media (max-width: 1241px) {\r\n height: 7px;\r\n margin-top: 3px;\r\n }\r\n `,\r\n);\r\n\r\nexport const StyledLabel = styled.div<{ isActive }>(\r\n ({ isActive }) => `\r\n color: ${isActive ? colors.Blue300 : '#5B5B5B'};\r\n font-size: 13px;\r\n font-weight: bold;\r\n text-decoration: none;\r\n cursor: pointer;\r\n `,\r\n);\r\n\r\nexport const ContainerParameters = styled.div`\r\n margin-bottom: 50px;\r\n h3 {\r\n font-size: 16px;\r\n }\r\n`;\r\n\r\nexport const SearchInputStyled = styled.div`\r\n width: 100%;\r\n .select-search__option.is-selected {\r\n background-color: transparent;\r\n color: black;\r\n }\r\n .select-search__option.is-highlighted.is-selected, .select-search__option.is-selected:hover, .select-search__option:not(.is-selected):hover {\r\n background-color: transparent;\r\n color: black;\r\n }\r\n`;\r\n\r\nexport const SelectOptionStyled = styled.button<{ disabled }>(\r\n ({ disabled }) => `\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n height: 50px;\r\n width: 100%;\r\n\r\n border: none;\r\n background: transparent;\r\n padding: 0 8px;\r\n\r\n border-left: 5px solid transparent;\r\n ${disabled && `\r\n div {\r\n color: red;\r\n }\r\n `}\r\n`,\r\n);\r\n\r\nexport const SelectedContent = styled.div`\r\n width: 100%;\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n text-align: start;\r\n input {\r\n padding: 0px;\r\n margin: 0px;\r\n border: none;\r\n border-radius: 10px;\r\n width: 40px;\r\n background-color: transparent;\r\n }\r\n`;\r\n\r\nexport const HorizontalLineSelectParameters = styled.div`\r\n width: 10px;\r\n border-bottom: 1px dashed #D0D0D0;\r\n margin-left: 8px;\r\n`;\r\n\r\nexport const BorderSubItem = styled.div<{model?: string}>(\r\n ({ model }) => `\r\n border-left: 1px dashed #D0D0D0;\r\n height: ${model === 'XA' ? '322px' : '950px'};\r\n position: absolute;\r\n top: -13px;\r\n left: 21px;\r\n z-index: 10;\r\n`,\r\n);\r\n\r\nexport const InfoSelected = styled.div`\r\n display: flex;\r\n align-items: center;\r\n position: relative;\r\n width: 100%;\r\n input {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const InputStyledSelected = styled.input<{ isLeft }>(\r\n ({ isLeft }) => `\r\n width: 20px;\r\n height: 20px;\r\n cursor: pointer;\r\n position: absolute;\r\n opacity: 0;\r\n left: ${isLeft ? '20px' : '0px'}\r\n`,\r\n);\r\n\r\nexport const ChillerGraph = styled.div`\r\n width: 100%;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n height: 400px;\r\n margin-top: 20px;\r\n margin-bottom: 20px;\r\n`;\r\n\r\nexport const ChillerGraphGeral = styled.div<{ marginTop, height, groupGraph }>(\r\n ({ height, groupGraph }) => `\r\n width: 100%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n height: ${`${height}px` || '400px'};\r\n margin-top: 20px;\r\n .containerCircle {\r\n display: flex;\r\n gap: 5px;\r\n align-items: center;\r\n }\r\n p {\r\n margin: 0;\r\n }\r\n .circleGreen {\r\n background: #4EB73B;\r\n border-radius: 50%;\r\n box-shadow: 0 0 0 0 rgba(142, 210, 130, 1);\r\n margin-right: 5px;\r\n height: 11px;\r\n width: 11px;\r\n transform: scale(1);\r\n animation: greenPulse 2s infinite;\r\n \r\n @keyframes greenPulse {\r\n 0% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(142, 210, 130, 0.7);\r\n }\r\n 70% {\r\n transform: scale(1);\r\n box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);\r\n }\r\n 100% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);\r\n }\r\n }\r\n }\r\n .circleRed {\r\n background: #FF1818;\r\n border-radius: 50%;\r\n box-shadow: 0 0 0 0 rgba(255, 103, 103, 1);\r\n margin-right: 5px;\r\n height: 11px;\r\n width: 11px;\r\n transform: scale(1);\r\n animation: redPulse 2s infinite;\r\n \r\n @keyframes redPulse {\r\n 0% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(255, 103, 103, 0.7);\r\n }\r\n 70% {\r\n transform: scale(1);\r\n box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);\r\n }\r\n 100% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);\r\n }\r\n }\r\n }\r\n .circleYellow {\r\n background: #EDA800;\r\n border-radius: 50%;\r\n box-shadow: 0 0 0 0 rgba(255, 206, 0, 1);\r\n margin-right: 5px;\r\n height: 11px;\r\n width: 11px;\r\n transform: scale(1);\r\n animation: yellowPulse 2s infinite;\r\n \r\n @keyframes yellowPulse {\r\n 0% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(255, 206, 0, 0.7);\r\n }\r\n 70% {\r\n transform: scale(1);\r\n box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);\r\n }\r\n 100% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);\r\n }\r\n }\r\n }\r\n`,\r\n);\r\n\r\nexport const ContainerNotSelectedParams = styled.div`\r\n background-color: #F9F9F9;\r\n width: 100%;\r\n height: 458px;\r\n gap: 0px;\r\n border-radius: 10px;\r\n color: #7D7D7D;\r\n opacity: 0px;\r\n display: flex;\r\n justify-content: center;\r\n flex-direction: column;\r\n text-align: center;\r\n align-items: center;\r\n margin-top: 20px;\r\n span {\r\n font-size: 12px;\r\n }\r\n padding: 10px;\r\n`;\r\n\r\nexport const ContainerGraphParamsChange = styled.div<{ groupGraph, lengthArraySample }>(\r\n ({ groupGraph, lengthArraySample }) => `\r\n ${groupGraph ? `\r\n width: 85%;\r\n div {\r\n top: ${lengthArraySample > 0 ? '-70px' : '10px'};\r\n }` : `\r\n div {\r\n top: ${lengthArraySample > 0 ? '-30px' : '-50px'};\r\n }\r\n `}\r\n`,\r\n);\r\n\r\nexport const MenuFixedContainer = styled.div<{ historySelected }>(\r\n ({ historySelected }) => `\r\n display: flex;\r\n align-items: center;\r\n margin: 5px;\r\n justify-content: start;\r\n gap: 10px;\r\n margin-bottom: 20px;\r\n ${historySelected ? `\r\n position: sticky;\r\n top: 39px;\r\n width: 100%;\r\n background-color: white;\r\n z-index: 100;\r\n margin-left: -5px;\r\n padding: 5px 5px 15px 15px;\r\n ` : ''} \r\n`,\r\n);\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const GreenBlob = styled.div`\r\n background: #4EB73B;\r\n border-radius: 50%;\r\n box-shadow: 0 0 0 0 rgba(142, 210, 130, 1);\r\n margin-right: 5px;\r\n height: 11px;\r\n width: 11px;\r\n transform: scale(1);\r\n animation: greenPulse 2s infinite;\r\n\r\n @keyframes greenPulse {\r\n 0% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(142, 210, 130, 0.7);\r\n }\r\n 70% {\r\n transform: scale(1);\r\n box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);\r\n }\r\n 100% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);\r\n }\r\n }\r\n`;\r\n\r\nexport const YellowBlob = styled.div`\r\n background: #EDA800;\r\n border-radius: 50%;\r\n box-shadow: 0 0 0 0 rgba(255, 206, 0, 1);\r\n margin-right: 5px;\r\n height: 11px;\r\n width: 11px;\r\n transform: scale(1);\r\n animation: yellowPulse 2s infinite;\r\n\r\n @keyframes yellowPulse {\r\n 0% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(255, 206, 0, 0.7);\r\n }\r\n 70% {\r\n transform: scale(1);\r\n box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);\r\n }\r\n 100% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);\r\n }\r\n }\r\n`;\r\n\r\nexport const RedBlob = styled.div`\r\n background: #FF1818;\r\n border-radius: 50%;\r\n box-shadow: 0 0 0 0 rgba(255, 103, 103, 1);\r\n margin-right: 5px;\r\n height: 11px;\r\n width: 11px;\r\n transform: scale(1);\r\n animation: redPulse 2s infinite;\r\n\r\n @keyframes redPulse {\r\n 0% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(255, 103, 103, 0.7);\r\n }\r\n 70% {\r\n transform: scale(1);\r\n box-shadow: 0 0 0 8px rgba(0, 0, 0, 0);\r\n }\r\n 100% {\r\n transform: scale(0.95);\r\n box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);\r\n }\r\n }\r\n`;\r\n\r\nexport const GreyBlob = styled.div`\r\n background: #E9E9E9;\r\n border-radius: 50%;\r\n margin: 10px;\r\n height: 11px;\r\n width: 11px;\r\n`;\r\n\r\nexport const BlackBlob = styled.div`\r\n background: #545454;\r\n border-radius: 50%;\r\n margin: 10px;\r\n height: 11px;\r\n width: 11px;\r\n`;\r\n\r\nexport const ProgressBarContainer = styled.div`\r\n background-color: #D9D9D9;\r\n height: 5px;\r\n width: 100%;\r\n border-radius: 16px;\r\n position: relative;\r\n transition: all 0.5s;\r\n will-change: transform;\r\n`;\r\n\r\nexport const ProgressBarChildren = styled.div<{progress: number}>(\r\n ({ progress }) => `\r\n border-radius:16px;\r\n width: ${progress}%;\r\n position: absolute;\r\n height: 100%;\r\n content: none;\r\n background-color: #363BC4;\r\n top:0;\r\n bottom: 0;\r\n border-radius: inherit;\r\n display: flex;\r\n justify-content: center;\r\n align-items:center;\r\n color: white;\r\n`,\r\n);\r\n\r\nexport const IconBiggerWrapper = styled.div`\r\n display: inline-block;\r\n width: 21px;\r\n height: 21px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n /* margin-left: 6px; */\r\n svg {\r\n width: 21px;\r\n height: 21px;\r\n }\r\n`;\r\n\r\nexport const TopTitle = styled.div`\r\n font-family: Inter;\r\n font-style: normal;\r\n font-weight: bold;\r\n font-size: 16px;\r\n line-height: 16px;\r\n color: ${colors.Black};\r\n`;\r\n\r\nexport const CellLabel = styled.span`\r\n color: ${colors.Black};\r\n font-weight: normal;\r\n font-size: 12px !important;\r\n`;\r\n\r\nexport const TitleColumn = styled.div`\r\njustify-content: flex-start;\r\ndisplay: flex;\r\nflex-direction: row;\r\n`;\r\n\r\nexport const OrderColumn = styled.div`\r\npadding-left: 5px;\r\npadding-right: 5px;\r\npadding-bottom: 4px\r\nborder-radius: 11px;\r\nborder: 1px solid lightgrey;\r\ncursor: pointer;\r\nborder`;\r\n\r\nexport const BtnOrderColumns = styled.div<{ disabled?: boolean }>(\r\n ({ disabled }) => `\r\n cursor: pointer;\r\n padding: 0 10px;\r\n border: 1px solid lightgrey;\r\n font-weight: 500;\r\n border-radius: 10px;\r\n box-shadow: 0 2px 4px 1px rgba(0, 0, 0, 0.1);\r\n transition: color 0.3s ease;\r\n display: flex;\r\n align-items: center;\r\n height: 40px;\r\n gap: 10px;\r\n\r\n &:hover {\r\n color: ${colors.BlueSecondary};\r\n }\r\n\r\n ${disabled && `\r\n opacity: 0.5;\r\n cursor: not-allowed;\r\n `}\r\n`,\r\n);\r\n\r\nexport const NoDataComponent = styled.div<{minHeight?: string}>(\r\n ({ minHeight }) => `\r\n background-color: #F9F9F9;\r\n color: #7D7D7D;\r\n text-align: center;\r\n border-radius: 5px;\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n align-items: center;\r\n min-height: ${minHeight || '200px'};\r\n border: 1px solid #E8E8E8;\r\n margin: 0 10px 20px 10px;\r\n`,\r\n);\r\n","type FilterColumnProps = {\r\n style?: React.CSSProperties;\r\n}\r\nexport const FilterColumnsIcon = ({ style }: FilterColumnProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const OrderColumnModal = styled.div`\r\n list-style-type: none;\r\n padding: 7px;\r\n border: 1px solid lightgrey;\r\n font-weight: bold;\r\n font-size: 12px;\r\n border-radius: 10px;\r\n height: 36px;\r\n width: 100%;\r\n min-width: 250px;\r\n\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n\r\n cursor: grab;\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n\r\n height: 22px;\r\n width: 22px;\r\n`;\r\n\r\nexport const ModalCancel = styled.p`\r\n font-size: 13px;\r\n color: ${colors.Blue300};\r\n text-decoration: underline;\r\n text-align: initial;\r\n margin-top: 8px;\r\n &:hover {\r\n color: ${colors.Blue400};\r\n }\r\n`;\r\n\r\nexport const ModalTitle = styled.span`\r\n text-align: right;\r\n font-size: 13px;\r\n font-weight: 700;\r\n`;\r\n\r\nexport const ModalSubTitle = styled.p`\r\n font-size: 11px;\r\n font-weight: 400;\r\n`;\r\n\r\nexport const HorizontalLine = styled.div`\r\n width: 100%;\r\n height: 2px;\r\n background: ${colors.Grey100};\r\n margin: 10px 0;\r\n`;\r\n","type eyesOpen = {\r\n color?: string\r\n style?: React.CSSProperties;\r\n}\r\n\r\nfunction OlhoAberto({ color, style }: eyesOpen) {\r\n let ColorChose = '#363BC4';\r\n if (color) {\r\n ColorChose = color;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default OlhoAberto;\r\n","function OlhoFechado({ ...props }) {\r\n return (\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default OlhoFechado;\r\n","type ThreeDotsVerticalIconProps = {\r\n color?: string;\r\n}\r\n\r\nexport const ThreeDotsVerticalIcon = ({ color = '#C2C2C2', ...props }: ThreeDotsVerticalIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { useRef } from 'react';\r\nimport { IconWrapper, OrderColumnModal } from './styles';\r\nimport { useDrag, useDrop } from 'react-dnd';\r\nimport type { Identifier, XYCoord } from 'dnd-core';\r\nimport OlhoAberto from '~/icons/OlhoAberto';\r\nimport OlhoFechado from '~/icons/OlhoFechado';\r\nimport { ThreeDotsVerticalIcon } from '~/icons/ThreeDotsVerticalIcon';\r\n\r\ntype ColumnType = {\r\n id: string | number;\r\n visible: boolean;\r\n label: string;\r\n}\r\n\r\ninterface RowProps {\r\n index: string | number;\r\n column: ColumnType;\r\n handleChangeVisibility: (columnId) => void;\r\n handleMoveItem: (dragIndex: number | string, hoverIndex: number | string) => void\r\n}\r\n\r\nexport const Row: React.FC = ({\r\n column, handleChangeVisibility, handleMoveItem, index,\r\n}) => {\r\n const ref = useRef(null);\r\n const [, drop] = useDrop<\r\n ColumnType,\r\n void,\r\n { handlerId: Identifier | null }\r\n >({\r\n accept: 'card',\r\n collect(monitor) {\r\n return {\r\n handlerId: monitor.getHandlerId(),\r\n };\r\n },\r\n hover(item: any, monitor) {\r\n if (!ref.current) {\r\n return;\r\n }\r\n const dragIndex = item.index;\r\n const hoverIndex = index;\r\n\r\n if (dragIndex === hoverIndex) {\r\n return;\r\n }\r\n\r\n const hoverBoundingRect = ref.current?.getBoundingClientRect();\r\n\r\n const hoverMiddleY = (hoverBoundingRect.bottom - hoverBoundingRect.top) / 2;\r\n\r\n const clientOffset = monitor.getClientOffset();\r\n\r\n const hoverClientY = (clientOffset as XYCoord).y - hoverBoundingRect.top;\r\n\r\n if (dragIndex < hoverIndex && hoverClientY < hoverMiddleY) {\r\n return;\r\n }\r\n\r\n if (dragIndex > hoverIndex && hoverClientY > hoverMiddleY) {\r\n return;\r\n }\r\n\r\n handleMoveItem(dragIndex, hoverIndex);\r\n\r\n item.index = hoverIndex;\r\n },\r\n });\r\n\r\n const [{ isDragging }, drag] = useDrag({\r\n type: 'card',\r\n item: () => ({ id: column.id, index }),\r\n collect: (monitor) => ({\r\n isDragging: monitor.isDragging(),\r\n }),\r\n });\r\n\r\n drag(drop(ref));\r\n\r\n return (\r\n handleChangeVisibility(column.id)}>\r\n \r\n \r\n \r\n {column.label}\r\n \r\n {column.visible ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default Row;\r\n","import { Flex } from 'reflexbox';\r\nimport { Button, ModalWindow } from '~/components';\r\nimport {\r\n ModalCancel,\r\n ModalSubTitle,\r\n ModalTitle,\r\n HorizontalLine,\r\n} from './styles';\r\nimport { t } from 'i18next';\r\nimport { useEffect, useState } from 'react';\r\nimport { DndProvider } from 'react-dnd';\r\nimport { Row } from './Row';\r\nimport { HTML5Backend } from 'react-dnd-html5-backend';\r\n\r\nexport default function ModalOrderColumns(props: {\r\n handleSubmitModal;\r\n handleCancelModal;\r\n handleChangeColumns;\r\n columns;\r\n isDesktop;\r\n handleDragColumn;\r\n handleResetColumns;\r\n}): JSX.Element {\r\n const {\r\n handleSubmitModal,\r\n handleCancelModal,\r\n columns,\r\n handleChangeColumns,\r\n isDesktop,\r\n handleDragColumn,\r\n handleResetColumns,\r\n } = props;\r\n\r\n const [originalColumns, setOriginalColumns] = useState(columns);\r\n const [hasColumnVisible, setHasColumnVisible] = useState(\r\n columns.some((column) => column.visible === true),\r\n );\r\n const [hasError, setHasError] = useState(false);\r\n\r\n useEffect(() => {\r\n setOriginalColumns(columns);\r\n }, []);\r\n\r\n function handleSave() {\r\n if (!hasColumnVisible) {\r\n setHasError(true);\r\n return;\r\n }\r\n handleSubmitModal();\r\n }\r\n\r\n function handleVisibility(column) {\r\n const hasColumnVisibleAux = handleChangeColumns(column);\r\n setHasColumnVisible(hasColumnVisibleAux);\r\n\r\n if (hasError) {\r\n setHasError(false);\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {\r\n handleResetColumns(originalColumns);\r\n handleCancelModal();\r\n }}\r\n >\r\n \r\n {t('ordenarColunas')}\r\n \r\n {t('organizarOrdemColunasSelecioneQualVisualizar')}\r\n \r\n \r\n \r\n \r\n \r\n {columns.map((column, index) => (\r\n \r\n ))}\r\n \r\n \r\n {!hasColumnVisible && (\r\n
\r\n \r\n {t('paraSalvarNecessarioUmaColunaVisivel')}\r\n \r\n
\r\n )}\r\n \r\n \r\n {\r\n handleResetColumns(originalColumns);\r\n handleCancelModal();\r\n }}\r\n >\r\n {t('botaoCancelar')}\r\n \r\n \r\n {t('botaoSalvar')}\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","type AlarmIconProps = {\r\n style?: React.CSSProperties;\r\n}\r\nexport const AlarmIcon = ({ style }: AlarmIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n);\r\n","import { t } from 'i18next';\r\n\r\nexport const controlColumnsConfig = [\r\n { id: 'ALARM_CODE', visible: true, label: t('codigo') },\r\n { id: 'START_DATE', visible: true, label: t('dataInicio') },\r\n { id: 'END_DATE', visible: true, label: t('dataFinal') },\r\n { id: 'DESCRIPTION', visible: true, label: t('descricao') },\r\n { id: 'REASON_ALARM', visible: false, label: t('porqueAlarmeGerado') },\r\n { id: 'ACTION_TAKEN', visible: false, label: t('acaoRealizada') },\r\n { id: 'RESET_TYPE', visible: false, label: t('tipoReset') },\r\n { id: 'CAUSE', visible: false, label: t('causa') },\r\n];\r\n","export const reorderList = (list: T[], from: number, to: number): T[] => {\r\n const itemsList = [...list];\r\n const item = list[from];\r\n\r\n itemsList.splice(from, 1);\r\n\r\n itemsList.splice(to, 0, item);\r\n\r\n return itemsList;\r\n};\r\n","import i18next, { t } from 'i18next';\r\nimport { Flex } from 'reflexbox';\r\nimport {\r\n Card, Loader, ModalLoading, Table,\r\n} from '~/components';\r\nimport { BtnOrderColumns, NoDataComponent, TopTitle } from '../../../IntegrRealTime/DriChillerCarrierRealTime/components/styles';\r\nimport { HorizontalLine } from '~/components/Menu/styles';\r\nimport { useEffect, useState } from 'react';\r\nimport { FilterColumnsIcon } from '~/icons/FilterColumnsIcon';\r\nimport ModalOrderColumns from '~/components/ModalOrderColumns';\r\nimport { AlarmIcon } from '~/icons/AlarmIcon';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '~/providers';\r\nimport moment, { Moment } from 'moment';\r\nimport {\r\n GenerateItemColumn,\r\n NoColumnsSelected,\r\n ReturnLabelContent,\r\n VerifyColumns,\r\n} from '~/components/Table';\r\nimport Pagination from 'rc-pagination';\r\nimport { controlColumnsConfig } from './TableConfigs';\r\nimport { reorderList } from '~/helpers/reorderList';\r\nimport { ColumnTable } from '~/metadata/ColumnTable.model';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { Trans } from 'react-i18next';\r\n\r\ntype HistAlarms = {\r\n ID: number;\r\n ALARM_CODE: string;\r\n START_DATE: string;\r\n END_DATE: string;\r\n DESCRIPTION: string;\r\n REASON_ALARM: string;\r\n ACTION_TAKEN: string;\r\n RESET_TYPE: string;\r\n CAUSE: string;\r\n}[];\r\n\r\ntype FilterColumns = {\r\n ALARM_CODE: { list: { name: string, value: string }[] },\r\n DESCRIPTION: { list: { name: string, value: string }[] },\r\n REASON_ALARM: { list: { name: string, value: string }[] },\r\n ACTION_TAKEN: { list: { name: string, value: string }[] },\r\n RESET_TYPE: { list: { name: string, value: string }[] },\r\n CAUSE: { list: { name: string, value: string }[] },\r\n}\r\n\r\ntype FilterColumnsSelected = {\r\n [key: string]: {\r\n label: string;\r\n values: {\r\n value: string;\r\n name: string\r\n }[]\r\n };\r\n}\r\n\r\nexport function AlarmsHistory(props: Readonly<{\r\n driId: string,\r\n startDate?: Moment | null,\r\n endDate?: Moment | null,\r\n setIsLoading: (loading: boolean) => void,\r\n isLoading: boolean,\r\n sortBy: { column: string; desc: boolean; },\r\n renderState: () => void,\r\n setSortBy: (value: { column: string, desc: boolean }) => void,\r\n setSelectedFilters: (value: { selectedFilterAlarms: { column: string, values: string[] }[] }) => void,\r\n selectedFilters: { column: string, values: string[] }[]\r\n setAlarmHistoryColumns: (value: { exportAlarmHistoryColumns: string[] }) => void,\r\n}>): JSX.Element {\r\n const {\r\n driId,\r\n startDate,\r\n endDate,\r\n sortBy,\r\n isLoading,\r\n setIsLoading,\r\n renderState,\r\n setSelectedFilters,\r\n setSortBy,\r\n selectedFilters,\r\n setAlarmHistoryColumns,\r\n } = props;\r\n const isDesktop = window.matchMedia('(min-width: 768px)');\r\n const [state, render, setState] = useStateVar({\r\n showModalOrderColumns: false,\r\n tablePagination: { tablePage: 1, tablePageSize: 10, totalItems: 0 },\r\n orderedHistAlarms: [] as HistAlarms,\r\n filterColumns: {\r\n ALARM_CODE: { list: [] },\r\n DESCRIPTION: { list: [] },\r\n REASON_ALARM: { list: [] },\r\n ACTION_TAKEN: { list: [] },\r\n RESET_TYPE: { list: [] },\r\n CAUSE: { list: [] },\r\n } as FilterColumns,\r\n selectedFiltersColumns: {\r\n ALARM_CODE: {\r\n label: t('codigo'),\r\n values: [],\r\n },\r\n DESCRIPTION: {\r\n label: t('descricao'),\r\n values: [],\r\n },\r\n REASON_ALARM: {\r\n label: t('porqueAlarmeGerado'),\r\n values: [],\r\n },\r\n ACTION_TAKEN: {\r\n label: t('acaoRealizada'),\r\n values: [],\r\n },\r\n RESET_TYPE: {\r\n label: t('tipoReset'),\r\n values: [],\r\n },\r\n CAUSE: {\r\n label: t('causa'),\r\n values: [],\r\n },\r\n } as FilterColumnsSelected,\r\n controlColumns: controlColumnsConfig,\r\n filterChanged: false,\r\n });\r\n\r\n const columns = [\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('codigo'), 'ALARM_CODE', handleSort, sortBy, {\r\n hasFilter: true,\r\n options: state.filterColumns.ALARM_CODE.list,\r\n onChangeFilter: handleChangeFilters,\r\n onSelectAllOptions: handleSelectAllFilters,\r\n filterAll: state.filterColumns.ALARM_CODE.list.length === state.selectedFiltersColumns.ALARM_CODE.values.length,\r\n value: state.selectedFiltersColumns.ALARM_CODE.values.map((alarm) => alarm.value),\r\n })\r\n ),\r\n Cell: (props) => (\r\n ReturnLabelContent(props.row.original.ALARM_CODE, { padding: true, marginBottom: true })\r\n ),\r\n accessor: 'ALARM_CODE',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('dataInicio'), 'START_DATE', handleSort, sortBy)\r\n ),\r\n Cell: (props) => (\r\n FormatDateColumn(props.row.original.START_DATE)\r\n ),\r\n accessor: 'START_DATE',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('dataFinal'), 'END_DATE', handleSort, sortBy)\r\n ),\r\n Cell: (props) => (\r\n FormatDateColumn(props.row.original.END_DATE)\r\n ),\r\n accessor: 'END_DATE',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('descricao'), 'DESCRIPTION', handleSort, sortBy, {\r\n hasFilter: true,\r\n options: state.filterColumns.DESCRIPTION.list,\r\n onChangeFilter: handleChangeFilters,\r\n onSelectAllOptions: handleSelectAllFilters,\r\n filterAll: state.filterColumns.DESCRIPTION.list.length === state.selectedFiltersColumns.DESCRIPTION.values.length,\r\n value: state.selectedFiltersColumns.DESCRIPTION.values.map((description) => description.value),\r\n })\r\n ),\r\n Cell: (props) => (\r\n VerifyColumns(controlColumns, props.row.original.DESCRIPTION, true)\r\n ),\r\n accessor: 'DESCRIPTION',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('porqueAlarmeGerado'), 'REASON_ALARM', handleSort, sortBy, {\r\n hasFilter: true,\r\n options: state.filterColumns.REASON_ALARM.list,\r\n onChangeFilter: handleChangeFilters,\r\n onSelectAllOptions: handleSelectAllFilters,\r\n filterAll: state.filterColumns.REASON_ALARM.list.length === state.selectedFiltersColumns.REASON_ALARM.values.length,\r\n value: state.selectedFiltersColumns.REASON_ALARM.values.map((reason_alarm) => reason_alarm.value),\r\n })\r\n ),\r\n Cell: (props) => (\r\n VerifyColumns(controlColumns, props.row.original.REASON_ALARM, true)\r\n ),\r\n accessor: 'REASON_ALARM',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('acaoRealizada'), 'ACTION_TAKEN', handleSort, sortBy, {\r\n hasFilter: true,\r\n options: state.filterColumns.ACTION_TAKEN.list,\r\n onChangeFilter: handleChangeFilters,\r\n onSelectAllOptions: handleSelectAllFilters,\r\n filterAll: state.filterColumns.ACTION_TAKEN.list.length === state.selectedFiltersColumns.ACTION_TAKEN.values.length,\r\n value: state.selectedFiltersColumns.ACTION_TAKEN.values.map((action_taken) => action_taken.value),\r\n })\r\n ),\r\n Cell: (props) => (\r\n VerifyColumns(controlColumns, props.row.original.ACTION_TAKEN, true)\r\n ),\r\n accessor: 'ACTION_TAKEN',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('tipoReset'), 'RESET_TYPE', handleSort, sortBy, {\r\n hasFilter: true,\r\n options: state.filterColumns.RESET_TYPE.list,\r\n onChangeFilter: handleChangeFilters,\r\n onSelectAllOptions: handleSelectAllFilters,\r\n filterAll: state.filterColumns.RESET_TYPE.list.length === state.selectedFiltersColumns.RESET_TYPE.values.length,\r\n value: state.selectedFiltersColumns.RESET_TYPE.values.map((reset_type) => reset_type.value),\r\n })\r\n ),\r\n Cell: (props) => (\r\n VerifyColumns(controlColumns, props.row.original.RESET_TYPE, true)\r\n ),\r\n accessor: 'RESET_TYPE',\r\n disableSortBy: true,\r\n },\r\n {\r\n Header: () => (\r\n GenerateItemColumn(t('causa'), 'CAUSE', handleSort, sortBy, {\r\n hasFilter: true,\r\n options: state.filterColumns.CAUSE.list,\r\n onChangeFilter: handleChangeFilters,\r\n onSelectAllOptions: handleSelectAllFilters,\r\n filterAll: state.filterColumns.CAUSE.list.length === state.selectedFiltersColumns.CAUSE.values.length,\r\n value: state.selectedFiltersColumns.CAUSE.values.map((cause) => cause.value),\r\n })\r\n ),\r\n Cell: (props) => (\r\n VerifyColumns(controlColumns, props.row.original.CAUSE, true)\r\n ),\r\n accessor: 'CAUSE',\r\n disableSortBy: true,\r\n },\r\n ];\r\n\r\n const [columnsData, setColumnsData] = useState<(boolean | ColumnTable)[]>(columns);\r\n const [controlColumns, setControlColumns] = useState(controlColumnsConfig);\r\n\r\n useEffect(() => {\r\n if ([startDate, endDate].every((x) => x != null)) {\r\n Promise.resolve().then(async () => {\r\n try {\r\n setIsLoading(true);\r\n handleChangeDate();\r\n await handleGetAllFilters(startDate, endDate, driId);\r\n await handleGetAlarmsHist();\r\n } catch (err) {\r\n toast.error(t('erro')); console.error(err);\r\n }\r\n setIsLoading(false);\r\n });\r\n }\r\n }, [startDate, endDate]);\r\n\r\n useEffect(() => {\r\n const newColumnsData = controlColumns.map((column) => {\r\n if (column.visible === true) {\r\n return columns.find((columnTable) => columnTable.accessor === column.id) ?? false;\r\n }\r\n return false;\r\n });\r\n\r\n setColumnsData(newColumnsData);\r\n }, [state.orderedHistAlarms]);\r\n\r\n useEffect(() => {\r\n handleSetColumnsData(controlColumnsConfig);\r\n setSortBy({ column: 'START_DATE', desc: true });\r\n }, []);\r\n\r\n function verifyAlarmRegistered(alarmKey) {\r\n return i18next.exists(alarmKey) ? t(alarmKey) : '-';\r\n }\r\n\r\n function handleGetExtraInfoALarm(alarms) {\r\n const alarmsWithExtraInfo = alarms.map((alarm) => ({\r\n ALARM_CODE: alarm.ALARM_CODE,\r\n START_DATE: alarm.START_DATE,\r\n END_DATE: alarm.END_DATE,\r\n DESCRIPTION: verifyAlarmRegistered(`alarm_${alarm.ALARM_CODE}_description`),\r\n REASON_ALARM: verifyAlarmRegistered(`alarm_${alarm.ALARM_CODE}_reason_alarm`),\r\n ACTION_TAKEN: verifyAlarmRegistered(`alarm_${alarm.ALARM_CODE}_action_taken`),\r\n RESET_TYPE: verifyAlarmRegistered(`alarm_${alarm.ALARM_CODE}_reset_type`),\r\n CAUSE: verifyAlarmRegistered(`alarm_${alarm.ALARM_CODE}_cause`),\r\n }));\r\n\r\n setState({ orderedHistAlarms: alarmsWithExtraInfo });\r\n render();\r\n }\r\n\r\n async function handleGetAllFilters(startDate, endDate, driId) {\r\n const allAlarmsCodes = await apiCall('/dri/get-all-chiller-alarms-codes', {\r\n DEVICE_CODE: driId,\r\n START_DATE: startDate.format('YYYY-MM-DD'),\r\n END_DATE: endDate.format('YYYY-MM-DD'),\r\n });\r\n\r\n const filterColumnsAux: FilterColumns = {\r\n ALARM_CODE: { list: [] },\r\n DESCRIPTION: { list: [] },\r\n REASON_ALARM: { list: [] },\r\n RESET_TYPE: { list: [] },\r\n ACTION_TAKEN: { list: [] },\r\n CAUSE: { list: [] },\r\n };\r\n\r\n allAlarmsCodes.list.forEach((alarms) => {\r\n filterColumnsAux.ALARM_CODE.list.push({\r\n name: alarms.ALARM_CODE,\r\n value: alarms.ALARM_CODE,\r\n });\r\n\r\n i18next.exists(`alarm_${alarms.ALARM_CODE}_description`) && filterColumnsAux.DESCRIPTION.list.push({\r\n name: t(`alarm_${alarms.ALARM_CODE}_description`),\r\n value: alarms.ALARM_CODE,\r\n });\r\n i18next.exists(`alarm_${alarms.ALARM_CODE}_reason_alarm`) && filterColumnsAux.REASON_ALARM.list.push({\r\n name: t(`alarm_${alarms.ALARM_CODE}_reason_alarm`),\r\n value: alarms.ALARM_CODE,\r\n });\r\n i18next.exists(`alarm_${alarms.ALARM_CODE}_action_taken`) && filterColumnsAux.ACTION_TAKEN.list.push({\r\n name: t(`alarm_${alarms.ALARM_CODE}_action_taken`),\r\n value: alarms.ALARM_CODE,\r\n });\r\n i18next.exists(`alarm_${alarms.ALARM_CODE}_reset_type`) && filterColumnsAux.RESET_TYPE.list.push({\r\n name: t(`alarm_${alarms.ALARM_CODE}_reset_type`),\r\n value: alarms.ALARM_CODE,\r\n });\r\n i18next.exists(`alarm_${alarms.ALARM_CODE}_cause`) && filterColumnsAux.CAUSE.list.push({\r\n name: t(`alarm_${alarms.ALARM_CODE}_cause`),\r\n value: alarms.ALARM_CODE,\r\n });\r\n });\r\n\r\n setState({ filterColumns: filterColumnsAux });\r\n render();\r\n }\r\n\r\n function handleCloseModal() {\r\n setState({ showModalOrderColumns: !state.showModalOrderColumns });\r\n render();\r\n }\r\n\r\n function handleChangeColumns(columnId) {\r\n const toggleVisibility = (column) => ({\r\n ...column,\r\n visible: column.id === columnId ? !column.visible : column.visible,\r\n });\r\n\r\n const updatedColumns = controlColumns.map(toggleVisibility);\r\n setControlColumns(updatedColumns);\r\n handleSetExportColumns(updatedColumns);\r\n\r\n const newColumnsData = updatedColumns.map((column) => {\r\n if (column.visible === true) {\r\n return columns.find((columnTable) => columnTable.accessor === column.id) ?? false;\r\n }\r\n return false;\r\n });\r\n\r\n setColumnsData(newColumnsData);\r\n\r\n return updatedColumns.some((column) => column.visible);\r\n }\r\n\r\n async function handleSort(column: string) {\r\n let sortByAux: { column: string; desc: boolean; };\r\n\r\n if (sortBy.column === column) {\r\n sortByAux = { ...sortBy, desc: !sortBy.desc };\r\n } else {\r\n sortByAux = { column, desc: true };\r\n }\r\n\r\n setSortBy(sortByAux);\r\n if ([startDate, endDate].every((x) => x != null)) {\r\n await handleGetAlarmsHist({\r\n sortByColumn: sortByAux.column, sortByDesc: sortByAux.desc, page: 1,\r\n });\r\n }\r\n }\r\n\r\n async function handleGetAlarmsHist(params?: { page?: number, sortByColumn?: string, sortByDesc?: boolean, filterParams?: { column: string, values: string[] }[] }) {\r\n const pageAux = params?.page || state.tablePagination.tablePage;\r\n const sortByAux = params?.sortByColumn ? { column: params.sortByColumn, desc: !!params.sortByDesc } : sortBy;\r\n const filters = params?.filterParams ?? selectedFilters;\r\n\r\n const alarmsHist = await apiCall('/dri/get-chiller-alarms-list-hist', {\r\n DEVICE_CODE: driId,\r\n START_DATE: startDate?.format('YYYY-MM-DD'),\r\n END_DATE: endDate?.format('YYYY-MM-DD'),\r\n LIMIT: state.tablePagination.tablePageSize,\r\n SKIP: state.filterChanged ? 0 : (pageAux - 1) * state.tablePagination.tablePageSize,\r\n ORDER_BY: {\r\n column: sortByAux.column,\r\n desc: sortByAux.desc,\r\n },\r\n filterBy: filters,\r\n });\r\n\r\n handleGetExtraInfoALarm(alarmsHist.list);\r\n setState({ tablePagination: { ...state.tablePagination, tablePage: pageAux, totalItems: alarmsHist.totalItems }, filterChanged: false });\r\n render();\r\n }\r\n\r\n async function handleChangePage(page: number) {\r\n setState({ tablePagination: { ...state.tablePagination, tablePage: page } });\r\n render();\r\n await handleGetAlarmsHist({ page });\r\n }\r\n\r\n function handleSetColumnsData(newColumns) {\r\n setControlColumns(newColumns);\r\n handleSetExportColumns(newColumns);\r\n\r\n const newColumnsData = newColumns.map((column) => {\r\n if (column.visible === true) {\r\n return columns.find((columnTable) => {\r\n if (typeof columnTable !== 'boolean') {\r\n return columnTable.accessor === column.id;\r\n }\r\n\r\n return false;\r\n }) ?? false;\r\n }\r\n return false;\r\n });\r\n\r\n setColumnsData(newColumnsData);\r\n }\r\n\r\n function handleSetExportColumns(columns) {\r\n const columnsToExport: string[] = [];\r\n for (const col of columns) {\r\n if (col?.visible) {\r\n columnsToExport.push(col.id);\r\n }\r\n }\r\n setAlarmHistoryColumns({ exportAlarmHistoryColumns: columnsToExport });\r\n }\r\n\r\n async function handleChangeFilters(name, filters) {\r\n switch (name) {\r\n case t('codigo'):\r\n state.selectedFiltersColumns.ALARM_CODE.values = filters.map((alarm) => ({ name: alarm, value: alarm }));\r\n break;\r\n case t('descricao'):\r\n state.selectedFiltersColumns.DESCRIPTION.values = filters.map((alarm) => ({ name: t(`alarm_${alarm}_description`), value: alarm }));\r\n break;\r\n case t('porqueAlarmeGerado'):\r\n state.selectedFiltersColumns.REASON_ALARM.values = filters.map((alarm) => ({ name: t(`alarm_${alarm}_reason_alarm`), value: alarm }));\r\n break;\r\n case t('acaoRealizada'):\r\n state.selectedFiltersColumns.ACTION_TAKEN.values = filters.map((alarm) => ({ name: t(`alarm_${alarm}_action_taken`), value: alarm }));\r\n break;\r\n case t('tipoReset'):\r\n state.selectedFiltersColumns.RESET_TYPE.values = filters.map((alarm) => ({ name: t(`alarm_${alarm}_reset_type`), value: alarm }));\r\n break;\r\n case t('causa'):\r\n state.selectedFiltersColumns.CAUSE.values = filters.map((alarm) => ({ name: t(`alarm_${alarm}_cause`), value: alarm }));\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n state.filterChanged = true;\r\n render();\r\n\r\n await handleUpdateFiltersAux();\r\n }\r\n\r\n function handleChangeDate() {\r\n setState({\r\n selectedFilterColumns: {\r\n ALARM_CODE: [],\r\n DESCRIPTION: [],\r\n REASON_ALARM: [],\r\n RESET_TYPE: [],\r\n ACTION_TAKEN: [],\r\n CAUSE: [],\r\n },\r\n orderedHistAlarms: [],\r\n });\r\n\r\n setSortBy({ column: 'START_DATE', desc: true });\r\n setState({ tablePagination: { ...state.tablePagination, tablePage: 1 } });\r\n render();\r\n }\r\n\r\n async function handleRemoveAllFilters() {\r\n state.selectedFiltersColumns.ALARM_CODE.values = [];\r\n state.selectedFiltersColumns.DESCRIPTION.values = [];\r\n state.selectedFiltersColumns.REASON_ALARM.values = [];\r\n state.selectedFiltersColumns.RESET_TYPE.values = [];\r\n state.selectedFiltersColumns.ACTION_TAKEN.values = [];\r\n state.selectedFiltersColumns.CAUSE.values = [];\r\n state.filterChanged = false;\r\n setSelectedFilters({ selectedFilterAlarms: [] });\r\n renderState();\r\n render();\r\n await handleGetAlarmsHist({ filterParams: [] });\r\n }\r\n\r\n const handleRemoveCategoryFilter = async (columnKey: string) => {\r\n state.selectedFiltersColumns[columnKey].values = [];\r\n state.filterChanged = true;\r\n await handleUpdateFiltersAux();\r\n render();\r\n };\r\n\r\n async function handleSelectAllFilters(name, filterAll) {\r\n const filterColumnsAux = JSON.parse(JSON.stringify(state.filterColumns));\r\n switch (name) {\r\n case t('codigo'):\r\n state.selectedFiltersColumns.ALARM_CODE.values = filterAll ? filterColumnsAux.ALARM_CODE.list : [];\r\n break;\r\n case t('descricao'):\r\n state.selectedFiltersColumns.DESCRIPTION.values = filterAll ? filterColumnsAux.DESCRIPTION.list : [];\r\n break;\r\n case t('porqueAlarmeGerado'):\r\n state.selectedFiltersColumns.REASON_ALARM.values = filterAll ? filterColumnsAux.REASON_ALARM.list : [];\r\n break;\r\n case t('acaoRealizada'):\r\n state.selectedFiltersColumns.ACTION_TAKEN.values = filterAll ? filterColumnsAux.ACTION_TAKEN.list : [];\r\n break;\r\n case t('tipoReset'):\r\n state.selectedFiltersColumns.RESET_TYPE.values = filterAll ? filterColumnsAux.RESET_TYPE.list : [];\r\n break;\r\n case t('causa'):\r\n state.selectedFiltersColumns.CAUSE.values = filterAll ? filterColumnsAux.CAUSE.list : [];\r\n break;\r\n default:\r\n break;\r\n }\r\n state.filterChanged = true;\r\n render();\r\n\r\n await handleUpdateFiltersAux();\r\n }\r\n\r\n async function handleRemoveFilter(columnKey: string, filterIndex: number) {\r\n state.selectedFiltersColumns[columnKey].values.splice(filterIndex, 1);\r\n state.filterChanged = true;\r\n await handleUpdateFiltersAux();\r\n\r\n render();\r\n }\r\n\r\n async function handleUpdateFiltersAux() {\r\n const selectedFilterAlarms = Object.entries(state.selectedFiltersColumns)\r\n .filter(([_, columnObj]) => columnObj.values.length > 0)\r\n .map(([columnName, columnObj]) => ({\r\n column: columnName,\r\n values: columnObj.values.map((valueObj) => valueObj.value),\r\n }));\r\n\r\n setSelectedFilters({ selectedFilterAlarms });\r\n\r\n if (!selectedFilterAlarms.length) {\r\n await handleGetAlarmsHist({ filterParams: selectedFilterAlarms, page: 1 });\r\n }\r\n\r\n renderState();\r\n }\r\n\r\n return (\r\n
\r\n \r\n \r\n
\r\n \r\n

Aguarde, os dados estão

\r\n

sendo carregados.

\r\n \r\n
\r\n
\r\n
\r\n \r\n <>\r\n \r\n \r\n {t('alarmes')}\r\n \r\n \r\n { setState({ showModalOrderColumns: !state.showModalOrderColumns }); render(); }}>\r\n \r\n {t('colunas')}\r\n \r\n \r\n \r\n \r\n {controlColumns.some(\r\n (column) => column.visible === true,\r\n ) ? (\r\n date == null) ? NoPeriodSelected : NoDataInTable}\r\n noBorderBottom\r\n handleRemoveAllFilters={handleRemoveAllFilters}\r\n handleRemoveFilter={handleRemoveFilter}\r\n filtersSelected={state.selectedFiltersColumns}\r\n handleSearchWithFilters={handleGetAlarmsHist}\r\n handleRemoveCategoryFilter={handleRemoveCategoryFilter}\r\n style={{\r\n padding: '0 10px',\r\n minHeight: state.orderedHistAlarms.length ? '200px' : '0px',\r\n boxShadow: 'none',\r\n overflowX: state.orderedHistAlarms.length ? 'auto' : 'hidden',\r\n overflowY: state.orderedHistAlarms.length > 7 ? 'auto' : 'hidden',\r\n }}\r\n />\r\n ) : (\r\n \r\n )}\r\n \r\n \r\n {state.tablePagination.totalItems > 0 && (\r\n \r\n handleChangePage(current)}\r\n disabled={isLoading}\r\n />\r\n \r\n )}\r\n
\r\n\r\n {state.showModalOrderColumns && (\r\n {\r\n setControlColumns((prevState) => {\r\n const dataAux = reorderList(prevState, dragIndex, hoverIndex);\r\n handleSetExportColumns(dataAux);\r\n return dataAux;\r\n });\r\n setColumnsData((prevState) => reorderList(prevState, dragIndex, hoverIndex));\r\n }}\r\n handleResetColumns={(originalColumns) => handleSetColumnsData(originalColumns)}\r\n />\r\n )}\r\n
\r\n );\r\n}\r\n\r\nfunction NoDataInTable() {\r\n return (\r\n
\r\n \r\n \r\n {t('historicoDeAlarmes')}\r\n {t('naoHouveramRegistrosAlarmesDiaSelecionado')}\r\n \r\n
\r\n\r\n );\r\n}\r\n\r\nfunction NoPeriodSelected() {\r\n return (\r\n
\r\n \r\n \r\n {t('historicoDeAlarmes')}\r\n {t('selecioneDataParaMostrarHistorico')}\r\n \r\n
\r\n );\r\n}\r\n\r\nfunction FormatDateColumn(date) {\r\n const dataMoment = moment(date);\r\n const dateFormated = dataMoment.format('DD/MM/YYYY');\r\n const hourFormated = `${dataMoment.format('HH:mm')}h`;\r\n return (\r\n
\r\n {date != null ? (\r\n <>\r\n
{dateFormated}
\r\n
{hourFormated}
\r\n \r\n ) : (\r\n
-
\r\n )}\r\n
\r\n );\r\n}\r\n","import { t } from 'i18next';\r\nimport { toast } from 'react-toastify';\r\nimport { ApiResps } from '~/providers';\r\nimport moment from 'moment';\r\n\r\nconst daysWeek = [t('domingo'), t('segundaFeira'), t('tercaFeira'), t('quartaFeira'), t('quintaFeira'), t('sextaFeira'), t('sabado')];\r\n\r\nexport function getDaysBetweenDates(startDate: Date, endDate: Date): Date[] {\r\n const days: Date[] = [];\r\n const currentDate = new Date(startDate);\r\n // Loop para adicionar cada dia entre as datas de início e fim\r\n while (currentDate <= endDate) {\r\n days.push(new Date(currentDate));\r\n currentDate.setDate(currentDate.getDate() + 1);\r\n }\r\n return days;\r\n}\r\n\r\nexport function getListDays(props, setState, state) {\r\n if (props.startDate && props.endDate) {\r\n const startDate = new Date(props.startDate.format('YYYY-MM-DD'));\r\n const endDate = new Date(props.endDate.format('YYYY-MM-DD'));\r\n startDate.setDate(startDate.getDate() + 1);\r\n endDate.setDate(endDate.getDate() + 1);\r\n const daysBetweenDates = getDaysBetweenDates(startDate, endDate);\r\n if (daysBetweenDates.length > 15) {\r\n toast.error(t('numeroMaximoDeDias'));\r\n setState({ dataPeriodOut: true });\r\n return true;\r\n }\r\n setState({ listDays: daysBetweenDates });\r\n }\r\n if (state.listDays.length > 5) {\r\n setState({ numPoints: 24, hourGraph: true, interval: 1 });\r\n } else {\r\n setState({ numPoints: 144, hourGraph: false, interval: 10 });\r\n }\r\n setState({ dataPeriodOut: false });\r\n return false;\r\n}\r\n\r\nexport function criarNovoArrayDuplicandoOsValoresPeloTempo(array: ApiResps['/dri/get-chiller-parameters-hist']['paramsLists']['paramsChanged']) {\r\n const novoArray: number[] = [];\r\n let currentIndex = 0;\r\n let currentTime = new Date(array[0].record_date).getTime();\r\n const finalDoDia = new Date(currentTime);\r\n finalDoDia.setDate(finalDoDia.getDate() + 1);\r\n finalDoDia.setSeconds(finalDoDia.getSeconds() - 1); // Configura o último segundo do dia anterior\r\n const now = Date.now();\r\n while (currentTime <= finalDoDia.getTime()) {\r\n const currentObj = array[currentIndex];\r\n const nextObj = array[currentIndex + 1];\r\n const nextTime = nextObj ? new Date(nextObj.record_date).getTime() : finalDoDia.getTime();\r\n\r\n novoArray.push(currentObj.parameter_value);\r\n\r\n if (currentTime >= now) {\r\n break;\r\n }\r\n\r\n // Se o próximo objeto existir e a hora atual for menor que o próximo tempo, repita o número atual\r\n while (nextObj && currentTime < nextTime) {\r\n novoArray.push(currentObj.parameter_value);\r\n currentTime += 30000; // Avança 30seg\r\n }\r\n // Se o próximo objeto existir, avance para ele\r\n if (nextObj) {\r\n currentIndex++;\r\n }\r\n\r\n // Avança para o próximo intervalo de 30 segundos\r\n currentTime += 30000;\r\n }\r\n return novoArray;\r\n}\r\n\r\nexport function agruparPorData(array: ApiResps['/dri/get-chiller-parameters-hist']['paramsLists']['paramsChanged'], listDates: Date[]) {\r\n const grupos: { [data: string]: ApiResps['/dri/get-chiller-parameters-hist']['paramsLists']['paramsChanged'] } = {};\r\n const objectDatesArrayNull: { [data: string]: any[] } = {};\r\n (array || []).forEach((obj) => {\r\n const data = obj.record_date.split('T')[0];\r\n if (!grupos[data]) {\r\n grupos[data] = [];\r\n }\r\n grupos[data].push(obj);\r\n });\r\n const arrayNull: any[] = new Array(2880).fill(null);\r\n const valuesFinal: number[][] = [];\r\n const filterDates = listDates.filter((item) => !grupos[moment(item).format('YYYY-MM-DD')]);\r\n filterDates.forEach((item) => {\r\n const data = moment(item).format('YYYY-MM-DD');\r\n if (!objectDatesArrayNull[data]) {\r\n objectDatesArrayNull[data] = [];\r\n }\r\n objectDatesArrayNull[data].push('');\r\n });\r\n const arraySeparadasPorDia = Object.values(grupos);\r\n const chavesObjeto = Object.keys(grupos);\r\n arraySeparadasPorDia.forEach((item) => valuesFinal.push(criarNovoArrayDuplicandoOsValoresPeloTempo(item)));\r\n const arrayDatasOrganizadas: number[][] = [];\r\n listDates.forEach((item) => {\r\n const data = moment(item).format('YYYY-MM-DD');\r\n if (grupos[data]) {\r\n arrayDatasOrganizadas.push(valuesFinal[chavesObjeto.indexOf(data)]);\r\n } else if (objectDatesArrayNull[data]) {\r\n arrayDatasOrganizadas.push(arrayNull);\r\n }\r\n });\r\n const valoresRepetidos: number[] = arrayDatasOrganizadas.reduce((acc, val) => acc.concat(val), []);\r\n return valoresRepetidos;\r\n}\r\n\r\nexport function gerarNumerosAteMaximoDataX(maximo: number, setState) {\r\n const numeros: number[] = [];\r\n for (let i = 0; i <= maximo; i++) {\r\n numeros.push(i);\r\n }\r\n setState({ dataX: numeros });\r\n}\r\n\r\nexport function gerarNumerosAteMaximoDataXChangedParams(days: number, setState, state) {\r\n const numeros: number[] = [];\r\n const max = 2880 * days;\r\n for (let i = 0; i <= max; i++) {\r\n numeros.push(i);\r\n }\r\n const numPoints = days > 5 ? 24 : 144;\r\n setState({ dataXChangedParams: numeros, numPoints });\r\n setState({ dataX: numeros.slice(0, (state.numPoints * days) + 1) });\r\n}\r\n\r\nexport function separarValoresPorPropriedade(array: ApiResps['/dri/get-chiller-parameters-hist']['paramsLists']['paramsGrouped']) {\r\n const propriedades = {}; // Objeto para armazenar arrays de valores por propriedade\r\n array.forEach((objeto) => {\r\n // Para cada objeto, percorra todas as chaves\r\n Object.entries(objeto).forEach(([chave, valor]) => {\r\n const chaveLower = chave.toLocaleLowerCase();\r\n propriedades[chaveLower] = propriedades[chaveLower] || [];\r\n propriedades[chaveLower].push(valor);\r\n });\r\n });\r\n return propriedades;\r\n}\r\n\r\nexport function formatterxAxis(state, changedParams?: boolean) {\r\n const numPoints = (changedParams ? 2880 : state.numPoints); // 2880 segundos no dia.\r\n let isDifferentMonth = false;\r\n if (state.listDays[0]?.getMonth() !== state.listDays[state.listDays.length - 1]?.getMonth()) {\r\n isDifferentMonth = true;\r\n }\r\n return ((value) => {\r\n if (value % numPoints === 0) {\r\n if (value / numPoints === state.listDays.length) {\r\n return;\r\n }\r\n const dayWeek = state.listDays[value / numPoints]?.getDay();\r\n const date = state.listDays[(value / numPoints)];\r\n const monthPart = isDifferentMonth ? `/${(date?.getMonth() + 1).toString().padStart(2, '0')}` : '';\r\n if (dayWeek === 0) {\r\n return `{bold|${date?.getDate().toString().padStart(2, '0')}${monthPart}\\n${daysWeek[dayWeek][0]}}`;\r\n }\r\n return `${date?.getDate().toString().padStart(2, '0')}${monthPart}\\n${daysWeek[dayWeek][0]}`;\r\n }\r\n });\r\n}\r\n\r\nexport function returnXAxis(state, changedParams?: boolean) {\r\n return {\r\n type: 'category',\r\n boundaryGap: false,\r\n splitLine: {\r\n show: true,\r\n interval: changedParams ? 2879 : 23,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n data: changedParams ? state.dataXChangedParams : state.dataX,\r\n axisLabel: {\r\n show: true,\r\n padding: [0, 0, 0, 0],\r\n interval: changedParams ? 2879 : 23,\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n fontSize: '10',\r\n lineHeight: 12,\r\n margin: 8,\r\n formatter: formatterxAxis(state, changedParams),\r\n rich: {\r\n bold: {\r\n fontWeight: 'bold',\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n fontSize: '10',\r\n },\r\n },\r\n },\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n };\r\n}\r\n\r\nfunction secondsToTime(seconds) {\r\n const hours = Math.floor(seconds / 3600);\r\n const minutes = Math.floor((seconds % 3600) / 60);\r\n const secs = seconds % 60;\r\n\r\n // Formata para garantir que horas, minutos e segundos tenham dois dígitos\r\n const formattedHours = String(hours).padStart(2, '0');\r\n const formattedMinutes = String(minutes).padStart(2, '0');\r\n const formattedSeconds = String(secs).padStart(2, '0');\r\n\r\n return `${formattedHours}:${formattedMinutes}:${formattedSeconds}`;\r\n}\r\n\r\nexport function getDate(state, index, recordDate, changedParams?: boolean) {\r\n const numPoints = (changedParams ? 2880 : state.numPoints); // 2880 segundos no dia.\r\n const dateFull = state.listDays[Math.floor(index / numPoints)];\r\n const day = dateFull?.getDate().toString();\r\n const month = (dateFull?.getMonth() + 1).toString();\r\n const year = dateFull?.getFullYear().toString();\r\n const timeGrouped = (index * 30) > 86400 ? (index * 30) % 86400 : index * 30;\r\n const hour = changedParams ? secondsToTime(timeGrouped) : recordDate[index]?.split('T')[1];\r\n return `${day?.padStart(2, '0')}/${month?.padStart(2, '0')}/${year} ${hour?.substring(0, 5)}h`;\r\n}\r\n\r\nfunction setCircuitMaxValueAndCounter(isCircuit, item, acc) {\r\n if (isCircuit && item.unidMed != null) {\r\n const maxValue = item.data?.length > 0 ? Math.max(...item.data) : 0;\r\n if (!acc.maxValue[item.unidMed]) {\r\n acc.maxValue[item.unidMed] = 0;\r\n }\r\n acc.maxValue[item.unidMed] = Math.max(acc.maxValue[item.unidMed] || 0, maxValue);\r\n }\r\n}\r\n\r\nexport function getDataToGraphsAndSetMaxValues(allWithoutDefault, percentArray, setState, state) {\r\n const {\r\n countValuesUniMed, sendToGraphDefault, sendToGraphPercent, maxValue,\r\n } = allWithoutDefault.reduce((acc, item) => {\r\n const newState = { ...acc };\r\n if (!percentArray.includes(item.value)) {\r\n const isCircuit = (item.value !== 'ACircuit' && item.value !== 'BCircuit');\r\n setCircuitMaxValueAndCounter(isCircuit, item, acc);\r\n newState.sendToGraphDefault.push(item);\r\n } else {\r\n newState.sendToGraphPercent.push(item);\r\n }\r\n acc.countValuesUniMed[item.unidMed]++;\r\n return newState;\r\n }, {\r\n maxValue: {\r\n C: 0,\r\n kPa: 0,\r\n A: 0,\r\n H: 0,\r\n },\r\n countValuesUniMed: {\r\n C: 0,\r\n kPa: 0,\r\n A: 0,\r\n H: 0,\r\n P: 0,\r\n },\r\n sendToGraphDefault: [],\r\n sendToGraphPercent: [],\r\n });\r\n setState({\r\n ...state,\r\n maxValue,\r\n countValuesUniMed,\r\n sendToGraphDefault,\r\n sendToGraphPercent,\r\n });\r\n}\r\n\r\nconst hexToRgb = (hex) => {\r\n hex = hex.replace(/^#/, '');\r\n const r = parseInt(hex.substring(0, 2), 16);\r\n const g = parseInt(hex.substring(2, 4), 16);\r\n const b = parseInt(hex.substring(4, 6), 16);\r\n return [r, g, b];\r\n};\r\n\r\nconst rgbToHex = (r, g, b) => {\r\n const toHex = (x) => {\r\n const hex = x.toString(16);\r\n return hex.length === 1 ? `0${hex}` : hex;\r\n };\r\n return `#${toHex(r)}${toHex(g)}${toHex(b)}`.toUpperCase();\r\n};\r\n\r\nexport const darkenColor = (hex, amount) => {\r\n const [r, g, b] = hexToRgb(hex);\r\n const newR = Math.max(0, r - amount);\r\n const newG = Math.max(0, g - amount);\r\n const newB = Math.max(0, b - amount);\r\n return rgbToHex(newR, newG, newB);\r\n};\r\n\r\ntype DataRecord = ApiResps['/dri/get-chiller-parameters-hist']['paramsLists']['paramsGrouped'][0]\r\n\r\nfunction setTimeToLoop(i, interval, numPoints, countHour) {\r\n const counter = i * interval;\r\n const hours = numPoints === 24 ? i : countHour;\r\n const minutes = counter < 60 ? counter : counter % 60;\r\n let time: string;\r\n if (interval === 10) {\r\n time = `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}`;\r\n } else {\r\n time = `${hours.toString().padStart(2, '0')}:00`;\r\n }\r\n return { hours, minutes, time };\r\n}\r\n\r\nfunction fillMissingIntervals(dataArray: DataRecord[], numPoints: number, chillerModel: string): DataRecord[] {\r\n const filledData: any = [];\r\n const dataMap = dataArray.reduce((map, data) => {\r\n const time = moment(data.record_date).format('HH:mm');\r\n map[time] = data;\r\n return map;\r\n }, {} as { [key: string]: DataRecord });\r\n let countHour = 0;\r\n const interval = numPoints === 24 ? 1 : 10; // Intervalo em horas (1 para 24 pontos) ou minutos (10 para 144 pontos)\r\n const data = dataArray[0].record_date.split('T')[0];\r\n const currentDate = moment();\r\n for (let i = 0; i < numPoints; i += 1) {\r\n const { hours, minutes, time } = setTimeToLoop(i, interval, numPoints, countHour);\r\n if (dataMap[time]) {\r\n filledData.push(dataMap[time]);\r\n } else {\r\n if (moment(dataArray[0].record_date).isSame(currentDate, 'day') && hours > currentDate.hours()) {\r\n // Não preenche além do horário atual\r\n break;\r\n }\r\n filledData.push(chillerModel === 'XA' ? ObjectXAData(`${data}T${time}:00Z`) : ObjectHXData(`${data}T${time}:00Z`));\r\n }\r\n\r\n if (minutes === 50) {\r\n countHour++;\r\n }\r\n }\r\n return filledData;\r\n}\r\ninterface RecordStatus {\r\n haveData: boolean;\r\n count: number;\r\n date: string;\r\n}\r\n\r\nexport function createRecordStatusObject(recordDates: string[], listDates: Date[]): { [key: number]: RecordStatus } {\r\n const recordStatusObject: { [key: number]: RecordStatus } = {};\r\n listDates.forEach((date, index) => {\r\n const dateObj = moment(date).format('YYYY-MM-DD');\r\n const count = recordDates.filter((recordDate) => recordDate.split('T')[0] === dateObj).length;\r\n recordStatusObject[index] = {\r\n haveData: count > 0,\r\n count,\r\n date: dateObj,\r\n };\r\n });\r\n return recordStatusObject;\r\n}\r\n\r\nconst ObjectXAData = (record_date) => ({\r\n cap_t: null,\r\n cond_ewt: null,\r\n cond_lwt: null,\r\n cool_ewt: null,\r\n cool_lwt: null,\r\n ctrl_pnt: null,\r\n deviceCode: null,\r\n dp_a: null,\r\n dp_b: null,\r\n hr_cp_a: null,\r\n hr_cp_b: null,\r\n hr_mach: null,\r\n hr_mach_b: null,\r\n oat: null,\r\n op_a: null,\r\n op_b: null,\r\n record_date,\r\n sct_a: null,\r\n sct_b: null,\r\n slt_a: null,\r\n slt_b: null,\r\n sp: null,\r\n sp_a: null,\r\n sp_b: null,\r\n sst_a: null,\r\n sst_b: null,\r\n unit_id: null,\r\n});\r\n\r\nconst ObjectHXData = (record_date) => ({\r\n cap_t: null,\r\n capa_t: null,\r\n capb_t: null,\r\n cond_ewt: null,\r\n cond_lwt: null,\r\n cond_sp: null,\r\n cool_ewt: null,\r\n cool_lwt: null,\r\n cpa1_cur: null,\r\n cpa1_dgt: null,\r\n cpa1_op: null,\r\n cpa1_tmp: null,\r\n cpa2_cur: null,\r\n cpa2_dgt: null,\r\n cpa2_op: null,\r\n cpa2_tmp: null,\r\n cpb1_cur: null,\r\n cpb1_dgt: null,\r\n cpb1_op: null,\r\n cpb1_tmp: null,\r\n cpb2_cur: null,\r\n cpb2_dgt: null,\r\n cpb2_op: null,\r\n cpb2_tmp: null,\r\n ctrl_pnt: null,\r\n dem_lim: null,\r\n device_code: null,\r\n dop_a1: null,\r\n dop_a2: null,\r\n dop_b1: null,\r\n dop_b2: null,\r\n dp_a: null,\r\n dp_b: null,\r\n exv_a: null,\r\n exv_b: null,\r\n hr_cp_a1: null,\r\n hr_cp_a2: null,\r\n hr_cp_b1: null,\r\n hr_cp_b2: null,\r\n lag_lim: null,\r\n record_date,\r\n sct_a: null,\r\n sct_b: null,\r\n sp: null,\r\n sp_a: null,\r\n sp_b: null,\r\n sst_a: null,\r\n sst_b: null,\r\n unit_id: null,\r\n});\r\n\r\nexport function processData(pointsObj: { [key: number]: RecordStatus }, dataArray: DataRecord[], numPoints: number, chillerModel: string): DataRecord[] {\r\n const results: any = [];\r\n\r\n let sumData = 0;\r\n for (const day in pointsObj) {\r\n const value = pointsObj[day];\r\n sumData += value.count;\r\n\r\n if (value.haveData) {\r\n if (numPoints === value.count) {\r\n results.push(...dataArray.slice(sumData - value.count, sumData));\r\n } else {\r\n const arrayData = dataArray.slice(sumData - value.count, sumData);\r\n results.push(...fillMissingIntervals(arrayData, numPoints, chillerModel));\r\n }\r\n } else {\r\n const date = moment(value.date);\r\n for (let i = 0; i < numPoints; i++) {\r\n date.hours(i);\r\n date.minutes(0);\r\n results.push(chillerModel === 'XA' ? ObjectXAData(date.format()) : ObjectHXData(date.format()));\r\n }\r\n }\r\n }\r\n return results;\r\n}\r\n","import { useContext, useEffect, useRef } from 'react';\r\nimport {\r\n TooltipComponent,\r\n GridComponent,\r\n VisualMapComponent,\r\n} from 'echarts/components';\r\nimport * as echarts from 'echarts/core';\r\nimport { LineChart } from 'echarts/charts';\r\nimport { UniversalTransition } from 'echarts/features';\r\nimport { SVGRenderer } from 'echarts/renderers';\r\nimport { t } from 'i18next';\r\nimport { haveToolbox, zoomTooltipOff } from './ChillerParameters';\r\nimport MenuContext from '~/contexts/menuContext';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\necharts.use([\r\n TooltipComponent,\r\n GridComponent,\r\n VisualMapComponent,\r\n LineChart,\r\n SVGRenderer,\r\n UniversalTransition,\r\n]);\r\n\r\ninterface TooltipParams {\r\n name: string; // Nome da categoria\r\n value: number; // Valor do ponto de dados\r\n seriesName: string; // Nome da série\r\n seriesType: string; // Tipo da série\r\n dataIndex: number; // Índice do ponto de dados\r\n color: string; // Cor da série\r\n}\r\n\r\nexport function GenerateGraphSample({\r\n arrayData, name, xAxis, title, haveTitle, driId, getDate, groupGraph, isLoading, countUniMed, maxValue, toolbox,\r\n}) {\r\n const chartRef = useRef(null);\r\n const { menuToogle } = useContext(MenuContext);\r\n let objectData;\r\n function verifyIndexY(item) {\r\n if (item === 'H') return 0;\r\n if (item === 'C') return 1;\r\n if (item === 'kPa') return 3;\r\n if (item === 'A') return 2;\r\n if (item === 'P' && groupGraph) return 4;\r\n return 0;\r\n }\r\n\r\n function returnWitchUniMedHave() {\r\n const haveCelcius = countUniMed.C > 0;\r\n const haveHour = countUniMed.H > 0;\r\n const haveKpa = countUniMed.kPa > 0;\r\n const haveAmper = countUniMed.A > 0;\r\n const havePercent = countUniMed.P > 0;\r\n return {\r\n haveCelcius, haveAmper, haveHour, haveKpa, havePercent,\r\n };\r\n }\r\n\r\n function formatLabel(value: any, unit: string) {\r\n const numberValue = parseFloat(value);\r\n\r\n if (!Number.isNaN(numberValue)) {\r\n const formattedNumber = formatNumberWithFractionDigits(value);\r\n return `${formattedNumber} ${unit}`;\r\n }\r\n\r\n return `${value}`;\r\n }\r\n\r\n const generateAxisConfig = (name: string, maxValue: number, unit: string, fontSize: number, align: string, offset: number, position: string, textAlign?: string) => ({\r\n type: 'value',\r\n name: name ? `${name}(${unit})` : '',\r\n min: 0,\r\n max: name ? Math.ceil(maxValue) : 0,\r\n splitNumber: 5,\r\n minInterval: name ? Math.ceil(maxValue / 5) : 0,\r\n position,\r\n offset,\r\n axisLabel: {\r\n formatter: (value) => (name ? formatLabel(value, unit) : ''),\r\n align,\r\n fontSize,\r\n },\r\n nameTextStyle: {\r\n fontWeight: 'bolder',\r\n align: textAlign || 'center',\r\n color: 'black',\r\n fontSize: 11,\r\n },\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n });\r\n\r\n const generateCleanConfig = (quantEspaco: number, position) => ({\r\n type: 'value',\r\n min: 0,\r\n max: 100,\r\n position,\r\n axisLabel: {\r\n formatter: `${' '.repeat(quantEspaco)}`,\r\n align: 'center',\r\n },\r\n offset: 20,\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n });\r\n\r\n function returnSide(condition) {\r\n if (condition) {\r\n return 'left';\r\n }\r\n return 'right';\r\n }\r\n\r\n function returnOffsetHour(haveHour, haveCelcius) {\r\n if (haveHour && !haveCelcius) {\r\n return 20;\r\n }\r\n return 60;\r\n }\r\n\r\n function returnOffsetAmper(haveAmper) {\r\n if (haveAmper && countUniMed.A > 0 && countUniMed.kPa === 0) {\r\n return 30;\r\n }\r\n return 100;\r\n }\r\n\r\n function returnGraphNotPorcent() {\r\n const {\r\n haveCelcius, haveHour, haveKpa, haveAmper,\r\n } = returnWitchUniMedHave();\r\n const haveOnlyLeftKpa = (!haveHour && !haveCelcius);\r\n const haveOnlyLeftAmper = (!haveHour && !haveCelcius);\r\n const decideSideAmper = returnSide(haveOnlyLeftAmper);\r\n const decideSideKpa = returnSide(haveOnlyLeftKpa);\r\n const decideSide = haveCelcius && !haveHour ? 'left' : 'right';\r\n const decideSideCelcius = haveHour && !haveCelcius ? 'left' : 'right';\r\n const yAxisNotPorcent = [\r\n haveHour ? generateAxisConfig('Horas', maxValue.H, 'h', 10, 'right', returnOffsetHour(haveHour, haveCelcius), 'left', 'right') : generateCleanConfig(9, decideSide),\r\n haveCelcius ? generateAxisConfig('Temp.', maxValue.C, '°C', 10, 'center', 30, 'left') : generateCleanConfig(8, decideSideCelcius),\r\n haveAmper ? generateAxisConfig('Corrente', maxValue.A, 'A', 10, decideSideAmper, returnOffsetAmper(haveAmper), decideSideAmper) : generateCleanConfig(9, decideSideAmper),\r\n haveKpa ? generateAxisConfig('Pressão', maxValue.kPa, 'kPa', 10, 'center', 30, decideSideKpa) : generateCleanConfig(8, decideSideKpa),\r\n ] as any;\r\n return yAxisNotPorcent;\r\n }\r\n function yAxisDecide() {\r\n if (title === t('porcentagens')) {\r\n return [\r\n {\r\n type: 'value',\r\n min: 0,\r\n max: 100,\r\n position: 'left',\r\n axisLabel: {\r\n formatter: '{value} %',\r\n align: 'center',\r\n fontSize: 10,\r\n },\r\n nameTextStyle: {\r\n fontWeight: 'bolder',\r\n align: 'center',\r\n color: 'black',\r\n },\r\n offset: 20,\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n },\r\n generateCleanConfig(32, 'right'),\r\n ];\r\n }\r\n const yAxisNotPorcent = returnGraphNotPorcent();\r\n const {\r\n havePercent,\r\n } = returnWitchUniMedHave();\r\n if (groupGraph && havePercent) {\r\n yAxisNotPorcent.push({\r\n type: 'value',\r\n name: 'Porcen.(%)',\r\n min: 0,\r\n max: 100,\r\n position: 'right',\r\n offset: 140,\r\n axisLabel: {\r\n formatter: '{value} %',\r\n align: 'center',\r\n fontSize: 10,\r\n padding: [0, 0, 0, 0],\r\n },\r\n nameTextStyle: {\r\n fontWeight: 'bolder',\r\n align: 'center',\r\n color: 'black',\r\n fontSize: 11,\r\n padding: [0, 0, 0, 10],\r\n },\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n });\r\n }\r\n return yAxisNotPorcent;\r\n }\r\n\r\n function getTitle() {\r\n if (title && haveTitle) {\r\n return {\r\n title: {\r\n text: title,\r\n padding: [0, 0, 0, 10],\r\n textStyle: {\r\n color: 'black',\r\n fontSize: 15,\r\n },\r\n },\r\n };\r\n }\r\n }\r\n\r\n function formatUnidMed(item) {\r\n let uniMed = objectData[item.seriesName]?.unidMed;\r\n if (uniMed === 'P') uniMed = '%';\r\n if (uniMed === 'C') uniMed = '°C';\r\n if (uniMed === 'H') uniMed = 'h';\r\n return uniMed;\r\n }\r\n\r\n function formatterTooltip(value: TooltipParams[]) {\r\n const nameChiller = `${driId}`;\r\n // const type = `

${}

`;\r\n const date = getDate(value[0].dataIndex);\r\n const arrayA = [`${t('circuitoA')}`];\r\n const arrayB = [`${t('circuitoB')}`];\r\n const values = [`${title || t('geral')}`];\r\n for (const item of value) {\r\n if (!item.value) {\r\n return '';\r\n }\r\n const dataObject = objectData[item.seriesName];\r\n const newSeriesName = item.seriesName.replace('do circ. A', '').replace('do circ. B', '').replace('do circuito B', '').replace('do circuito A', '');\r\n const uniMed = formatUnidMed(item);\r\n const cssObject = `${newSeriesName}: ${formatNumberWithFractionDigits(Number(item.value).toFixed(uniMed === 'h' ? 0 : 1))}${uniMed}`;\r\n if (dataObject && dataObject.type === 'A') {\r\n arrayA.push(cssObject);\r\n }\r\n else if (dataObject && dataObject.type === 'B') {\r\n arrayB.push(cssObject);\r\n } else {\r\n values.push(cssObject);\r\n }\r\n }\r\n const tooltipContentFactory = [date, nameChiller, ''];\r\n if (values.length > 1) {\r\n tooltipContentFactory.push(...values, '');\r\n }\r\n if (arrayA.length > 1) {\r\n tooltipContentFactory.push(...arrayA, '');\r\n }\r\n if (arrayB.length > 1) {\r\n tooltipContentFactory.push(...arrayB);\r\n }\r\n return tooltipContentFactory.join('
');\r\n }\r\n\r\n const handleRenderChiller = () => {\r\n if (chartRef.current) {\r\n echarts.dispose(chartRef.current);\r\n const chartInstance = echarts.init(chartRef.current);\r\n if (isLoading) {\r\n chartInstance.showLoading();\r\n }\r\n const seriesData = (arrayData || []).map((item) => (\r\n {\r\n name: item.name,\r\n color: item.color,\r\n type: 'line',\r\n stack: item.name,\r\n smooth: true,\r\n data: item.data,\r\n symbolSize: 0,\r\n yAxisIndex: verifyIndexY(item.unidMed),\r\n }\r\n ));\r\n window.addEventListener('resize', () => {\r\n chartInstance.resize();\r\n });\r\n chartInstance.setOption({\r\n ...getTitle(),\r\n ...haveToolbox(toolbox, true),\r\n grid: {\r\n left: title === t('porcentagens') ? '91px' : '50px',\r\n top: '70px',\r\n bottom: '10%',\r\n width: '90%',\r\n containLabel: true,\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n formatter: (value) => formatterTooltip(value),\r\n padding: 20,\r\n },\r\n xAxis,\r\n yAxis: yAxisDecide(),\r\n series: seriesData,\r\n });\r\n chartInstance.dispatchAction({\r\n type: 'takeGlobalCursor',\r\n key: 'dataZoomSelect',\r\n dataZoomSelectActive: true,\r\n });\r\n chartInstance.group = 'group1';\r\n const newObjectData = {};\r\n arrayData.forEach((item) => {\r\n newObjectData[item.name] = { ...item };\r\n });\r\n objectData = newObjectData;\r\n chartInstance.hideLoading();\r\n zoomTooltipOff(chartInstance, 'group1');\r\n window.addEventListener('resize', () => {\r\n chartInstance.resize();\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n handleRenderChiller();\r\n }, [arrayData, menuToogle]);\r\n\r\n return (\r\n <>\r\n {\r\n arrayData.length > 0 && (\r\n
\r\n )\r\n }\r\n \r\n );\r\n}\r\n","import { useContext, useEffect, useRef } from 'react';\r\nimport { ContainerGraphParamsChange } from './styles';\r\nimport {\r\n TooltipComponent,\r\n GridComponent,\r\n VisualMapComponent,\r\n} from 'echarts/components';\r\nimport * as echarts from 'echarts/core';\r\nimport { LineChart } from 'echarts/charts';\r\nimport { UniversalTransition } from 'echarts/features';\r\nimport { SVGRenderer } from 'echarts/renderers';\r\nimport { t } from 'i18next';\r\nimport { haveToolbox, zoomTooltipOff } from './ChillerParameters';\r\nimport MenuContext from '~/contexts/menuContext';\r\n\r\necharts.use([\r\n TooltipComponent,\r\n GridComponent,\r\n VisualMapComponent,\r\n LineChart,\r\n SVGRenderer,\r\n UniversalTransition,\r\n]);\r\n\r\ntype TGenerateGraphsPercentGeralAlarmMaintaince = {\r\n arrayData: ({ value: string; name: string; color: string; unidMed?: string; type?: string; data: number[]; } | undefined)[],\r\n name: string,\r\n yAxisNames?: string[],\r\n title?: string,\r\n height: number,\r\n getDate: (index: number) => string,\r\n driId?: string,\r\n xAxis: {},\r\n groupGraph: boolean,\r\n toolbox: boolean,\r\n lengthArraySample?: number\r\n}\r\n\r\nexport function GenerateGraphGeralAlarmMaintaince({\r\n arrayData, name, yAxisNames, title, height, getDate, driId, xAxis, groupGraph, toolbox, lengthArraySample,\r\n}: Readonly) {\r\n const chartRef = useRef(null);\r\n const { menuToogle } = useContext(MenuContext);\r\n function formatterTooltip(value) {\r\n const tooltipContentFactory: string[] = [];\r\n const nameChiller = `${driId}`;\r\n const date = getDate(value[0].dataIndex);\r\n tooltipContentFactory.push(date, nameChiller, ' ');\r\n const arrayNames: string[] = [];\r\n for (const v1 of value) {\r\n if (!v1.value && v1.value !== 0) {\r\n return '';\r\n }\r\n const style = getBallColor(yAxisNames?.[v1.value]);\r\n const type = `
${yAxisNames![v1.value]}
`;\r\n const titleName = `${groupGraph || title === t('status_compressores') ? v1.seriesName : title}`;\r\n arrayNames.push(titleName, type);\r\n }\r\n tooltipContentFactory.push(...arrayNames);\r\n return tooltipContentFactory.join('
');\r\n }\r\n function getBallColor(name) {\r\n if (name === t('emAlarme') || name === t('desligadoMinusculo')) return { class: 'circleRed', style: 'background: #FF1818;' };\r\n if (name === t('semAlarmes') || name === t('emFuncionamento')) return { class: 'circleGreen', style: 'background: #4EB73B;' };\r\n if (name === t('emAlerta')) return { class: 'circleYellow', style: 'background: #EDA800' };\r\n }\r\n\r\n function yAxisDecide() {\r\n return {\r\n type: 'category',\r\n boundaryGap: false,\r\n data: yAxisNames,\r\n axisLabel: {\r\n align: 'left',\r\n fontSize: 10,\r\n margin: 2,\r\n padding: 10,\r\n },\r\n offset: 120,\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n };\r\n }\r\n\r\n function verifyNullOrSum(item, sum) {\r\n if (item == null) {\r\n return null;\r\n }\r\n return item + sum;\r\n }\r\n\r\n function formatterDataIfGroupGraph(item) {\r\n let data = item.data;\r\n if (groupGraph && item.data) {\r\n if (item.value === 'alarme') {\r\n data = item.data.map((item) => verifyNullOrSum(item, 11));\r\n }\r\n if (item.value === 'geral') {\r\n data = item.data.map((item) => verifyNullOrSum(item, 15));\r\n }\r\n if (item.value === 'CP_B1' || item.value === 'CP_B2' || item.value === 'CP_A2' || item.value === 'CP_A1') {\r\n data = item.data.map((item) => verifyNullOrSum(item, 18));\r\n }\r\n if (item.value === 'status') {\r\n data = item.data;\r\n }\r\n }\r\n return {\r\n name: item.name,\r\n color: item.color,\r\n type: 'line',\r\n stack: item.name,\r\n step: 'start',\r\n symbolSize: 0,\r\n data,\r\n };\r\n }\r\n\r\n function haveTitle() {\r\n if (title) {\r\n return {\r\n title: {\r\n text: title,\r\n padding: [15, 0, 0, 10],\r\n textStyle: {\r\n color: 'black',\r\n fontSize: 15,\r\n },\r\n },\r\n };\r\n }\r\n }\r\n\r\n const handleRenderChiller = () => {\r\n if (chartRef.current) {\r\n echarts.dispose(chartRef.current);\r\n const chartInstance = echarts.init(chartRef.current);\r\n const newSeries = (arrayData || []).map((item) => formatterDataIfGroupGraph(item));\r\n window.addEventListener('resize', () => {\r\n chartInstance.resize();\r\n });\r\n const chillerConfig = {\r\n ...haveTitle(),\r\n grid: {\r\n left: groupGraph ? '9px' : '15px',\r\n bottom: '20%',\r\n width: '90%',\r\n containLabel: true,\r\n },\r\n ...haveToolbox(toolbox),\r\n tooltip: {\r\n trigger: 'axis',\r\n formatter: (value) => formatterTooltip(value),\r\n padding: [20, 90, 20, 30],\r\n textStyle: {\r\n width: 400,\r\n },\r\n },\r\n xAxis,\r\n yAxis: yAxisDecide(),\r\n series: newSeries,\r\n };\r\n chillerConfig && chartInstance.setOption(chillerConfig);\r\n chartInstance.dispatchAction({\r\n type: 'takeGlobalCursor',\r\n key: 'dataZoomSelect',\r\n dataZoomSelectActive: true,\r\n });\r\n chartInstance.group = 'group2';\r\n zoomTooltipOff(chartInstance, 'group2');\r\n window.removeEventListener('resize', () => {\r\n chartInstance.resize();\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n handleRenderChiller();\r\n }, [arrayData, menuToogle]);\r\n\r\n return (\r\n <>\r\n {\r\n arrayData.length > 0 && (\r\n 0 && groupGraph) ? '0px' : '30px',\r\n }}\r\n />\r\n )\r\n }\r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/sem_parametros.c5dc49a5.svg\";","import { t } from 'i18next';\r\nimport {\r\n Button,\r\n Card, Checkbox,\r\n Loader,\r\n SelectMultiple,\r\n} from '~/components';\r\nimport {\r\n BorderSubItem,\r\n ContainerNotSelectedParams,\r\n ContainerParameters, HorizontalLineSelectParameters, InfoSelected, InputStyledSelected, SearchInputStyled, SelectOptionStyled, SelectedContent,\r\n} from './styles';\r\nimport { Box } from 'reflexbox';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport * as echarts from 'echarts/core';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport { AlertTextParameters, ButtonClear, SearchInput } from '~/pages/Analysis/styles';\r\nimport { useEffect } from 'react';\r\nimport { ComparativeIcon, InfoIcon, WarnIcon } from '~/icons';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '~/providers';\r\nimport {\r\n agruparPorData, getDate, gerarNumerosAteMaximoDataXChangedParams, getListDays, returnXAxis, separarValoresPorPropriedade,\r\n getDataToGraphsAndSetMaxValues,\r\n createRecordStatusObject,\r\n processData,\r\n darkenColor,\r\n} from '~/helpers/chillerParametersHelpers';\r\nimport { GenerateGraphSample } from './ChillerGraphParametersGrouped';\r\nimport { GenerateGraphGeralAlarmMaintaince } from './ChillerGraphParametersChanged';\r\nimport SemParametros from '../../../../../../assets/img/sem_parametros.svg';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { HoverExportList } from '~/pages/Analysis/Utilities/UtilityFilter/styles';\r\n\r\nconst listStatusNames = [t('desligadoMinusculo'), t('emFuncionamento'), t('emParada'), t('emPartida'), t('desarmado'), t('pronto'), t('forcado'), t('emDescongelamento'), t('emTesteCarga '), `${t('emTeste')} `];\r\nconst listMaintenceNames = [t('emDia'), t('emAlerta'), `${t('atrasada')} `];\r\nconst listGeneralNames = [t('desligadoMinusculo'), `${t('emFuncionamento')} `];\r\nconst listCompStatusNames = [t('desligadoMinusculo'), `${t('ligadoMinusculo')} `];\r\nconst listAlarmNames = [t('semAlarmes'), t('emAlerta'), `${t('emAlarme')} `];\r\n\r\ninterface OptionParameter {\r\n value: string;\r\n name: string;\r\n color: string;\r\n data: number[] | (number | null)[][];\r\n unidMed?: string;\r\n type?: string;\r\n}\r\n\r\nconst createOptionParameter = (value: string, name: string, color: string, index: number, unidMed?: string, type?: string): OptionParameter => ({\r\n value,\r\n name: t(name),\r\n color,\r\n data: [] as number[] | (number | null)[][],\r\n unidMed,\r\n type,\r\n checked: false,\r\n index,\r\n});\r\n\r\nconst FIXED_RED = 80;\r\nconst percentArray = ['CAP_T', 'DEM_LIM', 'LAG_LIM', 'EXV_B', 'EXV_A', 'CAPB_T', 'CAPA_T', 'SLT_A', 'SLT_B'];\r\nconst arrayDefault = ['alarme', 'manutencao', 'geral', 'status', 'CP_B1', 'CP_B2', 'CP_A1', 'CP_A2'];\r\nconst arrayCompStatus = ['CP_B1', 'CP_B2', 'CP_A2', 'CP_A1'];\r\ntype TSelectParameters = { value: string; name: string; color: string; unidMed?: string; type?: string; data: number[], checked: boolean, index: number }\r\nconst applicationType = {\r\n 'chiller-carrier-30hxe': 'HX',\r\n 'chiller-carrier-20gxe': 'HX',\r\n 'chiller-carrier-30hxf': 'HX',\r\n 'chiller-carrier-30xab': 'XA',\r\n} as {\r\n [type: string]: string,\r\n};\r\n\r\nexport function ChillerParameters(props: Readonly<{\r\n driId?: string, startDate: moment.Moment | null, endDate: moment.Moment | null, isFlexivel?: boolean, model: string\r\n}>): JSX.Element {\r\n const chillerModel = applicationType[props.model];\r\n const handleOptionsParameters = () => {\r\n if (chillerModel === 'XA') return handleOptionsParametersXA();\r\n return handleOptionsParametersHX();\r\n };\r\n\r\n const getYAxisNames = () => {\r\n if (chillerModel === 'XA') return [...listStatusNames, '', ...listMaintenceNames, '', ...listGeneralNames];\r\n return [...listStatusNames, '', ...listAlarmNames, '', ...listGeneralNames, '', ...listCompStatusNames, '', ...listMaintenceNames];\r\n };\r\n\r\n const handleOptionsParametersHX = () => [\r\n createOptionParameter('geral', 'geral', '#363BC4', 0),\r\n createOptionParameter('alarme', 'alarme', '#e1c61b', 1),\r\n // createOptionParameter('manutencao', 'manutencao', '#5733FF'),\r\n createOptionParameter('status', 'status', '#fd9401', 2),\r\n\r\n createOptionParameter('CAP_T', 'descricao_CAP_T', '#33A6FF', 3, 'P'),\r\n createOptionParameter('DEM_LIM', 'descricao_DEM_LIM', '#3c3d68', 4, 'P'),\r\n createOptionParameter('LAG_LIM', 'descricao_LAG_LIM', '#5d4aba', 5, 'P'),\r\n createOptionParameter('CTRL_PNT', 'descricao_CTRL_PNT', '#2C5932', 6, 'C'),\r\n createOptionParameter('COND_SP', 'descricao_COND_SP', '#3F8347', 7, 'C'),\r\n createOptionParameter('COND_LWT', 'descricao_COND_LWT', '#F5000F', 8, 'C'),\r\n createOptionParameter('COND_EWT', 'descricao_COND_EWT', '#FF656E', 9, 'C'),\r\n createOptionParameter('COOL_LWT', 'descricao_COOL_LWT', '#0085FF', 10, 'C'),\r\n createOptionParameter('COOL_EWT', 'descricao_COOL_EWT', '#6FBAFF', 11, 'C'),\r\n createOptionParameter('SP', 'descricao_SP', '#3BA448', 12, 'C'),\r\n\r\n createOptionParameter('ACircuit', 'circuitoA', '#DC3C45', 13),\r\n createOptionParameter('DP_A', 'descricao_DP_A', '#DC3C45', 14, 'kPa', 'A'),\r\n createOptionParameter('SP_A', 'descricao_SP_A', '#0066FF', 15, 'kPa', 'A'),\r\n createOptionParameter('CPA1_OP', 'descricao_CPA1_OP', '#FF7144', 16, 'kPa', 'A'),\r\n createOptionParameter('CPA2_OP', 'descricao_CPA2_OP', '#882C40', 17, 'kPa', 'A'),\r\n createOptionParameter('DOP_A1', 'descricao_DOP_A1', '#3b113e', 18, 'kPa', 'A'),\r\n createOptionParameter('DOP_A2', 'descricao_DOP_A2', '#a77b16', 19, 'kPa', 'A'),\r\n createOptionParameter('SCT_A', 'descricao_SCT_A', '#B63030', 20, 'C', 'A'),\r\n createOptionParameter('SST_A', 'descricao_SST_A', '#0042A5', 21, 'C', 'A'),\r\n createOptionParameter('CPA1_DGT', 'descricao_CPA1_DGT', '#CE6268', 22, 'C', 'A'),\r\n createOptionParameter('CPA2_DGT', 'descricao_CPA2_DGT', '#FB3E49', 23, 'C', 'A'),\r\n createOptionParameter('CPA1_TMP', 'descricao_CPA1_TMP', '#213a59', 24, 'C', 'A'),\r\n createOptionParameter('CPA2_TMP', 'descricao_CPA2_TMP', '#702e83', 25, 'C', 'A'),\r\n createOptionParameter('HR_CP_A1', 'descricao_HR_CP_A1', '#296A36', 26, 'H', 'A'),\r\n createOptionParameter('HR_CP_A2', 'descricao_HR_CP_A2', '#FF3357', 27, 'H', 'A'),\r\n createOptionParameter('CPA1_CUR', 'descricao_CPA1_CUR', '#296A36', 28, 'A', 'A'),\r\n createOptionParameter('CPA2_CUR', 'descricao_CPA2_CUR', '#11215c', 29, 'A', 'A'),\r\n createOptionParameter('EXV_A', 'descricao_EXV_A', '#D933FF', 30, 'P', 'A'),\r\n createOptionParameter('CAPA_T', 'descricao_CAPA_T', '#7b2683', 31, 'P', 'A'),\r\n createOptionParameter('CP_A1', 'descricao_CP_A1', '#2870d5', 32, 'P', 'A'),\r\n createOptionParameter('CP_A2', 'descricao_CP_A2', '#265aa3', 33, 'P', 'A'),\r\n\r\n createOptionParameter('BCircuit', 'circuitoB', '#B4A947', 34),\r\n createOptionParameter('DP_B', 'descricao_DP_B', '#EA8A8F', 35, 'kPa', 'B'),\r\n createOptionParameter('SP_B', 'descricao_SP_B', '#5C7AA9', 36, 'kPa', 'B'),\r\n createOptionParameter('CPB1_OP', 'descricao_CPB1_OP', '#296A36', 37, 'kPa', 'B'),\r\n createOptionParameter('CPB2_OP', 'descricao_CPB2_OP', '#5c054f', 38, 'kPa', 'B'),\r\n createOptionParameter('DOP_B1', 'descricao_DOP_B1', '#34522d', 39, 'kPa', 'B'),\r\n createOptionParameter('DOP_B2', 'descricao_DOP_B2', '#2b2998', 40, 'kPa', 'B'),\r\n createOptionParameter('SCT_B', 'descricao_SCT_B', '#D38383', 41, 'C', 'B'),\r\n createOptionParameter('SST_B', 'descricao_SST_B', '#668EC9', 42, 'C', 'B'),\r\n createOptionParameter('CPB1_DGT', 'descricao_CPB1_DGT', '#E2A1A4', 43, 'C', 'B'),\r\n createOptionParameter('CPB2_DGT', 'descricao_CPB2_DGT', '#FD8B92', 44, 'C', 'B'),\r\n createOptionParameter('CPB1_TMP', 'descricao_CPB1_TMP', '#3e33be', 45, 'C', 'B'),\r\n createOptionParameter('CPB2_TMP', 'descricao_CPB2_TMP', '#84169b', 46, 'C', 'B'),\r\n createOptionParameter('HR_CP_B1', 'descricao_HR_CP_B1', '#296A36', 47, 'H', 'B'),\r\n createOptionParameter('HR_CP_B2', 'descricao_HR_CP_B2', '#3e7432', 48, 'H', 'B'),\r\n createOptionParameter('CPB1_CUR', 'descricao_CPB1_CUR', '#296A36', 49, 'A', 'B'),\r\n createOptionParameter('CPB2_CUR', 'descricao_CPB2_CUR', '#A633FF', 50, 'A', 'B'),\r\n createOptionParameter('EXV_B', 'descricao_EXV_B', '#7b402b', 51, 'P', 'B'),\r\n createOptionParameter('CAPB_T', 'descricao_CAPB_T', '#712c80', 52, 'P', 'B'),\r\n createOptionParameter('CP_B1', 'descricao_CP_B1', '#042759', 53, 'P', 'B'),\r\n createOptionParameter('CP_B2', 'descricao_CP_B2', '#303c4e', 54, 'P', 'B'),\r\n ];\r\n\r\n const handleOptionsParametersXA = () => [\r\n createOptionParameter('geral', 'geral', '#363BC4', 0),\r\n createOptionParameter('status', 'status', '#fd9401', 1),\r\n\r\n createOptionParameter('CAP_T', 'descricao_CAP_T', '#33A6FF', 2, 'P'),\r\n createOptionParameter('CTRL_PNT', 'descricao_CTRL_PNT', '#2C5932', 3, 'C'),\r\n createOptionParameter('COND_LWT', 'descricao_COND_LWT', '#F5000F', 4, 'C'),\r\n createOptionParameter('COND_EWT', 'descricao_COND_EWT', '#FF656E', 5, 'C'),\r\n createOptionParameter('COOL_LWT', 'descricao_COOL_LWT', '#0085FF', 6, 'C'),\r\n createOptionParameter('COOL_EWT', 'descricao_COOL_EWT', '#6FBAFF', 7, 'C'),\r\n createOptionParameter('SP', 'descricao_SP', '#3BA448', 8, 'C'),\r\n createOptionParameter('OAT', 'descricao_OAT', '#303c4e', 9, 'C'),\r\n createOptionParameter('HR_MACH', 'descricao_HR_MACH', '#303c4e', 10, 'H'),\r\n createOptionParameter('HR_MACH_B', 'descricao_HR_MACH_B', '#303c4e', 11, 'H'),\r\n\r\n createOptionParameter('ACircuit', 'circuitoA', '#DC3C45', 12),\r\n createOptionParameter('DP_A', 'descricao_DP_A', '#DC3C45', 13, 'kPa', 'A'),\r\n createOptionParameter('SP_A', 'descricao_SP_A', '#0066FF', 14, 'kPa', 'A'),\r\n createOptionParameter('SCT_A', 'descricao_SCT_A', '#B63030', 15, 'C', 'A'),\r\n createOptionParameter('SST_A', 'descricao_SST_A', '#0042A5', 16, 'C', 'A'),\r\n createOptionParameter('OP_A', 'descricao_OP_A', '#303c4e', 17, 'C', 'A'),\r\n createOptionParameter('SLT_A', 'descricao_SLT_A', '#303c4e', 18, 'P', 'A'),\r\n createOptionParameter('HR_CP_A', 'descricao_HR_CP_A', '#303c4e', 19, 'H', 'A'),\r\n\r\n createOptionParameter('BCircuit', 'circuitoB', '#B4A947', 20),\r\n createOptionParameter('DP_B', 'descricao_DP_B', '#EA8A8F', 21, 'kPa', 'B'),\r\n createOptionParameter('SP_B', 'descricao_SP_B', '#5C7AA9', 22, 'kPa', 'B'),\r\n createOptionParameter('SCT_B', 'descricao_SCT_B', '#D38383', 23, 'C', 'B'),\r\n createOptionParameter('SST_B', 'descricao_SST_B', '#668EC9', 24, 'C', 'B'),\r\n createOptionParameter('OP_B', 'descricao_OP_B', '#303c4e', 25, 'C', 'B'),\r\n createOptionParameter('SLT_B', 'descricao_SLT_B', '#303c4e', 26, 'P', 'B'),\r\n createOptionParameter('HR_CP_B', 'descricao_HR_CP_B', '#303c4e', 27, 'H', 'B'),\r\n ];\r\n\r\n const OptionsParameters = handleOptionsParameters();\r\n\r\n const [state, render, setState] = useStateVar({\r\n groupGraph: false,\r\n isLoading: false,\r\n record_dates: [] as string[],\r\n optionsParameters: OptionsParameters as TSelectParameters[],\r\n selectedParameters: [] as any,\r\n sendToGraphDefault: [] as TSelectParameters[],\r\n sendToGraphPercent: [] as TSelectParameters[],\r\n sendToCompStatus: [] as TSelectParameters[],\r\n sendGraphDefaultGrouped: [] as TSelectParameters[],\r\n selectedAlarm: false,\r\n selectedGeneral: false,\r\n selectedStatus: false,\r\n selectedMaintence: false,\r\n selectedCompStatusA1: false,\r\n selectedCompStatusA2: false,\r\n selectedCompStatusB1: false,\r\n selectedCompStatusB2: false,\r\n listDays: [] as Date[],\r\n objectData: {} as {[key:string]: {}},\r\n dataX: [] as number[],\r\n dataXChangedParams: [] as number[],\r\n numPoints: 0,\r\n interval: 0,\r\n hourGraph: false,\r\n groupGraphValues: [] as {\r\n value: string;\r\n name: string;\r\n color: string;\r\n unidMed?: string;\r\n type?: string;\r\n data: number[]\r\n }[],\r\n countValuesUniMed: {\r\n C: 0,\r\n kPa: 0,\r\n A: 0,\r\n H: 0,\r\n P: 0,\r\n },\r\n maxValue: {\r\n C: 0,\r\n kPa: 0,\r\n A: 0,\r\n H: 0,\r\n },\r\n haveData: true,\r\n changeData: false,\r\n searchData: false,\r\n dataPeriodOut: false,\r\n textAlertParameters: 0,\r\n });\r\n const limitParameters = 21;\r\n\r\n function changeDataOptionsParameters(item: {\r\n value: string;\r\n name: string;\r\n color: string;\r\n unidMed?: string;\r\n type?: string;\r\n data: number[];\r\n }, arrayStatus: number[], valoresPorPropriedade, arrayGeral: number[], arrayAlarm: number[], arrayCpb1: number[], arrayCpb2: number[], arrayCpa1: number[], arrayCpa2: number[]) {\r\n if (item.value === 'status') {\r\n item.data = arrayStatus;\r\n }\r\n else if (item.value === 'geral') {\r\n item.data = arrayGeral;\r\n }\r\n // else if (item.value === 'manutencao') {\r\n // item.data = arrayMaintence;\r\n // }\r\n else if (item.value === 'alarme') {\r\n item.data = arrayAlarm;\r\n }\r\n else if (item.value === 'CP_B1') {\r\n item.data = arrayCpb1;\r\n }\r\n else if (item.value === 'CP_B2') {\r\n item.data = arrayCpb2;\r\n }\r\n else if (item.value === 'CP_A1') {\r\n item.data = arrayCpa1;\r\n }\r\n else if (item.value === 'CP_A2') {\r\n item.data = arrayCpa2;\r\n }\r\n else {\r\n item.data = valoresPorPropriedade[item.value.toLowerCase()];\r\n }\r\n }\r\n\r\n async function handleGetParamsHistory() {\r\n if (state.selectedParameters.length === 0) {\r\n setState({ textAlertParameters: state.textAlertParameters + 1 });\r\n return;\r\n }\r\n try {\r\n setState({ isLoading: true });\r\n if (props.startDate && props.endDate && state.changeData) {\r\n const response = await apiCall('/dri/get-chiller-parameters-hist', {\r\n DEVICE_CODE: props.driId!, START_DATE: props.startDate.format('YYYY-MM-DD'), END_DATE: props.endDate.format('YYYY-MM-DD'), MODEL: chillerModel, HOUR_GRAPHIC: state.hourGraph,\r\n });\r\n if (response?.paramsLists?.paramsChanged?.length === 0 && response?.paramsLists?.paramsGrouped?.length === 0) {\r\n setState({ haveData: false, isLoading: false });\r\n return;\r\n }\r\n setState({ haveData: true, changeData: false, searchData: true });\r\n const record_dates = response.paramsLists.paramsGrouped.map((item) => item.record_date);\r\n // createRecordStatusObject cria um objeto de dias selecionado e conta quantos registros de pontos tem no dia;\r\n const objectDays = createRecordStatusObject(record_dates, state.listDays);\r\n // processData é para adicionar o valor null nos pontos se não tiver a quantidade de pontos ideal por dia. 24 pontos caso sejam mais de 5 dias selecionado; 144 pontos caso seja menos.\r\n const dataProcessed = processData(objectDays, response.paramsLists.paramsGrouped, state.numPoints, chillerModel);\r\n const valoresPorPropriedade: any = separarValoresPorPropriedade(dataProcessed);\r\n // agruparPorData funciona como um agrupador de parametros changed para separar e repetir o valor anterior caso tenha.\r\n const statusValues = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'STATUS'), state.listDays);\r\n const compStatusValuesB1 = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'CP_B1'), state.listDays);\r\n const compStatusValuesB2 = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'CP_B2'), state.listDays);\r\n const compStatusValuesA1 = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'CP_A1'), state.listDays);\r\n const compStatusValuesA2 = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'CP_A2'), state.listDays);\r\n const geralValues = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'CHIL_S_S'), state.listDays);\r\n const alarmValues = agruparPorData(response.paramsLists?.paramsChanged?.filter((item) => item.parameter_name === 'ALM'), state.listDays);\r\n setState({\r\n record_dates: valoresPorPropriedade.record_date,\r\n });\r\n // changeDataOptionParameters adicona em cada propriedade o valor dos dados ja processados e editados conforme a quantidade de pontos.\r\n state.optionsParameters.forEach((item) => changeDataOptionsParameters(item, statusValues, valoresPorPropriedade, geralValues, alarmValues, compStatusValuesB1, compStatusValuesB2, compStatusValuesA1, compStatusValuesA2));\r\n render();\r\n }\r\n if (state.searchData) {\r\n transformDataFunction();\r\n }\r\n setState({ searchData: true });\r\n } catch (err) {\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ isLoading: false, textAlertParameters: 0 });\r\n }\r\n\r\n useEffect(() => {\r\n if (!getListDays(props, setState, state)) {\r\n setState({\r\n changeData: true, searchData: false,\r\n });\r\n gerarNumerosAteMaximoDataXChangedParams(state.listDays.length, setState, state);\r\n }\r\n }, [props.startDate, props.endDate]);\r\n\r\n function getObjectsFiltered(objectData: { [key: string]: {} }, arrayFiltered: string[]): any[] {\r\n const valoresExcluidos = new Set(arrayFiltered);\r\n return Object.keys(objectData)\r\n .filter((chave) => !valoresExcluidos.has(chave))\r\n .map((chave) => objectData[chave]);\r\n }\r\n\r\n function transformDataFunction() {\r\n setState({ isLoading: true });\r\n render();\r\n const objectData = {} as {[key:string]: TSelectParameters};\r\n const all = state.optionsParameters.filter((item) => item.checked);\r\n all.forEach((item) => {\r\n objectData[item.value] = { ...item };\r\n });\r\n setState({\r\n ...state,\r\n objectData,\r\n selectedGeneral: !!objectData.geral,\r\n selectedStatus: !!objectData.status,\r\n selectedMaintence: !!objectData.manutencao,\r\n selectedAlarm: !!objectData.alarme,\r\n selectedCompStatusA1: !!objectData.CP_A1,\r\n selectedCompStatusA2: !!objectData.CP_A2,\r\n selectedCompStatusB1: !!objectData.CP_B1,\r\n selectedCompStatusB2: !!objectData.CP_B2,\r\n });\r\n const allWithoutDefault = getObjectsFiltered(objectData, arrayDefault);\r\n getDataToGraphsAndSetMaxValues(allWithoutDefault, percentArray, setState, state);\r\n const sendToCompGraph = [] as TSelectParameters[];\r\n arrayCompStatus.forEach((item) => { if (objectData[item]) { sendToCompGraph.push(objectData[item]); } });\r\n setState({ sendToCompStatus: sendToCompGraph, sendGraphDefaultGrouped: state.sendToGraphDefault.concat(state.sendToGraphPercent) });\r\n if (state.groupGraph) {\r\n const arrayValues: {\r\n value: string;\r\n name: string;\r\n color: string;\r\n unidMed?: string;\r\n type?: string;\r\n data: number[];\r\n }[] = [];\r\n state.optionsParameters.forEach((item) => {\r\n if (\r\n (item.value === 'geral' && state.selectedGeneral)\r\n || (item.value === 'manutencao' && state.selectedMaintence)\r\n || (item.value === 'alarme' && state.selectedAlarm)\r\n || (item.value === 'status' && state.selectedStatus)\r\n || (item.value === 'CP_B1' && state.selectedCompStatusB1)\r\n || (item.value === 'CP_B2' && state.selectedCompStatusB2)\r\n || (item.value === 'CP_A2' && state.selectedCompStatusA1)\r\n || (item.value === 'CP_A1' && state.selectedCompStatusA2)\r\n ) {\r\n arrayValues.push(item);\r\n }\r\n });\r\n setState({ groupGraphValues: arrayValues, searchData: true });\r\n }\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n\r\n function setColor(e, index) {\r\n const selectedColor = e.target.value;\r\n const darkenedColor = darkenColor(selectedColor, 40);\r\n state.optionsParameters[index].color = darkenedColor;\r\n }\r\n\r\n const handleBlur = () => {\r\n render();\r\n };\r\n const handleColorInputClick = (event) => {\r\n event.stopPropagation();\r\n };\r\n const renderOption = (option) => (\r\n \r\n { (option.value === 'DP_A' || option.value === 'DP_B') && }\r\n \r\n \r\n { (option.type === 'A' || option.type === 'B') && }\r\n \r\n \r\n \r\n {\r\n option.value === 'ACircuit' || option.value === 'BCircuit' ? (\r\n \r\n {option.name}\r\n \r\n )\r\n : option.name\r\n }\r\n \r\n \r\n { !(option.value === 'ACircuit' || option.value === 'BCircuit') && setColor(e, option.index)} onClick={handleColorInputClick} />}\r\n \r\n \r\n );\r\n\r\n function addValuesParametersCircuit(value, stringName, arrayValues) {\r\n if (value.value === stringName) {\r\n if (!value.checked) {\r\n arrayValues.forEach((option) => state.optionsParameters.forEach((item) => { if (item.value === option || item.value === value.value) { item.checked = false; } }));\r\n } else {\r\n state.selectedParameters = state.optionsParameters.forEach((item) => { if (item.value !== value.value) { item.checked = false; } });\r\n arrayValues.forEach((option) => state.optionsParameters.forEach((item) => { if (item.value === option || item.value === value.value) { item.checked = true; } }));\r\n }\r\n state.selectedParameters = state.optionsParameters.filter((item) => item.checked);\r\n render();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function filterValuesParametersCircuit(value, circuitName, stringName, arrayValues) {\r\n if (value.type === stringName) {\r\n const filterValues = arrayValues.filter((item) => !state.optionsParameters.some((op) => op.checked && item === op.value));\r\n if (filterValues.length > 0) {\r\n state.optionsParameters.forEach((item) => { if (item.value === circuitName) { item.checked = false; } });\r\n } else {\r\n state.optionsParameters.forEach((item) => { if (item.value === circuitName) { item.checked = true; } });\r\n }\r\n state.selectedParameters = state.optionsParameters.filter((item) => item.checked);\r\n render();\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function selectedParameter(value) {\r\n if (limitParameters === state.selectedParameters.length && !state.selectedParameters.find((item) => item.value === value.value)) {\r\n return;\r\n }\r\n state.optionsParameters[value.index].checked = !state.optionsParameters[value.index].checked;\r\n const AValues = ['DP_A', 'SP_A', 'SCT_A', 'SST_A', 'CPA1_OP', 'CPA2_OP', 'EXV_A', 'CAPA_T', 'HR_CP_A1', 'HR_CP_A2', 'CPA1_CUR', 'CPA2_CUR', 'DOP_A1', 'DOP_A2', 'CPA1_DGT', 'CPA2_DGT', 'EXV_A', 'CPA1_TMP', 'CPA2_TMP', 'CP_A1', 'CP_A2', 'OP_A', 'SLT_A', 'HR_CP_A'];\r\n const BValues = ['DP_B', 'SP_B', 'SCT_B', 'SST_B', 'CPB1_OP', 'CPB2_OP', 'EXV_B', 'CAPB_T', 'HR_CP_B1', 'HR_CP_B2', 'CPB1_CUR', 'CPB2_CUR', 'DOP_B1', 'DOP_B2', 'CPB1_DGT', 'CPB2_DGT', 'EXV_B', 'CPB1_TMP', 'CPB2_TMP', 'CP_B1', 'CP_B2', 'OP_B', 'SLT_B', 'HR_CP_B'];\r\n if (addValuesParametersCircuit(value, 'ACircuit', AValues) || addValuesParametersCircuit(value, 'BCircuit', BValues)) {\r\n return;\r\n }\r\n if (filterValuesParametersCircuit(value, 'ACircuit', 'A', AValues) || filterValuesParametersCircuit(value, 'BCircuit', 'B', BValues)) {\r\n return;\r\n }\r\n state.selectedParameters = state.optionsParameters.filter((item) => item.checked);\r\n render();\r\n }\r\n\r\n if (state.isLoading) {\r\n return (\r\n \r\n \r\n \r\n {t('carregandoGraficosDeParametros')}\r\n \r\n \r\n );\r\n }\r\n\r\n function decideGraphs() {\r\n if (!state.groupGraph) {\r\n return (\r\n \r\n getDate(state, item, state.record_dates)}\r\n groupGraph={state.groupGraph}\r\n right=\"4.5%\"\r\n isLoading={state.isLoading}\r\n countUniMed={state.countValuesUniMed}\r\n maxValue={state.maxValue}\r\n toolbox\r\n />\r\n getDate(state, item, state.record_dates)}\r\n groupGraph={state.groupGraph}\r\n right=\"4.5%\"\r\n isLoading={state.isLoading}\r\n countUniMed={state.countValuesUniMed}\r\n maxValue={state.maxValue}\r\n toolbox\r\n />\r\n item.value === 'geral')] : []}\r\n yAxisNames={listGeneralNames}\r\n name=\"chiller-geral-parameters\"\r\n title={t('geral')}\r\n height={180}\r\n getDate={(index) => getDate(state, index, [], true)}\r\n xAxis={returnXAxis(state, true)}\r\n driId={props.driId}\r\n groupGraph={state.groupGraph}\r\n toolbox\r\n />\r\n item.value === 'status')] : []}\r\n yAxisNames={listStatusNames}\r\n name=\"chiller-status-parameters\"\r\n title={t('status')}\r\n height={400}\r\n getDate={(index) => getDate(state, index, [], true)}\r\n xAxis={returnXAxis(state, true)}\r\n driId={props.driId}\r\n groupGraph={state.groupGraph}\r\n toolbox\r\n />\r\n {/* item.value === 'manutencao')] : []}\r\n yAxisNames={listMaintenceNames}\r\n name=\"chiller-maintence-parameters\"\r\n title={t('manutencao')}\r\n height={200}\r\n getDate={(index) => getDate(index, true)}\r\n xAxis={returnXAxis(state, true)}\r\n driId={props.driId}\r\n groupGraph={state.groupGraph}\r\n toolbox\r\n /> */}\r\n item.value === 'alarme')] : []}\r\n yAxisNames={listAlarmNames}\r\n name=\"chiller-alarm-parameters\"\r\n title={t('alarme')}\r\n height={220}\r\n getDate={(index) => getDate(state, index, [], true)}\r\n xAxis={returnXAxis(state, true)}\r\n driId={props.driId}\r\n groupGraph={state.groupGraph}\r\n toolbox\r\n />\r\n getDate(state, index, [], true)}\r\n xAxis={returnXAxis(state, true)}\r\n driId={props.driId}\r\n groupGraph={state.groupGraph}\r\n toolbox\r\n />\r\n
\r\n );\r\n }\r\n return (\r\n
\r\n getDate(state, item, state.record_dates)}\r\n groupGraph={state.groupGraph}\r\n right={state.groupGraph ? '120px' : '10%'}\r\n isLoading={state.isLoading}\r\n countUniMed={state.countValuesUniMed}\r\n maxValue={state.maxValue}\r\n toolbox\r\n />\r\n getDate(state, index, [], true)}\r\n xAxis={returnXAxis(state, true)}\r\n driId={props.driId}\r\n groupGraph={state.groupGraph}\r\n toolbox\r\n lengthArraySample={state.sendToGraphPercent.length + state.sendToGraphDefault.length}\r\n />\r\n
\r\n );\r\n }\r\n\r\n function returnGraphs() {\r\n if (state.searchData && state.haveData) {\r\n return (\r\n <>\r\n {decideGraphs()}\r\n \r\n );\r\n }\r\n return (\r\n \r\n \r\n {t('historicoParametros')}\r\n \r\n {t('selecioneDataParametros')}\r\n
\r\n {t('continuacaoParametrosVazio')}\r\n
\r\n
\r\n );\r\n }\r\n\r\n function clearSelected() {\r\n if (state.selectedParameters.length > 0) {\r\n state.optionsParameters.forEach((item) => item.checked = false);\r\n state.selectedParameters = [];\r\n render();\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n

{t('parametros')}

\r\n
\r\n
\r\n \r\n \r\n { selectedParameter(value); }}\r\n customElements={renderOption}\r\n disabled={!props.startDate || state.isLoading || state.dataPeriodOut}\r\n styleBox={{ border: 'none', width: '100%' }}\r\n haveCountSelect={false}\r\n limitSelect={limitParameters}\r\n />\r\n \r\n \r\n \r\n setState({ textAlertParameters: 0 })} />\r\n clearSelected()}>\r\n {t('limpar')}\r\n \r\n
\r\n
\r\n handleGetParamsHistory()}\r\n >\r\n {t('analisar')}\r\n \r\n {\r\n state.selectedParameters.length === 0 && (\r\n \r\n
\r\n \r\n \r\n {t('pesquiseChiller')}\r\n \r\n
\r\n \r\n )\r\n }\r\n {\r\n state.haveData && (\r\n \r\n {t('visualizacao')}\r\n \r\n {t('desagrupar')}\r\n { state.groupGraph = !state.groupGraph; transformDataFunction(); render(); }}\r\n style={{ marginLeft: '10px', marginRight: '10px' }}\r\n />\r\n {t('agrupar')}\r\n \r\n \r\n )\r\n }\r\n
\r\n \r\n {\r\n state.haveData ? (\r\n <>\r\n {returnGraphs()}\r\n \r\n ) : (\r\n \r\n \"sem-parâmetros\"\r\n {t('semParametros')}\r\n \r\n {t('naoHouveramRegistrosParametros')}\r\n
\r\n {t('paraOperidoSelecionado')}\r\n
\r\n
\r\n )\r\n }\r\n \r\n );\r\n}\r\n\r\nexport function haveToolbox(toolbox, isGraphGeral?: boolean) {\r\n function yAxisIndex() {\r\n if (!isGraphGeral) {\r\n return {\r\n yAxisIndex: '',\r\n };\r\n }\r\n }\r\n if (toolbox) {\r\n return {\r\n toolbox: {\r\n feature: {\r\n dataZoom: {\r\n xAxisIndex: [0],\r\n ...yAxisIndex(),\r\n title: {\r\n zoom: t('Zoom'),\r\n back: t('voltarAmpliacao'),\r\n },\r\n filterMode: 'filter',\r\n },\r\n restore: {\r\n title: t('restaurarZoom'),\r\n },\r\n saveAsImage: {\r\n title: t('salvarComoImagem'),\r\n },\r\n },\r\n top: isGraphGeral ? 2 : '4.5%',\r\n },\r\n };\r\n }\r\n}\r\n\r\nexport function zoomTooltipOff(chartInstance, name) {\r\n let isZooming = false;\r\n const handleZoom = () => {\r\n if (!isZooming) {\r\n isZooming = true;\r\n echarts.connect(name);\r\n chartInstance.setOption({\r\n tooltip: {\r\n show: false,\r\n },\r\n });\r\n }\r\n };\r\n chartInstance.on('dataZoom', handleZoom);\r\n chartInstance.on('restore', handleZoom);\r\n chartInstance.on('finished', () => {\r\n if (isZooming) {\r\n isZooming = false;\r\n echarts.disconnect(name);\r\n chartInstance.setOption({\r\n tooltip: {\r\n show: true,\r\n },\r\n });\r\n }\r\n });\r\n}\r\n\r\nfunction AlertMessage({ value, arrayLength, onAnimationEnd }) {\r\n const valueInitial = 0;\r\n\r\n return (\r\n <>\r\n {\r\n valueInitial !== value && arrayLength === 0 ? (\r\n \r\n \r\n {t('selecioneParametosDeseja')}\r\n \r\n ) : (\r\n
\r\n )\r\n }\r\n \r\n );\r\n}\r\n","import { useEffect, useRef, useState } from 'react';\r\nimport {\r\n StyledItem,\r\n StyledList,\r\n Wrapper,\r\n Content,\r\n StyledLine,\r\n StyledLabel,\r\n MenuFixedContainer,\r\n} from './components/styles';\r\nimport { t } from 'i18next';\r\nimport { Select } from '~/components';\r\nimport { AlarmsHistory } from './components/AlarmsHistory';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport moment, { Moment } from 'moment';\r\nimport { ContentDate, Label, StyledCalendarIcon } from '../styles';\r\nimport { SingleDatePicker, DateRangePicker } from 'react-dates';\r\nimport DatePicker from 'react-datepicker';\r\nimport { BtnOrderColumns } from '../../IntegrRealTime/DriChillerCarrierRealTime/components/styles';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCallDownload } from '~/providers';\r\nimport { ExportIcon } from '~/icons';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { QuickSelection } from '~/components/QuickSelection';\r\nimport { ChillerParameters } from './components/ChillerParameters';\r\n\r\nexport default function ChillerCarrierHistory(props: { driId: string, model: string }): JSX.Element {\r\n const [focus, setFocus] = useState({\r\n focused: false,\r\n focusedInput: null,\r\n });\r\n const [sortBy, setSortBy] = useState({ column: '', desc: false });\r\n const [state, render, setState] = useStateVar({\r\n selectedFilterAlarms: [] as {column: string, values: string[]}[],\r\n startDate: null as Moment | null,\r\n endDate: null as Moment | null,\r\n selectedTimeRange: null as string|null,\r\n paramsHistorySelected: true,\r\n exportAlarmHistoryColumns: [] as string[],\r\n });\r\n const [isLoading, setIsLoading] = useState(false);\r\n const elementRef = useRef(null);\r\n\r\n function handleDateChange(date: moment.Moment, selectedTimeRangeAux?: string) {\r\n let startDate: null | string = null;\r\n let endDate: null | string = null;\r\n const timeRange = selectedTimeRangeAux || state.selectedTimeRange;\r\n switch (timeRange) {\r\n case t('dia'): {\r\n startDate = date.format('YYYY-MM-DD');\r\n endDate = date.format('YYYY-MM-DD');\r\n break;\r\n }\r\n case t('mes'): {\r\n startDate = date.startOf('month').format('YYYY-MM-DD');\r\n endDate = date.endOf('month').format('YYYY-MM-DD');\r\n break;\r\n }\r\n case t('ano'): {\r\n startDate = date.startOf('year').format('YYYY-MM-DD');\r\n endDate = date.endOf('year').format('YYYY-MM-DD');\r\n break;\r\n }\r\n default: {\r\n break;\r\n }\r\n }\r\n setState({ startDate: startDate ? moment(startDate) : null, endDate: endDate ? moment(endDate) : null });\r\n render();\r\n }\r\n\r\n async function handleExport() {\r\n if (!state.startDate || !state.endDate) {\r\n return toast.warn(t('selecioneAlgumPeriodoExportar'));\r\n }\r\n\r\n if (state.paramsHistorySelected) {\r\n toast.warn(t('erroNaoImplementado'));\r\n } else {\r\n await handleExportAlarms(state.startDate, state.endDate);\r\n }\r\n }\r\n\r\n async function handleExportAlarms(startDate: Moment, endDate: Moment) {\r\n try {\r\n setIsLoading(true);\r\n const exportResponse = await apiCallDownload('/dri/export-chiller-alarms-hist', {\r\n DEVICE_CODE: props.driId,\r\n START_DATE: startDate.format('YYYY-MM-DD'),\r\n END_DATE: endDate.format('YYYY-MM-DD'),\r\n ORDER_BY: {\r\n column: sortBy.column,\r\n desc: sortBy.desc,\r\n },\r\n filterBy: state.selectedFilterAlarms,\r\n columnsToExport: state.exportAlarmHistoryColumns,\r\n });\r\n\r\n const link: any = document.getElementById('downloadLink');\r\n if (link.href !== '#') window.URL.revokeObjectURL(link.href);\r\n link.href = window.URL.createObjectURL(exportResponse.data);\r\n link.download = exportResponse.headers.filename || `${t('nomeArquivoHistoricoAlarmesChiller')}.xlsx`;\r\n link.click();\r\n\r\n toast.success(t('sucessoExportacao'));\r\n } catch (error) {\r\n console.log(error);\r\n toast.error(t('naoFoiPossivelExportar'));\r\n } finally {\r\n setIsLoading(false);\r\n }\r\n }\r\n\r\n function handleChangeQuickDates(startDate: Moment, endDate: Moment) {\r\n if (startDate.format('YYYY-MM-DD') === endDate.format('YYYY-MM-DD')) {\r\n state.selectedTimeRange = t('dia');\r\n } else {\r\n state.selectedTimeRange = t('flexivel');\r\n }\r\n\r\n state.startDate = startDate;\r\n state.endDate = endDate;\r\n render();\r\n }\r\n\r\n function returnOptions() {\r\n if (state.paramsHistorySelected) {\r\n return [t('flexivel')];\r\n }\r\n return [t('dia'), t('mes'), t('flexivel'), t('ano')];\r\n }\r\n\r\n useEffect(() => {\r\n setState({ startDate: null, endDate: null, selectedTimeRange: null });\r\n }, [state.paramsHistorySelected]);\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n { setState({ paramsHistorySelected: true }); render(); }}>{t('parametros')}\r\n \r\n \r\n {!props.model?.startsWith('chiller-carrier-30xa')\r\n && (\r\n \r\n { setState({ paramsHistorySelected: false }); render(); }}>{t('alarmes')}\r\n \r\n \r\n ) }\r\n \r\n \r\n \r\n \r\n \r\n {\r\n setState({ selectedTimeRange: period });\r\n render();\r\n handleDateChange(moment(), period);\r\n }}\r\n value={state.selectedTimeRange}\r\n placeholder={t('periodo')}\r\n hideSelected\r\n disabled={isLoading}\r\n />\r\n {!state.paramsHistorySelected && (\r\n \r\n )}\r\n \r\n \r\n {(state.selectedTimeRange === t('dia')) && (\r\n \r\n \r\n handleDateChange(moment(data))}\r\n focused={focus.focused}\r\n onFocusChange={({ focused }) => {\r\n setFocus({ ...focus, focused });\r\n }}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(moment())}\r\n />\r\n \r\n \r\n )}\r\n {state.selectedTimeRange === t('mes') && (\r\n \r\n \r\n handleDateChange(moment(d))}\r\n locale=\"pt-BR\"\r\n showMonthYearPicker\r\n dateFormat=\"P\"\r\n />\r\n \r\n \r\n )}\r\n {state.selectedTimeRange === t('flexivel') && (\r\n \r\n \r\n
\r\n {\r\n setState({\r\n startDate,\r\n endDate: startDate.format('YYYY-MM-DD') !== state.startDate?.format('YYYY-MM-DD') ? null : endDate,\r\n });\r\n render();\r\n }}\r\n onFocusChange={(focused) => {\r\n setFocus({ ...focus, focusedInput: focused });\r\n }}\r\n focusedInput={focus.focusedInput}\r\n noBorder\r\n isOutsideRange={(d) => d.isAfter(moment(), 'day')}\r\n startDatePlaceholderText={t('dataInicial')}\r\n endDatePlaceholderText={t('dataFinal')}\r\n />\r\n \r\n
\r\n )}\r\n {state.selectedTimeRange === t('ano') && (\r\n \r\n \r\n { handleDateChange(moment(date)); }}\r\n locale=\"pt-BR\"\r\n showYearPicker\r\n dateFormat=\"yyyy\"\r\n />\r\n \r\n \r\n )}\r\n
\r\n {!state.paramsHistorySelected && (\r\n \r\n \r\n handleExport()} disabled={isLoading}>\r\n \r\n {t('botaoExportar')}\r\n \r\n \r\n )}\r\n
\r\n \r\n {state.paramsHistorySelected ? (\r\n \r\n ) : (\r\n setIsLoading(value)}\r\n isLoading={isLoading}\r\n sortBy={sortBy}\r\n setSortBy={setSortBy}\r\n renderState={render}\r\n setSelectedFilters={setState}\r\n selectedFilters={state.selectedFilterAlarms}\r\n setAlarmHistoryColumns={setState}\r\n />\r\n )}\r\n \r\n \r\n );\r\n}\r\n","type SetpointLimits = {\r\n min: number;\r\n max: number;\r\n}\r\n\r\nconst PADDING_TICKS = 4;\r\nconst TOTAL_TICKS = 26;\r\nconst LIMIT_TOTAL_TICKS = 35;\r\nexport const LIMITS_SETPOINT = [-25, 100];\r\n\r\nexport function roundedTicks(ticks: number[], { min, max }: SetpointLimits): number[] {\r\n const firstTick = ticks[0];\r\n const lastTick = ticks[ticks.length - 1];\r\n const stepperSize = ticks[1] - firstTick;\r\n\r\n const minDifference = Math.max(min - firstTick, 0);\r\n const maxDifference = Math.max(lastTick - max, 0);\r\n const totalDifference = minDifference + maxDifference;\r\n\r\n if (Math.floor(totalDifference / stepperSize) > 1\r\n && firstTick > LIMITS_SETPOINT[0]\r\n && lastTick < LIMITS_SETPOINT[1]\r\n ) {\r\n const divideDifference = Math.floor(totalDifference / 2);\r\n const remainingDifference = totalDifference % 2;\r\n\r\n const minArray = Array.from({ length: divideDifference }, (_, index) => min - (divideDifference - index * stepperSize));\r\n const maxArray = Array.from({ length: divideDifference + remainingDifference }, (_, index) => (max + ((index + 1) * stepperSize)));\r\n\r\n const minIndex = ticks.findIndex((value) => value === min);\r\n const maxIndex = ticks.findIndex((value) => value === max);\r\n\r\n if (minIndex === -1 || maxIndex === -1) {\r\n return ticks;\r\n }\r\n\r\n const newRoundedTicks = [...minArray, ...ticks.slice(minIndex, maxIndex + 1), ...maxArray];\r\n return newRoundedTicks;\r\n }\r\n\r\n return ticks;\r\n}\r\n\r\nfunction addTicks(ticks: number[], length: number): number[] {\r\n const lastTick = ticks[ticks.length - 1];\r\n const newTicks = Array.from({ length }, (_, index) => lastTick + 1 + index);\r\n return [...ticks, ...newTicks];\r\n}\r\n\r\nexport function generateTicks(min: number, stepper: number, totalTicks: number): number[] {\r\n const newTicks: number[] = [];\r\n\r\n for (let i = 0; i < totalTicks; i += 1) {\r\n newTicks.push(min + i * stepper);\r\n }\r\n\r\n return newTicks;\r\n}\r\n\r\nexport function generateTicksByStepper(\r\n { min, max } : SetpointLimits,\r\n stepper: number,\r\n totalTicks: number,\r\n): number[] {\r\n const auxMax = LIMITS_SETPOINT[1];\r\n let auxMin = LIMITS_SETPOINT[0];\r\n let ticks: number[] = [];\r\n const limitMinByStepper = auxMax - ((totalTicks - 1) * stepper);\r\n\r\n while (!(ticks.includes(min) && ticks.includes(max)) && auxMin <= limitMinByStepper) {\r\n ticks = generateTicks(auxMin, stepper, totalTicks);\r\n auxMin += stepper;\r\n }\r\n\r\n return ticks;\r\n}\r\n\r\nexport function generateTicksByRange({ min, max }: SetpointLimits): number[] {\r\n let stepper = 1;\r\n let totalTicks = TOTAL_TICKS;\r\n let ticks: number[] = [];\r\n while ((!ticks.includes(min) || !ticks.includes(max)) && stepper <= 5) {\r\n ticks = generateTicksByStepper({ min, max }, stepper, totalTicks);\r\n totalTicks++;\r\n\r\n if (totalTicks > LIMIT_TOTAL_TICKS) {\r\n totalTicks = TOTAL_TICKS;\r\n stepper = 5;\r\n }\r\n }\r\n\r\n if (ticks[0] === min || ticks[ticks.length - 1] === max) {\r\n ticks = addTicks(ticks, PADDING_TICKS);\r\n }\r\n\r\n return roundedTicks(ticks, { min, max });\r\n}\r\n","import moment from 'moment-timezone';\r\nimport { ReactElement } from 'react';\r\n\r\nexport function CsvLabelFormatterData(hour: number, dateStart: moment.Moment | null): string {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const dateFinal = `${dd}/${mm}`;\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n return `${dateFinal} ${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}:${String(ss).padStart(2, '0')}`;\r\n}\r\n\r\nexport function tickXLabelFormatterDay(hour: number, dateStart: moment.Moment | null): string {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n\r\n const dateFinal = `${dd}/${mm}`;\r\n return `${dateFinal}`;\r\n}\r\n\r\nexport function tickXLabelFormatterHour(hour: number): string {\r\n const numDays = Math.floor(hour / 24);\r\n const sign = hour - 24 * numDays < 0 ? '-' : '';\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const mm = Math.floor((Math.abs(hour) * 60) % 60);\r\n return `${'\\n'} ${sign}${String(hh).padStart(2, '0')}:${String(mm).padStart(2, '0')}`;\r\n}\r\n\r\nexport const renderQuarterTickHour = (tickProps: any): ReactElement => {\r\n const { x, y, payload } = tickProps;\r\n const { value } = payload;\r\n\r\n return {`${tickXLabelFormatterHour(value)}`};\r\n};\r\n\r\nexport function tooltipXLabelFormatter(hour: number, dateStart: moment.Moment | null) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const dateFinal = `${dd}/${mm}`;\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n return `${dateFinal} - ${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}:${String(ss).padStart(2, '0')}`;\r\n}\r\n","import React, {\r\n useEffect,\r\n useState,\r\n useCallback,\r\n useRef,\r\n useMemo,\r\n} from 'react';\r\n\r\nimport moment from 'moment';\r\nimport { SingleDatePicker, DateRangePicker } from 'react-dates';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport { CSVLink } from 'react-csv';\r\nimport i18n from '~/i18n';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Label, LineChart, Tooltip, Line, ReferenceArea,\r\n} from 'recharts';\r\nimport {\r\n Loader,\r\n Card,\r\n Datepicker,\r\n Button,\r\n Overlay,\r\n Checkbox,\r\n} from 'components';\r\nimport { getEndTime } from 'helpers';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport { CloseIcon } from '~/icons';\r\nimport {\r\n GraphWrapper,\r\n ModalMobile,\r\n ModalTitle,\r\n ModalTitleContainer,\r\n ModalSection,\r\n MobileWrapper,\r\n DesktopWrapper,\r\n Text,\r\n CheckboxLine,\r\n CustomLabel,\r\n ContentDate,\r\n DateLabel,\r\n StyledCalendarIcon,\r\n BtnExport,\r\n ExportWorksheet,\r\n ColoredLine,\r\n DashedColoredLine,\r\n StyledLink,\r\n InfoText,\r\n} from './styles';\r\nimport { colors } from '~/styles/colors';\r\nimport { t } from 'i18next';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport { NoGraph } from '~/components/NoGraph';\r\nimport { ChangeColor } from '~/components/ChangeColor';\r\nimport ChillerCarrierHistory from './ChillerCarrierHistory/index';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\nimport { generateTicksByRange } from 'helpers/ticks';\r\nimport {\r\n CsvLabelFormatterData, renderQuarterTickHour, tickXLabelFormatterDay, tickXLabelFormatterHour,\r\n tooltipXLabelFormatter,\r\n} from 'helpers/historyGraph';\r\n\r\ntype ChartDataVar = {\r\n id: string;\r\n name: string;\r\n unit?: string;\r\n y: (null | number)[];\r\n strokeDasharray: string;\r\n type: string;\r\n color: string;\r\n axisId: string;\r\n maxY?: null | number;\r\n minY?: null | number;\r\n y_orig?: (null | number | string)[];\r\n steps?: {\r\n y_orig: (null | number | string);\r\n y_chart: (null | number);\r\n label: string;\r\n }[];\r\n checked?: boolean;\r\n};\r\n\r\ntype ChartDataDutDuo = ApiResps['/dut/get-day-charts-data-commonX'];\r\n\r\ntype ShowChartDataDutDuo = {\r\n Temperature: boolean;\r\n Temperature_1: boolean;\r\n};\r\n\r\ninterface DriHistoryState {\r\n groupGraph: boolean;\r\n associatedDacsId: {\r\n dacId: string;\r\n checked: boolean;\r\n temperatures: {\r\n TsucChecked: boolean;\r\n TliqChecked: boolean;\r\n TambChecked: boolean;\r\n };\r\n }[];\r\n selectedDacs: {\r\n dacId: string;\r\n chartData: {\r\n commonX: number[];\r\n vars: {\r\n Lcmp: any;\r\n Tsuc: any;\r\n Tliq: any;\r\n Tamb: any;\r\n };\r\n limts: {\r\n maxPval: number;\r\n maxTval: number;\r\n minPval: number;\r\n minTval: number;\r\n };\r\n faults: any;\r\n numDeparts: number[];\r\n };\r\n }[];\r\n associatedDacs: {\r\n dacId: string;\r\n chartData: {\r\n commonX: number[];\r\n vars: {\r\n Lcmp: any;\r\n Tsuc: any;\r\n Tliq: any;\r\n Tamb: any;\r\n };\r\n limts: {\r\n maxPval: number;\r\n maxTval: number;\r\n minPval: number;\r\n minTval: number;\r\n };\r\n faults: any;\r\n numDeparts: number[];\r\n };\r\n show: {\r\n Lcmp: boolean;\r\n Tsuc: boolean;\r\n Tliq: boolean;\r\n Tamb: boolean;\r\n };\r\n }[];\r\n loading: boolean;\r\n devInfo: ReturnType;\r\n driInfo: null | {\r\n varsCfg: { application: string };\r\n ecoCfg: { ECO_OFST_START: number; DUT_ID: string };\r\n };\r\n xDomain: null | [number, number];\r\n xTicks: number[];\r\n refAreaLeft: null | number;\r\n refAreaRight: null | number;\r\n multiDays: boolean;\r\n numDays: number;\r\n dateStart: null | moment.Moment;\r\n dateEnd: null | moment.Moment;\r\n tomorrow: moment.Moment;\r\n chartData: {\r\n x: number[];\r\n vars: ChartDataVar[] | null;\r\n };\r\n isModalOpen: boolean;\r\n focused: boolean;\r\n focusedInput: 'endDate' | 'startDate' | null;\r\n csvData: {}[];\r\n setpointLimits: number[];\r\n setpointTicks: number[];\r\n modeLimits: number[];\r\n modeTicks: number[];\r\n vavModeLimits: number[];\r\n vavModeTicks: number[];\r\n fancoilModeTicks: number[];\r\n fancoilModeLimits: number[];\r\n customPointLimit: number;\r\n valveOnChecked: boolean;\r\n thermOnChecked: boolean;\r\n fanStatusChecked: boolean;\r\n baseSetpointTicks: number[];\r\n yDomain: number[];\r\n associatedDutsDuoId: {\r\n dutDuoId: string;\r\n checked: boolean;\r\n temperatures: {\r\n Temperature: boolean;\r\n Temperature_1: boolean;\r\n };\r\n }[];\r\n associatedDutsDuo: {\r\n dutDuoId: string;\r\n chartData: ChartDataDutDuo;\r\n show: ShowChartDataDutDuo;\r\n }[];\r\n selectedDutsDuo: { dutDuoId: string; chartData: ChartDataDutDuo }[];\r\n}\r\n\r\nconst varsPropertiesFancoil = {\r\n Setpoint: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '5 5',\r\n type: 'monotone',\r\n },\r\n DutTemp: {\r\n colorDefault: colors.Orange,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n TUSEMAX: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n TUSEMIN: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n EcoSetpoint: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '5 5',\r\n type: 'monotone',\r\n },\r\n OperationMode: {\r\n colorDefault: '#505050',\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n TempAmb: {\r\n colorDefault: colors.Orange,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n Mode: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n ThermOn: {\r\n colorDefault: '#082948',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n ValveOn: {\r\n colorDefault: '#2D81FF',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n FanStatus: {\r\n colorDefault: '#4F6381',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Lock: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Tliq: {\r\n colorDefault: '#074FBC',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Tsuc: {\r\n colorDefault: '#87B5FA',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Temperature_1: {\r\n colorDefault: '#074FBC',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Temperature: {\r\n colorDefault: '#87B5FA',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Tamb: {\r\n colorDefault: '#C2D3ED',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n};\r\n\r\nconst CustomTick = (props) => {\r\n const {\r\n x, y, payload, anchor, application, baseSetpointMinLimit, stepperGraph,\r\n } = props;\r\n\r\n const isFancoil = !!application?.startsWith('fancoil');\r\n\r\n const label = generateLabel();\r\n\r\n function generateLabel(): string {\r\n if (isFancoil) {\r\n if (payload.value >= baseSetpointMinLimit) return '';\r\n if (payload.value === baseSetpointMinLimit - (1 * stepperGraph) || payload.value === baseSetpointMinLimit - (2 * stepperGraph)) {\r\n return t(payload.value === baseSetpointMinLimit - (1 * stepperGraph) ? 'aberta' : 'fechada').toLocaleUpperCase();\r\n }\r\n return t((baseSetpointMinLimit - payload.value) % 2 ? 'ligado' : 'desligado').toLocaleUpperCase();\r\n }\r\n switch (payload.value) {\r\n case 3:\r\n return t('desligado');\r\n case 4:\r\n return t('ligado');\r\n case 5:\r\n return t('desligado');\r\n case 6:\r\n return t('ligado');\r\n case 7:\r\n return t('desligado');\r\n case 8:\r\n return t('ligado');\r\n case 9:\r\n return t('desligado');\r\n case 10:\r\n return t('ligado');\r\n case 11:\r\n return t('desligado');\r\n case 12:\r\n return t('ligado');\r\n case 13:\r\n return t('desligado');\r\n case 14:\r\n return t('ligado');\r\n default:\r\n return '';\r\n }\r\n }\r\n\r\n if (payload.value >= -10 && payload.value <= 14 && !isFancoil || (isFancoil && !!label)) {\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n }\r\n\r\n if (payload.value > 1000000) {\r\n return (\r\n \r\n \r\n {new Date(payload.value).toLocaleTimeString()}\r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n {anchor === 'middle'\r\n ? Math.floor(payload.value / (60 * 60))\r\n .toString()\r\n .padStart(2, '0')\r\n : payload.value}\r\n \r\n \r\n );\r\n};\r\n\r\nfunction CustomTickMode(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n\r\n let label = payload.value;\r\n\r\n if (payload.value === 0) {\r\n label = t('desligado');\r\n }\r\n if (payload.value === 1) {\r\n label = t('ventilar').toLocaleUpperCase();\r\n }\r\n if (payload.value === 2) {\r\n label = t('refrigerar').toLocaleUpperCase();\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\nfunction CustomCompressorTickMode(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n\r\n let label = payload.value;\r\n\r\n if (payload.value === 0) {\r\n label = t('desligadoMin');\r\n }\r\n if (payload.value === 1) {\r\n label = t('ligadoMin');\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction CustomTickVAV(props) {\r\n const {\r\n x, y, payload, anchor, id,\r\n } = props;\r\n\r\n let label = payload.value;\r\n const modeTicks = {\r\n 0: t('resfriar'),\r\n 1: t('esquentar'),\r\n 2: t('ventilar'),\r\n };\r\n const thermOnTicks = {\r\n 0: t('desligadoMin'),\r\n 1: t('ligadoMin'),\r\n };\r\n const valveOnTicks = {\r\n 0: t('fechado'),\r\n 1: t('aberto'),\r\n };\r\n const lockTicks = {\r\n 0: t('liberadoMin'),\r\n 1: t('travado'),\r\n };\r\n if (id === 'Mode') {\r\n label = modeTicks[payload.value] || label;\r\n }\r\n if (id === 'ThermOn') {\r\n label = thermOnTicks[payload.value] || label;\r\n }\r\n if (id === 'ValveOn') {\r\n label = valveOnTicks[payload.value] || label;\r\n }\r\n if (id === 'Lock') {\r\n label = lockTicks[payload.value] || label;\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction CustomTickFancoil(props) {\r\n const {\r\n x, y, payload, anchor, id,\r\n } = props;\r\n\r\n let label = payload.value;\r\n const modeTicks = {\r\n 0: t('desligar'),\r\n 1: t('ventilar'),\r\n 2: t('refrigerar'),\r\n };\r\n const thermOnTicks = {\r\n 0: t('desligadoMin'),\r\n 1: t('ligadoMin'),\r\n };\r\n const valveOnTicks = {\r\n 0: t('fechada'),\r\n 1: t('aberta'),\r\n };\r\n const fanTicks = {\r\n 0: t('desligadoMin'),\r\n 1: t('ligadoMin'),\r\n };\r\n\r\n if (id === 'OperationMode') {\r\n label = modeTicks[payload.value] || label;\r\n }\r\n if (id === 'ThermOn') {\r\n label = thermOnTicks[payload.value] || label;\r\n }\r\n if (id === 'ValveOn') {\r\n label = valveOnTicks[payload.value] || label;\r\n }\r\n if (id === 'FanStatus') {\r\n label = fanTicks[payload.value] || label;\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction varsProperties(application?: string) {\r\n if (application?.startsWith('fancoil')) return varsPropertiesFancoil;\r\n const varsProperties = {\r\n Setpoint: {\r\n colorDefault: application === 'carrier-ecosplit' ? colors.Blue200 : colors.Green,\r\n strokeDasharray: application === 'carrier-ecosplit' ? '' : '5 5',\r\n type: 'monotone',\r\n },\r\n DutTemp: {\r\n colorDefault: colors.Orange,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n TUSEMAX: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n TUSEMIN: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n EcoSetpoint: {\r\n colorDefault: colors.Green,\r\n strokeDasharray: '5 5',\r\n type: 'monotone',\r\n },\r\n OperationMode: {\r\n colorDefault: colors.Red,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n TempAmb: {\r\n colorDefault: colors.Orange,\r\n strokeDasharray: '',\r\n type: 'monotone',\r\n },\r\n Mode: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n ThermOn: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n ValveOn: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n FanStatus: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Lock: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Tliq: {\r\n colorDefault: '#2d81ff',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Tsuc: {\r\n colorDefault: '#ffbe16',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Tamb: {\r\n colorDefault: '#e803c3',\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n Lcmp: {\r\n colorDefault: colors.BlueChart,\r\n strokeDasharray: '',\r\n type: 'stepAfter',\r\n },\r\n };\r\n return varsProperties;\r\n}\r\n\r\nfunction getDataByVars(vars?: ChartDataVar[]): Record {\r\n const defaultVars: Record = {\r\n setpoint: undefined,\r\n dutTemp: undefined,\r\n tusemax: undefined,\r\n tusemin: undefined,\r\n ecoSetpoint: undefined,\r\n operationMode: undefined,\r\n mode: undefined,\r\n tempAmb: undefined,\r\n thermOn: undefined,\r\n valveOn: undefined,\r\n fanStatus: undefined,\r\n lock: undefined,\r\n };\r\n\r\n if (!vars) return defaultVars;\r\n\r\n const mapping: Record = {\r\n Setpoint: 'setpoint',\r\n DutTemp: 'dutTemp',\r\n TUSEMAX: 'tusemax',\r\n TUSEMIN: 'tusemin',\r\n EcoSetpoint: 'ecoSetpoint',\r\n OperationMode: 'operationMode',\r\n Mode: 'mode',\r\n TempAmb: 'tempAmb',\r\n ThermOn: 'thermOn',\r\n ValveOn: 'valveOn',\r\n FanStatus: 'fanStatus',\r\n Lock: 'lock',\r\n };\r\n\r\n const result = { ...defaultVars };\r\n\r\n for (const data of vars) {\r\n if (data?.id && mapping[data.id] && !result[mapping[data.id]]) {\r\n result[mapping[data.id]] = data;\r\n }\r\n }\r\n\r\n return result;\r\n}\r\n\r\nlet CSVheader = [] as any;\r\n\r\nexport function DriHistory(props: { integrId: string }): JSX.Element {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const { integrId: devId } = props;\r\n const csvLinkEl = useRef();\r\n const [state, render, setState] = useStateVar({\r\n groupGraph: false,\r\n associatedDacsId: [],\r\n selectedDacs: [],\r\n associatedDacs: [],\r\n loading: false,\r\n devInfo: getCachedDevInfoSync(devId),\r\n driInfo: null,\r\n xDomain: [0, 24],\r\n xTicks: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24],\r\n refAreaLeft: null,\r\n refAreaRight: null,\r\n multiDays: false,\r\n numDays: 1,\r\n dateStart: null,\r\n dateEnd: null,\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n chartData: {\r\n x: [],\r\n vars: null,\r\n },\r\n isModalOpen: false,\r\n focused: false,\r\n focusedInput: null,\r\n csvData: [],\r\n setpointLimits: [0, 0],\r\n setpointTicks: [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40],\r\n modeLimits: [0, 2],\r\n modeTicks: [0, 1, 2],\r\n vavModeLimits: [0, 2],\r\n vavModeTicks: [0, 1, 2],\r\n fancoilModeTicks: [0, 1, 2],\r\n fancoilModeLimits: [0, 2],\r\n customPointLimit: 11,\r\n valveOnChecked: true,\r\n thermOnChecked: true,\r\n fanStatusChecked: true,\r\n baseSetpointTicks: [15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40],\r\n yDomain: [15, 40],\r\n associatedDutsDuoId: [],\r\n associatedDutsDuo: [],\r\n selectedDutsDuo: [],\r\n });\r\n const [date, setDate] = useState(getEndTime());\r\n const [isModalOpen, setIsModalOpen] = useState(false);\r\n const [graphData, setGraphData] = useState({});\r\n\r\n const isFancoil = () => state.driInfo?.varsCfg?.application.startsWith('fancoil');\r\n\r\n function generateSetpointTicks(newSetpointsLimit: number[]): number[] {\r\n const lastTicks = generateTicksByRange(\r\n {\r\n min: newSetpointsLimit[0],\r\n max: newSetpointsLimit[1],\r\n },\r\n );\r\n return lastTicks;\r\n }\r\n\r\n function updateMinMaxSetpoint({ min, max }: { min: number; max: number;}) {\r\n if (!isFancoil()) return;\r\n const minY = Math.floor(min / 5) * 5;\r\n const maxY = Math.ceil(max / 5) * 5;\r\n\r\n const newSetpoints: number[] = [...state.setpointLimits];\r\n if (newSetpoints[0] > minY) newSetpoints[0] = minY;\r\n if (newSetpoints[1] < maxY) newSetpoints[1] = maxY;\r\n\r\n const setpointLimits = [minY, maxY];\r\n setState({ setpointLimits });\r\n\r\n const newSetpointsTicks = generateSetpointTicks(newSetpoints);\r\n setState({\r\n setpointTicks: newSetpointsTicks,\r\n baseSetpointTicks: newSetpointsTicks,\r\n yDomain: [newSetpointsTicks[0], newSetpointsTicks[newSetpointsTicks.length - 1]],\r\n });\r\n }\r\n\r\n function createAdditionalTicksFancoil(baseTicks: number[]): number[] {\r\n const differenceTicks = baseTicks[1] - baseTicks[0];\r\n const arrayLength = 6;\r\n\r\n const newTicks = Array.from({ length: arrayLength },\r\n (_, index) => baseTicks[0] - ((arrayLength * differenceTicks) - (index * differenceTicks)));\r\n return [...newTicks, ...baseTicks];\r\n }\r\n\r\n function checkAgroupGraphData() {\r\n let baseTicks = [...state.baseSetpointTicks];\r\n if (state.groupGraph) {\r\n if (isFancoil()) {\r\n baseTicks = createAdditionalTicksFancoil(baseTicks);\r\n }\r\n let customPointLimit = baseTicks[0];\r\n const customPointTick: number[] = [];\r\n if (!isFancoil() && state.selectedDacs.length > 0) {\r\n customPointLimit = baseTicks[0] - state.selectedDacs.length * 2;\r\n for (let i = customPointLimit; i <= (baseTicks[0] - 1); i++) {\r\n customPointTick.push(i);\r\n }\r\n }\r\n\r\n const updatedBaseTick = customPointTick.concat(baseTicks);\r\n\r\n state.setpointTicks = updatedBaseTick;\r\n state.yDomain = [updatedBaseTick[0], updatedBaseTick[updatedBaseTick.length - 1]];\r\n state.customPointLimit = customPointLimit;\r\n render();\r\n } else {\r\n state.setpointTicks = state.baseSetpointTicks;\r\n state.yDomain = [state.baseSetpointTicks[0], state.baseSetpointTicks[state.baseSetpointTicks.length - 1]];\r\n render();\r\n }\r\n }\r\n\r\n function insertVars(vars: any) {\r\n const chartVars: (typeof state.chartData.vars) = [];\r\n const application = state.driInfo?.varsCfg?.application;\r\n const ecoCfg = state.driInfo?.ecoCfg;\r\n let i = 0;\r\n for (const key in vars) {\r\n if (vars.hasOwnProperty(key) && vars[key].y.length > 0 && vars[key].y.some((value) => value !== null)) {\r\n chartVars.push({\r\n id: key,\r\n name: vars[key].name,\r\n y: vars[key].y,\r\n color: varsProperties(application)[key]?.colorDefault,\r\n strokeDasharray: varsProperties(application)[key]?.strokeDasharray,\r\n axisId: key,\r\n checked: true,\r\n type: varsProperties(application)[key]?.type,\r\n maxY: 40,\r\n minY: 0,\r\n });\r\n if (key === 'TUSEMIN' && ecoCfg?.DUT_ID) {\r\n chartVars.push({\r\n id: 'EcoSetpoint',\r\n name: 'Eco Setpoint',\r\n y: vars[key].y.map((value) => value && value + state.driInfo?.ecoCfg.ECO_OFST_START),\r\n color: varsProperties(application).EcoSetpoint?.colorDefault,\r\n strokeDasharray: varsProperties(application).EcoSetpoint?.strokeDasharray,\r\n axisId: 'EcoSetpoint',\r\n checked: true,\r\n type: varsProperties(state.devInfo?.varsCfg?.application).EcoSetpoint?.type,\r\n maxY: 40,\r\n minY: 0,\r\n });\r\n }\r\n }\r\n i++;\r\n }\r\n\r\n state.chartData.vars = chartVars;\r\n }\r\n\r\n const getChartDacs = async (numDays: number) => {\r\n const { dri } = state.devInfo;\r\n const application = state.driInfo?.varsCfg?.application;\r\n const params: string[] = [];\r\n\r\n if (application?.startsWith('fancoil')) {\r\n params.push('Tsuc', 'Tliq', 'Tamb');\r\n } else {\r\n params.push('Lcmp');\r\n }\r\n const promiseDacs = dri.associatedDacs?.map(async (dac, i) => {\r\n const chartData = await apiCall('/dac/get-charts-data-common', {\r\n dacId: dac.DAC_ID,\r\n selectedParams: params,\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays,\r\n });\r\n updateMinMaxSetpoint({ min: chartData.limts.minTval, max: chartData.limts.maxTval });\r\n return { dacId: dac.DAC_ID, chartData };\r\n }) || [];\r\n const resultPromises = await Promise.all(promiseDacs);\r\n const chartVars: (typeof state.chartData.vars) = [];\r\n const labels = {\r\n Tliq: t('temperaturaEntradaAgua'),\r\n Tsuc: t('temperaturaSaidaAgua'),\r\n Tamb: t('temperaturaArEntrada'),\r\n Lcmp: t('sinalComando'),\r\n };\r\n let index = 0;\r\n\r\n for (const dac of resultPromises) {\r\n for (const param of params) {\r\n const labelDifference = application?.startsWith('fancoil') ? '' : ` - ${index}`;\r\n if (param === 'Lcmp' && dac.chartData.vars[param] && dac.chartData.vars[param].L.length > 0 && dac.chartData.vars[param].L.some((value) => value !== null)) {\r\n chartVars.push({\r\n id: param,\r\n name: `${labels[param]}${labelDifference}`,\r\n y: dac.chartData.vars[param].L,\r\n color: varsProperties(application)[param]?.colorDefault,\r\n strokeDasharray: varsProperties(application)[param]?.strokeDasharray,\r\n axisId: param,\r\n checked: true,\r\n type: varsProperties(application)[param]?.type,\r\n maxY: 40,\r\n minY: 0,\r\n });\r\n } else if (dac.chartData.vars[param] && dac.chartData.vars[param].y.length > 0 && dac.chartData.vars[param].y.some((value) => value !== null)) {\r\n chartVars.push({\r\n id: param,\r\n name: `${labels[param]}${labelDifference}`,\r\n y: dac.chartData.vars[param].y,\r\n color: varsProperties(application)[param]?.colorDefault,\r\n strokeDasharray: varsProperties(application)[param]?.strokeDasharray,\r\n axisId: param,\r\n checked: true,\r\n type: varsProperties(application)[param]?.type,\r\n maxY: 40,\r\n minY: 0,\r\n });\r\n }\r\n }\r\n index++;\r\n }\r\n state.chartData.vars = (state.chartData.vars || []).concat(chartVars);\r\n setState({ selectedDacs: resultPromises, associatedDacs: resultPromises.map((dac) => ({ ...dac, show: { Tsuc: true, Tliq: true, Tamb: true } })), associatedDacsId: resultPromises.map((dac) => ({ dacId: dac.dacId, checked: true, temperatures: { TsucChecked: true, TliqChecked: true, TambChecked: true } })) });\r\n render();\r\n };\r\n\r\n const getChartDutsDuo = async (numDays: number) => {\r\n const { dri } = state.devInfo as { dri: NonNullable};\r\n const application = state.driInfo?.varsCfg?.application;\r\n const params = ['Temperature', 'Temperature_1'];\r\n\r\n if (!isFancoil() || !dri.associatedDutsDuo?.length) return;\r\n\r\n const promisesDutsDuo = dri.associatedDutsDuo.map(async (dutDuo) => {\r\n const chartData = await apiCall('/dut/get-day-charts-data-commonX', {\r\n devId: dutDuo.DUT_DUO_ID,\r\n selectedParams: params,\r\n day: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays,\r\n });\r\n const temperatureGraphValues = [...chartData.Temperature.y, ...chartData.Temperature_1.y].filter((value) => value !== null);\r\n const minValueTemp = Math.min(...temperatureGraphValues);\r\n const maxValueTemp = Math.max(...temperatureGraphValues);\r\n updateMinMaxSetpoint({ min: minValueTemp, max: maxValueTemp });\r\n return { dutDuoId: dutDuo.DUT_DUO_ID, chartData };\r\n });\r\n const resultPromises = await Promise.all(promisesDutsDuo);\r\n\r\n const chartVars: (typeof state.chartData.vars) = [];\r\n const labels = {\r\n Temperature_1: t('temperaturaEntradaAgua'),\r\n Temperature: t('temperaturaSaidaAgua'),\r\n };\r\n let index = 0;\r\n\r\n for (const dutDuo of resultPromises) {\r\n for (const param of params) {\r\n if (dutDuo.chartData[param] && dutDuo.chartData[param].y.length > 0 && dutDuo.chartData[param].y.some((value) => value !== null)) {\r\n chartVars.push({\r\n id: param,\r\n name: `${labels[param]}`,\r\n y: dutDuo.chartData[param].y,\r\n color: varsProperties(application)[param]?.colorDefault,\r\n strokeDasharray: varsProperties(application)[param]?.strokeDasharray,\r\n axisId: param,\r\n checked: true,\r\n type: varsProperties(application)[param]?.type,\r\n maxY: 40,\r\n minY: 0,\r\n });\r\n }\r\n }\r\n index++;\r\n }\r\n\r\n state.chartData.vars = (state.chartData.vars || []).concat(chartVars);\r\n\r\n const newState = {\r\n selectedDutsDuo: resultPromises,\r\n associatedDutsDuo: resultPromises.map((dutDuo) => ({\r\n ...dutDuo,\r\n show: { Temperature: true, Temperature_1: true },\r\n })),\r\n associatedDutsDuoId: resultPromises.map((dutDuo) => ({\r\n dutDuoId: dutDuo.dutDuoId,\r\n checked: true,\r\n temperatures: {\r\n Temperature: true,\r\n Temperature_1: true,\r\n },\r\n })),\r\n };\r\n\r\n setState(newState);\r\n };\r\n\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n if (!state.loading) {\r\n setState({ loading: true });\r\n }\r\n const devInfo = await getCachedDevInfo(devId, { forceFresh: true });\r\n const driInfo = devInfo.dri;\r\n setState({ devInfo, driInfo, loading: false });\r\n render();\r\n }).catch(console.log);\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (!state.devInfo) return;\r\n if (!(state.driInfo?.varsCfg?.application && (['carrier-ecosplit'].includes(state.driInfo.varsCfg.application)) || state.driInfo?.varsCfg?.application.startsWith('vav') || state.driInfo?.varsCfg?.application.startsWith('fancoil'))) return;\r\n if (!state.dateStart || !state.dateEnd) return;\r\n\r\n Promise.resolve().then(async () => {\r\n if (!state.loading) {\r\n setState({ loading: true });\r\n }\r\n\r\n try {\r\n const d1 = new Date(`${moment(state.dateStart).format('YYYY-MM-DD')}T00:00:00Z`).getTime();\r\n const d2 = new Date(`${moment(state.dateEnd).format('YYYY-MM-DD')}T00:00:00Z`).getTime();\r\n const numDays = Math.round((d2 - d1) / 1000 / 60 / 60 / 24) + 1;\r\n state.numDays = numDays;\r\n if ((numDays >= 1) && (numDays <= 15)) { } // OK\r\n else {\r\n toast.error(t('periodoDe1a15Dias'));\r\n state.loading = false;\r\n render();\r\n return;\r\n }\r\n\r\n try {\r\n const params = {\r\n driId: devId,\r\n selectedParams: ['Setpoint', 'Status', 'Mode', 'DutTemp', 'ThermOn', 'Lock', 'TempAmb', 'ValveOn', 'FanStatus'],\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays,\r\n };\r\n\r\n const chartsData = await apiCall('/dri/get-day-charts-data-common', params);\r\n setState({ setpointLimits: [chartsData.limits.minTval, chartsData.limits.maxTval] });\r\n updateMinMaxSetpoint({ min: chartsData.limits.minTval, max: chartsData.limits.maxTval });\r\n\r\n state.chartData.x = chartsData.commonX;\r\n\r\n insertVars(chartsData.vars);\r\n\r\n state.xDomain = [0, 24 * numDays];\r\n state.xTicks = Array.from({ length: 13 }, (_, i) => i * 2 * numDays);\r\n } catch (e) {\r\n state.chartData.vars = null;\r\n toast.error(t('erroAquisicaoHistoricoDRI'));\r\n console.log(e);\r\n }\r\n await Promise.all([getChartDacs(numDays), getChartDutsDuo(numDays)]);\r\n } catch (err) { console.log(err); }\r\n state.loading = false;\r\n render();\r\n });\r\n }, [state.dateStart, state.dateEnd, state.devInfo, state.driInfo]);\r\n\r\n function onMultidaysClick() {\r\n state.multiDays = !state.multiDays;\r\n if (!state.multiDays) {\r\n state.dateEnd = state.dateStart;\r\n }\r\n render();\r\n }\r\n\r\n const setFormattedDate = useCallback((date) => setDate(date.set({ hour: 0 })), []);\r\n\r\n function csvValueFormatter(value: any, id: string) {\r\n const labels = {\r\n OperationMode: {\r\n 0: t('desligado'),\r\n 1: t('ventilar').toLocaleUpperCase(),\r\n 2: t('refrigerar').toLocaleUpperCase(),\r\n },\r\n ThermOn: {\r\n 0: t('desligado'),\r\n 1: t('ligado').toLocaleUpperCase(),\r\n },\r\n ValveOn: {\r\n 0: t('fechada').toLocaleUpperCase(),\r\n 1: t('aberta').toLocaleUpperCase(),\r\n },\r\n FanStatus: {\r\n 0: t('desligado').toLocaleUpperCase(),\r\n },\r\n Mode: {\r\n 0: t('resfriar').toLocaleUpperCase(),\r\n 1: t('esquentar').toLocaleUpperCase(),\r\n 2: t('ventilar').toLocaleUpperCase(),\r\n },\r\n Lock: {\r\n 0: t('liberadoMin'),\r\n 1: t('travado'),\r\n 2: t('refrigerar').toLocaleUpperCase(),\r\n },\r\n };\r\n if (state.chartData.vars && value != null) {\r\n let label = labels[id]?.[value] || value.toString();\r\n if (id === 'FanStatus' && value !== 0) label = t('ligado').toLocaleUpperCase();\r\n return `${formatNumberWithFractionDigits(label)}`;\r\n }\r\n return '-';\r\n }\r\n\r\n const getCsvData = async () => {\r\n state.loading = true; render();\r\n const formattedCSV = [] as any;\r\n CSVheader = [];\r\n\r\n try {\r\n CSVheader.push({\r\n label: t('dataHora'),\r\n key: 'data',\r\n });\r\n\r\n if (state.chartData.vars && state.chartData.vars.length > 0) {\r\n for (const object of state.chartData.vars) {\r\n if ((state.driInfo?.varsCfg?.application.startsWith('fancoil') && object.checked && ['Setpoint', 'OperationMode', 'ThermOn', 'TempAmb', 'ValveOn', 'FanStatus', 'TUSEMAX', 'TUSEMIN'].includes(object.id))\r\n || (state.driInfo?.varsCfg?.application.startsWith('vav') && object.checked && ['Setpoint', 'Mode', 'ThermOn', 'TempAmb', 'ValveOn', 'Lock', 'TUSEMAX', 'TUSEMIN'].includes(object.id))\r\n || (object.checked && ['Setpoint', 'OperationMode', 'DutTemp', 'EcoSetpoint'].includes(object.id))\r\n ) {\r\n CSVheader.push({\r\n label: object.name,\r\n key: object.id,\r\n });\r\n }\r\n }\r\n\r\n for (let i = 0; i < state.chartData.x.length; i++) {\r\n if (state.chartData.vars) {\r\n if (state.driInfo?.varsCfg?.application.startsWith('fancoil')) {\r\n formattedCSV.push({\r\n data: `${CsvLabelFormatterData(state.chartData.x[i], state.dateStart)}`,\r\n Setpoint: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Setpoint')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Setpoint')[0].y[i], 'Setpoint') : '-'),\r\n OperationMode: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'OperationMode')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'OperationMode')[0].y[i], 'OperationMode') : '-'),\r\n ThermOn: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'ThermOn')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'ThermOn')[0].y[i], 'ThermOn') : '-'),\r\n TempAmb: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'TempAmb')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'TempAmb')[0].y[i], 'TempAmb') : '-'),\r\n ValveOn: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'ValveOn')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'ValveOn')[0].y[i], 'ValveOn') : '-'),\r\n FanStatus: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'FanStatus')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'FanStatus')[0].y[i], 'FanStatus') : '-'),\r\n TUSEMAX: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'TUSEMAX')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'TUSEMAX')[0].y[i], 'TUSEMAX') : '-'),\r\n TUSEMIN: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'TUSEMIN')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'TUSEMIN')[0].y[i], 'TUSEMIN') : '-'),\r\n });\r\n } else if (state.driInfo?.varsCfg?.application.startsWith('vav')) {\r\n formattedCSV.push({\r\n data: `${CsvLabelFormatterData(state.chartData.x[i], state.dateStart)}`,\r\n Setpoint: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Setpoint')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Setpoint')[0].y[i], 'Setpoint') : '-'),\r\n Mode: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Mode')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Mode')[0].y[i], 'Mode') : '-'),\r\n ThermOn: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'ThermOn')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'ThermOn')[0].y[i], 'ThermOn') : '-'),\r\n TempAmb: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'TempAmb')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'TempAmb')[0].y[i], 'TempAmb') : '-'),\r\n ValveOn: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'ValveOn')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'ValveOn')[0].y[i], 'ValveOn') : '-'),\r\n Lock: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Lock')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Lock')[0].y[i], 'Lock') : '-'),\r\n TUSEMAX: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'TUSEMAX')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'TUSEMAX')[0].y[i], 'TUSEMAX') : '-'),\r\n TUSEMIN: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'TUSEMIN')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'TUSEMIN')[0].y[i], 'TUSEMIN') : '-'),\r\n });\r\n } else {\r\n formattedCSV.push({\r\n data: `${CsvLabelFormatterData(state.chartData.x[i], state.dateStart)}`,\r\n Setpoint: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'Setpoint')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'Setpoint')[0].y[i], 'Setpoint') : '-'),\r\n DutTemp: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'DutTemp')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'DutTemp')[0].y[i], 'DutTemp') : '-'),\r\n EcoSetpoint: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'EcoSetpoint')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'EcoSetpoint')[0].y[i], 'EcoSetpoint') : '-'),\r\n OperationMode: (state.chartData.vars && state.chartData.vars.filter((line) => line.id === 'OperationMode')[0] ? csvValueFormatter(state.chartData.vars.filter((line) => line.id === 'OperationMode')[0].y[i], 'OperationMode') : '-'),\r\n });\r\n }\r\n }\r\n }\r\n\r\n state.csvData = formattedCSV;\r\n render();\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n\r\n state.loading = false; render();\r\n }\r\n else {\r\n toast.info(t('semDadosGraficoExportar')); state.loading = false;\r\n }\r\n } catch (err) { console.log(err); toast.error(t('erro')); state.loading = false; }\r\n };\r\n\r\n function getDataToChangeColor() {\r\n const list = [] as {color: string, description: string, index: number}[];\r\n state.chartData.vars?.forEach((item, i) => {\r\n if ((state.driInfo?.varsCfg?.application.startsWith('fancoil') && ['Setpoint', 'OperationMode', 'ThermOn', 'TempAmb', 'ValveOn', 'FanStatus', 'TUSEMAX', 'TUSEMIN', 'Tliq', 'Tsuc', 'Tamb', 'Temperature', 'Temperature_1'].includes(item.id))\r\n || (state.driInfo?.varsCfg?.application.startsWith('vav') && ['Setpoint', 'Mode', 'ThermOn', 'TempAmb', 'ValveOn', 'Lock', 'TUSEMAX', 'TUSEMIN', 'Lcmp'].includes(item.id))\r\n || (!(state.driInfo?.varsCfg?.application.startsWith('fancoil') || state.driInfo?.varsCfg?.application.startsWith('vav')))) {\r\n list.push({\r\n color: item.color,\r\n description: `${item.name}`,\r\n index: i,\r\n });\r\n }\r\n });\r\n return list;\r\n }\r\n\r\n function setColor(color, index) {\r\n if (state.chartData.vars && state.chartData.vars.length > index) {\r\n state.chartData.vars[index].color = color.hex;\r\n render();\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {(!state.loading && state.driInfo?.varsCfg.application.startsWith('chiller-carrier')) ? (\r\n \r\n ) : (\r\n \r\n <>{state.loading && }\r\n
\r\n {(!state.loading && (state.driInfo?.varsCfg?.application === 'carrier-ecosplit' || state.driInfo?.varsCfg?.application.startsWith('vav') || state.driInfo?.varsCfg?.application.startsWith('fancoil')))\r\n && (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n {t('Filtrar por')}\r\n setIsModalOpen(false)} />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('Data')}\r\n
\r\n {!state.isModalOpen && (!state.multiDays) && (\r\n { setState({ dateStart: value, dateEnd: value }); }}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => setState({ focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n {!state.isModalOpen && (state.multiDays) && (\r\n { setState({ dateStart: startDate, dateEnd: startDate !== state.dateStart ? null : endDate }); }} // PropTypes.func.isRequired,\r\n onFocusChange={(focused: 'endDate' | 'startDate' | null) => setState({ focusedInput: focused })}\r\n focusedInput={state.focusedInput}\r\n noBorder\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n \r\n
\r\n \r\n \r\n \r\n {t('multiplosDias')}\r\n \r\n \r\n
\r\n \r\n {t('visualizacao')}\r\n \r\n {t('desagrupar')}\r\n { setState({ groupGraph: !state.groupGraph }); checkAgroupGraphData(); render(); }}\r\n style={{ marginLeft: '10px', marginRight: '10px' }}\r\n />\r\n {t('agrupar')}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n {t('exportarPlanilha')}\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
setIsModalOpen(true)}>\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n )}\r\n {(!state.loading && !(state.driInfo?.varsCfg.application.startsWith('chiller-carrier') || state.driInfo?.varsCfg?.application === 'carrier-ecosplit' || state.driInfo?.varsCfg?.application.startsWith('vav') || state.driInfo?.varsCfg?.application.startsWith('fancoil'))) &&
{t('naoDisponivel')}
}\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nconst Graph = ({\r\n state,\r\n checkAgroupGraphData,\r\n}: {\r\n // @ts-ignore\r\n Filtering?: React.Element,\r\n graphData?: any,\r\n graphEnable?: any,\r\n handleChange?: () => void,\r\n state: DriHistoryState,\r\n checkAgroupGraphData: () => void,\r\n}) => {\r\n const [profile] = useState(getUserProfile);\r\n const [, render] = useStateVar({});\r\n const application = state.driInfo?.varsCfg?.application;\r\n const commonX = state.chartData.x;\r\n const stepperGraph = state.baseSetpointTicks[1] - state.baseSetpointTicks[0];\r\n\r\n const {\r\n setpoint,\r\n dutTemp,\r\n tusemax,\r\n tusemin,\r\n ecoSetpoint,\r\n operationMode,\r\n mode,\r\n tempAmb,\r\n thermOn,\r\n valveOn,\r\n fanStatus,\r\n lock,\r\n } = useMemo(() => getDataByVars(state.chartData.vars ?? undefined), [state.chartData.vars]);\r\n\r\n function zoom() {\r\n let { refAreaLeft, refAreaRight } = state;\r\n\r\n if (refAreaLeft === refAreaRight || refAreaRight == null || refAreaLeft == null) {\r\n state.refAreaLeft = null;\r\n state.refAreaRight = null;\r\n render();\r\n return;\r\n }\r\n\r\n // xAxis domain\r\n if (refAreaLeft > refAreaRight) [refAreaLeft, refAreaRight] = [refAreaRight, refAreaLeft];\r\n state.refAreaLeft = null;\r\n state.refAreaRight = null;\r\n state.xDomain = [refAreaLeft, refAreaRight];\r\n state.xTicks = [];\r\n render();\r\n }\r\n\r\n function zoomOut() {\r\n state.refAreaLeft = null;\r\n state.refAreaRight = null;\r\n state.xDomain = null;\r\n state.xTicks = Array.from({ length: 13 }, (_, i) => i * 2 * state.numDays);\r\n render();\r\n }\r\n\r\n function operationalModeFancoilLabel(value: number) {\r\n if (value === 0) return t('desligar');\r\n if (value === 1) return t('ventilar');\r\n if (value === 2) return t('resfriar');\r\n }\r\n\r\n function operationalModeVavLabel(value: number) {\r\n if (value === 0) return t('refrigerar');\r\n if (value === 1) return t('esquentar');\r\n if (value === 2) return t('ventilar');\r\n }\r\n\r\n function operationalModeCarrierEcoSplitLabel(value: number) {\r\n if (value === 0) return t('desligado');\r\n if (value === 1) return t('ventilar').toLocaleUpperCase();\r\n if (value === 2) return t('refrigerar').toLocaleUpperCase();\r\n }\r\n\r\n function tooltipFancoilFormater(value: number, accessor: string, baseValueLimit: number) {\r\n const label = formatNumberWithFractionDigits(value.toString());\r\n\r\n if (accessor.includes('Setpoint') || accessor.includes('Temperatura')) {\r\n return `${label}°C`;\r\n }\r\n\r\n const valueForLabel = state.groupGraph ? baseValueLimit - value : value;\r\n\r\n switch (accessor) {\r\n case 'Modo de operação': return operationalModeFancoilLabel(value);\r\n case 'Sinal de Comando para Válvula': return t(valueForLabel % 2 ? 'aberta' : 'fechada').toLocaleUpperCase();\r\n case 'Status do Ventilador':\r\n case 'Status do Termostato':\r\n default: return t(valueForLabel % 2 ? 'ligadoMin' : 'desligadoMin').toLocaleUpperCase();\r\n }\r\n }\r\n\r\n function toolTipFormater(\r\n value: number,\r\n accessor: string | Function,\r\n ) {\r\n if (application?.startsWith('fancoil')) {\r\n return tooltipFancoilFormater(value, String(accessor), state.baseSetpointTicks[0]);\r\n }\r\n\r\n const label = formatNumberWithFractionDigits(value.toString());\r\n\r\n if (accessor.toString().includes('Setpoint') || accessor.toString().includes('Temperatura')) {\r\n return `${label}°C`;\r\n }\r\n\r\n if (accessor === 'Modo de operação') {\r\n if (application === 'carrier-ecosplit') return operationalModeCarrierEcoSplitLabel(value);\r\n if (application?.startsWith('vav')) return operationalModeVavLabel(value);\r\n }\r\n\r\n if ((accessor as string).startsWith(t('sinalComando'))) {\r\n return t(value % 2 ? 'DESLIGADO' : 'LIGADO').toLocaleUpperCase();\r\n }\r\n\r\n const statusLabelMap = {\r\n 'Status da válvula': { 0: 'Fechada', 1: 'Aberta' },\r\n 'Status do Ventilador': { 0: t('desligadoMin'), 1: t('ligadoMin') },\r\n 'Status do Termostato': { 0: t('desligadoMin'), 1: t('ligadoMin') },\r\n Bloqueio: { 0: t('liberadoMin'), 1: t('bloqueadoMin') },\r\n };\r\n\r\n if (typeof accessor === 'string' && statusLabelMap[accessor]) {\r\n return statusLabelMap[accessor][value];\r\n }\r\n\r\n if (value >= 3 && value <= 12) {\r\n return value % 2 ? 'DESLIGADO' : 'LIGADO';\r\n }\r\n\r\n return label;\r\n }\r\n\r\n function toolTipFormaterDac(\r\n value: number,\r\n ) {\r\n if (value === 0) {\r\n return 'Desligado';\r\n }\r\n\r\n if (value === 1) {\r\n return 'ligado';\r\n }\r\n }\r\n\r\n function returnSizeGraph(isNumber: boolean) {\r\n const baseSizeGraph = 450;\r\n const customSizeGraph = state.selectedDacs ? (state.selectedDacs.length > 0 ? baseSizeGraph + (state.selectedDacs.length * 50) : baseSizeGraph) : baseSizeGraph;\r\n if (isNumber) {\r\n return customSizeGraph;\r\n }\r\n return `${customSizeGraph}px`;\r\n }\r\n\r\n const getParamsColor = (name) => {\r\n const info = state.chartData.vars?.find((data) => data.name === name);\r\n\r\n return info?.color || '';\r\n };\r\n\r\n const onMouseMove = (e) => {\r\n if (state.refAreaLeft != null) {\r\n state.refAreaRight = e.activeLabel;\r\n render();\r\n }\r\n };\r\n const onMouseDown = (e) => {\r\n state.refAreaLeft = e.activeLabel;\r\n render();\r\n };\r\n\r\n function fancoilGroupGraphDataKey(\r\n chartDataInfo: { chartDataVar: ChartDataVar, isChecked: boolean },\r\n i: number,\r\n count: number,\r\n ): number | null {\r\n const { chartDataVar, isChecked } = chartDataInfo;\r\n const stepBeforeLimit = count * stepperGraph;\r\n const dacsSteps = stepBeforeLimit * 2;\r\n const chartDataIValue = chartDataVar.y[i];\r\n const valueChart = chartDataIValue !== null ? (chartDataIValue * stepperGraph) : null;\r\n\r\n return (valueChart !== null && isChecked) ? state.customPointLimit + valueChart + dacsSteps : null;\r\n }\r\n\r\n function onClickDutDuoCheckboxTemperature(\r\n dutDuo: DriHistoryState['associatedDutsDuoId'][number],\r\n key: keyof DriHistoryState['associatedDutsDuoId'][number]['temperatures'],\r\n ): void {\r\n dutDuo.temperatures[key] = !dutDuo.temperatures[key];\r\n render();\r\n\r\n state.associatedDutsDuo = state.associatedDutsDuo.map((selectedDutDuo) => {\r\n if (selectedDutDuo.dutDuoId === dutDuo.dutDuoId) {\r\n selectedDutDuo.show[key] = dutDuo.temperatures[key];\r\n }\r\n return selectedDutDuo;\r\n });\r\n checkAgroupGraphData();\r\n }\r\n\r\n useEffect(() => {\r\n if (state.groupGraph) {\r\n checkAgroupGraphData();\r\n }\r\n }, []);\r\n\r\n return (\r\n
\r\n {(!state.dateStart || !state.dateEnd) ? : null}\r\n\r\n {(state.dateStart && state.dateEnd) && (\r\n \r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n

\r\n {t('temperaturas')}\r\n

\r\n {!state.loading && commonX && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]}\r\n tickFormatter={(hour) => (state.numDays && state.numDays > 1\r\n ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))}\r\n ticks={state.xTicks}\r\n domain={state.xDomain}\r\n />\r\n {state.numDays && state.numDays > 1 ? (\r\n commonX[i]}\r\n ticks={state.xTicks}\r\n domain={state.xDomain}\r\n />\r\n ) : null}\r\n \r\n )}\r\n ticks={state.setpointTicks}\r\n interval={0}\r\n domain={state.yDomain}\r\n >\r\n (\r\n \r\n {t('temperaturaC')}\r\n \r\n )}\r\n />\r\n \r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)}\r\n formatter={toolTipFormater}\r\n />\r\n {tempAmb && tempAmb.checked && tempAmb.y[i]} dot={false} stroke={tempAmb.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={tempAmb.strokeDasharray} />}\r\n {setpoint && setpoint.checked && setpoint.y[i]} dot={false} stroke={setpoint.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={setpoint.strokeDasharray} />}\r\n {dutTemp && dutTemp.checked && dutTemp.y[i]} dot={false} stroke={dutTemp.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={dutTemp.strokeDasharray} />}\r\n {tusemax && tusemax.checked && tusemax.y[i]} dot={false} stroke={tusemax.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={tusemax.strokeDasharray} />}\r\n {ecoSetpoint && ecoSetpoint.checked && ecoSetpoint.y[i]} dot={false} stroke={ecoSetpoint.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={ecoSetpoint.strokeDasharray} />}\r\n {tusemin && tusemin.checked && tusemin.y[i]} dot={false} stroke={tusemin.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={tusemin.strokeDasharray} />}\r\n {application?.startsWith('fancoil') && state.associatedDutsDuo.map(({ chartData, show }) => (\r\n chartData.Temperature && show?.Temperature && (\r\n ((chartData.Temperature?.y[i] != null) ? chartData.Temperature?.y[i] : null)}\r\n dot={false}\r\n stroke={getParamsColor(t('temperaturaSaidaAgua'))}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )\r\n ))}\r\n {application?.startsWith('fancoil') && state.associatedDutsDuo.map(({ chartData, show }) => (\r\n chartData.Temperature_1 && show?.Temperature_1 && (\r\n ((chartData.Temperature_1?.y[i] != null) ? chartData.Temperature_1?.y[i] : null)}\r\n dot={false}\r\n stroke={getParamsColor(t('temperaturaEntradaAgua'))}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )\r\n ))}\r\n\r\n { application?.startsWith('fancoil') && state.associatedDacs && state.associatedDacs.map(({ chartData, show }) => (\r\n chartData.vars?.Tsuc && show?.Tsuc && (\r\n ((chartData.vars?.Tsuc.y[i] != null) ? chartData.vars?.Tsuc.y[i] : null)}\r\n dot={false}\r\n stroke={getParamsColor(t('temperaturaSaidaAgua'))}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )\r\n )) }\r\n { application?.startsWith('fancoil') && state.associatedDacs && state.associatedDacs.map(({ chartData, show }) => (\r\n chartData.vars?.Tliq && show?.Tliq && (\r\n ((chartData.vars?.Tliq.y[i] != null) ? chartData.vars?.Tliq.y[i] : null)}\r\n dot={false}\r\n stroke={getParamsColor(t('temperaturaEntradaAgua'))}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )\r\n )) }\r\n { application?.startsWith('fancoil') && state.associatedDacs && state.associatedDacs.map(({ chartData, show }) => (\r\n chartData.vars?.Tamb && show?.Tamb && (\r\n ((chartData.vars?.Tamb.y[i] != null) ? chartData.vars?.Tamb.y[i] : null)}\r\n dot={false}\r\n stroke={getParamsColor(t('temperaturaArEntrada'))}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )\r\n )) }\r\n\r\n {!application?.startsWith('fancoil') && state.groupGraph && state.selectedDacs.map(({ dacId, chartData }, index) => (\r\n chartData.vars?.Lcmp && (\r\n ((chartData.vars?.Lcmp.L[i] != null) ? state.customPointLimit + (chartData.vars?.Lcmp.L[i] + (index * 2)) : null)}\r\n dot={false}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n key={`line-${dacId}`}\r\n />\r\n )\r\n ))}\r\n { application?.startsWith('fancoil') && state.groupGraph && valveOn && (\r\n fancoilGroupGraphDataKey({ chartDataVar: valveOn, isChecked: state.valveOnChecked }, i, 2)}\r\n dot={false}\r\n stroke={valveOn.color}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )}\r\n {application?.startsWith('fancoil') && state.groupGraph && fanStatus && (\r\n fancoilGroupGraphDataKey({ chartDataVar: fanStatus, isChecked: state.fanStatusChecked }, i, 1)}\r\n dot={false}\r\n stroke={fanStatus.color}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )}\r\n {application?.startsWith('fancoil') && state.groupGraph && thermOn && (\r\n fancoilGroupGraphDataKey({ chartDataVar: thermOn, isChecked: state.thermOnChecked }, i, 0)}\r\n dot={false}\r\n stroke={thermOn.color}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n
\r\n
\r\n
\r\n \r\n {tempAmb && (\r\n \r\n { tempAmb.checked = !tempAmb.checked; render(); }}\r\n />\r\n
\r\n
\r\n \r\n {t('temperaturaAmbiente')}\r\n \r\n \r\n
\r\n \r\n {t('termostatoAssociadoAoDRI')}\r\n \r\n
\r\n\r\n
\r\n )}\r\n {setpoint && (\r\n \r\n { setpoint.checked = !setpoint.checked; render(); }}\r\n />\r\n \r\n {application === 'carrier-ecosplit' && {t('setpointMaquina')}}\r\n {(application?.startsWith('vav') || application?.startsWith('fancoil')) && Setpoint}\r\n \r\n {application === 'carrier-ecosplit' && }\r\n {(application?.startsWith('vav') || application?.startsWith('fancoil')) && }\r\n \r\n )}\r\n {dutTemp && (\r\n \r\n { dutTemp.checked = !dutTemp.checked; render(); }}\r\n />\r\n \r\n {t('temperaturaVal', { value: state.driInfo?.ecoCfg?.DUT_ID })}\r\n \r\n \r\n \r\n )}\r\n {ecoSetpoint && (\r\n \r\n { ecoSetpoint.checked = !ecoSetpoint.checked; render(); }}\r\n />\r\n \r\n {t('setpointModoEco')}\r\n \r\n \r\n \r\n )}\r\n {tusemin && (\r\n \r\n {\r\n tusemin.checked = !tusemin.checked;\r\n if (tusemax) {\r\n tusemax.checked = !tusemax.checked;\r\n }\r\n render();\r\n }}\r\n />\r\n \r\n {t('limitesTemperatura')}\r\n \r\n \r\n \r\n )}\r\n {application?.startsWith('fancoil') && state.associatedDacsId && state.associatedDacsId.map((dac) => (\r\n \r\n {\r\n dac.temperatures.TambChecked = !dac.temperatures.TambChecked; render();\r\n if (!dac.temperatures.TambChecked && state.associatedDacs) { state.associatedDacs = state.associatedDacs.map((selectedDac) => { if (selectedDac.dacId === dac.dacId) { selectedDac.show.Tamb = false; } return selectedDac; }); }\r\n if (dac.temperatures.TambChecked && state.associatedDacs) { state.associatedDacs = state.associatedDacs.map((selectedDac) => { if (selectedDac.dacId === dac.dacId) { selectedDac.show.Tamb = true; } return selectedDac; }); }\r\n checkAgroupGraphData();\r\n }}\r\n />\r\n
\r\n
\r\n \r\n { `${t('temperaturaArEntrada')}` }\r\n \r\n \r\n
\r\n {dac.dacId}\r\n
\r\n
\r\n ))}\r\n {application?.startsWith('fancoil') && state.associatedDacsId && state.associatedDacsId.map((dac) => (\r\n \r\n {\r\n dac.temperatures.TsucChecked = !dac.temperatures.TsucChecked; render();\r\n if (!dac.temperatures.TsucChecked && state.associatedDacs) { state.associatedDacs = state.associatedDacs.map((selectedDac) => { if (selectedDac.dacId === dac.dacId) { selectedDac.show.Tsuc = false; } return selectedDac; }); }\r\n if (dac.temperatures.TsucChecked && state.associatedDacs) { state.associatedDacs = state.associatedDacs.map((selectedDac) => { if (selectedDac.dacId === dac.dacId) { selectedDac.show.Tsuc = true; } return selectedDac; }); }\r\n checkAgroupGraphData();\r\n }}\r\n />\r\n
\r\n
\r\n \r\n { `${t('temperaturaSaidaAgua')}` }\r\n \r\n \r\n
\r\n {dac.dacId}\r\n
\r\n
\r\n ))}\r\n {application?.startsWith('fancoil') && state.associatedDacsId && state.associatedDacsId.map((dac) => (\r\n \r\n {\r\n dac.temperatures.TliqChecked = !dac.temperatures.TliqChecked; render();\r\n if (!dac.temperatures.TliqChecked && state.associatedDacs) { state.associatedDacs = state.associatedDacs.map((selectedDac) => { if (selectedDac.dacId === dac.dacId) { selectedDac.show.Tliq = false; } return selectedDac; }); }\r\n if (dac.temperatures.TliqChecked && state.associatedDacs) { state.associatedDacs = state.associatedDacs.map((selectedDac) => { if (selectedDac.dacId === dac.dacId) { selectedDac.show.Tliq = true; } return selectedDac; }); }\r\n checkAgroupGraphData();\r\n }}\r\n />\r\n
\r\n
\r\n \r\n { `${t('temperaturaEntradaAgua')}` }\r\n \r\n \r\n
\r\n {dac.dacId}\r\n
\r\n
\r\n ))}\r\n\r\n {application?.startsWith('fancoil') && state.associatedDutsDuoId.map((dutDuo) => (\r\n \r\n onClickDutDuoCheckboxTemperature(dutDuo, 'Temperature')}\r\n />\r\n
\r\n
\r\n \r\n { `${t('temperaturaSaidaAgua')}` }\r\n \r\n \r\n
\r\n {dutDuo.dutDuoId}\r\n
\r\n
\r\n ))}\r\n\r\n {application?.startsWith('fancoil') && state.associatedDutsDuoId.map((dutDuo) => (\r\n \r\n onClickDutDuoCheckboxTemperature(dutDuo, 'Temperature_1')}\r\n />\r\n
\r\n
\r\n \r\n { `${t('temperaturaEntradaAgua')}` }\r\n \r\n \r\n
\r\n {dutDuo.dutDuoId}\r\n
\r\n
\r\n ))}\r\n\r\n {state.groupGraph && application?.startsWith('fancoil') && valveOn && (\r\n \r\n {\r\n state.valveOnChecked = !state.valveOnChecked;\r\n render();\r\n }}\r\n />\r\n \r\n {valveOn.name}\r\n \r\n \r\n \r\n )}\r\n {state.groupGraph && application?.startsWith('fancoil') && fanStatus && (\r\n \r\n {\r\n state.fanStatusChecked = !state.fanStatusChecked;\r\n render();\r\n }}\r\n />\r\n \r\n {fanStatus.name}\r\n \r\n \r\n \r\n )}\r\n {state.groupGraph && application?.startsWith('fancoil') && thermOn && (\r\n \r\n {\r\n state.thermOnChecked = !state.thermOnChecked;\r\n render();\r\n }}\r\n />\r\n \r\n {thermOn.name}\r\n \r\n \r\n \r\n )}\r\n
0 ? `${200 + (state.selectedDacs.length * 50)}px` : '0' }}>\r\n {state.groupGraph && state.associatedDacsId.map((dac, index) => (\r\n \r\n {\r\n dac.checked = !dac.checked; render();\r\n if (!dac.checked && state.selectedDacs) state.selectedDacs = state.associatedDacs.filter((selectedDac) => selectedDac.dacId !== dac.dacId);\r\n if (dac.checked && state.selectedDacs) state.selectedDacs = state.associatedDacs;\r\n checkAgroupGraphData();\r\n }}\r\n />\r\n \r\n {application?.startsWith('fancoil') ? t('monitoramentoDaValvula') : dac.dacId}\r\n \r\n \r\n \r\n ))}\r\n
\r\n
\r\n\r\n {application === 'carrier-ecosplit' && !state.groupGraph && !!state.associatedDacs?.length && (\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n {application === 'carrier-ecosplit' && (\r\n \r\n

\r\n {t('compressores')}\r\n

\r\n

{t('statusL1')}

\r\n
\r\n )}\r\n {!state.loading && state.associatedDacs.map(({ dacId, chartData }, index) => (\r\n \r\n
\r\n {application.startsWith('fancoil') ? (\r\n \r\n \r\n {t('monitoramentoDaValvula')}\r\n \r\n \r\n \r\n ) : (\r\n <>\r\n

\r\n {dacId}\r\n

\r\n
\r\n \r\n )}\r\n
\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]}\r\n tickFormatter={(hour) => (state.numDays && state.numDays > 1\r\n ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))}\r\n ticks={state.xTicks}\r\n domain={state.xDomain}\r\n />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormaterDac} />\r\n {chartData.vars?.Lcmp && (\r\n chartData.vars?.Lcmp.L[i]}\r\n dot={false}\r\n strokeWidth={1.5}\r\n animationDuration={300}\r\n strokeDasharray=\"\"\r\n />\r\n )}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n \r\n ))}\r\n \r\n \r\n )}\r\n\r\n {application === 'carrier-ecosplit' && (\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n

{t('modoOperacao')}

\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={state.modeTicks} interval={0} domain={state.modeLimits} />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {operationMode && operationMode.y[i]} dot={false} stroke={operationMode.color} strokeWidth={1.5} animationDuration={300} strokeDasharray={operationMode.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n
\r\n
\r\n )}\r\n {application?.startsWith('vav') && (\r\n <>\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n

{t('termostato')}

\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {thermOn && thermOn.y[i]} dot={false} stroke={thermOn.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={thermOn.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n

{t('atuadorVav')}

\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {valveOn && valveOn.y[i]} dot={false} stroke={valveOn.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={valveOn.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n
\r\n
\r\n {profile.manageAllClients && (\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n

{t('modoOperacao')}

\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={state.vavModeTicks} interval={0} domain={state.vavModeLimits} />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {mode && mode.y[i]} dot={false} stroke={mode.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={mode.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n
\r\n
\r\n )}\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n

\r\n {t('Bloqueio')}\r\n (Termostato)\r\n

\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {lock && lock.y[i]} dot={false} stroke={lock.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={lock.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n
\r\n
\r\n \r\n )}\r\n\r\n {application?.startsWith('fancoil') && (\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n \r\n {t('modoOperacao')}\r\n \r\n \r\n\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n }\r\n ticks={state.fancoilModeTicks}\r\n interval={0}\r\n domain={state.fancoilModeLimits}\r\n />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {operationMode && operationMode.y[i]} dot={false} stroke={operationMode.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={operationMode.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n {application?.startsWith('fancoil') && !state.groupGraph && (\r\n <>\r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n \r\n {t('valvulaDeAgua')}\r\n \r\n \r\n\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {valveOn && valveOn.y[i]} dot={false} stroke={valveOn.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={valveOn.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n \r\n {t('ventilador')}\r\n \r\n \r\n\r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]} tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))} ticks={state.xTicks} domain={state.xDomain} />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {fanStatus && fanStatus.y[i]} dot={false} stroke={fanStatus.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={fanStatus.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {state.loading && (\r\n \r\n \r\n \r\n )}\r\n \r\n {t('termostato')}\r\n \r\n \r\n {!state.loading && (\r\n \r\n i)}\r\n onMouseDown={onMouseDown}\r\n onMouseMove={onMouseMove}\r\n onMouseUp={zoom}\r\n >\r\n \r\n commonX[i]}\r\n tickFormatter={(hour) => (state.numDays && state.numDays > 1 ? tickXLabelFormatterDay(hour, state.dateStart) : tickXLabelFormatterHour(hour))}\r\n ticks={state.xTicks}\r\n domain={state.xDomain}\r\n />\r\n {state.numDays && state.numDays > 1 ? ( commonX[i]} ticks={state.xTicks} domain={state.xDomain} />) : null}\r\n } ticks={[0, 1]} interval={0} domain={[0, 1]} />\r\n tooltipXLabelFormatter(hour, state.dateStart)} formatter={toolTipFormater} />\r\n {thermOn && thermOn.y[i]} dot={false} stroke={thermOn.color} strokeWidth={2.5} animationDuration={300} strokeDasharray={thermOn.strokeDasharray} />}\r\n {state.refAreaLeft && state.refAreaRight ? (\r\n \r\n ) : null}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n )}\r\n
\r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nexport const ContainerCardWater = styled.div`\r\n width: 100%;\r\n height: 324px;\r\n margin-top: 35px;\r\n margin-bottom: 49px;\r\n .tooltip .tooltiptext::after {\r\n content: \" \";\r\n position: absolute;\r\n top: 100%; /* At the bottom of the tooltip */\r\n left: 50%;\r\n margin-left: -5px;\r\n border-width: 5px;\r\n border-style: solid;\r\n border-color: black transparent transparent transparent;\r\n }\r\n`;\r\n\r\nexport const TableContainer = styled.div`\r\n::-webkit-scrollbar-track {\r\n background-color: #F4F4F4;\r\n}\r\nscrollbar-width: thin;\r\n::-webkit-scrollbar-thumb {\r\n background: #dad7d7;\r\n}\r\ndisplay: flex;\r\nflex-direction: column;\r\nalign-items: center;\r\ngap: 10px;\r\nmargin-left: 10px;\r\n`;\r\n\r\nexport const NoAnalisysSelected = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n gap: 8px;\r\n justify-content: center;\r\n align-items: center;\r\n height: 250px;\r\n margin-left: 10px;\r\n width: 96%;\r\n border: 1px solid #0000000F;\r\n border-radius: 10px;\r\n\r\n background: #F9F9F9;\r\n\r\n color: #7D7D7D;\r\n\r\n span {\r\n margin: 0;\r\n\r\n font-family: Inter;\r\n font-size: 13px;\r\n font-weight: 700;\r\n text-align: center;\r\n }\r\n\r\n p {\r\n margin: 0;\r\n\r\n font-family: Inter;\r\n font-size: 10px;\r\n font-weight: 500;\r\n text-align: center;\r\n }\r\n`;\r\n\r\nexport const BackgroundCardItem = styled.div`\r\n display: grid;\r\n grid-template-columns: 150px 6px 150px auto;\r\n height: 5px;\r\n span {\r\n border-top: 1px solid lightgrey;\r\n border-right: 1px solid lightgrey;\r\n border-radius: 6px 6px 0px 0px;\r\n }\r\n`;\r\n\r\nexport const NameCardItem = styled.span`\r\n border-right: 1px solid lightgrey;\r\n text-align: center;\r\n font-size: 90%;\r\n border: 1px solid lightgrey;\r\n border-radius: 5px 5px 0px 0px;\r\n padding: 2px;\r\n margin-right: 3px;\r\n display: flex;\r\n justify-content: center;\r\n`;\r\n\r\nexport const BorderSpan = styled.span`\r\n border-bottom: 1px solid lightgrey;\r\n position: absolute;\r\n width: 100%;\r\n bottom: 0px;\r\n`;\r\n\r\nexport const ContainerCalendar = styled.div`\r\n font-size: 12px;\r\n display: flex;\r\n position: relative;\r\n`;\r\n\r\nexport const ContainerInfoCalendar = styled.div`\r\n font-size: 12px;\r\n display: flex;\r\n align-items: center;\r\n gap: 24px;\r\n span {\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 600;\r\n line-height: normal;\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const ContainerDatesCalendar = styled.div`\r\n position: absolute;\r\n display: grid;\r\n justify-items: center;\r\n grid-template-columns: 1fr 1fr 1fr;\r\n z-index: 12;\r\n bottom: -540%;\r\n right: -50px;\r\n width: 200px;\r\n height: 90px;\r\n border: 1px solid #E3E3E3;\r\n border-radius: 5px;\r\n background: #FFFFFF;\r\n padding: 16px;\r\n overflow: scroll;\r\n overflow-x: hidden;\r\n`;\r\n\r\nfunction isSelected(selected) {\r\n if (selected) {\r\n return 'rgba(54, 59, 196, 1)';\r\n }\r\n return '#FFFFFF';\r\n}\r\n\r\nexport const ContainerItemDateCalendar = styled.div<{haveData, selected}>(({ haveData, selected }) => `\r\n background-color: ${haveData ? isSelected(selected) : 'rgba(142, 142, 142, 0.2)'};\r\n border-radius: 5px;\r\n color: ${selected ? 'white' : 'black'}\r\n padding: 2px 5px 0px 5px;\r\n text-align: center;\r\n margin-bottom: 8px;\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 400;\r\n line-height: 14.52px;\r\n cursor: ${haveData ? 'pointer' : 'not-allowed'};\r\n`);\r\n","import moment from 'moment';\r\n\r\nexport const handleGetDatesParams = (\r\n date: string | Date,\r\n format: string,\r\n chartMode: string | 'yearMode' | 'monthMode',\r\n isComparing: boolean,\r\n cardYear?: string | number,\r\n): { startDate: moment.Moment; endDate: moment.Moment } => {\r\n let dateParams = {\r\n startDate: moment(date, format).startOf('month').utcOffset(0, true),\r\n endDate: moment(date, format).endOf('month').utcOffset(0, true),\r\n };\r\n\r\n if (chartMode === 'yearMode') {\r\n dateParams = {\r\n startDate: moment(date, format).startOf('year').utcOffset(0, true),\r\n endDate: moment(date, format).endOf('year').add(1, 'month').endOf('month')\r\n .utcOffset(0, true),\r\n };\r\n }\r\n\r\n if (chartMode === 'yearMode' && isComparing) {\r\n dateParams = {\r\n startDate: moment(date, format).startOf('year').utcOffset(0, true),\r\n endDate: moment(date, format).endOf('year').endOf('month').utcOffset(0, true),\r\n };\r\n }\r\n\r\n if (chartMode === 'yearMode' && moment(date, format).year() === moment().year() && !isComparing) {\r\n dateParams = {\r\n startDate: moment().subtract(1, 'years').startOf('month').utcOffset(0, true),\r\n endDate: moment().endOf('month').utcOffset(0, true),\r\n };\r\n }\r\n\r\n if (chartMode === 'yearMode' && Number(cardYear) === moment().year() && !isComparing) {\r\n dateParams = {\r\n startDate: moment(date, format).subtract(1, 'years').startOf('month').utcOffset(0, true),\r\n endDate: moment(date, format).endOf('month').utcOffset(0, true),\r\n };\r\n }\r\n\r\n return dateParams;\r\n};\r\n","import moment from 'moment';\r\nimport {\r\n ReactNode, createContext, useContext, useState,\r\n} from 'react';\r\n\r\ninterface EnergyCardContextData {\r\n cardDate: { isApiDate: boolean; verifyDate: boolean; month: string; year: string };\r\n isLoadingFilters: boolean;\r\n handleSetIsLoadingFilters: (value: boolean) => void;\r\n cardControlTab: string;\r\n handleChangeTab: (newTab: string) => void;\r\n tabIsLoading: {\r\n insights: boolean;\r\n history: boolean;\r\n trends: boolean;\r\n };\r\n handleSetTabIsLoading: (value: boolean, tab: string) => void;\r\n handleSetCardDate: (date) => void;\r\n}\r\n\r\nconst EnergyCardContext = createContext({} as EnergyCardContextData);\r\n\r\ninterface EnergyCardProviderProps {\r\n children: ReactNode;\r\n}\r\n\r\nexport const EnergyCardProvider: React.FC = ({\r\n children,\r\n}) => {\r\n const [isLoadingFilters, setIsLoadingFilters] = useState(true);\r\n const [cardControlTab, setCardControlTab] = useState('insights');\r\n\r\n const [cardDate, setCardDate] = useState<{\r\n isApiDate: boolean;\r\n verifyDate: boolean;\r\n month: string;\r\n year: string;\r\n }>({\r\n isApiDate: false,\r\n verifyDate: false,\r\n month: moment().format('MMMM'),\r\n year: moment().format('YYYY'),\r\n });\r\n\r\n const [tabIsLoading, setTabIsLoading] = useState<{\r\n insights: boolean;\r\n history: boolean;\r\n trends: boolean;\r\n }>({\r\n insights: true,\r\n history: false,\r\n trends: false,\r\n });\r\n\r\n const handleSetCardDate = (date) => {\r\n setCardDate((prevState) => ({ ...prevState, ...date }));\r\n };\r\n\r\n const handleSetIsLoadingFilters = (value: boolean) => setIsLoadingFilters(value);\r\n\r\n const handleChangeTab = (newTab: string) => setCardControlTab(newTab);\r\n\r\n const handleSetTabIsLoading = (value: boolean, tab: string) => {\r\n setTabIsLoading((prevState) => ({\r\n ...prevState,\r\n [tab]: value,\r\n }));\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n \r\n );\r\n};\r\n\r\nexport const useEnergyCard = () => useContext(EnergyCardContext);\r\n","import styled, { css } from 'styled-components';\r\n\r\nexport const SelectOptionDropdownWrapper = styled.div`\r\n position: relative;\r\n`;\r\n\r\nexport const Dropdown = styled.div`\r\n position: absolute;\r\n top: 115%;\r\n right: 0%;\r\n width: 190px;\r\n border: 1px solid #E3E3E3;\r\n border-radius: 5px;\r\n background: #FFFFFF;\r\n padding: 16px;\r\n z-index: 9999;\r\n display: flex;\r\n flex-direction: column;\r\n gap: 12px;\r\n`;\r\n\r\nexport const DropdownHeader = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n align-items: center;\r\n gap: 24px;\r\n`;\r\n\r\nexport const DropdownContent = styled.div`\r\n display: grid;\r\n grid-template-columns: 1fr 1fr 1fr;\r\n justify-items: center;\r\n`;\r\n\r\nexport const DropdownOption = styled.span<{ selected?: boolean; disabled?: boolean }>`\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n\r\n width: 44px;\r\n font-family: Inter;\r\n border-radius: 5px;\r\n margin-bottom: 8px;\r\n font-family: Inter;\r\n font-size: 12px;\r\n font-weight: 500;\r\n color: black;\r\n\r\n cursor: pointer;\r\n\r\n ${({ disabled = false }) => disabled && css`\r\n background-color: rgba(142, 142, 142, 0.2);\r\n\r\n cursor: not-allowed;\r\n `}\r\n\r\n ${({ selected = false }) => selected && css`\r\n color: #FFFFFF;\r\n background-color: #363BC4;\r\n\r\n cursor: pointer;\r\n `}\r\n`;\r\n\r\nexport const DropdownYearButtons = styled.div<{ disabled?: boolean }>`\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n\r\n border: 1px solid #E0E0E0;\r\n border-radius: 10px;\r\n width: 26px;\r\n height: 26px;\r\n\r\n path{\r\n fill: black;\r\n }\r\n\r\n cursor: pointer;\r\n\r\n ${({ disabled = false }) => disabled && css`\r\n cursor: not-allowed;\r\n\r\n path{\r\n fill: #B7B7B7\r\n }\r\n `}\r\n`;\r\n","export const capitalizeFirstLetter = (text: string) => text.charAt(0).toUpperCase() + text.slice(1);\r\n","import moment from 'moment';\r\nimport {\r\n Dropdown,\r\n DropdownContent,\r\n DropdownHeader,\r\n DropdownOption,\r\n DropdownYearButtons,\r\n SelectOptionDropdownWrapper,\r\n} from './styles';\r\nimport { ClickAwayListener } from '@material-ui/core';\r\nimport { ArrowLeftIcon, ArrowRightIcon } from '~/icons';\r\nimport { capitalizeFirstLetter } from '~/helpers/capitalizeFirstLetter';\r\n\r\nconst YEAR_MODE = 'yearMode';\r\nconst MONTH_MODE = 'monthMode';\r\n\r\ninterface SelectOptionDropdownProps {\r\n open: boolean;\r\n handleClickOutside: () => void;\r\n yearSelected: string;\r\n monthSelected: string;\r\n yearOptions: {\r\n label: string;\r\n value: string | number;\r\n hasData: boolean;\r\n }[];\r\n monthOptions: {\r\n label: string;\r\n value: string | number;\r\n hasData: boolean;\r\n }[];\r\n mode: string;\r\n isLoading: boolean;\r\n handleChangeDate: (value: string) => void;\r\n children: React.ReactNode;\r\n}\r\n\r\nexport const SelectOptionDropdown: React.FC = ({\r\n open,\r\n yearSelected,\r\n monthSelected,\r\n yearOptions,\r\n monthOptions,\r\n mode,\r\n handleClickOutside,\r\n handleChangeDate,\r\n isLoading,\r\n children,\r\n}) => {\r\n const handleGetYearIndex = (label) => yearOptions.findIndex((year) => moment.utc(year.value).isSame(moment(label, 'YYYY'), 'year'));\r\n\r\n const handleGetMonthIndex = (monthLabel, yearLabel) => monthOptions.findIndex((month) => moment\r\n .utc(month.value)\r\n .isSame(moment(`${monthLabel} ${yearLabel}`, 'MMMM YYYY'), 'month'));\r\n\r\n const handleMonthHasData = (monthLabel, yearLabel) => {\r\n const month = monthOptions.find((month) => moment\r\n .utc(month.value)\r\n .isSame(moment(`${monthLabel} ${yearLabel}`, 'MMMM YYYY'), 'month'));\r\n\r\n return month?.hasData;\r\n };\r\n\r\n const checkCanClick = (direction) => {\r\n const currentYearIndex = handleGetYearIndex(yearSelected);\r\n\r\n if (direction > 0) {\r\n return yearOptions.some(\r\n (year, index) => currentYearIndex < index && year.hasData,\r\n );\r\n }\r\n return yearOptions\r\n .slice()\r\n .reverse()\r\n .some(\r\n (year, index) => yearOptions.length - (currentYearIndex + 1) < index && year.hasData,\r\n );\r\n };\r\n\r\n const handleSelect = (direction) => {\r\n if (!checkCanClick(direction)) return;\r\n const currentYearIndex = handleGetYearIndex(yearSelected);\r\n\r\n let yearLabel = yearSelected;\r\n let monthLabel = monthSelected;\r\n\r\n let breakLoop = false;\r\n\r\n if (direction > 0) {\r\n yearOptions.forEach((year, index) => {\r\n if (currentYearIndex < index && year.hasData && !breakLoop) {\r\n yearLabel = year.label;\r\n breakLoop = true;\r\n }\r\n });\r\n\r\n if (!handleMonthHasData(monthLabel, yearLabel)) {\r\n const currentMonthIndex = handleGetMonthIndex(monthLabel, yearLabel);\r\n\r\n let breakLoopMonth = false;\r\n\r\n monthOptions.forEach((month, index) => {\r\n if (currentMonthIndex < index && month.hasData && !breakLoopMonth) {\r\n monthLabel = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n\r\n monthOptions\r\n .slice()\r\n .reverse()\r\n .forEach((month, index) => {\r\n if (\r\n monthOptions.length - (currentMonthIndex + 1) < index\r\n && month.hasData\r\n && !breakLoopMonth\r\n ) {\r\n monthLabel = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n }\r\n } else {\r\n yearOptions\r\n .slice()\r\n .reverse()\r\n .forEach((year, index) => {\r\n if (\r\n yearOptions.length - (currentYearIndex + 1) < index\r\n && year.hasData\r\n && !breakLoop\r\n ) {\r\n yearLabel = year.label;\r\n breakLoop = true;\r\n }\r\n });\r\n\r\n if (!handleMonthHasData(monthLabel, yearLabel)) {\r\n const currentMonthIndex = handleGetMonthIndex(monthLabel, yearLabel);\r\n\r\n let breakLoopMonth = false;\r\n\r\n monthOptions\r\n .slice()\r\n .reverse()\r\n .forEach((month, index) => {\r\n if (\r\n monthOptions.length - (currentMonthIndex + 1) < index\r\n && month.hasData\r\n && !breakLoopMonth\r\n ) {\r\n monthLabel = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n\r\n monthOptions.forEach((month, index) => {\r\n if (currentMonthIndex < index && month.hasData && !breakLoopMonth) {\r\n monthLabel = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n }\r\n }\r\n\r\n handleChangeDate(`${monthLabel} ${yearLabel}`);\r\n };\r\n\r\n return (\r\n \r\n {children}\r\n {open && (\r\n \r\n \r\n {mode === MONTH_MODE && (\r\n \r\n !isLoading && handleSelect(-1)}\r\n >\r\n \r\n \r\n \r\n {moment(yearSelected).format('YYYY')}\r\n \r\n !isLoading && handleSelect(1)}\r\n >\r\n \r\n \r\n \r\n )}\r\n \r\n {mode === YEAR_MODE\r\n && yearOptions.map((year) => (\r\n !isLoading\r\n && year.hasData\r\n && handleChangeDate(`${monthSelected} ${year.label}`)}\r\n >\r\n {year.label}\r\n \r\n ))}\r\n {mode === MONTH_MODE\r\n && monthOptions.map((month) => {\r\n if (yearSelected === moment(month.value).format('YYYY')) {\r\n return (\r\n !isLoading\r\n && month.hasData\r\n && handleChangeDate(`${month.label} ${yearSelected}`)}\r\n >\r\n {capitalizeFirstLetter(\r\n moment(month.label, 'MMMM').format('MMM'),\r\n )}\r\n \r\n );\r\n }\r\n })}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n};\r\n","export const getArrayDaysOfMonth = (mes: number, ano: number): number[] => {\r\n const data = new Date(ano, mes, 0);\r\n\r\n const numDias: number = data.getDate();\r\n\r\n const dias: number[] = Array.from({ length: numDias }, (_, i) => i + 1);\r\n\r\n return dias;\r\n};\r\n","import styled from 'styled-components';\r\n\r\nexport const CheckboxLine = styled.div`\r\n position: relative;\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n gap: 8px;\r\n border: 1px solid #C5C5C58F;\r\n border-radius: 8px;\r\n padding: 8px;\r\n\r\n height: 40px;\r\n width: 140px;\r\n\r\n span {\r\n color: #000;\r\n font-family: Inter;\r\n font-size: 10px;\r\n font-style: normal;\r\n font-weight: bold;\r\n line-height: normal;\r\n }\r\n`;\r\n\r\nexport const CheckboxContent = styled.div`\r\n position: relative;\r\n display: flex;\r\n justify-content: flex-start;\r\n align-items: center;\r\n gap: 8px;\r\n border-radius: 8px;\r\n padding: 8px;\r\n\r\n height: 40px;\r\n width: 200px;\r\n margin-left: 60px;\r\n\r\n span {\r\n color: #000;\r\n font-family: Inter;\r\n font-size: 10px;\r\n font-style: normal;\r\n font-weight: 500;\r\n line-height: normal;\r\n }\r\n`;\r\n\r\nexport const SelectedDate = styled.div`\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n gap: 4px;\r\n cursor: pointer;\r\n\r\n span {\r\n color: #000;\r\n font-family: Inter;\r\n font-size: 9px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: normal;\r\n }\r\n`;\r\n\r\nexport const BarchartWrapper = styled.div`\r\n width: 100%;\r\n height: 335px;\r\n`;\r\n","import { SelectOptionDropdown } from '~/components/SelectOptionDropdown';\r\nimport { Checkbox } from '~/components';\r\nimport {\r\n forwardRef, useContext, useEffect, useImperativeHandle,\r\n} from 'react';\r\nimport { getArrayMonthsOfYear } from '~/helpers/getArrayMonthsOfYear';\r\nimport { getArrayDaysOfMonth } from '~/helpers/getArrayDaysOfMonth';\r\nimport { t } from 'i18next';\r\n\r\nimport * as echarts from 'echarts/core';\r\nimport { TooltipComponent, GridComponent } from 'echarts/components';\r\nimport { BarChart } from 'echarts/charts';\r\nimport { CanvasRenderer } from 'echarts/renderers';\r\nimport { useCard } from '~/contexts/CardContext';\r\nimport { ApiResps } from '~/providers';\r\nimport moment from 'moment';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\nimport { capitalizeFirstLetter } from '~/helpers/capitalizeFirstLetter';\r\nimport { convertEnergy } from '~/helpers';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport MenuContext from '~/contexts/menuContext';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { ArrowDownIconV2 } from '~/icons';\r\nimport {\r\n BarchartWrapper, CheckboxContent, CheckboxLine, SelectedDate,\r\n} from './style';\r\n\r\necharts.use([TooltipComponent, GridComponent, BarChart, CanvasRenderer]);\r\n\r\nconst daysOfWeek = {\r\n 0: t('diasDaSemana.domingo'),\r\n 1: t('diasDaSemana.segunda'),\r\n 2: t('diasDaSemana.terca'),\r\n 3: t('diasDaSemana.quarta'),\r\n 4: t('diasDaSemana.quinta'),\r\n 5: t('diasDaSemana.sexta'),\r\n 6: t('diasDaSemana.sabado'),\r\n};\r\n\r\nexport const INCOERENT_ICON = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTMiIHZpZXdCb3g9IjAgMCAxMyAxMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTYuNTg1IDguODE5VjYuNTg1TTYuNTg1IDQuMzUxSDYuNTkwNTlNMTIuMTcgNi41ODVDMTIuMTcgOS42Njk1MSA5LjY2OTUxIDEyLjE3IDYuNTg1IDEyLjE3QzMuNTAwNDkgMTIuMTcgMSA5LjY2OTUxIDEgNi41ODVDMSAzLjUwMDQ5IDMuNTAwNDkgMSA2LjU4NSAxQzkuNjY5NTEgMSAxMi4xNyAzLjUwMDQ5IDEyLjE3IDYuNTg1WiIgc3Ryb2tlPSIjQTlBOUE5IiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=';\r\nexport const WARNING_ICON = 'data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTUiIGhlaWdodD0iMTMiIHZpZXdCb3g9IjAgMCAxNSAxMyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuMjY1IDQuOTcwMjVWNy40MTE5M003LjI2NSA5Ljg1MzYxSDcuMjcxMU02LjQxOTc2IDEuODUyMDZMMS4zOTkxMyAxMC41MjQxQzEuMTIwNjUgMTEuMDA1MSAwLjk4MTQxNCAxMS4yNDU2IDEuMDAxOTkgMTEuNDQzQzEuMDE5OTQgMTEuNjE1MSAxLjExMDE0IDExLjc3MTYgMS4yNTAxNSAxMS44NzM0QzEuNDEwNjYgMTEuOTkwMSAxLjY4ODU2IDExLjk5MDEgMi4yNDQzNyAxMS45OTAxSDEyLjI4NTZDMTIuODQxNCAxMS45OTAxIDEzLjExOTMgMTEuOTkwMSAxMy4yNzk4IDExLjg3MzRDMTMuNDE5OSAxMS43NzE2IDEzLjUxMDEgMTEuNjE1MSAxMy41MjggMTEuNDQzQzEzLjU0ODYgMTEuMjQ1NiAxMy40MDkzIDExLjAwNTEgMTMuMTMwOSAxMC41MjQxTDguMTEwMjQgMS44NTIwNkM3LjgzMjc2IDEuMzcyNzggNy42OTQwMiAxLjEzMzE0IDcuNTEzMDEgMS4wNTI2NUM3LjM1NTEyIDAuOTgyNDQ4IDcuMTc0ODggMC45ODI0NDggNy4wMTY5OSAxLjA1MjY1QzYuODM1OTggMS4xMzMxNCA2LjY5NzI0IDEuMzcyNzggNi40MTk3NiAxLjg1MjA2WiIgc3Ryb2tlPSIjRjNCMTA3IiBzdHJva2Utd2lkdGg9IjEuMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=';\r\n\r\ninterface ConsumptionChartProps {\r\n chartData: ApiResps['/energy/get-energy-analysis-hist'];\r\n cardYear: string;\r\n cardMonth: string;\r\n chartMode: string;\r\n filterDatesChart: FilterDatesChart;\r\n isLoading: boolean;\r\n handleClickBarChart: (name) => void;\r\n handleChangeComparingChart: (\r\n isComparing: boolean,\r\n yearSelected: string,\r\n monthSelected: string\r\n ) => void;\r\n consumptionChartStyle?: React.CSSProperties;\r\n chartWrapperStyle?: React.CSSProperties;\r\n canCompare?: boolean,\r\n ref?: React.Ref<{ handleUpdateChartDates: (date, format) => void }>;\r\n}\r\n\r\ninterface FilterDatesChart {\r\n yearOptions: {\r\n label: string;\r\n value: string | number;\r\n hasData: boolean;\r\n }[];\r\n monthOptions: {\r\n label: string;\r\n value: string | number;\r\n hasData: boolean;\r\n }[];\r\n}\r\n\r\nexport const ConsumptionChart: React.FC = forwardRef(({\r\n chartData,\r\n cardYear,\r\n cardMonth,\r\n chartMode,\r\n isLoading,\r\n filterDatesChart,\r\n handleClickBarChart,\r\n handleChangeComparingChart,\r\n chartWrapperStyle,\r\n consumptionChartStyle,\r\n canCompare = true,\r\n}, ref) => {\r\n const isDesktop = window.matchMedia('(min-width: 426px)');\r\n const isMobile = !isDesktop.matches;\r\n const profile = getUserProfile();\r\n const isAdmin = profile.permissions?.isAdminSistema;\r\n\r\n const { menuToogle } = useContext(MenuContext);\r\n const { cards } = useCard();\r\n const energyCard = cards.find((card) => card.title === 'Energia');\r\n\r\n const [state, render] = useStateVar({\r\n isComparingChart: false,\r\n isOpenComparingDropdown: false,\r\n monthSelected: cardMonth,\r\n yearSelected: moment().format('YYYY'),\r\n viewTratedData: false,\r\n });\r\n\r\n const handleGetYearIndex = (label) => filterDatesChart.yearOptions.findIndex((year) => moment.utc(year.value).isSame(moment(label, 'YYYY'), 'year'));\r\n\r\n const handleGetMonthIndex = (monthLabel, yearLabel) => filterDatesChart.monthOptions.findIndex((month) => moment\r\n .utc(month.value)\r\n .isSame(moment(`${monthLabel} ${yearLabel}`, 'MMMM YYYY'), 'month'));\r\n\r\n const handleMonthHasData = (monthLabel, yearLabel) => {\r\n const month = filterDatesChart.monthOptions.find((month) => moment\r\n .utc(month.value)\r\n .isSame(moment(`${monthLabel} ${yearLabel}`, 'MMMM YYYY'), 'month'));\r\n\r\n return month?.hasData;\r\n };\r\n\r\n const calculateDelta = (firstNumber, secondNumber) => {\r\n if (Number(secondNumber) === 0) {\r\n return Number(firstNumber);\r\n }\r\n const difference = firstNumber - secondNumber;\r\n\r\n return (difference / secondNumber) * 100;\r\n };\r\n\r\n const handleGetDataChart = (data, date, format) => data.find((item) => moment.utc(item.time).format(format) === moment(date, format).format(format));\r\n\r\n const checkProblemDataIsInvalid = (chartData, date, format) => {\r\n const chartValue = handleGetDataChart(chartData, date, format);\r\n const hasProblemData = chartValue?.dataIsInvalid;\r\n return chartValue && hasProblemData;\r\n };\r\n\r\n const checkProblemDataIsProcessed = (chartData, date, format) => {\r\n const chartValue = handleGetDataChart(chartData, date, format);\r\n const hasProblemData = chartValue?.dataIsProcessed;\r\n return chartValue && hasProblemData;\r\n };\r\n\r\n const createDeltaElement = (deltaValue, color) => {\r\n const signal = deltaValue < 0 ? '-' : '+';\r\n const rotation = signal === '+' ? '180deg' : '0';\r\n const formattedValue = formatNumberWithFractionDigits(Math.abs(deltaValue));\r\n\r\n return `\r\n
\r\n \r\n \r\n \r\n ${signal}${formattedValue}%\r\n
\r\n `;\r\n };\r\n\r\n const createIsProblemTooltipHTML = (tooltipTitle) => `\r\n
\r\n ${tooltipTitle}\r\n
\r\n \r\n \r\n \r\n
\r\n ${t('naoFoiPossivelColetar')}\r\n ${t('paraMaisDetalhesHTML')}\r\n
\r\n
\r\n
\r\n `;\r\n\r\n const createIsUnMonitoredTooltipHTML = (tooltipTitle) => `\r\n
\r\n ${tooltipTitle}\r\n
\r\n \r\n \r\n \r\n
\r\n ${t('semMonitoramento')}\r\n ${t('paraMaisDetalhesHTML')}\r\n
\r\n
\r\n
\r\n `;\r\n\r\n const createTratedDataElement = (Icon, title) => `\r\n
\r\n ${Icon}\r\n ${title}\r\n
\r\n `;\r\n\r\n const createTooltipHTML = (\r\n tooltipTitle,\r\n consumptionValue,\r\n consumptionMeasurement,\r\n totalChargedData,\r\n totalUnits,\r\n color,\r\n deltaValue,\r\n flags,\r\n ) => {\r\n let deltaElement = '';\r\n\r\n if (Number(deltaValue)) {\r\n const deltaColor = deltaValue < 0 ? '#5AB365' : '#E00030';\r\n deltaElement = createDeltaElement(deltaValue, deltaColor);\r\n }\r\n\r\n const infoIcon = `\r\n \r\n \r\n \r\n `;\r\n\r\n const warnIcon = `\r\n \r\n \r\n \r\n `;\r\n\r\n let tratedData = '';\r\n\r\n if (state.viewTratedData) {\r\n if (flags.dataIsProcessed) {\r\n tratedData = isAdmin ? createTratedDataElement(infoIcon, t('dadoTratado')) : '';\r\n }\r\n\r\n if (flags.dataIsInvalid) {\r\n tratedData = isAdmin ? createTratedDataElement(warnIcon, t('dadoIncoerente')) : createTratedDataElement(infoIcon, t('dadoTratado'));\r\n }\r\n }\r\n\r\n return `\r\n
\r\n ${tooltipTitle}\r\n
\r\n
\r\n
\r\n Consumo:\r\n
\r\n ${consumptionValue} ${consumptionMeasurement} | R$${totalChargedData}\r\n ${deltaElement}\r\n
\r\n
\r\n
\r\n ${t('ucsContabilizadas')}: ${totalUnits}\r\n ${tratedData}\r\n
\r\n `;\r\n };\r\n\r\n const createTooltipElement = (value, title, color, delta?) => {\r\n const consumption = value?.consumption ?? 0;\r\n const totalCharged = value?.totalCharged ?? 0;\r\n const totalUnits = value?.totalUnits ?? 0;\r\n\r\n const [consumptionValue, consumptionMeasurement] = convertEnergy(consumption);\r\n\r\n const tooltipElement = createTooltipHTML(\r\n title,\r\n formatNumberWithFractionDigits(consumptionValue),\r\n `${consumptionMeasurement}h`,\r\n formatNumberWithFractionDigits(totalCharged),\r\n totalUnits,\r\n color,\r\n delta,\r\n {\r\n dataIsInvalid: value?.dataIsInvalid,\r\n dataIsProcessed: value?.dataIsProcessed,\r\n },\r\n );\r\n\r\n if (!value || value?.consumption === null) {\r\n return createIsUnMonitoredTooltipHTML(title);\r\n }\r\n\r\n if (!isAdmin && value?.dataIsInvalid) {\r\n return createIsProblemTooltipHTML(title);\r\n }\r\n\r\n return tooltipElement;\r\n };\r\n\r\n const tooltipFactory = {\r\n isComparing: {\r\n yearMode: (values) => {\r\n const tooltipDate = moment(values[0].name, 'MMM YYYY');\r\n const monthName = tooltipDate.format('MMMM');\r\n const year = tooltipDate.format('YYYY');\r\n let compareYear = '';\r\n let delta = 0;\r\n\r\n if (year === cardYear) {\r\n compareYear = state.yearSelected;\r\n } else if (Number(cardYear) === moment().year()) {\r\n compareYear = `${Number(state.yearSelected) - 1}`;\r\n }\r\n\r\n const chartValueCompare = handleGetDataChart(\r\n chartData.compare,\r\n `${monthName} ${compareYear}`,\r\n 'MMMM YYYY',\r\n );\r\n\r\n const compareElement = createTooltipElement(chartValueCompare, `${capitalizeFirstLetter(monthName)} ${compareYear}`, '#ACACAC');\r\n\r\n const chartValueCurrent = handleGetDataChart(\r\n chartData.current,\r\n `${monthName} ${year}`,\r\n 'MMMM YYYY',\r\n );\r\n\r\n if (chartValueCurrent?.consumption !== null && chartValueCompare?.consumption !== null) {\r\n delta = Number(calculateDelta(chartValueCurrent?.consumption || 0, chartValueCompare?.consumption || 0).toFixed());\r\n }\r\n\r\n const currentElement = createTooltipElement(chartValueCurrent, `${capitalizeFirstLetter(monthName)} ${year}`, '#92CC9A', delta);\r\n\r\n const divElement = '
';\r\n\r\n return `\r\n
\r\n ${compareElement}\r\n ${divElement}\r\n ${currentElement}\r\n
\r\n `;\r\n },\r\n monthMode: (values) => {\r\n const day = values[0].name;\r\n const monthName = moment(cardMonth, 'MMMM').format('MM');\r\n let delta = 0;\r\n\r\n const compareMonthName = moment(state.monthSelected, 'MMMM').format('MM');\r\n\r\n const chartValueCompare = handleGetDataChart(\r\n chartData.compare,\r\n `${day}/${compareMonthName}/${state.yearSelected}`,\r\n 'DD/MM/YYYY',\r\n );\r\n\r\n const compareElement = createTooltipElement(chartValueCompare, `${day}/${compareMonthName}/${state.yearSelected}`, '#ACACAC');\r\n\r\n const chartValueCurrent = handleGetDataChart(\r\n chartData.current,\r\n `${day}/${monthName}/${cardYear}`,\r\n 'DD/MM/YYYY',\r\n );\r\n\r\n if (chartValueCurrent?.consumption !== null && chartValueCompare?.consumption !== null) {\r\n delta = Number(calculateDelta(chartValueCurrent?.consumption || 0, chartValueCompare?.consumption || 0).toFixed());\r\n }\r\n\r\n const currentElement = createTooltipElement(chartValueCurrent, `${day}/${monthName}/${cardYear}`, '#92CC9A', delta);\r\n\r\n const divElement = '
';\r\n\r\n return `\r\n
\r\n ${compareElement}\r\n ${divElement}\r\n ${currentElement}\r\n
\r\n `;\r\n },\r\n },\r\n isNotComparing: {\r\n yearMode: (values) => {\r\n const tooltipDate = moment(values[0].name, 'MMM YYYY');\r\n const monthName = tooltipDate.format('MMMM');\r\n const year = tooltipDate.format('YYYY');\r\n\r\n const chartValueCurrent = handleGetDataChart(\r\n chartData.current,\r\n `${monthName} ${year}`,\r\n 'MMMM YYYY',\r\n );\r\n\r\n const element = createTooltipElement(chartValueCurrent, `${capitalizeFirstLetter(monthName)} ${year}`, '#92CC9A');\r\n\r\n return `\r\n
\r\n ${element}\r\n
\r\n `;\r\n },\r\n monthMode: (values) => {\r\n const day = values[0].name;\r\n const monthName = moment(cardMonth, 'MMMM').format('MM');\r\n\r\n const chartValueCurrent = handleGetDataChart(\r\n chartData.current,\r\n `${day}/${monthName}/${cardYear}`,\r\n 'DD/MM/YYYY',\r\n );\r\n\r\n const element = createTooltipElement(chartValueCurrent, `${day}/${monthName}/${cardYear}`, '#92CC9A');\r\n\r\n return `\r\n
\r\n ${element}\r\n
`;\r\n },\r\n },\r\n };\r\n\r\n const handleGetXAxisYearMode = () => {\r\n const monthsOfYear = getArrayMonthsOfYear();\r\n\r\n const monthsOfYearFormatted = monthsOfYear.map(\r\n (prevYear) => `${prevYear} ${cardYear}`,\r\n );\r\n\r\n if (Number(cardYear) === moment().year() && !state.isComparingChart) {\r\n const currentMonth = moment().month();\r\n\r\n const prevYearMonths = monthsOfYear.slice(-(12 - currentMonth));\r\n const currentYearMonths = monthsOfYear.slice(0, currentMonth + 1);\r\n\r\n const prevYearMonthsFormatted = prevYearMonths.map(\r\n (prevYear) => `${prevYear} ${isMobile ? (Number(cardYear) - 1).toString().slice(-2) : Number(cardYear) - 1}`,\r\n );\r\n const currentYearMonthsFormatted = currentYearMonths.map(\r\n (prevYear) => `${prevYear} ${isMobile ? (Number(cardYear)).toString().slice(-2) : Number(cardYear)}`,\r\n );\r\n\r\n return [...prevYearMonthsFormatted, ...currentYearMonthsFormatted];\r\n }\r\n\r\n if (state.isComparingChart) {\r\n return monthsOfYearFormatted;\r\n }\r\n\r\n return [\r\n ...monthsOfYearFormatted,\r\n `${monthsOfYear[0]} ${Number(cardYear) + 1}`,\r\n ];\r\n };\r\n\r\n const xAxisFactory = {\r\n yearMode: handleGetXAxisYearMode(),\r\n monthMode: getArrayDaysOfMonth(\r\n Number(moment().month(cardMonth).format('M')),\r\n Number(cardYear),\r\n ),\r\n };\r\n\r\n const xAxisFormatterFactory = {\r\n yearMode: (value) => {\r\n const [month, year] = value.split(' ');\r\n const date = `${month} ${year}`;\r\n const dateChart = `${month} ${state.yearSelected}`;\r\n const hasProblemDataIsProcessed = checkProblemDataIsProcessed(chartData.current, date, 'MMM YYYY') || checkProblemDataIsProcessed(chartData.compare, dateChart, 'MMMM YYYY');\r\n\r\n const hasProblemDataIsInvalid = checkProblemDataIsInvalid(chartData.current, date, 'MMM YYYY') || checkProblemDataIsInvalid(chartData.compare, dateChart, 'MMMM YYYY');\r\n\r\n let problemDataIndicator = '';\r\n\r\n if (state.viewTratedData) {\r\n if (hasProblemDataIsProcessed) {\r\n problemDataIndicator = isAdmin ? '\\n{incoerentIcon| }' : '';\r\n }\r\n\r\n if (hasProblemDataIsInvalid) {\r\n problemDataIndicator = isAdmin ? '\\n{warnIcon| }' : '\\n{incoerentIcon| }';\r\n }\r\n }\r\n\r\n return state.isComparingChart ? `${month}${problemDataIndicator}` : `${month}\\n{bold|${year}}${problemDataIndicator}`;\r\n },\r\n monthMode: (value) => {\r\n const date = `${cardMonth} ${cardYear} ${value}`;\r\n const dateChart = `${state.monthSelected} ${state.yearSelected} ${value}`;\r\n const monthDay = moment(date, 'MMMM YYYY DD').format('DD');\r\n const weekDayIndex = moment(date, 'MMMM YYYY DD').day();\r\n\r\n let result = `${monthDay}\\n`;\r\n\r\n let problemDataIndicator = '';\r\n\r\n if (weekDayIndex === 0 && !state.isComparingChart) {\r\n result = `{bold|${result}${daysOfWeek[weekDayIndex][0]}}`;\r\n } else if (!state.isComparingChart) {\r\n result += daysOfWeek[weekDayIndex][0];\r\n }\r\n\r\n const hasProblemDataIsProcessed = checkProblemDataIsProcessed(chartData.current, date, 'MMMM YYYY DD') || checkProblemDataIsProcessed(chartData.compare, dateChart, 'MMMM YYYY DD');\r\n\r\n const hasProblemDataIsInvalid = checkProblemDataIsInvalid(chartData.current, date, 'MMMM YYYY DD') || checkProblemDataIsInvalid(chartData.compare, dateChart, 'MMMM YYYY DD');\r\n\r\n if (state.viewTratedData) {\r\n if (hasProblemDataIsProcessed) {\r\n problemDataIndicator = isAdmin ? '\\n{incoerentIcon| }' : '';\r\n }\r\n\r\n if (hasProblemDataIsInvalid) {\r\n problemDataIndicator = isAdmin ? '\\n{warnIcon| }' : '\\n{incoerentIcon| }';\r\n }\r\n }\r\n\r\n return result + problemDataIndicator;\r\n },\r\n };\r\n\r\n const yAxisFormatter = (value) => {\r\n const [valueDemandConverted, valueDemandUnitMeasurement] = convertEnergy(value);\r\n\r\n return `${formatNumberWithFractionDigits(\r\n valueDemandConverted,\r\n )} ${valueDemandUnitMeasurement}h`;\r\n };\r\n\r\n const barWidthFactory = {\r\n isComparing: {\r\n yearMode: {\r\n isExpanded: '15px',\r\n isNotExpanded: '7px',\r\n },\r\n monthMode: {\r\n isExpanded: '9',\r\n isNotExpanded: '4px',\r\n },\r\n },\r\n isNotComparing: {\r\n yearMode: {\r\n isExpanded: '30px',\r\n isNotExpanded: '18px',\r\n },\r\n monthMode: {\r\n isExpanded: '15px',\r\n isNotExpanded: '7px',\r\n },\r\n },\r\n };\r\n\r\n const formatSeriesChart = (data, isAdmin) => {\r\n if (isAdmin) {\r\n if (data?.dataIsInvalid) {\r\n return {\r\n value: data.consumption,\r\n itemStyle: {\r\n ...(data.consumption < 0 && { borderRadius: [0, 0, 5, 5] }),\r\n },\r\n };\r\n }\r\n\r\n return data?.consumption;\r\n }\r\n\r\n if (data?.dataIsInvalid) {\r\n return 0;\r\n }\r\n\r\n return data?.consumption;\r\n };\r\n\r\n const seriesFactory = (chartData) => {\r\n const currentFormattedData = chartData.current.map((data) => formatSeriesChart(data, isAdmin));\r\n const compareFormattedData = chartData.compare.map((data) => formatSeriesChart(data, isAdmin));\r\n\r\n return {\r\n isComparing: [\r\n {\r\n name: 'Consumo Compare',\r\n type: 'bar',\r\n barWidth:\r\n barWidthFactory.isComparing[chartMode][\r\n energyCard?.isExpanded ? 'isExpanded' : 'isNotExpanded'\r\n ],\r\n color: '#ACACAC',\r\n data: compareFormattedData,\r\n itemStyle: {\r\n borderRadius: [5, 5, 0, 0],\r\n padding: [0, 20, 0, 0],\r\n },\r\n },\r\n {\r\n name: 'Consumo',\r\n type: 'bar',\r\n barWidth:\r\n barWidthFactory.isComparing[chartMode][\r\n energyCard?.isExpanded ? 'isExpanded' : 'isNotExpanded'\r\n ],\r\n color: '#92CC9A',\r\n data: currentFormattedData,\r\n itemStyle: {\r\n borderRadius: [5, 5, 0, 0],\r\n padding: [0, 20, 0, 0],\r\n },\r\n },\r\n ],\r\n isNotComparing: [\r\n {\r\n name: 'Consumo',\r\n type: 'bar',\r\n barWidth: isMobile ? '12px' : barWidthFactory.isNotComparing[chartMode][\r\n energyCard?.isExpanded ? 'isExpanded' : 'isNotExpanded'\r\n ],\r\n color: '#92CC9A',\r\n data: currentFormattedData,\r\n itemStyle: {\r\n borderRadius: [5, 5, 0, 0],\r\n padding: [0, 20, 0, 0],\r\n },\r\n },\r\n ],\r\n };\r\n };\r\n\r\n const handleRenderBarchart = (chartData) => {\r\n const barchartDom = document.getElementById('barchart-demanda');\r\n\r\n if (!barchartDom) return;\r\n\r\n echarts.dispose(barchartDom);\r\n const barChart = echarts.init(barchartDom);\r\n\r\n window.addEventListener('resize', () => {\r\n barChart.resize();\r\n });\r\n\r\n barChart.on('click', 'series', (options) => {\r\n const barClicked = moment(options.name, 'MMM YYYY');\r\n\r\n state.monthSelected = barClicked.format('MMMM');\r\n handleClickBarChart(options);\r\n });\r\n\r\n const barchartOptions = {\r\n tooltip: {\r\n trigger: 'axis',\r\n formatter:\r\n tooltipFactory[state.isComparingChart ? 'isComparing' : 'isNotComparing'][\r\n chartMode\r\n ],\r\n axisPointer: {\r\n type: 'none',\r\n },\r\n shadowStyle: {\r\n shadowBlur: 2,\r\n shadowOffsetY: 0,\r\n shadowOffsetX: 1,\r\n },\r\n lineStyle: {\r\n width: '40px',\r\n },\r\n },\r\n grid: {\r\n left: '3%',\r\n right: '5%',\r\n bottom: '2%',\r\n top: '14px',\r\n width: '92%',\r\n containLabel: true,\r\n },\r\n xAxis: [\r\n {\r\n type: 'category',\r\n data: xAxisFactory[chartMode],\r\n boundaryGap: false,\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n axisLabel: {\r\n show: true,\r\n align: 'center',\r\n margin: 8,\r\n showMaxLabel: true,\r\n interval: 0,\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n fontSize: '10',\r\n lineHeight: 12,\r\n rich: {\r\n bold: {\r\n fontWeight: 'bold',\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n fontSize: '10',\r\n },\r\n warnIcon: {\r\n backgroundColor: {\r\n image: WARNING_ICON,\r\n },\r\n },\r\n incoerentIcon: {\r\n backgroundColor: {\r\n image: INCOERENT_ICON,\r\n },\r\n },\r\n },\r\n formatter: xAxisFormatterFactory[chartMode],\r\n },\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n },\r\n ],\r\n yAxis: [\r\n {\r\n type: 'value',\r\n position: 'left',\r\n splitNumber: 5,\r\n axisLabel: {\r\n align: 'right',\r\n fontSize: 9,\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n formatter: yAxisFormatter,\r\n },\r\n offset: 18,\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n },\r\n ],\r\n series:\r\n seriesFactory(chartData)[\r\n state.isComparingChart ? 'isComparing' : 'isNotComparing'\r\n ],\r\n };\r\n\r\n barchartOptions && barChart.setOption(barchartOptions);\r\n\r\n window.removeEventListener('resize', () => {\r\n barChart.resize();\r\n });\r\n };\r\n\r\n const handleUpdateChartDates = (date, format) => {\r\n const newDate = moment(date, format);\r\n\r\n state.yearSelected = newDate.format('YYYY');\r\n state.monthSelected = newDate.format('MMMM');\r\n render();\r\n };\r\n\r\n useImperativeHandle(ref, () => ({\r\n handleUpdateChartDates,\r\n }), []);\r\n\r\n useEffect(() => {\r\n chartData.current && chartData.compare && handleRenderBarchart(chartData);\r\n }, [chartData, chartMode, state.isComparingChart, energyCard?.isExpanded, menuToogle, state.viewTratedData]);\r\n\r\n function onClickComparePeriod() {\r\n state.isComparingChart = !state.isComparingChart;\r\n\r\n state.yearSelected = cardYear;\r\n state.monthSelected = cardMonth;\r\n\r\n const currentYearIndex = handleGetYearIndex(state.yearSelected);\r\n let breakLoop = false;\r\n\r\n filterDatesChart.yearOptions\r\n .slice()\r\n .reverse()\r\n .forEach((year, index) => {\r\n if (filterDatesChart.yearOptions.length - (currentYearIndex + 1) < index && year.hasData && !breakLoop) {\r\n state.yearSelected = year.label;\r\n breakLoop = true;\r\n }\r\n });\r\n\r\n if (!handleMonthHasData(state.monthSelected, state.yearSelected)) {\r\n const currentMonthIndex = handleGetMonthIndex(\r\n state.monthSelected,\r\n state.yearSelected,\r\n );\r\n\r\n let breakLoopMonth = false;\r\n\r\n filterDatesChart.monthOptions\r\n .slice()\r\n .reverse()\r\n .forEach((month, index) => {\r\n if (filterDatesChart.monthOptions.length - (currentMonthIndex + 1) < index && month.hasData && !breakLoopMonth) {\r\n state.monthSelected = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n\r\n filterDatesChart.monthOptions.forEach((month, index) => {\r\n if (currentMonthIndex < index && month.hasData && !breakLoopMonth) {\r\n state.monthSelected = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n }\r\n\r\n handleChangeComparingChart(\r\n state.isComparingChart,\r\n state.yearSelected,\r\n state.monthSelected,\r\n );\r\n render();\r\n }\r\n\r\n function onClickViewTratedData() {\r\n state.viewTratedData = !state.viewTratedData;\r\n render();\r\n }\r\n\r\n return (\r\n
\r\n
\r\n { isAdmin && (\r\n \r\n { onClickViewTratedData(); }}\r\n size={15}\r\n color=\"primary\"\r\n />\r\n
\r\n {t('visualizarDadosTratados')}\r\n\r\n
\r\n
\r\n )}\r\n {canCompare && (\r\n {\r\n state.isOpenComparingDropdown = false;\r\n render();\r\n }}\r\n yearOptions={filterDatesChart.yearOptions}\r\n monthOptions={filterDatesChart.monthOptions}\r\n yearSelected={state.yearSelected}\r\n monthSelected={state.monthSelected}\r\n isLoading={isLoading}\r\n handleChangeDate={(value) => {\r\n const newDate = moment(value, 'MMMM YYYY');\r\n\r\n state.yearSelected = newDate.format('YYYY');\r\n state.monthSelected = newDate.format('MMMM');\r\n render();\r\n handleChangeComparingChart(state.isComparingChart, newDate.format('YYYY'), newDate.format('MMMM'));\r\n }}\r\n >\r\n \r\n { onClickComparePeriod(); }}\r\n size={15}\r\n color=\"primary\"\r\n />\r\n
\r\n {t('compararPeriodo')}\r\n {state.isComparingChart && (\r\n {\r\n if (!isLoading) {\r\n state.isOpenComparingDropdown = !state.isOpenComparingDropdown;\r\n render();\r\n }\r\n }}\r\n >\r\n \r\n {chartMode === 'monthMode'\r\n && capitalizeFirstLetter(state.monthSelected)}\r\n {' '}\r\n {state.yearSelected}\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n \r\n )}\r\n
\r\n \r\n
\r\n \r\n
\r\n );\r\n});\r\n","import { t } from 'i18next';\r\n\r\nexport const getArrayMonthsOfYear = (): string[] => {\r\n const months: string[] = [t('mesesDoAno.jan'), t('mesesDoAno.fev'), t('mesesDoAno.mar'), t('mesesDoAno.abr'), t('mesesDoAno.mai'), t('mesesDoAno.jun'), t('mesesDoAno.jul'), t('mesesDoAno.ago'), t('mesesDoAno.set'), t('mesesDoAno.out'), t('mesesDoAno.nov'), t('mesesDoAno.dez')];\r\n\r\n return months;\r\n};\r\n","import * as echarts from 'echarts/core';\r\nimport { TooltipComponent, GridComponent } from 'echarts/components';\r\nimport { BarChart } from 'echarts/charts';\r\nimport { CanvasRenderer } from 'echarts/renderers';\r\nimport { ApiResps, apiCall } from '~/providers';\r\nimport { handleGetDatesParams } from '~/helpers/getRangeParamsChart';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport moment from 'moment';\r\nimport { toast } from 'react-toastify';\r\nimport { t } from 'i18next';\r\nimport {\r\n forwardRef, useEffect, useImperativeHandle, useRef,\r\n} from 'react';\r\nimport { useEnergyCard } from '../EnergyCardContext';\r\nimport { ConsumptionChart } from '../ConsumptionChart';\r\n\r\necharts.use([TooltipComponent, GridComponent, BarChart, CanvasRenderer]);\r\n\r\nexport const INCOERENT_ICON = \"data:image/svg+xml;charset=utf8,%3Csvg%20width%3D'13'%20height%3D'13'%20viewBox%3D'0%200%2013%2013'%20fill%3D'none'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M6.585%208.819V6.585M6.585%204.351H6.59059M12.17%206.585C12.17%209.66951%209.66951%2012.17%206.585%2012.17C3.50049%2012.17%201%209.66951%201%206.585C1%203.50049%203.50049%201%206.585%201C9.66951%201%2012.17%203.50049%2012.17%206.585Z'%20stroke%3D'%23A9A9A9'%20stroke-width%3D'1.5'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%2F%3E%3C%2Fsvg%3E\";\r\nexport const WARNING_ICON = \"data:image/svg+xml;charset=utf8,%3Csvg%20width%3D'15'%20height%3D'13'%20viewBox%3D'0%200%2015%2013'%20fill%3D'none'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%3E%3Cpath%20d%3D'M7.265%204.97025V7.41193M7.265%209.85361H7.2711M6.41976%201.85206L1.39913%2010.5241C1.12065%2011.0051%200.981414%2011.2456%201.00199%2011.443C1.01994%2011.6151%201.11014%2011.7716%201.25015%2011.8734C1.41066%2011.9901%201.68856%2011.9901%202.24437%2011.9901H12.2856C12.8414%2011.9901%2013.1193%2011.9901%2013.2798%2011.8734C13.4199%2011.7716%2013.5101%2011.6151%2013.528%2011.443C13.5486%2011.2456%2013.4093%2011.0051%2013.1309%2010.5241L8.11024%201.85206C7.83276%201.37278%207.69402%201.13314%207.51301%201.05265C7.35512%200.982448%207.17488%200.982448%207.01699%201.05265C6.83598%201.13314%206.69724%201.37278%206.41976%201.85206Z'%20stroke%3D'%23F3B107'%20stroke-width%3D'1.3'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%2F%3E%3C%2Fsvg%3E\";\r\n\r\ninterface EnergyHistoryProps {\r\n chartMode: string;\r\n filterDatesChart: FilterDatesChart;\r\n isLoading: boolean;\r\n handleClickBarChart: (name) => void;\r\n energyCardFilters: any;\r\n insideFilters: any;\r\n handleIsComparing: (value) => void;\r\n handleResetDates: () => void;\r\n ref: React.Ref<{ handleGetChartData: (options) => void }>;\r\n}\r\n\r\ninterface FilterDatesChart {\r\n yearOptions: {\r\n label: string;\r\n value: string | number;\r\n hasData: boolean;\r\n }[];\r\n monthOptions: {\r\n label: string;\r\n value: string | number;\r\n hasData: boolean;\r\n }[];\r\n}\r\n\r\nexport const EnergyHistory: React.FC = forwardRef(({\r\n chartMode,\r\n isLoading,\r\n filterDatesChart,\r\n handleClickBarChart,\r\n energyCardFilters,\r\n insideFilters,\r\n handleIsComparing,\r\n handleResetDates,\r\n}, ref) => {\r\n const { cardDate, handleSetTabIsLoading } = useEnergyCard();\r\n\r\n const [state, render] = useStateVar({\r\n historyChartData: {} as ApiResps['/energy/get-energy-analysis-hist'],\r\n isLoadingChart: true,\r\n isOpenFilterHeader: false,\r\n isComparingChart: false,\r\n monthChartSelected: cardDate.month,\r\n yearChartSelected: cardDate.year,\r\n });\r\n\r\n const chartRef = useRef({} as { handleUpdateChartDates: (date, format) => void});\r\n\r\n const handleGetMonthIndex = (monthLabel, yearLabel) => filterDatesChart.monthOptions.findIndex((month) => moment\r\n .utc(month.value)\r\n .isSame(moment(`${monthLabel} ${yearLabel}`, 'MMMM YYYY'), 'month'));\r\n\r\n const handleMonthHasData = (monthLabel, yearLabel) => {\r\n const month = filterDatesChart.monthOptions.find((month) => moment\r\n .utc(month.value)\r\n .isSame(moment(`${monthLabel} ${yearLabel}`, 'MMMM YYYY'), 'month'));\r\n\r\n return month?.hasData;\r\n };\r\n\r\n const handleChangeComparingChart = (\r\n isComparing,\r\n yearSelectedComparing,\r\n monthSelectedComparing,\r\n ) => {\r\n state.monthChartSelected = monthSelectedComparing;\r\n state.yearChartSelected = yearSelectedComparing;\r\n state.isComparingChart = isComparing;\r\n\r\n handleIsComparing(state.isComparingChart);\r\n handleGetChartData({});\r\n\r\n render();\r\n };\r\n\r\n const handleClickBarChartHistory = (options) => {\r\n const barClicked = moment(options.name, 'MMM YYYY');\r\n\r\n const monthClicked = barClicked.format('MMMM');\r\n\r\n if (!handleMonthHasData(monthClicked, state.yearChartSelected)) {\r\n const currentMonthIndex = handleGetMonthIndex(monthClicked, state.yearChartSelected);\r\n\r\n let breakLoopMonth = false;\r\n\r\n filterDatesChart.monthOptions\r\n .slice()\r\n .reverse()\r\n .forEach((month, index) => {\r\n if (filterDatesChart.monthOptions.length - (currentMonthIndex + 1) < index && month.hasData && !breakLoopMonth) {\r\n state.monthChartSelected = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n\r\n filterDatesChart.monthOptions.forEach((month, index) => {\r\n if (currentMonthIndex < index && month.hasData && !breakLoopMonth) {\r\n state.monthChartSelected = month.label;\r\n breakLoopMonth = true;\r\n }\r\n });\r\n } else {\r\n state.monthChartSelected = monthClicked;\r\n }\r\n\r\n chartRef.current.handleUpdateChartDates(`${state.monthChartSelected} ${state.yearChartSelected}`, 'MMMM YYYY');\r\n\r\n render();\r\n\r\n handleClickBarChart(options);\r\n };\r\n\r\n const handleGetChartData = async (energyHistParams) => {\r\n try {\r\n handleSetTabIsLoading(true, 'history');\r\n\r\n const chartModeParam = chartMode === 'monthMode' ? 'month' : 'year';\r\n\r\n const datesParams = handleGetDatesParams(\r\n `${cardDate.month} ${cardDate.year}`,\r\n 'MMMM YYYY',\r\n chartMode,\r\n state.isComparingChart,\r\n );\r\n\r\n const { startDate: startDateToCompare, endDate: endDateToCompare } = handleGetDatesParams(\r\n `${state.monthChartSelected} ${state.yearChartSelected}`,\r\n 'MMMM YYYY',\r\n chartMode,\r\n state.isComparingChart,\r\n cardDate.year,\r\n );\r\n\r\n const data = await apiCall('/energy/get-energy-analysis-hist', {\r\n ...datesParams,\r\n ...(state.isComparingChart && { startDateToCompare, endDateToCompare }),\r\n filterType: chartModeParam,\r\n ...energyHistParams,\r\n ...energyCardFilters,\r\n insideFilters: { ...insideFilters },\r\n });\r\n state.historyChartData = data;\r\n } catch (e) {\r\n toast.error(t('naoFoiPossivelBuscarInformacoesGrafico'));\r\n } finally {\r\n handleSetTabIsLoading(false, 'history');\r\n render();\r\n }\r\n };\r\n\r\n useImperativeHandle(\r\n ref,\r\n () => ({\r\n handleGetChartData,\r\n }),\r\n [],\r\n );\r\n\r\n useEffect(() => {\r\n if (energyCardFilters.startObject || !cardDate.verifyDate) return;\r\n if (!cardDate.isApiDate) {\r\n handleResetDates();\r\n } else {\r\n handleGetChartData({});\r\n }\r\n }, [cardDate]);\r\n\r\n return (\r\n \r\n );\r\n});\r\n","import { ContainerCardWater } from '../style';\r\nimport {\r\n TooltipComponent,\r\n GridComponent,\r\n VisualMapComponent,\r\n} from 'echarts/components';\r\nimport { BarChart } from 'echarts/charts';\r\nimport { UniversalTransition } from 'echarts/features';\r\nimport { CanvasRenderer } from 'echarts/renderers';\r\nimport * as echarts from 'echarts/core';\r\nimport { useContext, useEffect, useRef } from 'react';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\nimport { t } from 'i18next';\r\nimport { ApiResps } from '~/providers';\r\nimport { ICard } from '~/contexts/CardContext';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { INCOERENT_ICON, WARNING_ICON } from '~/components/EnergyCard/EnergyHistory';\r\nimport MenuContext from '~/contexts/menuContext';\r\nimport i18n from '~/i18n';\r\n\r\necharts.use([\r\n TooltipComponent,\r\n GridComponent,\r\n VisualMapComponent,\r\n CanvasRenderer,\r\n UniversalTransition,\r\n BarChart,\r\n]);\r\n\r\ninterface TooltipParams {\r\n name: string; // Nome da categoria\r\n value: number; // Valor do ponto de dados\r\n seriesName: string; // Nome da série\r\n seriesType: string; // Tipo da série\r\n dataIndex: number; // Índice do ponto de dados\r\n color: string; // Cor da série\r\n}\r\nconst namesMonths = [t('Jan'), t('Fev'), t('Mar'), t('Abr'), t('Mai'), t('Jun'), t('Jul'), t('Ago'), t('Set'), t('Out'), t('Nov'), t('Dez')];\r\nconst completeNameMonths = [t('mesesDoAno.janeiro'), t('mesesDoAno.fevereiro'), t('mesesDoAno.marco'), t('mesesDoAno.abril'), t('mesesDoAno.maio'), t('mesesDoAno.junho'), t('mesesDoAno.julho'), t('mesesDoAno.agosto'), t('mesesDoAno.setembro'), t('mesesDoAno.outubro'), t('mesesDoAno.novembro'), t('mesesDoAno.dezembro')];\r\nconst completeNumberMonths = ['01', '02', '03', '04', '05', '06', '07', '08', '09', '10', '11', '12'];\r\n\r\nexport function GenerateGraphWater({\r\n arrayData, waterCard, isExpanded, unitMeasuere, period, isHistory, last12Months, showForecast, handleClickBar, litersSelected,\r\n} : Readonly<{\r\n arrayData: ApiResps['/dma/get-consumption-history']['history'],\r\n waterCard: ICard | undefined,\r\n isExpanded: boolean | undefined,\r\n isHistory: boolean,\r\n unitMeasuere: string,\r\n period?: string\r\n last12Months?: boolean\r\n showForecast?: boolean\r\n handleClickBar?: (value) => void\r\n litersSelected?: boolean\r\n}>) {\r\n const idioma = i18n.language;\r\n const chartRef = useRef(null);\r\n const { menuToogle } = useContext(MenuContext);\r\n let arrayDataFiltered;\r\n let xAxisNames;\r\n const profile = getUserProfile();\r\n const isAdmin = profile.permissions?.isAdminSistema;\r\n const isDesktop = window.matchMedia('(min-width: 426px)');\r\n const isMobile = !isDesktop.matches;\r\n\r\n const fontOverview = isExpanded ? '12px' : '10px';\r\n const barOverview = isExpanded ? '30px' : '20px';\r\n\r\n const fontSize = isHistory ? '11px' : fontOverview;\r\n const barWidth = isMobile ? '12px' : barOverview;\r\n const barWidthHistory = period === t('semana') ? '30px' : '12px';\r\n\r\n const getConsumptionWater = (consumption: number) => {\r\n if (!unitMeasuere || unitMeasuere === 'cubic') { return `${formatNumberWithFractionDigits((consumption / 1000).toFixed(2), { minimum: 0, maximum: 2 })}`; }\r\n if (unitMeasuere === 'liters') { return `${formatNumberWithFractionDigits(consumption, { minimum: 0, maximum: 2 })}`; }\r\n return '';\r\n };\r\n\r\n function getDateTooltip(value: TooltipParams[]) {\r\n if (period) {\r\n if (period === t('dia')) return `${arrayData[value[0].dataIndex].day?.dayDate}/${completeNumberMonths[arrayData[value[0].dataIndex].month]}/${arrayData[value[0].dataIndex].year} às ${arrayData[value[0].dataIndex].hour}:00h`;\r\n if (period === t('semana') || period === t('mes') || period === t('flexivel')) return `${arrayData[value[0].dataIndex].day?.dayDate}/${completeNumberMonths[arrayData[value[0].dataIndex].month]}/${arrayData[value[0].dataIndex].year}`;\r\n if (period === t('ano') && !last12Months) return `${completeNameMonths[arrayData[value[0].dataIndex].month]} ${arrayData[value[0].dataIndex].year}`;\r\n }\r\n return `${completeNameMonths[arrayData[value[0].dataIndex].month]} ${arrayData[value[0].dataIndex].year}`;\r\n }\r\n\r\n function formatterTooltip(value: TooltipParams[]) {\r\n if (!arrayData[value[0].dataIndex]?.usage && !arrayData[value[0].dataIndex]?.number_devices) {\r\n return `\r\n
\r\n
\r\n ${getDateTooltip(value)}\r\n
\r\n \r\n \r\n \r\n
\r\n ${t('semMonitoramento')}\r\n ${t('paraMaisDetalhesHTML')}\r\n
\r\n
\r\n
\r\n
\r\n `;\r\n }\r\n\r\n const consumo = `\r\n
\r\n
\r\n ${getDateTooltip(value)}\r\n
\r\n
\r\n
\r\n ${arrayData[value[0].dataIndex]?.isEstimated ? t('previsaoConsumo') : t('consumo')}: \r\n ${getConsumptionWater(arrayData[value[0].dataIndex]?.usage || 0)}${unitMeasuere === 'liters' ? 'L' : 'm³'}\r\n
\r\n
\r\n ${arrayData[value[0].dataIndex]?.number_devices ? `${t('dispositivosContabilizados')}: ${arrayData[value[0].dataIndex]?.number_devices}` : ''}\r\n
\r\n
\r\n `;\r\n const tooltipContentFactory = [consumo];\r\n return tooltipContentFactory.join('
');\r\n }\r\n function formatNumber(number: number): string {\r\n const numberString = number.toFixed(2);\r\n const formattedNumber = formatNumberWithFractionDigits(numberString, { minimum: 2, maximum: 2 });\r\n return formattedNumber;\r\n }\r\n function handleWeekDay(value?: {\r\n dayDate: string;\r\n dayWeek: string;\r\n dayWeekName: string;\r\n}) {\r\n if (idioma === 'pt') return value?.dayWeek;\r\n return value?.dayWeekName.charAt(0).toUpperCase();\r\n }\r\n\r\n function formatArrayDataFiltered() {\r\n if (arrayData) {\r\n if (unitMeasuere === 'liters') {\r\n arrayDataFiltered = arrayData.map((item) => ({\r\n value: showForecast || !item.isEstimated\r\n ? Number(item.usage).toFixed(2)\r\n : 0,\r\n isEstimated: item?.isEstimated,\r\n month: item.month,\r\n }));\r\n } else {\r\n arrayDataFiltered = arrayData.map((item) => ({\r\n value: showForecast || !item.isEstimated\r\n ? (Number(item.usage) / 1000)?.toFixed(2)\r\n : 0,\r\n isEstimated: item?.isEstimated,\r\n month: item.month,\r\n }));\r\n }\r\n xAxisNames = arrayData.map((item) => {\r\n let isProblemData = '';\r\n if (item.usage < 0) isProblemData = '\\n{image| }';\r\n if (period) {\r\n switch (period) {\r\n case t('dia'): return { value: `${item?.hour}:00${isProblemData}` };\r\n case t('semana'): return { value: `${item.day?.dayWeek === 'D' ? `{bold|${item.day?.dayDate}}` : item.day?.dayDate}\\n${handleWeekDay(item.day)}${isProblemData}` };\r\n case t('mes'): return { value: `${item.day?.dayWeek === 'D' ? `{bold|${item.day?.dayDate}}` : item.day?.dayDate}\\n${handleWeekDay(item.day)}${isProblemData}` };\r\n case t('ano'): return { value: `${namesMonths[item.month]}\\n{bold|${isMobile ? item.year?.toString().slice(-2) : item.year}}${isProblemData}` };\r\n case t('flexivel'): return { value: `${item.day?.dayWeek === 'D' ? `{bold|${item.day?.dayDate}}` : item.day?.dayDate}\\n${handleWeekDay(item.day)}${isProblemData}` };\r\n }\r\n }\r\n return {\r\n value: `${namesMonths[item.month]}\\n{bold|${isMobile ? item.year?.toString().slice(-2) : item.year}}${isProblemData}`,\r\n };\r\n });\r\n } else {\r\n arrayDataFiltered = [];\r\n }\r\n }\r\n\r\n const formatSeriesChart = (item) => {\r\n const currentMonth = new Date().getMonth();\r\n if (!item || (!isAdmin && item.value < 0)) {\r\n return 0;\r\n }\r\n\r\n if (isAdmin && item.value < 0) {\r\n return {\r\n value: item.value,\r\n itemStyle: {\r\n color: '#F3B107',\r\n borderRadius: [0, 0, 5, 5],\r\n },\r\n };\r\n }\r\n\r\n if (item.isEstimated) {\r\n return {\r\n value: item.value,\r\n itemStyle: {\r\n color: '#E6E6E6',\r\n borderRadius: [5, 5, 0, 0],\r\n },\r\n };\r\n }\r\n\r\n return item;\r\n };\r\n\r\n const handleRenderWater = () => {\r\n formatArrayDataFiltered();\r\n arrayDataFiltered = arrayDataFiltered.map((item) => formatSeriesChart(item));\r\n if (chartRef.current) {\r\n echarts.dispose(chartRef.current);\r\n const chartInstance = echarts.init(chartRef.current);\r\n window.addEventListener('resize', () => {\r\n chartInstance.resize();\r\n });\r\n chartInstance.setOption({\r\n grid: {\r\n left: '5%',\r\n right: '5%',\r\n bottom: '2%',\r\n width: '90%',\r\n top: '10%',\r\n containLabel: true,\r\n },\r\n tooltip: {\r\n trigger: 'axis',\r\n formatter: (value) => formatterTooltip(value),\r\n axisPointer: {\r\n type: 'shadow',\r\n },\r\n shadowStyle: {\r\n shadowBlur: 2,\r\n shadowOffsetY: 0,\r\n shadowOffsetX: 1,\r\n },\r\n lineStyle: {\r\n width: '40px',\r\n },\r\n },\r\n xAxis: [{\r\n type: 'category',\r\n data: xAxisNames,\r\n boundaryGap: false,\r\n splitLine: {\r\n show: true,\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n axisLabel: {\r\n show: true,\r\n align: 'center',\r\n margin: 8,\r\n showMaxLabel: true,\r\n interval: 0,\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n fontSize,\r\n rich: {\r\n bold: {\r\n fontWeight: 'bold',\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n fontSize,\r\n },\r\n image: {\r\n backgroundColor: {\r\n image: isAdmin ? WARNING_ICON : INCOERENT_ICON,\r\n },\r\n },\r\n },\r\n },\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n }],\r\n yAxis: [\r\n {\r\n type: 'value',\r\n ...(litersSelected !== null && {\r\n name: `${t('consumo')} ${litersSelected ? '(L)' : '(m³)'}`,\r\n nameLocation: 'end',\r\n nameTextStyle: {\r\n fontSize: 9,\r\n fontFamily: 'Inter',\r\n fontWeight: 'bold',\r\n color: '#000',\r\n padding: [0, litersSelected ? 60 : 40, 0, 0],\r\n },\r\n }),\r\n splitNumber: 5,\r\n position: 'left',\r\n axisLabel: {\r\n formatter: (value) => (`${formatNumber(value)} ${unitMeasuere === 'liters' ? 'L' : 'm³'}`),\r\n align: 'right',\r\n fontSize: 9,\r\n color: '#000',\r\n fontFamily: 'Inter',\r\n },\r\n offset: 18,\r\n axisLine: { show: false },\r\n axisTick: { show: false },\r\n splitLine: {\r\n lineStyle: {\r\n type: 'dashed',\r\n },\r\n },\r\n },\r\n ],\r\n series: period === t('ano') ? [\r\n {\r\n type: 'bar',\r\n cursor: handleClickBar ? 'pointer' : 'default',\r\n barWidth: isHistory ? barWidthHistory : barWidth,\r\n data: arrayDataFiltered,\r\n color: '#2D81FF',\r\n stack: 'group',\r\n barCategoryGap: '10%',\r\n itemStyle: {\r\n borderRadius: [5, 5, 0, 0],\r\n padding: [0, 20, 0, 0], // Definindo o raio de borda para o canto superior esquerdo e superior direito\r\n },\r\n },\r\n ] : [\r\n {\r\n type: 'bar',\r\n cursor: handleClickBar && period !== t('dia') ? 'pointer' : 'default',\r\n barWidth: isHistory ? barWidthHistory : barWidth,\r\n data: arrayDataFiltered,\r\n color: '#2D81FF',\r\n stack: 'group',\r\n barCategoryGap: '10%',\r\n itemStyle: {\r\n borderRadius: [5, 5, 0, 0],\r\n padding: [0, 20, 0, 0], // Definindo o raio de borda para o canto superior esquerdo e superior direito\r\n },\r\n },\r\n ]\r\n ,\r\n });\r\n chartInstance.on('click', (value) => {\r\n handleClickBar && handleClickBar(arrayData[value.dataIndex]);\r\n });\r\n\r\n window.addEventListener('resize', () => {\r\n chartInstance.resize();\r\n });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n handleRenderWater();\r\n }, [waterCard?.isExpanded, arrayData, isExpanded, menuToogle, unitMeasuere, showForecast]);\r\n\r\n return (\r\n \r\n
\r\n \r\n );\r\n}\r\n","import { Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nexport const HoverConsumptionInfo = styled.div`\r\n display: flex;\r\n width: 200px;\r\n gap: 8px;\r\n /* border-radius: 5px; */\r\n color: white;\r\n font-family: 'Inter';\r\n font-style: normal;\r\n font-weight: 400;\r\n font-size: 11px;\r\n line-height: 13px;\r\n`;\r\n\r\nexport const HoverMeterInfo = styled.div`\r\n display: flex;\r\n position: 'relative';\r\n flex-direction: column;\r\n width: 175;\r\n gap: 8px;\r\n /* border-radius: 5px; */\r\n color: black;\r\n font-family: 'Inter';\r\n font-style: normal;\r\n font-weight: 400;\r\n font-size: 11px;\r\n line-height: 13px;\r\n background-color: \"#fff\";\r\n`;\r\n\r\nexport const ContainerCaption = styled.div`\r\n display: flex;\r\n width: 100%;\r\n align-items: center;\r\n justify-content: center;\r\n margin-top: 3px;\r\n gap: 30px;\r\n`;\r\n\r\nexport const ContainerArrowLeft = styled.div`\r\n display: flex;\r\n width: 35px;\r\n align-items: center;\r\n justify-content: center;\r\n border-right: 1px solid #EDEDED;\r\n cursor: pointer;\r\n`;\r\nexport const ContainerArrowRight = styled.div<{disabled: boolean }>(\r\n ({\r\n disabled,\r\n }) => `\r\n display: flex;\r\n width: 35px;\r\n align-items: center;\r\n justify-content: center;\r\n border-left: 1px solid #EDEDED;\r\n cursor: pointer;\r\n pointer-events: ${disabled ? 'none' : 'all'}\r\n`,\r\n);\r\n\r\nexport const LabelData = styled.div`\r\n position: relative;\r\n top: 3px;\r\n margin-left: 13px;\r\n font-size: 11px;\r\n font-weight: 700;\r\n line-height: 15px;\r\n`;\r\n\r\nexport const ContainerUsageDiff = styled.div`\r\n display: flex;\r\n align-items: center;\r\n gap: 3px;\r\n color: #92CC9A;\r\n font-size: 12px;\r\n font-weight: 700;\r\n line-height: 15px;\r\n`;\r\n\r\nexport const ButtonReturnPeriod = styled.div`\r\n display: flex;\r\n justify-content: center;\r\n align-items: center;\r\n width: 74px;\r\n height: 22px;\r\n border-radius: 5px;\r\n border: 1px solid #363BC4;\r\n color: #363BC4;\r\n font-size: 10px;\r\n font-weight: 700;\r\n line-height: 11px;\r\n margin-right: 20px;\r\n cursor: pointer;\r\n`;\r\n\r\nexport const ContainerIcon = styled(Box)<{ period_usage_up: boolean }>(\r\n ({ period_usage_up }) => `\r\n display:flex;\r\n align-items: center;\r\n justify-content: center;\r\n transform: rotate(${period_usage_up ? '180' : '360'}deg);\r\n transition: all 0.2s;\r\n`,\r\n);\r\n","/* eslint-disable import/no-duplicates */\r\nimport { useEffect, useState } from 'react';\r\nimport { format, parseISO } from 'date-fns';\r\nimport pt from 'date-fns/locale/pt';\r\nimport moment, { isMoment } from 'moment';\r\nimport DatePicker from 'react-datepicker';\r\nimport i18n from '~/i18n';\r\nimport { SingleDatePicker, DateRangePicker } from 'react-dates';\r\nimport { toast } from 'react-toastify';\r\nimport { t } from 'i18next';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport {\r\n Select, Card, Loader, Checkbox,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { apiCall, ApiResps } from '~/providers';\r\n\r\nimport {\r\n ContentDate,\r\n VarContainer,\r\n VarName,\r\n VarUnit,\r\n VarValue,\r\n} from '../styles';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { GenerateGraphWater } from '~/components/WaterCard/GraphCardWater';\r\nimport {\r\n ArrowDownIcon,\r\n ArrowLeftIcon, ArrowRightIcon, InfoIcon, InfoLinkIcon,\r\n} from '~/icons';\r\nimport {\r\n ButtonReturnPeriod,\r\n ContainerArrowLeft,\r\n ContainerArrowRight,\r\n ContainerCaption, ContainerIcon, ContainerUsageDiff, HoverConsumptionInfo, HoverMeterInfo, LabelData,\r\n} from './styles';\r\nimport { QuickSelection } from '~/components/QuickSelection';\r\nimport { TransparentLink } from '~/components/EnvGroupAnalysis/styles';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\ninterface IGraphData {\r\n devId: string;\r\n name: string;\r\n usage: string;\r\n date: string;\r\n estimatedUsage?: boolean;\r\n dailyReadings?: {\r\n devId?: string;\r\n name: string;\r\n usage: string;\r\n date: string;\r\n dayUsage: number | string;\r\n readTime: string;\r\n estimatedUsage?: boolean;\r\n }[];\r\n}\r\n\r\nexport function WaterHistory(props: {\r\n device_code: string;\r\n status: string | undefined;\r\n installationDate: string | undefined | null;\r\n unitId?: number|null;\r\n}): JSX.Element {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const { device_code, status, unitId } = props;\r\n const [shouldNotDisplayLiters, setShouldNotDisplayLiters] = useState(\r\n profile.prefsObj?.water === 'cubic',\r\n );\r\n const [state, render, setState] = useStateVar({\r\n loading: true,\r\n loadingNewData: true,\r\n focused: false,\r\n focusedInput: null,\r\n startDate: moment().startOf('month').format('YYYY-MM-DD'),\r\n endDate: moment().endOf('month').format('YYYY-MM-DD'),\r\n lastStartDate: moment().subtract(1, 'months').startOf('month').format('YYYY-MM-DD'),\r\n lastEndDate: moment().subtract(1, 'months').endOf('month').format('YYYY-MM-DD'),\r\n graphData: [] as IGraphData[],\r\n graphDataForecast: [] as IGraphData[],\r\n cubicMetersGraphData: [] as IGraphData[],\r\n cubicMetersGraphDataForecast: [] as IGraphData[],\r\n graphLegend: [] as string[],\r\n showForecast: true,\r\n period: t('mes'),\r\n last12Months: false as boolean,\r\n periodIsMonthOrFlexible: true,\r\n maxUsage: 0,\r\n lastReadingDate: '',\r\n daily_average: '0',\r\n period_usage: '0',\r\n period_usage_last: null as string | null,\r\n period_usage_up: false as boolean,\r\n predicted: '0',\r\n predictedLastMonth: undefined as string | undefined,\r\n installationDate: props.installationDate as string | undefined | null,\r\n devInfo: null as null | ApiResps['/get-integration-info']['info'],\r\n forecastUsage: null as null | ApiResps['/dma/get-forecast-usage'],\r\n isCurrentMonth: false as boolean,\r\n consumptionByDayOfWeek: [\r\n { label: t('diasDaSemana.domingo'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.segunda'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.terca'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.quarta'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.quinta'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.sexta'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.sabado'), days: 0, consumption: 0 },\r\n ] as any[],\r\n yearGraphic: false as boolean,\r\n arrayData: [] as ApiResps['/dma/get-consumption-history']['history'],\r\n arrowDisabled: true as boolean,\r\n periodHist: '' as string,\r\n startDateHist: moment().startOf('month').format('YYYY-MM-DD'),\r\n endDateHist: moment().endOf('month').format('YYYY-MM-DD'),\r\n lastStartDateHist: moment().subtract(1, 'months').startOf('month').format('YYYY-MM-DD'),\r\n lastEndDateHist: moment().subtract(1, 'months').endOf('month').format('YYYY-MM-DD'),\r\n });\r\n\r\n useEffect(() => {\r\n const weekdaysMin: string[] = t('weekdaysMin', { returnObjects: true });\r\n const language = i18n.language === 'pt' ? 'pt-br' : i18n.language;\r\n moment.updateLocale(language, {\r\n weekdaysMin,\r\n });\r\n }, [i18n.language, t]);\r\n\r\n const maxValue = (graphData) => {\r\n let numberArr = [];\r\n if (state.period === t('dia')) {\r\n const currentDay = moment(state.startDate).format('DD/MM/YYYY');\r\n\r\n const currentDayData = graphData.filter((e) => e.date === currentDay)[0];\r\n\r\n numberArr = currentDayData?.dailyReadings?.map(({ dayUsage }) => Number(dayUsage));\r\n } else {\r\n numberArr = graphData.map(({ usage }) => Number(usage));\r\n }\r\n\r\n const maxNumber = !numberArr ? 0 : Math.max(...numberArr);\r\n\r\n return maxNumber;\r\n };\r\n\r\n const setForecastStates = () => {\r\n const currDate = new Date(Date.now() - 3 * 60 * 60 * 1000);\r\n const dataDate = new Date(state.endDate);\r\n state.isCurrentMonth = currDate.getMonth() === dataDate.getMonth()\r\n && dataDate.getDate() >= currDate.getDate();\r\n state.showForecast = true;\r\n };\r\n\r\n const getDailyData = async () => {\r\n let responseUsage;\r\n if (device_code.startsWith('DMA')) {\r\n if (state.devInfo?.hydrometerModel) {\r\n responseUsage = await apiCall('/dma/get-consumption-history', {\r\n DEVICE_CODE: device_code,\r\n START_DATE: state.startDate,\r\n END_DATE: state.endDate,\r\n LAST_START_DATE: state.lastStartDate,\r\n LAST_END_DATE: state.lastEndDate,\r\n YEAR_GRAPHIC: state.yearGraphic,\r\n });\r\n setState({ arrayData: responseUsage.history });\r\n } else if (state.devInfo && !state.devInfo.hydrometerModel) {\r\n toast.error(t('erroHistoricoHidrometro'));\r\n setState({ loadingNewData: false });\r\n return;\r\n } else {\r\n setState({ loadingNewData: false });\r\n return;\r\n }\r\n } else {\r\n responseUsage = await apiCall('/laager/get-consumption-history', {\r\n LAAGER_CODE: device_code,\r\n START_DATE: state.startDate,\r\n END_DATE: state.endDate,\r\n LAST_START_DATE: state.lastStartDate,\r\n LAST_END_DATE: state.lastEndDate,\r\n YEAR_GRAPHIC: state.yearGraphic,\r\n });\r\n\r\n setState({ arrayData: responseUsage.history });\r\n }\r\n\r\n const name = format(parseISO(state.startDate), 'dd-eeeee', {\r\n locale: pt,\r\n }).toUpperCase();\r\n\r\n const date = format(parseISO(state.startDate), 'dd/MM/yyyy', {\r\n locale: pt,\r\n });\r\n\r\n const usage = responseUsage.period_usage;\r\n\r\n const dailyReading = responseUsage?.history?.length > 0\r\n ? responseUsage.history.map((readings) => ({\r\n name,\r\n usage,\r\n date,\r\n dayUsage: readings.usage,\r\n readTime: moment(readings.information_date).format('HH:mm'),\r\n estimatedUsage: readings.estimatedUsage,\r\n devId: device_code,\r\n }))\r\n : [];\r\n\r\n const graphDataDaily = {\r\n name,\r\n usage,\r\n date,\r\n dailyReadings: dailyReading,\r\n devId: device_code,\r\n };\r\n\r\n const maxUsage = maxValue([graphDataDaily]);\r\n setState({\r\n graphData: [graphDataDaily],\r\n maxUsage,\r\n daily_average: `${responseUsage.daily_average || '0'}`,\r\n period_usage: `${responseUsage.period_usage || '0'}`,\r\n period_usage_last: handlePeriodUsageDiff(responseUsage.period_usage, responseUsage.period_usage_last),\r\n });\r\n };\r\n\r\n const getResponseUsage = async () => {\r\n let responseUsage;\r\n if (device_code.startsWith('DMA')) {\r\n if (state.devInfo?.hydrometerModel) {\r\n responseUsage = await apiCall('/dma/get-consumption-history', {\r\n DEVICE_CODE: device_code,\r\n START_DATE: state.startDate,\r\n END_DATE: state.endDate,\r\n LAST_START_DATE: state.lastStartDate,\r\n LAST_END_DATE: state.lastEndDate,\r\n YEAR_GRAPHIC: state.yearGraphic,\r\n });\r\n setState({ arrayData: responseUsage.history });\r\n } else if (state.devInfo && !state.devInfo.hydrometerModel) {\r\n toast.error(t('erroHistoricoHidrometro'));\r\n setState({ loadingNewData: false });\r\n return null;\r\n } else {\r\n setState({ loadingNewData: false });\r\n return null;\r\n }\r\n } else {\r\n responseUsage = await apiCall('/laager/get-consumption-history', {\r\n LAAGER_CODE: device_code,\r\n START_DATE: state.startDate,\r\n END_DATE: state.endDate,\r\n LAST_START_DATE: state.lastStartDate,\r\n LAST_END_DATE: state.lastEndDate,\r\n YEAR_GRAPHIC: state.yearGraphic,\r\n });\r\n }\r\n return responseUsage;\r\n };\r\n\r\n const getForecast = async () => {\r\n try {\r\n if (device_code.startsWith('DMA')) {\r\n const forecast = await apiCall('/dma/get-forecast-usage', {\r\n DEVICE_CODE: device_code,\r\n });\r\n state.forecastUsage = forecast;\r\n } else {\r\n const forecast = await apiCall('/laager/get-forecast-usage', {\r\n LAAGER_CODE: device_code,\r\n });\r\n state.forecastUsage = forecast;\r\n }\r\n } catch (err) {\r\n console.error(err);\r\n }\r\n };\r\n\r\n const getValueOrZero = (value: any) => `${value || '0'}`;\r\n\r\n const getGraphDataAndForecast = async () => {\r\n const responseUsage = await getResponseUsage();\r\n if (responseUsage === null) return null;\r\n const arrayData = responseUsage.history;\r\n\r\n setState({\r\n arrayData,\r\n daily_average: getValueOrZero(responseUsage.daily_average),\r\n period_usage: getValueOrZero(responseUsage.period_usage),\r\n period_usage_last: handlePeriodUsageDiff(responseUsage.period_usage, responseUsage.period_usage_last),\r\n });\r\n\r\n let maxUsageForecast = 0;\r\n let predictedConsumption = 0;\r\n if (state.periodIsMonthOrFlexible && state.isCurrentMonth) {\r\n await getForecast();\r\n\r\n if (state.forecastUsage) {\r\n let graphDataForecast = JSON.parse(JSON.stringify(arrayData));\r\n graphDataForecast = graphDataForecast.map((e) => {\r\n const currDate = new Date();\r\n currDate.setHours(0, 0, 0, 0);\r\n const dataDate = new Date(e.information_date);\r\n dataDate.setHours(0, 0, 0, 0);\r\n if (dataDate > currDate && state.forecastUsage) {\r\n e.usage = state.forecastUsage[e.day.dayWeekName];\r\n e.isEstimated = true;\r\n } else {\r\n e.isEstimated = false;\r\n }\r\n return e;\r\n });\r\n\r\n setState({ arrayData: graphDataForecast });\r\n\r\n state.arrayData.forEach(\r\n (e) => { if (e.isEstimated) predictedConsumption += Number(e.usage); },\r\n );\r\n maxUsageForecast = maxValue(graphDataForecast);\r\n }\r\n }\r\n\r\n const maxUsage = Math.max(maxValue(arrayData), maxUsageForecast);\r\n setState({\r\n predicted:\r\n state.periodIsMonthOrFlexible && state.isCurrentMonth\r\n ? `${predictedConsumption || '0'}`\r\n : `${responseUsage.predicted || '0'}`,\r\n maxUsage,\r\n });\r\n if (state.predictedLastMonth === undefined) setState({ predictedLastMonth: state.predicted });\r\n };\r\n\r\n const getOthersPeriodData = async () => {\r\n await getGraphDataAndForecast();\r\n\r\n if (state.periodIsMonthOrFlexible) {\r\n const consumptionByDayOfWeek = [\r\n { label: t('diasDaSemana.domingo'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.segunda'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.terca'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.quarta'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.quinta'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.sexta'), days: 0, consumption: 0 },\r\n { label: t('diasDaSemana.sabado'), days: 0, consumption: 0 },\r\n ];\r\n state.graphData.forEach((e) => {\r\n const dateArray = e.date.split('/');\r\n const strDate = [dateArray[1], dateArray[0], dateArray[2]].join('/');\r\n const date = moment(strDate).startOf('day');\r\n const currDate = moment().startOf('day');\r\n if (date <= currDate) {\r\n consumptionByDayOfWeek[date.day()].consumption += Number(e.usage);\r\n consumptionByDayOfWeek[date.day()].days += 1;\r\n }\r\n });\r\n setState({ consumptionByDayOfWeek });\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n if (!state.endDate) return;\r\n setState({ loadingNewData: true });\r\n\r\n setForecastStates();\r\n\r\n if (state.period === t('dia')) {\r\n await getDailyData();\r\n } else {\r\n await getOthersPeriodData();\r\n }\r\n\r\n if (shouldNotDisplayLiters) {\r\n verifyConsumptionInMeterCubic();\r\n }\r\n } catch (err) {\r\n toast.error(t('erroHistorico'));\r\n console.error(err);\r\n console.log(err);\r\n }\r\n setState({ loadingNewData: false });\r\n })();\r\n }, [device_code, state.startDate, state.devInfo, state.endDate]);\r\n\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n setState({ loading: true });\r\n\r\n let lastReadingDate = t('erroNaoFoiRealizadaNenhumaLeitura');\r\n if (device_code.startsWith('DMA')) {\r\n const { info } = await apiCall('/get-integration-info', {\r\n supplier: 'diel-dma',\r\n integrId: device_code,\r\n });\r\n setState({ devInfo: info });\r\n setState({\r\n installationDate:\r\n moment(info.installationDate?.substring(0, 10)).format('ll')\r\n === t('dataInvalida')\r\n ? '-'\r\n : moment(info.installationDate?.substring(0, 10)).toISOString(),\r\n });\r\n const response = await apiCall('/dma/get-last-reading-date', {\r\n dmaId: device_code,\r\n });\r\n if (response?.date != null) {\r\n lastReadingDate = moment(response.date).format('lll');\r\n }\r\n } else {\r\n const response = await apiCall('/laager/get-informations', {\r\n unit_id: device_code,\r\n });\r\n if (response?.last_reading_date) {\r\n lastReadingDate = moment(response.last_reading_date).format('lll');\r\n }\r\n }\r\n\r\n setState({\r\n lastReadingDate,\r\n });\r\n } catch (err) {\r\n toast.error(t('erroCarregarInformacoes'));\r\n console.error(err);\r\n }\r\n setState({ loading: false });\r\n })();\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (shouldNotDisplayLiters) {\r\n verifyConsumptionInMeterCubic();\r\n } else {\r\n const maxUsage = maxValue(state.graphData);\r\n setState({ maxUsage });\r\n }\r\n render();\r\n }, [shouldNotDisplayLiters]);\r\n\r\n function verifyConsumptionInMeterCubic() {\r\n const cubicMetersHistGraphData = state.graphData.map(\r\n ({\r\n name, usage, date, dailyReadings, devId, estimatedUsage,\r\n }) => {\r\n const dailyHistReadings = dailyReadings && dailyReadings.length > 0\r\n ? dailyReadings.map((readings) => ({\r\n name,\r\n usage: (Number(usage) / 1000).toFixed(2),\r\n date,\r\n dayUsage: (Number(readings.dayUsage) / 1000).toFixed(2),\r\n readTime: readings.readTime,\r\n estimatedUsage: readings.estimatedUsage,\r\n }))\r\n : [];\r\n return {\r\n name,\r\n usage: (Number(usage) / 1000).toFixed(2),\r\n date,\r\n dailyReadings: dailyHistReadings,\r\n estimatedUsage,\r\n devId,\r\n };\r\n },\r\n );\r\n state.cubicMetersGraphData = cubicMetersHistGraphData;\r\n\r\n let maxUsageForecast = 0;\r\n if (state.periodIsMonthOrFlexible) {\r\n const cubicMetersHistGraphDataForecast = state.graphDataForecast.map(\r\n ({\r\n name, usage, date, dailyReadings, devId, estimatedUsage,\r\n }) => {\r\n const dailyHistReadings = dailyReadings && dailyReadings.length > 0\r\n ? dailyReadings.map((readings) => ({\r\n name,\r\n usage: (Number(usage) / 1000).toFixed(2),\r\n date,\r\n dayUsage: (Number(readings.dayUsage) / 1000).toFixed(2),\r\n readTime: readings.readTime,\r\n estimatedUsage: readings.estimatedUsage,\r\n }))\r\n : [];\r\n\r\n return {\r\n name,\r\n usage: (Number(usage) / 1000).toFixed(2),\r\n date,\r\n dailyReadings: dailyHistReadings,\r\n devId,\r\n estimatedUsage,\r\n };\r\n },\r\n );\r\n state.cubicMetersGraphDataForecast = cubicMetersHistGraphDataForecast;\r\n maxUsageForecast = maxValue(state.cubicMetersGraphData);\r\n }\r\n\r\n const maxUsage = Math.max(\r\n maxValue(state.cubicMetersGraphData),\r\n maxUsageForecast,\r\n );\r\n setState({ maxUsage });\r\n }\r\n\r\n function handleDateChange(date: moment.Moment | string): void {\r\n setState({\r\n startDateHist: state.startDate, endDateHist: state.endDate, lastStartDateHist: state.lastStartDate, lastEndDateHist: state.lastEndDate,\r\n });\r\n if (state.period === t('dia') && isMoment(date)) {\r\n setState({ yearGraphic: false });\r\n const formattedDate = date.format('YYYY-MM-DD');\r\n const formattedLastDate = date.subtract(1, 'days').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDate, endDate: formattedDate, lastStartDate: formattedLastDate, lastEndDate: formattedLastDate,\r\n });\r\n } else if (state.period === t('semana') && isMoment(date)) {\r\n setState({ yearGraphic: false });\r\n const startDate = date.startOf('week').format('YYYY-MM-DD');\r\n const endDate = date.endOf('week').format('YYYY-MM-DD');\r\n const lastStartDate = moment(startDate).subtract(1, 'weeks').startOf('week').format('YYYY-MM-DD');\r\n const lastEndDate = moment(endDate).subtract(1, 'weeks').endOf('week').format('YYYY-MM-DD');\r\n setState({\r\n startDate, endDate, lastStartDate, lastEndDate,\r\n });\r\n } else if (state.period === t('mes') && isMoment(date)) {\r\n setState({ yearGraphic: false });\r\n const startDate = date.startOf('month').format('YYYY-MM-DD');\r\n const endDate = date.endOf('month').format('YYYY-MM-DD');\r\n const lastStartDate = moment(startDate).subtract(1, 'months').startOf('month').format('YYYY-MM-DD');\r\n const lastEndDate = moment(endDate).subtract(1, 'months').endOf('month').format('YYYY-MM-DD');\r\n setState({\r\n startDate, endDate, lastStartDate, lastEndDate,\r\n });\r\n } else if (state.period === t('flexivel') && isMoment(date)) {\r\n setState({ yearGraphic: false });\r\n const startDate = date.startOf('month').format('YYYY-MM-DD');\r\n const endDate = date.endOf('month').format('YYYY-MM-DD');\r\n const lastStartDate = moment(startDate).subtract(1, 'months').startOf('month').format('YYYY-MM-DD');\r\n const lastEndDate = moment(endDate).subtract(1, 'months').endOf('month').format('YYYY-MM-DD');\r\n setState({\r\n startDate, endDate, lastStartDate, lastEndDate,\r\n });\r\n } else if (state.period === t('ano') && isMoment(date)) {\r\n setState({ yearGraphic: true });\r\n const startDate = date.startOf('year').format('YYYY-MM-DD');\r\n const endDate = date.endOf('year').format('YYYY-MM-DD');\r\n const lastStartDate = moment(startDate).subtract(1, 'years').startOf('year').format('YYYY-MM-DD');\r\n const lastEndDate = moment(endDate).subtract(1, 'years').endOf('year').format('YYYY-MM-DD');\r\n setState({\r\n startDate, endDate, lastStartDate, lastEndDate,\r\n });\r\n }\r\n getDisabledButton();\r\n }\r\n\r\n function getDisabledButton(): void {\r\n const endDate = moment(state.endDate);\r\n const currentDate = moment();\r\n const currentDay = currentDate.day();\r\n const currentWeek = currentDate.week();\r\n const currentMonth = currentDate.month();\r\n const currentYear = currentDate.year();\r\n if (state.period === t('dia') && endDate.day() === currentDay) {\r\n setState({ arrowDisabled: true });\r\n }\r\n if (state.period === t('semana') && endDate.week() === currentWeek) {\r\n setState({ arrowDisabled: true });\r\n }\r\n else if (state.period === t('mes') && endDate.month() === currentMonth) {\r\n setState({ arrowDisabled: true });\r\n }\r\n else if (state.period === t('ano') && endDate.year() === currentYear) {\r\n setState({ arrowDisabled: true });\r\n }\r\n else if (state.period === t('flexivel')) {\r\n const differenceInDays = endDate.diff(moment(state.startDate), 'days');\r\n const newEndDate = endDate.add(differenceInDays, 'days');\r\n const isNextMonth = newEndDate.month() > currentDate.month() || newEndDate.year() > currentDate.year();\r\n\r\n setState({ arrowDisabled: isNextMonth });\r\n }\r\n else {\r\n setState({ arrowDisabled: false });\r\n }\r\n }\r\n\r\n function handlePeriodUsageDiff(usage: number, usageLast: number): string | null {\r\n // calcular o percentual de diferença de uso: ()\r\n const diffPercent = (((usage - usageLast) / usageLast) * 100) || 0;\r\n if (diffPercent >= 0) setState({ period_usage_up: true });\r\n else setState({ period_usage_up: false });\r\n if (diffPercent === Infinity || diffPercent === 0 || diffPercent == null) return null;\r\n return diffPercent.toFixed(2);\r\n }\r\n\r\n const getMeasureUnit = () => (shouldNotDisplayLiters ? 'm³' : t('litros'));\r\n\r\n const formatConsumption = (num: string) => (shouldNotDisplayLiters\r\n ? formatNumberWithFractionDigits(Number(num) / 1000, { minimum: 2, maximum: 2 })\r\n : formatNumberWithFractionDigits(Number(num), { minimum: 0, maximum: 0 }));\r\n\r\n function quickChangeData(startDate, endDate, timeSelected) {\r\n const timeSelectedForDay = ['Hoje', 'Ontem'];\r\n const timeSelectedForWeek = ['Semana Atual', 'Semana Passada', 'Últimos 7 dias'];\r\n const timeSelectedForMonth = ['Últimos 30 dias', 'Últimos 60 dias', 'Últimos 90 dias'];\r\n const timeSelectedForYear = ['Últimos 12 meses'];\r\n\r\n setState({ periodHist: state.period });\r\n if (timeSelectedForDay.includes(timeSelected)) setState({ yearGraphic: false, period: t('dia'), last12Months: false });\r\n else if (timeSelectedForWeek.includes(timeSelected)) setState({ yearGraphic: false, period: t('semana'), last12Months: false });\r\n else if (timeSelectedForMonth.includes(timeSelected)) setState({ yearGraphic: false, period: t('flexivel'), last12Months: false });\r\n else if (timeSelectedForYear.includes(timeSelected)) { setState({ yearGraphic: true, period: t('ano'), last12Months: true });\r\n }\r\n\r\n setState({\r\n startDateHist: state.startDate, endDateHist: state.endDate, lastStartDateHist: state.lastStartDate, lastEndDateHist: state.lastEndDate,\r\n });\r\n\r\n const endDateFormat = endDate.format('YYYY-MM-DD');\r\n const startDateFormat = startDate.format('YYYY-MM-DD');\r\n setState({ startDate: startDateFormat, endDate: endDateFormat });\r\n\r\n render();\r\n }\r\n\r\n function handleDateChangeLeft(): void {\r\n const dateInit = moment(state.startDate);\r\n const dateEnd = moment(state.endDate);\r\n if (state.period === t('dia')) {\r\n const formattedDateInit = dateInit.subtract(1, 'days').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.subtract(1, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'days').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('semana')) {\r\n const formattedDateInit = dateInit.subtract(1, 'weeks').startOf('week').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.subtract(1, 'weeks').endOf('week').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'weeks').startOf('week').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'weeks').endOf('week').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('mes')) {\r\n const formattedDateInit = dateInit.subtract(1, 'months').startOf('month').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.subtract(1, 'months').endOf('month').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'months').startOf('month').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'months').endOf('month').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('flexivel')) {\r\n const differenceInDays: number = dateEnd.diff(dateInit, 'days');\r\n const formattedDateInit = dateInit.subtract(differenceInDays, 'days').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.subtract(differenceInDays, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(differenceInDays, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(differenceInDays, 'days').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('ano')) {\r\n const formattedDateInit = dateInit.subtract(1, 'years').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.subtract(1, 'years').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'years').startOf('year').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'years').endOf('year').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n }\r\n getDisabledButton();\r\n }\r\n\r\n function handleDateChangeRight(): void {\r\n const dateInit = moment(state.startDate);\r\n const dateEnd = moment(state.endDate);\r\n if (state.period === t('dia')) {\r\n const formattedDateInit = dateInit.add(1, 'days').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.add(1, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'days').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('semana')) {\r\n const formattedDateInit = dateInit.add(1, 'weeks').startOf('week').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.add(1, 'weeks').endOf('week').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'weeks').startOf('week').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'weeks').endOf('week').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('mes')) {\r\n const formattedDateInit = dateInit.add(1, 'months').startOf('month').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.add(1, 'months').endOf('month').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'months').startOf('month').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'months').endOf('month').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('flexivel')) {\r\n const differenceInDays: number = dateEnd.diff(dateInit, 'days');\r\n const formattedDateInit = dateInit.add(differenceInDays, 'days').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.add(differenceInDays, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(differenceInDays, 'days').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(differenceInDays, 'days').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n } else if (state.period === t('ano')) {\r\n const formattedDateInit = dateInit.add(1, 'years').startOf('year').format('YYYY-MM-DD');\r\n const formattedDateEnd = dateEnd.add(1, 'years').endOf('year').format('YYYY-MM-DD');\r\n const formattedLastDateInit = moment(formattedDateInit).subtract(1, 'years').startOf('year').format('YYYY-MM-DD');\r\n const formattedLastDateEnd = moment(formattedDateEnd).subtract(1, 'years').endOf('year').format('YYYY-MM-DD');\r\n setState({\r\n startDate: formattedDateInit, endDate: formattedDateEnd, lastStartDate: formattedLastDateInit, lastEndDate: formattedLastDateEnd,\r\n });\r\n }\r\n getDisabledButton();\r\n }\r\n\r\n function handleClickBar(value): void {\r\n if (state.period === t('ano')) {\r\n setState({\r\n periodHist: state.period,\r\n period: t('mes'),\r\n });\r\n }\r\n else {\r\n setState({\r\n periodHist: state.period,\r\n period: t('dia'),\r\n });\r\n }\r\n handleDateChange(moment(value.information_date));\r\n }\r\n\r\n function returnPeriod(): void {\r\n setState({\r\n startDate: state.startDateHist,\r\n endDate: state.endDateHist,\r\n period: state.periodHist,\r\n lastStartDate: state.lastStartDateHist,\r\n lastEndDate: state.lastEndDateHist,\r\n startDateHist: undefined,\r\n endDateHist: undefined,\r\n periodHist: '',\r\n lastStartDateHist: undefined,\r\n lastEndDateHist: undefined,\r\n });\r\n setState({ yearGraphic: false });\r\n if (state.period === t('ano')) setState({ yearGraphic: true });\r\n else setState({ yearGraphic: false });\r\n getDisabledButton();\r\n }\r\n\r\n function verifyLink() {\r\n if (device_code?.startsWith('DMA')) {\r\n return `/integracoes/info/diel/${device_code}/perfil`;\r\n }\r\n\r\n return `/analise/unidades/integracao-agua/${unitId}?supplier=laager`;\r\n }\r\n\r\n function verifyIsOutsideRange(date: moment.Moment) {\r\n const startDate = moment(state.startDate, 'YYYY-MM-DD').startOf('day');\r\n const maxEndDate = startDate.isValid() ? startDate.clone().add(1, 'month').endOf('day') : null;\r\n\r\n const isAfterMaxEndDate = maxEndDate ? date.isAfter(maxEndDate) : false;\r\n const isOutsideCurrentMonth = !date.isBefore(moment().endOf('month'));\r\n\r\n return isAfterMaxEndDate || isOutsideCurrentMonth;\r\n }\r\n\r\n return (\r\n
\r\n {(state.loading || state.loadingNewData) && }\r\n {!state.loading && !state.loadingNewData && (\r\n \r\n \r\n \r\n {\r\n setState({\r\n periodHist: state.period,\r\n period,\r\n periodIsMonthOrFlexible: [\r\n t('ano'),\r\n t('mes'),\r\n t('flexivel'),\r\n t('semana'),\r\n ].includes(period),\r\n });\r\n handleDateChange(moment());\r\n }}\r\n value={state.period}\r\n placeholder={t('periodo')}\r\n hideSelected\r\n small\r\n // @ts-ignore\r\n disabled={state.isLoading}\r\n />\r\n \r\n \r\n \r\n \r\n handleDateChangeLeft()}>\r\n \r\n \r\n \r\n {t('data')}\r\n {(state.period === t('dia') || state.period === t('semana')) && (\r\n handleDateChange(data)}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => {\r\n state.focused = focused;\r\n render();\r\n }}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n displayFormat=\"DD/MM/YYYY\"\r\n isOutsideRange={(d) => !d.isBefore(moment())}\r\n />\r\n )}\r\n {state.period === t('mes') && (\r\n handleDateChange(moment(d))}\r\n locale=\"pt-BR\"\r\n showMonthYearPicker\r\n dateFormat=\"MMMM Y\"\r\n />\r\n )}\r\n {state.period === t('ano') && (\r\n handleDateChange(moment(d))}\r\n locale=\"pt-BR\"\r\n showYearPicker\r\n dateFormat=\"yyyy\"\r\n />\r\n )}\r\n {state.period === t('flexivel') && (\r\n {\r\n setState({\r\n startDate: startDate.format('YYYY-MM-DD'),\r\n endDate:\r\n startDate.format('YYYY-MM-DD') !== state.startDate\r\n ? null\r\n : endDate.format('YYYY-MM-DD'),\r\n });\r\n getDisabledButton();\r\n }}\r\n onFocusChange={(focused) => {\r\n state.focusedInput = focused;\r\n render();\r\n }}\r\n focusedInput={state.focusedInput}\r\n noBorder\r\n isOutsideRange={verifyIsOutsideRange}\r\n startDatePlaceholderText={t('dataInicial')}\r\n endDatePlaceholderText={t('dataFinal')}\r\n />\r\n )}\r\n\r\n \r\n handleDateChangeRight()}>\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {t('consumo')}\r\n \r\n { profile.manageAllClients && (\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n {t('medidor')}\r\n \r\n
\r\n \r\n \r\n {device_code}\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n )}\r\n
\r\n \r\n \r\n {t('unidadeDeMedida')}\r\n \r\n
\r\n {t('litros')}\r\n setShouldNotDisplayLiters(!shouldNotDisplayLiters)}\r\n style={{ marginLeft: '10px', marginRight: '10px' }}\r\n />\r\n \r\n {t('metrosCubicos')}\r\n \r\n
\r\n
\r\n {props.installationDate && state.isCurrentMonth ? (\r\n \r\n {\r\n state.showForecast = !state.showForecast;\r\n render();\r\n }}\r\n />\r\n {t('previsaoConsumo')}\r\n
\r\n ) : null}\r\n
\r\n \r\n {state.periodHist !== '' && returnPeriod()}>{t('voltar').toUpperCase()}}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n \r\n\r\n \r\n\r\n {state.periodIsMonthOrFlexible\r\n && props.installationDate\r\n && state.isCurrentMonth && (\r\n \r\n )}\r\n \r\n\r\n \r\n \r\n {t('consumoPeriodo')}\r\n
\r\n \r\n {shouldNotDisplayLiters\r\n ? formatNumberWithFractionDigits(Number(state.period_usage) / 1000, { minimum: 2, maximum: 2 })\r\n : formatNumberWithFractionDigits(Number(state.period_usage), { minimum: 0, maximum: 0 })}\r\n \r\n {getMeasureUnit()}\r\n
\r\n {state.period_usage_last\r\n && (\r\n \r\n \r\n \r\n \r\n {state.period_usage_last}\r\n %\r\n \r\n )}\r\n\r\n
\r\n {state.period !== t('dia') && (\r\n <>\r\n \r\n
\r\n {t('mediaConsumoDiario')}\r\n \r\n
\r\n
\r\n \r\n {formatConsumption(state.daily_average)}\r\n \r\n {getMeasureUnit()}\r\n
\r\n
\r\n {state.isCurrentMonth && (\r\n \r\n {t('previsao')}\r\n
\r\n \r\n {formatConsumption(state.predicted)}\r\n \r\n {getMeasureUnit()}\r\n
\r\n
\r\n )}\r\n \r\n )}\r\n
\r\n\r\n \r\n
\r\n {state.periodIsMonthOrFlexible && (\r\n \r\n \r\n \r\n {t('mediasDeConsumo')}\r\n \r\n {state.consumptionByDayOfWeek.map((e) => (\r\n \r\n \r\n {`${e.label}:`}\r\n    \r\n \r\n
\r\n \r\n {`${\r\n shouldNotDisplayLiters\r\n ? (\r\n ((Number(e.consumption)\r\n / (e.days || 1)) as number) / 1000\r\n ).toLocaleString('pt-br', {\r\n minimumFractionDigits: 2,\r\n maximumFractionDigits: 2,\r\n })\r\n : (\r\n Number(e.consumption) / (e.days || 1)\r\n ).toFixed(0)\r\n }`}\r\n \r\n {getMeasureUnit()}\r\n
\r\n \r\n ))}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n )}\r\n
\r\n );\r\n}\r\n\r\nexport function ConsumptionInfoCaption(props: {\r\n label: string;\r\n color: string;\r\n legendHover: string;\r\n dataId: string;\r\n widthIcon: string;\r\n}): JSX.Element {\r\n return (\r\n \r\n \r\n \r\n {props.label}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {props.label}\r\n \r\n {props.legendHover}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport function DateCaption(props: {\r\n startDate: string;\r\n endDate: string;\r\n period: string\r\n}): JSX.Element {\r\n moment.updateLocale('pt', {\r\n months: [\r\n 'Janeiro', 'Fevereiro', 'Março', 'Abril', 'Maio', 'Junho', 'Julho',\r\n 'Agosto', 'Setembro', 'Outubro', 'Novembro', 'Dezembro',\r\n ],\r\n });\r\n\r\n if (props.period === t('dia')) {\r\n return (\r\n \r\n {moment(props.startDate, 'YYYY-MM-DD').format('DD/MM/YYYY')}\r\n \r\n );\r\n }\r\n\r\n if (props.period === t('semana') || props.period === t('flexivel')) { return (\r\n \r\n {props.startDate ? moment(props.startDate, 'YYYY-MM-DD').format('DD/MM/YYYY') : t('selecioneDataInicial')}\r\n -\r\n {props.endDate ? moment(props.endDate, 'YYYY-MM-DD').format('DD/MM/YYYY') : t('selecionaDataFinal')}\r\n \r\n ); }\r\n\r\n if (props.period === t('mes')) {\r\n return (\r\n \r\n {moment(props.startDate, 'YYYY-MM-DD').format('MMMM YYYY')}\r\n \r\n );\r\n }\r\n\r\n if (props.period === t('ano')) {\r\n return (\r\n \r\n {moment(props.startDate, 'YYYY-MM-DD').format('YYYY')}\r\n \r\n );\r\n }\r\n\r\n return <>;\r\n}\r\n","import { useEffect, useRef, useState } from 'react';\r\nimport i18n from '~/i18n';\r\nimport moment from 'moment';\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Loader, Card } from '~/components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\nimport { AssetLayout } from '~/pages/Analysis/Assets/AssetLayout';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { DACHistoricContents } from '../DACs/DACHistoric';\r\nimport { DamHistoryContents } from '../DAMs/DamHistory';\r\nimport { DUTHistoryContents } from '../DUTs/DUTHistory';\r\nimport { DriHistory } from '../Integrations/IntegrHistory/DriHistory';\r\nimport { Headers2 } from '../Header';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { TimezoneWarn } from '~/components/TimezoneWarn';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\nimport { WaterHistory } from '../Integrations/IntegrHistory/WaterHistory/WaterHistory';\r\n\r\nfunction localeTranslate() {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n}\r\n\r\nexport const DevHistory = (): JSX.Element => {\r\n localeTranslate();\r\n const [profile] = useState(getUserProfile);\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const routeParams = useParams<{ devId }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n assetLayout: false as boolean,\r\n };\r\n state.isLoading = !state.devInfo;\r\n return state;\r\n });\r\n\r\n async function getDevInfo() {\r\n if (!state.devInfo) {\r\n try {\r\n state.devInfo = await getCachedDevInfo(routeParams.devId, {});\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n setState({ isLoading: false });\r\n }\r\n const { devInfo } = state;\r\n const isDac = !!(devInfo && devInfo.dac);\r\n let isDam = !!(devInfo && devInfo.dam);\r\n const isDut = !!(devInfo && devInfo.dut);\r\n let isDutAut = !!(devInfo && devInfo.dut_aut);\r\n const isDri = !!(devInfo && devInfo.dri);\r\n const isDma = !!(devInfo && devInfo.dma);\r\n // @ts-ignore\r\n if (isDam && devInfo.dac && devInfo.dam.DAM_DISABLED === 1) isDam = false;\r\n // @ts-ignore\r\n if (isDutAut && (devInfo.dut_aut.DUTAUT_DISABLED === 1)) isDutAut = false;\r\n const isAutomationOnly = isDam && (!isDac) && (!isDut);\r\n\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n state.assetLayout = linkBase.includes('/ativo');\r\n\r\n function visibilityAutomation() {\r\n if ((!isAutomationOnly) && (isDam || isDutAut) && !profile.permissions.isInstaller) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n const allTabs = [\r\n {\r\n title: t('equipamento'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'equipamento' })}`,\r\n isActive: (queryPars.aba === 'equipamento') || (!queryPars.aba),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('automacao'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'automacao' })}`,\r\n isActive: (queryPars.aba === 'automacao'),\r\n visible: visibilityAutomation(),\r\n ref: useRef(null),\r\n },\r\n ];\r\n const tabs = allTabs.filter((x) => x.visible);\r\n\r\n useEffect(() => {\r\n getDevInfo();\r\n }, []);\r\n\r\n function getScreen() {\r\n if (allTabs[1].isActive && isDutAut) {\r\n return ;\r\n }\r\n if (isAutomationOnly || (allTabs[1].isActive && state.devInfo.dam)) {\r\n return ;\r\n }\r\n if (isDri) {\r\n return ;\r\n }\r\n if (isDma) {\r\n return ;\r\n }\r\n if (allTabs[0].isActive && state.devInfo.dac) {\r\n return ;\r\n }\r\n if (allTabs[0].isActive && state.devInfo.dut) {\r\n return ;\r\n }\r\n return '(vazio)';\r\n }\r\n\r\n const dutSelected = () => state.devInfo?.dut?.PLACEMENT === 'DUO';\r\n\r\n function buildScreenInfoParams(): Parameters<(typeof AssetLayout)>[0]['screenInfo'] {\r\n return {\r\n forceHideHealthTab: false,\r\n groupSelected: true,\r\n hasNonDutDeviceInAssets: false,\r\n dutAutomationInfo: {},\r\n isDuoSelected: dutSelected(),\r\n assetRoleSelected: 0,\r\n };\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devInfo?.DEV_ID, t('historico'))}\r\n \r\n {!state.assetLayout ? () : ()}\r\n {(state.isLoading)\r\n && (\r\n
\r\n {' '}\r\n \r\n {' '}\r\n
\r\n )}\r\n {(state.devInfo && !state.isLoading)\r\n && (\r\n
\r\n \r\n {(tabs.length > 1) && state.devInfo.dut?.operation_mode !== 5\r\n ? (\r\n
\r\n \r\n
\r\n ) : <> }\r\n
\r\n {getScreen()}\r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('DevHistory', 'component')(DevHistory);\r\n","import styled from 'styled-components';\r\nimport {\r\n Select,\r\n} from 'components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const ItemTitle = styled.h3`\r\n margin-bottom: 0;\r\n font-weight: bold;\r\n font-size: 15px;\r\n line-height: 27px;\r\n color: #4B2FDB;\r\n`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\nexport const Data = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 16px;\r\n`;\r\nexport const DataText = styled.span<{ fontWeight? }>(\r\n ({ color = colors.Grey400, fontWeight = 'normal' }) => `\r\n font-size: 1em;\r\n font-weight: ${fontWeight};\r\n color: ${color};\r\n`,\r\n);\r\nexport const Title = styled.h1`\r\n font-size: 1.5em;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const Text = styled.span`\r\n margin-left: 7px;\r\n`;\r\nexport const TextLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n color: #5d5d5d;\r\n`;\r\n\r\nexport const CustomSelect = styled(Select)`\r\n margin-bottom: 20px;\r\n`;\r\nexport const ContainerInfo = styled.div`\r\n display: flex;\r\n padding: 25px 0 0 0;\r\n height: auto;\r\n`;\r\nexport const ContainerText = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 30px;\r\n`;\r\n\r\nexport const OverLay = styled.div`\r\n position: absolute;\r\n display: flex;\r\n background-color: #eceaea;\r\n width: 100%;\r\n height: 100%;\r\n z-index: 10000000;\r\n opacity: 0.4;\r\n filter: alpha(opacity=40);\r\n top: 0;\r\n left: 0;\r\n`;\r\n\r\nexport const Wrapper = styled.div`\r\n div {\r\n -ms-overflow-style: none;\r\n\r\n &::-webkit-scrollbar {\r\n display: none;\r\n }\r\n }\r\n`;\r\n\r\nexport const SpanType1 = styled.span<{ showExceptions }>(\r\n ({ showExceptions }) => `\r\n border-right: 1px solid lightgrey;\r\n border-left: 1px solid lightgrey;\r\n text-align: center;\r\n font-size: 90%;\r\n border-bottom: ${showExceptions ? '1px solid lightgrey' : 'none'};\r\n background-color: ${showExceptions ? '#f4f4f4' : 'transparent'};\r\n cursor: ${showExceptions ? 'pointer' : undefined};\r\n font-weight: ${showExceptions ? 'normal' : 'bold'};\r\n`,\r\n);\r\n\r\nexport const SpanType2 = styled.span<{ showExceptions }>(\r\n ({ showExceptions }) => `\r\n border-left: 1px solid lightgrey;\r\n border-right: 1px solid lightgrey;\r\n text-align: center;\r\n font-size: 90%;\r\n border-bottom: ${showExceptions ? 'none' : '1px solid lightgrey'},\r\n background-color: ${showExceptions ? 'transparent' : '#f4f4f4'},\r\n cursor: ${!showExceptions ? 'pointer' : undefined},\r\n font-weight: ${!showExceptions ? 'normal' : 'bold'},\r\n`,\r\n);\r\n\r\nexport const ContainerEcoMode = styled.div`\r\n display: flex;\r\n align-items: center;\r\n`;\r\n\r\nexport const HoverEcoLocal = styled.span`\r\n display: flex;\r\n flex-direction: column;\r\n max-width: 247px;\r\n padding-inline: 20px;\r\n padding-block: 15px;\r\n color: white;\r\n span{\r\n font-family: 'Inter';\r\n font-style: normal;\r\n font-weight: 400;\r\n font-size: 11px;\r\n line-height: 13px;\r\n }\r\n`;\r\n","import { Flex } from 'reflexbox';\r\nimport '~/assets/css/ReactTags.css';\r\nimport {\r\n ScheduleViewCard,\r\n ExceptionViewCard,\r\n} from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { ScheduleDut, ExceptionDut } from '../../../providers/types/api-private';\r\n\r\nexport const DutSchedulesList = (props: {\r\n schedules: ScheduleDut[]\r\n exceptions: ExceptionDut[]\r\n}): JSX.Element => {\r\n const history = useHistory();\r\n const [state, render, setState] = useStateVar({\r\n submitting: false,\r\n editingExtras: false,\r\n isLoading: false as boolean,\r\n key: 1 as number,\r\n showExceptions: false as boolean,\r\n });\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n { state.showExceptions && setState({ showExceptions: !state.showExceptions, showList: false }); }}\r\n >\r\n Programações\r\n \r\n \r\n { (!state.showExceptions) && setState({ showExceptions: !state.showExceptions }); }}\r\n >\r\n Exceções\r\n \r\n \r\n
\r\n
\r\n {`Total: ${!state.showExceptions ? props.schedules.length : props.exceptions.length}`}\r\n
\r\n {!state.showExceptions && (\r\n <>\r\n {props.schedules.map((schedule, index) => (index % 2 === 0\r\n ? (\r\n \r\n \r\n {index + 1 < props.schedules.length ? : <>}\r\n \r\n )\r\n : (\r\n <>\r\n )))}\r\n \r\n )}\r\n {state.showExceptions && props.exceptions.length > 0 && (\r\n <>\r\n \r\n \r\n Título\r\n
\r\n \r\n Data\r\n
\r\n \r\n Repetir todo ano\r\n
\r\n \r\n Início\r\n
\r\n \r\n Fim\r\n
\r\n \r\n {props.exceptions.map((exception, index) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { CalendarIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const InfoItem = styled.div`\r\nwidth: 150px;\r\nmargin-right: 20px;\r\nmargin-bottom: 30px;\r\n\r\n@media (max-width: 767px) {\r\n margin-bottom: 0;\r\n}\r\n`;\r\n\r\nexport const TableNew2 = styled.table`\r\nwidth: 100%;\r\nwhite-space: nowrap;\r\nborder-collapse: collapse;\r\n& tbody {\r\n & tr {\r\n height: 35px;\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n }\r\n & td {\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n padding: 0 10px;\r\n }\r\n}\r\n& thead {\r\n & tr {\r\n height: 40px;\r\n display: table-row;\r\n border-bottom: solid 1px ${colors.Grey};\r\n }\r\n & th {\r\n flex: 1;\r\n text-align: left;\r\n align-items: center;\r\n padding: 0 10px;\r\n word-break: normal;\r\n }\r\n}\r\n`;\r\n\r\nexport const Title = styled.h1`\r\n font-size: 1.25em;\r\n color: #363BC4;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n`;\r\n\r\nexport const NotyIconStyle = styled.div`\r\n width: 180px;\r\n position: relative;\r\n display: inline;\r\n`;\r\n\r\nexport const NotyNumStyle = styled.div`\r\n position: absolute;\r\n right: 0px;\r\n top: -10px;\r\n background-color: #363BC4;\r\n font-size: 11px;\r\n color: white;\r\n display: inline;\r\n padding: 2px 8px;\r\n border-radius: 25px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const ControlButton = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: 160px;\r\n height: 40px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: space-between;\r\n padding: 10px 12px;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n`;\r\n\r\nexport const ControlButtonIcon = styled.img<{ isActive?: boolean, status?: string }>`\r\n width: 13%;\r\n ${({ isActive }) => (isActive ? 'filter: brightness(10)' : '')};\r\n ${({ status }) => (status === 'ONLINE' ? '' : 'filter: contrast(0)')};\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n text-decoration: underline;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder};\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const IconWrapper = styled.div<{ width?, height? }>(\r\n ({ width, height }) => `\r\n display: inline-block;\r\n width: ${width || '19'}px;\r\n height: ${height || '25'}px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: ${width}px;\r\n height: ${height}px;\r\n }\r\n`,\r\n);\r\n\r\nexport const ExportBtn = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n align-items: center;\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-radius: 10px;\r\n padding: 8px 10px;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n svg path {\r\n fill: white !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n }\r\n .react-datepicker__month-wrapper {\r\n display: flex;\r\n text-align: center;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .react-datepicker__month .react-datepicker__month-text, .react-datepicker__month .react-datepicker__quarter-text {\r\n padding: 5px;\r\n }\r\n\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n`;\r\n\r\nexport const InfoGraphCont = styled.div`\r\n @media only screen and (max-width: 1050px) {\r\n width: 100%;\r\n margin-left: 0px;\r\n }\r\n width: 60%;\r\n margin-left: 40px;\r\n`;\r\n\r\nexport const ButtonAddAssociationsDal = styled.div`\r\n display: flex;\r\n align-items: center;\r\n flex-direction: column;\r\n width: 200px;\r\n @media (max-width: 767px) {\r\n width: 100%;\r\n margin-bottom: 40px;\r\n }\r\n`;\r\n\r\nexport const ContainerInfoIlumItem = styled.div`\r\n width: 100%;\r\n display: flex;\r\n gap: 10px;\r\n flex-wrap: wrap;\r\n justify-content: space-between;\r\n padding-right: 10px;\r\n @media (max-width: 767px) {\r\n flex-direction: column;\r\n }\r\n`;\r\n\r\nexport const ContainerUseIndex = styled.div`\r\n margin: 30px;\r\n @media (max-width: 767px) {\r\n margin: 10px;\r\n }\r\n`;\r\n\r\nexport const TextPNoMargin = styled.p`\r\n font-weight: bold;\r\n font-size: medium;\r\n @media (max-width: 767px) {\r\n font-size: small;\r\n }\r\n`;\r\n\r\nexport const TextPMargin = styled.p`\r\n font-weight: bold;\r\n font-size: medium;\r\n margin: 30px;\r\n @media (max-width: 767px) {\r\n font-size: small;\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nexport const ContainerInfoIndexUse = styled.div`\r\n display: flex;\r\n margin-bottom: 15px;\r\n margin-left: 28px;\r\n flex-wrap: wrap;\r\n`;\r\n\r\nexport const ContainerWithBorderInfo = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n @media (max-width: 767px) {\r\n border-bottom: 1px solid #D1D1D1;\r\n width: 100%;\r\n margin: 20px 0px;\r\n padding: 0px 20px;\r\n }\r\n`;\r\n\r\nexport const ContainerGraphicIndexUsage = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n border-left: 7px solid ${colors.BlueSecondary};\r\n border: 1px solid #d7d7d7;\r\n padding: 30px;\r\n margin: 10px 0px;\r\n @media (max-width: 767px) {\r\n padding: 15px;\r\n }\r\n`;\r\n\r\nexport const ContainerDalTree = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n align-items: left;\r\n border-right: 1px solid lightgray;\r\n width: 30%;\r\n @media (max-width: 1270px) {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nexport const ContainerInfoDalProfoile = styled.div`\r\n display: flex;\r\n width: 70%;\r\n @media (max-width: 1270px) {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nexport const FlexRowColumn = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n flex-direction: row;\r\n @media (max-width: 767px) {\r\n flex-direction: column;\r\n }\r\n`;\r\n\r\nexport const FlexRowColumn1250 = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n flex-direction: row;\r\n @media (max-width: 1250px) {\r\n flex-direction: column;\r\n }\r\n`;\r\n","import styled from 'styled-components';\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 20px;\r\n height: 20px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 17px;\r\n height: 17px;\r\n }\r\n`;\r\n\r\nexport const IconBiggerWrapper = styled.div`\r\n display: inline-block;\r\n width: 20px;\r\n height: 20px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 16px;\r\n height: 16px;\r\n }\r\n`;\r\n","import { useState } from 'react';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { Flex } from 'reflexbox';\r\nimport { IconWrapper, IconBiggerWrapper } from './styles';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { AssetConnection } from 'components/AssetConnection';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport {\r\n ChipIcon,\r\n UtilityIcon,\r\n LightOnIcon,\r\n BatteryIcon,\r\n EletricNetworkIcon,\r\n NobreakOffIcon,\r\n InfoIcon,\r\n LightOffIcon,\r\n} from '../../icons';\r\nimport { colors } from '../../styles/colors';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\ninterface ComponentProps {\r\n utils: {\r\n ID: number,\r\n ILLUMINATION_ID?: number\r\n NOBREAK_ID?: number\r\n NAME: string,\r\n UNIT_ID: number,\r\n DAL_ID?: number,\r\n DMT_CODE?: string,\r\n DAL_CODE?: string,\r\n DAT_CODE?: string\r\n GRID_VOLTAGE?: number,\r\n GRID_CURRENT?: number,\r\n PORT?: number\r\n FEEDBACK?: number\r\n selected: boolean\r\n CIRCUIT_ID?: number\r\n APPLICATION: string\r\n STATUS: string\r\n }[]\r\n DEV_ID: string\r\n isDevSelected: boolean,\r\n isUtilSelected: boolean,\r\n onHandleSelectCard,\r\n lastTelemetry?: null | { Feedback: boolean[] },\r\n}\r\n\r\nexport const UtilityTree = (props: ComponentProps): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n const [state, render, setState] = useStateVar(() => ({\r\n utils: props.utils,\r\n deviceSelected: props.isDevSelected,\r\n utilSelected: props.isUtilSelected,\r\n larguraPage: window.innerWidth,\r\n }));\r\n document.body.onresize = function () {\r\n setState({ larguraPage: document.body.clientWidth });\r\n };\r\n\r\n const utilityStatus = {\r\n Nobreak: {\r\n 'Rede Elétrica': {\r\n icon: ,\r\n label: t('redeEletrica'),\r\n },\r\n Bateria: {\r\n icon: ,\r\n label: t('bateria'),\r\n },\r\n Desligado: {\r\n icon: ,\r\n label: t('desligadoMin'),\r\n },\r\n Indisponível: {\r\n icon: ,\r\n label: t('semInformacao'),\r\n },\r\n },\r\n Illumination: {\r\n Ligado: {\r\n icon: ,\r\n label: t('ligadoMinusculo'),\r\n },\r\n Desligado: {\r\n icon: ,\r\n label: t('desligadoMin'),\r\n },\r\n Indisponível: {\r\n icon: ,\r\n label: t('semInformacao'),\r\n },\r\n },\r\n };\r\n const feedbacks = props.lastTelemetry?.Feedback;\r\n\r\n // position -2 means selected device\r\n function selectCard(position: number) {\r\n state.utils.forEach((util, index) => util.selected = position === index);\r\n state.deviceSelected = position === -2;\r\n props.onHandleSelectCard(position);\r\n render();\r\n }\r\n\r\n function borderCard(isSelected: boolean) {\r\n return !isSelected ? '1px solid lightgrey' : '2px solid #363BC4';\r\n }\r\n\r\n function borderLeftCard(isSelected: boolean) {\r\n return !isSelected ? '1px solid lightgrey' : '4px solid #363BC4';\r\n }\r\n\r\n function cardRootDescription(name: string|null, maxSize: number, extraInfo?: string) {\r\n if (!name) return null;\r\n const overExtended = name.length > maxSize;\r\n const nameDisplay = !overExtended ? name : `${name.substring(0, maxSize)}...`;\r\n return (\r\n <>\r\n
\r\n {nameDisplay}\r\n {extraInfo && {extraInfo}}\r\n
\r\n {overExtended && (\r\n \r\n \r\n {name}\r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n function formatItemIcon(type: string) {\r\n switch (type) {\r\n case 'Device': return ;\r\n case 'Utility': return ;\r\n default: return null;\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n 767 ? '400px' : 'auto'}\r\n style={{\r\n backgroundColor: '#F5F5F5',\r\n overflow: 'auto',\r\n marginLeft: '2px',\r\n width: '100%',\r\n padding: '20px',\r\n }}\r\n >\r\n \r\n selectCard(-2)}\r\n maxWidth={355}\r\n >\r\n \r\n \r\n ▼\r\n \r\n \r\n \r\n \r\n {formatItemIcon('Device')}\r\n \r\n \r\n \r\n {cardRootDescription(props.DEV_ID, 36)}\r\n \r\n \r\n \r\n {state.utils.map((util, index) => (\r\n !util.CIRCUIT_ID\r\n && (\r\n \r\n
\r\n
\r\n selectCard(index)}\r\n >\r\n \r\n \r\n {formatItemIcon('Utility')}\r\n \r\n \r\n \r\n \r\n {cardRootDescription(`${util.NAME}`, 33, util.NOBREAK_ID ? `${util.DAT_CODE ?? '-'} / ${util.DMT_CODE ?? '-'}` : undefined)}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {util.DMT_CODE\r\n && (\r\n \r\n {utilityStatus[util.APPLICATION] && utilityStatus[util.APPLICATION][util.STATUS] ? utilityStatus[util.APPLICATION][util.STATUS].icon : utilityStatus[util.APPLICATION]['Indisponível'].icon}\r\n \r\n )}\r\n {util.DAL_CODE\r\n && (\r\n \r\n {util.FEEDBACK && (\r\n <>\r\n {feedbacks && feedbacks[util.FEEDBACK - 1] ? (\r\n \r\n ) : }\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n \r\n {(!(utilityStatus[util.APPLICATION] && utilityStatus[util.APPLICATION][util.STATUS]) || util.STATUS === 'Indisponível')\r\n && (\r\n \r\n
\r\n {util.APPLICATION === 'Nobreak' && {t('semInfoNobreakDmt')}}\r\n {util.APPLICATION === 'Illumination' && {t('semInfoIluminacaoDmt')}}\r\n
\r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n )\r\n ))}\r\n \r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\n\r\nimport { CalendarIcon, ExportWorksheetIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\nimport { Select } from 'components';\r\nimport { Link } from 'react-router-dom';\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.Pink200};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.Pink200};\r\n border: 1px double ${colors.Pink200};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.Pink400};\r\n border: 1px double ${colors.Pink400};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.Pink200};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.Pink400};\r\n }\r\n`;\r\n\r\nexport const ContainerSimcardsProfileInfo = styled.div`\r\n display: flex;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n margin-bottom: 20px;\r\n @media (max-width: 476px) {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 12px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const PageTitle = styled.div`\r\n font-family: Inter;\r\n font-style: normal;\r\n font-weight: 600;\r\n font-size: 18px;\r\n color: ${colors.Black};\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n`;\r\n\r\nexport const BtnFilter = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.BlueSecondary};\r\n margin-left: 10px;\r\n font-weight: 600;\r\n border-radius: 5px;\r\n height: 51px;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n margin-left: 10px;\r\n text-decoration: underline;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const Text = styled.text`\r\ncolor: ${colors.Black};\r\n`;\r\n\r\nexport const BtnExport = styled.div`\r\n cursor: pointer;\r\n color: #363BC4;\r\n padding: 14px 20px;\r\n border: 1px solid ${colors.GreyLight};\r\n font-weight: 400;\r\n border-radius: 12px;\r\n height: 41px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n width: fit-content;\r\n :hover {\r\n color: ${colors.White};\r\n background-color: #363BC4;\r\n ${Text} {\r\n color: ${colors.White}\r\n }\r\n }\r\n`;\r\n\r\nexport const ExportWorksheet = styled(ExportWorksheetIcon)(\r\n () => `\r\n color: #363BC4\r\n`,\r\n);\r\n\r\nexport const CustomSelectDutsReference = styled(Select)`\r\n margin-top: 5px;\r\n`;\r\n\r\nexport const ElevatedCard = styled.div`\r\n padding: 32px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const TableBasic = styled.table`\r\n white-space: nowrap;\r\n thead {\r\n z-index: 0 !important;\r\n }\r\n & td,th {\r\n padding: 3px 10px;\r\n border: 1px solid grey;\r\n }\r\n`;\r\n\r\nexport const CustomSelect = styled(Select)`\r\n margin-bottom: 20px;\r\n`;\r\n\r\nexport const TextLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n color: #5d5d5d;\r\n`;\r\n\r\nexport const OverLay = styled.div`\r\n position: absolute;\r\n display: flex;\r\n background-color: #eceaea;\r\n width: 100%;\r\n height: 100%;\r\n z-index: 10000000;\r\n opacity: 0.4;\r\n filter: alpha(opacity=40);\r\n top: 0;\r\n left: 0;\r\n`;\r\n\r\nexport const IconWrapper = styled.div<{ width?, height? }>(\r\n ({ width, height }) => `\r\n display: inline-block;\r\n width: ${width || '19'}px;\r\n height: ${height || '25'}px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: ${width}px;\r\n height: ${height}px;\r\n }\r\n`,\r\n);\r\n\r\nexport const IconWrapperSearch = styled.div`\r\n display: inline-block;\r\n width: 18px;\r\n height: 18px;\r\n margin-top: 15px;\r\n margin-right: 15px;\r\n svg {\r\n width: 18px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const ContainerDuts = styled.div`\r\n max-width: 80%;\r\n height: auto;\r\n padding: 10px;\r\n margin: 5px;\r\n border: 1px solid #DADADA;\r\n border-radius: 5px;\r\n display: flex;\r\n flex-direction: column;\r\n position: relative;\r\n`;\r\n\r\nexport const DutItemStyle = styled.div`\r\n display: flex;\r\n width: 100%;\r\n gap: 20px;\r\n justify-content: space-between;\r\n align-items: center;\r\n svg {\r\n height: 20px;\r\n }\r\n div {\r\n display: flex;\r\n width: 100%;\r\n justify-content: space-between;\r\n gap: 10px;\r\n p {\r\n max-width: 50ch;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n white-space: nowrap;\r\n }\r\n h6 {\r\n font-size: 11px;\r\n font-weight: bold;\r\n min-width: 86px;\r\n }\r\n }\r\n @media (max-width: 926px) {\r\n div {\r\n width: 90%;\r\n }\r\n }\r\n @media (max-width: 700px) {\r\n div {\r\n width: 80%;\r\n }\r\n }\r\n`;\r\n\r\nexport const HeaderVisibility = styled.div`\r\n display: flex;\r\n padding-left: 45px;\r\n padding-right: 60px;\r\n width: 100%;\r\n justify-content: space-between;\r\n font-style: normal;\r\n font-weight: 700;\r\n font-size: 11px;\r\n line-height: 13px;\r\n color: #5B5B5B;\r\n p{\r\n margin-right: 29px;\r\n margin-bottom: 10px;\r\n }\r\n position: absolute;\r\n top: -21px;\r\n`;\r\n\r\nexport const UnderlineBtn = styled.span`\r\n text-decoration: underline;\r\n color: ${colors.BlueSecondary};\r\n line-height: 12px;\r\n font-size: 12px;\r\n :hover{\r\n color: ${colors.Blue500};\r\n }\r\n`;\r\n\r\nexport const Title = styled.h1`\r\n font-size: 1.5em;\r\n color: ${colors.Grey400};\r\n`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const Data = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-bottom: 16px;\r\n align-items: start;\r\n`;\r\nexport const DataText = styled.span<{ fontWeight? }>(\r\n ({ color = colors.Grey400, fontWeight = 'normal' }) => `\r\n font-size: 1em;\r\n font-weight: ${fontWeight};\r\n color: ${color};\r\n`,\r\n);\r\n\r\nexport const Separator = styled.div`\r\n width: 1px;\r\n background-color: #C4C4C4;\r\n display: flex;\r\n margin-left: 20px;\r\n margin-right: 20px;\r\n\r\n @media (max-width: 775px) {\r\n height: 1px;\r\n width: 100%;\r\n align-items: center;\r\n justify-content: center;\r\n margin-left: 0px;\r\n margin-right: 0px;\r\n margin-bottom: 20px;\r\n }\r\n`;\r\n\r\nexport const DocumentationContainer = styled.div`\r\n box-sizing: border-box;\r\n width: 100%;\r\n height: 218px;\r\n margin-bottom: 5px;\r\n overflow-x: hidden;\r\n overflow-y: scroll;\r\n border-radius: 5px;\r\n padding: 4px;\r\n border: 1px solid rgba(32, 35, 112, 0.20);\r\n background: #F8F8F8;\r\n div {\r\n display: flex;\r\n align-items: center;\r\n\r\n p {\r\n width: 100%;\r\n white-space: nowrap;\r\n overflow: hidden;\r\n text-overflow: ellipsis;\r\n margin: 0px;\r\n }\r\n }\r\n ::-webkit-scrollbar-track {\r\n background: #F8F8F8;\r\n }\r\n section {\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n height: 100%;\r\n border-radius: 5px;\r\n background: #F8F8F8;\r\n margin-left: 8px;\r\n text-align: center;\r\n h4 {\r\n color: #AEAEAE;\r\n font-family: Inter;\r\n font-size: 11px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: normal\r\n }\r\n h3 {\r\n color: #000;\r\n font-family: Inter;\r\n font-size: 13px;\r\n font-style: normal;\r\n font-weight: 500;\r\n line-height: normal;\r\n }\r\n svg {\r\n margin-bottom: 5px;\r\n }\r\n }\r\n`;\r\n\r\nexport const ExibInvisibleFile = styled.p`\r\n width: 100%;\r\n display: flex;\r\n justify-content: flex-end;\r\n svg {\r\n width: 10px;\r\n height: 10px;\r\n }\r\n`;\r\n\r\nexport const DocumentationContainerArea = styled.div`\r\n width: 100%;\r\n h4 {\r\n color: #363BC4;\r\n }\r\n button {\r\n max-width: 100px;\r\n }\r\n`;\r\n\r\nexport const SelectAndDownloadArea = styled.div`\r\n display: flex;\r\n width: 100%;\r\n justify-content: space-between;\r\n align-items: center;\r\n div {\r\n display: flex;\r\n align-items: center;\r\n p {\r\n margin: 0px;\r\n }\r\n }\r\n`;\r\n\r\nexport const ItemDoc = styled.div`\r\n gap: 10px;\r\n padding: 10px;\r\n color: #464555;\r\n font-family: Inter;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: normal;\r\n svg {\r\n width: 24px;\r\n height: 24px;\r\n }\r\n div {\r\n gap: 16px;\r\n div {\r\n svg {\r\n width: 14px;\r\n height: 14px;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const ItemDocDelete = styled.div`\r\n gap: 10px;\r\n padding: 10px;\r\n color: gray;\r\n font-family: Inter;\r\n font-size: 14px;\r\n font-style: normal;\r\n font-weight: 400;\r\n line-height: normal;\r\n svg {\r\n width: 24px;\r\n height: 24px;\r\n color: gray;\r\n }\r\n div {\r\n gap: 16px;\r\n div {\r\n svg {\r\n width: 14px;\r\n height: 14px;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const InibVisibilityAddDoc = styled.div`\r\n display: flex;\r\n margin: 0px 22px 22px;\r\n font-size: 12px;\r\n flex-direction: column;\r\n div {\r\n display: flex;\r\n align-items: center;\r\n width: 100%;\r\n gap: 5px;\r\n p {\r\n margin: 0;\r\n }\r\n span {\r\n span {\r\n padding: 0;\r\n width: 10px;\r\n height: 10px;\r\n margin-left: 6px;\r\n }\r\n svg {\r\n width: 15px;\r\n height: 15px;\r\n margin-left: 6px;\r\n }\r\n }\r\n button {\r\n width: 200px;\r\n }\r\n h6 {\r\n color: blue;\r\n font-size: 10px;\r\n text-decoration: underline;\r\n }\r\n }\r\n section {\r\n display: flex;\r\n align-items: end;\r\n justify-content: space-between;\r\n margin-top: 10px;\r\n text-align: center;\r\n h3 {\r\n text-align: center;\r\n }\r\n button {\r\n width: 200px;\r\n padding: 5px;\r\n }\r\n h6 {\r\n color: blue;\r\n font-size: 11px;\r\n text-decoration: underline;\r\n margin: 0;\r\n }\r\n svg {\r\n width: 20px;\r\n height: 20px;\r\n }\r\n }\r\n`;\r\n\r\nexport const BoxResponsive = styled.div`\r\n width: 100%;\r\n display: flex;\r\n\r\n @media (max-width: 775px) {\r\n flex-direction: column;\r\n }\r\n`;\r\n\r\nexport const EditAreaDocs = styled.div`\r\n height: 150px;\r\n border: 2px dashed #BFBFBF;\r\n margin: 22px 22px 22px 22px;\r\n align-items: center;\r\n justify-content: center;\r\n display: flex;\r\n gap: 5px;\r\n padding: 10px;\r\n textarea {\r\n width: 100%;\r\n height: 131px;\r\n border-radius: 3px;\r\n resize: none;\r\n }\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${(props) => props.color ?? colors.Grey400};\r\n margin: 0 8px 0 8px;\r\n &:hover {\r\n text-decoration: underline;\r\n color: ${colors.Blue300};\r\n }\r\n`;\r\n\r\nexport const ObservationAreaContainer = styled.div`\r\n h4 {\r\n color: #363BC4;\r\n }\r\n && div:first-child {\r\n display: flex;\r\n justify-content: space-between;\r\n margin-bottom: 15px;\r\n }\r\n`;\r\n\r\nexport const TitleInfoObservation = styled.div`\r\n display: grid;\r\n grid-template: repeat(1, 1fr) / 3fr repeat(2, 1fr);\r\n padding-bottom: 10px;\r\n width: 100%;\r\n border-bottom: 1px solid #C4C4C4;\r\n span {\r\n color: #77818B;\r\n font-size: 10px;\r\n font-family: Inter;\r\n font-weight: 700;\r\n }\r\n`;\r\n\r\nexport const ContainerObservationsItems = styled.div`\r\n display: grid;\r\n grid-template: repeat(1, 1fr) / 3fr repeat(2, 1fr);\r\n margin: 5px 0px;\r\n align-items: start;\r\n width: 100%;\r\n div {\r\n span {\r\n width: 95%;\r\n }\r\n }\r\n @media (max-width: 768px) {\r\n grid-template: repeat(1, 1fr) / repeat(2, 1fr);\r\n border-bottom: 1px solid lightgray;\r\n }\r\n`;\r\n\r\nexport const ContainerEditDeleteObs = styled.div`\r\n display: flex;\r\n gap: 20px;\r\n .edit {\r\n width: 20px;\r\n height: 18px;\r\n }\r\n`;\r\n\r\nexport const ContainerObservation = styled.div`\r\n display: flex;\r\n align-items: start;\r\n gap: 10px;\r\n justify-content: flex-start;\r\n width: 95%;\r\n`;\r\n\r\nexport const TextObsUnit = styled.span`\r\ndisplay: -webkit-box;\r\noverflow: hidden;\r\n-webkit-box-orient: vertical;\r\n`;\r\n\r\nexport const TextObsUnitExpand = styled.span`\r\ndisplay: -webkit-box;\r\noverflow: hidden;\r\n-webkit-box-orient: vertical;\r\n`;\r\n\r\nexport const IconsContainerObs = styled.div`\r\n display: flex;\r\n gap: 20px;\r\n @media (max-width: 768px) {\r\n flex-direction: column;\r\n gap: 0px;\r\n\r\n }\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n span:first-of-type {\r\n top: calc(50% - 30px) !important;\r\n }\r\n\r\n span:nth-child(3) {\r\n top: 20% !important;\r\n }\r\n`;\r\n\r\nexport const ContainerHtmlObs = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n ul {\r\n margin: 0px;\r\n padding-inline-start: 20px;\r\n }\r\n p {\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nexport const TextProgressBar = styled.span`\r\n flex-shrink: 0;\r\n vertical-align: middle;\r\n line-height: 42px;\r\n color: ${colors.Grey400};\r\n`;\r\n","type WarningIconProps = {\r\n size?: string;\r\n}\r\n\r\nexport const SmallWarningIcon = ({\r\n size = '20px', ...props\r\n}: WarningIconProps): JSX.Element => (\r\n \r\n \r\n \r\n);\r\n","import { set } from 'date-fns';\r\nimport { TFunction } from 'i18next';\r\nimport { toast } from 'react-toastify';\r\n\r\nexport function validateStringTimeInterval(\r\n interval: {startTime?: string, endTime?: string},\r\n t: TFunction<'translation', undefined, 'translation'>,\r\n): boolean {\r\n const { endTime, startTime } = interval;\r\n\r\n if (!startTime || !/^[0-2]\\d:[0-5]\\d$/.test(startTime)) {\r\n toast.error(t('erroHorarioInvalido'));\r\n return false;\r\n }\r\n if (!endTime || !/^[0-2]\\d:[0-5]\\d$/.test(endTime)) {\r\n toast.error(t('erroHorarioInvalido'));\r\n return false;\r\n }\r\n\r\n const startDate = set(new Date(), {\r\n hours: Number(startTime.split(':')[0]),\r\n minutes: Number(startTime.split(':')[1]),\r\n seconds: 0,\r\n milliseconds: 0,\r\n });\r\n\r\n const endDate = set(new Date(), {\r\n hours: Number(endTime.split(':')[0]),\r\n minutes: Number(endTime.split(':')[1]),\r\n seconds: 0,\r\n milliseconds: 0,\r\n });\r\n\r\n if (startDate >= endDate) {\r\n toast.error(t('erroHorarioInicioMenorHorarioFim'));\r\n return false;\r\n }\r\n\r\n return true;\r\n}\r\n","import {\r\n apiCall,\r\n} from '~/providers';\r\nimport {\r\n NotyIconStyle, NotyNumStyle, ControlButton, ControlButtonIcon, WeekDayButton, Sidebar, SchedCardContainer, TextLine, DefaultModeContainer,\r\n} from './styles';\r\nimport {\r\n ModalWindow,\r\n Button,\r\n Loader,\r\n Input,\r\n Checkbox,\r\n RadioButton,\r\n} from '~/components';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { toast } from 'react-toastify';\r\nimport { ChangeEvent, useEffect } from 'react';\r\nimport { colors } from '~/styles/colors';\r\nimport { ToggleSwitchMini } from 'components/ToggleSwitch';\r\nimport {\r\n EditIcon,\r\n CheckboxIcon,\r\n ProgIcon,\r\n} from '~/icons';\r\nimport { SmallTrashIcon } from '~/icons/Trash';\r\nimport img_schedule from '~/assets/img/cool_ico/schedule.svg';\r\n\r\nimport { t } from 'i18next';\r\nimport { Select } from '~/components/NewSelect';\r\nimport { Label } from '../styles';\r\nimport { AxiosError } from 'axios';\r\nimport { FullProg_v4 } from '~/providers/types';\r\nimport { UnderlineBtn } from '../Units/UnitProfile/styles';\r\nimport { SmallWarningIcon } from '~/icons/WarningIcon';\r\nimport { useHistory, useRouteMatch } from 'react-router-dom';\r\nimport { BtnClean } from '../DALs/styles';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { validateStringTimeInterval } from '~/helpers/validateTime';\r\n\r\nexport interface ScheduleInfo {\r\n ID?: number;\r\n DAL_ID?: number;\r\n ILLUMINATION_ID: number;\r\n TITLE: string;\r\n ACTIVE: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n DAYS: string;\r\n STATUS: string;\r\n DEFAULT_MODE?: string;\r\n DELETE?: boolean;\r\n INSERT?: boolean;\r\n EDIT?: boolean;\r\n}\r\n\r\nexport interface ExceptionInfo {\r\n ID?: number;\r\n DAL_ID?: number;\r\n ILLUMINATION_ID: number;\r\n TITLE: string;\r\n ACTIVE: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n EXCEPTION_DATE: string;\r\n REPEAT_YEARLY: string;\r\n STATUS: string;\r\n DELETE?: boolean;\r\n INSERT?: boolean;\r\n EDIT?: boolean;\r\n}\r\n\r\nexport const parseDamProgToDalProg = (damProg: FullProg_v4) => {\r\n const uniqueProgs = {};\r\n for (const day of Object.keys(damProg.week)) {\r\n if (uniqueProgs[JSON.stringify(damProg.week[day])]) {\r\n uniqueProgs[JSON.stringify(damProg.week[day])].days.push(day);\r\n } else {\r\n uniqueProgs[JSON.stringify(damProg.week[day])] = {\r\n days: [day],\r\n permission: damProg.week[day].permission,\r\n start: damProg.week[day].start,\r\n end: damProg.week[day].end,\r\n };\r\n }\r\n }\r\n const scheds = [] as {\r\n ID: number;\r\n DAL_ID: number;\r\n ILLUMINATION_ID: number;\r\n TITLE: string;\r\n ACTIVE: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n DAYS: string;\r\n STATUS: string;\r\n DEFAULT_MODE?: string;\r\n }[];\r\n let index = 0;\r\n for (const sched of Object.keys(uniqueProgs)) {\r\n const schedBase = {\r\n ID: null as any,\r\n DAL_ID: null as any,\r\n ILLUMINATION_ID: null as any,\r\n TITLE: `Programação ${index}`,\r\n ACTIVE: '1',\r\n BEGIN_TIME: '',\r\n END_TIME: '',\r\n DAYS: '',\r\n STATUS: '1',\r\n };\r\n schedBase.BEGIN_TIME = uniqueProgs[sched].start;\r\n schedBase.END_TIME = uniqueProgs[sched].end;\r\n schedBase.STATUS = uniqueProgs[sched].permission === 'allow' ? '1' : '0';\r\n\r\n const days = {\r\n mon: false,\r\n tue: false,\r\n wed: false,\r\n thu: false,\r\n fri: false,\r\n sat: false,\r\n sun: false,\r\n };\r\n for (const day of uniqueProgs[sched].days) {\r\n days[day] = true;\r\n }\r\n schedBase.DAYS = JSON.stringify(days);\r\n\r\n index++;\r\n scheds.push(schedBase);\r\n }\r\n\r\n const excepts = [] as {\r\n ID: number;\r\n DAL_ID: number;\r\n ILLUMINATION_ID: number;\r\n TITLE: string;\r\n ACTIVE: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n EXCEPTION_DATE: string;\r\n REPEAT_YEARLY: string;\r\n STATUS: string;\r\n DEFAULT_MODE?: string;\r\n }[];\r\n index = 0;\r\n if (damProg.exceptions) {\r\n for (const date of Object.keys(damProg.exceptions)) {\r\n const [_, month, day] = date.split('-');\r\n const exceptBase = {\r\n ID: null as any,\r\n DAL_ID: null as any,\r\n ILLUMINATION_ID: null as any,\r\n TITLE: `Exceção ${index} `,\r\n ACTIVE: '1',\r\n BEGIN_TIME: damProg.exceptions[date].start,\r\n END_TIME: damProg.exceptions[date].end,\r\n EXCEPTION_DATE: `${day.padStart(2, '0')}/${month.padStart(2, '0')}`,\r\n REPEAT_YEARLY: '1',\r\n STATUS: damProg.exceptions[date].permission === 'allow' ? '1' : '0',\r\n };\r\n index++;\r\n excepts.push(exceptBase);\r\n }\r\n }\r\n\r\n return { scheds, excepts };\r\n};\r\n\r\nexport const DALSchedule = (props: {\r\n deviceCode: string,\r\n illumId: number,\r\n illumName: string,\r\n canEdit: boolean,\r\n isModal: boolean,\r\n styledIcon?: boolean,\r\n getScheds?: (scheds, exceptions) => void,\r\n onlyIcon?: boolean,\r\n editDefaultMode?: (defaultMode: string, illuminationId: number) => void,\r\n defaultMode?: string,\r\n isEditDAL?: boolean,\r\n isEditUtility?: boolean,\r\n handleHasEdited?: () => void,\r\n exceededExceptionLimit?: boolean\r\n setExceededExceptionLimit?: (value: boolean) => void,\r\n}): JSX.Element => {\r\n const {\r\n deviceCode, illumId, illumName,\r\n } = props;\r\n const { t } = useTranslation();\r\n const match = useRouteMatch();\r\n const history = useHistory();\r\n const [state, render, setState] = useStateVar({\r\n dalScheds: null as null | ScheduleInfo[],\r\n larguraPage: window.innerWidth,\r\n openModal: null as null | string,\r\n linkBase: match.url.split('/analise')[0],\r\n modalEditSchedule: null as null | {\r\n schedId: number | undefined\r\n addEdit: 'Add' | 'Edit'\r\n title: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon?: boolean\r\n tue?: boolean\r\n wed?: boolean\r\n thu?: boolean\r\n fri?: boolean\r\n sat?: boolean\r\n sun?: boolean\r\n }\r\n status: boolean\r\n index: number\r\n },\r\n dalExceptions: null as null | ExceptionInfo[],\r\n modalEditException: null as null | {\r\n exceptionId: number | undefined\r\n addEdit: 'Add' | 'Edit'\r\n title: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n status: boolean\r\n exceptionDate: string\r\n repeatYearly: boolean\r\n index: number\r\n },\r\n showScheds: false,\r\n showExceptions: false,\r\n loadingSchedule: false,\r\n loading: true,\r\n loadingSet: false,\r\n totalScheds: 0,\r\n dalSchedsToEdit: { } as {[key: string]: {[key: string]: {schedId: number, delete: boolean, days: string}[]}},\r\n dalExceptsToDelete: { } as {[key: string]: {[key: string]: number[]}},\r\n illumWithConflict: false,\r\n });\r\n\r\n document.body.onresize = function () {\r\n setState({ larguraPage: document.body.clientWidth });\r\n };\r\n\r\n async function getScheds() {\r\n try {\r\n if (deviceCode.startsWith('DAL')) {\r\n const { scheds, exceptions } = await apiCall('/dal/get-dal-scheds', { DAL_CODE: deviceCode, ILLUMINATION_ID: illumId });\r\n state.dalScheds = scheds.filter((sched) => sched.ILLUMINATION_ID === illumId);\r\n state.dalExceptions = exceptions.filter((exception) => exception.ILLUMINATION_ID === illumId);\r\n if (props.getScheds && (state.dalScheds.length || state.dalExceptions.length)) props.getScheds(state.dalScheds, state.dalExceptions);\r\n render();\r\n } else if (deviceCode.startsWith('DAM')) {\r\n const { current } = await apiCall('/dam/get-sched', { damId: deviceCode });\r\n const damSched = current;\r\n\r\n const { scheds, excepts } = parseDamProgToDalProg(damSched);\r\n state.dalScheds = scheds;\r\n state.dalExceptions = excepts;\r\n render();\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n getScheds();\r\n }, [illumId]);\r\n\r\n function editAddProgramming(index: number) {\r\n if (state.showExceptions) editAddException(index);\r\n else editAddSched(index);\r\n }\r\n\r\n function generateDaysObject(days) {\r\n return {\r\n mon: days ? days.mon : false,\r\n tue: days ? days.tue : false,\r\n wed: days ? days.wed : false,\r\n thu: days ? days.thu : false,\r\n fri: days ? days.fri : false,\r\n sat: days ? days.sat : false,\r\n sun: days ? days.sun : false,\r\n };\r\n }\r\n\r\n function editAddSched(index: number, item?: ScheduleInfo) {\r\n try {\r\n const days = item?.DAYS && JSON.parse(item.DAYS);\r\n state.modalEditSchedule = {\r\n schedId: item?.ID,\r\n addEdit: item ? 'Edit' : 'Add',\r\n title: (item?.TITLE) ?? '',\r\n active: item ? (item.ACTIVE === '1') : true,\r\n start_time: item ? item.BEGIN_TIME : '',\r\n start_time_error: '',\r\n end_time: item ? item.END_TIME : '',\r\n end_time_error: '',\r\n selectedDays: !state.showExceptions ? generateDaysObject(days) : {},\r\n status: item ? !!(item && item.STATUS === '1') : true,\r\n index,\r\n };\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n function editAddException(index: number, item?: ExceptionInfo) {\r\n try {\r\n state.modalEditException = {\r\n exceptionId: item?.ID,\r\n addEdit: item ? 'Edit' : 'Add',\r\n title: (item?.TITLE) ?? '',\r\n active: item ? !!(item && item.ACTIVE === '1') : true,\r\n start_time: item ? item.BEGIN_TIME : '',\r\n start_time_error: '',\r\n end_time: item ? item.END_TIME : '',\r\n end_time_error: '',\r\n exceptionDate: (item && item.EXCEPTION_DATE) || '',\r\n repeatYearly: !!(item && item.REPEAT_YEARLY === '1'),\r\n status: item ? !!(item && item.STATUS === '1') : true,\r\n index,\r\n };\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n function formatStringToDate(str: string) {\r\n return `${str.substring(6, 10)}-${str.substring(3, 5)}-${str.substring(0, 2)}`;\r\n }\r\n\r\n async function addNewSched() {\r\n if (!state.modalEditSchedule) return;\r\n if (props.getScheds) {\r\n state.dalScheds?.push({\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditSchedule.title,\r\n ACTIVE: state.modalEditSchedule.active ? '1' : '0',\r\n BEGIN_TIME: state.modalEditSchedule.start_time,\r\n END_TIME: state.modalEditSchedule.end_time,\r\n DAYS: JSON.stringify(state.modalEditSchedule.selectedDays),\r\n STATUS: state.modalEditSchedule.status ? '1' : '0',\r\n INSERT: true,\r\n });\r\n props.getScheds(state.dalScheds, state.dalExceptions);\r\n return;\r\n }\r\n if (props.canEdit && !props.getScheds) {\r\n state.dalScheds?.push({\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditSchedule.title,\r\n ACTIVE: state.modalEditSchedule.active ? '1' : '0',\r\n BEGIN_TIME: state.modalEditSchedule.start_time,\r\n END_TIME: state.modalEditSchedule.end_time,\r\n DAYS: JSON.stringify(state.modalEditSchedule.selectedDays),\r\n STATUS: state.modalEditSchedule.status ? '1' : '0',\r\n INSERT: true,\r\n });\r\n render();\r\n }\r\n }\r\n\r\n async function editSched(index) {\r\n if (!state.modalEditSchedule) return;\r\n if (props.getScheds) {\r\n const sched = state.dalScheds?.[index];\r\n state.dalScheds?.splice(index, 1, {\r\n ...sched,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditSchedule.title,\r\n ACTIVE: (state.modalEditSchedule?.active ? '1' : '0'),\r\n BEGIN_TIME: (state.modalEditSchedule?.start_time),\r\n END_TIME: (state.modalEditSchedule?.end_time),\r\n DAYS: JSON.stringify(state.modalEditSchedule.selectedDays),\r\n STATUS: (state.modalEditSchedule?.status ? '1' : '0'),\r\n EDIT: true,\r\n });\r\n props.getScheds(state.dalScheds, state.dalExceptions);\r\n return;\r\n }\r\n\r\n if (props.canEdit && !props.getScheds) {\r\n const sched = state.dalScheds?.[index];\r\n state.dalScheds?.splice(index, 1, {\r\n ...sched,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditSchedule.title,\r\n ACTIVE: (state.modalEditSchedule?.active ? '1' : '0'),\r\n BEGIN_TIME: (state.modalEditSchedule?.start_time),\r\n END_TIME: (state.modalEditSchedule?.end_time),\r\n DAYS: JSON.stringify(state.modalEditSchedule.selectedDays),\r\n STATUS: (state.modalEditSchedule?.status ? '1' : '0'),\r\n EDIT: true,\r\n });\r\n render();\r\n }\r\n }\r\n\r\n async function saveEditNewSched(index) {\r\n try {\r\n // setState({ loadingSet: true });\r\n if (!state.modalEditSchedule) return;\r\n if (state.modalEditSchedule.title === '') return toast.error(t('erroDigiteNomeProgramacao'));\r\n if (!state.showExceptions && state.modalEditSchedule.selectedDays && Object.values(state.modalEditSchedule.selectedDays).every((item) => item === false)) {\r\n return toast.error(t('erroSelecionePeloMenosUmDia'));\r\n }\r\n\r\n if (!validateStringTimeInterval({\r\n startTime: state.modalEditSchedule.start_time,\r\n endTime: state.modalEditSchedule.end_time,\r\n }, t)) {\r\n return;\r\n }\r\n\r\n if (state.modalEditSchedule.addEdit === 'Add') {\r\n await addNewSched();\r\n } else if (state.modalEditSchedule.addEdit === 'Edit') {\r\n await editSched(index);\r\n }\r\n state.modalEditSchedule = null;\r\n // setState({ loadingSet: false });\r\n render();\r\n toast.success(t('sucessoAdicionarProgramacao'));\r\n } catch (err) {\r\n const error = err as AxiosError;\r\n toast.error(error?.response?.data);\r\n // setState({ loadingSet: false });\r\n }\r\n }\r\n\r\n async function addNewException() {\r\n if (!state.modalEditException) return;\r\n if (props.getScheds) {\r\n state.dalExceptions?.push({\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditException.title,\r\n ACTIVE: state.modalEditException.active ? '1' : '0',\r\n BEGIN_TIME: state.modalEditException.start_time,\r\n END_TIME: state.modalEditException.end_time,\r\n EXCEPTION_DATE: state.modalEditException.exceptionDate,\r\n REPEAT_YEARLY: state.modalEditException.repeatYearly ? '1' : '0',\r\n STATUS: state.modalEditException.status ? '1' : '0',\r\n INSERT: true,\r\n });\r\n props.getScheds(state.dalScheds, state.dalExceptions);\r\n return;\r\n }\r\n\r\n if (props.canEdit && !props.getScheds) {\r\n state.dalExceptions?.push({\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditException.title,\r\n ACTIVE: state.modalEditException.active ? '1' : '0',\r\n BEGIN_TIME: state.modalEditException.start_time,\r\n END_TIME: state.modalEditException.end_time,\r\n EXCEPTION_DATE: state.modalEditException.exceptionDate,\r\n REPEAT_YEARLY: state.modalEditException.repeatYearly ? '1' : '0',\r\n STATUS: state.modalEditException.status ? '1' : '0',\r\n INSERT: true,\r\n });\r\n render();\r\n }\r\n }\r\n\r\n async function editException(index) {\r\n if (!state.modalEditException) return;\r\n if (props.getScheds) {\r\n const exception = state.dalExceptions?.[index];\r\n state.dalExceptions?.splice(index, 1, {\r\n ...exception,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditException.title,\r\n ACTIVE: state.modalEditException.active ? '1' : '0',\r\n BEGIN_TIME: state.modalEditException?.start_time,\r\n END_TIME: state.modalEditException?.end_time,\r\n EXCEPTION_DATE: state.modalEditException.exceptionDate,\r\n REPEAT_YEARLY: state.modalEditException.repeatYearly ? '1' : '0',\r\n STATUS: state.modalEditException.status ? '1' : '0',\r\n EDIT: true,\r\n });\r\n props.getScheds(state.dalScheds, state.dalExceptions);\r\n return;\r\n }\r\n\r\n if (props.canEdit && !props.getScheds) {\r\n const exception = state.dalExceptions?.[index];\r\n state.dalExceptions?.splice(index, 1, {\r\n ...exception,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: illumId,\r\n TITLE: state.modalEditException.title,\r\n ACTIVE: state.modalEditException.active ? '1' : '0',\r\n BEGIN_TIME: state.modalEditException?.start_time,\r\n END_TIME: state.modalEditException?.end_time,\r\n EXCEPTION_DATE: state.modalEditException.exceptionDate,\r\n REPEAT_YEARLY: state.modalEditException.repeatYearly ? '1' : '0',\r\n STATUS: state.modalEditException.status ? '1' : '0',\r\n EDIT: true,\r\n });\r\n render();\r\n }\r\n }\r\n\r\n async function saveEditNewException(index) {\r\n try {\r\n if (!state.modalEditException) return;\r\n if (state.modalEditException.title === '') return toast.error(t('erroDigiteNomeProgramacao'));\r\n if ((state.modalEditException.exceptionDate.length !== 10 || state.modalEditException.exceptionDate.includes('_'))) {\r\n return toast.error(t('erroDataExcecaoObrigatoria'));\r\n }\r\n\r\n if (!validateStringTimeInterval({\r\n startTime: state.modalEditException.start_time,\r\n endTime: state.modalEditException.end_time,\r\n }, t)) {\r\n return;\r\n }\r\n\r\n if (state.modalEditException.addEdit === 'Add') {\r\n await addNewException();\r\n } else if (state.modalEditException.addEdit === 'Edit') {\r\n await editException(index);\r\n }\r\n state.modalEditException = null;\r\n render();\r\n toast.success(t('sucessoAdicionarProgramacao'));\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n async function deleteSchedule(sched: ScheduleInfo, index: number) {\r\n try {\r\n const { ID, ILLUMINATION_ID } = sched;\r\n if (props.getScheds) {\r\n const sched = state.dalScheds?.[index];\r\n // @ts-ignore\r\n state.dalScheds?.splice(index, 1, {\r\n ...sched,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID,\r\n DELETE: true,\r\n });\r\n render();\r\n props.getScheds(state.dalScheds, state.dalExceptions);\r\n return;\r\n }\r\n if (props.canEdit && !props.getScheds) {\r\n const sched = state.dalScheds?.[index];\r\n // @ts-ignore\r\n state.dalScheds?.splice(index, 1, {\r\n ...sched,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID,\r\n DELETE: true,\r\n });\r\n render();\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n async function deleteException(sched: ExceptionInfo, index: number) {\r\n try {\r\n const { ID, ILLUMINATION_ID } = sched;\r\n if (props.getScheds) {\r\n const except = state.dalExceptions?.[index];\r\n // @ts-ignore\r\n state.dalExceptions?.splice(index, 1, {\r\n ...except,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID,\r\n DELETE: true,\r\n });\r\n render();\r\n props.getScheds(state.dalScheds, state.dalExceptions);\r\n return;\r\n }\r\n\r\n if (props.canEdit && !props.getScheds) {\r\n const except = state.dalExceptions?.[index];\r\n // @ts-ignore\r\n state.dalExceptions?.splice(index, 1, {\r\n ...except,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID,\r\n DELETE: true,\r\n });\r\n render();\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n function showScheds() {\r\n try {\r\n state.showScheds = true;\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n function changeShowExceptions(value: boolean) {\r\n setState({ showExceptions: value });\r\n }\r\n\r\n function changeDefaultMode(defaultMode: string, illuminationId:number) {\r\n props.editDefaultMode && props.editDefaultMode(defaultMode, illuminationId);\r\n }\r\n\r\n function changeHasEdited() {\r\n props.handleHasEdited && props.handleHasEdited();\r\n }\r\n\r\n interface DaySched {\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n DAYS: string;\r\n ID?: number;\r\n }\r\n\r\n const getNewSchedDays = (convergence: DaySched,\r\n newSched: DaySched) => {\r\n let newDays;\r\n if (newSched?.ID) {\r\n newDays = JSON.parse(newSched.DAYS);\r\n const convergenceDays = JSON.parse(convergence.DAYS);\r\n for (const day of Object.keys(convergenceDays)) {\r\n if (convergenceDays[day]) newDays[day] = false;\r\n }\r\n } else if (convergence?.ID) {\r\n newDays = JSON.parse(convergence.DAYS);\r\n const convergenceDays = JSON.parse(newSched.DAYS);\r\n for (const day of Object.keys(convergenceDays)) {\r\n if (convergenceDays[day]) newDays[day] = false;\r\n }\r\n }\r\n\r\n return newDays;\r\n };\r\n\r\n function checkConvergence(\r\n currentScheds: DaySched[],\r\n newSched: DaySched,\r\n ) {\r\n const convergence = currentScheds.find((x) => (\r\n compareTimes(newSched, x)\r\n ));\r\n\r\n if (convergence) {\r\n const newDays = getNewSchedDays(convergence, newSched);\r\n let deleteSched = true;\r\n if (newDays !== undefined) {\r\n for (const day of Object.keys(newDays)) {\r\n if (newDays[day]) deleteSched = false;\r\n }\r\n }\r\n\r\n return {\r\n foundConvergence: true, schedId: newSched?.ID ?? convergence?.ID, days: JSON.stringify(newDays), deleteSched,\r\n };\r\n }\r\n return {\r\n foundConvergence: false, schedId: undefined, days: undefined, deleteSched: false,\r\n };\r\n }\r\n\r\n const checkDalSchedsCardsConflicts = (newScheds: ScheduleInfo[], persisted?: ScheduleInfo[]) => {\r\n const daysProgs = {\r\n sun: [],\r\n mon: [],\r\n tue: [],\r\n wed: [],\r\n thu: [],\r\n fri: [],\r\n sat: [],\r\n } as {[day: string]:DaySched[]};\r\n const ans = {\r\n hasConflict: false,\r\n schedsIdToEdit: [] as {schedId: number, delete: boolean, days: string}[],\r\n };\r\n\r\n const deleted = newScheds.filter((sched) => sched.ID && sched.DELETE);\r\n const deletedIds = deleted.map((sched) => sched.ID);\r\n\r\n const inserted = newScheds.filter((sched) => sched.INSERT && !sched.DELETE);\r\n\r\n const edited = newScheds.filter((sched) => sched.EDIT && !sched.DELETE);\r\n const editedIds = edited.map((sched) => sched.ID);\r\n\r\n let schedsToValidate: ScheduleInfo[] = [];\r\n if (persisted?.length === 0 || (persisted?.length && persisted?.length >= 0)) {\r\n const persistedWithoutEditeds = persisted.filter((sched) => (!deletedIds.includes(sched.ID) && !editedIds.includes(sched.ID)));\r\n schedsToValidate = inserted.concat(edited).concat(persistedWithoutEditeds);\r\n } else {\r\n schedsToValidate = newScheds;\r\n }\r\n for (const sched of schedsToValidate) {\r\n const days = JSON.parse(sched.DAYS) || {};\r\n for (const [day, selected] of Object.entries(days)) {\r\n if (!selected) continue;\r\n const dayScheds = daysProgs[day];\r\n const checkConvAns = checkConvergence(dayScheds, sched);\r\n if (checkConvAns.foundConvergence) {\r\n ans.hasConflict = true;\r\n if (checkConvAns.schedId && !ans.schedsIdToEdit.find((s) => s.schedId === checkConvAns.schedId)) {\r\n ans.schedsIdToEdit.push({\r\n schedId: checkConvAns.schedId, delete: checkConvAns.deleteSched, days: checkConvAns.days,\r\n });\r\n }\r\n }\r\n dayScheds.unshift(sched);\r\n }\r\n }\r\n return ans;\r\n };\r\n\r\n interface DayExcept {\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n ID?: number;\r\n }\r\n\r\n const compareTimes = (time_1: DayExcept, time_2: DayExcept) => ((time_1.BEGIN_TIME <= time_2.BEGIN_TIME && time_2.BEGIN_TIME <= time_1.END_TIME)\r\n || (time_2.BEGIN_TIME <= time_1.BEGIN_TIME && time_1.BEGIN_TIME <= time_2.END_TIME)\r\n || (time_1.BEGIN_TIME <= time_2.BEGIN_TIME && time_2.END_TIME <= time_1.END_TIME)\r\n || (time_2.BEGIN_TIME <= time_1.BEGIN_TIME && time_1.END_TIME <= time_2.END_TIME));\r\n\r\n const hasHoursConflicts = (excepts: DayExcept[]) => {\r\n const ans = {\r\n foundConvergence: false,\r\n exceptsIds: [] as number[],\r\n };\r\n for (let i = 0; i < excepts.length; i++) {\r\n for (let j = i + 1; j < excepts.length; j++) {\r\n if (compareTimes(excepts[i], excepts[j])) {\r\n ans.foundConvergence = true;\r\n if (excepts[i]?.ID) {\r\n ans.exceptsIds.push(excepts[i].ID as number);\r\n }\r\n if (excepts[j]?.ID) {\r\n ans.exceptsIds.push(excepts[j].ID as number);\r\n }\r\n }\r\n }\r\n }\r\n return ans;\r\n };\r\n\r\n const handleDayExceptsInsertion = (dayExcepts: {[date: string]: {[year: string]: DayExcept[]}}, dateDM: string, except: ExceptionInfo) => {\r\n if (except.REPEAT_YEARLY === '1') {\r\n if (!dayExcepts[dateDM]?.YEARLY) {\r\n dayExcepts[dateDM].YEARLY = [{ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID }];\r\n } else {\r\n dayExcepts[dateDM].YEARLY.push({ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID });\r\n }\r\n } else {\r\n const dateY = except.EXCEPTION_DATE.slice(6, 10);\r\n if (!dayExcepts[dateDM]?.[dateY]) {\r\n dayExcepts[dateDM][dateY] = [{ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID }];\r\n } else {\r\n dayExcepts[dateDM][dateY].push({ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID });\r\n }\r\n }\r\n };\r\n\r\n const getDayExcepts = (excepts: ExceptionInfo[]) => {\r\n const dayExcepts = {} as {[date: string]: {[year: string]: DayExcept[]}};\r\n for (const except of excepts) {\r\n if (except.ACTIVE === '0') continue;\r\n const dateDM = except.EXCEPTION_DATE.slice(0, 5);\r\n if (!dayExcepts[dateDM]) dayExcepts[dateDM] = {};\r\n\r\n handleDayExceptsInsertion(dayExcepts, dateDM, except);\r\n }\r\n\r\n return dayExcepts;\r\n };\r\n\r\n const checkNotYearlyExcept = (dayExcepts: {[date: string]: {[year: string]: DayExcept[]}}, date: string, yearlyExcepts: DayExcept[], ans: { hasConflict: boolean, exceptsIdToDelete: number[] }) => {\r\n for (const year of Object.keys(dayExcepts[date])) {\r\n if (year === 'YEARLY') continue;\r\n const excepts = dayExcepts[date][year].concat(yearlyExcepts);\r\n const checkExceptsConvergence = hasHoursConflicts(excepts);\r\n if (checkExceptsConvergence.foundConvergence) {\r\n ans.hasConflict = true;\r\n if (checkExceptsConvergence.exceptsIds.length) {\r\n ans.exceptsIdToDelete = ans.exceptsIdToDelete.concat(checkExceptsConvergence.exceptsIds);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const checkDalCardsExceptsConflicts = (newExceptions: ExceptionInfo[], persisted: ExceptionInfo[]) => {\r\n const ans = {\r\n hasConflict: false,\r\n exceptsIdToDelete: [] as number[],\r\n };\r\n\r\n const deleted = newExceptions.filter((except) => except.ID && except.DELETE);\r\n const deletedIds = deleted.map((sched) => sched.ID);\r\n\r\n const inserted = newExceptions.filter((except) => except.INSERT && !except.DELETE);\r\n\r\n const edited = newExceptions.filter((except) => except.EDIT && !except.DELETE);\r\n const editedIds = edited.map((except) => except.ID);\r\n\r\n let exceptsToValidate: ExceptionInfo[] = [];\r\n if (persisted?.length === 0 || (persisted?.length && persisted?.length >= 0)) {\r\n const persistedWithoutEditeds = persisted.filter((except) => (!deletedIds.includes(except.ID) && !editedIds.includes(except.ID)));\r\n exceptsToValidate = inserted.concat(edited).concat(persistedWithoutEditeds);\r\n } else {\r\n exceptsToValidate = newExceptions;\r\n }\r\n\r\n const dayExcepts = getDayExcepts(exceptsToValidate);\r\n\r\n for (const date of Object.keys(dayExcepts)) {\r\n const yearlyExcepts = dayExcepts[date]?.YEARLY || [];\r\n const checkExceptsConvergence = hasHoursConflicts(yearlyExcepts);\r\n if (checkExceptsConvergence.foundConvergence) {\r\n ans.hasConflict = true;\r\n if (checkExceptsConvergence.exceptsIds.length) {\r\n ans.exceptsIdToDelete = ans.exceptsIdToDelete.concat(checkExceptsConvergence.exceptsIds);\r\n }\r\n }\r\n checkNotYearlyExcept(dayExcepts, date, yearlyExcepts, ans);\r\n }\r\n ans.exceptsIdToDelete = ans.exceptsIdToDelete.filter((e) => e !== undefined);\r\n return ans;\r\n };\r\n\r\n const validateDalScheds = async (DEVICE_CODE: string, ILLUMINATION_ID: number, newScheds: ScheduleInfo[], newExceptions: ExceptionInfo[]) => {\r\n try {\r\n const { scheds, exceptions } = await apiCall('/dal/get-dal-scheds', { DAL_CODE: DEVICE_CODE, ILLUMINATION_ID });\r\n\r\n // validar novos + persisitidos\r\n const dalSchedValidation = checkDalSchedsCardsConflicts(newScheds, scheds);\r\n if (dalSchedValidation.hasConflict) {\r\n if (dalSchedValidation.schedsIdToEdit.length) {\r\n if (!state.dalSchedsToEdit[DEVICE_CODE]) state.dalSchedsToEdit[DEVICE_CODE] = {};\r\n state.dalSchedsToEdit[DEVICE_CODE][ILLUMINATION_ID] = dalSchedValidation.schedsIdToEdit;\r\n }\r\n render();\r\n }\r\n\r\n // validar novos + persisitidos\r\n const dalExceptsValidation = checkDalCardsExceptsConflicts(newExceptions, exceptions);\r\n if (dalExceptsValidation.hasConflict) {\r\n if (dalExceptsValidation.exceptsIdToDelete.length) {\r\n if (!state.dalExceptsToDelete[DEVICE_CODE]) state.dalExceptsToDelete[DEVICE_CODE] = {};\r\n state.dalExceptsToDelete[DEVICE_CODE][ILLUMINATION_ID] = [...new Set(dalExceptsValidation.exceptsIdToDelete)];\r\n render();\r\n }\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n };\r\n\r\n const validateScheds = async () => {\r\n setState({\r\n isLoading: true,\r\n dalExceptsToDelete: {},\r\n dalSchedsToEdit: {},\r\n illumsWithConflict: [],\r\n illumWithConflict: false,\r\n });\r\n render();\r\n\r\n let foundConflict = false;\r\n const scheds = state.dalScheds;\r\n const exceptions = state.dalExceptions;\r\n\r\n try {\r\n // validar só persistidos/editados\r\n // @ts-ignore\r\n const checkJustPersistedAndEditedCards = checkDalSchedsCardsConflicts(scheds.filter((sched) => !sched.DELETE && !sched.INSERT));\r\n if (checkJustPersistedAndEditedCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumWithConflict) {\r\n state.illumWithConflict = true;\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as programações ${illumName}. Alguns conflitos foram encontrados entre as programações já existentes e as programações já existentes que foram editadas.`);\r\n }\r\n\r\n try {\r\n // validar só novos\r\n // @ts-ignore\r\n const checkJustNewCards = checkDalSchedsCardsConflicts(scheds.filter((sched) => sched.INSERT && !sched.DELETE));\r\n if (checkJustNewCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumWithConflict) {\r\n state.illumWithConflict = true;\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as programações ${illumName}. Alguns conflitos foram encontrados entre as programações novas inseridas.`);\r\n }\r\n\r\n try {\r\n // validar só persistidos/editados\r\n // @ts-ignore\r\n const checkJustPersistedAndEditedCards = checkDalCardsExceptsConflicts(exceptions.filter((except) => !except.DELETE && !except.INSERT));\r\n if (checkJustPersistedAndEditedCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumWithConflict) {\r\n state.illumWithConflict = true;\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as exceções ${illumName}. Alguns conflitos foram encontrados entre as exceções já existentes e as exceções já existentes que foram editadas.`);\r\n }\r\n\r\n try {\r\n // validar só novos\r\n // @ts-ignore\r\n const checkJustNewCards = checkDalCardsExceptsConflicts(exceptions.filter((except) => except.INSERT && !except.DELETE));\r\n if (checkJustNewCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumWithConflict) {\r\n state.illumWithConflict = true;\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as exceções ${illumName}. Alguns conflitos foram encontrados entre as exceções novas inseridas.`);\r\n }\r\n\r\n // verificar o retorno\r\n\r\n // validate and save\r\n if (!state.illumWithConflict) {\r\n try {\r\n await validateDalScheds(deviceCode, Number(illumId), scheds || [], exceptions || []);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(`Não será possível salvar programações/exceções ${illumName || ''}.`);\r\n }\r\n render();\r\n }\r\n\r\n if (foundConflict && state.illumWithConflict) {\r\n setState({\r\n loading: false,\r\n });\r\n render();\r\n return false;\r\n }\r\n // setState({\r\n // isLoading: false,\r\n // });\r\n return true;\r\n };\r\n\r\n const saveUtilitySched = async () => {\r\n const valid = await validateScheds();\r\n\r\n if (valid) {\r\n state.openModal = 'saving-confirmation';\r\n render();\r\n }\r\n };\r\n\r\n const sendToServer = async () => {\r\n let success = true;\r\n state.openModal = null;\r\n render();\r\n try {\r\n // Atualiza as programações necessárias\r\n if (state.illumWithConflict) {\r\n toast.error(`Como avisado previamente, não será possível salvar as programações/exceções do ${illumName}. O utilitário foi ignorado, atenção aos conflitos de programação/exceção.`);\r\n return;\r\n }\r\n\r\n const schedsToEdit = state.dalSchedsToEdit?.[deviceCode]?.[illumId];\r\n const schedsToSend = [] as {\r\n DAL_CODE: string;\r\n ILLUMINATION_ID: number;\r\n SCHED_ID?: number;\r\n TITLE?: string;\r\n ACTIVE?: string;\r\n BEGIN_TIME?: string;\r\n END_TIME?: string;\r\n DAYS?: string;\r\n STATUS?: string;\r\n INSERT?: boolean;\r\n EDIT?: boolean;\r\n DELETE?: boolean\r\n }[];\r\n for (const sched of state?.dalScheds || []) {\r\n const editInfo = schedsToEdit?.find((s) => s.schedId === sched.ID);\r\n if ((editInfo?.delete || sched.DELETE) && !sched.ID) continue;\r\n\r\n schedsToSend.push({\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: Number(illumId),\r\n SCHED_ID: sched.ID,\r\n TITLE: sched.TITLE,\r\n ACTIVE: sched.ACTIVE,\r\n BEGIN_TIME: sched.BEGIN_TIME,\r\n END_TIME: sched.END_TIME,\r\n DAYS: editInfo?.days || sched.DAYS,\r\n STATUS: sched.STATUS,\r\n INSERT: (editInfo?.delete || sched.DELETE) ? false : sched.INSERT,\r\n EDIT: (editInfo?.delete || sched.DELETE || sched.INSERT) ? false : (!!editInfo || sched.EDIT),\r\n DELETE: editInfo?.delete ? true : sched.DELETE, // ajustar\r\n });\r\n }\r\n\r\n const exceptsToDelete = state.dalExceptsToDelete?.[deviceCode]?.[illumId];\r\n const exceptsToSend = [] as {\r\n EXCEPTION_ID?: number;\r\n DAL_CODE: string;\r\n ILLUMINATION_ID: number;\r\n TITLE?: string;\r\n ACTIVE?: string;\r\n BEGIN_TIME?: string;\r\n END_TIME?: string;\r\n EXCEPTION_DATE?: string;\r\n REPEAT_YEARLY?: string;\r\n STATUS?: string;\r\n INSERT?: boolean;\r\n DELETE?: boolean\r\n EDIT?: boolean;\r\n }[];\r\n\r\n for (const except of state?.dalExceptions || []) {\r\n const hasToDelete = !!exceptsToDelete?.find((e) => e === except.ID);\r\n exceptsToSend.push({\r\n EXCEPTION_ID: except.ID,\r\n DAL_CODE: deviceCode,\r\n ILLUMINATION_ID: Number(illumId),\r\n TITLE: except.TITLE,\r\n ACTIVE: except.ACTIVE,\r\n BEGIN_TIME: except.BEGIN_TIME,\r\n END_TIME: except.END_TIME,\r\n EXCEPTION_DATE: formatStringToDate(except.EXCEPTION_DATE),\r\n REPEAT_YEARLY: except.REPEAT_YEARLY,\r\n STATUS: except.STATUS,\r\n INSERT: (hasToDelete || except.DELETE) ? false : except.INSERT,\r\n DELETE: hasToDelete ? true : except.DELETE,\r\n EDIT: (hasToDelete || except.DELETE || except.INSERT) ? false : except.EDIT,\r\n });\r\n }\r\n\r\n try {\r\n await apiCall('/dal/handle-multiple-illumination-sched', {\r\n ILLUMINATION_ID: illumId, DAL_CODE: deviceCode, SCHEDS: schedsToSend, EXCEPTIONS: exceptsToSend,\r\n });\r\n } catch (err) {\r\n success = false;\r\n console.log(err);\r\n toast.error(`Não foi possível salvar programações ${illumName || ''}`);\r\n }\r\n\r\n if (success) {\r\n history.push(`${state.linkBase}/analise/utilitario/iluminacao/${illumId}/informacoes`);\r\n toast.success(t('sucessoSalvar'));\r\n }\r\n setState({ loading: false, illumWithConflict: false });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarInfo'));\r\n setState({ loading: false, illumWithConflict: false });\r\n }\r\n\r\n setState({ loading: false, illumWithConflict: false });\r\n };\r\n\r\n function styledIcon() {\r\n if (props.styledIcon && props.onlyIcon) {\r\n return (\r\n { showScheds(); }}\r\n >\r\n {state.dalScheds?.filter((sched) => !sched.DELETE) && state.dalScheds?.filter((sched) => !sched.DELETE).length > 0 ? {state.dalScheds?.filter((sched) => !sched.DELETE).length} : null}\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n
\r\n );\r\n }\r\n return (\r\n
{ showScheds(); }}>\r\n {state.dalScheds?.filter((sched) => !sched.DELETE) && state.dalScheds?.filter((sched) => !sched.DELETE).length > 0 ? {state.dalScheds?.filter((sched) => !sched.DELETE).length} : null}\r\n {state.loadingSchedule\r\n ? \r\n : !sched.DELETE) && state.dalScheds?.filter((sched) => !sched.DELETE).length > 0) || (state.dalExceptions?.filter((sched) => !sched.DELETE) && state.dalExceptions?.filter((sched) => !sched.DELETE).length > 0) ? '#363BC4' : '#F0F0F0'} />}\r\n
\r\n );\r\n }\r\n\r\n return (\r\n \r\n {props.isModal ? (\r\n <>\r\n {props.onlyIcon ? (styledIcon()\r\n ) : (\r\n \r\n {state.dalScheds?.filter((sched) => !sched.DELETE) && state.dalScheds?.filter((sched) => !sched.DELETE).length > 0 ? {state.dalScheds?.filter((sched) => !sched.DELETE).length} : null}\r\n\r\n { showScheds(); }}\r\n >\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n \r\n {`${t('ver')} ${t('programacoes')}`}\r\n \r\n \r\n \r\n )}\r\n\r\n {(state.showScheds) && (\r\n
\r\n {\r\n if (!state.modalEditSchedule && !state.modalEditException) {\r\n setState({ showScheds: false });\r\n }\r\n }}\r\n >\r\n \r\n \r\n
\r\n )}\r\n \r\n ) : (\r\n \r\n )}\r\n {(state.openModal === 'saving-confirmation') && (\r\n setState({ openModal: null, isLoading: false })}>\r\n {state.openModal === 'saving-confirmation'\r\n && (\r\n \r\n \r\n \r\n \r\n

{t('desejaSalvar')}

\r\n
\r\n
    \r\n {Object.keys(state.dalSchedsToEdit).length !== 0 &&
  • {t('alertaSubstituicaoSchedDal')}
  • }\r\n {Object.keys(state.dalExceptsToDelete).length !== 0 &&
  • {t('alertaSubstituicaoExceptDal')}
  • }\r\n
\r\n \r\n \r\n {t('prosseguir')}\r\n \r\n setState({ openModal: null, isLoading: false })}>\r\n {t('cancelar')}\r\n \r\n \r\n
\r\n
\r\n )}\r\n
\r\n )}\r\n {(state.modalEditSchedule) && (\r\n
\r\n { setState({ modalEditSchedule: null }); }}>\r\n { setState({ modalEditSchedule: null }); }}\r\n larguraPage={state.larguraPage}\r\n />\r\n \r\n
\r\n )}\r\n {(state.modalEditException) && (\r\n
\r\n { setState({ modalEditException: null }); }}>\r\n { setState({ modalEditException: null }); }}\r\n />\r\n \r\n
\r\n )}\r\n
\r\n\r\n );\r\n};\r\n\r\nexport function DALScheduleContent(props: {\r\n showExceptions: boolean,\r\n changeShowExceptions: (value: boolean) => void,\r\n dalScheds: null | ScheduleInfo[],\r\n dalExceptions: null | ExceptionInfo[],\r\n canEdit: boolean,\r\n editAddProgramming: (index: number) => void,\r\n editAddSched: (index: number, item?: ScheduleInfo) => void,\r\n deleteSchedule: (sched: ScheduleInfo, index: number) => void,\r\n editAddException: (index: number, item?: ExceptionInfo) => void,\r\n deleteException: (sched: ExceptionInfo, index: number) => void,\r\n editDefaultMode: (defaultMode: string, illuminationId: number) => void,\r\n defaultMode?: string,\r\n isEditDAL?: boolean,\r\n isEditUtility?: boolean,\r\n handleHasEdited: () => void,\r\n saveUtilitySched: () => void,\r\n getScheds?: (scheds, exceptions) => void,\r\n illuminationId: number,\r\n larguraPage: number,\r\n deviceCode: string,\r\n exceededExceptionLimit?: boolean\r\n setExceededExceptionLimit?: (value) => void,\r\n}): JSX.Element {\r\n const match = useRouteMatch();\r\n const history = useHistory();\r\n const [state, render, setState] = useStateVar({\r\n defaultModeOpts: [\r\n { name: t('ligadoMinusculo'), value: '1' },\r\n { name: t('desligadoMinusculo'), value: '0' },\r\n ],\r\n linkBase: match.url.split('/analise')[0],\r\n });\r\n\r\n function handleDefaultMode(defaultMode:string, illuminationId: number) {\r\n props.editDefaultMode(defaultMode, illuminationId);\r\n render();\r\n }\r\n function hasEdited() {\r\n props.handleHasEdited();\r\n render();\r\n }\r\n\r\n function verifyExceptionLimit(exceptionList: null | ExceptionInfo[]) {\r\n if (exceptionList?.filter((sched) => !sched.DELETE).length === 8 && !props.exceededExceptionLimit && props.setExceededExceptionLimit) {\r\n props.setExceededExceptionLimit(true);\r\n }\r\n\r\n return !!props.exceededExceptionLimit;\r\n }\r\n\r\n return (\r\n
\r\n \r\n {props.isEditDAL && (\r\n \r\n opt.value === props.defaultMode)}\r\n onSelect={(item) => {\r\n handleDefaultMode(item.value, props.illuminationId);\r\n hasEdited();\r\n render();\r\n }}\r\n hideSelected\r\n />\r\n \r\n {t('selecioneStatusDefault')}\r\n \r\n \r\n )}\r\n\r\n {!props.isEditDAL && !props.isEditUtility && props.dalScheds && (\r\n \r\n \r\n {props.dalScheds[0]?.DEFAULT_MODE === '1' ? t('ligadoMinusculo') : t('desligadoMinusculo')}\r\n \r\n\r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n {\r\n if (props.showExceptions) {\r\n props.changeShowExceptions(!props.showExceptions);\r\n }\r\n }}\r\n >\r\n {t('programacoes')}\r\n \r\n \r\n {\r\n if (!props.showExceptions) {\r\n props.changeShowExceptions(!props.showExceptions);\r\n }\r\n }}\r\n >\r\n {t('excecoes')}\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n {`Total: ${(!props.showExceptions ? props.dalScheds?.filter((sched) => !sched.DELETE).length : props.dalExceptions?.filter((sched) => !sched.DELETE).length) || 0}`}\r\n {props.canEdit && (\r\n props.editAddProgramming(0)}\r\n >\r\n {AddToltipIfDisabled(!!props.exceededExceptionLimit, props.showExceptions, t('botaoAdicionarProgramacaoExcecao', { value: !props.showExceptions ? t('Programação') : t('excecao') }))}\r\n \r\n )}\r\n
\r\n
\r\n {!props.showExceptions && props.dalScheds?.map((sched, index) => (\r\n sched.DELETE ? null : props.editAddSched(index, sched)} onDelete={() => props.deleteSchedule(sched, index)} larguraPage={props.larguraPage} />\r\n ))}\r\n {props.showExceptions && props.dalExceptions && (\r\n <>\r\n \r\n \r\n {t('titulo')}\r\n
\r\n \r\n {t('Data')}\r\n
\r\n \r\n {t('repetirTodoAno')}\r\n
\r\n \r\n {t('inicio')}\r\n
\r\n \r\n {t('fim')}\r\n
\r\n \r\n {props.dalExceptions?.map((exception, index) => (\r\n exception.DELETE ? null : (\r\n \r\n props.editAddException(index, exception)} onDelete={() => props.deleteException(exception, index)} />\r\n \r\n )\r\n ))}\r\n \r\n )}\r\n
\r\n
\r\n {props.canEdit && !props.getScheds && (\r\n <>\r\n \r\n Salvar\r\n \r\n history.push(`${state.linkBase}/analise/utilitario/iluminacao/${props.illuminationId}/informacoes`)}>{t('cancelar')}\r\n \r\n )}\r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nexport function DalSchedForm(props: {\r\n modalEditSchedule: {\r\n addEdit: 'Add' | 'Edit'\r\n title: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon?: boolean\r\n tue?: boolean\r\n wed?: boolean\r\n thu?: boolean\r\n fri?: boolean\r\n sat?: boolean\r\n sun?: boolean\r\n }\r\n status: boolean\r\n index: number\r\n },\r\n loadingSet: boolean,\r\n onConfirm: (index) => void\r\n onCancel: () => void\r\n larguraPage: number\r\n}): JSX.Element {\r\n const [state, render] = useStateVar({\r\n entireDay: (props.modalEditSchedule.start_time === '00:00' && props.modalEditSchedule.end_time === '23:59'),\r\n });\r\n\r\n const isEdit = props.modalEditSchedule.addEdit === 'Edit';\r\n\r\n function selectDay(day: string) {\r\n if (props.modalEditSchedule.selectedDays?.[day] !== undefined) {\r\n props.modalEditSchedule.selectedDays[day] = !props.modalEditSchedule.selectedDays[day];\r\n render();\r\n }\r\n }\r\n\r\n function renderButtons() {\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n {t('botaoCancelar')}\r\n
\r\n \r\n );\r\n }\r\n\r\n function getName() {\r\n return t('editarAdicionarProgramacao', { value: isEdit ? t('editar') : t('botaoAdicionar') });\r\n }\r\n\r\n return (\r\n
\r\n
{getName()}
\r\n
\r\n
\r\n
{t('titulo')}
\r\n { props.modalEditSchedule.title = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('Programação')}
\r\n
\r\n {props.modalEditSchedule.active ? t('habilitada') : t('desabilitada')}\r\n { props.modalEditSchedule.active = !props.modalEditSchedule.active; render(); }}\r\n />\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
{t('selecioneDias')}
\r\n
\r\n selectDay('sun')}>DOM\r\n selectDay('mon')}>SEG\r\n selectDay('tue')}>TER\r\n selectDay('wed')}>QUA\r\n selectDay('thu')}>QUI\r\n selectDay('fri')}>SEX\r\n selectDay('sat')}>SAB\r\n
\r\n
\r\n\r\n \r\n
\r\n
{t('horarioInicio')}
\r\n ) => { props.modalEditSchedule!.start_time = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('horarioTermino')}
\r\n ) => { props.modalEditSchedule!.end_time = e.target.value; render(); }}\r\n />\r\n
\r\n {\r\n state.entireDay = !state.entireDay;\r\n if (state.entireDay) {\r\n props.modalEditSchedule.start_time = '00:00';\r\n props.modalEditSchedule.end_time = '23:59';\r\n } else {\r\n props.modalEditSchedule.start_time = '';\r\n props.modalEditSchedule.end_time = '';\r\n }\r\n render();\r\n }}\r\n />\r\n
\r\n\r\n
\r\n
{t('status')}
\r\n \r\n { props.modalEditSchedule.status = true; render(); }} checkedColor=\"blue\" />\r\n { props.modalEditSchedule.status = false; render(); }} checkedColor=\"blue\" />\r\n \r\n
\r\n\r\n {renderButtons()}\r\n
\r\n );\r\n}\r\n\r\nexport function DalExceptionForm(props: {\r\n modalEditException: {\r\n addEdit: 'Add' | 'Edit'\r\n title: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n exceptionDate: string;\r\n repeatYearly: boolean;\r\n status: boolean\r\n index: number\r\n },\r\n isException: boolean\r\n onConfirm: (index) => void\r\n onCancel: () => void\r\n}): JSX.Element {\r\n const [state, render] = useStateVar({\r\n entireDay: (props.modalEditException.start_time === '00:00' && props.modalEditException.end_time === '23:59'),\r\n isLoading: false,\r\n });\r\n\r\n const isEdit = props.modalEditException.addEdit === 'Edit';\r\n\r\n function renderButtons() {\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n
\r\n {t('botaoCancelar')}\r\n
\r\n \r\n );\r\n }\r\n\r\n function getName() {\r\n return t('editarAdicionarExcecao', { value: isEdit ? t('editar') : t('botaoAdicionar') });\r\n }\r\n\r\n return (\r\n
\r\n
{getName()}
\r\n
\r\n
\r\n
{t('titulo')}
\r\n { props.modalEditException.title = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('Programação')}
\r\n
\r\n {props.modalEditException.active ? t('habilitada') : t('desabilitada')}\r\n { props.modalEditException.active = !props.modalEditException.active; render(); }} />\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
{t('selecioneDias')}
\r\n \r\n \r\n \r\n { props.modalEditException.exceptionDate = e.target.value; render(); }}\r\n />\r\n \r\n \r\n {\r\n props.modalEditException.repeatYearly = !props.modalEditException.repeatYearly;\r\n render();\r\n }}\r\n >\r\n \r\n {props.modalEditException.repeatYearly ? : null}\r\n \r\n \r\n \r\n {t('repetirTodoOAno')}\r\n
\r\n
\r\n \r\n

\r\n {t('iluminacaoPermaneceraDesligadaIntervalosHorariosNaoDefinidos')}\r\n

\r\n \r\n
\r\n\r\n \r\n
\r\n
{t('horarioInicio')}
\r\n ) => { props.modalEditException!.start_time = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('horarioTermino')}
\r\n ) => { props.modalEditException!.end_time = e.target.value; render(); }}\r\n />\r\n
\r\n {\r\n state.entireDay = !state.entireDay;\r\n if (state.entireDay) {\r\n props.modalEditException.start_time = '00:00';\r\n props.modalEditException.end_time = '23:59';\r\n } else {\r\n props.modalEditException.start_time = '';\r\n props.modalEditException.end_time = '';\r\n }\r\n render();\r\n }}\r\n />\r\n
\r\n\r\n
\r\n
{t('status')}
\r\n \r\n { props.modalEditException.status = true; render(); }} checkedColor=\"blue\" />\r\n { props.modalEditException.status = false; render(); }} checkedColor=\"blue\" />\r\n \r\n
\r\n\r\n {renderButtons()}\r\n
\r\n );\r\n}\r\n\r\nexport function SchedCard(props: {\r\n sched: ScheduleInfo\r\n canEdit: boolean\r\n onEdit: () => void\r\n onDelete: () => void\r\n larguraPage: number\r\n}): JSX.Element {\r\n const {\r\n sched, canEdit, onEdit, onDelete,\r\n } = props;\r\n const days = JSON.parse(sched.DAYS);\r\n\r\n function renderDivisionBorder() {\r\n return (\r\n
\r\n );\r\n }\r\n\r\n function formatDays(day) {\r\n if (props.larguraPage > 490) {\r\n return day;\r\n }\r\n return day[0];\r\n }\r\n\r\n function renderWeekDaysButtons(days) {\r\n return (\r\n
\r\n {formatDays('DOM')}\r\n {formatDays('SEG')}\r\n {formatDays('TER')}\r\n {formatDays('QUA')}\r\n {formatDays('QUI')}\r\n {formatDays('SEX')}\r\n {formatDays('SAB')}\r\n
\r\n );\r\n }\r\n\r\n function renderSchedStatus() {\r\n return (\r\n
\r\n
{t('programacao')}
\r\n {sched.STATUS === '1' ? t('iluminacaoLigada') : t('iluminacaoDesligada')}\r\n
\r\n );\r\n }\r\n\r\n function renderSchedTimes() {\r\n return (\r\n
\r\n
\r\n
\r\n \r\n {t('inicio')}\r\n : \r\n \r\n \r\n {sched.BEGIN_TIME}\r\n \r\n
\r\n
\r\n \r\n {t('fim')}\r\n : \r\n \r\n \r\n {sched.END_TIME}\r\n \r\n
\r\n
\r\n
\r\n );\r\n }\r\n\r\n return (\r\n \r\n \r\n
\r\n
\r\n \r\n {sched.TITLE}\r\n {canEdit && renderEditButtons(onEdit, onDelete)}\r\n
\r\n\r\n
\r\n
{t('Programação')}
\r\n
\r\n {sched.ACTIVE === '1' ? t('habilitada') : t('desabilitada')}\r\n
\r\n
\r\n
\r\n\r\n {renderDivisionBorder()}\r\n\r\n
\r\n {t('status')}\r\n
\r\n {renderSchedStatus()}\r\n {renderSchedTimes()}\r\n
\r\n
\r\n
\r\n {days && renderWeekDaysButtons(days)}\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport const ExceptionSchedCard = (props: {\r\n sched: ExceptionInfo\r\n canEdit: boolean\r\n onEdit: () => void\r\n onDelete: () => void\r\n deviceCode?: string\r\n}): JSX.Element => {\r\n const {\r\n sched, canEdit, onEdit, onDelete, deviceCode,\r\n } = props;\r\n\r\n return (\r\n \r\n \r\n {sched.TITLE}\r\n
\r\n \r\n {sched.EXCEPTION_DATE.substring(0, sched.REPEAT_YEARLY === '1' ? 5 : 10)}\r\n
\r\n \r\n {`${sched.REPEAT_YEARLY === '1' && (!deviceCode || deviceCode.startsWith('DAL')) ? t('sim') : t('nao')}`}\r\n
\r\n \r\n {sched.BEGIN_TIME}\r\n
\r\n \r\n {sched.END_TIME}\r\n
\r\n {canEdit && renderEditButtons(onEdit, onDelete)}\r\n \r\n );\r\n};\r\n\r\nfunction renderEditButtons(onEdit: () => void, onDelete: () => void) {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n );\r\n}\r\n\r\nexport function AddToltipIfDisabled(disabled: boolean, isException: boolean, text): JSX.Element {\r\n const warnMessage = t('limiteCadastroExcecoesAtingido');\r\n return (\r\n <>\r\n { disabled && isException ? (\r\n
\r\n {text}\r\n \r\n
\r\n\r\n ) : (\r\n text\r\n )}\r\n \r\n );\r\n}\r\n","import { useState } from 'react';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport {\r\n Carousel, Button,\r\n} from '~/components';\r\nimport {\r\n Title, InfoItem, IconWrapper, ContainerInfoDalProfoile, ContainerDalTree, FlexRowColumn, FlexRowColumn1250,\r\n} from './styles';\r\nimport { LightOnIcon, LightOffIcon } from 'icons';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { apiCall, apiSpecial } from '~/providers';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { UtilityTree } from 'components/UtilityTree';\r\nimport { DALSchedule } from '../SchedulesModals/DAL_Schedule';\r\nimport { useWebSocket } from '~/helpers/wsConnection';\r\n\r\nexport const DalInfo = ({ dalInfo }): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const match = useRouteMatch<{ devId: string }>();\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n devId: dalInfo.DEV_ID,\r\n linkBase: match.url.split(`/${match.params.devId}`)[0],\r\n utils: dalInfo.dal?.illuminationList || [],\r\n utilSelected: false,\r\n selectedIndex: -1 as number,\r\n deviceSelected: true as boolean,\r\n isLoading: false,\r\n lastTelemetry: null as null | { Feedback: boolean[] },\r\n RSSI: null as null|number,\r\n });\r\n\r\n async function handleGetImages() {\r\n if (state.utilSelected) {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.utils[state.selectedIndex].ILLUMINATION_ID,\r\n referenceType: 'ILLUMINATIONS',\r\n });\r\n }\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: dalInfo.DEVICE_ID,\r\n referenceType: 'DALS',\r\n });\r\n }\r\n\r\n async function handlePostImage(photo: Blob) {\r\n if (state.utilSelected) {\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: state.utils[state.selectedIndex].ILLUMINATION_ID,\r\n referenceType: 'ILLUMINATIONS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: dalInfo.DEVICE_ID,\r\n referenceType: 'DALS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n\r\n async function handleDeleteImage(imageUrl: string) {\r\n if (state.utilSelected) {\r\n return apiCall('/upload-service/delete-image',\r\n {\r\n referenceId: state.utils[state.selectedIndex].ILLUMINATION_ID,\r\n referenceType: 'ILLUMINATIONS',\r\n filename: imageUrl,\r\n });\r\n }\r\n return apiCall('/upload-service/delete-image',\r\n {\r\n referenceId: dalInfo.DEVICE_ID,\r\n referenceType: 'DALS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'dalSubscribeRealTime', data: { DAL_CODE: state.devId } });\r\n }\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dalTelemetry') {\r\n state.lastTelemetry = response.data;\r\n state.RSSI = response.RSSI;\r\n render();\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'dalUnsubscribeRealTime' });\r\n }\r\n\r\n async function selectedCard(position: number) {\r\n state.selectedIndex = position;\r\n state.utilSelected = position > -1;\r\n state.deviceSelected = position === -2;\r\n render();\r\n }\r\n\r\n function renderImages() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n\r\n function renderDeviceInfo() {\r\n return (\r\n \r\n \r\n \r\n \r\n {t('dispositivo')}\r\n {dalInfo.DEV_ID}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {t('informacoes')}\r\n \r\n {t('estado')}\r\n
\r\n {dalInfo.STATE_ID || '-'}\r\n
\r\n\r\n \r\n {t('cidade')}\r\n
\r\n {dalInfo.CITY_NAME || '-'}\r\n
\r\n\r\n \r\n {t('cliente')}\r\n
\r\n {dalInfo.CLIENT_NAME || '-'}\r\n
\r\n\r\n \r\n {t('unidade')}\r\n
\r\n {dalInfo.UNIT_NAME || '-'}\r\n
\r\n\r\n {t('associacoes')}\r\n \r\n {t('portasEmUso')}\r\n
\r\n {dalInfo.dal.illuminationList.filter((x) => x.PORT).reduce((acc, illum) => {\r\n acc.push(illum.PORT);\r\n return acc;\r\n }, []).join(', ').replace(/,([^,]*)$/, ` ${t('e')}$1`) || '-'}\r\n
\r\n\r\n {(profile.manageAllClients || profile.permissions.isInstaller || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === dalInfo.CLIENT_ID)) && (\r\n
\r\n history.push(`${state.linkBase}/${state.devId}/editar`)}\r\n variant=\"primary\"\r\n >\r\n {`${t('editar')}`}\r\n \r\n
\r\n )}\r\n
\r\n
\r\n\r\n {renderImages()}\r\n
\r\n \r\n \r\n );\r\n }\r\n\r\n if (profile.manageAllClients || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === dalInfo.CLIENT_ID)) {\r\n return (\r\n
\r\n \r\n \r\n <>\r\n
\r\n \r\n {t('dispositivo')}\r\n \r\n
\r\n \r\n \r\n
\r\n \r\n {state.deviceSelected && renderDeviceInfo()}\r\n {state.utilSelected && (\r\n \r\n \r\n \r\n {t('utilitario')}\r\n {state.utils[state.selectedIndex].NAME}\r\n {state.utils[state.selectedIndex].DAL_CODE}\r\n \r\n {state.utils[state.selectedIndex].DAL_CODE && (\r\n \r\n )}\r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n {t('informacoes')}\r\n \r\n {t('tensaoDaRede')}\r\n
\r\n {state.utils[state.selectedIndex].GRID_VOLTAGE ? `${state.utils[state.selectedIndex].GRID_VOLTAGE}VAC` : '-'}\r\n
\r\n\r\n \r\n {t('correnteDaRedeEletrica')}\r\n
\r\n {state.utils[state.selectedIndex].GRID_CURRENT ? `${state.utils[state.selectedIndex].GRID_CURRENT}A` : '-'}\r\n
\r\n\r\n {state.utils[state.selectedIndex].FEEDBACK && (\r\n <>\r\n {t('tempoReal')}\r\n \r\n {t('status')}\r\n
\r\n \r\n {state.lastTelemetry?.Feedback\r\n && state.lastTelemetry?.Feedback[state.utils[state.selectedIndex].FEEDBACK - 1] ? (\r\n <>\r\n \r\n \r\n \r\n {t('iluminacaoLigada')}\r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n {t('iluminacaoDesligada')}\r\n \r\n )}\r\n\r\n
\r\n \r\n \r\n )}\r\n\r\n {t('associacao')}\r\n \r\n {t('portaDoDal')}\r\n
\r\n {state.utils[state.selectedIndex].PORT ?? '-'}\r\n
\r\n \r\n {t('feedbackDoDal')}\r\n
\r\n {state.utils[state.selectedIndex].FEEDBACK ?? '-'}\r\n
\r\n\r\n {(profile.manageAllClients || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === dalInfo.CLIENT_ID)) && (\r\n
\r\n history.push(`/analise/utilitario/iluminacao/${state.utils[state.selectedIndex].ILLUMINATION_ID}/editar`)}\r\n variant=\"primary\"\r\n >\r\n {`${t('editar')}`}\r\n \r\n
\r\n )}\r\n
\r\n \r\n\r\n {state.utils[state.selectedIndex].DAL_CODE && state.utils[state.selectedIndex].PORT && (\r\n \r\n {t('funcionamento')}\r\n \r\n \r\n )}\r\n\r\n {renderImages()}\r\n
\r\n \r\n )}\r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n return renderDeviceInfo();\r\n};\r\n","import { colors } from '~/styles/colors';\r\nimport styled from 'styled-components';\r\nimport { CalendarIcon } from '~/icons';\r\nimport { Link } from 'react-router-dom';\r\n\r\nexport const ExportBtn = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n align-items: center;\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-radius: 10px;\r\n padding: 8px 10px;\r\n\r\n &:hover {\r\n cursor: pointer;\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n svg path {\r\n fill: white !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const Label = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-top: 6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n }\r\n .react-datepicker__month-wrapper {\r\n display: flex;\r\n text-align: center;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .react-datepicker__month .react-datepicker__month-text, .react-datepicker__month .react-datepicker__quarter-text {\r\n padding: 5px;\r\n }\r\n\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n`;\r\n\r\nexport const StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nexport const InfoItem = styled.div`\r\nwidth: 150px;\r\nmargin-right: 10px;\r\nmargin-bottom: 30px;\r\n`;\r\n\r\nexport const Title = styled.h1`\r\n font-size: 1.25em;\r\n color: #363BC4;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n text-decoration: underline;\r\n width: fit-content;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder};\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n &:hover {\r\n color: ${colors.Grey300};\r\n }\r\n`;\r\n\r\nexport const ContainerInfoUsageIndex = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n flex-wrap: wrap;\r\n width: 100%;\r\n gap: 10px;\r\n`;\r\n\r\nexport const ContainerCardDmtUsage = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n flex-wrap: wrap;\r\n font-size: 14px;\r\n justify-content: space-between;\r\n gap: 10px;\r\n margin: 0px 73px;\r\n margin-bottom: 20px;\r\n @media (max-width: 767px) {\r\n margin: 0;\r\n margin-bottom: 20px;\r\n border-bottom: 1px solid lightgray;\r\n padding-bottom: 10px;\r\n }\r\n`;\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey300};\r\n &:hover {\r\n color: ${colors.Grey400};\r\n }\r\n`;\r\n\r\nexport const InfoItemShort = styled.div`\r\n width: 150px;\r\n margin-right: 10px;\r\n margin-bottom: 20px;\r\n`;\r\n\r\nexport const Title = styled.h1`\r\n font-weight: bold;\r\n font-size: 1.25em;\r\n margin-bottom: 16px;\r\n color: #363BC4;\r\n`;\r\n\r\nexport const InfoItem = styled.div`\r\n width: 150px;\r\n margin-right: 20px;\r\n margin-bottom: 30px;\r\n`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder};\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n text-decoration: underline;\r\n font-size: 14px;\r\n\r\n &:hover {\r\n color: ${colors.Blue400};\r\n }\r\n`;\r\n","import { useContext, useState, useEffect } from 'react';\r\nimport { Flex } from 'reflexbox';\r\nimport { useHistory } from 'react-router';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport {\r\n Button,\r\n} from '~/components';\r\nimport {\r\n Title, InfoItemShort, StyledLink,\r\n} from './styles';\r\nimport {\r\n BatteryIcon, EletricNetworkIcon, InfoIcon, NobreakOffIcon,\r\n} from 'icons';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { colors } from '~/styles/colors';\r\nimport { RenderImagesDmtNobreak } from '../../DMTs/DmtInfo';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport MenuContext from '~/contexts/menuContext';\r\nimport { apiCall } from '~/providers';\r\nimport { toast } from 'react-toastify';\r\nimport { verifyInfoAdditionalParameters } from '~/helpers/additionalParameters';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const NobreakInfo = ({ util, screen }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n const [additionalParameters, setAdditionalParameters] = useState<{ COLUMN_NAME: string; COLUMN_VALUE: string; }[]>([]);\r\n const nobreakStatus = {\r\n 'Rede Elétrica': {\r\n icon: ,\r\n label: t('redeEletrica'),\r\n },\r\n Bateria: {\r\n icon: ,\r\n label: t('bateria'),\r\n },\r\n Desligado: {\r\n icon: ,\r\n label: t('desligadoMin'),\r\n },\r\n Indisponível: {\r\n icon: ,\r\n label: t('semInformacao'),\r\n },\r\n };\r\n const { menuToogle } = useContext(MenuContext);// true = open, false = not Open\r\n const sizeColumn = menuToogle ? '160px' : '240px';\r\n const columnItemWidth = screen === 'utilityInfo' ? 'auto' : sizeColumn;\r\n const deviceLabel = `${util.DMT_CODE || '-'} / ${util.DAT_CODE || '-'}`;\r\n const noOpStatus = !util.STATUS || util.STATUS === 'Indisponível';\r\n\r\n async function getNobreakAdditionalParameters() {\r\n try {\r\n setAdditionalParameters([]);\r\n const parameters = await apiCall('/dmt/get-nobreak-additional-parameters', { NOBREAK_ID: screen === 'dmtInfo' ? Number(util.NOBREAK_ID) : Number(util.ID) });\r\n setAdditionalParameters(parameters);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n getNobreakAdditionalParameters();\r\n }, [util]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {t('utilitario')}\r\n {util.NAME}\r\n \r\n {util.DMT_CODE\r\n && (\r\n \r\n {deviceLabel}\r\n \r\n )}\r\n {!util.DMT_CODE\r\n && (\r\n <>\r\n {deviceLabel}\r\n \r\n )}\r\n \r\n \r\n {util.DMT_CODE && (\r\n \r\n )}\r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n {t('informacoes')}\r\n \r\n {t('fabricante')}\r\n
\r\n {util.MANUFACTURER || '-'}\r\n
\r\n\r\n \r\n {t('modelo')}\r\n
\r\n {util.MODEL || '-'}\r\n
\r\n \r\n {t('potenciaNominal')}\r\n
\r\n {util.NOMINAL_POTENTIAL ? `${formatNumberWithFractionDigits(util.NOMINAL_POTENTIAL)} VA` : '-'}\r\n
\r\n \r\n {t('autonomiaNominalDaBateriaInterna')}\r\n
\r\n {util.NOMINAL_BATTERY_LIFE ? `${formatNumberWithFractionDigits(util.NOMINAL_BATTERY_LIFE)} min` : '-'}\r\n
\r\n \r\n {t('capacidadeNominalDaBateria')}\r\n
\r\n {util.NOMINAL_BATTERY_CAPACITY ? `${formatNumberWithFractionDigits(util.NOMINAL_BATTERY_CAPACITY)} Ah` : '-'}\r\n
\r\n \r\n {t('tensaoDeSaida')}\r\n
\r\n {util.OUTPUT_VOLTAGE ? `${formatNumberWithFractionDigits(util.OUTPUT_VOLTAGE)} VAC` : '-'}\r\n
\r\n \r\n {t('tensaoDeEntrada')}\r\n
\r\n {util.INPUT_VOLTAGE ? `${formatNumberWithFractionDigits(util.INPUT_VOLTAGE)} VAC` : '-'}\r\n
\r\n
\r\n \r\n {t('tempoReal')}\r\n \r\n {t('statusDeOperacao')}\r\n
\r\n\r\n {noOpStatus\r\n && (\r\n \r\n \r\n {t('semInformacao')}\r\n \r\n )}\r\n\r\n {!noOpStatus\r\n && (\r\n \r\n {(nobreakStatus[util.STATUS]?.icon)}\r\n {(nobreakStatus[util.STATUS]?.label)}\r\n
\r\n )}\r\n \r\n\r\n {noOpStatus\r\n && (\r\n \r\n
\r\n {t('semInfoNobreakDmt')}\r\n
\r\n \r\n )}\r\n \r\n {t('duracaoMedia')}\r\n
\r\n \r\n \r\n {t('semInformacao')}\r\n \r\n
\r\n \r\n {t('autonomia')}\r\n
\r\n \r\n \r\n {t('semInformacao')}\r\n \r\n
\r\n {t('associacao')}\r\n \r\n {t('feedbackDoDmt')}\r\n
\r\n {util.PORT ? `F${util.PORT}` : '-'}\r\n
\r\n
\r\n
\r\n \r\n \r\n {additionalParameters.length > 0 && verifyInfoAdditionalParameters(additionalParameters)}\r\n \r\n \r\n {profile.manageAllClients && (\r\n
\r\n history.push(`/analise/utilitario/nobreak/${util.NOBREAK_ID}/editar`, { from: screen })}\r\n variant=\"primary\"\r\n >\r\n {`${t('editar')}`}\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const Title = styled.h1`\r\n font-size: 1.25em;\r\n color: #363BC4;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n`;\r\n\r\nexport const InfoItem = styled.div`\r\n width: 150px;\r\n margin-right: 20px;\r\n margin-bottom: 20px;\r\n`;\r\n\r\nexport const Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CustomInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n border: 0.7px solid ${colors.GreyInputBorder};\r\n`;\r\n\r\nexport const Label = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n text-decoration: underline;\r\n font-size: 14px;\r\n`;\r\n\r\nexport const IconWrapper = styled.div<{ width?, height? }>(\r\n ({ width, height }) => `\r\n display: inline-block;\r\n width: ${width || '19'}px;\r\n height: ${height || '25'}px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: ${width}px;\r\n height: ${height}px;\r\n }\r\n`,\r\n);\r\n","import { useState } from 'react';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { useTranslation } from 'react-i18next';\r\nimport 'moment/locale/pt-br';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { apiCall, apiSpecial } from 'providers';\r\nimport {\r\n Title,\r\n InfoItem,\r\n IconWrapper,\r\n} from './styles';\r\nimport { InfoIcon, LightOffIcon, LightOnIcon } from 'icons';\r\nimport { Button, Carousel } from 'components';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport { DALSchedule } from '../../SchedulesModals/DAL_Schedule';\r\nimport { colors } from '~/styles/colors';\r\nimport { StyledLink } from '../Nobreak/styles';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { useWebSocket } from '~/helpers/wsConnection';\r\n\r\nexport const IlluminationInfo = ({ util, screen }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n const [feedbackStatus, setFeedbackStatus] = useState(null as null | boolean);\r\n const match = useRouteMatch<{ utilId: string }>();\r\n const history = useHistory();\r\n const illuminationStatus = {\r\n Ligado: {\r\n icon: ,\r\n label: t('ligadoMinusculo'),\r\n },\r\n Desligado: {\r\n icon: ,\r\n label: t('desligadoMin'),\r\n },\r\n Indisponível: {\r\n icon: ,\r\n label: t('semInformacao'),\r\n },\r\n };\r\n\r\n let { utilId } = match.params;\r\n utilId = utilId || util.ILLUMINATION_ID;\r\n const noOpStatus = !util.STATUS || util.STATUS === 'Indisponível';\r\n const utilIllumination = (util?.DMT_CODE || util?.DAL_CODE || util?.DAM_ILLUMINATION_CODE);\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n function onWsOpen(wsConn) {\r\n if (util?.DAL_CODE) {\r\n wsConn.send({ type: 'dalSubscribeRealTime', data: { DAL_CODE: util?.DAL_CODE } });\r\n }\r\n }\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dalTelemetry' && util?.FEEDBACK) {\r\n setFeedbackStatus(response.data.Feedback[util.FEEDBACK - 1] || null);\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'dalUnsubscribeRealTime' });\r\n }\r\n\r\n async function handleGetIlluminationImages() {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: Number(utilId),\r\n referenceType: 'ILLUMINATIONS',\r\n });\r\n }\r\n async function handlePostIlluminationImage(photo: Blob) {\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: Number(utilId),\r\n referenceType: 'ILLUMINATIONS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n async function handleDeleteIlluminationImage(imageUrl: string) {\r\n return apiCall('/upload-service/delete-image',\r\n {\r\n referenceId: Number(utilId),\r\n referenceType: 'ILLUMINATIONS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n {t('utilitario')}\r\n {util?.NAME}\r\n \r\n {utilIllumination\r\n && (\r\n \r\n {utilIllumination || '-'}\r\n \r\n )}\r\n {!utilIllumination\r\n && (\r\n <>\r\n -\r\n \r\n )}\r\n \r\n \r\n {utilIllumination && (\r\n \r\n )}\r\n \r\n\r\n
\r\n\r\n \r\n \r\n \r\n {t('informacoes')}\r\n \r\n {t('tensaoDaRede')}\r\n
\r\n {util?.GRID_VOLTAGE ? `${util.GRID_VOLTAGE} VAC` : '-'}\r\n
\r\n\r\n \r\n {t('correnteDaRedeEletrica')}\r\n
\r\n {util?.GRID_CURRENT ? `${util.GRID_CURRENT} A` : '-'}\r\n
\r\n {(util.DAL_CODE && util?.FEEDBACK) && (\r\n <>\r\n {t('tempoReal')}\r\n \r\n {t('status')}\r\n
\r\n \r\n {feedbackStatus ? (\r\n <>\r\n \r\n \r\n \r\n \r\n {t('iluminacaoLigada')}\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n \r\n \r\n \r\n {t('iluminacaoDesligada')}\r\n \r\n \r\n )}\r\n
\r\n \r\n \r\n )}\r\n\r\n {(util.DMT_CODE)\r\n && (\r\n <>\r\n {t('tempoReal')}\r\n \r\n {t('status')}\r\n
\r\n {noOpStatus\r\n && (\r\n \r\n \r\n {t('semInformacao')}\r\n \r\n )}\r\n {!noOpStatus\r\n && (\r\n \r\n {illuminationStatus[util.STATUS]?.icon}\r\n \r\n {illuminationStatus[util.STATUS]?.label}\r\n \r\n
\r\n )}\r\n {noOpStatus\r\n && (\r\n \r\n
\r\n {t('semInfoIluminacaoDmt')}\r\n
\r\n \r\n )}\r\n \r\n \r\n )}\r\n\r\n {(util.DAL_CODE || util.DMT_CODE) && {t('associacao')}}\r\n {(util.DAL_CODE)\r\n && (\r\n <>\r\n \r\n {t('portaDoDal')}\r\n
\r\n {util?.PORT ?? '-'}\r\n
\r\n \r\n {t('feedbackDoDal')}\r\n
\r\n {util?.FEEDBACK ?? '-'}\r\n
\r\n \r\n )}\r\n {util.DMT_CODE\r\n && (\r\n \r\n {t('feedbackDoDmt')}\r\n
\r\n {util?.PORT ? `F${util?.PORT}` : '-'}\r\n
\r\n )}\r\n\r\n {(profile.manageAllClients || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === util?.CLIENT_ID)) && (\r\n
\r\n history.push(`/analise/utilitario/iluminacao/${utilId}/editar`, { from: screen })}\r\n variant=\"primary\"\r\n >\r\n {`${t('editar')}`}\r\n \r\n
\r\n )}\r\n
\r\n \r\n\r\n {util?.DAL_CODE && (\r\n \r\n {t('funcionamento')}\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n","import { useState } from 'react';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport {\r\n Carousel, Button,\r\n} from '~/components';\r\nimport {\r\n Title, InfoItem,\r\n} from './styles';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { apiCall, apiSpecial } from '~/providers';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { UtilityTree } from 'components/UtilityTree';\r\nimport { NobreakInfo } from '../Utilities/Nobreak/NobreakInfo';\r\nimport { IlluminationInfo } from '../Utilities/Illumination/IlluminationInfo';\r\n\r\nexport const RenderImagesDmtNobreak = (props: { devCode: string, utilSelected?: boolean, nobreakId?: number, deviceId: number }) : JSX.Element => {\r\n const {\r\n utilSelected,\r\n nobreakId,\r\n deviceId,\r\n } = props;\r\n\r\n async function handleGetImages() {\r\n if (utilSelected && nobreakId) {\r\n return apiCall('/upload-service/get-images',\r\n {\r\n referenceId: nobreakId,\r\n referenceType: 'NOBREAKS',\r\n });\r\n }\r\n return apiCall('/upload-service/get-images',\r\n {\r\n referenceId: deviceId,\r\n referenceType: 'DMTS',\r\n });\r\n }\r\n\r\n async function handlePostImage(photo: Blob) {\r\n if (utilSelected && nobreakId) {\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: nobreakId,\r\n referenceType: 'NOBREAKS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: deviceId,\r\n referenceType: 'DMTS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n\r\n async function handleDeleteImage(imageUrl: string) {\r\n if (utilSelected && nobreakId) {\r\n return apiCall('/upload-service/delete-image',\r\n {\r\n referenceId: nobreakId,\r\n referenceType: 'NOBREAKS',\r\n filename: imageUrl,\r\n });\r\n }\r\n return apiCall('/upload-service/delete-image',\r\n {\r\n referenceId: deviceId,\r\n referenceType: 'DMTS',\r\n filename: imageUrl,\r\n });\r\n }\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport const DmtInfo = ({ dmtInfo }): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const match = useRouteMatch<{ devId: string }>();\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const [state, render] = useStateVar({\r\n devId: dmtInfo.DEV_ID,\r\n linkBase: match.url.split(`/${match.params.devId}`)[0],\r\n utils: dmtInfo.dmt?.utilitiesList || [],\r\n utilSelected: false,\r\n selectedIndex: -1 as number,\r\n deviceSelected: true as boolean,\r\n isLoading: false,\r\n });\r\n\r\n async function selectedCard(position: number) {\r\n state.selectedIndex = position;\r\n state.utilSelected = position > -1;\r\n state.deviceSelected = position === -2;\r\n render();\r\n }\r\n\r\n function renderDeviceInfo() {\r\n return (\r\n \r\n \r\n \r\n \r\n {t('dispositivo')}\r\n {dmtInfo.DEV_ID}\r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n {t('informacoes')}\r\n \r\n {t('estado')}\r\n
\r\n {dmtInfo.STATE_ID || '-'}\r\n
\r\n\r\n \r\n {t('cidade')}\r\n
\r\n {dmtInfo.CITY_NAME || '-'}\r\n
\r\n\r\n \r\n {t('cliente')}\r\n
\r\n {dmtInfo.CLIENT_NAME || '-'}\r\n
\r\n\r\n \r\n {t('unidade')}\r\n
\r\n {dmtInfo.UNIT_NAME || '-'}\r\n
\r\n\r\n {t('associacoes')}\r\n \r\n {t('feedbacksEmUso')}\r\n
\r\n {dmtInfo.dmt.utilitiesList.filter((x) => x.PORT).reduce((portList, util) => {\r\n portList.push(`F${util.PORT}`);\r\n return portList;\r\n }, []).join(', ').replace(/,([^,]*)$/, ` ${t('e')}$1`) || '-'}\r\n
\r\n\r\n {(profile.manageAllClients || profile.permissions.isInstaller) && (\r\n
\r\n history.push(`${state.linkBase}/${state.devId}/editar`)}\r\n >\r\n {t('editar')}\r\n \r\n
\r\n )}\r\n
\r\n
\r\n\r\n \r\n
\r\n \r\n \r\n );\r\n }\r\n\r\n if (profile.manageAllClients) {\r\n return (\r\n
\r\n \r\n \r\n
\r\n \r\n {t('dispositivo')}\r\n \r\n
\r\n \r\n\r\n
\r\n \r\n {state.deviceSelected && renderDeviceInfo()}\r\n {state.utilSelected && state.utils[state.selectedIndex].NOBREAK_ID && (\r\n \r\n )}\r\n {state.utilSelected && state.utils[state.selectedIndex].ILLUMINATION_ID && (\r\n \r\n )}\r\n \r\n
\r\n
\r\n );\r\n }\r\n\r\n return renderDeviceInfo();\r\n};\r\n","import { useEffect, useState } from 'react';\r\nimport { t } from 'i18next';\r\nimport moment from 'moment';\r\nimport 'moment/locale/pt-br';\r\nimport 'moment/locale/en-ca';\r\nimport { Helmet } from 'react-helmet';\r\nimport {\r\n useHistory, useRouteMatch, useParams,\r\n} from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport {\r\n ItemTitle,\r\n Card,\r\n Data,\r\n DataText,\r\n Title,\r\n} from './styles';\r\nimport {\r\n Card as NewCard,\r\n Carousel,\r\n Loader,\r\n Button,\r\n StatusBox,\r\n ScheduleButton,\r\n ScheduleViewCard,\r\n ModalWindow,\r\n} from 'components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocketLazy } from 'helpers/wsConnection';\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport { apiCall, apiCallFormData } from 'providers';\r\nimport { DevFullInfo } from 'store';\r\nimport { colors } from 'styles/colors';\r\nimport { DutSchedulesList } from '../SchedulesModals/DUT_SchedulesList';\r\nimport { DamScheduleSummary } from '../SchedulesModals/DAM_Schedule';\r\nimport { ScheduleDut, ExceptionDut } from '../../../providers/types/api-private';\r\nimport { DalInfo } from '../DALs/DalInfo';\r\nimport { DmtInfo } from '../DMTs/DmtInfo';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nfunction rssiDesc(RSSI: number, status: string) {\r\n if (RSSI < 0 && status === 'ONLINE') {\r\n if (RSSI > -50) return t('excelente');\r\n if (RSSI > -60) return t('bom');\r\n if (RSSI > -70) return t('regular');\r\n return t('ruim');\r\n }\r\n return '-';\r\n}\r\n\r\nexport const DevInfo = (): JSX.Element => {\r\n const [profile] = useState(getUserProfile);\r\n const match = useRouteMatch<{ devId: string }>();\r\n const { devId } = useParams<{ devId: string }>();\r\n const history = useHistory();\r\n const verifyTranslation = t('unidade');\r\n const [state, render, setState] = useStateVar(() => {\r\n moment.locale(verifyTranslation === 'unidade' ? 'pt-br' : 'en-ca');\r\n const state = {\r\n devId: match.params.devId,\r\n linkBase: match.url.split(`/${match.params.devId}`)[0],\r\n isLoading: true,\r\n devInfo: getCachedDevInfoSync(devId) as DevFullInfo|null,\r\n temperatureControlState: null as null|{ automation: boolean, mode: string, temperature: number, LTC: number },\r\n online: 'OFFLINE',\r\n RSSI: null as null|string,\r\n lastTelemetryTS: null as null|string,\r\n deviceTimestamp: null,\r\n DUTS_SCHEDULES: [] as ScheduleDut[],\r\n SCHEDULES_ACTIVE_QUANTITY: 0 as number,\r\n DUTS_EXCEPTIONS: [] as ExceptionDut[],\r\n openModal: false,\r\n };\r\n return state;\r\n });\r\n\r\n function redirectToIntegrations() {\r\n if (match.params.devId.startsWith('DRI') || match.params.devId.startsWith('DMA')) {\r\n const url = `/integracoes/info/diel/${state.devId}/perfil`;\r\n history.push(url);\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n redirectToIntegrations();\r\n }, []);\r\n\r\n const isDal = state.devId.startsWith('DAL');\r\n const isDmt = state.devId.startsWith('DMT');\r\n\r\n const wsl = useWebSocketLazy();\r\n function onWsOpen(wsConn) {\r\n if (!state.devInfo) return;\r\n if (state.devInfo.dac) wsConn.send({ type: 'subscribeTelemetry', data: { dac_id: state.devId } });\r\n else if (state.devInfo.dam) wsConn.send({ type: 'subscribeStatus', data: { dam_id: state.devId } });\r\n else if (state.devInfo.dut) wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: state.devId } });\r\n }\r\n function handleDamMessages(payload) {\r\n if (payload.type === 'damStatus' && payload.data.dev_id === state.devId) {\r\n if (payload.data.status) state.online = payload.data.status;\r\n if (payload.data.timestamp) state.lastTelemetryTS = payload.data.timestamp;\r\n if (payload.data.deviceTimestamp) {\r\n const data = moment(payload.data.deviceTimestamp);\r\n payload.data.deviceTimestamp = data;\r\n state.deviceTimestamp = payload.data.deviceTimestamp;\r\n }\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n render();\r\n }\r\n }\r\n function handleDacMessages(payload) {\r\n if (payload.type === 'dacTelemetry' && payload.data.dac_id === state.devId) {\r\n if (payload.data.status) state.online = payload.data.status;\r\n if (payload.data.timestamp) state.lastTelemetryTS = payload.data.timestamp;\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n render();\r\n }\r\n if (payload.type === 'dacOnlineStatus' && payload.data.dac_id === state.devId) {\r\n if (payload.data.status) state.online = payload.data.status;\r\n if (payload.data.timestamp) state.lastTelemetryTS = payload.data.timestamp;\r\n render();\r\n }\r\n }\r\n function handleDutMessages(payload) {\r\n if (payload.type === 'dutTelemetry' && payload.data.dev_id === state.devId) {\r\n if (payload.data.status) state.online = payload.data.status;\r\n if (payload.data.timestamp) state.lastTelemetryTS = payload.data.timestamp;\r\n if (payload.data.RSSI != null) state.RSSI = rssiDesc(payload.data.RSSI, payload.data.status);\r\n render();\r\n }\r\n }\r\n function onWsMessage(payload) {\r\n if (!payload) return;\r\n if (payload.data.timestamp) {\r\n const data = moment(payload.data.timestamp);\r\n payload.data.timestamp = data;\r\n }\r\n\r\n handleDamMessages(payload);\r\n handleDacMessages(payload);\r\n handleDutMessages(payload);\r\n }\r\n function beforeWsClose(wsConn) {\r\n if (!state.devInfo) return;\r\n if (state.devInfo.dac) wsConn.send({ type: 'subscribeTelemetry', data: {} });\r\n else if (state.devInfo.dam) wsConn.send({ type: 'unsubscribeStatus' });\r\n else if (state.devInfo.dut) wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n }\r\n\r\n async function getDutAutExtraInfo(devInfo: DevFullInfo) {\r\n if (state.devInfo?.status === 'ONLINE') {\r\n apiCall('/request-dut-aut-config', { devId: devInfo.DEV_ID })\r\n .then((response) => {\r\n state.temperatureControlState = {\r\n automation: response.enabled,\r\n mode: response.ctrl_mode,\r\n temperature: response.setpoint,\r\n LTC: response.LTC,\r\n };\r\n render();\r\n })\r\n .catch(console.log);\r\n }\r\n\r\n apiCall('/dut/get-dut-schedules', { DUT_ID: devInfo.DEV_ID, CLIENT_ID: devInfo.CLIENT_ID, UNIT_ID: devInfo.UNIT_ID })\r\n .then((response) => {\r\n state.DUTS_SCHEDULES = response.schedules;\r\n state.SCHEDULES_ACTIVE_QUANTITY = state.DUTS_SCHEDULES.filter((schedule) => schedule.SCHEDULE_STATUS).length;\r\n render();\r\n })\r\n .catch(console.log);\r\n\r\n apiCall('/dut/get-dut-exceptions', { DUT_ID: devInfo.DEV_ID, CLIENT_ID: devInfo.CLIENT_ID, UNIT_ID: devInfo.UNIT_ID })\r\n .then((response) => {\r\n state.DUTS_EXCEPTIONS = response.exceptions;\r\n render();\r\n })\r\n .catch(console.log);\r\n }\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n setState({ isLoading: true });\r\n\r\n if (state.devId.includes('DAT')) {\r\n const url = `/analise/ativo/${state.devId}/informacoes`;\r\n history.push(url);\r\n return;\r\n }\r\n\r\n const devInfo = (await getCachedDevInfo(state.devId, { forceFresh: true }))!;\r\n state.devInfo = devInfo;\r\n if (devInfo.status) state.online = devInfo.status;\r\n if (devInfo.lastMessageTS) state.lastTelemetryTS = devInfo.lastMessageTS;\r\n wsl.start(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n const isDutAut = !!(devInfo && devInfo.dut_aut);\r\n const isDutQA = state.devInfo?.dut?.operation_mode === 5 || false;\r\n if (isDutAut && !isDutQA) {\r\n await getDutAutExtraInfo(devInfo);\r\n }\r\n } catch (err) {\r\n toast.error(t('erroDadosDispositivo'));\r\n console.log(err);\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }, []);\r\n\r\n async function handleGetDACImages() {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DACS',\r\n });\r\n }\r\n async function handlePostDACImage(photo: Blob) {\r\n return apiCallFormData('/upload-service/upload-image',\r\n {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DACS',\r\n },\r\n { file: photo });\r\n }\r\n async function handleDeleteDACImage(imageUrl: string) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DACS',\r\n filename: imageUrl,\r\n });\r\n }\r\n async function handleGetDUTImages() {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DUTS',\r\n });\r\n }\r\n async function handlePostDUTImage(photo: Blob) {\r\n return apiCallFormData('/upload-service/upload-image',\r\n {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DUTS',\r\n },\r\n { file: photo });\r\n }\r\n async function handleDeleteDUTImage(imageUrl: string) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DUTS',\r\n filename: imageUrl,\r\n });\r\n }\r\n async function handleGetDAMImages() {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DAMS',\r\n });\r\n }\r\n async function handlePostDAMImage(photo: Blob) {\r\n return apiCallFormData('/upload-service/upload-image',\r\n {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DAMS',\r\n },\r\n { file: photo });\r\n }\r\n async function handleDeleteDAMImage(imageUrl: string) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DAMS',\r\n filename: imageUrl,\r\n });\r\n }\r\n async function handleGetDRIImages() {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DRIS',\r\n });\r\n }\r\n async function handlePostDRIImage(photo: Blob) {\r\n return apiCallFormData('/upload-service/upload-image',\r\n {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DRIS',\r\n },\r\n { file: photo });\r\n }\r\n async function handleDeleteDRIImage(imageUrl: string) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: state.devInfo!.DEVICE_ID,\r\n referenceType: 'DRIS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n function openModalDutSchedulesList() {\r\n setState({ openModal: true });\r\n render();\r\n }\r\n\r\n const { devInfo } = state;\r\n\r\n function renderCustomPages(type: string) {\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devId, t('perfil'))}\r\n \r\n {state.devInfo && }\r\n
\r\n \r\n \r\n {state.isLoading && (\r\n \r\n )}\r\n {(!state.isLoading && devInfo && type === 'dal')\r\n && (\r\n \r\n )}\r\n {(!state.isLoading && devInfo && type === 'dmt')\r\n && (\r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n }\r\n if (isDal || isDmt) {\r\n return renderCustomPages(isDmt ? 'dmt' : 'dal');\r\n }\r\n\r\n function showDevWifiConn() {\r\n return ((profile.viewAllClients || profile.manageSomeClient) && (state.RSSI != null)) && (\r\n \r\n {/* eslint-disable */}\r\n   {`${t('intensidadeDoWifi')}:`}\r\n {/* eslint-enable */}\r\n {state.RSSI}\r\n \r\n );\r\n }\r\n\r\n function renderScheds(devInfo) {\r\n return (\r\n \r\n {(devInfo.dam) && ((!devInfo.dac) || (devInfo.dam.DAM_DISABLED !== 1)) && (\r\n
\r\n \r\n
\r\n )}\r\n {(devInfo.dut_aut) && (devInfo.dut_aut.DUTAUT_DISABLED !== 1) && (\r\n
\r\n {/* */}\r\n {(state.DUTS_SCHEDULES.length > 2 || state.DUTS_EXCEPTIONS.length > 0) && (\r\n \r\n {t('funcionamento')}\r\n \r\n \r\n )}\r\n {state.DUTS_SCHEDULES.length < 3 && state.DUTS_SCHEDULES.map((schedule, index) => (\r\n \r\n \r\n \r\n ))}\r\n
\r\n )}\r\n
\r\n );\r\n }\r\n\r\n const getTranslatedInstallationLocation = (str?: string|null) => {\r\n const opts = {\r\n 'casa-de-maquina': t('casaDeMaquina'),\r\n 'ambiente-refrigerado': t('ambienteRefrigeradoDam'),\r\n outros: t('outros'),\r\n };\r\n\r\n return (str && opts[str]) || null;\r\n };\r\n\r\n function renderDevInfo() {\r\n return (devInfo && (\r\n <>\r\n \r\n {t('status')}\r\n \r\n {state.online || 'OFFLINE'}\r\n {showDevWifiConn()}\r\n \r\n\r\n \r\n \r\n DEV ID\r\n \r\n {devInfo.DEV_ID || t('semInformacao')}\r\n \r\n\r\n \r\n \r\n BT ID\r\n \r\n {devInfo.BT_ID || t('semInformacao')}\r\n \r\n\r\n \r\n \r\n {t('ultimaMensagemRecebida')}\r\n \r\n \r\n {(state.lastTelemetryTS && moment(state.lastTelemetryTS).format('lll')) || t('semInformacao')}\r\n \r\n {(profile.manageAllClients && state.deviceTimestamp && (state.deviceTimestamp !== state.lastTelemetryTS))\r\n && (\r\n \r\n {t('horarioDispositivo')}\r\n {moment(state.deviceTimestamp).format('lll')}\r\n \r\n )}\r\n \r\n\r\n {(devInfo.dam && !devInfo.dac)\r\n && (\r\n \r\n \r\n {t('modoOperacao')}\r\n \r\n {devInfo.dam.dam_mode || t('semInformacao')}\r\n \r\n )}\r\n\r\n {t('informacoes')}\r\n\r\n \r\n \r\n {t('estado')}\r\n \r\n {devInfo.STATE_ID || t('semInformacao')}\r\n \r\n\r\n \r\n \r\n {t('cidade')}\r\n \r\n {devInfo.CITY_NAME || t('semInformacao')}\r\n \r\n\r\n \r\n \r\n {t('unidade')}\r\n \r\n {devInfo.UNIT_NAME || t('semInformacao')}\r\n \r\n {(devInfo.dac)\r\n && (\r\n <>\r\n \r\n \r\n {t('conjunto')}\r\n \r\n {devInfo.dac.GROUP_NAME || t('semInformacao')}\r\n \r\n \r\n \r\n {t('condensadora')}\r\n \r\n {devInfo.dac.DAC_NAME || t('semInformacao')}\r\n \r\n \r\n \r\n {t('descricao')}\r\n \r\n {\r\n (devInfo.dac.DAC_DESC?.startsWith('https://') || devInfo.dac.DAC_DESC?.startsWith('http://'))\r\n ?
{devInfo.dac.DAC_DESC}\r\n : {devInfo.dac.DAC_DESC || t('semInformacao')}\r\n }\r\n \r\n \r\n \r\n {t('modelo')}\r\n \r\n {devInfo.dac.DAC_MODEL || t('semInformacao')}\r\n \r\n \r\n \r\n {t('capacidadeFrigorifica')}\r\n \r\n {verifyCapacityPower(devInfo)}\r\n \r\n \r\n \r\n {t('fluidoRefrigerante')}\r\n \r\n {(devInfo.optsDescs || {})[devInfo.dac.FLUID_TYPE] || t('semInformacao')}\r\n \r\n \r\n )}\r\n {(devInfo.dam)\r\n && (\r\n \r\n \r\n {t('localDeInstalacao')}\r\n \r\n {getTranslatedInstallationLocation(devInfo.dam?.INSTALLATION_LOCATION) ?? '-'}\r\n \r\n )}\r\n {(devInfo.dam && !devInfo.dac)\r\n && (\r\n \r\n \r\n {t('conjunto')}\r\n \r\n {(devInfo.dam.groups && devInfo.dam.groups.map((group) => group.GROUP_NAME).join(', ')) || t('semInformacao')}\r\n \r\n )}\r\n {(devInfo.dam)\r\n && (\r\n \r\n \r\n {t('modoEco')}\r\n \r\n {habilitadoDesabilitado(devInfo)}\r\n \r\n )}\r\n {(devInfo.dut_aut && state.temperatureControlState && profile.manageAllClients)\r\n && (\r\n \r\n \r\n {t('modoEco')}\r\n \r\n {JSON.stringify(state.temperatureControlState)}\r\n \r\n )}\r\n {(devInfo.dut)\r\n && (\r\n <>\r\n \r\n \r\n {t('ambiente')}\r\n \r\n {devInfo.dut.ROOM_NAME || t('semInformacao')}\r\n \r\n \r\n )}\r\n\r\n \r\n \r\n {t('inicioMonitoramento')}\r\n \r\n \r\n {(devInfo.DAT_BEGMON && moment(devInfo.DAT_BEGMON).format('lll')) || t('semInformacao')}\r\n \r\n \r\n\r\n {/* Informação ocultada para futuras melhorias */}\r\n {/* \r\n \r\n Data da primeira automação\r\n \r\n \r\n {(devInfo.DAT_BEGAUT && moment(devInfo.DAT_BEGAUT).format('lll')) || 'Sem informação'}\r\n \r\n */}\r\n \r\n {renderScheds(devInfo)}\r\n \r\n \r\n \r\n {(devInfo.dac)\r\n && (\r\n \r\n )}\r\n {(devInfo.dut)\r\n && (\r\n \r\n )}\r\n {(devInfo.dam && !devInfo.dac)\r\n && (\r\n \r\n )}\r\n {(devInfo.dri)\r\n && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {isEditEnable(devInfo)}\r\n \r\n \r\n ) || null);\r\n }\r\n\r\n function habilitadoDesabilitado(devInfo: DevFullInfo) {\r\n if (devInfo.dam?.ENABLE_ECO === 1 || devInfo.dam?.ENABLE_ECO === 2) {\r\n return t('habilitado');\r\n }\r\n return t('desabilitado');\r\n }\r\n\r\n let permissionProfile = (state.devInfo && state.devInfo.CLIENT_ID\r\n ? profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === state.devInfo?.CLIENT_ID)\r\n : false) || profile.manageAllClients;\r\n\r\n if (permissionProfile === false || permissionProfile === undefined) {\r\n permissionProfile = !!profile.adminClientProg?.UNIT_MANAGE.some((item) => item === state.devInfo?.UNIT_ID);\r\n }\r\n\r\n function isEditEnable(devInfo: DevFullInfo) {\r\n if (permissionProfile || profile.permissions.CLIENT_MANAGE.includes(devInfo.CLIENT_ID) || profile.permissions.isInstaller) {\r\n return (\r\n
\r\n history.push(`${state.linkBase}/${state.devId}/editar`)}\r\n variant=\"primary\"\r\n >\r\n {t('editar')}\r\n \r\n
\r\n );\r\n }\r\n return <>;\r\n }\r\n\r\n function verifyCapacityPower(devInfo: DevFullInfo) {\r\n if (devInfo.dac?.CAPACITY_PWR) {\r\n return `${formatNumberWithFractionDigits(devInfo.dac?.CAPACITY_PWR)} ${devInfo.dac?.CAPACITY_UNIT || ''}`;\r\n }\r\n return t('semInformacao');\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devId, t('perfil'))}\r\n \r\n {state.devInfo && }\r\n \r\n \r\n {state.isLoading\r\n ? (\r\n \r\n )\r\n : renderDevInfo() }\r\n \r\n {state.openModal && (\r\n { setState({ openModal: false }); }}>\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('DevInfo', 'component')(DevInfo);\r\n","import styled from 'styled-components';\r\n\r\nimport { StatusBox } from '~/components';\r\nimport { DottedLineIcon, LineIcon } from '~/icons';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const StatusL1 = styled(StatusBox)`\r\nmargin-left: 12px;\r\nmin-width: 100px;\r\n`;\r\n\r\nexport const ColoredDottedLine = styled(DottedLineIcon)(\r\n ({ color }) => `\r\nmargin-left: 10px;\r\ncolor: ${color}\r\n`,\r\n);\r\n\r\nexport const ColoredLine = styled(LineIcon)(\r\n ({ color }) => `\r\nmargin-left: 10px;\r\ncolor: ${color}\r\n`,\r\n);\r\n\r\nexport const CheckboxLine = styled.div`\r\ndisplay: flex;\r\njustify-content: flex-start;\r\nalign-items: center;\r\n`;\r\n\r\nexport const Text = styled.span`\r\nfont-weight: normal;\r\nfont-size: 1em;\r\nline-height: 26px;\r\ncolor: ${colors.Grey400};\r\n`;\r\n\r\nexport const Container = styled.div`\r\nmin-height: 410px;\r\nwidth: 100%;\r\nborder-radius: 8px;\r\nbackground-color: ${colors.White};\r\npadding: 32px 24px;\r\nbox-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const CardWrapper = styled.div`\r\npadding: 32px 16px;\r\nborder-radius: 8px;\r\nmin-height: 118px;\r\nbackground-color: ${colors.White};\r\nbox-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n@media (min-width: 992px) {\r\n padding: 32px;\r\n}\r\n`;\r\n\r\nexport const CardTitle = styled.div`\r\nfont-style: normal;\r\nfont-weight: 500;\r\nfont-size: 1.5em;\r\ncolor: ${colors.Grey400};\r\n`;\r\n\r\nexport const DivisionLine = styled.div`\r\nposition: absolute;\r\nleft: 50%;\r\ntop: 0;\r\nbottom: 0;\r\nheight: 100%;\r\nwidth: 2px;\r\nbackground: ${colors.Grey100};\r\n`;\r\n","import { useEffect, useState } from 'react';\r\nimport { t } from 'i18next';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport moment from 'moment';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Scatter, ScatterChart,\r\n} from 'recharts';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport * as axisCalc from '~/helpers/axisCalc';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { useWebSocketLazy } from '~/helpers/wsConnection';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport {\r\n StatusL1,\r\n ColoredDottedLine,\r\n ColoredLine,\r\n CheckboxLine,\r\n Text,\r\n Container,\r\n CardWrapper,\r\n CardTitle,\r\n DivisionLine,\r\n} from './styles';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nconst TSPAN = 5 * 60 * 1000;\r\nconst ONLINE_TIMEOUT = 10 * 1000;\r\n\r\nfunction invBool(v) {\r\n return v === 1 ? 0 : v === 0 ? 1 : v;\r\n}\r\n\r\nfunction formatTimeToTimeAxios(date: moment.Moment, seconds = 0, format = 'HH:mm:ss') {\r\n return moment(date)\r\n .add(seconds, 'seconds')\r\n .format(format);\r\n}\r\n\r\nexport const RealTime = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ devId }>();\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {t('dielEnergiaTempoReal')}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nfunction CustomTickTime(props) {\r\n const {\r\n x, y, payload, anchor, initialTimeRef,\r\n } = props;\r\n return (\r\n \r\n \r\n {(payload.value > 1000000)\r\n ? new Date(payload.value).toLocaleTimeString()\r\n : formatTimeToTimeAxios(moment(initialTimeRef), payload.value)}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction CustomTickTemp(props) {\r\n const {\r\n x, y, payload, anchor, axisInfo,\r\n } = props;\r\n\r\n let label = payload.value;\r\n if (payload.value < (axisInfo.L1start - 5)) {\r\n label = ((payload.value % 5) > -2.5) ? t('liberadoAbreviado') : t('bloqueadoAbreviado');\r\n } else if (payload.value < axisInfo.L1start) {\r\n label = ((payload.value % 5) > -2.5) ? t('ligadoAbreviado') : t('desligadoAbreviado');\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction CustomTickPress(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n\r\n return (\r\n \r\n \r\n {payload.value}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction ChartRealTime(props) {\r\n const {\r\n state,\r\n graphEnable,\r\n isDesktop,\r\n profile,\r\n } = props;\r\n\r\n let styleLabelTemperature = {};\r\n let styleLabelPressure = {};\r\n\r\n if (isDesktop) {\r\n styleLabelTemperature = { value: `${t('temperatura')}`, angle: -90, color: '#656565' };\r\n styleLabelPressure = { value: `${t('pressao')}`, angle: -90, color: '#656565' };\r\n } else {\r\n styleLabelTemperature = {\r\n value: `${t('temperaturaC')}`,\r\n position: 'top',\r\n dx: 54,\r\n dy: -10,\r\n style: {\r\n fontSize: '12px',\r\n fontWeight: '500',\r\n },\r\n };\r\n styleLabelPressure = {\r\n value: `${t('pressaoBar')}`,\r\n position: 'top',\r\n dx: -40,\r\n dy: -10,\r\n style: {\r\n fontSize: '12px',\r\n fontWeight: '500',\r\n },\r\n };\r\n }\r\n\r\n return (\r\n \r\n {!isDesktop && profile?.manageAllClients && state.devInfo?.dac?.FLUID_TYPE && (\r\n \r\n )}\r\n \r\n \r\n \r\n }\r\n tickCount={isDesktop ? 6 : 3}\r\n domain={['dataMin', 'dataMax']}\r\n />\r\n }\r\n ticks={state.axisInfo.tempTicks}\r\n domain={state.axisInfo.tempLimits}\r\n interval={0}\r\n label={styleLabelTemperature}\r\n />\r\n }\r\n ticks={state.axisInfo.presTicks}\r\n domain={state.axisInfo.presLimits}\r\n orientation=\"right\"\r\n label={styleLabelPressure}\r\n />\r\n\r\n {graphEnable.Tamb && (\r\n null} data={state.graphData.Tamb} fill={colors.Green} isAnimationActive={false} />\r\n )}\r\n {graphEnable.Tsuc && (\r\n null} data={state.graphData.Tsuc} fill={colors.Blue300} isAnimationActive={false} />\r\n )}\r\n {graphEnable.Tliq && (\r\n null} data={state.graphData.Tliq} fill={colors.Red} isAnimationActive={false} />\r\n )}\r\n {graphEnable.deltaT && (\r\n null} data={state.graphData.deltaT} fill=\"#181842\" isAnimationActive={false} strokeDasharray=\"5 5\" />\r\n )}\r\n {graphEnable.Psuc && (\r\n null} data={state.graphData.Psuc} fill={colors.Blue400} isAnimationActive={false} strokeDasharray=\"5 5\" />\r\n )}\r\n {graphEnable.Pliq && (\r\n null} data={state.graphData.Pliq} fill={colors.Red} isAnimationActive={false} strokeDasharray=\"5 5\" />\r\n )}\r\n {graphEnable.Tsc && (\r\n null} data={state.graphData.Tsc} fill={colors.Blue500} isAnimationActive={false} />\r\n )}\r\n {graphEnable.Tsh && (\r\n null} data={state.graphData.Tsh} fill={colors.Pink400} isAnimationActive={false} />\r\n )}\r\n {graphEnable.Lcmp && (\r\n null} data={state.graphData.Lcmp} fill={colors.Grey400} isAnimationActive={false} />\r\n )}\r\n {graphEnable.Levp && (\r\n null} data={state.graphData.Levp} fill={colors.Grey400} isAnimationActive={false} />\r\n )}\r\n {graphEnable.Lcut && (\r\n null} data={state.graphData.Lcut} fill={colors.Orange600} isAnimationActive={false} />\r\n )}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction CommandStatus(props) {\r\n const {\r\n status,\r\n isDesktop,\r\n labelGreen,\r\n labelRed,\r\n context,\r\n } = props;\r\n\r\n if (status !== 'undefined') {\r\n let statusText = '';\r\n\r\n switch (context) {\r\n case 'signal':\r\n statusText = status === 1 ? labelGreen : labelRed;\r\n break;\r\n case 'block':\r\n statusText = status === 0 ? labelGreen : labelRed;\r\n break;\r\n default:\r\n break;\r\n }\r\n\r\n const statusColor = statusText === labelGreen ? colors.Green : colors.Red;\r\n\r\n const additionalStyles = isDesktop ? {} : { marginLeft: 0, minWidth: '20px' };\r\n\r\n return (\r\n \r\n {statusText}\r\n \r\n );\r\n }\r\n\r\n return ;\r\n}\r\n\r\nfunction DacFluid(props) {\r\n const { state, isDesktop } = props;\r\n\r\n let styleText: React.CSSProperties = {};\r\n let styleFluidType: React.CSSProperties = {};\r\n\r\n if (isDesktop) {\r\n styleText = { paddingLeft: '42px' };\r\n styleFluidType = {};\r\n } else {\r\n styleText = { fontSize: '12px', float: 'right', marginRight: '24px' };\r\n styleFluidType = { fontWeight: 'bold' };\r\n }\r\n\r\n return (\r\n \r\n {`${t('fluido')}: `}\r\n \r\n {state.devInfo?.dac?.FLUID_TYPE}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction RealTimeDesktop(props) {\r\n const {\r\n state,\r\n hwCfg,\r\n graphEnable,\r\n profile,\r\n render,\r\n } = props;\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { graphEnable.Tamb = !graphEnable.Tamb; render(); }}\r\n value={graphEnable.Tamb}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {state.devInfo?.dac?.DAC_TYPE === 'self' ? t('retorno') : t('externa')}\r\n {' '}\r\n {formatNumberWithFractionDigits(state.lastData?.Tamb ?? '-')}\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n {\r\n verifyIsHeatExchanger(hwCfg, state)\r\n ? (\r\n <>\r\n \r\n { graphEnable.Tliq = !graphEnable.Tliq; render(); }}\r\n value={graphEnable.Tliq}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) ? t('deRetornoAgua') : t('deLiquido')}\r\n {' '}\r\n {state.lastData?.Tliq ? formatNumberWithFractionDigits(state.lastData?.Tliq) : '-'}\r\n {' '}\r\n [°C]\r\n \r\n \r\n\r\n \r\n \r\n { graphEnable.Tsuc = !graphEnable.Tsuc; render(); }}\r\n value={graphEnable.Tsuc}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) ? t('saidaDeAgua') : t('deSuccao')}\r\n {' '}\r\n {state.lastData?.Tsuc ? formatNumberWithFractionDigits(state.lastData?.Tsuc) : '-'}\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n \r\n ) : (\r\n <>\r\n \r\n { graphEnable.Tsuc = !graphEnable.Tsuc; render(); }}\r\n value={graphEnable.Tsuc}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) ? t('saidaDeAgua') : t('deSuccao')}\r\n {' '}\r\n {state.lastData?.Tsuc ? formatNumberWithFractionDigits(state.lastData?.Tsuc) : '-'}\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n\r\n \r\n { graphEnable.Tliq = !graphEnable.Tliq; render(); }}\r\n value={graphEnable.Tliq}\r\n color=\"primary\"\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) ? t('deRetornoAgua') : t('deLiquido')}\r\n {' '}\r\n {state.lastData?.Tliq ? formatNumberWithFractionDigits(state.lastData?.Tliq) : '-'}\r\n {' '}\r\n [°C]\r\n \r\n \r\n\r\n \r\n \r\n )\r\n }\r\n\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) && (\r\n \r\n { graphEnable.deltaT = !graphEnable.deltaT; render(); }}\r\n value={graphEnable.deltaT}\r\n color=\"primary\"\r\n />\r\n \r\n ΔT =\r\n {' '}\r\n {state.lastData?.deltaT ? formatNumberWithFractionDigits(state.lastData?.deltaT) : '-'}\r\n {' '}\r\n [°C]\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasPsuc && (\r\n \r\n { graphEnable.Psuc = !graphEnable.Psuc; render(); }}\r\n value={graphEnable.Psuc}\r\n color=\"primary\"\r\n />\r\n \r\n {t('pressaoSuccao')}\r\n {' '}\r\n {state.lastData?.Psuc ? formatNumberWithFractionDigits(state.lastData?.Psuc) : '-'}\r\n {' '}\r\n [\r\n {state.usePsi ? 'PSI' : 'Bar'}\r\n ]\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasPliq && (\r\n \r\n { graphEnable.Pliq = !graphEnable.Pliq; render(); }}\r\n value={graphEnable.Pliq}\r\n color=\"primary\"\r\n />\r\n \r\n {t('pressaoLiquido')}\r\n {' '}\r\n {state.lastData?.Pliq ? formatNumberWithFractionDigits(state.lastData?.Pliq) : '-'}\r\n {' '}\r\n {' '}\r\n [\r\n {state.usePsi ? 'PSI' : 'Bar'}\r\n ]\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasTsc && (\r\n \r\n { graphEnable.Tsc = !graphEnable.Tsc; render(); }}\r\n value={graphEnable.Tsc}\r\n color=\"primary\"\r\n />\r\n \r\n {t('subresfriamento')}\r\n {' '}\r\n {state.lastData?.Tsc ? formatNumberWithFractionDigits(state.lastData?.Tsc) : '-'}\r\n {' '}\r\n [ΔTºC]\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasTsh && (\r\n \r\n { graphEnable.Tsh = !graphEnable.Tsh; render(); }}\r\n value={graphEnable.Tsh}\r\n color=\"primary\"\r\n />\r\n \r\n {t('superaquecimento')}\r\n {' '}\r\n {state.lastData?.Tsh ? formatNumberWithFractionDigits(state.lastData?.Tsh) : '-'}\r\n {' '}\r\n [ΔTºC]\r\n \r\n \r\n \r\n )}\r\n {(!hwCfg.hasAutomation) && (\r\n \r\n { graphEnable.Lcmp = !graphEnable.Lcmp; render(); }}\r\n value={graphEnable.Lcmp}\r\n color=\"primary\"\r\n />\r\n {t('sinalComando')}\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasAutomation && (\r\n \r\n { graphEnable.Levp = !graphEnable.Levp; render(); }}\r\n value={graphEnable.Levp}\r\n color=\"primary\"\r\n />\r\n {t('sinalComando')}\r\n \r\n \r\n \r\n )}\r\n {hwCfg.hasAutomation && (\r\n \r\n { graphEnable.Lcut = !graphEnable.Lcut; render(); }}\r\n value={graphEnable.Lcut}\r\n color=\"primary\"\r\n />\r\n {t('bloqueioComando')}\r\n \r\n \r\n \r\n )}\r\n {profile.manageAllClients && state.devInfo?.dac?.FLUID_TYPE && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {(profile.manageAllClients) && (\r\n \r\n {t('deteccaoFalhas')}\r\n {state.debugFaults.map((fault) => (\r\n
\r\n {' '}\r\n  \r\n {' '}\r\n {fault.desc}\r\n
\r\n ))}\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction verifyIsFancoilOrHeatExchanger(hwCfg, state) {\r\n const result = !!(hwCfg.isFanCoil || state.devInfo?.dac?.DAC_APPL === 'trocador-de-calor');\r\n return result;\r\n}\r\n\r\nfunction verifyIsHeatExchanger(hwCfg, state) {\r\n const result = !!(state.devInfo?.dac?.DAC_APPL === 'trocador-de-calor');\r\n return result;\r\n}\r\n\r\nfunction RealTimeMobile(props) {\r\n const {\r\n state,\r\n hwCfg,\r\n graphEnable,\r\n profile,\r\n render,\r\n } = props;\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n { graphEnable.Tsuc = !graphEnable.Tsuc; render(); }}\r\n value={graphEnable.Tsuc}\r\n style={{\r\n color: colors.Blue300,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) ? t('saidaDeAgua') : t('deSuccao')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Tsuc ? formatNumberWithFractionDigits(state.lastData?.Tsuc) : '-'} °C`}\r\n

\r\n
\r\n
\r\n \r\n { graphEnable.Tamb = !graphEnable.Tamb; render(); }}\r\n value={graphEnable.Tamb}\r\n style={{\r\n color: colors.Green,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {state.devInfo?.dac?.DAC_TYPE === 'self' ? t('retorno') : t('externa')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Tamb ? formatNumberWithFractionDigits(state.lastData?.Tamb) : '-'} °C`}\r\n

\r\n
\r\n
\r\n {hwCfg.hasPsuc && (\r\n \r\n { graphEnable.Psuc = !graphEnable.Psuc; render(); }}\r\n value={graphEnable.Psuc}\r\n style={{\r\n color: colors.Blue400,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('pressaoSuccao')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Psuc ? formatNumberWithFractionDigits(state.lastData?.Psuc) : '-'} ${state.usePsi ? 'PSI' : 'Bar'}`}\r\n

\r\n
\r\n
\r\n )}\r\n \r\n { graphEnable.Tliq = !graphEnable.Tliq; render(); }}\r\n value={graphEnable.Tliq}\r\n style={{\r\n color: colors.Red,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('temperatura')}\r\n {' '}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) ? t('deRetornoAgua') : t('deLiquido')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Tliq ? formatNumberWithFractionDigits(state.lastData?.Tliq) : '-'} °C`}\r\n

\r\n
\r\n
\r\n {hwCfg.hasTsh && (\r\n \r\n { graphEnable.Tsh = !graphEnable.Tsh; render(); }}\r\n value={graphEnable.Tsh}\r\n style={{\r\n color: colors.Pink400,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('superaquecimento')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Tsh ? formatNumberWithFractionDigits(state.lastData?.Tsh) : '-'} °C`}\r\n

\r\n
\r\n
\r\n )}\r\n {hwCfg.hasPliq && (\r\n \r\n { graphEnable.Pliq = !graphEnable.Pliq; render(); }}\r\n value={graphEnable.Pliq}\r\n style={{\r\n color: colors.Red,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('pressaoLiquido')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Pliq ? formatNumberWithFractionDigits(state.lastData?.Pliq) : '-'} ${state.usePsi ? 'PSI' : 'Bar'}`}\r\n

\r\n
\r\n
\r\n )}\r\n {verifyIsFancoilOrHeatExchanger(hwCfg, state) && (\r\n \r\n { graphEnable.deltaT = !graphEnable.deltaT; render(); }}\r\n value={graphEnable.deltaT}\r\n style={{\r\n color: colors.Blue500,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n ΔT\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.deltaT ? formatNumberWithFractionDigits(state.lastData?.deltaT) : '-'} °C`}\r\n

\r\n
\r\n
\r\n )}\r\n {hwCfg.hasTsc && (\r\n \r\n { graphEnable.Tsc = !graphEnable.Tsc; render(); }}\r\n value={graphEnable.Tsc}\r\n style={{\r\n color: colors.Blue500,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('subresfriamento')}\r\n {'\\n'}\r\n

\r\n {`${state.lastData?.Tsc ? formatNumberWithFractionDigits(state.lastData?.Tsc) : '-'} °C`}\r\n

\r\n
\r\n
\r\n )}\r\n {hwCfg.hasAutomation ? (\r\n <>\r\n \r\n { graphEnable.Levp = !graphEnable.Levp; render(); }}\r\n value={graphEnable.Levp}\r\n style={{\r\n color: colors.Grey400,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('sinalComando')}\r\n \r\n \r\n \r\n \r\n { graphEnable.Lcut = !graphEnable.Lcut; render(); }}\r\n value={graphEnable.Lcut}\r\n style={{\r\n color: colors.Orange600,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('bloqueioComando')}\r\n \r\n \r\n \r\n \r\n ) : (\r\n \r\n { graphEnable.Lcmp = !graphEnable.Lcmp; render(); }}\r\n value={graphEnable.Lcmp}\r\n style={{\r\n color: colors.Grey400,\r\n padding: '0 5px 0 10px',\r\n }}\r\n />\r\n \r\n {t('sinalComando')}\r\n \r\n \r\n \r\n )}\r\n
\r\n
\r\n \r\n \r\n );\r\n}\r\n\r\nexport function RealTimeContents({ onDevInfoUpdate = undefined as undefined | (() => void) }) {\r\n const { t } = useTranslation();\r\n const { devId: dacId } = useParams<{ devId: string }>();\r\n const [profile] = useState(getUserProfile);\r\n const [state, render] = useStateVar(() => {\r\n const state = {\r\n dacId,\r\n devInfo: getCachedDevInfoSync(dacId),\r\n graphData: {\r\n Lcmp: [] as { x: number, y?: number, L?: number }[],\r\n Levp: [] as { x: number, y?: number, L?: number }[],\r\n Lcut: [] as { x: number, y?: number, L?: number }[],\r\n Tamb: [] as { x: number, y: number }[],\r\n Tsuc: [] as { x: number, y: number }[],\r\n Tliq: [] as { x: number, y: number }[],\r\n Psuc: [] as { x: number, y: number }[],\r\n Pliq: [] as { x: number, y: number }[],\r\n Tsc: [] as { x: number, y: number }[],\r\n Tsh: [] as { x: number, y: number }[],\r\n deltaT: [] as { x: number, y: number }[],\r\n },\r\n axisDataLimits: {\r\n minTval: undefined as undefined|number,\r\n maxTval: undefined as undefined|number,\r\n minPval: undefined as undefined|number,\r\n maxPval: undefined as undefined|number,\r\n },\r\n hasNewTelm: false,\r\n axisInfo: {\r\n L1start: null as null|number,\r\n tempLimits: [0, 40],\r\n tempTicks: [0, 5, 10, 15, 20, 25, 30, 35, 40],\r\n presLimits: [0, 35],\r\n presTicks: [0, 5, 10, 15, 20, 25, 30, 35],\r\n },\r\n lastData: null as null|{\r\n Lcmp: number,\r\n Levp: number,\r\n Lcut: number,\r\n Tsuc: number,\r\n Tliq: number,\r\n Tamb: number,\r\n Psuc: number,\r\n Pliq: number,\r\n Tsc: number,\r\n Tsh: number,\r\n deltaT: number,\r\n },\r\n debugFaults: [] as { desc: string }[],\r\n usePsi: (profile.prefsObj.pressureUnit === 'psi'),\r\n graphEnable: {\r\n Tamb: true,\r\n Tsuc: true,\r\n Tliq: true,\r\n Psuc: true,\r\n Pliq: true,\r\n Tsc: true,\r\n Tsh: true,\r\n Lcmp: true,\r\n Levp: true,\r\n Lcut: true,\r\n deltaT: true,\r\n },\r\n hwCfg: {\r\n hasPliq: true, hasPsuc: true, hasTsc: true, hasTsh: true, hasAutomation: false, isFanCoil: false, calculate_L1_fancoil: false,\r\n },\r\n initialTimeRef: new Date().toISOString().substr(0, 19),\r\n onTelmTimer: undefined as undefined|NodeJS.Timeout,\r\n timezoneOffset: 0,\r\n };\r\n return state;\r\n });\r\n\r\n const { graphEnable } = state;\r\n const { hwCfg } = state;\r\n state.hasNewTelm = false;\r\n const isDesktop = window.matchMedia('(min-width: 768px)');\r\n\r\n const lws = useWebSocketLazy();\r\n\r\n useEffect(() => {\r\n (async function () {\r\n const historyPromise = apiCall('/dac/get-recent-history-v2', {\r\n dacId: state.dacId,\r\n intervalLength_s: 5 * 60, // 5 min\r\n intervalLength: 5 * 60 * 1000, // 5 min\r\n }).catch(console.log);\r\n\r\n const devInfo = await getCachedDevInfo(dacId, {});\r\n const tzOffset = await apiCall('/get-timezone-offset-by-devId', { devId: dacId }).catch((err) => {\r\n toast.error(t('erroObterFusoHorario'));\r\n console.log(err);\r\n });\r\n if (tzOffset != null) {\r\n state.timezoneOffset = tzOffset;\r\n const data = moment();\r\n const dateWithOffset = data.utcOffset(state.timezoneOffset);\r\n state.initialTimeRef = dateWithOffset.format('YYYY-MM-DDTHH:mm:ss');\r\n }\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n state.devInfo = devInfo;\r\n const dacInfo = devInfo.dac;\r\n state.hwCfg.hasPsuc = (dacInfo.P0Psuc || dacInfo.P1Psuc);\r\n state.hwCfg.hasPliq = (dacInfo.P0Pliq || dacInfo.P1Pliq);\r\n state.hwCfg.hasTsh = state.hwCfg.hasPsuc;\r\n state.hwCfg.hasTsc = state.hwCfg.hasPliq;\r\n state.hwCfg.hasAutomation = dacInfo.hasAutomation;\r\n state.hwCfg.isFanCoil = (dacInfo.DAC_APPL === 'fancoil');\r\n state.hwCfg.calculate_L1_fancoil = (dacInfo.SELECTED_L1_SIM === 'fancoil');\r\n if (!state.hwCfg.hasPsuc) state.graphEnable.Psuc = false;\r\n if (!state.hwCfg.hasPliq) state.graphEnable.Pliq = false;\r\n if (!state.hwCfg.hasAutomation) state.graphEnable.Levp = false;\r\n if (!state.hwCfg.hasAutomation) state.graphEnable.Lcut = false;\r\n if (state.hwCfg.hasAutomation) state.graphEnable.Lcmp = false;\r\n render();\r\n lws.start(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n const histResp = await historyPromise;\r\n if (histResp && histResp.data) {\r\n if ((state.hwCfg.isFanCoil || state.devInfo.dac!.DAC_APPL === 'trocador-de-calor') && histResp.data.Tliq && histResp.data.Tsuc) {\r\n const histData = Object.assign(histResp.data, { deltaT: [] as number[] });\r\n histData.deltaT = [...histResp.data.Tliq];\r\n for (let i = 0; i < histResp.data.Tliq.length; i++) {\r\n if (histResp.data.Tliq[i] && histResp.data.Tsuc[i]) histData.deltaT[i] = Number((histResp.data.Tliq[i] - histResp.data.Tsuc[i]).toFixed(2));\r\n }\r\n }\r\n processReceivedHistory(histResp.data, state.usePsi, state.graphData);\r\n render();\r\n }\r\n }()).catch(console.log);\r\n }, []);\r\n\r\n function onWsOpen(wsConn) {\r\n wsConn.send(JSON.stringify({ type: 'subscribeTelemetry', data: { dac_id: state.dacId } }));\r\n }\r\n\r\n function onWsMessage(payload) {\r\n if (payload && payload.type === 'dacTelemetry') {\r\n const data = moment(new Date(payload.data.timestamp));\r\n payload.data.timestamp = data.format('YYYY-MM-DDTHH:mm:ss');\r\n processReceivedTelemetry(payload.data, state.usePsi, state.graphData);\r\n state.lastData = payload.data;\r\n\r\n if (state.hwCfg.calculate_L1_fancoil && state.lastData) {\r\n state.lastData.Lcmp = ((state.lastData.Tsuc - state.lastData.Tliq) >= 1.5) ? 1 : 0;\r\n }\r\n if ((hwCfg.isFanCoil || state.devInfo.dac!.DAC_APPL === 'trocador-de-calor') && state.lastData && state.lastData.Tliq && state.lastData.Tsuc) {\r\n state.lastData.deltaT = Number((state.lastData.Tliq - state.lastData.Tsuc).toFixed(2));\r\n }\r\n if (payload.data.debugFaults instanceof Array) {\r\n payload.data.debugFaults.forEach((item) => {\r\n item.desc = `${item.faultName}: ${Math.round(Math.min(100, (item.t / item.time) * 100))}% ${item.condDesc}`;\r\n });\r\n if (payload.data.debugFaults.length === 0) payload.data.debugFaults = [{ desc: '(nenhuma)' }];\r\n } else payload.data.debugFaults = [];\r\n state.debugFaults = payload.data.debugFaults;\r\n clearTimeout(state.onTelmTimer);\r\n state.hasNewTelm = true;\r\n state.onTelmTimer = setTimeout(() => state.hasNewTelm && render(), 100);\r\n // render();\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send(JSON.stringify({ type: 'subscribeTelemetry', data: {} }));\r\n }\r\n\r\n function processReceivedHistory(devHist, convertToPsi, currentData) {\r\n const newData: typeof state.graphData = {\r\n Lcmp: [],\r\n Levp: [],\r\n Lcut: [],\r\n Tamb: [],\r\n Tsuc: [],\r\n Tliq: [],\r\n Psuc: [],\r\n Pliq: [],\r\n Tsc: [],\r\n Tsh: [],\r\n deltaT: [],\r\n };\r\n\r\n let maxTval = 10;\r\n let minTval = 10;\r\n let maxPval = 10;\r\n let minPval = 10;\r\n\r\n let x = 0;\r\n if (devHist && devHist.initialTimestamp && devHist.timeAxis) {\r\n const datIni = new Date(devHist.initialTimestamp).getTime();\r\n const { timeAxis } = devHist;\r\n const LcmpHist = devHist.Lcmp;\r\n const LevpHist = devHist.Levp;\r\n const LcutHist = devHist.Lcut;\r\n const TambHist = devHist.Tamb;\r\n const TsucHist = devHist.Tsuc;\r\n const TliqHist = devHist.Tliq;\r\n const PsucHist = devHist.Psuc;\r\n const PliqHist = devHist.Pliq;\r\n const TscHist = devHist.Tsc;\r\n const TshHist = devHist.Tsh;\r\n const deltaTHist = devHist.deltaT;\r\n\r\n x = datIni;\r\n for (let i = 0; i < timeAxis.length; i++) {\r\n x = datIni + timeAxis[i] * 1000;\r\n if (convertToPsi) {\r\n if (PsucHist) PsucHist[i] *= 14.50377;\r\n if (PliqHist) PliqHist[i] *= 14.50377;\r\n }\r\n if (i > 0 && timeAxis[i] - timeAxis[i - 1] > 10) {\r\n newData.Lcmp.push({ x: x - 1000, y: NaN });\r\n newData.Levp.push({ x: x - 1000, y: NaN });\r\n newData.Lcut.push({ x: x - 1000, y: NaN });\r\n newData.Tamb.push({ x: x - 1000, y: NaN });\r\n newData.Tsuc.push({ x: x - 1000, y: NaN });\r\n newData.Tliq.push({ x: x - 1000, y: NaN });\r\n newData.Psuc.push({ x: x - 1000, y: NaN });\r\n newData.Pliq.push({ x: x - 1000, y: NaN });\r\n newData.Tsc.push({ x: x - 1000, y: NaN });\r\n newData.Tsh.push({ x: x - 1000, y: NaN });\r\n newData.deltaT.push({ x: x - 1000, y: NaN });\r\n }\r\n newData.Lcmp.push(LcmpHist ? { x, L: LcmpHist[i] } : { x, L: NaN });\r\n newData.Levp.push(LevpHist ? { x, L: LevpHist[i] } : { x, L: NaN });\r\n newData.Lcut.push(LcutHist ? { x, L: invBool(LcutHist[i]) } : { x, L: NaN });\r\n newData.Tamb.push(TambHist ? { x, y: TambHist[i] } : { x, y: NaN });\r\n newData.Tsuc.push(TsucHist ? { x, y: TsucHist[i] } : { x, y: NaN });\r\n newData.Tliq.push(TliqHist ? { x, y: TliqHist[i] } : { x, y: NaN });\r\n newData.Psuc.push(PsucHist ? { x, y: PsucHist[i] } : { x, y: NaN });\r\n newData.Pliq.push(PliqHist ? { x, y: PliqHist[i] } : { x, y: NaN });\r\n newData.Tsc.push(TscHist ? { x, y: TscHist[i] } : { x, y: NaN });\r\n newData.Tsh.push(TshHist ? { x, y: TshHist[i] } : { x, y: NaN });\r\n newData.deltaT.push(deltaTHist ? { x, y: deltaTHist[i] } : { x, y: NaN });\r\n\r\n if (TambHist && TambHist[i] != null && TambHist[i] > maxTval) maxTval = TambHist[i];\r\n if (TsucHist && TsucHist[i] != null && TsucHist[i] > maxTval) maxTval = TsucHist[i];\r\n if (TliqHist && TliqHist[i] != null && TliqHist[i] > maxTval) maxTval = TliqHist[i];\r\n if (TscHist && TscHist[i] != null && TscHist[i] > maxTval) maxTval = TscHist[i];\r\n if (TshHist && TshHist[i] != null && TshHist[i] > maxTval) maxTval = TshHist[i];\r\n if (deltaTHist && deltaTHist[i] != null && deltaTHist[i] > maxTval) maxTval = deltaTHist[i];\r\n\r\n if (TambHist && TambHist[i] != null && TambHist[i] < minTval) minTval = TambHist[i];\r\n if (TsucHist && TsucHist[i] != null && TsucHist[i] < minTval) minTval = TsucHist[i];\r\n if (TliqHist && TliqHist[i] != null && TliqHist[i] < minTval) minTval = TliqHist[i];\r\n if (TscHist && TscHist[i] != null && TscHist[i] < minTval) minTval = TscHist[i];\r\n if (TshHist && TshHist[i] != null && TshHist[i] < minTval) minTval = TshHist[i];\r\n if (deltaTHist && deltaTHist[i] != null && deltaTHist[i] < minTval) minTval = deltaTHist[i];\r\n\r\n if (PsucHist && PsucHist[i] != null && PsucHist[i] > maxPval) maxPval = PsucHist[i];\r\n if (PliqHist && PliqHist[i] != null && PliqHist[i] > maxPval) maxPval = PliqHist[i];\r\n\r\n if (PsucHist && PsucHist[i] != null && PsucHist[i] < minPval) minPval = PsucHist[i];\r\n if (PliqHist && PliqHist[i] != null && PliqHist[i] < minPval) minPval = PliqHist[i];\r\n }\r\n }\r\n\r\n if (currentData) {\r\n for (let i = 0; i < currentData.Lcmp.length; i++) {\r\n if (currentData.Lcmp[i].x > x) {\r\n newData.Lcmp.push(currentData.Lcmp[i]);\r\n newData.Levp.push(currentData.Levp[i]);\r\n newData.Lcut.push(currentData.Lcut[i]);\r\n newData.Tamb.push(currentData.Tamb[i]);\r\n newData.Tsuc.push(currentData.Tsuc[i]);\r\n newData.Tliq.push(currentData.Tliq[i]);\r\n newData.Psuc.push(currentData.Psuc[i]);\r\n newData.Pliq.push(currentData.Pliq[i]);\r\n newData.Tsc.push(currentData.Tsc[i]);\r\n newData.Tsh.push(currentData.Tsh[i]);\r\n newData.deltaT.push(currentData.deltaT[i]);\r\n }\r\n }\r\n }\r\n addTelemetryPoint(newData.Lcmp);\r\n addTelemetryPoint(newData.Levp);\r\n addTelemetryPoint(newData.Lcut);\r\n addTelemetryPoint(newData.Tamb);\r\n addTelemetryPoint(newData.Tsuc);\r\n addTelemetryPoint(newData.Tliq);\r\n addTelemetryPoint(newData.Psuc);\r\n addTelemetryPoint(newData.Pliq);\r\n addTelemetryPoint(newData.Tsc);\r\n addTelemetryPoint(newData.Tsh);\r\n addTelemetryPoint(newData.deltaT);\r\n state.graphData = newData;\r\n\r\n state.axisInfo.L1start = null; // force check of L1 values\r\n updateAxis(minTval, maxTval, minPval, maxPval);\r\n\r\n return newData;\r\n }\r\n\r\n function processReceivedTelemetry(telemetry, convertToPsi, currentData) {\r\n if (convertToPsi) {\r\n telemetry.Psuc = Math.round(telemetry.Psuc * 14.50377);\r\n telemetry.Pliq = Math.round(telemetry.Pliq * 14.50377);\r\n }\r\n\r\n if ((hwCfg.isFanCoil || state.devInfo.dac!.DAC_APPL === 'trocador-de-calor') && telemetry.Tliq && telemetry.Tsuc) {\r\n telemetry.deltaT = telemetry.Tliq - telemetry.Tsuc;\r\n }\r\n\r\n const minTval = Math.min(currentData.Tamb || 0, currentData.Tsuc || 0, currentData.Tliq || 0, currentData.Tsc || 0, currentData.Tsh || 0, currentData.deltaT || 0);\r\n const maxTval = Math.max(currentData.Tamb || 0, currentData.Tsuc || 0, currentData.Tliq || 0, currentData.Tsc || 0, currentData.Tsh || 0, currentData.deltaT || 0);\r\n const minPval = Math.min(currentData.Psuc || 0, currentData.Pliq || 0);\r\n const maxPval = Math.max(currentData.Psuc || 0, currentData.Pliq || 0);\r\n // TODO: check if have to update L1start\r\n updateAxis(minTval, maxTval, minPval, maxPval);\r\n\r\n const { L1start } = state.axisInfo;\r\n\r\n let Lcmp = telemetry.Lcmp;\r\n\r\n if (state.hwCfg.calculate_L1_fancoil) {\r\n Lcmp = ((telemetry.Tsuc - telemetry.Tliq) >= 1.5) ? 1 : 0;\r\n }\r\n\r\n const yLcmp = axisCalc.convertBoolValue(Lcmp, L1start!, 0);\r\n const yLevp = axisCalc.convertBoolValue(telemetry.Levp, L1start!, 0);\r\n const yLcut = axisCalc.convertBoolValue(invBool(telemetry.Lcut), L1start!, 1);\r\n\r\n telemetry.time = new Date(telemetry.timestamp);\r\n const time = telemetry.time.getTime();\r\n addTelemetryPoint(currentData.Lcmp, { x: time, L: Lcmp, y: yLcmp });\r\n addTelemetryPoint(currentData.Levp, { x: time, L: telemetry.Levp, y: yLevp });\r\n addTelemetryPoint(currentData.Lcut, { x: time, L: telemetry.Lcut, y: yLcut });\r\n addTelemetryPoint(currentData.Tamb, { x: time, y: telemetry.Tamb });\r\n addTelemetryPoint(currentData.Tsuc, { x: time, y: telemetry.Tsuc });\r\n addTelemetryPoint(currentData.Tliq, { x: time, y: telemetry.Tliq });\r\n addTelemetryPoint(currentData.deltaT, { x: time, y: telemetry.deltaT });\r\n addTelemetryPoint(currentData.Psuc, { x: time, y: telemetry.Psuc });\r\n addTelemetryPoint(currentData.Pliq, { x: time, y: telemetry.Pliq });\r\n addTelemetryPoint(currentData.Tsc, { x: time, y: telemetry.Tsc });\r\n addTelemetryPoint(currentData.Tsh, { x: time, y: telemetry.Tsh });\r\n\r\n return currentData;\r\n }\r\n\r\n function updateAxis(minTval, maxTval, minPval, maxPval) {\r\n const prevL1start = state.axisInfo.L1start;\r\n const newDataLimits = {\r\n minTval, maxTval, minPval, maxPval,\r\n };\r\n const booleanLines = state.hwCfg.hasAutomation ? 2 : 1;\r\n axisCalc.updateDataLimits(newDataLimits, state.axisDataLimits);\r\n state.axisInfo = axisCalc.calculateAxisInfo(state.axisDataLimits, booleanLines);\r\n\r\n if (prevL1start !== state.axisInfo.L1start) {\r\n const { graphData } = state;\r\n const varsList = state.hwCfg.hasAutomation ? [graphData.Levp, graphData.Lcut] : [graphData.Lcmp];\r\n axisCalc.updateBoolY(varsList, state.axisInfo.L1start!);\r\n }\r\n }\r\n\r\n return (\r\n <>\r\n {isDesktop.matches ? (\r\n \r\n ) : (\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction addTelemetryPoint(chartPoints, newPoint?) {\r\n if (chartPoints.length === 0) {\r\n if (newPoint) {\r\n const chartTimeIni = new Date(newPoint.x - TSPAN).getTime();\r\n chartPoints.push({ x: chartTimeIni, y: NaN });\r\n chartPoints.push(newPoint);\r\n }\r\n return;\r\n }\r\n\r\n let lastPoint = chartPoints[chartPoints.length - 1];\r\n\r\n if (newPoint && (newPoint.x > lastPoint.x)) {\r\n const timeEndThreshold = new Date(newPoint.x - ONLINE_TIMEOUT).getTime();\r\n if (!(lastPoint.x >= timeEndThreshold)) {\r\n chartPoints.push({ x: timeEndThreshold, y: NaN });\r\n }\r\n chartPoints.push(newPoint);\r\n lastPoint = newPoint;\r\n }\r\n\r\n const chartTimeIni = new Date(lastPoint.x - TSPAN).getTime();\r\n\r\n // Remove old points\r\n while (chartPoints.length > 0 && !(chartPoints[0].x >= chartTimeIni)) {\r\n chartPoints.shift();\r\n }\r\n\r\n if (chartPoints[0].x > chartTimeIni) {\r\n chartPoints.unshift({ x: chartTimeIni, y: NaN });\r\n }\r\n}\r\n","export default __webpack_public_path__ + \"static/media/eco.7941b8d6.svg\";","import styled from 'styled-components';\r\n\r\nimport { colors } from '../../styles/colors';\r\n\r\nexport const Row = styled.div`\r\n align-items: center;\r\n display: flex;\r\n flex-direction: row;\r\n`;\r\n\r\nexport const Text = styled.p<{ isBold }>(\r\n ({ isBold }) => `\r\n margin-top: 1em;\r\n margin-bottom: 1em;\r\n color: ${colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n`,\r\n);\r\n","import { useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { RadioButton } from '../index';\r\nimport { apiCall } from '../../providers';\r\nimport { colors } from '../../styles/colors';\r\n\r\nimport { Row, Text } from './styles';\r\n\r\nfunction updateDamStatus(message, dev) {\r\n dev.status = message.status;\r\n dev.Mode = message.Mode;\r\n dev.State = message.State;\r\n}\r\n\r\nexport const DamControl = ({ dam, onStateChanged }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [, stateChanged] = useState({});\r\n const [state] = useState({\r\n changed() { stateChanged({}); if (onStateChanged) { onStateChanged(); } },\r\n });\r\n\r\n async function sendDamMode(dev, newMode) {\r\n if (dev.safeWaitMode) return;\r\n dev.safeWaitMode = true;\r\n setTimeout(() => {\r\n delete dev.safeWaitMode;\r\n }, 2500);\r\n try {\r\n dev.loading = true; state.changed();\r\n const telemetry = await apiCall('/dam/set-dam-operation', {\r\n dev_id: dev.DAM_ID,\r\n mode: newMode, // 'manual', 'auto'\r\n });\r\n updateDamStatus(telemetry, dev);\r\n state.changed();\r\n // toast.success('Enviado')\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n dev.loading = false; state.changed();\r\n }\r\n\r\n async function sendDamRelay(dev, newMode) {\r\n if (dev.safeWaitRelay) return;\r\n dev.safeWaitRelay = true;\r\n setTimeout(() => {\r\n delete dev.safeWaitRelay;\r\n }, 2500);\r\n try {\r\n dev.loading = true; state.changed();\r\n const telemetry = await apiCall('/dam/set-dam-operation', {\r\n dev_id: dev.DAM_ID,\r\n relay: newMode, // 'allow', 'forbid', 'onlyfan'\r\n });\r\n updateDamStatus(telemetry, dev);\r\n state.changed();\r\n // toast.success('Enviado')\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n dev.loading = false; state.changed();\r\n }\r\n\r\n const manualCommandsEnabled = (dam.Mode === 'Manual') && (!['enabling', 'disabling'].includes(dam.State));\r\n const damStateIsEco = (dam.State === 'eco') ? t('refrigerarEco') : t('refrigerar');\r\n\r\n return (\r\n
\r\n \r\n {t('automacao')}\r\n \r\n \r\n sendDamMode(dam, 'auto')}\r\n style={{ width: '170px' }}\r\n />\r\n sendDamMode(dam, 'manual')}\r\n style={{ width: '170px' }}\r\n />\r\n {(dam.Mode === 'Local') && (\r\n \r\n )}\r\n \r\n \r\n {t('statusAutomacao')}\r\n \r\n \r\n {(dam.DAM_ID && !(dam.DAM_ID.startsWith('DAC3') || dam.DAM_ID.startsWith('DAC4'))) // TODO: FIXME: find a better way to check this\r\n && (\r\n
\r\n sendDamRelay(dam, 'onlyfan')) : null}\r\n />\r\n {/*     \r\n */}\r\n
\r\n )}\r\n\r\n
\r\n sendDamRelay(dam, 'allow')) : null}\r\n />\r\n {/*     \r\n */}\r\n
\r\n\r\n
\r\n sendDamRelay(dam, 'forbid')) : null}\r\n />\r\n {/*     \r\n */}\r\n
\r\n
\r\n
\r\n );\r\n};\r\n","import styled from 'styled-components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const ControlButton = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: 70px;\r\n height: 70px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n`;\r\n\r\nexport const SetpointButton = styled.div<{ up?: boolean, down?: boolean, disabled?: boolean }>`\r\n flex-basis: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-right: 1px solid #D7D7D7;\r\n user-select: none;\r\n ${({ up }) => (up ? 'border-bottom: 1px solid #D7D7D7' : '')}\r\n ${({ down }) => (down ? 'border-top: 1px solid #D7D7D7' : '')}\r\n ${({ disabled }) => (disabled ? 'cursor: default' : 'cursor: pointer')}\r\n`;\r\n\r\nexport const SetpointButtonMobile = styled.div<{ up?: boolean, down?: boolean, disabled?: boolean }>`\r\n display: flex;\r\n align-items: center;\r\n width: 48px;\r\n height: 48px;\r\n justify-content: center;\r\n border: 1px solid #D7D7D7;\r\n border-radius: 10px;\r\n user-select: none;\r\n ${({ disabled }) => (disabled ? 'cursor: default' : 'cursor: pointer')}\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n display: inline-block;\r\n width: 9px;\r\n height: 15px;\r\n display: flex;\r\n text-align: center;\r\n align-items: center;\r\n justify-content: center;\r\n border-radius: 3px;\r\n svg {\r\n width: 9px;\r\n height: 15px;\r\n }\r\n`;\r\n\r\nexport const DesktopWrapper = styled.div`\r\ndisplay: none;\r\n@media (min-width: 768px) {\r\n display: block;\r\n}\r\n`;\r\n\r\nexport const MobileWrapper = styled.div`\r\ndisplay: block;\r\n@media (min-width: 768px) {\r\n display: none;\r\n}\r\n`;\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport EcoModeIcon from '~/assets/img/icons/eco.svg';\r\nimport {\r\n Loader, StatusBox, DamEcoCard, OptionsWithIcon,\r\n} from '~/components';\r\nimport { DamControl } from '~/components/DamControl';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { useWebSocketLazy } from '~/helpers/wsConnection';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport {\r\n TermometerIcon,\r\n RemoteAutoIcon,\r\n RemoteManualIcon,\r\n LocalOperationIcon,\r\n CoolIcon,\r\n FanIcon,\r\n BlockIcon,\r\n ArrowUpIconV2,\r\n ArrowDownIconV2,\r\n ThermostatIcon,\r\n EvapInsufIcon,\r\n} from '~/icons';\r\n\r\nimport {\r\n ControlButton,\r\n SetpointButton,\r\n IconWrapper,\r\n DesktopWrapper,\r\n MobileWrapper,\r\n SetpointButtonMobile,\r\n} from './styles';\r\nimport { t } from 'i18next';\r\nimport { formatNumberWithFractionDigits } from '../../../helpers/thousandFormatNumber';\r\n\r\nexport const DamRealTime = (): JSX.Element => {\r\n const routeParams = useParams<{ devId }>();\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaDetalhesDam')}\r\n \r\n \r\n {/* @ts-ignore */ }\r\n \r\n \r\n );\r\n};\r\n\r\nexport function DamRealTimeContents({ onDevInfoUpdate = undefined }) {\r\n const routeParams = useParams<{ devId }>();\r\n // @ts-ignore\r\n const [state, render, setState] = useStateVar({\r\n isLoading: false,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n temperature: 23 as number|null,\r\n ecoModeCfg: null,\r\n telemetry: {\r\n DAM_ID: routeParams.devId,\r\n State: null,\r\n Mode: null,\r\n ecoModeActing: null,\r\n status: 'OFFLINE',\r\n loading: false,\r\n safeWaitMode: false,\r\n safeWaitRelay: false,\r\n Temperature: null,\r\n Temperature_1: null,\r\n lastTelemetry: null,\r\n timestamp: null,\r\n RSSI: null,\r\n } as {\r\n DAM_ID: string|null,\r\n State: string|null,\r\n Mode: string|null,\r\n ecoModeActing: string|null,\r\n status: string|null,\r\n loading: boolean,\r\n safeWaitMode: boolean,\r\n safeWaitRelay: boolean,\r\n Temperature: string|null,\r\n Temperature_1: string|null,\r\n lastTelemetry: string|null,\r\n timestamp: string|null,\r\n RSSI: string|null,\r\n },\r\n // @ts-ignore\r\n relDutInfo: null as {\r\n REL_DUT_ID: string,\r\n ROOM_DESC?: string,\r\n TUSEMIN?: number,\r\n TUSEMAX?: number,\r\n Temperature?: number,\r\n status?: string,\r\n },\r\n optionsControlMode: [\r\n {\r\n icon: ,\r\n iconSelected: ,\r\n label: t('remotoAutomatico'),\r\n selected: true,\r\n tag: 'Auto',\r\n mode: 'auto',\r\n },\r\n {\r\n icon: ,\r\n iconSelected: ,\r\n label: t('remotoManual'),\r\n selected: false,\r\n tag: 'Manual',\r\n mode: 'manual',\r\n },\r\n ],\r\n optionsOperationMode: [\r\n {\r\n icon: ,\r\n iconSelected: ,\r\n label: t('refrigerar'),\r\n selected: true,\r\n tag: ['allow', 'enabling', 'eco'],\r\n mode: 'allow',\r\n },\r\n {\r\n icon: ,\r\n iconSelected: ,\r\n label: t('ventilar'),\r\n selected: false,\r\n tag: ['onlyfan'],\r\n mode: 'onlyfan',\r\n },\r\n {\r\n icon: ,\r\n iconSelected: ,\r\n label: t('bloqueadoMin'),\r\n selected: false,\r\n tag: ['forbid', 'disabling'],\r\n mode: 'forbid',\r\n },\r\n ],\r\n disableOperationMode: true as boolean,\r\n disableSetpoint: true as boolean,\r\n dutIrCommands: null as null | { IR_ID: string, cmdName: string, CMD_TYPE: string}[],\r\n });\r\n\r\n const ecoModeCfgs = {\r\n 'eco-D': t('desligar').toLocaleLowerCase(),\r\n 'eco-V': t('ventilar').toLocaleLowerCase(),\r\n 'eco-C1-V': t('desligarCondensadora2DepoisVentilar'),\r\n 'eco-C2-V': t('desligarCondensadora1DepoisVentilar'),\r\n };\r\n const lws = useWebSocketLazy();\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n state.isLoading = true; render();\r\n state.devInfo = await getCachedDevInfo(routeParams.devId, {});\r\n state.temperature = state.devInfo.dam?.SETPOINT_ECO_REAL_TIME != null ? state.devInfo.dam?.SETPOINT_ECO_REAL_TIME : (state.devInfo.dam?.SETPOINT || 23);\r\n // @ts-ignore\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n // @ts-ignore\r\n state.ecoModeCfg = (state.devInfo.dam.ENABLE_ECO && state.devInfo.dam.ECO_CFG) || null;\r\n if (state.devInfo?.DEV_ID?.startsWith('DAM3') && state.devInfo?.dam?.supportsExtTherm) {\r\n if (!state.optionsOperationMode.find((x) => x.mode === 'thermostat')) {\r\n state.optionsOperationMode.push({\r\n icon: ,\r\n iconSelected: ,\r\n label: t('termostatoExterno'),\r\n selected: false,\r\n tag: ['THERMOSTAT', 'thermostat', 'STARTING_THERMOSTAT'],\r\n mode: 'thermostat',\r\n });\r\n }\r\n }\r\n // @ts-ignore\r\n if (state.devInfo.dam.REL_DUT_ID) {\r\n state.relDutInfo = {\r\n // @ts-ignore\r\n REL_DUT_ID: state.devInfo.dam.REL_DUT_ID,\r\n };\r\n const dutInfo = await apiCall('/dut/get-dut-info', { DEV_ID: state.relDutInfo.REL_DUT_ID });\r\n state.relDutInfo.TUSEMIN = dutInfo.info.TUSEMIN;\r\n state.relDutInfo.TUSEMAX = dutInfo.info.TUSEMAX;\r\n state.relDutInfo.ROOM_DESC = dutInfo.info.ROOM_NAME ? `${dutInfo.info.ROOM_NAME} (${dutInfo.info.DEV_ID})` : dutInfo.info.DEV_ID;\r\n }\r\n lws.start(onWsOpen, onWsMessage, beforeWsClose);\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n state.isLoading = false; render();\r\n }());\r\n }, []);\r\n\r\n // useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'subscribeStatus', data: { dam_id: routeParams.devId } });\r\n if (state.relDutInfo && !state.devInfo.dam.SELF_REFERENCE) {\r\n wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: state.relDutInfo.REL_DUT_ID } });\r\n }\r\n }\r\n function onWsMessage(message) {\r\n if (message && message.type === 'damStatus' && message.data.status && message.data.dev_id === state.telemetry.DAM_ID) {\r\n state.telemetry.status = message.data.status;\r\n state.telemetry.Mode = message.data.Mode;\r\n state.telemetry.State = message.data.State;\r\n state.telemetry.ecoModeActing = message.data.ecoModeActing;\r\n state.telemetry.Temperature = message.data.Temperature || null;\r\n state.telemetry.Temperature_1 = message.data.Temperature_1 || null;\r\n if (message.data.timestamp) state.telemetry.lastTelemetry = message.data.timestamp;\r\n if (message.data.deviceTimestamp) state.telemetry.timestamp = message.data.deviceTimestamp;\r\n if (message.data.RSSI != null) state.telemetry.RSSI = rssiDesc(message.data.RSSI, message.data.status);\r\n defineSelectedOptions();\r\n render();\r\n }\r\n if (message && message.type === 'dutTelemetry' && state.relDutInfo && message.data.dev_id === state.relDutInfo.REL_DUT_ID) {\r\n state.relDutInfo.Temperature = message.data?.Temperature;\r\n state.relDutInfo.status = message.data?.status;\r\n render();\r\n }\r\n if (message && message.type === 'devOnlineStatus' && state.relDutInfo && message.data.dev_id === state.relDutInfo.REL_DUT_ID) {\r\n state.relDutInfo.status = message.data?.status;\r\n render();\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'unsubscribeStatus' });\r\n wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n }\r\n\r\n function rssiDesc(RSSI: number, status: string) {\r\n if (RSSI < 0 && status === 'ONLINE') {\r\n if (RSSI > -50) return 'Excelente';\r\n if (RSSI > -60) return 'Bom';\r\n if (RSSI > -70) return 'Regular';\r\n return 'Ruim';\r\n }\r\n return '-';\r\n }\r\n\r\n function defineSelectedOptions() {\r\n const controlModeCurrent = state.optionsControlMode.find((item) => item.selected);\r\n if (controlModeCurrent && controlModeCurrent.tag !== state.telemetry.Mode) {\r\n controlModeCurrent.selected = false;\r\n\r\n if (state.telemetry.Mode === 'Local') {\r\n state.optionsControlMode.push(\r\n {\r\n icon: ,\r\n iconSelected: ,\r\n label: t('emOperacaoLocal'),\r\n selected: true,\r\n tag: 'Local',\r\n mode: 'local',\r\n },\r\n );\r\n }\r\n else {\r\n const controlModeNew = state.optionsControlMode.find((item) => item.tag === state.telemetry.Mode);\r\n if (controlModeNew) {\r\n controlModeNew.selected = true;\r\n }\r\n else {\r\n state.optionsControlMode[0].selected = true;\r\n }\r\n\r\n if (state.optionsControlMode[state.optionsControlMode.length - 1].tag === 'Local') {\r\n state.optionsControlMode.splice(state.optionsControlMode.length - 1, 1);\r\n }\r\n }\r\n }\r\n\r\n const operationModeCurrent = state.optionsOperationMode.find((item) => item.selected);\r\n if (operationModeCurrent && state.telemetry.State && !operationModeCurrent.tag.includes(state.telemetry.State)) {\r\n operationModeCurrent.selected = false;\r\n const controlModeNew = state.optionsOperationMode.find((item) => item.tag.includes(state.telemetry.State!));\r\n if (controlModeNew) {\r\n controlModeNew.selected = true;\r\n }\r\n else {\r\n state.optionsOperationMode[0].selected = true;\r\n }\r\n }\r\n\r\n const optionControlModeSelected = state.optionsControlMode.find((item) => item.selected);\r\n state.disableOperationMode = !optionControlModeSelected || optionControlModeSelected.label !== 'Remoto Manual';\r\n\r\n const optionOperationModeSelected = state.optionsOperationMode.find((item) => item.selected);\r\n }\r\n function getDialColor({ temp }) {\r\n if ((state.relDutInfo && state.relDutInfo.status !== 'ONLINE') || (state.devInfo.status !== 'ONLINE')) return colors.LightGrey_v3;\r\n if (temp != null && Number.isFinite(Number(temp))) {\r\n return (\r\n (state.relDutInfo && ((state.relDutInfo.TUSEMAX != null && temp > state.relDutInfo.TUSEMAX && colors.Red)\r\n || (state.relDutInfo.TUSEMIN != null && temp < state.relDutInfo.TUSEMIN && colors.BlueSecondary_v3)))\r\n || state.devInfo.dam.MAXIMUM_TEMPERATURE != null && temp > state.devInfo.dam.MAXIMUM_TEMPERATURE && colors.Red\r\n || state.devInfo.dam.MINIMUM_TEMPERATURE != null && temp < state.devInfo.dam.MINIMUM_TEMPERATURE && colors.BlueSecondary_v3\r\n || colors.GreenLight\r\n );\r\n }\r\n return colors.GreenLight;\r\n }\r\n\r\n async function changeSetpoint(newSetpoint: number) {\r\n try {\r\n render();\r\n const telemetry = await apiCall('/dam/set-local-setpoint', {\r\n DAM_ID: state.telemetry.DAM_ID!,\r\n SETPOINT: newSetpoint,\r\n });\r\n\r\n state.temperature = newSetpoint;\r\n }\r\n catch (err) {\r\n toast.error(t('erroEnviarSetpoint'));\r\n }\r\n\r\n render();\r\n }\r\n\r\n function updateDamStatus(message) {\r\n state.telemetry.status = message.status;\r\n state.telemetry.Mode = message.Mode;\r\n state.telemetry.State = message.State;\r\n }\r\n\r\n async function selectControleMode(options: {\r\n icon: JSX.Element,\r\n iconSelected: JSX.Element,\r\n label: string,\r\n selected: boolean,\r\n tag: string,\r\n mode: string,\r\n }[]) {\r\n state.optionsControlMode = options;\r\n\r\n const optionControlModeSelected = state.optionsControlMode.find((item) => item.selected);\r\n state.disableOperationMode = !optionControlModeSelected || optionControlModeSelected.label !== 'Remoto Manual';\r\n\r\n await sendDamMode(optionControlModeSelected!.mode);\r\n render();\r\n }\r\n\r\n async function sendDamMode(newMode) {\r\n if (state.telemetry.safeWaitMode) return;\r\n state.telemetry.safeWaitMode = true;\r\n setTimeout(() => {\r\n state.telemetry.safeWaitMode = false;\r\n }, 2500);\r\n try {\r\n state.telemetry.loading = true;\r\n render();\r\n const telemetry = await apiCall('/dam/set-dam-operation', {\r\n dev_id: state.telemetry.DAM_ID!,\r\n mode: newMode, // 'manual', 'auto'\r\n });\r\n if (telemetry) {\r\n updateDamStatus(telemetry);\r\n }\r\n toast.success(`Enviado!${newMode === 'manual' ? t('sucessoOperacaoManualPermaneceraFuncionamento') : ''}`);\r\n } catch (err) { console.log(err); toast.error(t('erro')); defineSelectedOptions(); }\r\n state.telemetry.loading = false;\r\n }\r\n\r\n async function selectOperationMode(options: {\r\n icon: JSX.Element,\r\n iconSelected: JSX.Element,\r\n label: string,\r\n selected: boolean,\r\n tag: string[],\r\n mode: string,\r\n }[]) {\r\n state.optionsOperationMode = options;\r\n\r\n const optionOperationModeSelected = state.optionsOperationMode.find((item) => item.selected);\r\n\r\n await sendDamRelay(optionOperationModeSelected?.mode);\r\n render();\r\n }\r\n\r\n async function sendDamRelay(newMode) {\r\n if (state.telemetry.safeWaitRelay) return;\r\n state.telemetry.safeWaitRelay = true;\r\n setTimeout(() => {\r\n state.telemetry.safeWaitRelay = false;\r\n }, 2500);\r\n try {\r\n state.telemetry.loading = true;\r\n render();\r\n const telemetry = await apiCall('/dam/set-dam-operation', {\r\n dev_id: state.telemetry.DAM_ID!,\r\n relay: newMode, // 'allow', 'forbid', 'onlyfan', 'thermostat'\r\n });\r\n updateDamStatus(telemetry);\r\n } catch (err) { console.log(err); toast.error(t('erro')); defineSelectedOptions(); }\r\n state.telemetry.loading = false;\r\n }\r\n\r\n function getDutTemperature() {\r\n return state.relDutInfo.status !== 'ONLINE' ? null : state.relDutInfo.Temperature || null;\r\n }\r\n\r\n function getTemperature() {\r\n return state.relDutInfo ? getDutTemperature() : Number(getReturnTemperature()) || null;\r\n }\r\n\r\n const getReturnTemperature = () => {\r\n if (state.devInfo.dam.PLACEMENT !== 'DUO') return state.telemetry.Temperature;\r\n\r\n if (state.devInfo.dam.T0_POSITION === 'RETURN' || (!state.devInfo.dam.T0_POSITION && state.devInfo.dam.T1_POSITION !== 'RETURN')) {\r\n return state.telemetry.Temperature;\r\n }\r\n return state.telemetry.Temperature_1;\r\n };\r\n\r\n const getInsufflationTemperature = () => {\r\n if (state.devInfo.dam.PLACEMENT !== 'DUO') return null;\r\n\r\n if (state.devInfo.dam.T1_POSITION === 'INSUFFLATION' || (!state.devInfo.dam.T1_POSITION && state.devInfo.dam.T0_POSITION !== 'INSUFFLATION')) {\r\n return state.telemetry.Temperature_1;\r\n }\r\n return state.telemetry.Temperature;\r\n };\r\n\r\n const showInsufTemp = () => (\r\n getInsufflationTemperature() && (\r\n
\r\n
\r\n
\r\n \r\n {t('insuflamento')}\r\n
\r\n
\r\n {formatNumberWithFractionDigits(getInsufflationTemperature() ?? '-')}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )\r\n );\r\n\r\n return (\r\n <>\r\n \r\n \r\n {state.isLoading ? (\r\n \r\n ) : (\r\n (!state.devInfo.DEV_ID.startsWith('DAM3') || !state.devInfo.dam?.CAN_SELF_REFERENCE) && (\r\n <>\r\n {state.telemetry.status}\r\n
\r\n render()} />\r\n {state.telemetry.loading && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n {t('modoEco')}\r\n :  \r\n \r\n {/* @ts-ignore */}\r\n {state.ecoModeCfg ? (ecoModeCfgs[state.ecoModeCfg] || state.ecoModeCfg || `(${t('nenhuma')})`) : t('desabilitado')}\r\n \r\n {(state.telemetry && state.telemetry.ecoModeActing)\r\n && (\r\n \r\n )}\r\n
\r\n \r\n ) || (state.devInfo.DEV_ID.startsWith('DAM3') && state.devInfo.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {state !== undefined && (\r\n
\r\n
\r\n
\r\n \r\n {t('agora')}\r\n
\r\n
\r\n {(state == null) ? '-' : formatNumberWithFractionDigits(getTemperature() ?? '-')}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )}\r\n {showInsufTemp()}\r\n
\r\n
\r\n
\r\n
{t('limitesTemperatura')}
\r\n \r\n mín.\r\n {` ${state.relDutInfo ? (state.relDutInfo.TUSEMIN != null ? formatNumberWithFractionDigits(state.relDutInfo.TUSEMIN) : '-') : (formatNumberWithFractionDigits(state.devInfo.dam.MINIMUM_TEMPERATURE ?? '-'))}`}\r\n °C\r\n      \r\n máx.\r\n {` ${state.relDutInfo ? (state.relDutInfo.TUSEMAX != null ? formatNumberWithFractionDigits(state.relDutInfo.TUSEMAX) : '-') : (formatNumberWithFractionDigits(state.devInfo.dam.MAXIMUM_TEMPERATURE ?? '-'))}`}\r\n °C\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n {t('modoControle')}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {t('modoOperacao')}\r\n
\r\n
\r\n render()} />\r\n
\r\n \r\n \r\n
\r\n Setpoint\r\n
\r\n
\r\n \r\n
\r\n !state.disableSetpoint && !state.telemetry.loading && state.temperature != null && state.devInfo.status === 'ONLINE' && changeSetpoint(state.temperature + 1)}>\r\n \r\n \r\n \r\n \r\n !state.disableSetpoint && !state.telemetry.loading && state.temperature != null && state.devInfo.status === 'ONLINE' && changeSetpoint(state.temperature - 1)}>\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
{`${state.temperature ? formatNumberWithFractionDigits(state.temperature) : '-'} °C`}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {state !== undefined && (\r\n
\r\n
\r\n
\r\n \r\n {t('agora')}\r\n
\r\n
\r\n {(state == null) ? '-' : formatNumberWithFractionDigits(getTemperature() ?? '-')}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )}\r\n {showInsufTemp()}\r\n
\r\n
\r\n
\r\n
{t('limitesTemperatura')}
\r\n \r\n mín.\r\n {` ${state.relDutInfo ? (state.relDutInfo.TUSEMIN || '-') : (state.devInfo.dam.MINIMUM_TEMPERATURE || '-')}`}\r\n °C\r\n      \r\n máx.\r\n {` ${state.relDutInfo ? state.relDutInfo.TUSEMAX || '-' : (state.devInfo.dam.MAXIMUM_TEMPERATURE || '-')}`}\r\n °C\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n {t('modoControle')}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n {t('modoOperacao')}\r\n
\r\n
\r\n render()} />\r\n
\r\n \r\n \r\n \r\n
\r\n Setpoint\r\n
\r\n
\r\n \r\n
\r\n !state.disableSetpoint && !state.telemetry.loading && state.temperature != null && state.devInfo.status === 'ONLINE' && changeSetpoint(state.temperature + 1)}>\r\n \r\n \r\n \r\n \r\n !state.disableSetpoint && !state.telemetry.loading && state.temperature != null && state.devInfo.status === 'ONLINE' && changeSetpoint(state.temperature - 1)}>\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
{`${state.temperature ? formatNumberWithFractionDigits(state.temperature) : '-'} °C`}
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n ))\r\n )}\r\n \r\n \r\n {(state.relDutInfo && (!state.devInfo.DEV_ID.startsWith('DAM3') || !state.devInfo.dam?.CAN_SELF_REFERENCE))\r\n && (\r\n \r\n \r\n {state.isLoading ? (\r\n \r\n ) : (\r\n
\r\n
\r\n {state.relDutInfo.status || 'OFFLINE'}\r\n \r\n {t('ambienteRefrigerado')}\r\n {' '}\r\n {state.relDutInfo.ROOM_DESC || state.relDutInfo.REL_DUT_ID}\r\n \r\n
\r\n \r\n {t('limiteTemperatura')}\r\n {' '}\r\n {(state.relDutInfo.TUSEMIN != null) ? `${formatNumberWithFractionDigits(state.relDutInfo.TUSEMIN)} °C` : t('semInformacaoTemperatura')}\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {' '}\r\n {t('temperaturaAmbiente')}\r\n \r\n
\r\n {(state.relDutInfo.Temperature != null) ? `${formatNumberWithFractionDigits(state.relDutInfo.Temperature)}°C` : '-'}\r\n
\r\n
\r\n
 
\r\n
\r\n )}\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nfunction Dial(props: { temperature: number | null, color: string | null, showIndicator: boolean, mobile?: boolean }) {\r\n function onSvgClick(event) {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'svg') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n console.log('DBG013', rect, event);\r\n }\r\n\r\n const max = 32;\r\n const min = 16;\r\n\r\n let percentage = (props.temperature == null) ? NaN : ((props.temperature - min) / (max - min));\r\n\r\n if (percentage > 1) percentage = 1;\r\n if (percentage < 0) percentage = 0;\r\n\r\n if (!Number.isFinite(percentage)) percentage = NaN;\r\n\r\n return (\r\n \r\n \r\n {props.showIndicator && (\r\n \r\n )}\r\n {(!Number.isNaN(percentage)) && props.showIndicator && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {props.showIndicator && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\nconst Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nconst StyledText = styled.span<{ fontSize? }>(\r\n ({ fontSize = '16px' }) => `\r\n font-size: ${fontSize};\r\n font-weight: bold;\r\n color: ${colors.Grey400};\r\n white-space: nowrap;\r\n text-align: center;\r\n`,\r\n);\r\n\r\nconst Wrapper = styled.div`\r\n text-align: center;\r\n`;\r\n\r\nconst Text = styled.p<{ isBold? }>(\r\n ({ isBold }) => `\r\n margin-bottom: ${isBold ? 0 : '1em'};\r\n margin-top: ${isBold ? '1em' : 0};\r\n color: ${isBold ? colors.Grey300 : colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n `,\r\n);\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const Row = styled.div`\r\n align-items: center;\r\n display: flex;\r\n flex-direction: row;\r\n`;\r\n\r\nexport const Text = styled.p<{ isBold? }>(\r\n ({ isBold }) => `\r\n margin-top: 1em;\r\n margin-bottom: 1em;\r\n color: ${colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n`,\r\n);\r\n","import { toast } from 'react-toastify';\r\n\r\nimport EcoModeIcon from 'assets/img/icons/eco.svg';\r\nimport { Loader, RadioButton } from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport {\r\n Row,\r\n Text,\r\n} from './styles';\r\nimport i18n from '~/i18n';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nconst ecoModeCfgs: { [k: string]: string } = {\r\n '0_NO_CONTROL': t('desabilitado'),\r\n '1_CONTROL': t('modoEco'),\r\n '2_SOB_DEMANDA': t('modoSobDemanda'),\r\n '3_BACKUP': t('modoBackup'),\r\n '4_BLOCKED': t('modoBloqueio'),\r\n '5_BACKUP_CONTROL': t('modoBackupEco'),\r\n '6_BACKUP_CONTROL_V2': t('modoEco2'),\r\n '7_FORCED': t('modoForcado'),\r\n};\r\n\r\nexport const DutAutControl = (props: {\r\n DUT_ID: string,\r\n telemetry: {\r\n State: null|string,\r\n Mode: null|string,\r\n ecoModeActing: null|boolean,\r\n // progState: string,\r\n // Temperature: number,\r\n // status: string,\r\n },\r\n ecoModeCfg: '0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP'|'4_BLOCKED'|'5_BACKUP_CONTROL'|'6_BACKUP_CONTROL_V2'|'7_FORCED'|'8_ECO_2'|null,\r\n}): JSX.Element => {\r\n const { DUT_ID, telemetry, ecoModeCfg } = props;\r\n const [state, render, setState] = useStateVar({\r\n transmittingCommand: false,\r\n safeWaitMode: false,\r\n safeWaitRelay: false,\r\n });\r\n\r\n async function sendDutMode(newMode: 'manual'|'auto') {\r\n if (state.safeWaitMode) return;\r\n state.safeWaitMode = true;\r\n setTimeout(() => {\r\n // @ts-ignore\r\n delete state.safeWaitMode;\r\n }, 2500);\r\n try {\r\n const data = {\r\n dut_id: DUT_ID,\r\n mode: newMode, // 'manual', 'auto'\r\n };\r\n setState({ transmittingCommand: true });\r\n const newState = await apiCall('/dut/set-dut-aut-operation', data);\r\n // onStateUpdate(newState);\r\n toast.success(t('sucessoEnviar'));\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ transmittingCommand: false });\r\n }\r\n\r\n async function emmitDutCommand(CMD_TYPE: 'AC_OFF'|'AC_COOL'|'AC_FAN') {\r\n if (state.safeWaitRelay) return;\r\n state.safeWaitRelay = true;\r\n setTimeout(() => {\r\n // @ts-ignore\r\n delete state.safeWaitRelay;\r\n }, 2500);\r\n try {\r\n setState({ transmittingCommand: true });\r\n const result = await apiCall('/send-dut-aut-command', {\r\n devId: DUT_ID,\r\n CMD_TYPE,\r\n });\r\n toast.success(t('sucessoTransmitido'));\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ transmittingCommand: false });\r\n }\r\n\r\n const manualCommandsEnabled = (telemetry.Mode === 'Manual');\r\n\r\n return (\r\n
\r\n \r\n {t('automacao')}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('statusAutomacao')}\r\n \r\n \r\n
\r\n emmitDutCommand('AC_FAN')) : null}\r\n />\r\n {/*     \r\n */}\r\n
\r\n\r\n
\r\n emmitDutCommand('AC_COOL')) : null}\r\n />\r\n {/*     \r\n */}\r\n
\r\n\r\n
\r\n emmitDutCommand('AC_OFF')) : null}\r\n />\r\n {/*     \r\n */}\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n {`${t('modoEco')}:`}\r\n  \r\n \r\n {ecoModeCfg ? (ecoModeCfgs[ecoModeCfg] || ecoModeCfg || `(${t('nenhuma')})`) : t('desabilitado')}\r\n \r\n {(telemetry.ecoModeActing)\r\n && (\r\n \r\n )}\r\n
\r\n\r\n {state.transmittingCommand && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n );\r\n};\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport { Loader, StatusBox } from 'components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocket, WSConn } from 'helpers/wsConnection';\r\nimport { TermometerIcon } from 'icons';\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport { DevFullInfo } from 'store';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport { DutAutControl } from './DutAutControl';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const DutAutRealTime = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n };\r\n state.isLoading = !state.devInfo;\r\n return state;\r\n });\r\n\r\n async function getDevInfo() {\r\n if (!state.devInfo) {\r\n try {\r\n state.devInfo = await getCachedDevInfo(routeParams.devId, {});\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n useEffect(() => {\r\n getDevInfo();\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaTempoReal')}\r\n \r\n \r\n {(state.isLoading)\r\n && (\r\n
\r\n {' '}\r\n \r\n {' '}\r\n
\r\n )}\r\n {(state.devInfo && !state.isLoading)\r\n && }\r\n \r\n );\r\n};\r\n\r\nexport function DutAutRealTimeContents(props: { devInfo: DevFullInfo }): JSX.Element {\r\n const { t } = useTranslation();\r\n const { devInfo } = props;\r\n const [state, render, setState] = useStateVar({\r\n TUSEMIN: null as null|number,\r\n ecoModeCfg: null as null|'0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP'|'4_BLOCKED'|'5_BACKUP_CONTROL'|'6_BACKUP_CONTROL_V2'|'7_FORCED'|'8_ECO_2',\r\n status: 'OFFLINE',\r\n telemetryDutAut: {\r\n State: null as null|string,\r\n Mode: null as null|string,\r\n status: 'OFFLINE',\r\n progState: null as null|string,\r\n ecoModeActing: null as null|boolean,\r\n },\r\n telemetryDut: {\r\n Temperature: null as null|number,\r\n status: 'OFFLINE',\r\n },\r\n });\r\n\r\n useEffect(() => {\r\n state.TUSEMIN = (devInfo.dut || null) && devInfo.dut!.TUSEMIN;\r\n state.ecoModeCfg = (devInfo.dut_aut && devInfo.dut_aut.CTRLOPER) || null;\r\n render();\r\n }, [devInfo]);\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n function onWsOpen(wsConn: WSConn) {\r\n wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: devInfo.DEV_ID } });\r\n }\r\n function onWsMessage(response: { type: string, data: any }) {\r\n if (response && response.type === 'dutTelemetry' && response.data.status && response.data.dev_id === devInfo.DEV_ID) {\r\n state.status = state.telemetryDut.status = response.data.status;\r\n state.telemetryDut.Temperature = response.data.Temperature;\r\n render();\r\n }\r\n if (response && response.type === 'dutAutTelemetry' && response.data.status && response.data.dev_id === devInfo.DEV_ID) {\r\n state.status = state.telemetryDutAut.status = response.data.status;\r\n state.telemetryDutAut.Mode = response.data.Mode;\r\n state.telemetryDutAut.State = response.data.State;\r\n state.telemetryDutAut.progState = response.data.progState;\r\n state.telemetryDutAut.ecoModeActing = response.data.ecoModeActing;\r\n render();\r\n }\r\n }\r\n function beforeWsClose(wsConn: WSConn) {\r\n wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n {state.status}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n {t('limiteTemperatura')}\r\n {' '}\r\n {(state.TUSEMIN != null) ? `${formatNumberWithFractionDigits(state.TUSEMIN)} °C` : t('semInformacaoTemperatura')}\r\n \r\n
\r\n \r\n \r\n \r\n {' '}\r\n {t('temperaturaAmbiente')}\r\n \r\n
\r\n {(state.telemetryDut.Temperature != null) ? `${formatNumberWithFractionDigits(state.telemetryDut.Temperature)}°C` : '-'}\r\n
\r\n
\r\n
 
\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nconst Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\nconst Text = styled.p<{ isBold?: boolean }>(\r\n ({ isBold }) => `\r\n margin-top: 1em;\r\n margin-bottom: 1em;\r\n color: ${colors.Grey400};\r\n font-weight: ${isBold ? 'bold' : 'normal'};\r\n`,\r\n);\r\nconst StyledText = styled.span<{ fontSize?: string }>(\r\n ({ fontSize = '16px' }) => `\r\n font-size: ${fontSize};\r\n font-weight: bold;\r\n color: ${colors.Grey400};\r\n white-space: nowrap;\r\n text-align: center;\r\n`,\r\n);\r\n\r\nconst Wrapper = styled.div`\r\n text-align: center;\r\n`;\r\n\r\n/*\r\n todayEvents: [] as {\r\n start: number\r\n end: number\r\n state: \"allow\" | \"forbid\" | \"onlyfan\"\r\n }[],\r\n\r\n async function getDutProg () {\r\n try {\r\n // setState({ isLoading: true });\r\n const { dayEvents: todayEvents, indexNow } = await api['/dut/get-programming-as-events']({ dutId: routeParams.devId, todayEvents: true });\r\n // const now = Date.now();\r\n state.todayEvents = todayEvents.map((item) => {\r\n return {\r\n // start: (item.start_m - indexNow) * 60 * 1000 + now,\r\n // end: (item.start_m - indexNow + item.duration_m) * 60 * 1000 + now,\r\n start: item.start_m,\r\n end: (item.start_m + item.duration_m),\r\n state: item.state,\r\n };\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n // toast.warn('Não existem programações ativas')\r\n toast.error('Houve erro')\r\n }\r\n // setState({ isLoading: false });\r\n }\r\n\r\n function getProgState (devTimestamp: string): \"allow\" | \"forbid\" | \"onlyfan\" {\r\n if (!devTimestamp) return null;\r\n // const nowShifted = new Date(Date.now() - 3 * 60 * 60 * 1000);\r\n const nowShifted = new Date(devTimestamp + 'Z');\r\n const index = nowShifted.getUTCHours() * 60 + nowShifted.getUTCMinutes();\r\n for (const item of state.todayEvents) {\r\n if ((index >= item.start) && (index < item.end)) {\r\n return item.state;\r\n }\r\n }\r\n return null;\r\n }\r\n*/\r\n","export default __webpack_public_path__ + \"static/media/power.7c891e29.svg\";","export default __webpack_public_path__ + \"static/media/power_grey.44dab01c.svg\";","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport { Loader } from '~/components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { useWebSocket } from '~/helpers/wsConnection';\r\nimport {\r\n HumidityIcon,\r\n TermometerIcon,\r\n CO2IconV2,\r\n EvapReturnIcon,\r\n EvapInsufIcon,\r\n} from '~/icons';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\nimport {\r\n ControlButton,\r\n ControlButtonIcon,\r\n SelectContainer,\r\n} from './styles';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport img_mode_cool from '~/assets/img/cool_ico/mode_cool.svg';\r\nimport img_mode_fan from '~/assets/img/cool_ico/mode_fan.svg';\r\nimport img_power from '~/assets/img/cool_ico/power.svg';\r\nimport img_power_grey from '~/assets/img/cool_ico/power_grey.svg';\r\nimport { t } from 'i18next';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const EnvironmentRealTime = (): JSX.Element => {\r\n const routeParams = useParams<{ devId }>();\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaTempoReal')}\r\n \r\n \r\n {/* @ts-ignore */}\r\n \r\n \r\n );\r\n};\r\n\r\nexport function identifyDutIrCommands(dutIrCmds) {\r\n return dutIrCmds.map((item) => {\r\n const desc = (item.CMD_DESC || '').toUpperCase();\r\n const t1 = (item.TEMPER == null) ? null : String(item.TEMPER);\r\n const t2 = (desc.match(/(\\d+)/g) || []).join(';') || null;\r\n const T = (t1 === t2) ? t1 : [t1, t2].filter((x) => x).join(';');\r\n const ehDesl = !!((item.CMD_TYPE === 'AC_OFF') || desc.includes('DESL') || desc.includes('OFF'));\r\n const ehVent = !!((item.CMD_TYPE === 'AC_FAN') || desc.includes('VENT') || desc.includes('FAN'));\r\n const ehRefr_pre = !!((item.CMD_TYPE === 'AC_COOL') || desc.includes('COOL') || desc.includes('REFR') || desc.includes('SET') || desc.match(/\\bLIG/) || desc.match(/\\bON/)) || (item.CMD_DESC && item.CMD_DESC === t2);\r\n const ehRefr = ehRefr_pre || !!(T && (!ehDesl) && (!ehVent));\r\n const M = (desc.startsWith('FAKE') ? 'FAKE' : [ehDesl && 'AC_OFF', ehVent && 'AC_FAN', ehRefr && 'AC_COOL'].filter((x) => x).join(';')) || '?';\r\n let avaliacao = '';\r\n if ((M === 'AC_OFF') || (M === 'AC_FAN')) { avaliacao = 'OK'; }\r\n else if ((M === 'AC_COOL') && T && (T.length === 2)) { avaliacao = 'OK'; }\r\n const identificado = ((avaliacao === 'OK') && `${M}${(M === 'AC_COOL') ? (`:${T}`) : ''}`) || null;\r\n // identificado = 'AC_OFF' ou 'AC_FAN' ou 'AC_COOL:21' ...\r\n return { ...item, cmdName: identificado };\r\n }) || null;\r\n}\r\n\r\nexport function EnvironmentRealTimeContents({ onDevInfoUpdate = undefined }) {\r\n const { devId: dutId } = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar({\r\n data: null as null | {\r\n operation_mode: number; status: string, Temperature: string | number, Temperature_1: null | number, Humidity?: null | number, eCO2?: null | number\r\n}, // { status, Temperature, Humidity, eCO2, TVOC}\r\n dutStats: null, // { max, med, min, dayIni, dayEnd }\r\n devInfo: getCachedDevInfoSync(dutId),\r\n dutIrCommands: null as null | { IR_ID: string, cmdName: string, CMD_TYPE: string }[],\r\n dutType: null as null | 'monitoring' | 'automation',\r\n timerChangeSetpoint: null as null | NodeJS.Timeout,\r\n setpoint: 23 as number,\r\n activeOperationMode: 0,\r\n activeOperationStatus: 1,\r\n floatingControlMode: null as null | {\r\n x: number\r\n y: number\r\n },\r\n floatingControlFan: null as null | {\r\n x: number\r\n y: number\r\n },\r\n floatingControlSwing: null as null | {\r\n x: number\r\n y: number\r\n },\r\n });\r\n\r\n function getDutType() {\r\n const dutInfo = state.devInfo;\r\n if (!dutInfo.dut_aut) {\r\n setState({ dutType: 'monitoring' });\r\n }\r\n if (dutInfo.dut_aut && dutInfo.dut_aut.DUTAUT_DISABLED !== 1) {\r\n const tempDefault = dutInfo.dut_aut.TSETPOINT || state.dutIrCommands?.filter((command) => {\r\n const cmdSetpoint = Number(command?.cmdName?.split(':')[1]) || null;\r\n if (cmdSetpoint != null) return command;\r\n })\r\n .map((command) => (\r\n {\r\n IR_ID: command.IR_ID,\r\n CMD_NAME: command?.cmdName,\r\n CMD_TYPE: command?.CMD_TYPE,\r\n TEMPER: Number(command?.cmdName?.split(':')[1]),\r\n }\r\n ))\r\n .find((item) => item.CMD_TYPE === 'AC_COOL')?.TEMPER;\r\n setState({ dutType: 'automation', setpoint: tempDefault || 23 });\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n try {\r\n const dayIni = new Date(Date.now() - (6 + new Date().getDay()) * 24 * 60 * 60 * 1000 - 3 * 60 * 60 * 1000).toISOString().substr(0, 10);\r\n const dayEnd = new Date(Date.now() - (2 + new Date().getDay()) * 24 * 60 * 60 * 1000 - 3 * 60 * 60 * 1000).toISOString().substr(0, 10);\r\n\r\n const [\r\n devInfo,\r\n dutStats,\r\n ] = await Promise.all([\r\n getCachedDevInfo(dutId, {}),\r\n apiCall('/dut/get-day-stats', {\r\n devId: dutId,\r\n dayIni,\r\n numDays: 5,\r\n }),\r\n ]);\r\n\r\n if (state.dutType !== 'monitoring') {\r\n const { list: dutIrCodes } = await apiCall('/get-dut-ircodes-list', { devId: dutId });\r\n state.dutIrCommands = identifyDutIrCommands(dutIrCodes);\r\n }\r\n getDutType();\r\n // @ts-ignore\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n\r\n state.devInfo = devInfo;\r\n // @ts-ignore\r\n state.dutStats = dutStats || {};\r\n // @ts-ignore\r\n state.dutStats.dayIni = dayIni;\r\n // @ts-ignore\r\n state.dutStats.dayEnd = dayEnd;\r\n render();\r\n } catch (err) { toast.error(t('erro')); console.error(err); getDutType(); }\r\n });\r\n }, []);\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'dutSubscribeRealTime', data: { DUT_ID: dutId } });\r\n }\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dutTelemetry') {\r\n if (response.data.status !== 'ONLINE') {\r\n response.data.Temperature = '-';\r\n response.data.Temperature_1 = null;\r\n response.data.Humidity = null;\r\n response.data.eCO2 = null;\r\n response.data.TVOC = null;\r\n setState({ data: response.data });\r\n }\r\n if (response.data.status === 'ONLINE' && response.data.timestamp) {\r\n setState({ data: response.data });\r\n }\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'dutUnsubscribeRealTime' });\r\n }\r\n\r\n function getClosestSetpointCommand(setpoint) {\r\n return state.dutIrCommands?.reduce((cmd, value) => {\r\n if (value.cmdName?.includes('COOL')) {\r\n const cmdSetpoint = Number(cmd?.cmdName?.split(':')[1]) || 0;\r\n const valueSetpoint = Number(value.cmdName?.split(':')[1]) || 0;\r\n if (\r\n (setpoint >= state.setpoint && valueSetpoint >= (setpoint - 1))\r\n || (setpoint <= state.setpoint && valueSetpoint <= (setpoint + 1))) {\r\n if (Math.abs(setpoint - valueSetpoint) < Math.abs(setpoint - cmdSetpoint)) return value;\r\n return cmd;\r\n }\r\n }\r\n return cmd;\r\n }, undefined as undefined | { IR_ID: string, cmdName: string });\r\n }\r\n\r\n function changeSetpoint(newSetpoint: number) {\r\n if (state.timerChangeSetpoint) clearTimeout(state.timerChangeSetpoint);\r\n if (state.setpoint) {\r\n const newSetpointCommand = getClosestSetpointCommand(newSetpoint);\r\n if (newSetpointCommand) {\r\n state.setpoint = Number(newSetpointCommand.cmdName.split(':')[1]);\r\n state.timerChangeSetpoint = setTimeout(() => sendSetpoint(newSetpointCommand), 1500);\r\n render();\r\n } else {\r\n state.timerChangeSetpoint = setTimeout(() => toast.info(t('comandoNaoEncontrado')), 1500);\r\n }\r\n }\r\n }\r\n\r\n async function sendSetpoint(command) {\r\n try {\r\n await apiCall('/send-dut-aut-command', { devId: dutId, IR_ID: command.IR_ID });\r\n toast.success(t('sucessoTemperaturaEnviada'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroEstabelecerSetpoint'));\r\n }\r\n }\r\n\r\n const onClickMode = (event) => {\r\n if (state.floatingControlMode) {\r\n state.floatingControlMode = null;\r\n } else {\r\n let element = event.target;\r\n while (element.tagName.toLowerCase() !== 'div') {\r\n if (!(element.parentElement && element.parentElement.tagName)) return;\r\n\r\n element = element.parentElement;\r\n }\r\n const rect = element.getBoundingClientRect();\r\n state.floatingControlMode = {\r\n y: rect.y + 1 * 71, // event.target.offsetTop, // event.clientY\r\n x: rect.x, // event.target.offsetLeft, // event.clientX\r\n };\r\n state.floatingControlSwing = null;\r\n state.floatingControlFan = null;\r\n }\r\n render();\r\n };\r\n\r\n async function setOperationMode(operationMode: number) {\r\n try {\r\n if (operationMode === 1) {\r\n const command = state.dutIrCommands?.find((cmd) => cmd.cmdName === 'AC_FAN');\r\n if (command) {\r\n await apiCall('/send-dut-aut-command', { devId: dutId, IR_ID: command.IR_ID });\r\n state.activeOperationMode = operationMode;\r\n toast.success(t('sucessoModoOperacaoEnviado'));\r\n } else {\r\n toast.info(t('comandoNaoEncontrado'));\r\n }\r\n }\r\n if (operationMode === 0) {\r\n const command = getClosestSetpointCommand(state.setpoint);\r\n if (command) {\r\n await apiCall('/send-dut-aut-command', { devId: dutId, IR_ID: command.IR_ID });\r\n state.setpoint = Number(command.cmdName?.split(':')[1]);\r\n state.activeOperationMode = operationMode;\r\n toast.success(t('sucessoModoOperacaoEnviado'));\r\n } else {\r\n toast.info(t('comandoNaoEncontrado'));\r\n }\r\n }\r\n setState({ floatingControlMode: null, floatingControlFan: null, floatingControlSwing: null });\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n async function setOperationStatus(operationStatus: number) {\r\n try {\r\n if (operationStatus === 0) {\r\n const command = state.dutIrCommands?.find((cmd) => cmd.cmdName === 'AC_OFF');\r\n if (command) {\r\n await apiCall('/send-dut-aut-command', { devId: dutId, IR_ID: command.IR_ID });\r\n state.activeOperationStatus = operationStatus;\r\n toast.success(t('sucessoComandoEnviadoDesligar'));\r\n } else {\r\n toast.info(t('comandoNaoEncontrado'));\r\n }\r\n }\r\n if (operationStatus === 1) {\r\n const command = getClosestSetpointCommand(state.setpoint);\r\n if (command) {\r\n await apiCall('/send-dut-aut-command', { devId: dutId, IR_ID: command.IR_ID });\r\n state.setpoint = Number(command.cmdName?.split(':')[1]);\r\n state.activeOperationStatus = operationStatus;\r\n toast.success(t('sucessoComandoEnviadoLigar'));\r\n } else {\r\n toast.info(t('comandoNaoEncontrado'));\r\n }\r\n }\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n function getOperationModeIcon(operationMode: number) {\r\n // operationModes: {\"0\":\"COOL\",\"1\":\"FAN\"},\r\n switch (operationMode) {\r\n case 0: return img_mode_cool;\r\n case 1: return img_mode_fan;\r\n }\r\n }\r\n\r\n function onOffBackgroundColor(operationStatus: number) {\r\n // operationStatuses: {\"1\":\"on\",\"2\":\"off\"},\r\n if (state.devInfo.status !== 'ONLINE') return '#bbbbbb'; // OFF\r\n switch (operationStatus) {\r\n case 1: return '#363bc4'; // ON\r\n case 2: return '#bbbbbb'; // OFF\r\n default: return '#bbbbbb';\r\n }\r\n }\r\n\r\n function getOperationStatusIcon(operationStatus: number) {\r\n // operationStatuses: {\"1\":\"on\",\"2\":\"off\"},\r\n if (state.devInfo.status !== 'ONLINE') return img_power_grey;\r\n switch (operationStatus) {\r\n case 1: return img_power;\r\n case 0: return img_power_grey;\r\n default: return img_power_grey;\r\n }\r\n }\r\n\r\n function getDialColor({ temp, co2, hum }: { temp?: any, co2?: any, hum?: any }) {\r\n if (state.devInfo.status !== 'ONLINE') return colors.LightGrey_v3;\r\n if (temp != null && Number.isFinite(Number(temp))) {\r\n return (\r\n state.devInfo.dut.TUSEMAX && temp > state.devInfo.dut.TUSEMAX && colors.Red\r\n || state.devInfo.dut.TUSEMIN && temp < state.devInfo.dut.TUSEMIN && colors.BlueSecondary_v3\r\n || colors.GreenLight\r\n );\r\n }\r\n if (co2 != null && Number.isFinite(Number(co2)) && state.devInfo.dut.CO2MAX && co2 > state.devInfo.dut.CO2MAX) return colors.LightOrange;\r\n if (hum != null && Number.isFinite(Number(hum))) {\r\n if (Number(hum) > 70 || Number(hum) < 30) {\r\n return colors.Red;\r\n }\r\n return '#2D81FF';\r\n }\r\n return colors.GreenLight;\r\n }\r\n\r\n function labelTempRetorno() {\r\n if (state.devInfo?.dut.APPLICATION === 'fancoil') {\r\n return t('saidaAgua');\r\n }\r\n return t('retorno');\r\n }\r\n\r\n function labelTempInsuf() {\r\n if (state.devInfo?.dut.APPLICATION === 'fancoil') {\r\n return t('entradaAgua');\r\n }\r\n return t('insuflamento');\r\n }\r\n\r\n const tempOrDutDuo = state.data?.Temperature_1 || state.devInfo?.isDutDuo;\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n {(!state.data)\r\n ? \r\n : (\r\n <>\r\n {state.data && state.data.operation_mode !== 5 && (\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {state.data.Temperature !== undefined && (\r\n
\r\n
\r\n {(!state.data.Temperature_1 && !state.devInfo?.isDutDuo) && (\r\n
\r\n \r\n {t('agora')}\r\n
\r\n ) }\r\n {tempOrDutDuo && (\r\n
\r\n {\r\n labelTempRetorno() === t('retorno') && \r\n }\r\n {labelTempRetorno()}\r\n
\r\n )}\r\n
\r\n {formatNumberWithFractionDigits(state.data.Temperature)}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )}\r\n {tempOrDutDuo && (\r\n
\r\n
\r\n
\r\n {\r\n labelTempInsuf() === t('insuflamento') && \r\n }\r\n {labelTempInsuf()}\r\n
\r\n
\r\n {state.data.Temperature_1 ? formatNumberWithFractionDigits(state.data.Temperature_1) : '-'}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )}\r\n\r\n {state.data.eCO2 && (\r\n
\r\n
\r\n
\r\n \r\n {t('nivelCo')}\r\n 2\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.data.eCO2)}\r\n \r\n  ppm\r\n \r\n
\r\n
\r\n
\r\n )}\r\n\r\n {state.data.Humidity && (\r\n
\r\n
\r\n \r\n {t('umidade')}\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.data.Humidity)}\r\n %\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {state.devInfo.dut && state.data.Temperature && (\r\n
\r\n
{t('limitesTemperatura')}
\r\n \r\n {t('minMinimo')}\r\n {` ${state.devInfo.dut.TUSEMIN ? formatNumberWithFractionDigits(state.devInfo.dut.TUSEMIN) : '-'}`}\r\n °C\r\n      \r\n {t('maxMaximo')}\r\n {` ${state.devInfo.dut.TUSEMAX ? formatNumberWithFractionDigits(state.devInfo.dut.TUSEMAX) : '-'}`}\r\n °C\r\n \r\n
\r\n )}\r\n {state.devInfo.dut && state.dutType === 'automation' && (\r\n
\r\n
\r\n {t('setpoint')}\r\n
\r\n \r\n {`${formatNumberWithFractionDigits(state.setpoint)}`}\r\n °C\r\n \r\n
\r\n )}\r\n {state.devInfo.dut && state.data.eCO2 && (\r\n
\r\n
\r\n {t('limitesDeCo')}\r\n 2\r\n
\r\n \r\n {t('maxMaximo')}\r\n {` ${state.devInfo.dut.CO2MAX ? formatNumberWithFractionDigits(state.devInfo.dut.CO2MAX) : '-'}`}\r\n ppm\r\n \r\n
\r\n )}\r\n {state.devInfo.dut && state.data.Humidity && (\r\n
\r\n
{t('limitesUmidade')}
\r\n \r\n {t('minMinimo')}\r\n {' 60'}\r\n %\r\n      \r\n {t('maxMaximo')}\r\n {' 100'}\r\n %\r\n \r\n
\r\n )}\r\n
\r\n\r\n {state.devInfo.status === 'ONLINE' && state.data.Temperature === null && (\r\n {t('funcoesDispositivoNaoDisponiveis')}\r\n )}\r\n\r\n {state.dutType === 'automation' && (\r\n
\r\n {state.devInfo.status === 'ONLINE'\r\n ? (\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {state.floatingControlMode && state.devInfo.status === 'ONLINE' && (\r\n \r\n
\r\n setOperationMode(0)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(1)}>\r\n \r\n \r\n
\r\n
\r\n )}\r\n
\r\n
\r\n\r\n
\r\n state.devInfo.status === 'ONLINE' && setOperationStatus((state.activeOperationStatus === 1) ? 0 : 1)}\r\n >\r\n \"on_off\"\r\n \r\n
\r\n\r\n {/*
\r\n \r\n
\r\n state.setpoint && state.devInfo.status === 'ONLINE' && changeSetpoint(state.setpoint + 1)}>\r\n \r\n \r\n state.setpoint && state.devInfo.status === 'ONLINE' && changeSetpoint(state.setpoint - 1)}>\r\n \r\n \r\n
\r\n
\r\n
{t('temperatura')}
\r\n
{`${state.setpoint?.toString().replace('.', ',') || '-'} °C`}
\r\n
\r\n \r\n
*/}\r\n
\r\n ) : (\r\n {t('funcoesNaoDisponiveisStatusDispositivo')}\r\n )}\r\n
\r\n )}\r\n
\r\n \r\n \r\n \r\n )}\r\n { state.data.operation_mode === 5 && (\r\n <>\r\n { state.data.Temperature && (\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {state.data.Temperature !== undefined && (\r\n
\r\n
\r\n {state.data.Temperature_1 ? (\r\n
\r\n \r\n {t('retorno')}\r\n
\r\n ) : (\r\n
\r\n \r\n {t('temperatura')}\r\n
\r\n )}\r\n
\r\n {formatNumberWithFractionDigits(state.data.Temperature)}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )}\r\n {state.data.Temperature_1 && (\r\n
\r\n
\r\n
\r\n \r\n {t('insuflamento')}\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.data.Temperature_1)}\r\n \r\n  °C\r\n \r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {state.devInfo.dut && state.data.Temperature && (\r\n
\r\n
{t('limitesTemperatura')}
\r\n \r\n {t('minMinimo')}\r\n {` ${state.devInfo.dut.TUSEMIN ? formatNumberWithFractionDigits(state.devInfo.dut.TUSEMIN) : '-'}`}\r\n °C\r\n      \r\n {t('maxMaximo')}\r\n {` ${state.devInfo.dut.TUSEMAX ? formatNumberWithFractionDigits(state.devInfo.dut.TUSEMAX) : '-'}`}\r\n °C\r\n \r\n
\r\n )}\r\n
\r\n\r\n {state.devInfo.status === 'ONLINE' && state.data.Temperature === null && (\r\n {t('funcoesDispositivoNaoDisponiveis')}\r\n )}\r\n
\r\n \r\n \r\n \r\n ) }\r\n {\r\n state.data.Humidity && (\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n {state.data.Humidity && (\r\n
\r\n
\r\n \r\n {t('umidade')}\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.data.Humidity)}\r\n %\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {state.devInfo.dut && state.data.Humidity && (\r\n
\r\n
{t('limitesUmidade')}
\r\n \r\n {t('minMinimo')}\r\n {' 30'}\r\n %\r\n      \r\n {t('maxMaximo')}\r\n {' 70'}\r\n %\r\n \r\n
\r\n )}\r\n
\r\n\r\n {state.devInfo.status === 'ONLINE' && state.data.Temperature === null && (\r\n {t('funcoesDispositivoNaoDisponiveis')}\r\n )}\r\n
\r\n \r\n \r\n \r\n )\r\n }\r\n { state.data.eCO2 && (\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n {state.data.eCO2 && (\r\n
\r\n
\r\n
\r\n \r\n {t('nivelCo')}\r\n 2\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.data.eCO2)}\r\n \r\n  ppm\r\n \r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n\r\n
\r\n {state.devInfo.dut && state.data.eCO2 && (\r\n
\r\n
\r\n {t('limitesDeCo')}\r\n 2\r\n
\r\n \r\n {t('maxMaximo')}\r\n {` ${state.devInfo.dut.CO2MAX ? formatNumberWithFractionDigits(state.devInfo.dut.CO2MAX) : '-'}`}\r\n ppm\r\n \r\n
\r\n )}\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n ) }\r\n \r\n ) }\r\n {/* @ts-ignore */}\r\n {/* {(!state.data.eCO2 || (state.data.eCO2 && state.data.Temperature)) */}\r\n {false\r\n && (\r\n \r\n \r\n {/* \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
Setpoint
\r\n
\r\n
\r\n state.setpoint && state.devInfo.status === 'ONLINE' && changeSetpoint(state.setpoint + 1)}\r\n />\r\n state.setpoint && state.devInfo.status === 'ONLINE' && changeSetpoint(state.setpoint - 1)}\r\n />\r\n
\r\n {state.setpoint}\r\n  °C\r\n
\r\n
Agora
\r\n
\r\n {(state.data.Temperature == null) ? '-' : state.data.Temperature.toString().replace('.', ',')}\r\n °C\r\n
\r\n
\r\n
\r\n
\r\n\r\n {state.devInfo.status === 'ONLINE'\r\n ? (\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n {state.floatingControlMode && state.devInfo.status === 'ONLINE' && (\r\n \r\n
\r\n setOperationMode(0)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(1)}>\r\n \r\n \r\n
\r\n
\r\n )}\r\n
\r\n
\r\n\r\n
\r\n state.devInfo.status === 'ONLINE' && setOperationStatus((state.activeOperationStatus === 1) ? 0 : 1)}\r\n >\r\n \"on_off\"\r\n \r\n
\r\n
\r\n ) : (\r\n Funções não disponíveis devido ao status atual do dispositivo\r\n )}\r\n
\r\n */}\r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nfunction Dial(props: { temperature: number | null, color: string | null, showIndicator: boolean }) {\r\n const min = 16;\r\n const max = 32;\r\n let percentage = (props.temperature == null) ? NaN : ((props.temperature - min) / (max - min));\r\n if (percentage > 1) percentage = 1;\r\n if (percentage < 0) percentage = 0;\r\n if (!Number.isFinite(percentage)) percentage = NaN;\r\n\r\n function onSvgClick(event) {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'svg') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n console.log('DBG013', rect, event);\r\n }\r\n\r\n return (\r\n \r\n \r\n {props.showIndicator && (\r\n \r\n )}\r\n {(!Number.isNaN(percentage)) && props.showIndicator && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {props.showIndicator && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\nconst BoxWrapper = styled.div`\r\n display: flex;\r\n`;\r\n\r\nconst Wrapper = styled.div`\r\n width: 100%;\r\n text-align: center;\r\n`;\r\n\r\nconst Card = styled.div`\r\n border-radius: 16px;\r\n padding: 32px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n","import { useEffect, useState } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport { apiCall } from '~/providers';\r\nimport { Card } from '~/components';\r\nimport { ToggleSwitchMini } from '~/components/ToggleSwitch';\r\nimport { LabelData, LabelInfo, LabelSwitch } from '~/components/ModalWindow/styles';\r\nimport { useWebSocket } from '~/helpers/wsConnection';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Line, LineChart, Tooltip,\r\n} from 'recharts';\r\nimport { colors } from '~/styles/colors';\r\nimport {\r\n Text, Line as LineLegend, ColoredLine, WaterTooltip, Timer, Calendar,\r\n} from './styles';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nexport const DmaRealTime = (props: {dmaId: string}): JSX.Element => {\r\n const { dmaId } = props;\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaTempoReal')}\r\n \r\n {/* @ts-ignore */}\r\n \r\n \r\n );\r\n};\r\n\r\nconst getCurrDate = () => {\r\n const today = new Date();\r\n const yyyy = today.getFullYear();\r\n const mm = today.getMonth() + 1; // Months start at 0!\r\n const dd = today.getDate();\r\n\r\n return `${dd < 10 ? `0${dd}` : dd}/${mm < 10 ? `0${mm}` : mm}/${yyyy}`;\r\n};\r\n\r\nexport function DmaRealTimeContents({ dmaId }) {\r\n const { t } = useTranslation();\r\n const [shouldNotDisplayLiters, setShouldNotDisplayLiters] = useState(false);\r\n const [state, render, setState] = useStateVar({\r\n telemetries: [] as {pulses: number| null, status: string}[], // { status }[]\r\n graphData: [] as {x: string, value: number | null }[],\r\n graphDataCubic: [] as {x: string, value: number | null }[],\r\n lastConsumption: 0 as number,\r\n lastConsumptionCube: 0 as number,\r\n devInfo: {} as any,\r\n });\r\n\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n const data = await apiCall('/dma/get-dma-info', { dmaId });\r\n setState({ devInfo: data });\r\n if (!state.devInfo.HYDROMETER_MODEL) {\r\n toast.error(t('erroHidrometroCadastrado'));\r\n }\r\n } catch (err) {\r\n toast.error(t('erroInformacoesDispositivos'));\r\n }\r\n })();\r\n }, []);\r\n\r\n const changeSamplingPeriod = async (interval: number) => {\r\n try {\r\n await apiCall('/dma/set-sampling-period', { dmaId, samplingPeriod: interval });\r\n } catch (err) {\r\n toast.error(t('erroTelemetrias'));\r\n }\r\n };\r\n\r\n const reformatDate = (dateStr) => {\r\n const dArr = dateStr.split('-');\r\n return `${dArr[2]}/${dArr[1]}/${dArr[0].substring(2)}`;\r\n };\r\n\r\n const getLitersPerPulse = () => {\r\n if (!state.devInfo.HYDROMETER_MODEL) {\r\n toast.error(t('erroHidrometroCadastrado'));\r\n return null;\r\n }\r\n\r\n return Number(state.devInfo.HYDROMETER_MODEL.substring(\r\n state.devInfo.HYDROMETER_MODEL.indexOf('(') + 1,\r\n state.devInfo.HYDROMETER_MODEL.lastIndexOf(')'),\r\n ).split(' ')[0]);\r\n };\r\n\r\n const updateGraphData = (response, date, litersPerPulse) => {\r\n if (response.data.status !== 'ONLINE') {\r\n state.graphData.push({ x: response.data.timestamp, date, value: null });\r\n state.graphDataCubic.push({ x: response.data.timestamp, date, value: 0.0000 });\r\n } else if (state.telemetries.length === 0) {\r\n state.graphData.push({ x: response.data.timestamp, date, value: 0 });\r\n state.graphDataCubic.push({ x: response.data.timestamp, date, value: 0.0000 });\r\n } else if (!response.data.pulses || !state.telemetries[state.telemetries.length - 1].pulses) {\r\n state.graphData.push({ x: response.data.timestamp, date, value: 0 });\r\n state.graphDataCubic.push({ x: response.data.timestamp, date, value: 0.0000 });\r\n } else {\r\n const currValue = state.lastConsumption + litersPerPulse * (Number(response.data.pulses) - Number(state.telemetries[state.telemetries.length - 1].pulses));\r\n\r\n if (currValue < 0) {\r\n state.lastConsumption = 0;\r\n state.lastConsumptionCube = 0;\r\n state.graphData.push({ x: response.data.timestamp, date, value: 0 });\r\n state.graphDataCubic.push({ x: response.data.timestamp, date, value: 0 });\r\n } else {\r\n state.graphData.push({ x: response.data.timestamp, date, value: currValue });\r\n state.graphDataCubic.push({ x: response.data.timestamp, date, value: Number((currValue / 1000).toFixed(4)) });\r\n state.lastConsumption = currValue;\r\n state.lastConsumptionCube = Number((currValue / 1000).toFixed(4));\r\n }\r\n }\r\n\r\n const dataCopy = state.graphData;\r\n setState({ graphData: [] });\r\n setState({ graphData: dataCopy });\r\n const dataCopyCubic = state.graphDataCubic;\r\n setState({ graphDataCubic: [] });\r\n setState({ graphDataCubic: dataCopyCubic });\r\n\r\n state.telemetries.push(response.data);\r\n };\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'dmaSubscribeRealTime', data: { DMA_ID: dmaId } });\r\n changeSamplingPeriod(10);\r\n }\r\n\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dmaTelemetry') {\r\n if (!response.data.pulses || response.data.saved_data) return;\r\n\r\n const date = reformatDate(response.data.timestamp.split('T')[0]);\r\n response.data.timestamp = response.data.timestamp.split('T')[1];\r\n\r\n response.data.pulses = Number(String(response.data.pulses));\r\n\r\n const litersPerPulse = getLitersPerPulse();\r\n if (litersPerPulse === null) return;\r\n\r\n updateGraphData(response, date, litersPerPulse);\r\n render();\r\n }\r\n }\r\n\r\n function beforeWsClose(wsConn) {\r\n changeSamplingPeriod(900);\r\n wsConn.send({ type: 'dmaUnsubscribeRealTime' });\r\n }\r\n\r\n const CustomizedToolTip = ({ payload }: any) => {\r\n if (payload != null) {\r\n return (\r\n \r\n {t('leitura')}\r\n

\r\n \r\n {payload && payload?.length > 0 ? formatNumberWithFractionDigits(payload[0].payload.value) : '-'}\r\n \r\n {shouldNotDisplayLiters ? 'm³' : 'litros'}\r\n

\r\n \r\n \r\n \r\n {payload && payload?.length > 0 ? payload[0].payload.date : '-'}\r\n \r\n  \r\n \r\n \r\n {payload && payload?.length > 0 ? payload[0].payload.x : '-'}\r\n \r\n \r\n\r\n
\r\n );\r\n }\r\n return
;\r\n };\r\n\r\n return (\r\n <>\r\n \r\n \r\n

{t('consumoAgua')}

\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n {t('idDoDispositivo')}\r\n \r\n {dmaId}\r\n
\r\n
\r\n \r\n {t('unidadeDeMedida')}\r\n \r\n
\r\n {t('litros')}\r\n setShouldNotDisplayLiters(!shouldNotDisplayLiters)}\r\n style={{ marginLeft: '8px', marginRight: '8px' }}\r\n />\r\n {t('metrosCubicos')}\r\n
\r\n
\r\n
\r\n
\r\n \r\n {getCurrDate()}\r\n \r\n\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n } />\r\n \r\n formatNumberWithFractionDigits(value, { minimum: 0, maximum: 2 })}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {`${t('consumoAgua')}:`}\r\n  \r\n \r\n \r\n {`${formatNumberWithFractionDigits((state.graphData.length !== 0 ? shouldNotDisplayLiters ? state.graphDataCubic[state.graphDataCubic.length - 1]?.value : state.graphData[state.graphData.length - 1]?.value : '-') || 0)} ${shouldNotDisplayLiters ? '(m³)' : '(L)'}` }\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n );\r\n}\r\n","export default __webpack_public_path__ + \"static/media/power_1_color.fdc0efc1.svg\";","type FanIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const FanOnIcon = ({\r\n color, width, height, ...props\r\n}: FanIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n\r\nexport const FanOffIcon = ({\r\n color, width, height, ...props\r\n}: FanIconProps): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n);\r\n","type ValveIconProps = {\r\n color?: string;\r\n width?: string;\r\n height?: string;\r\n}\r\n\r\nexport const ValveOpenedIcon = ({\r\n color, width, height, ...props\r\n}: ValveIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n\r\nexport const ValveClosedIcon = ({\r\n color, width, height, ...props\r\n}: ValveIconProps): JSX.Element => (\r\n \r\n \r\n \r\n\r\n);\r\n","import { ReactElement, useState } from 'react';\r\nimport { DriException, DriSchedule } from './DRI_ScheduleModal';\r\nimport { Flex } from 'reflexbox';\r\nimport { Button } from 'components';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { ExceptionSchedCard, LimitExceedTooltip, SchedCard } from './DRI_Shedule';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nconst LIMIT_EXCEPTIONS = 6;\r\nconst LIMIT_SCHEDULES = 6;\r\n\r\ninterface DriScheduleListProps {\r\n driCfg: { application: string, protocol: string};\r\n schedules: DriSchedule[];\r\n exceptions: DriException[];\r\n onAddEdit: (sched?: DriSchedule | DriException) => void;\r\n onDelete: (sched: DriSchedule | DriException) => void;\r\n onChangeShowException: (value: boolean) => void;\r\n size?: 'small';\r\n hideAddButton?: boolean;\r\n clientId?: number;\r\n}\r\n\r\nexport const DriScheduleList = ({\r\n exceptions,\r\n schedules,\r\n driCfg,\r\n onDelete,\r\n onAddEdit,\r\n size,\r\n onChangeShowException,\r\n hideAddButton,\r\n clientId,\r\n}: DriScheduleListProps): ReactElement => {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const [state, , setState] = useStateVar({\r\n showExceptions: false,\r\n showList: true,\r\n });\r\n\r\n function verifyProfileCanManageProgramming() {\r\n return !!(profile.manageAllClients || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === clientId));\r\n }\r\n\r\n const limitExceeded = state.showExceptions ? exceptions.length >= LIMIT_EXCEPTIONS : schedules.length >= LIMIT_SCHEDULES;\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n {\r\n if (state.showExceptions) {\r\n onChangeShowException(false);\r\n setState({ showExceptions: false });\r\n }\r\n }}\r\n >\r\n {t('programacoes')}\r\n \r\n \r\n {\r\n if (!state.showExceptions) {\r\n onChangeShowException(true);\r\n setState({ showExceptions: true });\r\n }\r\n }}\r\n >\r\n {t('excecoes')}\r\n \r\n \r\n
\r\n \r\n \r\n \r\n {`${t('total')}: ${state.showExceptions ? exceptions.length : schedules.length}`}\r\n \r\n {(!hideAddButton && verifyProfileCanManageProgramming()) && (\r\n \r\n onAddEdit()}\r\n disabled={limitExceeded}\r\n >\r\n {t('botaoAdicionarProgramacaoExcecao', {\r\n value: state.showExceptions\r\n ? t('excecao')\r\n : t('Programacao'),\r\n })}\r\n \r\n \r\n )}\r\n
\r\n \r\n {!state.showExceptions && schedules.map((sched, index) => (\r\n onAddEdit(sched)}\r\n onDelete={() => onDelete(sched)}\r\n size={size}\r\n canManageProgramming={verifyProfileCanManageProgramming()}\r\n />\r\n ))}\r\n {state.showExceptions && exceptions.length > 0 && (\r\n <>\r\n \r\n \r\n {t('titulo')}\r\n
\r\n \r\n {t('Data')}\r\n
\r\n \r\n {t('repetirTodoAno')}\r\n
\r\n \r\n {t('inicio')}\r\n
\r\n \r\n {t('fim')}\r\n
\r\n
\r\n {exceptions.map((exception) => (\r\n \r\n onAddEdit(exception)}\r\n onDelete={() => onDelete(exception)}\r\n size={size}\r\n />\r\n
\r\n ))}\r\n \r\n )}\r\n
\r\n \r\n );\r\n};\r\n","import { ReactElement } from 'react';\r\nimport { ModalWindow } from 'components';\r\nimport { Bluebar } from '../Integrations/IntegrRealTime/styles';\r\nimport {\r\n DRISchedForm,\r\n DriSchedModeOpts, MIN_SETPOINT, ScheduleInfo,\r\n} from './DRI_Shedule';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { getKeyByValue } from '../Integrations/IntegrRealTime/DriContents';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall, ApiParams } from 'providers';\r\nimport moment from 'moment';\r\nimport { DevFullInfo } from 'store';\r\nimport { DriScheduleList } from './DRI_ScheduleList';\r\n\r\ntype SelectedDays = {\r\n mon?: boolean;\r\n tue?: boolean;\r\n wed?: boolean;\r\n thu?: boolean;\r\n fri?: boolean;\r\n sat?: boolean;\r\n sun?: boolean;\r\n}\r\n\r\ntype Interval = {\r\n startTime: string;\r\n endTime: string\r\n}\r\n\r\nexport interface DriSchedule {\r\n SCHED_ID: number;\r\n DRI_ID: string;\r\n NAME: string;\r\n ACTIVE: string;\r\n OPERATION: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n MODE: string;\r\n DAYS: string;\r\n SETPOINT: number;\r\n EXCEPTION_DATE: string;\r\n EXCEPTION_REPEAT_YEARLY: string;\r\n}\r\n\r\nexport interface DriException {\r\n SCHED_ID: number;\r\n DRI_ID: string;\r\n NAME: string;\r\n ACTIVE: string;\r\n OPERATION: string;\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n MODE: string;\r\n DAYS: string;\r\n SETPOINT: number;\r\n EXCEPTION_DATE: string;\r\n EXCEPTION_REPEAT_YEARLY: string;\r\n}\r\n\r\ninterface ModalEditSchedule {\r\n schedId: number | undefined;\r\n addEdit: 'Add' | 'Edit';\r\n name: string;\r\n active: boolean;\r\n operation: boolean;\r\n start_time: string;\r\n start_time_error: string;\r\n end_time: string;\r\n end_time_error: string;\r\n selectedDays: SelectedDays;\r\n isException: boolean;\r\n exceptionDate: string;\r\n repeatYearly: boolean;\r\n useSetpoint: boolean;\r\n setpointValue: string;\r\n useMode: boolean;\r\n mode: number | undefined;\r\n}\r\n\r\ninterface DriScheduleEditModalProps {\r\n onClose: () => void;\r\n open: boolean;\r\n isException: boolean;\r\n devInfo: DevFullInfo;\r\n validateSchedule: () => boolean;\r\n modalEditSchedule?: ModalEditSchedule;\r\n refetch: () => void;\r\n}\r\n\r\ninterface DriScheduleContentProps {\r\n schedules: DriSchedule[];\r\n exceptions: DriException[];\r\n devInfo: DevFullInfo;\r\n refetch: () => void;\r\n fixedContent?: boolean;\r\n hideAddButton?: boolean;\r\n}\r\n\r\nfunction checkExceptionDate(\r\n exceptionToCompare: DriException,\r\n exception: Pick,\r\n): boolean {\r\n if (exceptionToCompare.EXCEPTION_REPEAT_YEARLY === '1' || exception.EXCEPTION_REPEAT_YEARLY === '1') {\r\n return exceptionToCompare.EXCEPTION_DATE.slice(0, 5) === exception.EXCEPTION_DATE.slice(0, 5);\r\n }\r\n return exceptionToCompare.EXCEPTION_DATE === exception.EXCEPTION_DATE;\r\n}\r\n\r\nfunction checkWeekDayCommon(days1: SelectedDays, days2: SelectedDays): boolean {\r\n let result = days1.mon && days2.mon;\r\n result = result || (days1.tue && days2.tue);\r\n result = result || (days1.wed && days2.wed);\r\n result = result || (days1.thu && days2.thu);\r\n result = result || (days1.fri && days2.fri);\r\n result = result || (days1.sat && days2.sat);\r\n result = result || (days1.sun && days2.sun);\r\n\r\n return !!result;\r\n}\r\n\r\nfunction checkTimeConflict(intervalToCompare: Interval, interval: Interval) {\r\n return (intervalToCompare.startTime <= interval.startTime && interval.startTime <= intervalToCompare.endTime)\r\n || (interval.startTime <= intervalToCompare.startTime && intervalToCompare.startTime <= interval.endTime)\r\n || (intervalToCompare.startTime <= interval.startTime && interval.endTime <= intervalToCompare.endTime)\r\n || (interval.startTime <= intervalToCompare.startTime && intervalToCompare.endTime <= interval.endTime);\r\n}\r\n\r\nexport const EditScheduleModal = ({\r\n onClose,\r\n open,\r\n isException,\r\n modalEditSchedule,\r\n validateSchedule,\r\n devInfo,\r\n refetch,\r\n}: DriScheduleEditModalProps): ReactElement | null => {\r\n const { t } = useTranslation();\r\n\r\n function generateAddDriScheduleInput(): ApiParams['/dri/add-dri-sched'] | undefined {\r\n if (!modalEditSchedule) return;\r\n\r\n return {\r\n DRI_ID: devInfo.DEV_ID,\r\n NAME: modalEditSchedule.name,\r\n ACTIVE: modalEditSchedule.active ? '1' : '0',\r\n OPERATION: modalEditSchedule.operation ? '1' : '0',\r\n BEGIN_TIME: modalEditSchedule.start_time,\r\n END_TIME: modalEditSchedule.end_time,\r\n MODE: (modalEditSchedule.mode !== undefined) && DriSchedModeOpts[modalEditSchedule.mode] || undefined,\r\n DAYS: JSON.stringify(modalEditSchedule.selectedDays),\r\n SETPOINT: (modalEditSchedule.useSetpoint && Number(modalEditSchedule.setpointValue)) || undefined,\r\n EXCEPTION_DATE: (modalEditSchedule.isException && moment(modalEditSchedule.exceptionDate, 'DD/MM/YYYY').format('YYYY-MM-DD')) || undefined,\r\n EXCEPTION_REPEAT_YEARLY: (modalEditSchedule.isException && (modalEditSchedule.repeatYearly ? '1' : '0')) || undefined,\r\n };\r\n }\r\n\r\n function generateUpdateDriScheduleInput(): ApiParams['/dri/update-dri-sched'] | undefined {\r\n if (!modalEditSchedule?.schedId) return;\r\n\r\n return {\r\n SCHED_ID: modalEditSchedule.schedId,\r\n DRI_ID: devInfo.DEV_ID,\r\n NAME: modalEditSchedule.name,\r\n ACTIVE: (modalEditSchedule && modalEditSchedule.active ? '1' : '0') || undefined,\r\n OPERATION: (modalEditSchedule && modalEditSchedule.operation ? '1' : '0') || undefined,\r\n BEGIN_TIME: (modalEditSchedule && modalEditSchedule.start_time) || undefined,\r\n END_TIME: (modalEditSchedule && modalEditSchedule.end_time) || undefined,\r\n MODE: (modalEditSchedule.mode !== undefined && DriSchedModeOpts[modalEditSchedule.mode]) || undefined,\r\n DAYS: JSON.stringify(modalEditSchedule.selectedDays) || undefined,\r\n SETPOINT: modalEditSchedule.useSetpoint ? Number(modalEditSchedule.setpointValue) : undefined,\r\n EXCEPTION_DATE: (modalEditSchedule.isException && moment(modalEditSchedule.exceptionDate, 'DD/MM/YYYY').format('YYYY-MM-DD')) || undefined,\r\n EXCEPTION_REPEAT_YEARLY: (modalEditSchedule.isException && (modalEditSchedule.repeatYearly ? '1' : '0')) || undefined,\r\n };\r\n }\r\n\r\n async function saveNewProgramming() {\r\n try {\r\n if (!modalEditSchedule) return;\r\n if (!devInfo?.GROUP_ID) {\r\n toast.warn(t('necessarioMaquinaAutomatizada'));\r\n return;\r\n }\r\n\r\n if (modalEditSchedule.name === '') return toast.error(t('erroDigiteNomeProgramacao'));\r\n if (!isException && modalEditSchedule.selectedDays && Object.values(modalEditSchedule.selectedDays).every((item) => item === false)) {\r\n return toast.error(t('erroSelecionePeloMenosUmDia'));\r\n }\r\n if (isException && (modalEditSchedule.exceptionDate.length !== 10 || modalEditSchedule.exceptionDate.includes('_'))) {\r\n return toast.error(t('erroDataExcecaoObrigatoria'));\r\n }\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(modalEditSchedule.start_time)) return toast.error(t('erroHorarioInvalido'));\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(modalEditSchedule.end_time)) return toast.error(t('erroHorarioInvalido'));\r\n\r\n if (!validateSchedule()) { return; }\r\n\r\n if (modalEditSchedule.addEdit === 'Add') {\r\n await apiCall('/dri/add-dri-sched', generateAddDriScheduleInput());\r\n } else if (modalEditSchedule.addEdit === 'Edit' && modalEditSchedule.schedId) {\r\n await apiCall('/dri/update-dri-sched', generateUpdateDriScheduleInput());\r\n }\r\n\r\n refetch();\r\n\r\n toast.success(t('sucessoAdicionarProgramacao'));\r\n onClose();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n return open && devInfo.dri ? (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n ) : null;\r\n};\r\n\r\nexport const DriScheduleContent = ({\r\n devInfo,\r\n exceptions,\r\n schedules,\r\n refetch,\r\n hideAddButton = false,\r\n fixedContent = false,\r\n}: DriScheduleContentProps): ReactElement => {\r\n const { t } = useTranslation();\r\n\r\n const [state, render, setState] = useStateVar({\r\n showExceptions: false,\r\n modalEditSchedule: null as null | {\r\n schedId: number | undefined;\r\n addEdit: 'Add' | 'Edit';\r\n name: string;\r\n active: boolean;\r\n operation: boolean;\r\n start_time: string;\r\n start_time_error: string;\r\n end_time: string;\r\n end_time_error: string;\r\n selectedDays: SelectedDays;\r\n isException: boolean;\r\n exceptionDate: string;\r\n repeatYearly: boolean;\r\n useSetpoint: boolean;\r\n setpointValue: string;\r\n useMode: boolean;\r\n mode: number | undefined;\r\n },\r\n });\r\n\r\n function generateDaysObject(days): SelectedDays {\r\n return {\r\n mon: days ? days.mon : false,\r\n tue: days ? days.tue : false,\r\n wed: days ? days.wed : false,\r\n thu: days ? days.thu : false,\r\n fri: days ? days.fri : false,\r\n sat: days ? days.sat : false,\r\n sun: days ? days.sun : false,\r\n };\r\n }\r\n\r\n function getSchedTimesValues(item?: ScheduleInfo) {\r\n return {\r\n start_time: item ? item.BEGIN_TIME : '',\r\n start_time_error: '',\r\n end_time: item ? item.END_TIME : '',\r\n end_time_error: '',\r\n };\r\n }\r\n\r\n function getSchedExceptionValues(item?: ScheduleInfo) {\r\n return {\r\n isException: state.showExceptions,\r\n exceptionDate: (item && item.EXCEPTION_DATE) || '',\r\n repeatYearly: !!(item && item.EXCEPTION_REPEAT_YEARLY === '1'),\r\n };\r\n }\r\n\r\n function getSchedSetpointValues(item?: ScheduleInfo) {\r\n return {\r\n useSetpoint: !!item && item.SETPOINT != null && Number(getKeyByValue(DriSchedModeOpts, item.MODE)) !== 1,\r\n setpointValue: item && item.SETPOINT != null\r\n ? String(item.SETPOINT)\r\n : '24',\r\n };\r\n }\r\n\r\n function getSchedModeValues(item?: ScheduleInfo) {\r\n return {\r\n useMode: item ? item.MODE != null : false,\r\n mode: item\r\n ? Number(getKeyByValue(DriSchedModeOpts, item.MODE))\r\n : undefined,\r\n };\r\n }\r\n\r\n function editAddProgramming(item?: ScheduleInfo) {\r\n try {\r\n const days = item && JSON.parse(item.DAYS);\r\n state.modalEditSchedule = {\r\n schedId: item && item.SCHED_ID,\r\n addEdit: item ? 'Edit' : 'Add',\r\n name: (item && item.NAME) || '',\r\n active: (item ? item.ACTIVE === '1' : true),\r\n operation: !!(item && item.OPERATION === '1'),\r\n ...getSchedTimesValues(item),\r\n selectedDays: !state.showExceptions ? generateDaysObject(days) : {},\r\n ...getSchedExceptionValues(item),\r\n ...getSchedSetpointValues(item),\r\n ...getSchedModeValues(item),\r\n };\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n async function deleteProgramming(sched) {\r\n try {\r\n const { SCHED_ID, DRI_ID } = sched;\r\n await apiCall('/dri/delete-dri-sched', { SCHED_ID, DRI_ID });\r\n refetch();\r\n render();\r\n toast.success(t('sucessoRemoverProgramacao'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n function validateException(): boolean {\r\n if (!state.modalEditSchedule) {\r\n return false;\r\n }\r\n\r\n for (const exception of exceptions) {\r\n if (exception.ACTIVE === '0') { continue; }\r\n if (state.modalEditSchedule.schedId && state.modalEditSchedule.schedId === exception.SCHED_ID) { continue; }\r\n if (!checkExceptionDate(exception, {\r\n EXCEPTION_DATE: state.modalEditSchedule.exceptionDate,\r\n EXCEPTION_REPEAT_YEARLY: state.modalEditSchedule.repeatYearly ? '1' : '0',\r\n })) { continue; }\r\n if (checkTimeConflict({\r\n startTime: exception.BEGIN_TIME,\r\n endTime: exception.END_TIME,\r\n }, {\r\n startTime: state.modalEditSchedule.start_time,\r\n endTime: state.modalEditSchedule.end_time,\r\n })) {\r\n const msgError = t('erroSalvarExcecoes', {\r\n value1: exception.NAME,\r\n value2: state.modalEditSchedule.name,\r\n });\r\n toast.error(msgError);\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n function validateSchedule(): boolean {\r\n if (!state.modalEditSchedule) {\r\n return false;\r\n }\r\n\r\n const {\r\n selectedDays, start_time, end_time, name,\r\n } = state.modalEditSchedule;\r\n for (const schedule of schedules) {\r\n if (!schedule.ACTIVE) { continue; }\r\n if (state.modalEditSchedule.schedId && state.modalEditSchedule.schedId === schedule.SCHED_ID) { continue; }\r\n if (!checkWeekDayCommon(JSON.parse(schedule.DAYS), selectedDays)) { continue; }\r\n if (checkTimeConflict(\r\n { startTime: schedule.BEGIN_TIME, endTime: schedule.END_TIME },\r\n { startTime: start_time, endTime: end_time },\r\n )\r\n ) {\r\n const msgError = t('erroSalvarProgramacoesHorarias', {\r\n value1: name,\r\n value2: schedule.NAME,\r\n });\r\n toast.error(msgError);\r\n return false;\r\n }\r\n }\r\n return true;\r\n }\r\n\r\n function validateSchedules(): boolean {\r\n if (!state.modalEditSchedule) {\r\n return false;\r\n }\r\n\r\n if (!state.modalEditSchedule.active) {\r\n return true;\r\n }\r\n\r\n return state.showExceptions ? validateException() : validateSchedule();\r\n }\r\n\r\n return (\r\n <>\r\n setState({ modalEditSchedule: undefined })}\r\n open={!!state.modalEditSchedule}\r\n validateSchedule={validateSchedules}\r\n refetch={refetch}\r\n />\r\n {\r\n setState({ showExceptions: value });\r\n }}\r\n hideAddButton={hideAddButton}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport const DriScheduleModal = (props: {\r\n devInfo: DevFullInfo;\r\n schedules: DriSchedule[];\r\n exceptions: DriException[];\r\n open: boolean;\r\n refetch: () => void;\r\n onClose: () => void;\r\n hideAddButton?: boolean;\r\n}): ReactElement | null => {\r\n const {\r\n open, schedules, exceptions, onClose, devInfo, refetch, hideAddButton,\r\n } = props;\r\n\r\n return open ? (\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n ) : null;\r\n};\r\n","import { CSSProperties, ReactElement } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Flex } from 'reflexbox';\r\nimport {\r\n BadSignalIcon, GoodSignalIcon, GreatSignalIcon, NoSignalIcon, RegularSignalIcon,\r\n} from 'icons';\r\nimport { colors } from 'styles/colors';\r\nimport { IconWrapper } from '../styles';\r\n\r\ninterface RssiProperties {\r\n showLabel?: boolean;\r\n rssi?: string;\r\n style?: CSSProperties;\r\n}\r\n\r\nexport const RssiComponent = ({\r\n rssi,\r\n style,\r\n showLabel = false,\r\n}: RssiProperties): ReactElement => {\r\n const { t } = useTranslation();\r\n\r\n function rssiText() {\r\n return rssi || '-';\r\n }\r\n\r\n function formatRssiIcon(rssi: string) {\r\n switch (rssi) {\r\n case t('excelente'): return ;\r\n case t('bom'): return ;\r\n case t('regular'): return ;\r\n case t('ruim'): return ;\r\n default: return ;\r\n }\r\n }\r\n\r\n return (\r\n \r\n \r\n {t('status')}\r\n \r\n \r\n \r\n {formatRssiIcon(rssiText())}\r\n \r\n {showLabel && {rssi}}\r\n \r\n \r\n );\r\n};\r\n","export function rssiDescriptionParser(RSSI: number, status: string): string {\r\n if (RSSI < 0 && status === 'ONLINE') {\r\n if (RSSI > -50) return 'excelente';\r\n if (RSSI > -60) return 'bom';\r\n if (RSSI > -70) return 'regular';\r\n return 'ruim';\r\n }\r\n return '-';\r\n}\r\n\r\nexport function verifyAndUpdateRSSI(payload: { data: { RSSI: number | null, status: string }}): string | undefined {\r\n if (payload.data.RSSI != null) {\r\n return rssiDescriptionParser(payload.data.RSSI, payload.data.status);\r\n }\r\n}\r\n","import { useEffect, useState } from 'react';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport moment from 'moment';\r\n\r\nimport {\r\n Loader,\r\n Select,\r\n} from 'components';\r\nimport CheckboxMaterial from '@material-ui/core/Checkbox';\r\nimport { ToggleSwitchMini } from 'components/ToggleSwitch';\r\nimport {\r\n TermometerIcon,\r\n VAVOpenedIcon,\r\n VAVClosedIcon,\r\n LockOpenedIcon,\r\n LockClosedIcon,\r\n ArrowUpIconV2,\r\n ArrowDownIconV2,\r\n InfoIcon,\r\n} from '~/icons';\r\nimport { DevInfo, getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { useDebouncedRender, useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocket } from 'helpers/wsConnection';\r\nimport { colors } from 'styles/colors';\r\nimport { checkNewProtocolsValues } from 'helpers/driConfig';\r\n\r\nimport img_mode_cool from 'assets/img/cool_ico/mode_cool.svg';\r\nimport img_mode_fan from 'assets/img/cool_ico/mode_fan.svg';\r\nimport img_mode_off from 'assets/img/cool_ico/power_1_color.svg';\r\nimport { apiCall } from 'providers';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Scatter, ScatterChart,\r\n} from 'recharts';\r\nimport { t } from 'i18next';\r\nimport { Trans } from 'react-i18next';\r\nimport img_schedule from 'assets/img/cool_ico/schedule.svg';\r\n\r\nimport {\r\n Bluebar,\r\n ControlButtonIcon,\r\n ControlButton,\r\n SelectContainer,\r\n CardElev, ConteinerTitle, Content, ContentRealTime, RealTimeBox,\r\n Container,\r\n Slider,\r\n Cursor,\r\n ParamName,\r\n ParamValue,\r\n ParamTitle,\r\n SetpointButton,\r\n ModalContainerLoading,\r\n ControlButtonIconFancoil,\r\n NotyIconStyle,\r\n NotyNumCornerStyle,\r\n} from './styles';\r\nimport {\r\n driMeterApplications, driApplicationOpts, driVAVsApplications, driFancoilsApplications,\r\n} from '~/helpers/driConfigOptions';\r\nimport { DriSchedModeOpts, DRIScheduleSummary } from '../../SchedulesModals/DRI_Shedule';\r\nimport { FanOffIcon, FanOnIcon } from '~/icons/FanOnOff';\r\nimport { ValveClosedIcon, ValveOpenedIcon } from '~/icons/ValveOpenedClosed';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { DriException, DriSchedule, DriScheduleModal } from '../../SchedulesModals/DRI_ScheduleModal';\r\nimport { RssiComponent } from './components/RssiComponent';\r\nimport { verifyAndUpdateRSSI } from '~/helpers/rssi';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nconst ikron03availableErrors = {\r\n 0: t('sequenciaDeFasesIncorretaOuFaltaDeFase'),\r\n 1: t('configuracaoIncorretadeTcTpTl'),\r\n 3: t('tensaoOuCorrenteAcimaDoLimitePermitido'),\r\n 4: t('reinicializeCorretamenteSistema'),\r\n};\r\n\r\nconst multkAvailableErrors = {\r\n 0: t('TensaoMedidaSequenciaAntiHoraria'),\r\n 1: t('ErroMatematico'),\r\n 2: t('OverFlowGeracaoPulsosEnergia'),\r\n 3: t('ExcedidoLimitePermitidoTensaoCorrente'),\r\n};\r\n\r\nexport function getKeyByValue(object, value) {\r\n return Object.keys(object).find((key) => object[key] === value);\r\n}\r\n\r\nexport function convertSchedTime(value: number | null | undefined) {\r\n if (value == null) return '';\r\n return `${String(Math.floor(value / 60)).padStart(2, '0')}:${String(value % 60).padStart(2, '0')}`;\r\n}\r\n\r\nfunction formatTimeToTimeAxios(date: moment.Moment, seconds = 0, format = 'HH:mm:ss') {\r\n return moment(date)\r\n .add(seconds, 'seconds')\r\n .format(format);\r\n}\r\n\r\nfunction getMagnitudeOrder(n: number) {\r\n if (n === Infinity || n === -Infinity) {\r\n return 0;\r\n }\r\n const order = Math.floor(Math.log(Math.abs(n)) / Math.LN10 + 0.000000001);\r\n return 10 ** order;\r\n}\r\n\r\nfunction getTime(timestamp) {\r\n return new Date(timestamp).getTime() + 3 * 60 * 60 * 1000;\r\n}\r\n\r\nexport function DriRealTimeContents(props: { devId: string }): JSX.Element {\r\n // const { devId } = useParams<{ devId: string }>();\r\n let CONT_WS_REQUEST = 0;\r\n const CONT_WS_REQUEST_RENDER = 3; // quantidades de request para renderizar o grafico;\r\n const { devId } = props;\r\n const [state, render, setState] = useStateVar({\r\n isTelemetryNull: false,\r\n installationError: null as null|string,\r\n loading: true,\r\n shouldRender: true,\r\n desktopWidth: window.matchMedia('(min-width: 768px)'),\r\n telemetries: [] as {\r\n fp?: number;\r\n fp_a?: number,\r\n fp_b?: number,\r\n fp_c?: number,\r\n timestamp: string,\r\n v_avg?: number,\r\n v_a?: number,\r\n v_b?: number,\r\n v_c?: number,\r\n i_total?: number,\r\n i_a?: number,\r\n i_b?: number,\r\n i_c?: number,\r\n en_at_tri?: number,\r\n pot_at_total: number,\r\n pot_at_tri: number,\r\n pot_at_a?: number,\r\n pot_at_b?: number,\r\n pot_at_c?: number,\r\n }[], // { status }[]\r\n driInterval: null as null | number,\r\n isSendingSetpoint: 0,\r\n timerChangeSetpoint: null as null | NodeJS.Timeout,\r\n devInfo: getCachedDevInfoSync(devId),\r\n setpoint: null as null | number,\r\n vavSetpoint: null as null | number,\r\n vavTempAmb: null as null | number,\r\n vavValve: null as null | number,\r\n vavLock: null as null | number,\r\n fancoilSetpoint: null as null | number,\r\n fancoilTempAmb: null as null | number,\r\n fancoilValve: null as null | number,\r\n fancoilFan: null as null | number,\r\n activeOperationMode: 0,\r\n activeFancoilOperationMode: null as null | number,\r\n driApplication: '',\r\n activeMachineStatus: 0,\r\n floatingControlMode: null as null | {\r\n x: number\r\n y: number\r\n },\r\n floatingControlFan: null as null | {\r\n x: number\r\n y: number\r\n },\r\n floatingControlSwing: null as null | {\r\n x: number\r\n y: number\r\n },\r\n showCurves: {\r\n totalOrMedium: true,\r\n phaseA: true,\r\n phaseB: true,\r\n phaseC: true,\r\n },\r\n sendingNewFancoilMode: false,\r\n RSSI: '',\r\n timezoneOffset: 0,\r\n oldDate: false as boolean,\r\n });\r\n\r\n const [driState, , setDriState] = useStateVar({\r\n schedules: [] as DriSchedule[],\r\n exceptions: [] as DriException[],\r\n totalSchedules: 0,\r\n showScheduleModal: false,\r\n });\r\n\r\n const [energyState, , setEnergyState] = useStateVar({\r\n initialTimeRef: new Date().toISOString().substr(0, 19),\r\n tab: { label: t('tensao'), value: 'voltage' },\r\n });\r\n\r\n const [windowSize, setWindowSize] = useState([\r\n window.innerWidth,\r\n window.innerHeight,\r\n ]);\r\n\r\n const debouncedRender = useDebouncedRender(render);\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'driSubscribeRealTime', data: { DRI_ID: devId } });\r\n }\r\n function onWsMessage(response) {\r\n if (response && response.type === 'driTelemetry') {\r\n verifyDriTypeToFormatPower(response, state.driApplication);\r\n addEnergyParams(response);\r\n if (response.data.timestamp) {\r\n const data = moment(response.data.timestamp);\r\n checkLastTimeStamp(response.data.timestamp);\r\n response.data.timestamp = data.format('YYYY-MM-DDTHH:mm:ss');\r\n state.telemetries.push(response.data);\r\n }\r\n if (state.telemetries.length > 6) state.telemetries.shift();\r\n if (!state.isSendingSetpoint) state.setpoint = (response.data.Temp != null) ? response.data.Temp : 24;\r\n if (state.devInfo?.dri && getKeyByValue(driFancoilsApplications, state.devInfo?.dri.varsCfg?.application)) {\r\n if (response.data.ThermOn === 0) {\r\n state.activeFancoilOperationMode = 2;\r\n } else {\r\n state.activeFancoilOperationMode = response.data.Mode === 0 ? 0 : 1;\r\n }\r\n }\r\n state.activeOperationMode = Number(getKeyByValue(DriSchedModeOpts, response.data.Mode)) || 0;\r\n state.activeMachineStatus = response.data.MachineStatus || 0;\r\n state.installationError = convertErrorTelemetry(response.data.erro, state.driApplication);\r\n state.isTelemetryNull = response.data.timestamp && response.data.erro === 256;\r\n render();\r\n\r\n state.vavTempAmb = response.data.TempAmb;\r\n state.vavValve = response.data.ValveOn;\r\n state.vavLock = response.data.Lock;\r\n\r\n state.fancoilTempAmb = response.data.TempAmb;\r\n state.fancoilValve = response.data.ValveOn;\r\n state.fancoilFan = response.data.FanStatus;\r\n updateRssi(response);\r\n if (!state.isSendingSetpoint) state.fancoilSetpoint = response.data.Setpoint;\r\n if (!state.isSendingSetpoint) state.vavSetpoint = response.data.Setpoint;\r\n\r\n if (CONT_WS_REQUEST < CONT_WS_REQUEST_RENDER) { CONT_WS_REQUEST++; }\r\n if (CONT_WS_REQUEST === CONT_WS_REQUEST_RENDER) { setState({ loading: false }); }\r\n debouncedRender();\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'driUnsubscribeRealTime' });\r\n if (state.driInterval) updateTimeReceiveTelemetries(devId, state.driInterval);\r\n }\r\n\r\n function verifyMeterIsSchneiderPm210() {\r\n return state.driApplication === 'schneider-electric-pm210';\r\n }\r\n\r\n function addEnergyParams(response) {\r\n response.data.v_avg = ([response.data.v_a, response.data.v_b, response.data.v_c].reduce((acc, value) => acc += (value || 0), 0) / 3) || 0;\r\n response.data.i_total = [response.data.i_a, response.data.i_b, response.data.i_c].reduce((acc, value) => acc += (value || 0), 0) || 0;\r\n if (verifyMeterIsSchneiderPm210()) {\r\n response.data.pot_at_total = response.data.pot_at_tri;\r\n } else {\r\n response.data.pot_at_total = [response.data.pot_at_a, response.data.pot_at_b, response.data.pot_at_c].reduce((acc, value) => acc += (value || 0), 0) || 0;\r\n }\r\n }\r\n\r\n function verifyDriTypeToFormatPower(response, applicationDri) {\r\n if (applicationDri === 'kron-ikron-03') {\r\n response.data.pot_at_a = formatPowerAux(response.data.pot_at_a);\r\n response.data.pot_at_b = formatPowerAux(response.data.pot_at_b);\r\n response.data.pot_at_c = formatPowerAux(response.data.pot_at_c);\r\n }\r\n }\r\n\r\n function formatPowerAux(power) {\r\n return power > 0 ? power / 1000 : 0;\r\n }\r\n\r\n async function getTimezoneOffset() {\r\n try {\r\n await apiCall('/get-timezone-offset-by-devId', { devId }).then((tzOffset) => {\r\n if (tzOffset != null) state.timezoneOffset = tzOffset;\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroObterFusoHorario'));\r\n }\r\n }\r\n\r\n async function sendDriSetpoint(newSetpoint) {\r\n try {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'setpoint',\r\n VALUE: newSetpoint,\r\n });\r\n setTimeout(() => {\r\n state.isSendingSetpoint = 0;\r\n toast.success(t('sucessoEnviarSetpoint'));\r\n }, 5000);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroEstabelecerSetpoint'));\r\n }\r\n }\r\n\r\n async function updateTimeReceiveTelemetries(DRI_ID: string, interval: number) {\r\n try {\r\n await apiCall('/dri/update-time-send-config', {\r\n DRI_ID,\r\n VALUE: interval,\r\n });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroAtualizarTempoReceberTelemetrias'));\r\n }\r\n }\r\n\r\n async function sendOnOffCommand(command) {\r\n try {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'on/off',\r\n VALUE: command,\r\n });\r\n toast.success(\r\n
\r\n {command === 'ON' ? t('ligar') : t('desligar')}\r\n {t('sucessoComandoEnviado')}\r\n
,\r\n );\r\n return true;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroComandoLigarDesligar'));\r\n return false;\r\n }\r\n }\r\n\r\n function changeVAVSetpoint(newSetpoint: number) {\r\n if (state.timerChangeSetpoint) clearTimeout(state.timerChangeSetpoint);\r\n if (state.vavSetpoint && newSetpoint >= 15 && newSetpoint <= 30) {\r\n if (!state.isSendingSetpoint) state.isSendingSetpoint = 1;\r\n state.vavSetpoint = newSetpoint;\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(newSetpoint), 1500);\r\n render();\r\n } else {\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(state.vavSetpoint), 1500);\r\n }\r\n }\r\n\r\n function checkLastTimeStamp(lastTelemetry:string | null) {\r\n if (lastTelemetry) {\r\n const dateLastTelemetry = new Date(lastTelemetry);\r\n const dateCurrent = new Date();\r\n const dateMil = dateCurrent.getTime() - dateLastTelemetry.getTime();\r\n const dateDays = dateMil / (1000 * 60 * 60 * 24);\r\n\r\n if (dateDays > 7) {\r\n state.oldDate = true;\r\n } else {\r\n state.oldDate = false;\r\n }\r\n }\r\n }\r\n\r\n async function changeVAVLock(command) {\r\n try {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'lock',\r\n VALUE: command,\r\n });\r\n toast.success(\r\n
\r\n {command === 0 ? t('liberadoMin') : t('travado')}\r\n {t('sucessoComandoEnviado')}\r\n
,\r\n );\r\n return true;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroComandoLiberarTravar'));\r\n return false;\r\n }\r\n }\r\n\r\n function changeFancoilSetpoint(newSetpoint: number) {\r\n if (state.timerChangeSetpoint) clearTimeout(state.timerChangeSetpoint);\r\n if (state.fancoilSetpoint && newSetpoint >= 15 && newSetpoint <= 30) {\r\n if (!state.isSendingSetpoint) state.isSendingSetpoint = 1;\r\n state.fancoilSetpoint = newSetpoint;\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(newSetpoint), 1500);\r\n render();\r\n } else {\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(state.fancoilSetpoint), 1500);\r\n }\r\n }\r\n\r\n function changeSetpoint(newSetpoint: number) {\r\n if (state.timerChangeSetpoint) clearTimeout(state.timerChangeSetpoint);\r\n if (state.setpoint) {\r\n if (newSetpoint >= 17 && newSetpoint <= 25) {\r\n if (!state.isSendingSetpoint) state.isSendingSetpoint = 1;\r\n state.setpoint = newSetpoint;\r\n render();\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(newSetpoint), 1500);\r\n }\r\n if (newSetpoint > 25 && newSetpoint < state.setpoint) {\r\n if (!state.isSendingSetpoint) state.isSendingSetpoint = 1;\r\n state.setpoint = 25;\r\n render();\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(25), 1500);\r\n }\r\n if (newSetpoint < 17 && newSetpoint > state.setpoint) {\r\n if (!state.isSendingSetpoint) state.isSendingSetpoint = 1;\r\n state.setpoint = 17;\r\n render();\r\n state.timerChangeSetpoint = setTimeout(() => sendDriSetpoint(17), 1500);\r\n }\r\n }\r\n }\r\n\r\n function getOperationModeIcon(operationMode: number) {\r\n // operationModes: {\"0\":\"COOL\",\"1\":\"FAN\"},\r\n switch (operationMode) {\r\n case 0: return img_mode_cool;\r\n case 1: return img_mode_fan;\r\n }\r\n }\r\n\r\n function getFancoilOperationModeIcon(operationMode: number | null) {\r\n if (operationMode === null) return undefined;\r\n switch (operationMode) {\r\n case 0: return img_mode_cool;\r\n case 1: return img_mode_fan;\r\n case 2: return img_mode_off;\r\n }\r\n }\r\n\r\n function getFancoilOperationModeLabel(operationMode: number | null) {\r\n if (operationMode === null) return '';\r\n switch (operationMode) {\r\n case 0: return t('refrigerar');\r\n case 1: return t('ventilar');\r\n case 2: return t('desligar');\r\n }\r\n }\r\n\r\n function onClickMode(event) {\r\n if (state.sendingNewFancoilMode) return;\r\n if (state.devInfo.dri && getKeyByValue(driFancoilsApplications, state.devInfo.dri.varsCfg?.application)) {\r\n window.scrollBy(0, 200);\r\n render();\r\n }\r\n if (state.floatingControlMode) {\r\n state.floatingControlMode = null;\r\n } else {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'div') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n state.floatingControlMode = null;\r\n state.floatingControlFan = null;\r\n state.floatingControlSwing = null;\r\n state.floatingControlMode = {\r\n x: rect.x, // event.target.offsetLeft, // event.clientX\r\n y: state.devInfo.dri && getKeyByValue(driFancoilsApplications, state.devInfo.dri.varsCfg?.application) ? rect.y + 1 * 43 : rect.y + 1 * 71, // event.target.offsetTop, // event.clientY\r\n };\r\n }\r\n render();\r\n }\r\n\r\n async function setOperationMode(operationMode: number) {\r\n try {\r\n state.activeOperationMode = operationMode;\r\n const command = DriSchedModeOpts[operationMode];\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'mode',\r\n VALUE: command,\r\n });\r\n toast.success(t('sucessoModoOperacaoEnviado'));\r\n setState({ floatingControlMode: null, floatingControlFan: null, floatingControlSwing: null });\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }\r\n\r\n async function setFancoilOperationMode(operationMode: number) {\r\n try {\r\n state.activeFancoilOperationMode = operationMode;\r\n setState({\r\n floatingControlMode: null, floatingControlFan: null, floatingControlSwing: null,\r\n });\r\n render();\r\n toast.success(t('iniciandoTrocaDeModoDeOperacao'));\r\n\r\n if (operationMode === 0) {\r\n setTimeout(async () => {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'therm',\r\n VALUE: '1',\r\n });\r\n setTimeout(async () => {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'mode',\r\n VALUE: '0',\r\n });\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'fanspeed',\r\n VALUE: '1',\r\n });\r\n if (state.fancoilSetpoint) {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'setpoint',\r\n VALUE: state.fancoilSetpoint.toString(),\r\n });\r\n }\r\n toast.success(t('sucessoModoOperacaoEnviado'));\r\n state.sendingNewFancoilMode = false;\r\n }, 8000);\r\n }, 5000);\r\n } else if (operationMode === 1) {\r\n setTimeout(async () => {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'therm',\r\n VALUE: '1',\r\n });\r\n setTimeout(async () => {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'mode',\r\n VALUE: '2',\r\n });\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'fanspeed',\r\n VALUE: '1',\r\n });\r\n state.sendingNewFancoilMode = false;\r\n toast.success(t('sucessoModoOperacaoEnviado'));\r\n }, 8000);\r\n }, 5000);\r\n } else {\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'therm',\r\n VALUE: '0',\r\n });\r\n await apiCall('/dri/send-dri-command', {\r\n DRI_ID: state.devInfo.DEV_ID,\r\n TYPE: 'mode',\r\n VALUE: '2',\r\n });\r\n setTimeout(() => { state.sendingNewFancoilMode = false; }, 2000);\r\n toast.success(t('sucessoModoOperacaoEnviado'));\r\n }\r\n render();\r\n } catch (err) { console.log(err); state.sendingNewFancoilMode = false; toast.error(t('erro')); }\r\n }\r\n\r\n function CustomTickTime(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n const shiftedTime = payload.value - 3 * 60 * 60 * 1000;\r\n return (\r\n \r\n \r\n {(shiftedTime > 1000000)\r\n ? new Date(shiftedTime).toLocaleTimeString()\r\n : formatTimeToTimeAxios(moment(energyState.initialTimeRef), shiftedTime)}\r\n \r\n \r\n );\r\n }\r\n\r\n function getDialColor({ temp }) {\r\n if (state.devInfo.status !== 'ONLINE') return colors.LightGrey_v3;\r\n if (temp != null && Number.isFinite(Number(temp))) {\r\n return (\r\n state.devInfo.dri?.vavCfg?.TUSEMAX && temp > state.devInfo.dri?.vavCfg?.TUSEMAX && colors.Red\r\n || state.devInfo.dri?.vavCfg?.TUSEMIN && temp < state.devInfo.dri?.vavCfg?.TUSEMIN && colors.BlueSecondary_v3\r\n || colors.GreenLight\r\n );\r\n }\r\n return colors.GreenLight;\r\n }\r\n\r\n const updateRssi = (payload) => {\r\n const rssi = verifyAndUpdateRSSI(payload);\r\n if (rssi) {\r\n state.RSSI = t(rssi, { defaultValue: '-' });\r\n render();\r\n }\r\n };\r\n\r\n function isDRIFancoil(devInfo: DevInfo): boolean {\r\n return !!(devInfo.dri && getKeyByValue(driFancoilsApplications, devInfo.dri.varsCfg?.application));\r\n }\r\n\r\n function isDRIVav(devInfo: DevInfo): boolean {\r\n return !!(devInfo.dri && getKeyByValue(driVAVsApplications, devInfo.dri.varsCfg?.application));\r\n }\r\n\r\n async function callDriSchedules(devId: string): Promise {\r\n try {\r\n const { list: schedulesList } = await apiCall('/dri/get-dri-scheds', { DRI_ID: devId });\r\n const schedules: DriSchedule[] = [];\r\n const exceptions: DriException[] = [];\r\n\r\n for (const sched of schedulesList) {\r\n if (sched.EXCEPTION_DATE) {\r\n exceptions.push(sched);\r\n } else {\r\n schedules.push(sched);\r\n }\r\n }\r\n\r\n setDriState({\r\n exceptions,\r\n schedules,\r\n totalSchedules: schedules.length,\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n toast.error(t('naoFoiPossivelBuscarProgramacoesExcecoesDRI'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (state.shouldRender) {\r\n Promise.resolve().then(async () => {\r\n try {\r\n setState({ loading: true });\r\n // @ts-ignore\r\n const devInfo = await getCachedDevInfo(devId, {});\r\n\r\n if (isDRIFancoil(devInfo) || isDRIVav(devInfo)) {\r\n await callDriSchedules(devId);\r\n }\r\n // if (onDevInfoUpdate) onDevInfoUpdate();\r\n\r\n await getTimezoneOffset();\r\n setState({ driApplication: devInfo.dri.varsCfg?.application, devInfo });\r\n render();\r\n state.driInterval = devInfo.dri.varsCfg?.driConfigs.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'interval'))?.value;\r\n if (state.driInterval) updateTimeReceiveTelemetries(devId, 2);\r\n } catch (err) { toast.error(t('erro')); console.error(err);\r\n setState({ loading: false }); }\r\n });\r\n }\r\n setState({ shouldRender: false });\r\n }, [state.shouldRender]);\r\n\r\n useEffect(() => {\r\n const handleWindowResize = () => {\r\n setWindowSize([window.innerWidth, window.innerHeight]);\r\n };\r\n\r\n window.addEventListener('resize', handleWindowResize);\r\n\r\n return () => {\r\n window.removeEventListener('resize', handleWindowResize);\r\n };\r\n }, []);\r\n\r\n if (!state.devInfo) return (
);\r\n\r\n return (\r\n <>\r\n {\r\n setDriState({\r\n showScheduleModal: false,\r\n });\r\n }}\r\n refetch={() => callDriSchedules(devId)}\r\n />\r\n \r\n {!state.oldDate && state.devInfo.status === 'ONLINE' ? (\r\n <>\r\n {state.driApplication !== 'carrier-ecosplit' && state.isTelemetryNull ? (\r\n \r\n
\r\n \r\n { state.installationError }\r\n \r\n
\r\n
\r\n ) : (\r\n \r\n \r\n \r\n

Aguarde, os dados estão

\r\n

sendo carregados.

\r\n
\r\n
\r\n )}\r\n\r\n {(state.devInfo.dri && state.devInfo.dri.varsCfg?.application === 'carrier-ecosplit') && (\r\n \r\n {(state.loading) ? \r\n : (\r\n <>\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
Setpoint
\r\n
\r\n
\r\n { if (state.devInfo.status === 'ONLINE' && state.setpoint) changeSetpoint(state.setpoint + 1); }}\r\n />\r\n { if (state.devInfo.status === 'ONLINE' && state.setpoint) changeSetpoint(state.setpoint - 1); }}\r\n />\r\n
\r\n {state.setpoint || '--'}\r\n  °C\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n {state.floatingControlMode && state.devInfo.status === 'ONLINE' && (\r\n \r\n
\r\n setOperationMode(0)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(1)}>\r\n \r\n \r\n
\r\n
\r\n )}\r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
{t('funcionamento')}
\r\n {state.devInfo.status === 'ONLINE'\r\n ? (\r\n
\r\n {t('ligadoMin')}\r\n {\r\n if (state.activeMachineStatus === 0) {\r\n const success = await sendOnOffCommand('ON');\r\n if (success) state.activeMachineStatus = 1;\r\n } else {\r\n const success = await sendOnOffCommand('OFF');\r\n if (success) state.activeMachineStatus = 0;\r\n }\r\n render();\r\n }}\r\n />\r\n {t('desligadoMin')}\r\n
\r\n )\r\n : (\r\n {t('funcoesNaoDisponiveisStatusDispositivo')}\r\n )}\r\n
\r\n\r\n
\r\n \r\n )}\r\n \r\n )}\r\n {state.devInfo.dri && getKeyByValue(driVAVsApplications, state.devInfo.dri.varsCfg?.application) && (\r\n \r\n {(state.loading) ? \r\n : (\r\n <>\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n {t('agora')}\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.vavTempAmb ?? '-')}\r\n  °C\r\n
\r\n
\r\n
\r\n\r\n
\r\n {state.devInfo.status === 'ONLINE' && (\r\n
\r\n
{t('limitesTemperatura')}
\r\n \r\n mín.\r\n {` ${formatNumberWithFractionDigits(state.devInfo.dri?.vavCfg?.TUSEMIN ?? '-')}`}\r\n °C\r\n      \r\n máx.\r\n {` ${formatNumberWithFractionDigits(state.devInfo.dri?.vavCfg?.TUSEMAX ?? '-')}`}\r\n °C\r\n \r\n
\r\n )}\r\n
\r\n\r\n \r\n {state.devInfo.status === 'ONLINE'\r\n ? (\r\n \r\n
\r\n
{t('atuadorVav')}
\r\n
\r\n \r\n {t('aberto')}\r\n \r\n \r\n \r\n \r\n {t('fechado')}\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
{t('termostato')}
\r\n
\r\n \r\n {t('liberadoMin')}\r\n \r\n \r\n {\r\n if (state.vavLock === 0) {\r\n const success = await changeVAVLock(1);\r\n if (success) state.vavLock = 1;\r\n } else {\r\n const success = await changeVAVLock(0);\r\n if (success) state.vavLock = 0;\r\n }\r\n render();\r\n }}\r\n />\r\n \r\n {t('travado')}\r\n \r\n \r\n
\r\n
\r\n
\r\n )\r\n : (\r\n {t('funcoesNaoDisponiveisStatusDispositivo')}\r\n )}\r\n\r\n {state.devInfo.status === 'ONLINE' && (\r\n
\r\n \r\n
\r\n state.vavSetpoint && state.devInfo.status === 'ONLINE' && changeVAVSetpoint(state.vavSetpoint + 0.5)}>\r\n \r\n \r\n state.vavSetpoint && state.devInfo.status === 'ONLINE' && changeVAVSetpoint(state.vavSetpoint - 0.5)}>\r\n \r\n \r\n
\r\n
\r\n
Setpoint
\r\n
{`${formatNumberWithFractionDigits(state.vavSetpoint?.toFixed(1) ?? '-')} °C`}
\r\n
\r\n \r\n
\r\n )}\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n )}\r\n \r\n )}\r\n {isDRIFancoil(state.devInfo) && (\r\n \r\n {(state.loading) ? \r\n : (\r\n
825 ? 'absolute' : undefined, justifyContent: windowSize[0] < 825 ? 'center' : undefined, marginBottom: '20px',\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n DEV ID\r\n \r\n {state.devInfo.DEV_ID}\r\n \r\n \r\n \r\n \r\n {t('ambienteRefrigerado')}\r\n \r\n \r\n \r\n {state.devInfo.dri?.fancoilCfg?.FANCOIL_ID}\r\n \r\n \r\n
\r\n )}\r\n {(state.loading) ? \r\n : (\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n {t('agora')}\r\n
\r\n
\r\n {formatNumberWithFractionDigits(state.fancoilTempAmb ?? '-')}\r\n  °C\r\n
\r\n
\r\n \r\n\r\n
\r\n {state.devInfo.status !== '' && (\r\n
\r\n
{t('limitesTemperatura')}
\r\n \r\n mín.\r\n {` ${state.devInfo.dri?.fancoilCfg?.THERM_T_MIN || state.devInfo.dri?.fancoilCfg?.TUSEMIN || '-'}`}\r\n °C\r\n      \r\n máx.\r\n {` ${state.devInfo.dri?.fancoilCfg?.THERM_T_MAX || state.devInfo.dri?.fancoilCfg?.TUSEMAX || '-'}`}\r\n °C\r\n \r\n
\r\n )}\r\n
\r\n\r\n \r\n \r\n
{t('modoDeOperacao')}
\r\n\r\n \r\n {state.activeFancoilOperationMode !== null && }\r\n \r\n {getFancoilOperationModeLabel(state.activeFancoilOperationMode)}\r\n \r\n \r\n {state.floatingControlMode && state.devInfo.status === 'ONLINE' && (\r\n \r\n
\r\n { state.sendingNewFancoilMode = true; render(); setFancoilOperationMode(0); }}>\r\n \r\n \r\n {t('refrigerar')}\r\n \r\n \r\n
\r\n
\r\n { state.sendingNewFancoilMode = true; render(); setFancoilOperationMode(1); }}>\r\n \r\n \r\n {t('ventilar')}\r\n \r\n \r\n
\r\n
\r\n { state.sendingNewFancoilMode = true; render(); setFancoilOperationMode(2); }}>\r\n \r\n \r\n {t('desligar')}\r\n \r\n \r\n
\r\n
\r\n )}\r\n
\r\n {state.devInfo.status === 'ONLINE' && (\r\n <>\r\n
\r\n \r\n
{t('setpoint')}
\r\n\r\n \r\n
\r\n state.activeFancoilOperationMode === 0 && state.fancoilSetpoint && state.devInfo.status === 'ONLINE' && changeFancoilSetpoint(state.fancoilSetpoint + 1)}>\r\n \r\n \r\n state.activeFancoilOperationMode === 0 && state.fancoilSetpoint && state.devInfo.status === 'ONLINE' && changeFancoilSetpoint(state.fancoilSetpoint - 1)}>\r\n \r\n \r\n
\r\n
\r\n
{`${state.fancoilSetpoint?.toFixed(0) || '-'} °C`}
\r\n
\r\n \r\n \r\n\r\n
\r\n
\r\n \r\n
{t('ventilador')}
\r\n\r\n \r\n \r\n \r\n {t('ligadoMin')}\r\n \r\n \r\n \r\n {t('desligadoMinusculo')}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
{t('comandoValvula')}
\r\n \r\n \r\n \r\n {t('aberta')}\r\n \r\n \r\n \r\n {t('fechada')}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
{t('programacoes')}
\r\n \r\n \r\n {driState.totalSchedules > 0 && (\r\n {driState.totalSchedules}\r\n )}\r\n {\r\n setDriState({\r\n showScheduleModal: true,\r\n });\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n )}\r\n {state.devInfo.dri && getKeyByValue(driMeterApplications, state.devInfo.dri.varsCfg?.application) && (\r\n \r\n {!state.desktopWidth.matches && (\r\n \r\n setEnergyState({ tab: e })}\r\n options={[{ label: t('tensao'), value: 'voltage' }, { label: t('corrente'), value: 'current' }, { label: t('potenciaAtiva'), value: 'active-power' }]}\r\n hideSelected\r\n value={energyState.tab}\r\n />\r\n \r\n )}\r\n {state.desktopWidth.matches\r\n && (\r\n <>\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n setEnergyState({ tab: { label: 'Tensão', value: 'voltage' } })}\r\n >\r\n {t('tensao')}\r\n \r\n \r\n setEnergyState({ tab: { label: 'Corrente', value: 'current' } })}\r\n >\r\n {t('corrente')}\r\n \r\n \r\n setEnergyState({ tab: { label: 'Potência Ativa', value: 'active-power' } })}\r\n >\r\n {t('potenciaAtiva')}\r\n \r\n \r\n
\r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n }\r\n interval={0}\r\n tickCount={7}\r\n minTickGap={-2}\r\n domain={['dataMin', 'dataMax']}\r\n />\r\n {energyState.tab.value === 'voltage' && Math.round(dataMin) - 3, (dataMax) => Math.round(dataMax) + 3]} tickCount={6} />}\r\n {energyState.tab.value === 'voltage' && state.showCurves.totalOrMedium && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.v_avg }))} fill=\"#13006A\" />}\r\n {energyState.tab.value === 'voltage' && state.showCurves.phaseA && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.v_a }))} fill=\"#4B2FDB\" />}\r\n {energyState.tab.value === 'voltage' && state.showCurves.phaseB && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.v_b }))} fill=\"#9480F9\" />}\r\n {energyState.tab.value === 'voltage' && state.showCurves.phaseC && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.v_c }))} fill=\"#D2CAF8\" />}\r\n\r\n {energyState.tab.value === 'current' && Math.round(dataMin) - 3, (dataMax) => Math.round(dataMax) + 3]} tickCount={6} />}\r\n {energyState.tab.value === 'current' && state.showCurves.totalOrMedium && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.i_total }))} fill=\"#13006A\" />}\r\n {energyState.tab.value === 'current' && state.showCurves.phaseA && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.i_a }))} fill=\"#4B2FDB\" />}\r\n {energyState.tab.value === 'current' && state.showCurves.phaseB && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.i_b }))} fill=\"#9480F9\" />}\r\n {energyState.tab.value === 'current' && state.showCurves.phaseC && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.i_c }))} fill=\"#D2CAF8\" />}\r\n\r\n {energyState.tab.value === 'active-power' && (dataMin - getMagnitudeOrder(dataMin)).toFixed(1), (dataMax) => (dataMax + getMagnitudeOrder(dataMax)).toFixed(1)]} tickCount={6} />}\r\n {energyState.tab.value === 'active-power' && state.showCurves.totalOrMedium && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.pot_at_total }))} fill=\"#13006A\" />}\r\n {energyState.tab.value === 'active-power' && !verifyMeterIsSchneiderPm210() && state.showCurves.phaseA && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.pot_at_a }))} fill=\"#4B2FDB\" />}\r\n {energyState.tab.value === 'active-power' && !verifyMeterIsSchneiderPm210() && state.showCurves.phaseB && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.pot_at_b }))} fill=\"#9480F9\" />}\r\n {energyState.tab.value === 'active-power' && !verifyMeterIsSchneiderPm210() && state.showCurves.phaseC && null} data={state.telemetries.map((tel) => ({ x: getTime(tel.timestamp), y: tel.pot_at_c }))} fill=\"#D2CAF8\" />}\r\n \r\n \r\n {!(verifyMeterIsSchneiderPm210() && energyState.tab.value === 'active-power') && (\r\n \r\n \r\n \r\n \r\n \r\n setState({\r\n showCurves: {\r\n ...state.showCurves,\r\n totalOrMedium: !state.showCurves.totalOrMedium,\r\n },\r\n })}\r\n />\r\n {energyState.tab.value === 'voltage' ? ({t('Média')}) : ({t('total')})}\r\n \r\n \r\n {energyState.tab.value === 'voltage' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_avg?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n
\r\n )}\r\n {energyState.tab.value === 'current' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_total?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n
\r\n )}\r\n {energyState.tab.value === 'active-power' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_total?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n
\r\n )}\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n setState({\r\n showCurves: {\r\n ...state.showCurves,\r\n phaseA: !state.showCurves.phaseA,\r\n },\r\n })}\r\n />\r\n {t('faseA')}\r\n \r\n \r\n {energyState.tab.value === 'voltage' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n
\r\n )}\r\n {energyState.tab.value === 'current' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n
\r\n )}\r\n {energyState.tab.value === 'active-power' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n setState({\r\n showCurves: {\r\n ...state.showCurves,\r\n phaseB: !state.showCurves.phaseB,\r\n },\r\n })}\r\n />\r\n {t('faseB')}\r\n \r\n \r\n {energyState.tab.value === 'voltage' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n
\r\n )}\r\n {energyState.tab.value === 'current' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n
\r\n )}\r\n {energyState.tab.value === 'active-power' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n
\r\n )}\r\n
\r\n
\r\n \r\n \r\n setState({\r\n showCurves: {\r\n ...state.showCurves,\r\n phaseC: !state.showCurves.phaseC,\r\n },\r\n })}\r\n />\r\n {t('faseC')}\r\n \r\n \r\n {energyState.tab.value === 'voltage' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_c?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n
\r\n )}\r\n {energyState.tab.value === 'current' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_c?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n
\r\n )}\r\n {energyState.tab.value === 'active-power' && (\r\n
\r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_c?.toFixed(2).replace('.', ',') ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n
\r\n )}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n {state.desktopWidth.matches ? (\r\n
\r\n ) : (\r\n
\r\n )}\r\n\r\n \r\n {t('parametros')}\r\n \r\n \r\n \r\n {t('tensao')}\r\n \r\n {t('faseA')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n \r\n \r\n\r\n \r\n {t('faseB')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n \r\n \r\n\r\n \r\n {t('faseC')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].v_c?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n V\r\n \r\n \r\n \r\n \r\n {t('corrente')}\r\n\r\n \r\n {t('faseA')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n \r\n \r\n\r\n \r\n {t('faseB')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n \r\n \r\n\r\n \r\n {t('faseC')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].i_c?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n A\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('potenciaAtiva')}\r\n {verifyMeterIsSchneiderPm210() ? (\r\n \r\n {t('total')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_tri?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n {t('faseA')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n \r\n \r\n\r\n \r\n {t('faseB')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n \r\n \r\n\r\n \r\n {t('faseC')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].pot_at_c?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n kW\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {t('fatorPotencia')}\r\n {verifyMeterIsSchneiderPm210() ? (\r\n \r\n {t('total')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].fp?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n \r\n \r\n ) : (\r\n <>\r\n \r\n {t('faseA')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].fp_a?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n \r\n \r\n\r\n \r\n {t('faseB')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].fp_b?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n \r\n \r\n\r\n \r\n {t('faseC')}\r\n \r\n {(state.telemetries.length > 0 ? formatNumberWithFractionDigits(state.telemetries[state.telemetries.length - 1].fp_c?.toFixed(2) ?? '-', { minimum: 0, maximum: 2 }) : '-')}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n {state.installationError && state.installationError !== t('semErro') && (\r\n \r\n {t('alertas')}\r\n \r\n {t('possivelErroNaInstalacao', {\r\n value: state.installationError,\r\n })}\r\n \r\n \r\n )}\r\n \r\n )}\r\n {state.devInfo.dri && !getKeyByValue(driMeterApplications, state.devInfo.dri.varsCfg?.application) && !getKeyByValue(driApplicationOpts, state.devInfo.dri.varsCfg?.application) && !getKeyByValue(driVAVsApplications, state.devInfo.dri.varsCfg?.application) && !isDRIFancoil(state.devInfo) && (\r\n \r\n \r\n {(state.loading) && }\r\n \r\n \r\n

Informações

\r\n
\r\n \r\n \r\n \r\n

Operation Mode

\r\n 1\r\n
\r\n \r\n

Filter Sign

\r\n 0\r\n
\r\n \r\n

Local Wall Controller

\r\n 2\r\n
\r\n
\r\n \r\n \r\n

Fan Speed

\r\n 1\r\n
\r\n \r\n

Swing

\r\n Off\r\n
\r\n
\r\n \r\n \r\n

ON/OFF

\r\n Off\r\n
\r\n \r\n

Malfunction Code

\r\n n/d\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n

Temperatura

\r\n
\r\n \r\n \r\n \r\n

Room Temperature

\r\n \r\n 35\r\n

°C

\r\n
\r\n
\r\n \r\n

Set Temperature

\r\n \r\n 5\r\n

°C

\r\n
\r\n
\r\n \r\n

Set Temp.Limites

\r\n \r\n 20 - 35\r\n

°C

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n )}\r\n \r\n ) : (\r\n \r\n {t('dispositivoOffline')}\r\n \r\n )}\r\n\r\n \r\n \r\n );\r\n}\r\n\r\nfunction Dial(props: { temperature: number | null, color?: string | null, status: string, withCommands: boolean }) {\r\n const min = 17;\r\n const max = 25;\r\n let percentage = (props.temperature == null) ? NaN : ((props.temperature - min) / (max - min));\r\n if (percentage > 1) percentage = 1;\r\n if (percentage < 0) percentage = 0;\r\n if (!Number.isFinite(percentage)) percentage = NaN;\r\n\r\n function onSvgClick(event) {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'svg') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n }\r\n\r\n return (\r\n \r\n \r\n {props.withCommands && (\r\n \r\n )}\r\n {(!Number.isNaN(percentage)) && props.withCommands && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {props.withCommands && (\r\n <>\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n}\r\n\r\nconst ToggleSwitch = ({\r\n label = undefined, checked, onOff = false, ...props\r\n}): JSX.Element => (\r\n \r\n
\r\n \r\n \r\n \r\n {label && {label}}\r\n
\r\n
\r\n);\r\n\r\nfunction convertKronErrorTelemetry(availableErrors, erro) {\r\n if (erro === 0) return t('semErro');\r\n const erroBin = erro.toString(2);\r\n const msg = [] as string[];\r\n erroBin.split('').forEach((bit, i) => {\r\n if (bit === '1') {\r\n const position = erroBin.length - i - 1;\r\n availableErrors[position] && msg.push(availableErrors[position]);\r\n }\r\n });\r\n return msg.join('; ');\r\n}\r\n\r\nconst convertErrorTelemetry = (erro: number, driApplication: string) => {\r\n if (!driApplication) return null;\r\n\r\n if (driApplication === 'kron-ikron-03') {\r\n return convertKronErrorTelemetry(ikron03availableErrors, erro);\r\n }\r\n\r\n if (driApplication === 'kron-mult-k' && erro === 16) {\r\n return t('semErro');\r\n }\r\n\r\n if (driApplication === 'kron-mult-k') {\r\n return convertKronErrorTelemetry(multkAvailableErrors, erro);\r\n }\r\n\r\n switch (erro) {\r\n case 0: return t('semErro');\r\n case 1: return t('sequenciaFaseIncorreta');\r\n case 2: return t('orientacaoTcFase1Invertida');\r\n case 4: return t('orientacaoTcFase2Invertida');\r\n case 8: return t('orientacaoTcFase3Invertida');\r\n case 16: return t('posicaoTcsFase1e2Trocadas');\r\n case 32: return t('posicaoTcsFase1e3Trocadas');\r\n case 64: return t('posicaoTcsFase2e3Trocadas');\r\n case 128: return t('nenhumaAssociacaoTcsFasesCorreta');\r\n case 256: return t('medidorEnergiaDesconectadoOuFalhaLigacoesEletricas');\r\n default: return t('semErro');\r\n }\r\n};\r\n","import styled from 'styled-components';\r\n\r\nexport const GraphContainer = styled.div`\r\n @media only screen and (max-width: 600px) {\r\n padding-left: 0px\r\n }\r\n padding-left: 100px\r\n`;\r\n\r\nexport const TitleFieldNobreak = styled.div`\r\n display: flex;\r\n flex-direction: row;\r\n padding-bottom: 33px;\r\n`;\r\n\r\nexport const TitleColumn = styled.div`\r\n display: flex;\r\n flex-direction: column;\r\n margin-left: 10px;\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport { ApiResps, apiCall } from '~/providers';\r\nimport { useWebSocketLazy } from '~/helpers/wsConnection';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Line, LineChart,\r\n} from 'recharts';\r\nimport { colors } from '~/styles/colors';\r\nimport {\r\n GraphContainer, TitleFieldNobreak, TitleColumn,\r\n} from './styles';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { NobreakIcon } from '~/icons';\r\nimport moment from 'moment';\r\nimport { StyledLink } from '../styles';\r\n\r\nexport const DmtRealTime = (props: {dmtId: string}): JSX.Element => {\r\n const { dmtId } = props;\r\n const { t } = useTranslation();\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaTempoReal')}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport function DmtRealTimeContent({ dmtId }: { dmtId: string }): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, render] = useStateVar({\r\n telemetries: [] as {pulses: number| null, status: string}[], // { status }[]\r\n graphData: [] as {x: string, value: number | null }[],\r\n lastConsumption: 0 as number,\r\n lastConsumptionCube: 0 as number,\r\n timezoneOffset: 0,\r\n electricalNetwork: {} as { port: string, id: number },\r\n nobreakList: [] as { port: string, id: number, name?: string, datId?: string}[],\r\n illuminationList: [] as { port: string, id: number, name? : string }[],\r\n F1: [] as { x: string, value: number }[],\r\n F2: [] as { x: string, value: number }[],\r\n F3: [] as { x: string, value: number }[],\r\n F4: [] as { x: string, value: number }[],\r\n portsInfo: {} as ApiResps['/dmt/get-dmt-ports-info'],\r\n initialTimeRef: new Date().toISOString().substring(0, 19),\r\n onTelmTimer: undefined as undefined|NodeJS.Timeout,\r\n hasNewTelm: false,\r\n });\r\n\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n if (dmtId) {\r\n await apiCall('/get-timezone-offset-by-devId', { devId: dmtId }).then((tzOffset) => {\r\n if (tzOffset != null) state.timezoneOffset = tzOffset;\r\n });\r\n await apiCall('/dmt/get-dmt-ports-info', { DMT_CODE: dmtId }).then((portInfo) => state.portsInfo = portInfo);\r\n if (state.portsInfo) {\r\n getPortsInfoGraph();\r\n }\r\n wsl.start(onWsOpen, onWsMessage, beforeWsClose);\r\n render();\r\n }\r\n } catch (err) {\r\n toast.error(t('erroDadosDispositivo'));\r\n console.log(err);\r\n }\r\n })();\r\n }, []);\r\n\r\n function getPortsInfoGraph() {\r\n const listNobreaks: { port: string, id: number, name?: string, datId?: string }[] = [];\r\n const listIllumination: { port: string, id: number, name?: string }[] = [];\r\n\r\n for (const port of state.portsInfo.ports) {\r\n if (port.associated && port.nobreakId) {\r\n listNobreaks.push({\r\n port: `F${port.port}`,\r\n id: port.nobreakId,\r\n name: port.name,\r\n datId: port.datId,\r\n });\r\n }\r\n if (port.associated && port.illuminationId) {\r\n listIllumination.push({\r\n port: `F${port.port}`,\r\n id: port.illuminationId,\r\n name: port.name,\r\n });\r\n }\r\n if (port.associated && port.eletricCircuitId) {\r\n state.electricalNetwork = {\r\n port: `F${port.port}`,\r\n id: port.eletricCircuitId,\r\n };\r\n }\r\n }\r\n\r\n state.nobreakList = listNobreaks;\r\n state.illuminationList = listIllumination;\r\n }\r\n\r\n const labelFormater = (value: number, isNobreak: boolean) => {\r\n if (value === 0) return t('desligado').toUpperCase();\r\n if (value === 1 && isNobreak) {\r\n return t('bateria').toUpperCase();\r\n }\r\n if (value && !isNobreak) {\r\n return t('ligado').toUpperCase();\r\n }\r\n if (value === 2 && isNobreak) return t('redeEletrica').toUpperCase();\r\n\r\n return value.toString();\r\n };\r\n\r\n const NobreakCustomTick = (props) => {\r\n const {\r\n x, y, payload, anchor, isNobreak,\r\n } = props;\r\n\r\n const label = labelFormater(payload.value, isNobreak);\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n };\r\n\r\n function getTelemetryIllumination(port: string, telemetry) {\r\n const illuminationPorts = state.illuminationList.map((x) => x.port);\r\n\r\n if (illuminationPorts.includes(port) && telemetry) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function getTelemetryValue(port: string, telemetry) {\r\n if (getTelemetryIllumination(port, telemetry[port])) return 1;\r\n if (telemetry[state.electricalNetwork.port]) return 2;\r\n if (telemetry[port]) return 1;\r\n return 0;\r\n }\r\n\r\n function processReceivedTelemetry(telemetry) {\r\n state.F1.push({ x: telemetry.timestamp, value: getTelemetryValue('F1', telemetry) });\r\n state.F2.push({ x: telemetry.timestamp, value: getTelemetryValue('F2', telemetry) });\r\n state.F3.push({ x: telemetry.timestamp, value: getTelemetryValue('F3', telemetry) });\r\n state.F4.push({ x: telemetry.timestamp, value: getTelemetryValue('F4', telemetry) });\r\n state.F1.length > 6 && state.F1.shift();\r\n state.F2.length > 6 && state.F2.shift();\r\n state.F3.length > 6 && state.F3.shift();\r\n state.F4.length > 6 && state.F4.shift();\r\n }\r\n\r\n const wsl = useWebSocketLazy();\r\n\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'dmtSubscribeRealTime', data: { DMT_CODE: dmtId } });\r\n }\r\n\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dmtTelemetry') {\r\n const data = moment(new Date(response.data.timestamp || response.data.deviceTimestamp));\r\n response.data.timestamp = data.format('YYYY-MM-DDTHH:mm:ss').split('T')[1];\r\n processReceivedTelemetry(response.data);\r\n render();\r\n }\r\n }\r\n\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'dmtUnsubscribeRealTime' });\r\n }\r\n\r\n if (state[state.electricalNetwork.port]) {\r\n state[state.electricalNetwork.port].forEach((data) => {\r\n if (data.value > 1) data.value = 1;\r\n });\r\n }\r\n\r\n return (\r\n <>\r\n \r\n \r\n \r\n {\r\n state[state.electricalNetwork.port] && (\r\n \r\n \r\n \r\n

\r\n Monitoramento Rede Elétrica\r\n

\r\n

\r\n Status da Rede Elétrica\r\n

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n }\r\n ticks={[0, 1]}\r\n interval={0}\r\n domain={[0, 1]}\r\n />\r\n \r\n \r\n \r\n
\r\n )\r\n }\r\n \r\n \r\n

\r\n Portas do DMT\r\n

\r\n

\r\n Status de portas associadas\r\n

\r\n
\r\n
\r\n { state.nobreakList.length > 0 && state.nobreakList.map(((nobreak, key) => (\r\n \r\n ))) }\r\n { state.illuminationList.length > 0 && state.illuminationList.map((illumination, key) => (\r\n \r\n )) }\r\n
\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nfunction IlluminationGraph({ name, data, t }: { name?: string, data, t}) {\r\n return (\r\n \r\n \r\n \r\n \r\n

\r\n { name }\r\n

\r\n
\r\n
\r\n

\r\n Feedback\r\n

\r\n \r\n
\r\n );\r\n}\r\n\r\nconst labelFormater = (value: number, isNobreak: boolean, t) => {\r\n if (value === 0) return t('desligado').toUpperCase();\r\n if (value === 1 && isNobreak) {\r\n return t('bateria').toUpperCase();\r\n }\r\n if (value && !isNobreak) {\r\n return t('ligado').toUpperCase();\r\n }\r\n\r\n if (value === 2 && isNobreak) return t('redeEletrica').toUpperCase();\r\n\r\n return value.toString();\r\n};\r\n\r\nconst NobreakCustomTick = (props) => {\r\n const {\r\n x, y, payload, anchor, isNobreak, t,\r\n } = props;\r\n\r\n const label = labelFormater(payload.value, isNobreak, t);\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n};\r\n\r\nfunction NobreakGraph({\r\n name, datId, data, t,\r\n}: { name?: string, datId?: string, data, t }) {\r\n return (\r\n \r\n \r\n \r\n \r\n

\r\n { name || '-' }\r\n

\r\n

\r\n {datId || ''}\r\n

\r\n
\r\n
\r\n \r\n
\r\n );\r\n}\r\n\r\nfunction GraphContainerAll({\r\n data, isNobreak, domain, ticks, t,\r\n}) {\r\n return (\r\n \r\n { data.length && (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n ticks={ticks}\r\n interval={0}\r\n domain={domain}\r\n />\r\n \r\n \r\n ) }\r\n\r\n \r\n );\r\n}\r\n","import { useEffect } from 'react';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport moment from 'moment';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useParams, Link } from 'react-router-dom';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { UtilityIcon } from '~/icons';\r\nimport {\r\n ResponsiveContainer, CartesianGrid, XAxis, YAxis, Scatter, ScatterChart,\r\n} from 'recharts';\r\nimport { useWebSocketLazy } from '~/helpers/wsConnection';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '~/providers';\r\nimport { InfoGraphCont } from './styles';\r\n\r\nconst TSPAN = 5 * 60 * 1000;\r\nconst ONLINE_TIMEOUT = 50 * 1000;\r\n\r\nfunction CustomTickFeedback(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n\r\n let label = payload.value;\r\n if (payload.value) {\r\n label = 'LIGADO';\r\n } else {\r\n label = 'DESLIGADO';\r\n }\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n \r\n );\r\n}\r\n\r\nfunction formatTimeToTimeAxios(date: moment.Moment, seconds = 0, format = 'HH:mm:ss') {\r\n return moment(date)\r\n .add(seconds, 'seconds')\r\n .format(format);\r\n}\r\n\r\nexport const DalRealTimeContent = ({ dalInfo }): JSX.Element => {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ devId }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n graphData: {\r\n Control: [[] as { x: number, L?: number }[]],\r\n Feedback: [[] as { x: number, L?: number }[]],\r\n },\r\n illuminationList: dalInfo?.dal?.illuminationList || [],\r\n initialTimeRef: new Date().toISOString().substring(0, 19),\r\n onTelmTimer: undefined as undefined|NodeJS.Timeout,\r\n hasNewTelm: false,\r\n timezoneOffset: 0,\r\n };\r\n return state;\r\n });\r\n\r\n const { devId } = routeParams;\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n if (dalInfo.DEV_ID) {\r\n await apiCall('/get-timezone-offset-by-devId', { devId: dalInfo.DEV_ID }).then((tzOffset) => {\r\n if (tzOffset != null) state.timezoneOffset = tzOffset;\r\n });\r\n wsl.start(onWsOpen, onWsMessage, beforeWsClose);\r\n render();\r\n }\r\n } catch (err) {\r\n toast.error(t('erroDadosDispositivo'));\r\n console.log(err);\r\n }\r\n }());\r\n }, []);\r\n\r\n const wsl = useWebSocketLazy();\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'dalSubscribeRealTime', data: { DAL_CODE: devId } });\r\n }\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dalTelemetry') {\r\n if (response.data.timestamp || (response.data.status === 'ONLINE' && response.data.deviceTimestamp)) {\r\n const data = moment(new Date(response.data.timestamp));\r\n response.data.timestamp = data.format('YYYY-MM-DDTHH:mm:ss');\r\n processReceivedTelemetry(response.data, state.graphData);\r\n clearTimeout(state.onTelmTimer);\r\n state.hasNewTelm = true;\r\n state.onTelmTimer = setTimeout(() => state.hasNewTelm && render(), 100);\r\n render();\r\n }\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'dalUnsubscribeRealTime' });\r\n }\r\n\r\n function processReceivedTelemetry(telemetry, currentData) {\r\n telemetry.time = new Date(telemetry.timestamp);\r\n const time = telemetry.time.getTime();\r\n telemetry.Relays.forEach((relay, index) => {\r\n if (!currentData.Control[index]) currentData.Control[index] = [];\r\n addTelemetryPoint(currentData.Control[index], { x: time, L: relay });\r\n });\r\n telemetry.Feedback.forEach((feedback, index) => {\r\n if (!currentData.Feedback[index]) currentData.Feedback[index] = [];\r\n addTelemetryPoint(currentData.Feedback[index], { x: time, L: feedback });\r\n });\r\n return currentData;\r\n }\r\n\r\n function addTelemetryPoint(chartPoints, newPoint?) {\r\n if (chartPoints.length === 0) {\r\n if (newPoint) {\r\n const chartTimeIni = new Date(newPoint.x - TSPAN).getTime();\r\n chartPoints.push({ x: chartTimeIni, L: NaN });\r\n chartPoints.push({ x: new Date(newPoint.x - 30 * 1000).getTime(), L: newPoint.L });\r\n chartPoints.push(newPoint);\r\n }\r\n return;\r\n }\r\n\r\n let lastPoint = chartPoints[chartPoints.length - 1];\r\n\r\n if (newPoint && (newPoint.x > lastPoint.x)) {\r\n const timeEndThreshold = new Date(newPoint.x - ONLINE_TIMEOUT).getTime();\r\n if (lastPoint.x < timeEndThreshold) {\r\n chartPoints.push({ x: timeEndThreshold, L: NaN });\r\n }\r\n chartPoints.push(newPoint);\r\n lastPoint = newPoint;\r\n }\r\n const chartTimeIni = new Date(lastPoint.x - TSPAN).getTime();\r\n // Remove old points\r\n while (chartPoints.length > 0 && (chartPoints[0].x < chartTimeIni)) {\r\n chartPoints.shift();\r\n }\r\n if (chartPoints[0].x > chartTimeIni) {\r\n chartPoints.unshift({ x: chartTimeIni, L: NaN });\r\n }\r\n }\r\n\r\n function CustomTickTime(props) {\r\n const {\r\n x, y, payload, anchor,\r\n } = props;\r\n return (\r\n \r\n \r\n {(payload.value > 1000000)\r\n ? new Date(payload.value).toLocaleTimeString()\r\n : formatTimeToTimeAxios(moment(state.initialTimeRef), payload.value)}\r\n \r\n \r\n );\r\n }\r\n\r\n return (\r\n \r\n {t('portasDoDal')}\r\n {t('statusPortasAssociadas')}\r\n\r\n {state.illuminationList.map((illum, index) => (\r\n \r\n \r\n \r\n \r\n {illum.NAME}\r\n \r\n \r\n\r\n \r\n {illum.PORT && (\r\n \r\n {t('controle')}\r\n
\r\n \r\n null}\r\n data={state.graphData.Control[illum.PORT - 1]}\r\n isAnimationActive={false}\r\n />\r\n \r\n
\r\n
\r\n )}\r\n {illum.FEEDBACK && (\r\n \r\n {t('feedback')}\r\n
\r\n \r\n null} data={state.graphData.Feedback[illum.FEEDBACK - 1]} isAnimationActive={false} />\r\n \r\n
\r\n
\r\n )}\r\n
\r\n \r\n \r\n ))}\r\n \r\n );\r\n};\r\n\r\nconst GraphContainer = ({ children, CustomTickTime }): JSX.Element => (\r\n \r\n \r\n \r\n \r\n \r\n }\r\n tickCount={6}\r\n domain={['dataMin', 'dataMax']}\r\n />\r\n }\r\n ticks={[0, 1]}\r\n domain={[0, 1]}\r\n interval={0}\r\n width={90}\r\n />\r\n { children }\r\n \r\n \r\n \r\n \r\n);\r\n","import { useEffect, useRef, useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory, useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Loader, Card } from '~/components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\nimport { AssetLayout } from '~/pages/Analysis/Assets/AssetLayout';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { RealTimeContents } from '../DACs/RealTime';\r\nimport { DamRealTimeContents } from '../DAMs/DamRealTime';\r\nimport { DutAutRealTimeContents } from '../DUTs/DutAutRealTime';\r\nimport { EnvironmentRealTimeContents } from '../DUTs/EnvironmentRealTime';\r\nimport { Headers2 } from '../Header';\r\nimport { DmaRealTimeContents } from '../Integrations/IntegrRealTime/DmaRealTime';\r\nimport { DriRealTimeContents } from '../Integrations/IntegrRealTime/DriContents';\r\nimport { DmtRealTime } from '../DMTs/DmtRealTime/DmtRealTime';\r\nimport { DalRealTimeContent } from '../DALs/DalRealTime';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { TimezoneWarn } from '~/components/TimezoneWarn';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nexport const DevRealTime = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [profile] = useState(getUserProfile);\r\n const history = useHistory();\r\n const routeParams = useParams<{ devId }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n assetLayout: false,\r\n };\r\n state.isLoading = !state.devInfo;\r\n return state;\r\n });\r\n\r\n async function getDevInfo() {\r\n if (!state.devInfo) {\r\n try {\r\n state.devInfo = await getCachedDevInfo(routeParams.devId, {});\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n const { devInfo } = state;\r\n const {\r\n isDam,\r\n isDutAut,\r\n isDri,\r\n isAutomationOnly,\r\n isDma,\r\n isDmt,\r\n isDal,\r\n } = setDevice();\r\n\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n\r\n state.assetLayout = linkBase.includes('/ativo');\r\n const allTabs = [\r\n {\r\n title: t('equipamento'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'equipamento' })}`,\r\n isActive: (queryPars.aba === 'equipamento') || (!queryPars.aba),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('automacao'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'automacao' })}`,\r\n isActive: (queryPars.aba === 'automacao'),\r\n visible: (!isAutomationOnly) && (isDam) && !profile.permissions.isInstaller,\r\n ref: useRef(null),\r\n },\r\n ];\r\n const tabs = allTabs.filter((x) => x.visible);\r\n\r\n useEffect(() => {\r\n getDevInfo();\r\n }, []);\r\n\r\n function setDevice() {\r\n const { devInfo } = state;\r\n const isDac = !!(devInfo && devInfo.dac);\r\n let isDam = !!(devInfo && devInfo.dam);\r\n const isDut = !!(devInfo && devInfo.dut);\r\n const isDmt = !!(devInfo && devInfo.dmt);\r\n let isDutAut = !!(devInfo && devInfo.dut_aut);\r\n const isDri = !!(devInfo && devInfo.dri);\r\n const isDal = !!(devInfo?.dal);\r\n // @ts-ignore\r\n if (isDam && devInfo.dac && devInfo.dam.DAM_DISABLED === 1) isDam = false;\r\n // @ts-ignore\r\n if (isDutAut && devInfo.dut_aut.DUTAUT_DISABLED === 1) isDutAut = false;\r\n const isAutomationOnly = isDam && (!isDac) && (!isDut);\r\n const isDma = !!(devInfo && devInfo.dma);\r\n return {\r\n isDac,\r\n isDam,\r\n isDut,\r\n isDutAut,\r\n isDri,\r\n isAutomationOnly,\r\n isDma,\r\n isDmt,\r\n isDal,\r\n };\r\n }\r\n\r\n function setScreenDevice(devInfo?) {\r\n if (allTabs[1].isActive && isDutAut) {\r\n return ;\r\n }\r\n if (isAutomationOnly || (allTabs[1].isActive && state.devInfo.dam)) {\r\n return ;\r\n }\r\n if (isDri) {\r\n return ;\r\n }\r\n if (allTabs[0].isActive && state.devInfo.dac) {\r\n return ;\r\n }\r\n if (allTabs[0].isActive && state.devInfo.dut) {\r\n return ;\r\n }\r\n if (isDmt) {\r\n return ;\r\n }\r\n if (isDal) {\r\n return ;\r\n }\r\n return t('vazio');\r\n }\r\n\r\n const dutSelected = () => state.devInfo?.dut?.PLACEMENT === 'DUO';\r\n\r\n function buildScreenInfoParams(): Parameters<(typeof AssetLayout)>[0]['screenInfo'] {\r\n return {\r\n forceHideHealthTab: false,\r\n groupSelected: true,\r\n hasNonDutDeviceInAssets: false,\r\n dutAutomationInfo: {},\r\n isDuoSelected: dutSelected(),\r\n assetRoleSelected: 0,\r\n };\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devInfo?.DEV_ID, t('tempoRealMaiusculo'))}\r\n \r\n {!state.assetLayout ? () : ()}\r\n {(state.isLoading)\r\n && (\r\n
\r\n {' '}\r\n \r\n {' '}\r\n
\r\n )}\r\n {(state.devInfo && !state.isLoading)\r\n && (\r\n
\r\n {isDma ? : (\r\n \r\n {(tabs.length > 1)\r\n ? (\r\n
\r\n \r\n
\r\n ) : <> }\r\n
\r\n {setScreenDevice(devInfo)}\r\n
\r\n
\r\n )}\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('DevRealTime', 'component')(DevRealTime);\r\n","import { useEffect } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport { Loader, LayerBackgroundModal } from 'components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport { SchedulesList, SchedulesRemove, SchedulesEdit } from 'pages/Analysis/SchedulesModals/DUT_Schedule';\r\nimport { apiCall } from 'providers';\r\nimport { DayProg, FullProg_v4 } from 'providers/types';\r\n\r\nconst handleSelectTitle = {\r\n List: 'Programação',\r\n Edit: 'Editar programação',\r\n Remove: 'Excluir programação',\r\n Add: 'Adicionar programação',\r\n};\r\n\r\nexport const DutSchedule = (): JSX.Element => {\r\n const routeParams = useParams<{ devId: string }>();\r\n const [, render] = useStateVar({});\r\n const devInfo = getCachedDevInfoSync(routeParams.devId);\r\n return (\r\n <>\r\n \r\n Diel Energia - Programação DUT\r\n \r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport function DutScheduleContents(props: { onDevInfoUpdate?: () => void }) {\r\n const { onDevInfoUpdate } = props;\r\n const routeParams = useParams<{ devId: string }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n isSaving: false,\r\n devId: routeParams.devId,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n devSched: { week: {}, exceptions: {} } as FullProg_v4,\r\n schedulesTypeActive: null as null|('Edit'|'Remove'|'Add'),\r\n editedDay: null as null|('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun'),\r\n };\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n getData();\r\n }, []);\r\n\r\n async function getData() {\r\n try {\r\n setState({ isLoading: true });\r\n const schedProm = apiCall('/dut/get-programming-v3', { dutId: state.devId });\r\n schedProm.catch((err) => { console.log(err); });\r\n const devInfo = await getCachedDevInfo(state.devId, {});\r\n state.devInfo = devInfo;\r\n if (onDevInfoUpdate) onDevInfoUpdate();\r\n const devSched = await schedProm;\r\n if (!devSched) throw Error('Could not get device schedule');\r\n if (!devSched.week) devSched.week = {};\r\n if (!devSched.exceptions) devSched.exceptions = {};\r\n state.devSched = devSched;\r\n } catch (err) {\r\n console.log(err);\r\n // toast.warn('Não existem programações ativas')\r\n toast.error('Houve erro');\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n function cloneProg(): typeof state.devSched {\r\n const newProg: typeof state.devSched = JSON.parse(JSON.stringify(state.devSched));\r\n if (!newProg.week) newProg.week = {};\r\n if (!newProg.exceptions) newProg.exceptions = {};\r\n return newProg;\r\n }\r\n\r\n async function saveProg(prog: FullProg_v4) {\r\n try {\r\n setState({ isSaving: true });\r\n const devSched = await apiCall('/dut/set-programming-v3', {\r\n dutId: state.devId,\r\n ...prog,\r\n });\r\n state.devSched = devSched;\r\n toast.success('Programação salva com sucesso!');\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível salvar a programação');\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n async function wantSaveVent(ventInput: string) {\r\n const newProg = cloneProg();\r\n const ventilation = (ventInput && Number(ventInput)) || 0;\r\n newProg.ventTime = { begin: ventilation, end: ventilation };\r\n await saveProg(newProg);\r\n }\r\n\r\n // async function wantSaveCtrl(mode: '0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP', temperature: number) {\r\n // const newProg = cloneProg();\r\n // newProg.temprtControl = { mode, temperature };\r\n // await saveProg(newProg);\r\n // }\r\n\r\n async function wantDelException(day: string) {\r\n const newProg = cloneProg();\r\n if (!newProg.exceptions) return;\r\n if (!newProg.exceptions[day]) return;\r\n if (!window.confirm('Tem certeza?')) return;\r\n delete newProg.exceptions[day];\r\n await saveProg(newProg);\r\n }\r\n\r\n async function onConfirmProg(days: ('mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun')[], prog: DayProg) {\r\n try {\r\n const newProg = cloneProg();\r\n for (const day of days) {\r\n newProg.week[day] = prog;\r\n }\r\n await saveProg(newProg);\r\n toast.success('Programação adicionada com sucesso!');\r\n state.editedDay = null;\r\n state.schedulesTypeActive = null;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível adicionar a programação.');\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n async function onConfirmExcept(day: string, prog: DayProg) {\r\n try {\r\n const newProg = cloneProg();\r\n if (!newProg.exceptions) newProg.exceptions = {};\r\n newProg.exceptions[day] = prog;\r\n await saveProg(newProg);\r\n toast.success('Programação adicionada com sucesso!');\r\n state.editedDay = null;\r\n state.schedulesTypeActive = null;\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Não foi possível adicionar a programação.');\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n async function onConfirmRemoveProg(day: 'mon'|'tue'|'wed'|'thu'|'fri'|'sat'|'sun') {\r\n const newProg = cloneProg();\r\n if (newProg.week[day]) {\r\n delete newProg.week[day];\r\n await saveProg(newProg);\r\n }\r\n setState({ schedulesTypeActive: null, editedDay: null });\r\n }\r\n\r\n return (\r\n \r\n {state.isLoading ? (\r\n \r\n ) : (state.devSched && (\r\n <>\r\n
\r\n \r\n setState({ schedulesTypeActive: 'Add', editedDay: null })}\r\n wantEditDay={(day) => setState({ schedulesTypeActive: 'Edit', editedDay: day })}\r\n wantRemoveDay={(day) => setState({ schedulesTypeActive: 'Remove', editedDay: day })}\r\n isLoading={state.isSaving}\r\n />\r\n \r\n
\r\n {(state.schedulesTypeActive)\r\n && (\r\n \r\n \r\n \r\n \r\n {(state.schedulesTypeActive === 'Edit') && (\r\n setState({ schedulesTypeActive: null, editedDay: null })}\r\n isSending={state.isSaving}\r\n />\r\n )}\r\n {(state.schedulesTypeActive === 'Remove') && (\r\n setState({ schedulesTypeActive: null, editedDay: null })}\r\n isRemoving={state.isSaving}\r\n />\r\n )}\r\n {(state.schedulesTypeActive === 'Add') && (\r\n setState({ schedulesTypeActive: null, editedDay: null })}\r\n isSending={state.isSaving}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n ))}\r\n
\r\n );\r\n}\r\n\r\nconst Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n background-color: white;\r\n`;\r\nconst ElevatedCard = styled.div`\r\n padding: 32px;\r\n border-radius: 10px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n","import { useEffect } from 'react';\r\nimport { t } from 'i18next';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Loader } from '~/components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from '~/helpers/cachedStorage';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { DevLayout } from '~/pages/Analysis/DEVs/DevLayout';\r\n\r\nimport { DamSchedule } from '../DAMs/DamSchedule';\r\nimport { DutSchedule } from '../DUTs/DutSchedule';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport const DevSchedule = (): JSX.Element => {\r\n const routeParams = useParams<{ devId }>();\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n isLoading: true,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n };\r\n state.isLoading = !state.devInfo;\r\n return state;\r\n });\r\n\r\n useEffect(() => {\r\n if (!state.devInfo) {\r\n (async function () {\r\n try {\r\n state.devInfo = await getCachedDevInfo(routeParams.devId, {});\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }\r\n }, []);\r\n\r\n return (\r\n (state.isLoading)\r\n ? (\r\n <>\r\n \r\n {t('dielEnergiaProgramacao')}\r\n \r\n \r\n
\r\n \r\n \r\n )\r\n : (state.devInfo && state.devInfo.dut_aut)\r\n ? \r\n : \r\n );\r\n};\r\n\r\nexport default withTransaction('DevSchedule', 'component')(DevSchedule);\r\n","export default __webpack_public_path__ + \"static/media/BackupEcoV2DamDac.85540572.png\";","import styled from 'styled-components';\r\n\r\nimport {\r\n Button,\r\n} from '~/components';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const InfoItem = styled.div`\r\n width: 150px;\r\n margin-right: 20px;\r\n margin-bottom: 30px;\r\n`;\r\n\r\nexport const CardIntem = styled(Button)`\r\n width: auto;\r\n padding: 0 8px;\r\n margin-left: 5px;\r\n`;\r\n\r\nexport const TableNew2 = styled.table`\r\n white-space: nowrap;\r\n box-shadow: rgba(62, 71, 86, 0.2) 0px 2px 8px;\r\n border-collapse: collapse;\r\n & tbody {\r\n border: 1px solid ${colors.Grey};\r\n & tr {\r\n height: 35px;\r\n &:not(:last-child) {\r\n border-bottom: 1px solid ${colors.Grey};\r\n }\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n }\r\n & td {\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n }\r\n }\r\n & thead {\r\n & tr {\r\n height: 40px;\r\n display: table-row;\r\n }\r\n & th {\r\n flex: 1;\r\n justify-content: space-between;\r\n align-items: center;\r\n padding: 0 10px;\r\n word-break: normal;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n background-color: ${colors.Blue300};\r\n color: ${colors.White};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n }\r\n }\r\n`;\r\n\r\nexport const FileInput = styled.label`\r\n border-radius: 5px;\r\n border-style: solid;\r\n border-width: 1px;\r\n cursor: pointer;\r\n font-size: 1em;\r\n font-family: 'Open Sans', sans-serif;\r\n font-weight: bold;\r\n outline: none;\r\n padding: 8px 0px;\r\n text-decoration: none;\r\n text-transform: uppercase;\r\n transition: all 0.2s ease-in-out;\r\n width: 100%;\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.12), 0px 11px 15px rgba(85, 97, 115, 0.1);\r\n background-color: ${colors.Pink200};\r\n border-color: ${colors.Pink200};\r\n color: ${colors.White};\r\n transition: all 0.3s ease-in-out;\r\n &:hover {\r\n background-color: ${colors.Pink300};\r\n border-color: ${colors.Pink300};\r\n box-shadow: 0px 7px 12px rgba(83, 104, 111, 0.35), 0px 11px 15px rgba(85, 97, 115, 0.25);\r\n }\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-left: 20px;\r\n text-decoration: underline;\r\n font-size: 12px;\r\n`;\r\n\r\nexport const ControlTemperatureButton = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 0.7px solid ${colors.GreyInputBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 5px;\r\n width: 70px;\r\n height: 70px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n ${({ isActive }) => (isActive ? `background-color: ${colors.BlueSecondary};` : '')}\r\n`;\r\n\r\nexport const SetpointButton = styled.div<{ up?: boolean, down?: boolean }>`\r\n flex-basis: 50%;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n border-left: 0.7px solid ${colors.GreyInputBorder};\r\n user-select: none;\r\n ${({ up }) => (up ? `border-bottom: 0.7px solid ${colors.GreyInputBorder}` : '')}\r\n ${({ down }) => (down ? `border-top: 0.7px solid ${colors.GreyInputBorder}` : '')}\r\n`;\r\n","import { ReactElement } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Select } from 'components/NewSelect';\r\nimport {\r\n currentCapacityOpts,\r\n driLayerOpts, driParityOpts, driProtocolsOpts, driStopBitsOpts, installationTypeOpts, modbusBaudRateOpts,\r\n} from '~/helpers/driConfigOptions';\r\nimport { Input } from '~/components';\r\nimport { CustomInput } from '~/components/FormMachine/styles';\r\nimport { Label, SearchInput } from '../../../styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { DriConfigState } from '../types';\r\nimport { isAutomation } from '~/helpers/driConfig';\r\n\r\ninterface ParametersProps {\r\n state: DriConfigState;\r\n setState: (newState: Partial) => void;\r\n render: () => void;\r\n}\r\n\r\nconst allowedMeterModelsDriSlaveId = ['Nexus II', 'EM210', 'MULT-K', 'MULT-K 05', 'MULT-K 120', 'iKRON 03', 'ET330', 'Schneider PM2100', 'Schneider PM210', 'ETE-30'];\r\n\r\nexport function DriConfigParameters({ state, setState, render }: ParametersProps): ReactElement | null {\r\n const { t } = useTranslation();\r\n\r\n function verifyDisabled() {\r\n return !(state.driProtocol && ['Modbus RTU', 'Carrier ECOSPLIT'].includes(state.driProtocol))\r\n || state.driApplication === 'Carrier ECOSPLIT'\r\n || state.driApplication === 'VAV'\r\n || state.driApplication === 'Fancoil'\r\n || (state.driApplication === 'Medidor de Energia'\r\n && !['Nexus II', 'EM210', 'MULT-K', 'MULT-K 05', 'MULT-K 120', 'iKRON 03', 'ET330', 'ETE-30', 'Schneider PM2100', 'Schneider PM210'].includes(state.driMeterModel?.NAME || ''));\r\n }\r\n\r\n function disableDriLayer() {\r\n return state.driApplication === 'Carrier ECOSPLIT'\r\n || state.driApplication === 'VAV'\r\n || state.driApplication === 'Fancoil'\r\n || (state.driApplication === 'Medidor de Energia'\r\n && !['Nexus II', 'iKRON 03', 'ET330', 'Schneider PM2100'].includes(state.driMeterModel?.NAME || ''));\r\n }\r\n\r\n function disabledDriProtocol() {\r\n return state.driApplication === 'Carrier ECOSPLIT'\r\n || state.driApplication === 'VAV'\r\n || state.driApplication === 'Fancoil'\r\n || (state.driApplication === 'Medidor de Energia'\r\n && !['Nexus II', 'MULT-K', 'MULT-K 05', 'MULT-K 120', 'ET330', 'Schneider PM2100'].includes(state.driMeterModel?.NAME || ''));\r\n }\r\n\r\n if (!state.application || (isAutomation(state) && !state.automation)) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n
{t('parametros')}
\r\n
\r\n { state.driProtocol = item; render(); }}\r\n />\r\n { state.modbusBaudRate = item; render(); }}\r\n />\r\n { state.driParity = item; render(); }}\r\n />\r\n { state.driLayer = item; render(); }}\r\n />\r\n { state.driStopBits = item; render(); }}\r\n />\r\n setState({ driSendInterval: event.target.value })}\r\n />\r\n {state.driMeterModel?.NAME && ['ET330', 'EM210', 'MULT-K', 'MULT-K 05', 'MULT-K 120'].includes(state.driMeterModel.NAME) && (\r\n <>\r\n setState({ selectedInstallationType: value })}\r\n />\r\n {!['MULT-K 120'].includes(state.driMeterModel.NAME) && (\r\n \r\n
\r\n \r\n {\r\n setState({ selectedCurrentCapacity: { name: `${value}A`, value: value.toString() } });\r\n }}\r\n closeOnSelect={false}\r\n />\r\n
\r\n \r\n )}\r\n \r\n )}\r\n {((state.driMeterModel?.NAME && allowedMeterModelsDriSlaveId.includes(state.driMeterModel?.NAME || ''))\r\n || state.driApplication === 'Chiller Carrier') && (\r\n {\r\n if (Number(event.target.value) || event.target.value === '') {\r\n state.driSlaveId = event.target.value;\r\n render();\r\n }\r\n }}\r\n />\r\n )}\r\n
\r\n
\r\n );\r\n}\r\n","import { ReactElement } from 'react';\r\nimport { Input } from 'components';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { Select } from 'components/NewSelect';\r\nimport { DriConfigState } from '../types';\r\nimport { isFancoil, isFancoilVavAutomation, isVAV } from '~/helpers/driConfig';\r\n\r\ninterface ManufacturerProps {\r\n state: DriConfigState;\r\n setState: (newState: Partial) => void;\r\n}\r\n\r\nexport function Manufacturer({\r\n state,\r\n setState,\r\n}: ManufacturerProps): ReactElement | null {\r\n const { t } = useTranslation();\r\n const vav = isVAV(state);\r\n const fancoil = isFancoil(state);\r\n\r\n if (!isFancoilVavAutomation(state)) {\r\n return null;\r\n }\r\n\r\n return (\r\n <>\r\n setState({ valveManuf: item })}\r\n />\r\n {state.valveManuf === t('outroDigitar') && (\r\n setState({ otherValveManuf: event.target.value })}\r\n />\r\n )}\r\n setState({ valveModel: event.target.value })}\r\n />\r\n {vav && (\r\n <>\r\n setState({ vavBoxManuf: item })}\r\n />\r\n setState({ vavBoxModel: event.target.value })}\r\n />\r\n \r\n )}\r\n {fancoil && (\r\n <>\r\n setState({ fancoilManuf: item })}\r\n />\r\n {state.fancoilManuf === t('outroDigitar') && (\r\n setState({ otherFancoilManuf: event.target.value })}\r\n />\r\n\r\n )}\r\n setState({ fancoilModel: event.target.value })}\r\n />\r\n \r\n )}\r\n\r\n \r\n );\r\n}\r\n","import { ReactElement } from 'react';\r\nimport { Option, Select } from '~/components/NewSelect';\r\nimport { DriConfigState } from '../types';\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n driApplicationCfgs, driApplicationOpts, driLayerOpts, driParityOpts, driProtocolsOpts, driStopBitsOpts, driVAVApplicationsOptions,\r\n vavFancoilValveTypes,\r\n} from '~/helpers/driConfigOptions';\r\nimport { getKeyByValue } from '../../IntegrRealTime/DriContents';\r\nimport { Manufacturer } from './DriConfigManufacturer';\r\nimport {\r\n isAutomation, isFancoilVavAutomation, isVAV,\r\n} from '~/helpers/driConfig';\r\nimport { Input } from '~/components';\r\n\r\ninterface AutomationProps {\r\n state: DriConfigState;\r\n setState: (newState: Partial) => void;\r\n render: () => void;\r\n resetCfgFields: () => void;\r\n}\r\n\r\nexport function DriConfigAutomation({\r\n render, setState, state, resetCfgFields,\r\n}: AutomationProps): ReactElement | null {\r\n const { t } = useTranslation();\r\n const vav = isVAV(state);\r\n\r\n const setDriApplication = (item?: {name: string, value: string}) => {\r\n state.driApplication = getKeyByValue(driApplicationOpts, item?.value) ?? null;\r\n if (item?.value === 'carrier-ecosplit') {\r\n state.driProtocol = getKeyByValue(driProtocolsOpts, 'carrier-ecosplit') ?? null;\r\n state.modbusBaudRate = '9600';\r\n state.driParity = 'Desabilitado';\r\n state.driLayer = 'RS-485';\r\n state.driStopBits = '1 Stop Bit';\r\n state.driSendInterval = '60';\r\n } else { resetCfgFields(); }\r\n };\r\n\r\n if (!isAutomation(state)) {\r\n return null;\r\n }\r\n\r\n return (\r\n <>\r\n
\r\n {\r\n state.automation = (item !== '') ? item : '';\r\n setDriApplication(item);\r\n render();\r\n }}\r\n propLabel=\"name\"\r\n />\r\n {vav && (\r\n setState({ roomName: event.target.value })}\r\n />\r\n )}\r\n {isFancoilVavAutomation(state) && (\r\n {\r\n setState({ selectedValveModel: item });\r\n }}\r\n propLabel=\"name\"\r\n />\r\n )}\r\n
\r\n {isFancoilVavAutomation(state) && (\r\n
\r\n setState({ thermManuf: item })}\r\n />\r\n {\r\n if (item) {\r\n const value = (item as Option).value;\r\n state.driVavFancoilModel = value;\r\n const defaultConfig = driApplicationCfgs[value];\r\n if (state.driApplication === 'Fancoil' && defaultConfig.application) {\r\n const application = defaultConfig.application.split('-');\r\n application[0] = 'fancoil';\r\n defaultConfig.application = application.join('-');\r\n }\r\n if (defaultConfig) {\r\n state.driProtocol = getKeyByValue(driProtocolsOpts, defaultConfig.protocol) || null;\r\n state.modbusBaudRate = defaultConfig.modbusBaudRate;\r\n state.driParity = getKeyByValue(driParityOpts, defaultConfig.parity) || null;\r\n state.driLayer = getKeyByValue(driLayerOpts, defaultConfig.serialMode) || null;\r\n state.driStopBits = getKeyByValue(driStopBitsOpts, defaultConfig.stopBits) || null;\r\n } else { resetCfgFields(); }\r\n } else {\r\n state.driVavFancoilModel = item;\r\n }\r\n render();\r\n }}\r\n />\r\n \r\n
\r\n )}\r\n \r\n );\r\n}\r\n","import { ReactElement } from 'react';\r\nimport { DriConfigState } from '../types';\r\nimport { Flex } from 'reflexbox';\r\nimport { Label, SearchInput } from '../../../styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { ClearSelect } from '~/components';\r\nimport { Select } from '~/components/NewSelect';\r\n\r\ninterface DriConfigChillerCarrierProps {\r\n state: DriConfigState;\r\n render: () => void;\r\n updateAssets: () => Promise;\r\n setVariablesChiller: (name: string) => void;\r\n}\r\n\r\nexport function DriConfigChillerCarrier({\r\n state,\r\n render,\r\n updateAssets,\r\n setVariablesChiller,\r\n}: DriConfigChillerCarrierProps): ReactElement | null {\r\n const { t } = useTranslation();\r\n\r\n if (state.driApplication !== 'Chiller Carrier') {\r\n return null;\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n
\r\n \r\n ({\r\n value: item.value,\r\n name: item.label,\r\n unit: item.unit,\r\n }))}\r\n value={state.formData.GROUP_ID_item?.value.toString()}\r\n placeholder={t('conjunto')}\r\n search\r\n filterOptions={fuzzySearch}\r\n onChange={(value, name) => {\r\n // @ts-ignore\r\n state.formData.GROUP_ID_item = name;\r\n render();\r\n updateAssets();\r\n }}\r\n disabled={!state.formData.UNIT_ID_item?.UNIT_ID}\r\n />\r\n
\r\n \r\n {state.formData.GROUP_ID_item?.value && (\r\n
\r\n {\r\n state.formData.GROUP_ID_item = null;\r\n state.formData.ASSET_ID_item = null;\r\n render();\r\n }}\r\n value={state.formData.GROUP_ID_item.name || state.formData.GROUP_ID_item.label}\r\n />\r\n
\r\n )}\r\n
\r\n \r\n \r\n
\r\n \r\n {\r\n // @ts-ignore\r\n state.formData.ASSET_ID_item = name;\r\n render();\r\n }}\r\n disabled={!state.formData.GROUP_ID_item?.value}\r\n />\r\n
\r\n \r\n {state.formData.ASSET_ID_item?.value && (\r\n
\r\n {\r\n state.formData.ASSET_ID_item = null;\r\n render();\r\n }}\r\n value={state.formData.ASSET_ID_item?.label}\r\n />\r\n
\r\n )}\r\n
\r\n {\r\n state.driChillerCarrierLine = item;\r\n setVariablesChiller(item.name);\r\n state.driChillerCarrierModel = null;\r\n render();\r\n }}\r\n />\r\n {\r\n if (state.driChillerCarrierLine?.name) {\r\n return item.name.startsWith(state.driChillerCarrierLine?.name);\r\n }\r\n return true;\r\n })}\r\n propLabel=\"name\"\r\n value={state.driChillerCarrierModel}\r\n disabled={!state.driChillerCarrierLine}\r\n onSelect={(item) => {\r\n state.driChillerCarrierModel = item;\r\n render();\r\n }}\r\n />\r\n
\r\n );\r\n}\r\n","import { ReactElement } from 'react';\r\nimport { DriConfigState } from '../types';\r\nimport { Select } from '~/components/NewSelect';\r\nimport { Input } from '~/components';\r\nimport { getKeyByValue } from '../../IntegrRealTime/DriContents';\r\nimport {\r\n driLayerOpts, driMetersCfgs, driParityOpts, driProtocolsOpts, driStopBitsOpts,\r\n} from '~/helpers/driConfigOptions';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\ninterface DriConfigEnergyMeterProps {\r\n state: DriConfigState;\r\n render: () => void;\r\n resetCfgFields: () => void;\r\n}\r\n\r\nexport function DriConfigEnergyMeter({\r\n render,\r\n resetCfgFields,\r\n state,\r\n}: DriConfigEnergyMeterProps): ReactElement | null {\r\n const { t } = useTranslation();\r\n\r\n if (state.driApplication !== 'Medidor de Energia') {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n {\r\n state.driMeterModel = item;\r\n state.selectedCurrentCapacity = null;\r\n state.selectedInstallationType = null;\r\n state.driSlaveId = '1';\r\n const defaultConfig = driMetersCfgs[item.NAME];\r\n\r\n if (defaultConfig) {\r\n state.driProtocol = getKeyByValue(driProtocolsOpts, defaultConfig.protocol) || null;\r\n state.modbusBaudRate = defaultConfig.modbusBaudRate;\r\n state.driParity = getKeyByValue(driParityOpts, defaultConfig.parity) || null;\r\n state.driLayer = getKeyByValue(driLayerOpts, defaultConfig.serialMode) || null;\r\n state.driStopBits = getKeyByValue(driStopBitsOpts, defaultConfig.stopBits) || null;\r\n state.driSendInterval = defaultConfig.telemetryInterval;\r\n state.driSlaveId = defaultConfig.driSlaveId ?? state.driSlaveId;\r\n } else { resetCfgFields(); }\r\n render();\r\n }}\r\n />\r\n { state.formData.establishmentName = event.target.value; render(); }}\r\n />\r\n
\r\n );\r\n}\r\n","import { ReactElement, useEffect, useRef } from 'react';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { DevFullInfo } from 'store';\r\nimport { DriException, DriSchedule, DriScheduleContent } from 'pages/Analysis/SchedulesModals/DRI_ScheduleModal';\r\nimport { apiCall } from 'providers';\r\nimport { toast } from 'react-toastify';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\ninterface DriConfigSchedulesAutomationProps {\r\n devInfo: DevFullInfo | null;\r\n}\r\n\r\nexport function DriConfigSchedulesAutomation({\r\n devInfo,\r\n}: DriConfigSchedulesAutomationProps): ReactElement | null {\r\n const isFirstRender = useRef(true);\r\n const { t } = useTranslation();\r\n\r\n const [driState, , setDriState] = useStateVar({\r\n schedules: [] as DriSchedule[],\r\n exceptions: [] as DriException[],\r\n });\r\n\r\n async function callDriSchedules(devId: string): Promise {\r\n try {\r\n const { list: schedulesList } = await apiCall('/dri/get-dri-scheds', { DRI_ID: devId });\r\n const schedules: DriSchedule[] = [];\r\n const exceptions: DriException[] = [];\r\n\r\n for (const sched of schedulesList) {\r\n if (sched.EXCEPTION_DATE) {\r\n exceptions.push(sched);\r\n } else {\r\n schedules.push(sched);\r\n }\r\n }\r\n\r\n setDriState({\r\n exceptions,\r\n schedules,\r\n });\r\n } catch (error) {\r\n console.error(error);\r\n toast.error(t('naoFoiPossivelBuscarProgramacoesExcecoesDRI'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n if (devInfo && isFirstRender.current) {\r\n isFirstRender.current = false;\r\n callDriSchedules(devInfo.DEV_ID);\r\n }\r\n }, [devInfo]);\r\n\r\n if (!devInfo) {\r\n return null;\r\n }\r\n\r\n return (\r\n
\r\n callDriSchedules(devInfo.DEV_ID)}\r\n fixedContent\r\n />\r\n
\r\n );\r\n}\r\n","import { useEffect, useState, useRef } from 'react';\r\nimport { useHistory } from 'react-router-dom';\r\nimport { colors } from '~/styles/colors';\r\nimport queryString from 'query-string';\r\nimport { toast } from 'react-toastify';\r\nimport { AxiosError } from 'axios';\r\nimport { Flex } from 'reflexbox';\r\nimport {\r\n Button,\r\n ClearSelect,\r\n Input,\r\n Loader,\r\n} from '~/components';\r\nimport { Select } from '~/components/NewSelect';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport parseDecimalNumber from 'helpers/parseDecimalNumber';\r\nimport { useDebouncedRender, useStateVar } from '~/helpers/useStateVar';\r\nimport { apiCall, apiCallFormData, ApiResps } from '~/providers';\r\nimport { Headers2 } from '../../../Header';\r\nimport { SearchInput } from '../../../styles';\r\nimport { BtnClean } from '../styles';\r\n\r\nimport {\r\n driApplicationOpts,\r\n driMeterApplications,\r\n driProtocolsOpts,\r\n driParityOpts,\r\n driStopBitsOpts,\r\n driLayerOpts,\r\n currentCapacityOpts,\r\n installationTypeOpts,\r\n driVAVsApplications,\r\n driApplicationCfgs,\r\n driFancoilsApplications,\r\n driChillerCarrierApplications,\r\n vavFancoilValveTypes,\r\n} from '~/helpers/driConfigOptions';\r\nimport { checkNewProtocolsValues } from '~/helpers/driConfig';\r\nimport { useTranslation } from 'react-i18next';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { Label } from '~/components/FormMachine/styles';\r\nimport { OverLay } from '~/components/EnergyEfficiencyCard/styles';\r\nimport { getCachedDevInfo } from '~/helpers/cachedStorage';\r\nimport { DevFullInfo } from '~/store';\r\nimport { RssiComponent } from '../../IntegrRealTime/components/RssiComponent';\r\nimport { useWebSocket } from '~/helpers/wsConnection';\r\nimport { verifyAndUpdateRSSI } from '~/helpers/rssi';\r\nimport { DriConfigParameters } from './DriConfigParameters';\r\nimport { DriConfigState } from '../types';\r\nimport { DriConfigAutomation } from './DriConfigAutomation';\r\nimport { DriConfigChillerCarrier } from './DriConfigChillerCarrier';\r\nimport { DriConfigEnergyMeter } from './DriConfigEnergyMeter';\r\nimport { DriConfigSchedulesAutomation } from './DriConfigSchedulesAutomation';\r\n\r\nfunction getKeyByValue(object, value) {\r\n return Object.keys(object).find((key) => object[key] === value);\r\n}\r\nfunction valueOrNull(value) {\r\n return value ?? null;\r\n}\r\n\r\nconst MANUFACTURER = 'Diel Energia';\r\n\r\nexport const DriConfig = (props: {\r\n devInfoResp: ApiResps['/get-integration-info'],\r\n varsList: {\r\n varId: string\r\n name: string\r\n currVal?: string\r\n valUnit?: string\r\n card?: string\r\n subcard?: string\r\n relevance?: string | number\r\n }[],\r\n cards: string[],\r\n subcards: string[],\r\n relevances: string[],\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const [state, render, setState] = useStateVar({\r\n isLoading: false,\r\n devInfo: null as null|DevFullInfo,\r\n modbusBaudRate: '',\r\n listModelsChiller: {} as { ID: number, MODEL_NAME: string }[],\r\n driApplication: null as null | string,\r\n driMeterModel: null as null | { MODEL_ID: number, MANUFACTURER_ID: number, NAME: string },\r\n driChillerCarrierModel: null as null | { id: string, name: string },\r\n driChillerCarrierLine: null as null | { id: string, name: string },\r\n driVavFancoilModel: null as null | string,\r\n thermManuf: null as null | string,\r\n valveManuf: null as null | string,\r\n otherValveManuf: '',\r\n valveModel: '',\r\n selectedValveModel: vavFancoilValveTypes[0],\r\n vavBoxManuf: null as null | string,\r\n vavBoxModel: '',\r\n fancoilManuf: null as null | string,\r\n fancoilModel: '',\r\n otherFancoilManuf: '',\r\n roomName: '',\r\n vavLoaded: false,\r\n fancoilLoaded: false,\r\n driProtocol: null as null | string,\r\n driParity: null as null | string,\r\n driLayer: null as null | string,\r\n driStopBits: null as null | string,\r\n driSendInterval: '',\r\n selectedCurrentCapacity: null as null | { name: string, value: string },\r\n selectedInstallationType: null as null | { name: string, value: string },\r\n driSlaveId: '',\r\n driCfgFile: null as null | (Blob & { name: string }),\r\n comboOpts: {\r\n clients: [] as { NAME: string, CLIENT_ID: number }[],\r\n states: [] as { STATE_NAME: string, STATE_ID: string }[],\r\n cities: [] as { CITY_NAME: string, CITY_ID: string, STATE_ID: string }[],\r\n units: [] as { UNIT_NAME: string, UNIT_ID: number }[],\r\n duts: [] as { comboLabel: string, DUT_ID: string }[],\r\n enableEco: [{ name: t('sim'), value: 1 }, { name: t('nao'), value: 0 }],\r\n ecoModeCfg: [{ name: t('desligar'), value: 'eco-D' }, { name: t('ventilar'), value: 'eco-V' }],\r\n meterModels: [] as { MODEL_ID: number, MANUFACTURER_ID: number, NAME: string }[],\r\n thermManuf: [] as string[],\r\n valveManuf: [] as string[],\r\n boxManuf: [] as string[],\r\n fancoilManuf: [] as string[],\r\n fancoilValveManuf: [] as string[],\r\n groups: [] as { label: string, value: number, withDacAut?: boolean, checked?: boolean, unit: number}[],\r\n assets: [] as { value: number, label: string, name: string, UNIT_ID: number, CLIENT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, DAT_ID: string|null, DAT_INDEX: number|null, MCHN_APPL: string|null, MCHN_BRAND: string|null }[],\r\n chillerLines: [] as { name: string, id: string }[],\r\n chillerModels: [] as { name: string, id: string }[],\r\n applications: [\r\n { name: t('Automação'), value: 'automation' },\r\n { name: 'Chiller', value: 'chiller-carrier' },\r\n { name: t('MedicaodeEnergia'), value: 'medidor-energia' },\r\n ],\r\n automation: [\r\n { name: 'Carrier Ecosplit', value: 'carrier-ecosplit' },\r\n { name: 'Fancoil', value: 'fancoil' },\r\n { name: 'VAV', value: 'vav' },\r\n ],\r\n },\r\n formData: {\r\n CLIENT_ID_item: null as null | { NAME: string, CLIENT_ID: number },\r\n UNIT_ID_item: null as null | { UNIT_NAME: string, UNIT_ID: number },\r\n GROUP_ID_item: null as null|{ label: string, value: number, unit: number, name?: string },\r\n ASSET_ID_item: null as null|{ value: number, label: string, UNIT_ID: number, CLIENT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, DAT_ID: string|null, DAT_INDEX: number|null },\r\n establishmentName: '',\r\n REL_DUT_ID_item: null as null | { comboLabel: string, DUT_ID: string },\r\n ENABLE_ECO_item: null as null | { name: string, value: number },\r\n ECO_MODE_CFG_item: null as null | { name: string, value: string },\r\n ECO_INTERVAL_TIME: '',\r\n ECO_OFST_START: '',\r\n ECO_OFST_END: '',\r\n },\r\n persistedAssetDevice: null as null|{ value: number, label: string, UNIT_ID: number, CLIENT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, DAT_ID: string|null, DAT_INDEX: number|null },\r\n varsCfg: props.devInfoResp.dri,\r\n openModal: null as null | 'add-unit',\r\n rooms: [] as { RTYPE_ID: number, RTYPE_NAME: string }[],\r\n roomDutInfo: null as null | undefined | { DEV_ID?: string, RTYPE_NAME?: string, ROOM_NAME?: string, TUSEMIN?: number, TUSEMAX?: number},\r\n rssi: '',\r\n application: null,\r\n automation: null,\r\n });\r\n const debouncedRender = useDebouncedRender(render);\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'driSubscribeRealTime', data: { DRI_ID: props.devInfoResp.info.integrId } });\r\n }\r\n\r\n function onWsMessage(response) {\r\n if (response && response.type === 'driTelemetry') {\r\n updateRssi(response);\r\n debouncedRender();\r\n }\r\n }\r\n\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'driUnsubscribeRealTime' });\r\n }\r\n\r\n const updateRssi = (payload) => {\r\n const rssi = verifyAndUpdateRSSI(payload);\r\n if (rssi) {\r\n state.rssi = t(rssi, { defaultValue: '-' });\r\n render();\r\n }\r\n };\r\n\r\n const setDriApplication = (driCfg: ApiResps['/get-integration-info']['dri']) => {\r\n if (driCfg?.application && getKeyByValue(driMeterApplications, driCfg.application)) setDriApplicationEnergy(driCfg);\r\n else if (driCfg?.application && getKeyByValue(driVAVsApplications, driCfg.application)) setDriApplicationVAV(driCfg);\r\n else if (driCfg?.application && getKeyByValue(driFancoilsApplications, driCfg.application)) setDriApplicationFancoil(driCfg);\r\n else if (driCfg?.application && getKeyByValue(driChillerCarrierApplications, driCfg.application)) setDriApplicationChillerCarrier(driCfg);\r\n else if (driCfg?.application === 'carrier-ecosplit') setDriApplicationCarrierEcosplit();\r\n else if (driCfg?.chillerName) setDriApplicationChillerName(driCfg);\r\n else {\r\n state.driApplication = getKeyByValue(driApplicationOpts, driCfg?.application) ?? null;\r\n }\r\n };\r\n\r\n function getOptionByValue(options: T, value: string) {\r\n return Array.isArray(options) ? (options.find((item) => item.value === value) ?? null) : null;\r\n }\r\n\r\n const setDriApplicationEnergy = (driCfg) => {\r\n state.application = getOptionByValue(state.comboOpts.applications, 'medidor-energia');\r\n state.driApplication = 'Medidor de Energia';\r\n state.driMeterModel = valueOrNull(state.comboOpts.meterModels.find((opt) => opt.NAME === getKeyByValue(driMeterApplications, driCfg.application)));\r\n };\r\n const setDriApplicationVAV = (driCfg) => {\r\n state.application = getOptionByValue(state.comboOpts.applications, 'automation');\r\n state.automation = getOptionByValue(state.comboOpts.automation, 'vav');\r\n state.driApplication = 'VAV';\r\n state.driVavFancoilModel = valueOrNull(getKeyByValue(driVAVsApplications, driCfg.application));\r\n };\r\n const setDriApplicationFancoil = (driCfg) => {\r\n state.application = getOptionByValue(state.comboOpts.applications, 'automation');\r\n state.automation = getOptionByValue(state.comboOpts.automation, 'fancoil');\r\n state.driApplication = 'Fancoil';\r\n state.driVavFancoilModel = valueOrNull(getKeyByValue(driFancoilsApplications, driCfg.application));\r\n };\r\n const setDriApplicationChillerCarrier = (driCfg) => {\r\n state.application = getOptionByValue(state.comboOpts.applications, 'chiller-carrier');\r\n state.driApplication = 'Chiller Carrier';\r\n const model = getKeyByValue(driChillerCarrierApplications, driCfg.application);\r\n state.driChillerCarrierLine = model ? { name: model, id: model } : null;\r\n };\r\n const setDriApplicationChillerName = (driCfg) => {\r\n state.application = getOptionByValue(state.comboOpts.applications, 'chiller-carrier');\r\n state.driApplication = 'Chiller Carrier';\r\n const model = driCfg?.chillerName;\r\n state.driChillerCarrierLine = model ? { name: model, id: model } : null;\r\n };\r\n const setDriApplicationCarrierEcosplit = () => {\r\n state.application = getOptionByValue(state.comboOpts.applications, 'automation');\r\n state.automation = getOptionByValue(state.comboOpts.automation, 'carrier-ecosplit');\r\n state.driApplication = 'Carrier ECOSPLIT';\r\n };\r\n\r\n const setDriCfg = (driCfg: ApiResps['/get-integration-info']['dri']) => {\r\n setDriApplication(driCfg);\r\n state.driProtocol = valueOrNull(getKeyByValue(driProtocolsOpts, driCfg?.protocol));\r\n const parity = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'mdb_parity'))?.value;\r\n state.driParity = (parity !== undefined) ? Object.keys(driParityOpts)[parity] : null;\r\n const serialMode = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'serial_mode'))?.value;\r\n state.driLayer = (serialMode !== undefined) ? Object.keys(driLayerOpts)[Number(serialMode) - 1] : null;\r\n const stopBits = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'mdb_stopbits'))?.value;\r\n state.driStopBits = (stopBits !== undefined) ? Object.keys(driStopBitsOpts)[stopBits] : null;\r\n state.driSendInterval = ['Medidor de energia', 'Carrier ECOSPLIT'].includes(String(state.driApplication)) ? '900' : (driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'interval'))?.value?.toString() ?? '');\r\n state.modbusBaudRate = driCfg?.driConfigs?.find((cfg) => checkNewProtocolsValues(cfg, 'device', 'mdb_baud'))?.value?.toString() ?? '';\r\n const findCapacity = driCfg?.varsList?.find((v) => v.name === 'Capacidade TC');\r\n const capacityTc = findCapacity?.address?.value ?? findCapacity?.value;\r\n state.selectedCurrentCapacity = capacityTc && currentCapacityOpts.find((opt) => opt.value === (Number(capacityTc) / 2).toString()) || null;\r\n const findInstallationType = driCfg?.varsList?.find((v) => v.name === 'Tipo Instalação');\r\n const installationType = findInstallationType?.address?.value ?? findInstallationType?.value;\r\n state.selectedInstallationType = installationType && state.driMeterModel && installationTypeOpts[state.driMeterModel.NAME]?.find((opt) => opt.value === installationType) || null;\r\n state.driSlaveId = (['Nexus II', 'EM210', 'iKRON 03', 'ET330', 'ETE-30', 'Schneider PM2100', 'Schneider PM210', '30HXE', '30GXE', '30HXF', '30XAB', 'MULT-K', 'MULT-K 05', 'MULT-K 120'].includes(state.driMeterModel?.NAME ?? state.driChillerCarrierLine?.name ?? '') && driCfg?.varsList?.find((item) => item.address)?.address?.id?.toString()) || '';\r\n };\r\n\r\n async function loadPlaceConfig() {\r\n const { devInfoResp } = props;\r\n setState({ isLoading: true });\r\n fetchUnits(devInfoResp.info.CLIENT_ID);\r\n const { info: driInfo, dri: driCfg } = devInfoResp;\r\n state.devInfo = await getCachedDevInfo(driInfo.integrId, { forceFresh: true });\r\n\r\n state.formData.CLIENT_ID_item = (driInfo.CLIENT_ID) ? { NAME: driInfo.CLIENT_NAME, CLIENT_ID: driInfo.CLIENT_ID } : null;\r\n state.formData.UNIT_ID_item = (driInfo.CLIENT_ID && driInfo.UNIT_ID) ? { UNIT_NAME: driInfo.UNIT_NAME, UNIT_ID: driInfo.UNIT_ID } : null;\r\n render();\r\n\r\n await updateGroups();\r\n render();\r\n const group = state.comboOpts.groups.find((group) => (group.unit === state.formData.UNIT_ID_item?.UNIT_ID && group.value === state.devInfo?.GROUP_ID));\r\n if (group) {\r\n // @ts-ignore\r\n state.formData.GROUP_ID_item = {\r\n value: group.value,\r\n name: group.label,\r\n unit: group.unit,\r\n };\r\n }\r\n render();\r\n\r\n await updateAssets();\r\n render();\r\n for (const asset of state.comboOpts.assets) {\r\n if (asset.value === state.devInfo?.ASSET_ID) {\r\n state.formData.ASSET_ID_item = asset;\r\n }\r\n }\r\n render();\r\n\r\n const asset = await apiCall('/clients/get-asset-info', { DEV_ID: state.devInfo?.DEV_ID });\r\n if (asset?.info) {\r\n state.persistedAssetDevice = {\r\n value: asset.info.ASSET_ID,\r\n label: asset.info.AST_DESC,\r\n UNIT_ID: asset.info.UNIT_ID,\r\n GROUP_ID: asset.info.GROUP_ID,\r\n DEV_ID: asset.info.DEV_ID,\r\n ASSET_ROLE: asset.info.AST_ROLE || 0,\r\n CLIENT_ID: state.formData.CLIENT_ID_item?.CLIENT_ID as number,\r\n DAT_INDEX: asset.info.DAT_INDEX,\r\n DAT_ID: asset.info.DAT_ID,\r\n };\r\n } else {\r\n state.persistedAssetDevice = null;\r\n }\r\n\r\n setDriCfg(driCfg);\r\n if (state.driApplication === 'Chiller Carrier') {\r\n setVariablesChiller(driCfg?.chillerName ?? state.driChillerCarrierLine?.name);\r\n }\r\n setState({ isLoading: false });\r\n render();\r\n }\r\n\r\n const loadVavConfig = (VAV_ID: string) => {\r\n apiCall('/dri/get-dri-vav-info', { VAV_ID })\r\n .then((value) => {\r\n state.thermManuf = value.THERM_MANUF ?? null;\r\n state.valveManuf = value.VALVE_MANUF ?? null;\r\n state.valveModel = value.VALVE_MODEL ?? '';\r\n state.selectedValveModel = vavFancoilValveTypes.find((item) => item.value === value.VALVE_TYPE) ?? vavFancoilValveTypes[0];\r\n state.vavBoxManuf = value.BOX_MANUF ?? null;\r\n state.vavBoxModel = value.BOX_MODEL ?? '';\r\n state.roomName = value.ROOM_NAME ?? '';\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n toast.error(t('erroBuscarInformacoesVavDri'));\r\n });\r\n state.vavLoaded = true;\r\n };\r\n\r\n const loadFancoilConfig = (FANCOIL_ID: string) => {\r\n apiCall('/dri/get-dri-fancoil-info', { FANCOIL_ID })\r\n .then((value) => {\r\n if (value) {\r\n state.thermManuf = value.THERM_MANUF ?? null;\r\n state.driVavFancoilModel = value.THERM_MODEL ?? null;\r\n state.valveManuf = value.VALVE_MANUF ?? null;\r\n state.valveModel = value.VALVE_MODEL ?? '';\r\n state.selectedValveModel = vavFancoilValveTypes.find((item) => item.value === value.VALVE_TYPE) ?? vavFancoilValveTypes[0];\r\n state.fancoilManuf = value.FANCOIL_MANUF ?? null;\r\n state.fancoilModel = value.FANCOIL_MODEL ?? '';\r\n render();\r\n }\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n toast.error(t('erroBuscarInformacoesFancoilDri'));\r\n });\r\n state.fancoilLoaded = true;\r\n };\r\n\r\n const loadEcoConfig = (driInfo: ApiResps['/get-integration-info']['info'], driCfg: ApiResps['/get-integration-info']['dri']) => {\r\n state.formData.REL_DUT_ID_item = (driCfg?.ecoCfg.DUT_ID) ? { DUT_ID: driCfg.ecoCfg.DUT_ID, comboLabel: driInfo.roomName } : null;\r\n state.formData.ENABLE_ECO_item = state.comboOpts.enableEco.find((opt) => opt.value === driCfg?.ecoCfg.ENABLE_ECO) ?? null;\r\n state.formData.ECO_MODE_CFG_item = state.comboOpts.ecoModeCfg.find((opt) => opt.value === driCfg?.ecoCfg.ECO_CFG) ?? null;\r\n state.formData.ECO_INTERVAL_TIME = driCfg?.ecoCfg.ECO_INT_TIME?.toString() ?? '';\r\n state.formData.ECO_OFST_START = driCfg?.ecoCfg.ECO_OFST_START?.toString() ?? '';\r\n state.formData.ECO_OFST_END = driCfg?.ecoCfg.ECO_OFST_END?.toString() ?? '';\r\n };\r\n\r\n function loadConfig() {\r\n const { devInfoResp } = props;\r\n const { info: driInfo, dri: driCfg } = devInfoResp;\r\n\r\n if (driCfg?.application?.startsWith('vav') && !state.vavLoaded) {\r\n loadVavConfig(devInfoResp.info.integrId);\r\n }\r\n\r\n if (driCfg?.application?.startsWith('fancoil') && !state.fancoilLoaded) {\r\n loadFancoilConfig(devInfoResp.info.integrId);\r\n }\r\n\r\n state.formData.establishmentName = driInfo.establishmentName ?? driInfo.machineName ?? '';\r\n state.driChillerCarrierModel = devInfoResp.dri?.chillerModel ? { id: devInfoResp.dri?.chillerModel, name: devInfoResp.dri?.chillerModel } : null;\r\n render();\r\n setDriApplication(driCfg);\r\n render();\r\n loadEcoConfig(driInfo, driCfg);\r\n\r\n render();\r\n }\r\n\r\n function fancoilForEach(opt, thermManuf, fancoilValveManuf, fancoilManuf) {\r\n if (opt.type === 'THERM_MANUF') thermManuf.push(opt.label);\r\n if (opt.type === 'VALVE_MANUF') {\r\n if (opt.label === 'Outro (digitar)') {\r\n fancoilValveManuf.push(t('outroDigitar'));\r\n } else {\r\n fancoilValveManuf.push(opt.label);\r\n }\r\n }\r\n if (opt.type === 'FANCOIL_MANUF') {\r\n if (opt.label === 'Outro (digitar)') {\r\n fancoilManuf.push(t('outroDigitar'));\r\n } else {\r\n fancoilManuf.push(opt.label);\r\n }\r\n }\r\n }\r\n\r\n function vavsForEach(opt, thermManuf, valveManuf, boxManuf) {\r\n if (opt.type === 'THERM_MANUF') thermManuf.push(opt.label);\r\n if (opt.type === 'VALVE_MANUF') valveManuf.push(opt.label);\r\n if (opt.type === 'BOX_MANUF') boxManuf.push(opt.label);\r\n }\r\n\r\n function verifyComboOptsVav() {\r\n if (state.comboOpts.thermManuf.length > 0 && state.comboOpts.valveManuf.length > 0 && state.comboOpts.boxManuf.length > 0) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyComboOptsFancoil() {\r\n if (state.comboOpts.thermManuf.length > 0 && state.comboOpts.fancoilValveManuf.length > 0 && state.comboOpts.fancoilManuf.length > 0) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyPermissions() {\r\n if (!profile.manageAllClients && !profile.permissions.isInstaller && !verifyAutomPermission()) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyOpenModalAndStates() {\r\n let isReturn = false;\r\n if (state.openModal !== 'add-unit') isReturn = true;\r\n if (state.comboOpts.states.length > 0) isReturn = true;\r\n return isReturn;\r\n }\r\n\r\n function verifyOpenModalAndCities() {\r\n let isReturn = false;\r\n if (state.openModal !== 'add-unit') isReturn = true;\r\n if (state.comboOpts.cities.length > 0) isReturn = true;\r\n return isReturn;\r\n }\r\n\r\n function verifyOpenPermissionAndClients() {\r\n let isReturn = false;\r\n if (verifyPermissions()) isReturn = true;\r\n if (state.comboOpts.clients.length > 0) isReturn = true;\r\n return isReturn;\r\n }\r\n\r\n function verifyComboLabel(item) {\r\n if (item.ROOM_NAME) {\r\n return item.ROOM_NAME;\r\n }\r\n return item.DEV_ID;\r\n }\r\n\r\n function verifyAutomPermission() {\r\n return profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === props.devInfoResp?.info?.CLIENT_ID);\r\n }\r\n\r\n const verifyMeterModelsSort = (a, b) => {\r\n if (a.NAME.toLowerCase() < b.NAME.toLowerCase()) {\r\n return -1;\r\n }\r\n if (a.NAME.toLowerCase() > b.NAME.toLowerCase()) {\r\n return 1;\r\n }\r\n return 0;\r\n };\r\n\r\n useEffect(() => {\r\n if (verifyPermissions()) return;\r\n (async function () {\r\n try {\r\n await Promise.all([\r\n getClientsList(),\r\n getStatesList(),\r\n getCitiesList(),\r\n getDutsList(),\r\n getEnergyComboOpts(),\r\n getChillerComboOpts(),\r\n getVavComboOpts(),\r\n getFancoilComboOpts(),\r\n ]);\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n }());\r\n }, [state.openModal]);\r\n\r\n const getClientsList = async () => {\r\n if (verifyOpenPermissionAndClients()) return;\r\n const { list } = await apiCall('/clients/get-clients-list', {});\r\n const formattedList = list.map((item) => ({ CLIENT_ID: item.CLIENT_ID, NAME: item.NAME }));\r\n setState({ comboOpts: { ...state.comboOpts, clients: formattedList } });\r\n };\r\n\r\n const getStatesList = async () => {\r\n if (verifyOpenModalAndStates()) return;\r\n const { list } = await apiCall('/dac/get-states-list', { full: true });\r\n const formattedList = list.map((item) => ({ STATE_NAME: item.name, STATE_ID: item.id }));\r\n setState({ comboOpts: { ...state.comboOpts, states: formattedList } });\r\n };\r\n\r\n const getCitiesList = async () => {\r\n if (verifyOpenModalAndCities()) return;\r\n const { list } = await apiCall('/dac/get-cities-list', {});\r\n const formattedList = list.map((item) => ({ CITY_NAME: item.name, CITY_ID: item.id, STATE_ID: item.state }));\r\n setState({ comboOpts: { ...state.comboOpts, cities: formattedList } });\r\n };\r\n\r\n const getDutsList = async () => {\r\n if (state.comboOpts.duts.length > 0) return;\r\n const { list } = await apiCall('/dut/get-duts-list', { unitId: props.devInfoResp.info.UNIT_ID });\r\n const notAutomatedList = list.filter((item) => !item.automationEnabled);\r\n const formattedList = notAutomatedList.map((item) => ({ comboLabel: verifyComboLabel(item), DUT_ID: item.DEV_ID }));\r\n setState({ comboOpts: { ...state.comboOpts, duts: formattedList } });\r\n };\r\n\r\n const getEnergyComboOpts = async () => {\r\n if (state.comboOpts.meterModels.length > 0) return;\r\n const { manufacturersList, modelsList } = await apiCall('/energy/get-energy-combo-opts', {});\r\n const dielManuf = manufacturersList.find((manuf) => manuf.NAME === 'Diel Energia');\r\n const driMeterModels = modelsList.filter((model) => model.MANUFACTURER_ID === dielManuf?.MANUFACTURER_ID);\r\n const driMeterModelsSort = driMeterModels.slice().sort(verifyMeterModelsSort);\r\n setState({ comboOpts: { ...state.comboOpts, meterModels: driMeterModelsSort } });\r\n };\r\n\r\n const getChillerComboOpts = async () => {\r\n if (state.comboOpts.chillerLines.length > 0) return;\r\n const { chillerLines, chillerModels } = await apiCall('/dri/get-chiller-combo-opts', {});\r\n const formattedList = chillerLines.filter((item) => item.LINE_NAME !== '30GXE').map((item) => ({ name: item.LINE_NAME, id: item.LINE_NAME }));\r\n const formattedListModels = chillerModels.map((item) => ({ name: item.MODEL_NAME, id: item.MODEL_NAME }));\r\n setState({ comboOpts: { ...state.comboOpts, chillerLines: formattedList, chillerModels: formattedListModels }, listModelsChiller: chillerModels });\r\n };\r\n\r\n const getVavComboOpts = async () => {\r\n if (verifyComboOptsVav()) return;\r\n const { vavs } = await apiCall('/dev/dev-info-combo-options', { vavs: true });\r\n const thermManuf = [] as string[];\r\n const valveManuf = [] as string[];\r\n const boxManuf = [] as string[];\r\n vavs?.forEach((opt) => {\r\n vavsForEach(opt, thermManuf, valveManuf, boxManuf);\r\n });\r\n setState({\r\n comboOpts: {\r\n ...state.comboOpts, thermManuf, valveManuf, boxManuf,\r\n },\r\n });\r\n };\r\n\r\n const getFancoilComboOpts = async () => {\r\n if (verifyComboOptsFancoil()) return;\r\n const { fancoils } = await apiCall('/dev/dev-info-combo-options', { fancoils: true });\r\n const thermManuf = [] as string[];\r\n const fancoilValveManuf = [] as string[];\r\n const fancoilManuf = [] as string[];\r\n fancoils?.forEach((opt) => {\r\n fancoilForEach(opt, thermManuf, fancoilValveManuf, fancoilManuf);\r\n });\r\n\r\n setState({\r\n comboOpts: {\r\n ...state.comboOpts, thermManuf, fancoilValveManuf, fancoilManuf,\r\n },\r\n });\r\n };\r\n\r\n useEffect(() => {\r\n if (!profile.manageAllClients && !profile.permissions.isInstaller && !verifyAutomPermission()) return;\r\n\r\n if (state.formData.UNIT_ID_item?.UNIT_ID) {\r\n loadConfig();\r\n }\r\n }, [profile.manageAllClients, profile.permissions.isInstaller, state.formData.UNIT_ID_item?.UNIT_ID]);\r\n\r\n useEffect(() => {\r\n if (!profile.manageAllClients && !profile.permissions.isInstaller && !verifyAutomPermission()) return;\r\n loadPlaceConfig();\r\n }, []);\r\n\r\n const updateUnits = async () => {\r\n const clientId = state.formData.CLIENT_ID_item?.CLIENT_ID ?? null;\r\n await fetchUnits(clientId);\r\n };\r\n\r\n const updateGroups = async () => {\r\n const { groups } = await apiCall('/dev/dev-info-combo-options', { CLIENT_ID: state.formData.CLIENT_ID_item?.CLIENT_ID, UNIT_ID: state.formData.UNIT_ID_item?.UNIT_ID, groups: true });\r\n const groupFiltered = groups?.filter((group) => (group.unit === state.formData.UNIT_ID_item?.UNIT_ID));\r\n setState({ comboOpts: { ...state.comboOpts, groups: groupFiltered || [] } });\r\n };\r\n\r\n const updateAssets = async () => {\r\n const machinesAssetsList = state.formData.UNIT_ID_item?.UNIT_ID ? await apiCall('/clients/get-machines-list', { unitIds: [state.formData.UNIT_ID_item.UNIT_ID] }) : [];\r\n const assets = [] as { value: number, label: string, name: string, UNIT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, CLIENT_ID: number, DAT_INDEX: number|null, DAT_ID: string|null, MCHN_APPL: string|null, MCHN_BRAND: string|null }[];\r\n for (const item of machinesAssetsList) {\r\n item.assets.forEach((asset) => {\r\n if (item.GROUP_ID === state.formData.GROUP_ID_item?.value && asset.AST_ROLE === 5 && asset.MCHN_APPL === 'chiller') {\r\n assets.push({\r\n value: asset.ASSET_ID,\r\n label: asset.AST_DESC,\r\n name: asset.AST_DESC,\r\n UNIT_ID: asset.UNIT_ID,\r\n GROUP_ID: item.GROUP_ID,\r\n DEV_ID: asset.DEV_ID,\r\n ASSET_ROLE: asset.AST_ROLE || 0,\r\n CLIENT_ID: state.formData.CLIENT_ID_item?.CLIENT_ID as number,\r\n DAT_INDEX: asset.DAT_INDEX,\r\n DAT_ID: asset.DAT_ID,\r\n MCHN_APPL: asset.MCHN_APPL,\r\n MCHN_BRAND: asset.MCHN_BRAND,\r\n });\r\n }\r\n });\r\n }\r\n setState({ comboOpts: { ...state.comboOpts, assets } });\r\n };\r\n\r\n function getDriApplication() {\r\n let driApplication;\r\n if (state.driApplication === 'Medidor de Energia' && state.driMeterModel) {\r\n driApplication = driMeterApplications[state.driMeterModel.NAME];\r\n } else if (state.driApplication === 'VAV' && state.driVavFancoilModel) {\r\n driApplication = driVAVsApplications[state.driVavFancoilModel];\r\n } else if (state.driApplication === 'Fancoil' && state.driVavFancoilModel) {\r\n driApplication = driFancoilsApplications[state.driVavFancoilModel];\r\n } else if (state.driApplication === 'Chiller Carrier' && state.driChillerCarrierLine) {\r\n driApplication = driChillerCarrierApplications[state.driChillerCarrierLine.name];\r\n } else {\r\n driApplication = state.driApplication && driApplicationOpts[state.driApplication];\r\n }\r\n return driApplication;\r\n }\r\n\r\n function verifyDriProtocol(driProtocol, modbusBaudRate, parity, stopBits, sendInterval) {\r\n if (driProtocol && (['modbus-rtu', 'carrier-ecosplit', 'Carrier ECOSPLIT'].includes(driProtocol)) && !modbusBaudRate) {\r\n alert(t('alertaInformeBaudRate'));\r\n return true;\r\n }\r\n if (driProtocol && (['modbus-rtu', 'carrier-ecosplit', 'Carrier ECOSPLIT'].includes(driProtocol)) && !parity) {\r\n alert(t('alertaInformeParidade'));\r\n return true;\r\n }\r\n if (driProtocol && (['modbus-rtu', 'carrier-ecosplit', 'Carrier ECOSPLIT'].includes(driProtocol)) && !stopBits) {\r\n alert(t('alertaInformeStopBits'));\r\n return true;\r\n }\r\n if (driProtocol && (['modbus-rtu', 'carrier-ecosplit', 'Carrier ECOSPLIT'].includes(driProtocol)) && !sendInterval) {\r\n alert(t('alertaInformeIntervaloEnvio'));\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyDriProtocolAndModel(driProtocol, slaveId, capacityTc, installationType, driLayer) {\r\n if (driProtocol && ['EM210', 'MULT-K', 'MULT-K 05', 'MULT-K 120', 'Nexus II', 'Schneider PM2100'].includes(state.driMeterModel?.NAME || '') && slaveId == null) {\r\n alert(t('alertaInformeEnderecoId'));\r\n return true;\r\n }\r\n if (driProtocol && ['EM210', 'MULT-K', 'MULT-K 05'].includes(state.driMeterModel?.NAME || '') && !capacityTc) {\r\n alert(t('alertaInformeCapacidadeCorrente'));\r\n return true;\r\n }\r\n if (driProtocol && ['EM210'].includes(state.driMeterModel?.NAME || '') && !installationType) {\r\n alert(t('alertaInformeTipoInstalacaoEletrica'));\r\n return true;\r\n }\r\n if (driProtocol && ['Nexus II', 'Schneider PM2100'].includes(state.driMeterModel?.NAME || '') && !driLayer) {\r\n alert(t('alertaInfomeCamadaFisica'));\r\n return true;\r\n }\r\n if (['Nexus II'].includes(state.driMeterModel?.NAME || '') && !driProtocol) {\r\n alert(t('alertaInformeProtocoloComunicacao'));\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n async function fancoilUpdate(lastApplication, driApplication) {\r\n if (lastApplication && (lastApplication?.startsWith('fancoil') && !driApplication?.startsWith('fancoil'))) {\r\n await apiCall('/dri/update-dri-fancoil', { FANCOIL_ID: props.devInfoResp.info.integrId, remove: true });\r\n } else if (driApplication?.startsWith('fancoil')) {\r\n await apiCall('/dri/update-dri-fancoil', {\r\n FANCOIL_ID: props.devInfoResp.info.integrId,\r\n THERM_MANUF: state.thermManuf,\r\n THERM_MODEL: state.driVavFancoilModel,\r\n VALVE_MANUF: state.valveManuf === t('outroDigitar') ? state.otherValveManuf : state.valveManuf,\r\n VALVE_MODEL: state.valveModel,\r\n VALVE_TYPE: state.selectedValveModel.value,\r\n FANCOIL_MANUF: state.fancoilManuf === t('outroDigitar') ? state.otherFancoilManuf : state.fancoilManuf,\r\n FANCOIL_MODEL: state.fancoilModel,\r\n THERM_T_MAX: 24,\r\n THERM_T_MIN: 21,\r\n });\r\n }\r\n }\r\n\r\n async function vavUpdate(lastApplication, driApplication) {\r\n if (lastApplication && (lastApplication?.startsWith('vav') && !driApplication?.startsWith('vav'))) {\r\n await apiCall('/dri/update-dri-vav', { VAV_ID: props.devInfoResp.info.integrId, remove: true });\r\n } else if (driApplication?.startsWith('vav')) {\r\n await apiCall('/dri/update-dri-vav', {\r\n VAV_ID: props.devInfoResp.info.integrId,\r\n THERM_MANUF: state.thermManuf,\r\n THERM_MODEL: state.driVavFancoilModel,\r\n VALVE_MANUF: state.valveManuf,\r\n VALVE_MODEL: state.valveModel,\r\n VALVE_TYPE: state.selectedValveModel.value,\r\n BOX_MANUF: state.vavBoxManuf,\r\n BOX_MODEL: state.vavBoxModel,\r\n ROOM_NAME: state.roomName,\r\n });\r\n }\r\n }\r\n\r\n async function energyMeterSetAndDelete(lastApplication) {\r\n if (state.driApplication === 'Medidor de Energia' && state.driMeterModel && state.formData.UNIT_ID_item && state.formData.CLIENT_ID_item) {\r\n await apiCall('/energy/set-energy-list-info', {\r\n UNIT_ID: state.formData.UNIT_ID_item.UNIT_ID,\r\n CLIENT_ID: state.formData.CLIENT_ID_item.CLIENT_ID,\r\n meters: [{\r\n MANUFACTURER, MODEL: state.driMeterModel.NAME, DRI_ID: props.devInfoResp.info.integrId, ESTABLISHMENT_NAME: state.formData.establishmentName,\r\n }],\r\n });\r\n }\r\n\r\n if (lastApplication && ['cg-et330', 'abb-nexus-ii', 'abb-ete-30', 'cg-em210', 'kron-mult-k', 'kron-mult-k-05', 'kron-mult-k-120', 'kron-ikron-03'].includes(lastApplication) && state.driApplication !== 'Medidor de Energia') {\r\n await apiCall('/energy/delete-energy-info', {\r\n MANUFACTURER, DRI_ID: props.devInfoResp.info.integrId, UNIT_ID: state.formData.UNIT_ID_item?.UNIT_ID, CLIENT_ID: state.formData.CLIENT_ID_item?.CLIENT_ID,\r\n });\r\n }\r\n }\r\n\r\n function createVariables() {\r\n const driProtocol = state.driProtocol && driProtocolsOpts[state.driProtocol];\r\n const driLayer = state.driLayer ? driLayerOpts[state.driLayer] : undefined;\r\n const modbusBaudRate = state.modbusBaudRate || undefined;\r\n const parity = state.driParity ? driParityOpts[state.driParity] : undefined;\r\n const stopBits = state.driStopBits ? driStopBitsOpts[state.driStopBits] : undefined;\r\n let intervalTmp = state.driApplication === 'Medidor de Energia' ? '900' : undefined;\r\n intervalTmp = !intervalTmp && state.driApplication === 'Chiller Carrier' ? '60' : intervalTmp;\r\n const sendInterval = state.driSendInterval ? state.driSendInterval : intervalTmp;\r\n const capacityTc = state.selectedCurrentCapacity?.value || undefined;\r\n const installationType = state.selectedInstallationType?.value || undefined;\r\n const slaveId = (Number(state.driSlaveId) && state.driSlaveId) || undefined;\r\n\r\n return {\r\n driProtocol,\r\n driLayer,\r\n modbusBaudRate,\r\n parity,\r\n stopBits,\r\n sendInterval,\r\n capacityTc,\r\n installationType,\r\n slaveId,\r\n };\r\n }\r\n\r\n const handleEditAsset = async (driApplication: string) => {\r\n if (!driApplication || driApplication === 'chiller-carrier-30hxe' || driApplication === 'chiller-carrier-30gxe' || driApplication === 'chiller-carrier-30hxf' || driApplication === 'chiller-carrier-30xab') {\r\n if ((!state.formData.ASSET_ID_item && state.persistedAssetDevice) || (!state.devInfo?.GROUP_ID && state.persistedAssetDevice) || (state.persistedAssetDevice && state.formData.ASSET_ID_item && state.persistedAssetDevice.value !== state.formData.ASSET_ID_item.value)) {\r\n await apiCall('/clients/edit-asset', {\r\n ASSET_ID: state.persistedAssetDevice.value,\r\n DAT_ID: state.persistedAssetDevice.DAT_ID as string || undefined,\r\n AST_DESC: state.persistedAssetDevice.label,\r\n CLIENT_ID: state.persistedAssetDevice.CLIENT_ID,\r\n GROUP_ID: state.persistedAssetDevice.GROUP_ID,\r\n UNIT_ID: state.persistedAssetDevice.UNIT_ID,\r\n AST_ROLE: state.persistedAssetDevice.ASSET_ROLE,\r\n MCHN_MODEL: state.driChillerCarrierModel?.name,\r\n DEV_ID: null,\r\n OLD_DEV_ID: state.persistedAssetDevice.DEV_ID,\r\n DAT_INDEX: state.persistedAssetDevice.DAT_INDEX,\r\n CHILLER_CARRIER_MODEL_ID: state.listModelsChiller.find((item) => item.MODEL_NAME === state.driChillerCarrierModel?.name)?.ID ?? null,\r\n });\r\n }\r\n\r\n if (state.formData.ASSET_ID_item && state.formData.GROUP_ID_item) {\r\n await apiCall('/clients/edit-asset', {\r\n ASSET_ID: state.formData.ASSET_ID_item.value,\r\n DAT_ID: state.formData.ASSET_ID_item.DAT_ID as string || undefined,\r\n AST_DESC: state.formData.ASSET_ID_item.label,\r\n CLIENT_ID: state.formData.ASSET_ID_item.CLIENT_ID,\r\n GROUP_ID: state.formData.ASSET_ID_item.GROUP_ID,\r\n UNIT_ID: state.formData.ASSET_ID_item.UNIT_ID,\r\n AST_ROLE: state.formData.ASSET_ID_item.ASSET_ROLE,\r\n MCHN_MODEL: state.driChillerCarrierModel?.name,\r\n DEV_ID: state.devInfo?.DEV_ID,\r\n OLD_DEV_ID: state.formData.ASSET_ID_item.DEV_ID,\r\n DAT_INDEX: state.formData.ASSET_ID_item.DAT_INDEX,\r\n CHILLER_CARRIER_MODEL_ID: state.listModelsChiller.find((item) => item.MODEL_NAME === state.driChillerCarrierModel?.name)?.ID ?? null,\r\n });\r\n }\r\n }\r\n };\r\n\r\n function validateShipping() {\r\n if (state.driApplication === 'Chiller Carrier' && (!state.driChillerCarrierLine || !state.driChillerCarrierModel)) {\r\n toast.error(t('preencherModeloChiller'));\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyValveType() {\r\n if (state.driApplication === 'Fancoil' || state.driApplication === 'VAV') {\r\n if (state.driVavFancoilModel?.toLowerCase().includes('bac-6000 amln')\r\n && (!state.selectedValveModel || !state.selectedValveModel.value)) {\r\n toast.error(t('preencherTipoAtuador'));\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n async function uploadSelectedDriConfigFile() {\r\n try {\r\n if (validateShipping()) {\r\n return;\r\n }\r\n\r\n const { dri: driCfg } = props.devInfoResp;\r\n const lastApplication = driCfg?.application;\r\n const driApplication = getDriApplication();\r\n\r\n const {\r\n driProtocol,\r\n driLayer,\r\n modbusBaudRate,\r\n parity,\r\n stopBits,\r\n sendInterval,\r\n capacityTc,\r\n installationType,\r\n slaveId,\r\n } = createVariables();\r\n\r\n if (verifyDriProtocol(driProtocol, modbusBaudRate, parity, stopBits, sendInterval)) {\r\n return;\r\n }\r\n\r\n if (verifyDriProtocolAndModel(driProtocol, slaveId, capacityTc, installationType, driLayer)) {\r\n return;\r\n }\r\n\r\n if (verifyValveType()) {\r\n return;\r\n }\r\n\r\n await vavUpdate(lastApplication, driApplication);\r\n\r\n await fancoilUpdate(lastApplication, driApplication);\r\n\r\n await Promise.all([\r\n (async () => {\r\n if (verifyPermissions()) return;\r\n const systemName = state.driApplication === 'Chiller Carrier' ? state.persistedAssetDevice?.label : state.formData.establishmentName;\r\n await apiCall('/dri/set-dri-info', {\r\n DRI_ID: props.devInfoResp.info.integrId,\r\n SYSTEM_NAME: systemName,\r\n UNIT_ID: state.formData.UNIT_ID_item?.UNIT_ID ?? null,\r\n CLIENT_ID: state.formData.CLIENT_ID_item?.CLIENT_ID ?? null,\r\n });\r\n })(),\r\n (async () => {\r\n await handleEditAsset(driApplication);\r\n })(),\r\n\r\n apiCallFormData('/upload-dri-varscfg', {\r\n driId: props.devInfoResp.info.integrId,\r\n application: driApplication,\r\n protocol: driProtocol,\r\n serialMode: driLayer,\r\n modbusBaudRate,\r\n parity,\r\n stopBits,\r\n telemetryInterval: sendInterval,\r\n capacityTc,\r\n installationType,\r\n slaveId,\r\n worksheetName: state.driCfgFile?.name,\r\n }, {\r\n file: state.driCfgFile,\r\n }),\r\n ]);\r\n\r\n await energyMeterSetAndDelete(lastApplication);\r\n\r\n toast.success(t('sucessoSalvarConfiguracoes'));\r\n toast.success(t('sucessoReiniciarDispositivo'));\r\n history.push(history.location.pathname.replace('editar', history.location.pathname.includes('ativos') ? 'informacoes' : 'perfil'));\r\n } catch (err) {\r\n const error = err as AxiosError;\r\n console.log(err);\r\n if (error.response?.status !== 500) {\r\n toast.error(`${error.response?.data}`);\r\n } else {\r\n toast.error(t('erro'));\r\n }\r\n }\r\n }\r\n\r\n async function saveAutomationInfo() {\r\n try {\r\n if (profile.manageAllClients || verifyAutomPermission()) {\r\n await apiCall('/dri/set-dri-info', {\r\n DRI_ID: props.devInfoResp.info.integrId,\r\n DUT_ID: state.formData.REL_DUT_ID_item && state.formData.REL_DUT_ID_item.DUT_ID,\r\n ENABLE_ECO: state.formData.ENABLE_ECO_item && state.formData.ENABLE_ECO_item.value,\r\n ECO_CFG: state.formData.ECO_MODE_CFG_item && state.formData.ECO_MODE_CFG_item.value,\r\n ECO_INT_TIME: parseDecimalNumber(state.formData.ECO_INTERVAL_TIME) || 5,\r\n ECO_OFST_START: parseDecimalNumber(state.formData.ECO_OFST_START || '0') || null,\r\n ECO_OFST_END: parseDecimalNumber(state.formData.ECO_OFST_END || '0') || null,\r\n });\r\n\r\n toast.success(t('sucessoSalvarConfiguracoes'));\r\n history.push(history.location.pathname.replace('editar', 'perfil'));\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n async function fetchUnits(CLIENT_ID: number | null) {\r\n state.comboOpts.units = [];\r\n if (!CLIENT_ID) { render(); return; }\r\n\r\n const { units } = await apiCall('/dev/dev-info-combo-options', { CLIENT_ID, units: true });\r\n\r\n if (units) {\r\n state.comboOpts.units = units.map((unit) => ({ UNIT_ID: unit.value, UNIT_NAME: unit.label }));\r\n }\r\n render();\r\n }\r\n\r\n async function onSelectClient(item) {\r\n try {\r\n setState({ isLoading: true });\r\n state.formData.CLIENT_ID_item = { NAME: item.name, CLIENT_ID: item.value };\r\n state.formData.UNIT_ID_item = null;\r\n await fetchUnits(item.value);\r\n setState({ isLoading: false });\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n\r\n function setVariablesChiller(name) {\r\n state.driSlaveId = '10';\r\n const defaultConfig = driApplicationCfgs[name];\r\n\r\n if (defaultConfig) {\r\n state.driProtocol = getKeyByValue(driProtocolsOpts, defaultConfig.protocol) ?? null;\r\n state.modbusBaudRate = defaultConfig.modbusBaudRate;\r\n state.driParity = getKeyByValue(driParityOpts, defaultConfig.parity) ?? null;\r\n state.driLayer = getKeyByValue(driLayerOpts, defaultConfig.serialMode) ?? null;\r\n state.driStopBits = getKeyByValue(driStopBitsOpts, defaultConfig.stopBits) ?? null;\r\n state.driSendInterval = '60';\r\n } else { resetCfgFields(); }\r\n }\r\n\r\n function getDefaultSendInterval() {\r\n if (state.driSendInterval.length > 0) {\r\n return '';\r\n }\r\n switch (state.driApplication) {\r\n case 'Medidor de energia': return '900';\r\n case 'Chiller Carrier':\r\n case 'Carrier ECOSPLIT':\r\n case 'Fancoil':\r\n case 'VAV': return '60';\r\n default: return '';\r\n }\r\n }\r\n\r\n function resetCfgFields() {\r\n if (state.driApplication !== 'Chiller Carrier') {\r\n state.formData.GROUP_ID_item = null;\r\n state.formData.ASSET_ID_item = null;\r\n }\r\n state.driProtocol = null;\r\n state.driMeterModel = null;\r\n state.driVavFancoilModel = null;\r\n state.driChillerCarrierModel = null;\r\n state.driChillerCarrierLine = null;\r\n state.modbusBaudRate = '';\r\n state.driParity = null;\r\n state.driStopBits = null;\r\n state.driLayer = null;\r\n state.driCfgFile = null;\r\n state.selectedCurrentCapacity = null;\r\n state.selectedInstallationType = null;\r\n state.driSlaveId = '';\r\n state.driSendInterval = getDefaultSendInterval();\r\n render();\r\n }\r\n\r\n function resetAutomationField() {\r\n if (state.automation) {\r\n state.automation = null;\r\n }\r\n }\r\n\r\n function resetApplicationFields() {\r\n state.driApplication = null;\r\n state.application = null;\r\n resetAutomationField();\r\n }\r\n\r\n function returnExistOrValue1(item, item2) {\r\n if (item !== null) return item;\r\n return item2;\r\n }\r\n\r\n const isFancoilVavApplication = props.devInfoResp.dri?.application?.includes('fancoil')\r\n || props.devInfoResp.dri?.application?.includes('vav');\r\n\r\n const automationTabVisible = state.driApplication === 'Fancoil' || state.driApplication === 'VAV' || state.driApplication === 'Carrier ECOSPLIT';\r\n\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n const allTabs = [\r\n {\r\n title: t('equipamento'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'equipamento' })}`,\r\n isActive: (queryPars.aba === 'equipamento') || (!queryPars.aba),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('Automação'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'automacao' })}`,\r\n isActive: (queryPars.aba === 'automacao'),\r\n visible: automationTabVisible,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n function onSelectUnit(item) {\r\n state.formData.UNIT_ID_item = { UNIT_NAME: item.name, UNIT_ID: item.value };\r\n }\r\n\r\n const tabs = allTabs.filter((x) => x.visible);\r\n\r\n const getUnitsOptions = () => (\r\n state.comboOpts.units.length > 0 ? state.comboOpts.units.map((item) => ({ value: item.UNIT_ID, name: item.UNIT_NAME })) : [{ value: state.formData.UNIT_ID_item ? state.formData.UNIT_ID_item.UNIT_ID : '', name: state.formData.UNIT_ID_item ? state.formData.UNIT_ID_item.UNIT_NAME : '' }]\r\n );\r\n\r\n return (\r\n
\r\n {(tabs.length > 0) && }\r\n
\r\n
\r\n\r\n
\r\n
\r\n
{t('editarDispositivo')}
\r\n
{props.devInfoResp.info.integrId}
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n {allTabs[0].isActive && (\r\n
\r\n
\r\n {state.isLoading && (\r\n \r\n \r\n \r\n )}\r\n
\r\n
{t('geral')}
\r\n
\r\n \r\n \r\n
\r\n \r\n ({ value: item.CLIENT_ID, name: item.NAME }))}\r\n value={state.formData.CLIENT_ID_item?.CLIENT_ID.toString()}\r\n onChange={(item, value) => { onSelectClient(value); updateUnits(); }}\r\n />\r\n
\r\n \r\n {state.formData.CLIENT_ID_item?.CLIENT_ID && (\r\n
\r\n {\r\n state.formData.CLIENT_ID_item = null;\r\n state.formData.UNIT_ID_item = null;\r\n state.formData.GROUP_ID_item = null;\r\n state.formData.ASSET_ID_item = null;\r\n render();\r\n }}\r\n value={state.formData.CLIENT_ID_item?.NAME}\r\n />\r\n
\r\n )}\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n { onSelectUnit(name); updateGroups(); render(); }}\r\n disabled={!state.formData.CLIENT_ID_item?.CLIENT_ID}\r\n />\r\n
\r\n \r\n {state.formData.UNIT_ID_item?.UNIT_ID && (\r\n
\r\n {\r\n state.formData.UNIT_ID_item = null;\r\n state.formData.GROUP_ID_item = null;\r\n state.formData.ASSET_ID_item = null;\r\n render();\r\n }}\r\n value={state.formData.UNIT_ID_item?.UNIT_NAME}\r\n />\r\n
\r\n )}\r\n
\r\n\r\n \r\n {\r\n if (item !== '') {\r\n state.application = item;\r\n if (item.value !== 'automation') {\r\n state.driApplication = getKeyByValue(driApplicationOpts, item.value) ?? null;\r\n resetAutomationField();\r\n resetCfgFields();\r\n } else {\r\n state.driApplication = null;\r\n }\r\n } else {\r\n resetApplicationFields();\r\n resetCfgFields();\r\n }\r\n render();\r\n }}\r\n propLabel=\"name\"\r\n />\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n history.push(history.location.pathname.replace('/editar', history.location.pathname.includes('ativos') ? '/informacoes' : '/perfil'))}>{t('botaoCancelar')}\r\n
\r\n
\r\n )}\r\n\r\n {allTabs[1].isActive && (\r\n
\r\n
\r\n { state.formData.REL_DUT_ID_item = (item !== '') ? item : null; render(); }}\r\n disabled={!state.formData.UNIT_ID_item || isFancoilVavApplication}\r\n propLabel=\"comboLabel\"\r\n />\r\n\r\n
\r\n { state.formData.ENABLE_ECO_item = (item !== '') ? item : null; render(); }}\r\n disabled={!state.formData.REL_DUT_ID_item || isFancoilVavApplication}\r\n propLabel=\"name\"\r\n />\r\n { state.formData.ECO_MODE_CFG_item = (item !== '') ? item : null; render(); }}\r\n disabled={!state.formData.REL_DUT_ID_item || isFancoilVavApplication}\r\n propLabel=\"name\"\r\n />\r\n
\r\n {\r\n if (\r\n (parseInt(e.target.value, 10) >= 1 && parseInt(e.target.value, 10) <= 15)\r\n || (e.target.value === '')\r\n ) {\r\n state.formData.ECO_INTERVAL_TIME = e.target.value;\r\n render();\r\n }\r\n }}\r\n disabled={!state.formData.REL_DUT_ID_item || isFancoilVavApplication}\r\n />\r\n

{t('limites1-15min')}

\r\n
\r\n
\r\n {!isFancoilVavApplication && (\r\n
\r\n
\r\n { state.formData.ECO_OFST_START = e.target.value; render(); }}\r\n disabled={!state.formData.REL_DUT_ID_item}\r\n />\r\n

{t('seTemperaturaMinimaAmbienteOffset', { value1: (returnExistOrValue1(state.formData.ECO_OFST_START, 1)), value2: (20 + parseFloat(returnExistOrValue1(state.formData.ECO_OFST_START, '1'))) })}

\r\n
\r\n\r\n
\r\n { state.formData.ECO_OFST_END = e.target.value; render(); }}\r\n disabled={!state.formData.REL_DUT_ID_item}\r\n />\r\n

{t('seTemperaturaAtivacaoModoEcoOffset', { value1: (returnExistOrValue1(state.formData.ECO_OFST_END, 1)), value2: (7 + (parseFloat(returnExistOrValue1(state.formData.ECO_OFST_END, 1)))) })}

\r\n
\r\n
\r\n )}\r\n\r\n {isFancoilVavApplication && }\r\n\r\n
\r\n \r\n history.push(history.location.pathname.replace('/editar', '/perfil'))}>{t('botaoCancelar')}\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n
\r\n );\r\n};\r\n\r\nexport const EditDevInfoDRI = (props: {\r\n formData: { varsConfigInput: string }\r\n onDataUpdate: (data: { varsConfigInput: string }) => void\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const { formData, onDataUpdate } = props;\r\n return (\r\n
\r\n { onDataUpdate({ varsConfigInput: event.target.value }); }}\r\n >\r\n {formData.varsConfigInput}\r\n\r\n \r\n
\r\n {t('umItemPorLinha')}\r\n
\r\n {'{\"name\":\"Psuc máquina 1\",\"address\":{\"protocol\":\"read-modbus-tcp\",\"machine\":0,\"ip\":\"192.168.137.1\",\"id\":1,\"function\":4,\"address\":21}}'}\r\n
\r\n
\r\n );\r\n};\r\n","import { useCallback, useEffect, useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useHistory } from 'react-router';\r\nimport { Flex } from 'reflexbox';\r\nimport { Button, Loader, ModalWindow } from '~/components';\r\nimport { AlertSignalIcon } from '~/icons';\r\n\r\ninterface Props {\r\n when?: boolean,\r\n onQuit?: any,\r\n onSave?: any,\r\n children?: JSX.Element | (JSX.Element[]) | null | string,\r\n}\r\n\r\nexport function RouterEditDal(props: Props) {\r\n const {\r\n when, onQuit, onSave,\r\n } = props;\r\n const history = useHistory();\r\n const [showModal, setShowModal] = useState(false);\r\n const [currentPath, setCurrentPath] = useState('');\r\n const [loading, setLoading] = useState(false);\r\n const { t } = useTranslation();\r\n\r\n useEffect(() => {\r\n const unblock = history.block((location, action): any => {\r\n const bool = true;\r\n if (when) {\r\n setCurrentPath(location.pathname);\r\n setShowModal(true);\r\n return '';\r\n }\r\n return bool;\r\n });\r\n\r\n return () => {\r\n unblock();\r\n };\r\n }, [when, history]);\r\n\r\n const handleSairSemSalvar = useCallback(async (e) => {\r\n e.preventDefault();\r\n if (onQuit) {\r\n const canRoute = await Promise.resolve(onQuit());\r\n setShowModal(false);\r\n if (canRoute) {\r\n history.push(currentPath);\r\n }\r\n }\r\n }, [currentPath, history, onQuit]);\r\n\r\n const handleSalvarSair = useCallback(async (e) => {\r\n e.preventDefault();\r\n setLoading(true);\r\n const response = await Promise.resolve(onSave());\r\n setShowModal(false);\r\n if (response) {\r\n history.push(currentPath);\r\n }\r\n setLoading(false);\r\n }, [currentPath, history, onSave]);\r\n\r\n return showModal ? (\r\n\r\n { setShowModal(false); }}\r\n borderTop\r\n style={{\r\n zIndex: 3, width: '420px', padding: '40px', fontFamily: 'Inter',\r\n }}\r\n >\r\n \r\n
\r\n \r\n {t('sairSemSalvar')}\r\n
\r\n\r\n \r\n \r\n {t('saindoDestaTela')}\r\n \r\n {t('perderaTodasAsNovas')}\r\n \r\n {t('queVoceConfigurou')}\r\n \r\n \r\n\r\n O que deseja fazer?\r\n\r\n
\r\n handleSalvarSair(e)}\r\n variant=\"primary\"\r\n >\r\n\r\n {loading\r\n ? (\r\n \r\n )\r\n : (\r\n <>\r\n {t('salvarSair')}\r\n \r\n )}\r\n\r\n \r\n handleSairSemSalvar(e)}\r\n variant=\"primary\"\r\n >\r\n {`${t('sairSemSalvar')}`}\r\n \r\n
\r\n
\r\n \r\n\r\n ) : null;\r\n}\r\n","import { useEffect } from 'react';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { Link } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport {\r\n Button, Loader, ModalWindow,\r\n} from '~/components';\r\nimport {\r\n Title,\r\n InfoItem,\r\n BtnClean,\r\n CustomInput,\r\n Label,\r\n ButtonAddAssociationsDal,\r\n} from './styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { useTranslation, Trans } from 'react-i18next';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from '~/providers';\r\nimport {\r\n UtilityIcon,\r\n} from 'icons';\r\nimport { SelectDMTport } from 'components/SelectDmtPort';\r\nimport { SmallTrashIcon } from '~/icons/Trash';\r\nimport { DALSchedule, ExceptionInfo, ScheduleInfo } from '../SchedulesModals/DAL_Schedule';\r\nimport { RouterEditDal } from './RouterEditDal';\r\nimport { SmallWarningIcon } from '~/icons/WarningIcon';\r\nimport { UnderlineBtn } from '../Units/UnitProfile/styles';\r\n\r\nexport const EditDalInfo = ({ dalInfo }): JSX.Element => {\r\n const match = useRouteMatch<{ devId: string }>();\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n devId: dalInfo.DEV_ID,\r\n larguraPage: window.innerWidth,\r\n dalInfo,\r\n linkBase: match.url.split(`/${match.params.devId}`)[0],\r\n illuminationList: dalInfo.dal.illuminationList,\r\n ports: [] as {\r\n label: string,\r\n associated: boolean,\r\n port: number,\r\n illuminationId?: number,\r\n }[],\r\n feedbacks: [] as {\r\n label: string,\r\n associated: boolean,\r\n port: number,\r\n illuminationId?: number,\r\n }[],\r\n openModal: null as null | string,\r\n clientsOpts: [] as { name: string, value: number|string }[],\r\n selectedClient: dalInfo.CLIENT_ID || null as any,\r\n unitsOpts: [] as { name: string, value: number|string }[],\r\n selectedUnit: dalInfo.UNIT_ID || null as any,\r\n utilitiesOpts: [] as { name: string, value: number|string }[],\r\n selectedUtility: null as any,\r\n selectedPort: null as null|{ port: number, associated: boolean, illuminationId?: number },\r\n selectedFeedback: null as null|{ port: number, associated: boolean, illuminationId?: number },\r\n replaceIllum: null as any,\r\n clientChanged: false,\r\n unitChanged: false,\r\n isLoading: false,\r\n deletionList: [] as { ILLUMINATION_ID: number, NAME: string, UNIT_ID: number }[],\r\n illuminationScheds: {} as {[illumId: number]: { scheds: ScheduleInfo[], exceptions: ExceptionInfo[] }},\r\n hasEdited: false as boolean,\r\n dalSchedsToEdit: { } as {[key: string]: {[key: string]: {schedId: number, delete: boolean, days: string}[]}},\r\n dalExceptsToDelete: { } as {[key: string]: {[key: string]: number[]}},\r\n illumsWithConflict: [] as string[],\r\n });\r\n\r\n const fetchClientData = async () => {\r\n try {\r\n setState({ isLoading: true });\r\n if (!state.clientsOpts.length) {\r\n const { list: clients } = await apiCall('/clients/get-clients-list', {});\r\n state.clientsOpts = clients.map((client) => ({ name: client.NAME, value: client.CLIENT_ID }));\r\n }\r\n if ((state.selectedClient && !state.unitsOpts.length) || state.clientChanged) {\r\n const { list: units } = await apiCall('/clients/get-units-list-basic', { CLIENT_ID: state.selectedClient });\r\n state.unitsOpts = units.map((units) => ({ name: units.UNIT_NAME, value: units.UNIT_ID }));\r\n state.clientChanged = false;\r\n }\r\n if ((state.selectedUnit && !state.utilitiesOpts.length) || state.unitChanged) {\r\n const illuminations = await apiCall('/dal/get-dal-illumination-list', { clientIds: [state.selectedClient] });\r\n const nonAssociatedIllums = illuminations.filter((illum) => illum.UNIT_ID === state.selectedUnit && !illum.DAL_CODE);\r\n state.utilitiesOpts = nonAssociatedIllums.map((item) => ({ ...item, name: item.NAME, value: item.ID }));\r\n state.unitChanged = false;\r\n }\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n setState({ isLoading: false });\r\n };\r\n\r\n function isOverLimit() {\r\n return state.illuminationList.length > 3;\r\n }\r\n\r\n async function getDalPortsInfo() {\r\n const clientId = dalInfo.CLIENT_ID || state.selectedClient;\r\n if (clientId) {\r\n const portsInfo = await apiCall('/dal/get-dal-ports-info', { DAL_CODE: state.devId, CLIENT_ID: dalInfo.CLIENT_ID || state.selectedClient });\r\n const feedbackPorts = portsInfo.feedbacks.map((x) => ({ ...x, label: 'F'.concat(x.label) }));\r\n const illuminationList = state.illuminationList.map((illum) => ({\r\n ...illum,\r\n PORT: portsInfo.ports.find((x) => x.port === illum.PORT),\r\n FEEDBACK: feedbackPorts.find((x) => x.port === illum.FEEDBACK),\r\n }));\r\n setState({\r\n ...state,\r\n ports: portsInfo.ports,\r\n feedbacks: feedbackPorts,\r\n illuminationList,\r\n });\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n fetchClientData();\r\n }, [state.selectedClient, state.selectedUnit]);\r\n\r\n document.body.onresize = function () {\r\n setState({ larguraPage: document.body.clientWidth });\r\n };\r\n\r\n useEffect(() => {\r\n getDalPortsInfo();\r\n }, [state.selectedClient]);\r\n\r\n interface DaySched {\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n DAYS: string;\r\n ID?: number;\r\n }\r\n\r\n const getNewSchedDays = (convergence: DaySched,\r\n newSched: DaySched) => {\r\n let newDays;\r\n if (newSched?.ID) {\r\n newDays = JSON.parse(newSched.DAYS);\r\n const convergenceDays = JSON.parse(convergence.DAYS);\r\n for (const day of Object.keys(convergenceDays)) {\r\n if (convergenceDays[day]) newDays[day] = false;\r\n }\r\n } else if (convergence?.ID) {\r\n newDays = JSON.parse(convergence.DAYS);\r\n const convergenceDays = JSON.parse(newSched.DAYS);\r\n for (const day of Object.keys(convergenceDays)) {\r\n if (convergenceDays[day]) newDays[day] = false;\r\n }\r\n }\r\n\r\n return newDays;\r\n };\r\n\r\n function checkConvergence(\r\n currentScheds: DaySched[],\r\n newSched: DaySched,\r\n ) {\r\n const convergence = currentScheds.find((x) => (\r\n compareTimes(newSched, x)\r\n ));\r\n\r\n if (convergence) {\r\n const newDays = getNewSchedDays(convergence, newSched);\r\n let deleteSched = true;\r\n if (newDays !== undefined) {\r\n for (const day of Object.keys(newDays)) {\r\n if (newDays[day]) deleteSched = false;\r\n }\r\n }\r\n\r\n return {\r\n foundConvergence: true, schedId: newSched?.ID ?? convergence?.ID, days: JSON.stringify(newDays), deleteSched,\r\n };\r\n }\r\n return {\r\n foundConvergence: false, schedId: undefined, days: undefined, deleteSched: false,\r\n };\r\n }\r\n\r\n const checkDalSchedsCardsConflicts = (newScheds: ScheduleInfo[], persisted?: ScheduleInfo[]) => {\r\n const daysProgs = {\r\n sun: [],\r\n mon: [],\r\n tue: [],\r\n wed: [],\r\n thu: [],\r\n fri: [],\r\n sat: [],\r\n } as {[day: string]:DaySched[]};\r\n const ans = {\r\n hasConflict: false,\r\n schedsIdToEdit: [] as {schedId: number, delete: boolean, days: string}[],\r\n };\r\n\r\n const deleted = newScheds.filter((sched) => sched.ID && sched.DELETE);\r\n const deletedIds = deleted.map((sched) => sched.ID);\r\n\r\n const inserted = newScheds.filter((sched) => sched.INSERT && !sched.DELETE);\r\n\r\n const edited = newScheds.filter((sched) => sched.EDIT && !sched.DELETE);\r\n const editedIds = edited.map((sched) => sched.ID);\r\n\r\n let schedsToValidate: ScheduleInfo[] = [];\r\n if (persisted?.length === 0 || (persisted?.length && persisted?.length >= 0)) {\r\n const persistedWithoutEditeds = persisted.filter((sched) => (!deletedIds.includes(sched.ID) && !editedIds.includes(sched.ID)));\r\n schedsToValidate = inserted.concat(edited).concat(persistedWithoutEditeds);\r\n } else {\r\n schedsToValidate = newScheds;\r\n }\r\n for (const sched of schedsToValidate) {\r\n const days = JSON.parse(sched.DAYS) || {};\r\n for (const [day, selected] of Object.entries(days)) {\r\n if (!selected) continue;\r\n const dayScheds = daysProgs[day];\r\n const checkConvAns = checkConvergence(dayScheds, sched);\r\n if (checkConvAns.foundConvergence) {\r\n ans.hasConflict = true;\r\n if (checkConvAns.schedId && !ans.schedsIdToEdit.find((s) => s.schedId === checkConvAns.schedId)) {\r\n ans.schedsIdToEdit.push({\r\n schedId: checkConvAns.schedId, delete: checkConvAns.deleteSched, days: checkConvAns.days,\r\n });\r\n }\r\n }\r\n dayScheds.unshift(sched);\r\n }\r\n }\r\n return ans;\r\n };\r\n\r\n interface DayExcept {\r\n BEGIN_TIME: string;\r\n END_TIME: string;\r\n ID?: number;\r\n }\r\n\r\n const compareTimes = (time_1: DayExcept, time_2: DayExcept) => ((time_1.BEGIN_TIME <= time_2.BEGIN_TIME && time_2.BEGIN_TIME <= time_1.END_TIME)\r\n || (time_2.BEGIN_TIME <= time_1.BEGIN_TIME && time_1.BEGIN_TIME <= time_2.END_TIME)\r\n || (time_1.BEGIN_TIME <= time_2.BEGIN_TIME && time_2.END_TIME <= time_1.END_TIME)\r\n || (time_2.BEGIN_TIME <= time_1.BEGIN_TIME && time_1.END_TIME <= time_2.END_TIME));\r\n\r\n const hasHoursConflicts = (excepts: DayExcept[]) => {\r\n const ans = {\r\n foundConvergence: false,\r\n exceptsIds: [] as number[],\r\n };\r\n for (let i = 0; i < excepts.length; i++) {\r\n for (let j = i + 1; j < excepts.length; j++) {\r\n if (compareTimes(excepts[i], excepts[j])) {\r\n ans.foundConvergence = true;\r\n if (excepts[i]?.ID) {\r\n ans.exceptsIds.push(excepts[i].ID as number);\r\n }\r\n if (excepts[j]?.ID) {\r\n ans.exceptsIds.push(excepts[j].ID as number);\r\n }\r\n }\r\n }\r\n }\r\n return ans;\r\n };\r\n\r\n const handleDayExceptsInsertion = (dayExcepts: {[date: string]: {[year: string]: DayExcept[]}}, dateDM: string, except: ExceptionInfo) => {\r\n if (except.REPEAT_YEARLY === '1') {\r\n if (!dayExcepts[dateDM]?.YEARLY) {\r\n dayExcepts[dateDM].YEARLY = [{ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID }];\r\n } else {\r\n dayExcepts[dateDM].YEARLY.push({ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID });\r\n }\r\n } else {\r\n const dateY = except.EXCEPTION_DATE.slice(6, 10);\r\n if (!dayExcepts[dateDM]?.[dateY]) {\r\n dayExcepts[dateDM][dateY] = [{ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID }];\r\n } else {\r\n dayExcepts[dateDM][dateY].push({ BEGIN_TIME: except.BEGIN_TIME, END_TIME: except.END_TIME, ID: except.ID });\r\n }\r\n }\r\n };\r\n\r\n const getDayExcepts = (excepts: ExceptionInfo[]) => {\r\n const dayExcepts = {} as {[date: string]: {[year: string]: DayExcept[]}};\r\n for (const except of excepts) {\r\n if (except.ACTIVE === '0') continue;\r\n const dateDM = except.EXCEPTION_DATE.slice(0, 5);\r\n if (!dayExcepts[dateDM]) dayExcepts[dateDM] = {};\r\n\r\n handleDayExceptsInsertion(dayExcepts, dateDM, except);\r\n }\r\n\r\n return dayExcepts;\r\n };\r\n\r\n const checkNotYearlyExcept = (dayExcepts: {[date: string]: {[year: string]: DayExcept[]}}, date: string, yearlyExcepts: DayExcept[], ans: { hasConflict: boolean, exceptsIdToDelete: number[] }) => {\r\n for (const year of Object.keys(dayExcepts[date])) {\r\n if (year === 'YEARLY') continue;\r\n const excepts = dayExcepts[date][year].concat(yearlyExcepts);\r\n const checkExceptsConvergence = hasHoursConflicts(excepts);\r\n if (checkExceptsConvergence.foundConvergence) {\r\n ans.hasConflict = true;\r\n if (checkExceptsConvergence.exceptsIds.length) {\r\n ans.exceptsIdToDelete = ans.exceptsIdToDelete.concat(checkExceptsConvergence.exceptsIds);\r\n }\r\n }\r\n }\r\n };\r\n\r\n const checkDalCardsExceptsConflicts = (newExceptions: ExceptionInfo[], persisted: ExceptionInfo[]) => {\r\n const ans = {\r\n hasConflict: false,\r\n exceptsIdToDelete: [] as number[],\r\n };\r\n\r\n const deleted = newExceptions.filter((except) => except.ID && except.DELETE);\r\n const deletedIds = deleted.map((sched) => sched.ID);\r\n\r\n const inserted = newExceptions.filter((except) => except.INSERT && !except.DELETE);\r\n\r\n const edited = newExceptions.filter((except) => except.EDIT && !except.DELETE);\r\n const editedIds = edited.map((except) => except.ID);\r\n\r\n let exceptsToValidate: ExceptionInfo[] = [];\r\n if (persisted?.length === 0 || (persisted?.length && persisted?.length >= 0)) {\r\n const persistedWithoutEditeds = persisted.filter((except) => (!deletedIds.includes(except.ID) && !editedIds.includes(except.ID)));\r\n exceptsToValidate = inserted.concat(edited).concat(persistedWithoutEditeds);\r\n } else {\r\n exceptsToValidate = newExceptions;\r\n }\r\n\r\n const dayExcepts = getDayExcepts(exceptsToValidate);\r\n\r\n for (const date of Object.keys(dayExcepts)) {\r\n const yearlyExcepts = dayExcepts[date]?.YEARLY || [];\r\n const checkExceptsConvergence = hasHoursConflicts(yearlyExcepts);\r\n if (checkExceptsConvergence.foundConvergence) {\r\n ans.hasConflict = true;\r\n if (checkExceptsConvergence.exceptsIds.length) {\r\n ans.exceptsIdToDelete = ans.exceptsIdToDelete.concat(checkExceptsConvergence.exceptsIds);\r\n }\r\n }\r\n checkNotYearlyExcept(dayExcepts, date, yearlyExcepts, ans);\r\n }\r\n ans.exceptsIdToDelete = ans.exceptsIdToDelete.filter((e) => e !== undefined);\r\n return ans;\r\n };\r\n\r\n const validateDalScheds = async (DEVICE_CODE: string, ILLUMINATION_ID: number, newScheds: ScheduleInfo[], newExceptions: ExceptionInfo[]) => {\r\n try {\r\n const { scheds, exceptions } = await apiCall('/dal/get-dal-scheds', { DAL_CODE: DEVICE_CODE, ILLUMINATION_ID });\r\n\r\n // validar novos + persisitidos\r\n const dalSchedValidation = checkDalSchedsCardsConflicts(newScheds, scheds);\r\n if (dalSchedValidation.hasConflict) {\r\n if (dalSchedValidation.schedsIdToEdit.length) {\r\n if (!state.dalSchedsToEdit[DEVICE_CODE]) state.dalSchedsToEdit[DEVICE_CODE] = {};\r\n state.dalSchedsToEdit[DEVICE_CODE][ILLUMINATION_ID] = dalSchedValidation.schedsIdToEdit;\r\n }\r\n render();\r\n }\r\n\r\n // validar novos + persisitidos\r\n const dalExceptsValidation = checkDalCardsExceptsConflicts(newExceptions, exceptions);\r\n if (dalExceptsValidation.hasConflict) {\r\n if (dalExceptsValidation.exceptsIdToDelete.length) {\r\n if (!state.dalExceptsToDelete[DEVICE_CODE]) state.dalExceptsToDelete[DEVICE_CODE] = {};\r\n state.dalExceptsToDelete[DEVICE_CODE][ILLUMINATION_ID] = [...new Set(dalExceptsValidation.exceptsIdToDelete)];\r\n render();\r\n }\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n }\r\n };\r\n\r\n const validateScheds = async () => {\r\n setState({\r\n isLoading: true,\r\n dalExceptsToDelete: {},\r\n dalSchedsToEdit: {},\r\n illumsWithConflict: [],\r\n });\r\n render();\r\n\r\n let foundConflict = false;\r\n\r\n for (const [illumId, { scheds, exceptions }] of Object.entries(state.illuminationScheds)) {\r\n const illum = state.illuminationList.find((illum) => illum.ILLUMINATION_ID === Number(illumId));\r\n try {\r\n // validar só persistidos/editados\r\n // @ts-ignore\r\n const checkJustPersistedAndEditedCards = checkDalSchedsCardsConflicts(scheds.filter((sched) => !sched.DELETE && !sched.INSERT));\r\n if (checkJustPersistedAndEditedCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumsWithConflict.includes(illumId)) {\r\n state.illumsWithConflict.push(illumId);\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as programações ${illum.NAME}. Alguns conflitos foram encontrados entre as programações já existentes e as programações já existentes que foram editadas.`);\r\n }\r\n\r\n try {\r\n // validar só novos\r\n // @ts-ignore\r\n const checkJustNewCards = checkDalSchedsCardsConflicts(scheds.filter((sched) => sched.INSERT && !sched.DELETE));\r\n if (checkJustNewCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumsWithConflict.includes(illumId)) {\r\n state.illumsWithConflict.push(illumId);\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as programações ${illum.NAME}. Alguns conflitos foram encontrados entre as programações novas inseridas.`);\r\n }\r\n\r\n try {\r\n // validar só persistidos/editados\r\n // @ts-ignore\r\n const checkJustPersistedAndEditedCards = checkDalCardsExceptsConflicts(exceptions.filter((except) => !except.DELETE && !except.INSERT));\r\n if (checkJustPersistedAndEditedCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumsWithConflict.includes(illumId)) {\r\n state.illumsWithConflict.push(illumId);\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as exceções ${illum.NAME}. Alguns conflitos foram encontrados entre as exceções já existentes e as exceções já existentes que foram editadas.`);\r\n }\r\n\r\n try {\r\n // validar só novos\r\n // @ts-ignore\r\n const checkJustNewCards = checkDalCardsExceptsConflicts(exceptions.filter((except) => except.INSERT && !except.DELETE));\r\n if (checkJustNewCards.hasConflict) throw new Error('');\r\n } catch (err) {\r\n foundConflict = true;\r\n if (!state.illumsWithConflict.includes(illumId)) {\r\n state.illumsWithConflict.push(illumId);\r\n render();\r\n }\r\n console.log(err);\r\n toast.error(`Não será possível salvar as exceções ${illum.NAME}. Alguns conflitos foram encontrados entre as exceções novas inseridas.`);\r\n }\r\n }\r\n\r\n // verificar o retorno\r\n\r\n // validate and save\r\n for (const [illumId, { scheds, exceptions }] of Object.entries(state.illuminationScheds)) {\r\n const illum = state.illuminationList.find((illum) => illum.ILLUMINATION_ID === Number(illumId));\r\n if (state.illumsWithConflict.includes(illumId)) continue;\r\n try {\r\n await validateDalScheds(state.devId, Number(illumId), scheds, exceptions);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(`Não será possível salvar programações/exceções ${illum.NAME || ''}.`);\r\n }\r\n }\r\n render();\r\n\r\n if (foundConflict && state.illuminationList.length === state.illumsWithConflict.length) {\r\n setState({\r\n isLoading: false,\r\n });\r\n render();\r\n return false;\r\n }\r\n // setState({\r\n // isLoading: false,\r\n // });\r\n return true;\r\n };\r\n\r\n const formatStringToDate = (str: string) => (`${str.substring(6, 10)}-${str.substring(3, 5)}-${str.substring(0, 2)}`);\r\n\r\n async function saveDalInfo() {\r\n let success = true;\r\n state.openModal = null;\r\n render();\r\n const illumErrors: number[] = [];\r\n try {\r\n // Desassocia iluminações que já estavam associadas\r\n for (const removed of state.deletionList) {\r\n try {\r\n await apiCall('/dal/set-dal-illumination', {\r\n ID: removed.ILLUMINATION_ID,\r\n NAME: removed.NAME,\r\n PORT: null,\r\n FEEDBACK: null,\r\n UNIT_ID: removed.UNIT_ID,\r\n });\r\n } catch (err) {\r\n success = false;\r\n console.log(err);\r\n toast.error(t('naoFoiPossivelDesassociarDevice', { device: removed.NAME }));\r\n }\r\n }\r\n\r\n // Edita associações de iluminações ou adiciona\r\n for (const ilumn of state.illuminationList) {\r\n try {\r\n const currIllumInfo = await apiCall('/dal/get-illumination-info', { ILLUMINATION_ID: ilumn.ILLUMINATION_ID });\r\n if (currIllumInfo.NAME !== ilumn.NAME\r\n || currIllumInfo.UNIT_ID !== ilumn.UNIT_ID\r\n || currIllumInfo.PORT !== ilumn.PORT?.port\r\n || currIllumInfo.FEEDBACK !== ilumn.FEEDBACK?.port\r\n || currIllumInfo.DEFAULT_MODE !== ilumn.DEFAULT_MODE\r\n || currIllumInfo.DAL_CODE !== state.devId\r\n ) {\r\n await apiCall('/dal/set-dal-illumination', {\r\n ID: ilumn.ILLUMINATION_ID,\r\n DAL_CODE: state.devId,\r\n NAME: ilumn.NAME,\r\n UNIT_ID: ilumn.UNIT_ID,\r\n PORT: ilumn.PORT?.port || null,\r\n FEEDBACK: ilumn.FEEDBACK?.port || null,\r\n DEFAULT_MODE: ilumn.DEFAULT_MODE || null,\r\n });\r\n }\r\n } catch (err) {\r\n illumErrors.push(ilumn.ILLUMINATION_ID);\r\n success = false;\r\n console.log(err);\r\n toast.error(t('naoFoiPossivelSalvarInfoDevice', { device: ilumn.NAME }));\r\n }\r\n }\r\n\r\n // Atualiza as programações necessárias\r\n for (const [illumId, { scheds, exceptions }] of Object.entries(state.illuminationScheds)) {\r\n if (illumErrors.includes(Number(illumId))) {\r\n continue;\r\n }\r\n\r\n const illum = state.illuminationList.find((illum) => illum.ILLUMINATION_ID === Number(illumId));\r\n const defaultIllum = dalInfo.dal.illuminationList.find((illumination) => illumination.ILLUMINATION_ID === Number(illumId));\r\n\r\n if (state.illumsWithConflict.includes(illumId)) {\r\n toast.error(`Como avisado previamente, não será possível salvar as programações/exceções do ${illum.NAME}. O utilitário foi ignorado, atenção aos conflitos de programação/exceção.`);\r\n continue;\r\n }\r\n\r\n const schedsToEdit = state.dalSchedsToEdit?.[state.devId]?.[illumId];\r\n const schedsToSend = [] as {\r\n DAL_CODE: string;\r\n ILLUMINATION_ID: number;\r\n SCHED_ID?: number;\r\n TITLE?: string;\r\n ACTIVE?: string;\r\n BEGIN_TIME?: string;\r\n END_TIME?: string;\r\n DAYS?: string;\r\n STATUS?: string;\r\n INSERT?: boolean;\r\n EDIT?: boolean;\r\n DELETE?: boolean\r\n }[];\r\n for (const sched of scheds) {\r\n const editInfo = schedsToEdit?.find((s) => s.schedId === sched.ID);\r\n if ((editInfo?.delete || sched.DELETE) && !sched.ID) continue;\r\n\r\n schedsToSend.push({\r\n DAL_CODE: state.devId,\r\n ILLUMINATION_ID: Number(illumId),\r\n SCHED_ID: sched.ID,\r\n TITLE: sched.TITLE,\r\n ACTIVE: sched.ACTIVE,\r\n BEGIN_TIME: sched.BEGIN_TIME,\r\n END_TIME: sched.END_TIME,\r\n DAYS: editInfo?.days || sched.DAYS,\r\n STATUS: sched.STATUS,\r\n INSERT: (editInfo?.delete || sched.DELETE) ? false : sched.INSERT,\r\n EDIT: (editInfo?.delete || sched.DELETE || sched.INSERT) ? false : (!!editInfo || sched.EDIT || illum.DEFAULT_MODE !== defaultIllum?.DEFAULT_MODE),\r\n DELETE: editInfo?.delete ? true : sched.DELETE, // ajustar\r\n });\r\n }\r\n\r\n const exceptsToDelete = state.dalExceptsToDelete?.[state.devId]?.[illumId];\r\n const exceptsToSend = [] as {\r\n EXCEPTION_ID?: number;\r\n DAL_CODE: string;\r\n ILLUMINATION_ID: number;\r\n TITLE?: string;\r\n ACTIVE?: string;\r\n BEGIN_TIME?: string;\r\n END_TIME?: string;\r\n EXCEPTION_DATE?: string;\r\n REPEAT_YEARLY?: string;\r\n STATUS?: string;\r\n INSERT?: boolean;\r\n DELETE?: boolean\r\n EDIT?: boolean;\r\n }[];\r\n\r\n for (const except of exceptions) {\r\n const hasToDelete = !!exceptsToDelete?.find((e) => e === except.ID);\r\n exceptsToSend.push({\r\n EXCEPTION_ID: except.ID,\r\n DAL_CODE: state.devId,\r\n ILLUMINATION_ID: Number(illumId),\r\n TITLE: except.TITLE,\r\n ACTIVE: except.ACTIVE,\r\n BEGIN_TIME: except.BEGIN_TIME,\r\n END_TIME: except.END_TIME,\r\n EXCEPTION_DATE: formatStringToDate(except.EXCEPTION_DATE),\r\n REPEAT_YEARLY: except.REPEAT_YEARLY,\r\n STATUS: except.STATUS,\r\n INSERT: (hasToDelete || except.DELETE) ? false : except.INSERT,\r\n DELETE: hasToDelete ? true : except.DELETE,\r\n EDIT: (hasToDelete || except.DELETE || except.INSERT) ? false : (except.EDIT || illum.DEFAULT_MODE !== defaultIllum?.DEFAULT_MODE),\r\n });\r\n }\r\n\r\n try {\r\n await apiCall('/dal/handle-multiple-illumination-sched', {\r\n ILLUMINATION_ID: illum.ILLUMINATION_ID, DAL_CODE: illum.DAL_CODE, SCHEDS: schedsToSend, EXCEPTIONS: exceptsToSend,\r\n });\r\n } catch (err) {\r\n success = false;\r\n console.log(err);\r\n toast.error(`Não foi possível salvar programações ${illum.NAME || ''}`);\r\n }\r\n }\r\n\r\n if (success) {\r\n history.push(`${state.linkBase}/${state.devId}/informacoes`);\r\n toast.success(t('sucessoSalvar'));\r\n }\r\n setState({ isLoading: false, illumsWithConflict: [] });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarInfo'));\r\n setState({ isLoading: false, illumsWithConflict: [] });\r\n }\r\n state.hasEdited = false;\r\n setState({ isLoading: false, illumsWithConflict: [] });\r\n }\r\n\r\n function clearForm() {\r\n state.selectedUtility = null;\r\n state.selectedPort = null;\r\n state.selectedFeedback = null;\r\n // handleHasEdited();\r\n }\r\n\r\n async function associateNewIllumination() {\r\n if (state.replaceIllum) handleRemoveIllum(state.replaceIllum.ILLUMINATION_ID);\r\n const utilIndex = state.utilitiesOpts.findIndex((opt) => opt.value === state.selectedUtility);\r\n const selectedUtility = utilIndex > -1 ? state.utilitiesOpts.splice(utilIndex, 1)[0] : null;\r\n if (selectedUtility) {\r\n state.illuminationList.push({\r\n ...selectedUtility,\r\n ILLUMINATION_ID: selectedUtility.value,\r\n DAL_CODE: state.devId,\r\n PORT: state.selectedPort ?? null,\r\n FEEDBACK: state.selectedFeedback ?? null,\r\n UNIT_ID: state.selectedUnit,\r\n isNew: true,\r\n });\r\n if (state.selectedPort) {\r\n state.selectedPort.associated = true;\r\n state.selectedPort.illuminationId = Number(selectedUtility.value);\r\n }\r\n if (state.selectedFeedback) {\r\n state.selectedFeedback.associated = true;\r\n state.selectedFeedback.illuminationId = Number(selectedUtility.value);\r\n }\r\n state.deletionList = state.deletionList.filter((x) => x.ILLUMINATION_ID !== selectedUtility.value);\r\n }\r\n openModal(null);\r\n handleHasEdited();\r\n }\r\n\r\n function openModal(shouldOpen: string | null, illum?) {\r\n if (illum) {\r\n state.replaceIllum = illum;\r\n state.selectedUtility = illum.ILLUMINATION_ID;\r\n state.selectedPort = illum.PORT;\r\n state.selectedFeedback = illum.FEEDBACK;\r\n } else {\r\n state.replaceIllum = null;\r\n clearForm();\r\n }\r\n state.openModal = shouldOpen ? 'edit-utilities' : null;\r\n render();\r\n }\r\n function handlePortChange(illumId, type, oldPort, selectedPort) {\r\n const old = state[type]?.find((port) => port.port === oldPort);\r\n if (old) {\r\n old.associated = false;\r\n old.illuminationId = undefined;\r\n }\r\n const selected = state[type]?.find((port) => port.port === selectedPort);\r\n if (selected) {\r\n selected.associated = true;\r\n selected.illuminationId = illumId;\r\n }\r\n handleHasEdited();\r\n render();\r\n }\r\n\r\n function handleRemoveIllum(illumId) {\r\n const illumIndex = state.illuminationList.findIndex((x) => x.ILLUMINATION_ID === illumId);\r\n const removedIllum = illumIndex > -1 ? state.illuminationList.splice(illumIndex, 1)[0] : null;\r\n if (removedIllum) {\r\n delete state.illuminationScheds[removedIllum.ILLUMINATION_ID];\r\n state.utilitiesOpts.push({ ...removedIllum, name: removedIllum.NAME, value: removedIllum.ILLUMINATION_ID });\r\n if (dalInfo.dal.illuminationList.find((illum) => illum.ILLUMINATION_ID === removedIllum.ILLUMINATION_ID)) {\r\n state.deletionList.push(removedIllum);\r\n }\r\n }\r\n handleHasEdited();\r\n render();\r\n }\r\n\r\n function handleSchedChanges(illumId, scheds, exceptions) {\r\n state.illuminationScheds[illumId] = {\r\n scheds,\r\n exceptions,\r\n };\r\n render();\r\n }\r\n\r\n function editDefaultMode(defaultMode, illuminationId) {\r\n state.illuminationList.map((illum) => {\r\n if (illum.ILLUMINATION_ID === illuminationId) {\r\n illum.DEFAULT_MODE = defaultMode;\r\n }\r\n });\r\n render();\r\n }\r\n\r\n function handleHasEdited() {\r\n state.hasEdited = true;\r\n render();\r\n }\r\n\r\n const handleSaveSched = async () => {\r\n try {\r\n const valid = await validateScheds();\r\n render();\r\n if (valid) {\r\n state.openModal = 'saving-confirmation';\r\n render();\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n setState({ isLoading: false });\r\n }\r\n };\r\n\r\n return (\r\n <>\r\n \r\n {(state.openModal === 'saving-confirmation') && (\r\n\r\n setState({ openModal: null, isLoading: false })}>\r\n {state.openModal === 'saving-confirmation'\r\n && (\r\n \r\n \r\n \r\n \r\n

{t('desejaSalvar')}

\r\n
\r\n
    \r\n {Object.keys(state.dalSchedsToEdit).length !== 0 &&
  • {t('alertaSubstituicaoSchedDal')}
  • }\r\n {Object.keys(state.dalExceptsToDelete).length !== 0 &&
  • {t('alertaSubstituicaoExceptDal')}
  • }\r\n
\r\n \r\n \r\n {t('prosseguir')}\r\n \r\n setState({ openModal: null, isLoading: false })}>\r\n {t('cancelar')}\r\n \r\n \r\n
\r\n
\r\n )}\r\n
\r\n )}\r\n {state.openModal === 'edit-utilities' && (\r\n openModal(null)} style={{ width: '600px', padding: 20 }}>\r\n \r\n {`${state.replaceIllum ? t('substituir') : t('adicionar')} ${t('utilitario')}`}\r\n \r\n
\r\n \r\n { state.selectedClient = item; state.clientChanged = true; render(); }}\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecioneCliente')}\r\n closeOnSelect\r\n disabled={!!state.selectedClient && state.illuminationList.length}\r\n />\r\n
\r\n
\r\n \r\n
\r\n \r\n { state.selectedUnit = item; state.unitChanged = true; render(); }}\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecioneUnidade')}\r\n closeOnSelect\r\n disabled={!!state.selectedUnit && state.illuminationList.length}\r\n />\r\n
\r\n
\r\n\r\n \r\n \r\n
\r\n \r\n { state.selectedUtility = item; render(); }}\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecionar')}\r\n closeOnSelect\r\n />\r\n
\r\n
\r\n\r\n
\r\n {\r\n state.selectedPort = item;\r\n render();\r\n }}\r\n style={{\r\n width: '100%',\r\n }}\r\n />\r\n
\r\n\r\n
\r\n {\r\n state.selectedFeedback = item;\r\n render();\r\n }}\r\n />\r\n
\r\n
\r\n\r\n \r\n openModal(null)}>{t('botaoFechar')}\r\n\r\n \r\n {`${t('adicionar')}`}\r\n \r\n \r\n
\r\n
\r\n )}\r\n {state.isLoading && }\r\n {!state.isLoading && (\r\n\r\n \r\n \r\n \r\n {t('dispositivo')}\r\n {state.devId}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {t('informacoes')}\r\n \r\n \r\n {t('estado')}\r\n
\r\n {state.dalInfo.STATE_ID || '-'}\r\n
\r\n\r\n \r\n {t('cidade')}\r\n
\r\n {state.dalInfo.CITY_NAME || '-'}\r\n
\r\n\r\n \r\n {t('cliente')}\r\n
\r\n {state.dalInfo.CLIENT_NAME || '-'}\r\n
\r\n\r\n \r\n {t('unidade')}\r\n
\r\n {state.dalInfo.UNIT_NAME || '-'}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n {t('associacoes')}\r\n \r\n \r\n {t('utilitariosAssociados')}\r\n
\r\n {state.illuminationList.length === 1 && `${state.illuminationList.length} ${t('utilitario')}`}\r\n {state.illuminationList.length > 1 && `${state.illuminationList.length} ${t('utilitarios')}`}\r\n {!state.illuminationList.length && t('nenhumUtilitarioAssociado')}\r\n
\r\n
\r\n
\r\n\r\n \r\n openModal('edit-utilities')}\r\n variant={isOverLimit() ? 'disabled' : 'primary'}\r\n disabled={isOverLimit()}\r\n >\r\n {`${t('adicionar')}`}\r\n \r\n\r\n {isOverLimit() && (\r\n \r\n \r\n Limite máximo\r\n de 4 utilitários por DAL já atingido\r\n \r\n \r\n )}\r\n \r\n
\r\n\r\n {!state.illuminationList.length && (\r\n \r\n
{t('nenhumUtilitarioAssociadoDal')}
\r\n \r\n )}\r\n\r\n {state.illuminationList?.map((illum) => (\r\n \r\n ))}\r\n\r\n \r\n \r\n {`${t('salvar')}`}\r\n \r\n\r\n history.push(`${state.linkBase}/${state.devId}/informacoes`)}>{t('cancelar')}\r\n \r\n \r\n )}\r\n { await saveDalInfo(); state.hasEdited = false; return true; }}\r\n onQuit={() => { state.hasEdited = false; render(); return true; }}\r\n />\r\n \r\n \r\n );\r\n};\r\n\r\nconst IllumItem = ({\r\n dalCode, illumInfo, portsList, handlePortChange, feedbacksList, handleRemoveIllum, schedChanges, replace, handleDefaultMode, handleHasEdited, larguraPage,\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n loading: false,\r\n portsList,\r\n feedbacksList,\r\n exceededExceptionLimit: false,\r\n });\r\n\r\n function filterIllumPortOpts(illumId) {\r\n const opts = state.portsList.map((port) => ({\r\n ...port,\r\n associated: port.illuminationId === illumId ? false : port.associated,\r\n }));\r\n return opts;\r\n }\r\n\r\n function filterIllumFeedbackOpts(illumId) {\r\n const opts = state.feedbacksList.map((port) => ({\r\n ...port,\r\n associated: port.illuminationId === illumId ? false : port.associated,\r\n }));\r\n return opts;\r\n }\r\n\r\n async function clearPort() {\r\n handlePortChange(illumInfo.ILLUMINATION_ID, 'ports', illumInfo.PORT?.port);\r\n handlePortChange(illumInfo.ILLUMINATION_ID, 'feedbacks', illumInfo.FEEDBACK?.port);\r\n illumInfo.PORT = null;\r\n illumInfo.FEEDBACK = null;\r\n }\r\n\r\n async function removeIllumAssociation() {\r\n clearPort();\r\n handleRemoveIllum(illumInfo.ILLUMINATION_ID);\r\n }\r\n\r\n function handleSchedChanges(scheds, exceptions) {\r\n schedChanges(illumInfo.ILLUMINATION_ID, scheds, exceptions);\r\n }\r\n\r\n function editDefaultMode(defaultMode, illuminationId) {\r\n handleDefaultMode(defaultMode, illuminationId);\r\n }\r\n\r\n function changeHasEdited() {\r\n handleHasEdited();\r\n }\r\n\r\n return (\r\n \r\n 767 ? 'row' : 'column'}>\r\n 767 ? '70%' : '100%'} style={{ position: 'relative' }}>\r\n \r\n \r\n \r\n {illumInfo.NAME}\r\n \r\n replace(true, illumInfo)}>{t('substituir')}\r\n \r\n {\r\n larguraPage <= 767 && (\r\n \r\n \r\n
\r\n )\r\n }\r\n
\r\n 767 ? 'flex-end' : 'space-between'} style={{ gap: 20, paddingRight: 10, marginRight: 20 }} flexWrap=\"wrap\">\r\n \r\n {illumInfo.PORT && (\r\n { setState({ exceededExceptionLimit: value }); render(); }} />\r\n )}\r\n \r\n 437 ? 'auto' : '100%' }}>\r\n 437 ? '150px' : '100%' }}>\r\n 437 ? t('portaDoDal') : t('porta')}\r\n placeholder={t('selecionar')}\r\n options={filterIllumPortOpts(illumInfo.ILLUMINATION_ID)}\r\n propLabel=\"label\"\r\n value={illumInfo.PORT || ''}\r\n hideSelected\r\n onSelect={(item) => {\r\n handlePortChange(illumInfo.ILLUMINATION_ID, 'ports', illumInfo.PORT?.port, item.port);\r\n illumInfo.PORT = item;\r\n render();\r\n }}\r\n disabled={state.loading}\r\n />\r\n {t('limpar')}\r\n \r\n\r\n
437 ? '150px' : '100%' }}>\r\n 437 ? t('feedbackDoDal') : t('feedback')}\r\n placeholder={t('selecionar')}\r\n options={filterIllumFeedbackOpts(illumInfo.ILLUMINATION_ID)}\r\n propLabel=\"label\"\r\n value={illumInfo.FEEDBACK || ''}\r\n hideSelected\r\n onSelect={(item) => {\r\n handlePortChange(illumInfo.ILLUMINATION_ID, 'feedbacks', illumInfo.FEEDBACK?.port, item.port);\r\n illumInfo.FEEDBACK = item;\r\n render();\r\n }}\r\n disabled={state.loading}\r\n />\r\n
\r\n
\r\n
\r\n {\r\n larguraPage > 767 && (\r\n \r\n )\r\n }\r\n
\r\n
\r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { Flex } from 'reflexbox';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport {\r\n Button, ModalWindow,\r\n} from '~/components';\r\nimport {\r\n Title,\r\n InfoItem,\r\n BtnClean,\r\n CustomInput,\r\n Label,\r\n StyledLink,\r\n} from './styles';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { useTranslation, Trans } from 'react-i18next';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { apiCall } from '~/providers';\r\nimport {\r\n EletricNetworkIcon,\r\n UtilityIcon,\r\n} from 'icons';\r\nimport { SelectDMTport } from 'components/SelectDmtPort';\r\nimport { SmallTrashIcon } from '~/icons/Trash';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const EditDmtInfo = ({ dmtInfo }): JSX.Element => {\r\n const match = useRouteMatch<{ devId: string }>();\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n const handleProp = (prop) => (prop || '-');\r\n const [state, render, setState] = useStateVar({\r\n devId: dmtInfo.DEV_ID,\r\n dmtInfo,\r\n linkBase: match.url.split(`/${match.params.devId}`)[0],\r\n utilitiesList: dmtInfo.dmt.utilitiesList,\r\n ports: [] as {\r\n label: string,\r\n associated: boolean,\r\n port: number,\r\n illuminationId?: number,\r\n nobreakId?: number,\r\n eletricCircuitId?: number,\r\n }[],\r\n portsToEdit: [] as {\r\n label: string,\r\n associated: boolean,\r\n port: number,\r\n illuminationId?: number,\r\n nobreakId?: number,\r\n eletricCircuitId?: number,\r\n }[],\r\n application: null as any,\r\n openModal: false,\r\n openDeleteModal: false,\r\n clientsOpts: [] as { name: string, value: number|string }[],\r\n selectedClient: dmtInfo.CLIENT_ID || null as any,\r\n unitsOpts: [] as { name: string, value: number|string, STATE_ID?: string, CITY_NAME?: string, UNIT_NAME?: string, CLIENT_NAME?: string }[],\r\n selectedUnit: dmtInfo.UNIT_ID || null as any,\r\n utilitiesOpts: [] as { name: string, value: number|string, datCode?: string }[],\r\n selectedUtility: null as any,\r\n selectedPort: null as null|number,\r\n selectedElectricNetwork: null as null|number,\r\n replaceUtility: null as any,\r\n replaceUtilityIdx: null as number|null,\r\n clientChanged: false,\r\n unitChanged: false,\r\n deleteUtility: null as any,\r\n deleteUtilityIdx: null as number|null,\r\n width: window.innerWidth,\r\n mobile: window.innerWidth < 650,\r\n stateId: handleProp(dmtInfo.STATE_ID),\r\n cityName: handleProp(dmtInfo.CITY_NAME),\r\n unitName: handleProp(dmtInfo.UNIT_NAME),\r\n clientName: handleProp(dmtInfo.CLIENT_NAME),\r\n });\r\n\r\n const updateDimensions = () => {\r\n state.width = window.innerWidth;\r\n if (window.innerWidth < 650) {\r\n state.mobile = true;\r\n } else {\r\n state.mobile = false;\r\n }\r\n render();\r\n };\r\n\r\n useEffect(() => {\r\n window.addEventListener('resize', updateDimensions);\r\n return () => window.removeEventListener('resize', updateDimensions);\r\n }, []);\r\n\r\n const getUtilitiesOpts = async () => {\r\n const utilites = await apiCall('/dmt/get-dmt-utilities-list', { CLIENT_ID: state.selectedClient });\r\n const utilitiesFromUnit = utilites.filter((util) => util.UNIT_ID === state.selectedUnit);\r\n if (state.application === t('nobreak')) {\r\n const associateds = state.utilitiesList.filter((util) => util.APPLICATION === 'Nobreak' && (!util.DISSOCIATE || util.INSERT)).map((util) => util.NOBREAK_ID);\r\n const dissociateds = state.utilitiesList.filter((util) => util.APPLICATION === 'Nobreak' && util.DISSOCIATE).map((util) => util.NOBREAK_ID);\r\n state.utilitiesOpts = utilitiesFromUnit.filter((util) => util.APPLICATION === 'Nobreak' && (((!associateds.includes(util.ID) && !util.DMT_CODE)) || dissociateds.includes(util.ID) || (state.replaceUtility && state.replaceUtility.APPLICATION === 'Nobreak' && state.replaceUtility.NOBREAK_ID === util.ID))).map((item) => ({ name: item.NAME, value: item.ID, datCode: item.DAT_CODE }));\r\n } else if (state.application === t('iluminacao')) {\r\n const associateds = state.utilitiesList.filter((util) => util.APPLICATION === 'Illumination' && (!util.DISSOCIATE || util.INSERT)).map((util) => util.ILLUMINATION_ID);\r\n const dissociateds = state.utilitiesList.filter((util) => util.APPLICATION === 'Illumination' && util.DISSOCIATE).map((util) => util.ILLUMINATION_ID);\r\n state.utilitiesOpts = utilitiesFromUnit.filter((util) => util.APPLICATION === 'Illumination' && (((!associateds.includes(util.ID) && !util.DMT_CODE)) || dissociateds.includes(util.ID) || (state.replaceUtility && state.replaceUtility.APPLICATION === 'Illumination' && state.replaceUtility.ILLUMINATION_ID === util.ID))).map((item) => ({ name: item.NAME, value: item.ID }));\r\n }\r\n };\r\n\r\n const getUnitOpts = async () => {\r\n const units = await apiCall('/clients/get-units-list', { CLIENT_ID: state.selectedClient });\r\n if (state.clientChanged) {\r\n state.selectedUnit = null;\r\n }\r\n state.unitsOpts = units.map((units) => ({\r\n name: units.UNIT_NAME, value: units.UNIT_ID, STATE_ID: units.STATE_ID, CLIENT_NAME: units.CLIENT_NAME, UNIT_NAME: units.UNIT_NAME, CITY_NAME: units.CITY_NAME,\r\n }));\r\n };\r\n\r\n const setUnitInfo = () => {\r\n const unitInfo = state.unitsOpts.find((unit) => (unit.value === state.selectedUnit));\r\n if (unitInfo) {\r\n state.stateId = unitInfo.STATE_ID;\r\n state.clientName = unitInfo.CLIENT_NAME;\r\n state.unitName = unitInfo.UNIT_NAME;\r\n state.cityName = unitInfo.CITY_NAME;\r\n }\r\n };\r\n\r\n const setDefaultElectricNetworkPort = () => {\r\n const numberOfNobreaks = state.utilitiesList.filter((util) => !util.DISSOCIATE && util.APPLICATION === 'Nobreak').length - (state.replaceUtility && state.replaceUtility.APPLICATION === 'Nobreak' ? 1 : 0);\r\n if (state.application === t('nobreak') && numberOfNobreaks === 0) {\r\n const defaultPort = !state.portsToEdit[3].associated ? 4 : null;\r\n if (defaultPort && !state.selectedElectricNetwork) {\r\n state.selectedElectricNetwork = defaultPort;\r\n state.portsToEdit[3].associated = true;\r\n state.portsToEdit[3].eletricCircuitId = -1;\r\n }\r\n } else {\r\n state.selectedElectricNetwork = null;\r\n }\r\n };\r\n\r\n const setElectricNetwork = () => {\r\n const electricNetworkIdx = state.utilitiesList.findIndex((util) => (util.APPLICATION === 'Electric Network' && !util.DISSOCIATE));\r\n if (electricNetworkIdx >= 0) {\r\n state.selectedElectricNetwork = state.utilitiesList[electricNetworkIdx].PORT;\r\n } else {\r\n setDefaultElectricNetworkPort();\r\n }\r\n };\r\n\r\n const setSelectedValues = () => {\r\n if (!state.replaceUtility) {\r\n state.selectedUtility = null;\r\n state.selectedPort = null;\r\n } else {\r\n const application = state.application === t('nobreak') ? 'Nobreak' : 'Illumination';\r\n if (state.replaceUtility.APPLICATION !== application) {\r\n state.selectedUtility = null;\r\n }\r\n state.selectedPort = state.replaceUtility.PORT;\r\n }\r\n };\r\n\r\n const fetchClientData = async () => {\r\n try {\r\n if (!state.clientsOpts.length) {\r\n const { list: clients } = await apiCall('/clients/get-clients-list', {});\r\n state.clientsOpts = clients.map((client) => ({ name: client.NAME, value: client.CLIENT_ID }));\r\n }\r\n if ((state.selectedClient && !state.unitsOpts.length) || state.clientChanged) {\r\n await getUnitOpts();\r\n if (state.selectedClient) {\r\n await getDmtPortsInfo();\r\n }\r\n state.clientChanged = false;\r\n }\r\n if ((state.selectedUnit && !state.utilitiesOpts.length) || state.unitChanged || state.application) {\r\n await getUtilitiesOpts();\r\n setUnitInfo();\r\n setSelectedValues();\r\n state.portsToEdit = JSON.parse(JSON.stringify(state.ports));\r\n setElectricNetwork();\r\n state.unitChanged = false;\r\n }\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n }\r\n };\r\n\r\n function isOverLimit() {\r\n let hasNobreak = false;\r\n state.utilitiesList.forEach((util) => { if (util.APPLICATION === 'Nobreak' && !util.DISSOCIATE) { hasNobreak = true; } });\r\n if (hasNobreak) {\r\n return state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length >= 3;\r\n }\r\n return state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length >= 4;\r\n }\r\n\r\n async function getDmtPortsInfo() {\r\n const portsInfo = await apiCall('/dmt/get-dmt-ports-info', { DMT_CODE: state.devId, CLIENT_ID: state.selectedClient, NEW_UTILITY_TYPE: undefined });\r\n setState({\r\n ...state,\r\n ports: portsInfo.ports.map((port) => { if (state.selectedUtility && port.nobreakId === state.selectedUtility) { port.associated = false; } return port; }),\r\n });\r\n }\r\n\r\n useEffect(() => {\r\n fetchClientData();\r\n }, [state.selectedClient, state.selectedUnit, state.application]);\r\n\r\n useEffect(() => {\r\n const numberOfNobreaks = state.utilitiesList.filter((util) => (!util.DISSOCIATE && util.APPLICATION === 'Nobreak')).length;\r\n const hasElectricNetwork = !!state.utilitiesList.filter((util) => (util.APPLICATION === 'Electric Network')).length;\r\n if (numberOfNobreaks > 0 && !hasElectricNetwork) {\r\n state.utilitiesList = [{\r\n APPLICATION: 'Electric Network',\r\n DMT_CODE: state.devId,\r\n UNIT_ID: state.selectedUnit,\r\n PORT: state.selectedElectricNetwork,\r\n INSERT: true,\r\n }].concat(state.utilitiesList);\r\n }\r\n getDmtPortsInfo();\r\n }, []);\r\n\r\n async function saveDmtInfo() {\r\n try {\r\n await apiCall('/dmt/set-dmt-utilities', {\r\n DMT_CODE: state.devId,\r\n UNIT_ID: state.selectedUnit || dmtInfo.UNIT_ID,\r\n utilities: state.utilitiesList,\r\n });\r\n toast.success(t('sucessoSalvar'));\r\n history.push(`${state.linkBase}/${state.devId}/informacoes`);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarInfo'));\r\n }\r\n }\r\n\r\n function clearForm() {\r\n if (!state.dmtInfo.CLIENT_ID && !state.utilitiesList.length) state.selectedClient = null;\r\n if (!state.dmtInfo.UNIT_ID && !state.utilitiesList.length) state.selectedUnit = null;\r\n state.selectedUtility = null;\r\n state.selectedPort = null;\r\n state.application = null;\r\n state.selectedElectricNetwork = null;\r\n }\r\n\r\n const getNumberOfNobreaks = () => state.utilitiesList.filter((util) => !util.DISSOCIATE && util.APPLICATION === 'Nobreak').length - (state.replaceUtility && state.replaceUtility.APPLICATION === 'Nobreak' ? 1 : 0);\r\n\r\n const validateParams = () => {\r\n if (!state.selectedClient) {\r\n toast.error(t('necessarioSelecCliente'));\r\n return false;\r\n }\r\n if (!state.selectedUnit) {\r\n toast.error(t('necessarioSelecUnidade'));\r\n return false;\r\n }\r\n if (!state.application) {\r\n toast.error(t('necessarioSelecAplicacao'));\r\n return false;\r\n }\r\n if (!state.selectedUtility) {\r\n toast.error(t('necessarioSelecUtilitario'));\r\n return false;\r\n }\r\n const numberOfNobreaks = getNumberOfNobreaks();\r\n if (numberOfNobreaks >= 3) {\r\n toast.error(t('impossivelAssociarMaisUtilitariosNobreak'));\r\n return false;\r\n }\r\n const numberOfIlluminations = state.utilitiesList.filter((util) => !util.DISSOCIATE && util.APPLICATION === 'Illumination').length - (state.replaceUtility && state.replaceUtility.APPLICATION === 'Illumination' ? 1 : 0);\r\n if (numberOfNobreaks + (numberOfNobreaks ? 1 : 0) + numberOfIlluminations >= (state.application === t('nobreak') && numberOfNobreaks === 0 ? 3 : 4)) {\r\n toast.error(t('impossivelAssociarMaisUtilitarios'));\r\n return false;\r\n }\r\n return true;\r\n };\r\n\r\n const handleNewElectricNetwork = () => {\r\n const numberOfNobreaks = getNumberOfNobreaks();\r\n if (numberOfNobreaks === 0) {\r\n if (state.utilitiesList.findIndex((util) => (util.APPLICATION === 'Electric Network')) >= 0) {\r\n state.utilitiesList.forEach((util) => { if (util.APPLICATION === 'Electric Network') { util.DISSOCIATE = false; util.PORT = state.selectedElectricNetwork; } });\r\n } else {\r\n state.utilitiesList = [{\r\n APPLICATION: 'Electric Network',\r\n DMT_CODE: state.devId,\r\n UNIT_ID: state.selectedUnit,\r\n PORT: state.selectedElectricNetwork,\r\n INSERT: true,\r\n }].concat(state.utilitiesList);\r\n }\r\n } else {\r\n state.utilitiesList.forEach((util) => { if (util.APPLICATION === 'Electric Network') util.PORT = state.selectedElectricNetwork; });\r\n }\r\n if (state.selectedElectricNetwork) {\r\n state.ports[state.selectedElectricNetwork - 1].associated = true;\r\n state.ports[state.selectedElectricNetwork - 1].eletricCircuitId = -1;\r\n state.ports[state.selectedElectricNetwork - 1].illuminationId = undefined;\r\n state.ports[state.selectedElectricNetwork - 1].nobreakId = undefined;\r\n }\r\n };\r\n\r\n const getNonAssociatedUtilities = async () => {\r\n const utilites = await apiCall('/dmt/get-dmt-utilities-list', { CLIENT_ID: state.selectedClient });\r\n const application = state.application === t('nobreak') ? 'Nobreak' : 'Illumination';\r\n return utilites.filter((util) => util.UNIT_ID === state.selectedUnit && util.APPLICATION === application && !util.DMT_CODE).map((util) => util.ID);\r\n };\r\n\r\n const handleNewUtility = async () => {\r\n const selectedUtility = state.utilitiesOpts.find((opt) => opt.value === state.selectedUtility);\r\n if (!selectedUtility) return;\r\n\r\n const application = state.application === t('nobreak') ? 'Nobreak' : 'Illumination';\r\n const nonAssociatedUtilities = await getNonAssociatedUtilities();\r\n if (nonAssociatedUtilities.includes(Number(selectedUtility.value))) {\r\n state.utilitiesList.push({\r\n NOBREAK_ID: state.application === t('nobreak') ? Number(selectedUtility.value) : undefined,\r\n ILLUMINATION_ID: state.application === t('iluminacao') ? Number(selectedUtility.value) : undefined,\r\n NAME: selectedUtility.name,\r\n DMT_CODE: state.devId,\r\n PORT: state.selectedPort,\r\n UNIT_ID: state.selectedUnit,\r\n DAT_CODE: selectedUtility.datCode,\r\n INSERT: true,\r\n APPLICATION: application,\r\n });\r\n } else {\r\n state.utilitiesList.forEach((util) => {\r\n if ((util.APPLICATION === application && util.NOBREAK_ID === Number(selectedUtility.value))\r\n || (util.APPLICATION === application && util.ILLUMINATION_ID === Number(selectedUtility.value))) { util.DISSOCIATE = false; util.PORT = state.selectedPort; }\r\n });\r\n }\r\n\r\n setNewUtilityPort();\r\n };\r\n const setNewUtilityPort = () => {\r\n const selectedUtility = state.utilitiesOpts.find((opt) => opt.value === state.selectedUtility);\r\n if (state.selectedPort && selectedUtility) {\r\n state.ports[state.selectedPort - 1].eletricCircuitId = undefined;\r\n state.ports[state.selectedPort - 1].associated = true;\r\n if (state.application === t('nobreak')) {\r\n state.ports[state.selectedPort - 1].illuminationId = undefined;\r\n state.ports[state.selectedPort - 1].nobreakId = Number(selectedUtility.value);\r\n } else if (state.application === t('iluminacao')) {\r\n state.ports[state.selectedPort - 1].illuminationId = Number(selectedUtility.value);\r\n state.ports[state.selectedPort - 1].nobreakId = undefined;\r\n }\r\n }\r\n };\r\n async function associateNewUtility() {\r\n try {\r\n if (!validateParams()) return;\r\n state.ports = JSON.parse(JSON.stringify(state.portsToEdit));\r\n state.portsToEdit = [];\r\n\r\n if (state.replaceUtility) {\r\n deleteUtility(state.replaceUtility, state.replaceUtilityIdx);\r\n }\r\n const selectedUtility = state.utilitiesOpts.find((opt) => opt.value === state.selectedUtility);\r\n if (selectedUtility) {\r\n if (state.application === t('nobreak')) {\r\n handleNewElectricNetwork();\r\n render();\r\n }\r\n await handleNewUtility();\r\n render();\r\n }\r\n openModal(false, false);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('naoFoiPossivelAssociarUtilitario'));\r\n }\r\n }\r\n\r\n function openModal(shouldOpen: boolean, cancel?: boolean, utility?, utilityIdx?) {\r\n if (utility) {\r\n state.replaceUtility = utility;\r\n state.replaceUtilityIdx = utilityIdx;\r\n if (utility.APPLICATION === 'Nobreak') {\r\n state.application = t('nobreak');\r\n state.selectedUtility = utility.NOBREAK_ID;\r\n state.selectedPort = utility.PORT;\r\n } else if (utility.APPLICATION === 'Illumination') {\r\n state.application = t('iluminacao');\r\n state.selectedUtility = utility.ILLUMINATION_ID;\r\n state.selectedPort = utility.PORT;\r\n }\r\n render();\r\n } else {\r\n state.replaceUtility = null;\r\n state.replaceUtilityIdx = null;\r\n clearForm();\r\n }\r\n const electricNetworkIdx = state.utilitiesList.findIndex((util) => (util.APPLICATION === 'Electric Network' && !util.DISSOCIATE));\r\n if (electricNetworkIdx >= 0) {\r\n state.selectedElectricNetwork = state.utilitiesList[electricNetworkIdx].PORT;\r\n }\r\n if (shouldOpen) {\r\n state.portsToEdit = JSON.parse(JSON.stringify(state.ports));\r\n } else if (cancel) {\r\n state.portsToEdit = [];\r\n if (!state.utilitiesList.length) {\r\n state.unitsOpts = [];\r\n state.stateId = null;\r\n state.cityName = null;\r\n state.unitName = null;\r\n state.clientName = null;\r\n state.selectedClient = dmtInfo.CLIENT_ID || null;\r\n state.selectedUnit = dmtInfo.UNIT_ID || null;\r\n }\r\n }\r\n state.openModal = shouldOpen;\r\n render();\r\n }\r\n\r\n function openDeleteModal(shouldOpen: boolean, utilityInfo?, utilityListIdx?) {\r\n if (shouldOpen) {\r\n state.deleteUtility = utilityInfo;\r\n state.deleteUtilityIdx = utilityListIdx;\r\n } else {\r\n state.deleteUtility = null;\r\n state.deleteUtilityIdx = null;\r\n }\r\n state.openDeleteModal = shouldOpen;\r\n render();\r\n }\r\n\r\n const clearUnitInfo = () => {\r\n if (!state.utilitiesList.filter((util) => (!util.DISSOCIATE && dmtInfo.UNIT_ID && dmtInfo.UNIT_ID === util.UNIT_ID || util.INSERT)).length) {\r\n state.stateId = null;\r\n state.cityName = null;\r\n state.unitName = null;\r\n state.clientName = null;\r\n }\r\n };\r\n\r\n const removeElectricNetwork = () => {\r\n const electricCircuitIdx = state.utilitiesList.findIndex((util) => (util.APPLICATION === 'Electric Network' && !util.DISSOCIATE && util.INSERT === true));\r\n if (electricCircuitIdx >= 0) {\r\n state.utilitiesList.splice(electricCircuitIdx, 1);\r\n }\r\n };\r\n\r\n const dissociateElectricNetwork = () => {\r\n state.utilitiesList.forEach((util) => {\r\n if (util.APPLICATION === 'Electric Network' && util.CIRCUIT_ID) { util.DISSOCIATE = true; util.PORT = null; }\r\n });\r\n state.ports.forEach((port) => {\r\n if (port.eletricCircuitId) { port.associated = false; port.eletricCircuitId = undefined; }\r\n return port;\r\n });\r\n };\r\n\r\n function deleteUtility(utilityInfo, utilityListIdx) {\r\n utilityInfo.DISSOCIATE = true;\r\n utilityInfo.PORT = null;\r\n state.ports.forEach((port) => {\r\n if ((utilityInfo.APPLICATION === 'Nobreak' && port.nobreakId === utilityInfo.NOBREAK_ID)\r\n || (utilityInfo.APPLICATION === 'Illumination' && port.illuminationId === utilityInfo.ILLUMINATION_ID)\r\n ) { port.associated = false; port.nobreakId = undefined; port.illuminationId = undefined; }\r\n\r\n return port;\r\n });\r\n\r\n let hasNobreak = false;\r\n state.utilitiesList.forEach((util) => {\r\n if (util.APPLICATION === 'Nobreak' && !util.DISSOCIATE) hasNobreak = true;\r\n });\r\n if (!hasNobreak) {\r\n dissociateElectricNetwork();\r\n }\r\n\r\n if (utilityInfo.INSERT) {\r\n state.utilitiesList.splice(utilityListIdx, 1);\r\n }\r\n render();\r\n if (!hasNobreak) {\r\n removeElectricNetwork();\r\n }\r\n\r\n clearUnitInfo();\r\n\r\n render();\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {t('dispositivo')}\r\n {state.devId}\r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n {t('informacoes')}\r\n \r\n\r\n \r\n {t('estado')}\r\n
\r\n {state.stateId || '-'}\r\n
\r\n\r\n \r\n {t('cidade')}\r\n
\r\n {state.cityName || '-'}\r\n
\r\n\r\n \r\n {t('cliente')}\r\n
\r\n {state.clientName || '-'}\r\n
\r\n\r\n \r\n {t('unidade')}\r\n
\r\n {state.unitName || '-'}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n {t('associacoes')}\r\n \r\n \r\n {t('utilitariosAssociados')}\r\n
\r\n {state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length === 1 && `${state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length} ${t('utilitario')}`}\r\n {state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length > 1 && `${state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length} ${t('utilitarios')}`}\r\n {!state.utilitiesList.filter((util) => util.APPLICATION !== 'Electric Network' && !util.DISSOCIATE).length && t('nenhumUtilitarioAssociado')}\r\n
\r\n
\r\n
\r\n\r\n \r\n openModal(true, false)}\r\n variant={isOverLimit() ? 'disabled' : 'primary'}\r\n disabled={isOverLimit()}\r\n >\r\n {`${t('adicionar')}`}\r\n \r\n\r\n {isOverLimit() && (\r\n \r\n \r\n Limite máximo\r\n de utilitários por DMT já atingido\r\n \r\n \r\n )}\r\n \r\n
\r\n\r\n {!state.utilitiesList.filter((util) => !util.DISSOCIATE).length && (\r\n \r\n
{t('nenhumUtilitarioAssociadoDmt')}
\r\n \r\n )}\r\n {state.utilitiesList?.map((util, index) => (\r\n (!util.DISSOCIATE)\r\n && (\r\n \r\n )\r\n ))}\r\n\r\n \r\n \r\n {`${t('salvar')}`}\r\n \r\n\r\n history.push(`${state.linkBase}/${state.devId}/informacoes`)}>{t('cancelar')}\r\n \r\n \r\n {state.openModal && (\r\n openModal(false, true)} style={{ width: '510px' }}>\r\n \r\n {`${state.replaceUtility ? t('substituir') : t('adicionar')} ${t('utilitario')}`}\r\n \r\n
\r\n\r\n \r\n { state.selectedClient = item; state.clientChanged = true; render(); }}\r\n disabled={(state.selectedClient && state.utilitiesList.filter((util) => (!util.DISSOCIATE && dmtInfo.UNIT_ID && dmtInfo.UNIT_ID === util.UNIT_ID || util.INSERT)).length)}\r\n search\r\n />\r\n
\r\n
\r\n {state.selectedClient\r\n && (\r\n \r\n
\r\n\r\n \r\n { state.selectedUnit = item; state.unitChanged = true; render(); }}\r\n disabled={(state.selectedUnit && state.utilitiesList.filter((util) => (!util.DISSOCIATE && dmtInfo.UNIT_ID && dmtInfo.UNIT_ID === util.UNIT_ID || util.INSERT)).length)}\r\n search\r\n />\r\n
\r\n
\r\n )}\r\n {state.selectedUnit\r\n && (\r\n \r\n \r\n
\r\n \r\n { state.application = item; render(); }}\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecionar')}\r\n closeOnSelect\r\n />\r\n
\r\n
\r\n \r\n
\r\n \r\n { state.selectedUtility = item; render(); }}\r\n disabled={!state.application}\r\n search\r\n />\r\n
\r\n
\r\n
\r\n )}\r\n {(state.application && state.selectedUtility)\r\n && (\r\n \r\n\r\n
\r\n {\r\n if (state.selectedPort) {\r\n state.portsToEdit[state.selectedPort - 1].associated = false;\r\n state.portsToEdit[state.selectedPort - 1].nobreakId = undefined;\r\n state.portsToEdit[state.selectedPort - 1].illuminationId = undefined;\r\n }\r\n state.selectedPort = item.port;\r\n state.portsToEdit[Number(item.port) - 1].associated = true;\r\n if (state.application === t('iluminacao')) {\r\n state.portsToEdit[Number(item.port) - 1].illuminationId = state.selectedUtility;\r\n } else if (state.application === t('nobreak')) {\r\n state.portsToEdit[Number(item.port) - 1].nobreakId = state.selectedUtility;\r\n }\r\n render();\r\n }}\r\n />\r\n {\r\n if (state.selectedPort) {\r\n state.portsToEdit[Number(state.selectedPort) - 1].associated = false;\r\n state.portsToEdit[Number(state.selectedPort) - 1].illuminationId = undefined;\r\n state.portsToEdit[Number(state.selectedPort) - 1].nobreakId = undefined;\r\n }\r\n state.selectedPort = null;\r\n render();\r\n }}\r\n >\r\n {t('limpar')}\r\n \r\n\r\n
\r\n\r\n
\r\n {\r\n if (state.selectedElectricNetwork) {\r\n state.portsToEdit[state.selectedElectricNetwork - 1].associated = false;\r\n state.portsToEdit[state.selectedElectricNetwork - 1].eletricCircuitId = undefined;\r\n }\r\n state.selectedElectricNetwork = item.port;\r\n state.portsToEdit[Number(item.port) - 1].associated = true;\r\n state.portsToEdit[Number(item.port) - 1].eletricCircuitId = -1;\r\n render();\r\n }}\r\n disabled={state.application === t('iluminacao')}\r\n />\r\n {state.application === t('nobreak')\r\n && (\r\n {\r\n if (state.selectedElectricNetwork) {\r\n state.portsToEdit[Number(state.selectedElectricNetwork) - 1].associated = false;\r\n state.portsToEdit[Number(state.selectedElectricNetwork) - 1].eletricCircuitId = undefined;\r\n }\r\n state.selectedElectricNetwork = null;\r\n render();\r\n }}\r\n >\r\n {t('limpar')}\r\n \r\n )}\r\n
\r\n
\r\n )}\r\n\r\n \r\n { openModal(false, false); state.application = null; render(); }}>{t('botaoFechar')}\r\n\r\n \r\n {`${state.replaceUtility ? t('confirmar') : t('adicionar')}`}\r\n \r\n \r\n
\r\n
\r\n )}\r\n\r\n {state.openDeleteModal && (\r\n openDeleteModal(false)} style={{ width: '360px' }}>\r\n \r\n Remover Utilitário\r\n

\r\n {t('voceGostariaDeRemoverUtilitario')}\r\n {state.deleteUtility.NAME || '-'}\r\n {t('aEsteDmt')}\r\n

\r\n \r\n { deleteUtility(state.deleteUtility, state.deleteUtilityIdx); openDeleteModal(false); }}\r\n variant=\"primary\"\r\n >\r\n {t('remover')}\r\n \r\n { openDeleteModal(false); }}>{t('cancelar')}\r\n\r\n \r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nconst UtilityItem = ({\r\n utilityInfo, portsList, replace, renderList, utilityListIdx, openDeleteModal, mobile,\r\n}): JSX.Element => {\r\n const [state, render, setState] = useStateVar({\r\n loading: false,\r\n });\r\n const { t } = useTranslation();\r\n\r\n async function clearPort() {\r\n setState({ loading: true });\r\n utilityInfo.PORT = null;\r\n portsList.forEach((port) => {\r\n if ((utilityInfo.APPLICATION === 'Nobreak' && port.nobreakId === utilityInfo.NOBREAK_ID)\r\n || (utilityInfo.APPLICATION === 'Electric Network' && port.eletricCircuitId)\r\n || (utilityInfo.APPLICATION === 'Illumination' && port.illuminationId === utilityInfo.ILLUMINATION_ID)\r\n ) { port.associated = false; port.nobreakId = undefined; port.eletricCircuitId = undefined; port.illuminationId = undefined; }\r\n\r\n return port;\r\n });\r\n render();\r\n setState({ loading: false });\r\n renderList();\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {utilityInfo.APPLICATION === 'Electric Network' ? : }\r\n \r\n {utilityInfo.APPLICATION === 'Electric Network' && t('redeEletrica')}\r\n {utilityInfo.APPLICATION !== 'Electric Network' && {utilityInfo.NAME}}\r\n\r\n {utilityInfo.APPLICATION === 'Nobreak' && {utilityInfo.DAT_CODE || '-'}}\r\n \r\n \r\n \r\n {utilityInfo.APPLICATION !== 'Electric Network' && replace(true, false, utilityInfo, utilityListIdx)}>{t('substituir')} }\r\n \r\n \r\n {mobile && { openDeleteModal(true, utilityInfo, utilityListIdx); }} color=\"red\" disabled={state.loading} />}\r\n \r\n \r\n \r\n {\r\n if (utilityInfo.PORT) {\r\n portsList[utilityInfo.PORT - 1].associated = false;\r\n portsList[utilityInfo.PORT - 1].nobreakId = undefined;\r\n portsList[utilityInfo.PORT - 1].illuminationId = undefined;\r\n portsList[utilityInfo.PORT - 1].eletricCircuitId = undefined;\r\n }\r\n utilityInfo.PORT = item.port;\r\n\r\n portsList[Number(item.port) - 1].associated = true;\r\n if (utilityInfo.APPLICATION === 'Illumination') {\r\n portsList[Number(item.port) - 1].illuminationId = utilityInfo.ILLUMINATION_ID;\r\n } else if (utilityInfo.APPLICATION === 'Nobreak') {\r\n portsList[Number(item.port) - 1].nobreakId = utilityInfo.NOBREAK_ID;\r\n } else if (utilityInfo.APPLICATION === 'Electric Network') {\r\n portsList[Number(item.port) - 1].eletricCircuitId = -1;\r\n }\r\n\r\n render();\r\n renderList();\r\n }}\r\n disabled={state.loading}\r\n />\r\n {t('limpar')}\r\n \r\n {!mobile && { openDeleteModal(true, utilityInfo, utilityListIdx); }} color=\"red\" disabled={state.loading} />}\r\n \r\n \r\n\r\n
\r\n \r\n );\r\n};\r\n","import {\r\n ChangeEvent, useEffect, useRef, useState,\r\n} from 'react';\r\nimport queryString from 'query-string';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useHistory, useParams, useRouteMatch } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport BackupEcoV2DamDac from '~/assets/img/BackupEcoV2DamDac.png';\r\nimport { Image } from 'antd';\r\nimport {\r\n Input,\r\n Checkbox,\r\n Loader,\r\n ModalWindow,\r\n ScheduleViewCard,\r\n ScheduleEditCard,\r\n ExceptionViewCard,\r\n ExceptionEditCard,\r\n Button,\r\n InputCalculator,\r\n ModalLoading,\r\n Card as NewCard,\r\n ClearSelect,\r\n} from 'components';\r\nimport { ToggleSwitchMini } from 'components/ToggleSwitch';\r\nimport { Select } from 'components/NewSelect';\r\nimport { getCachedDevInfo } from 'helpers/cachedStorage';\r\nimport parseDecimalNumber from 'helpers/parseDecimalNumber';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocketLazy } from 'helpers/wsConnection';\r\nimport { PaperIcon, CheckboxIcon } from 'icons';\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport { AssetLayout } from 'pages/Analysis/Assets/AssetLayout';\r\nimport { FormEditGroup } from 'pages/ClientPanel/FormEditGroup';\r\nimport { FormEditUnit } from 'pages/ClientPanel/FormEditUnit';\r\nimport { apiCall, ApiParams, ApiResps } from 'providers';\r\nimport { DevFullInfo } from 'store';\r\n\r\nimport { DamScheduleContents } from '../DAMs/DamSchedule';\r\nimport { Headers2 } from '../Header';\r\nimport { EditDevInfoDRI, DriConfig } from '../Integrations/IntegrEdit/DriConfig';\r\nimport jsonTryParse from '~/helpers/jsonTryParse';\r\nimport { CardsCfg } from '../Integrations/IntegrEdit';\r\nimport {\r\n Card,\r\n TextLine,\r\n Title,\r\n Text,\r\n CustomSelect,\r\n ContainerInfo,\r\n ContainerText,\r\n OverLay,\r\n HoverEcoLocal,\r\n ContainerEcoMode,\r\n} from './styles';\r\nimport { colors } from '~/styles/colors';\r\nimport { ScheduleDut, ExceptionDut } from '../../../providers/types/api-private';\r\nimport { identifyDutIrCommands } from '../DUTs/EnvironmentRealTime';\r\nimport { useTranslation, Trans } from 'react-i18next';\r\nimport { EditDalInfo } from '../DALs/EditDalInfo';\r\nimport { EditDmtInfo } from '../DMTs/DmtEdit';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport {\r\n SearchInput,\r\n Label,\r\n} from '../styles';\r\nimport { CustomInput } from '../DMTs/styles';\r\nimport { BtnClean } from '../DALs/styles';\r\nimport ReactTooltip from 'react-tooltip';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nexport const EditDevInfo = () => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const match = useRouteMatch<{ devId: string }>();\r\n const routeParams = useParams<{ devId: string }>();\r\n const [profile] = useState(getUserProfile);\r\n const [resendTimeError, setResendTimeError] = useState('');\r\n const [sendAndDisableAut, setSendAndDisableAut] = useState(false);\r\n const [state, render, setState] = useStateVar(() => {\r\n const state = {\r\n devId: routeParams.devId,\r\n devType: {} as {\r\n isDac: boolean,\r\n isDam: boolean,\r\n isDut: boolean,\r\n isDutAut: boolean,\r\n isOnlyDutRef: boolean,\r\n isDri: boolean,\r\n isDal: boolean,\r\n isDmt: boolean,\r\n dutAutEnabled: boolean| null,\r\n isDutQA: boolean,\r\n },\r\n isLoading: true,\r\n isSaving: false,\r\n devInfo: null as null|DevFullInfo,\r\n damFuNomCalc: null as null | number,\r\n selectedL1Sim: undefined as undefined|boolean,\r\n assetLayout: false as boolean,\r\n temperatureControlState: null as null|{ automation: boolean, mode: string, temperature: number, LTC: number },\r\n persistedAssetDevice: null as null|{ value: number, label: string, UNIT_ID: number, CLIENT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, DAT_ID: string|null, DAT_INDEX: number|null, MCHN_KW: number },\r\n formData: {\r\n DAT_BEGMON: '',\r\n DAT_BEGAUT: '',\r\n CLIENT_ID_item: null as null|{ NAME: string, CLIENT_ID: number },\r\n UNIT_ID_item: null as null|{ UNIT_NAME: string, UNIT_ID: number },\r\n ENVIRONMENT_ID_item: null as null|{ ENVIRONMENT_NAME: string, ENVIRONMENT_ID: number, DUT_CODE: string },\r\n ROOM_NAME: '',\r\n CTRLOPER_item: null as null|{ label: string, value: '0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP'|'4_BLOCKED'|'5_BACKUP_CONTROL'|'6_BACKUP_CONTROL_V2'|'7_FORCED' },\r\n DUTAUTCFG_item: null as null|{ label: string, value: 'IR'|'RELAY'|'DISABLED' },\r\n ENABLE_ECO_item: null as null|{ label: string, value: string, valueN: 0|1|2 },\r\n ENABLE_ECO_local: null as null|{ label: string, value: 0|1},\r\n ECO_CFG_item: null as null|{ label: string, value: string },\r\n GROUP_ID_item: null as null|{ label: string, value: number, unit: number, name?: string },\r\n REL_DUT_ID_item: null as null|{ DEV_ID: string, UNIT_ID: number, RTYPE_NAME: string, TUSEMAX?: number, TUSEMIN?: number },\r\n DAC_APPL_item: null as null|{ label: string, value: { DAC_APPL: string, hasPliq: boolean, hasPsuc: boolean } },\r\n FLUID_TYPE_item: null as null|{ label: string, value: string },\r\n DAC_TYPE_item: null as null|{ label: string, value: string, tags: string },\r\n DAC_ENV_item: null as null|{ label: string, value: string, tags: string },\r\n DAC_BRAND_item: null as null|{ label: string, value: string },\r\n ASSET_ID_item: null as null|{ value: number, label: string, UNIT_ID: number, CLIENT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, DAT_ID: string|null, DAT_INDEX: number|null },\r\n DAC_MODEL: '',\r\n DAC_DESC: '',\r\n DAC_NAME: '',\r\n DAC_MODIF_item: null as null|{ label: string, value: string },\r\n DAC_COMIS_item: null as null|{ label: string, value: string },\r\n DAC_HEAT_EXCHANGER_item: null as null|{ID: number, NAME: string, BRAND?: string, MODEL?: string},\r\n P0_POSITION: null as null|{ label: string, value: string },\r\n P0_SENSOR: null as null|{ label: string, value: string },\r\n P1_POSITION: null as null|{ label: string, value: string },\r\n P1_SENSOR: null as null|{ label: string, value: string },\r\n T0_POSITION: null as null|{ label: string, value: string },\r\n T1_POSITION: null as null|{ label: string, value: string },\r\n T2_POSITION: null as null|{ label: string, value: string },\r\n USE_RELAY_item: null as null|{ label: string, value: string, valueN: 0|1 },\r\n MCHN_BRAND_item: null as null|{ label: string, value: string },\r\n PLACEMENT_item: null as null|undefined|{ label: string, value: 'AMB'|'INS'|'DUO' },\r\n DAM_PLACEMENT_item: null as null|undefined|{ label: string, value: 'RETURN'|'DUO' },\r\n SENSOR_AUTOM: null as null|0|1,\r\n MCHN_MODEL: '',\r\n ECO_OFST_START: '',\r\n ECO_OFST_END: '',\r\n TSETPOINT: '',\r\n RESENDPER: '',\r\n LTCRIT: '',\r\n LTINF: '',\r\n varsConfigInput: '',\r\n CAPACITY_UNIT_item: null as null|{ value: string },\r\n CAPACITY_PWR: '',\r\n DAC_COP: '',\r\n DAC_KW: '',\r\n FU_NOM: '',\r\n configTsensors: false,\r\n ECO_INTERVAL_TIME: '',\r\n TEMPERATURE_OFFSET: '',\r\n ECO_SETPOINT: '',\r\n ECO_LTC: '',\r\n ECO_LTI: '',\r\n ECO_UPPER_HYSTERESIS: '',\r\n ECO_LOWER_HYSTERESIS: '',\r\n ECO_SCHEDULE_START_BEHAVIOR_item: null as null|{ label: string, value: string },\r\n MINIMUM_TEMPERATURE: '',\r\n MAXIMUM_TEMPERATURE: '',\r\n EXT_THERM_CFG: null as null | { label: string, value: 'D'|'S'|'P' },\r\n COMPRESSOR_NOMINAL_CURRENT: '',\r\n EQUIPMENT_POWER_item: null as null|{ label: string, value: string },\r\n DAM_INSTALLATION_LOCATION_item: null as null|{ label: string, value: string },\r\n T0_POSITION_DAM: null as null|{ label: string, value: 'RETURN'|'INSUFFLATION'|null },\r\n T1_POSITION_DAM: null as null|{ label: string, value: 'RETURN'|'INSUFFLATION'|null },\r\n EVAPORATOR_MODEL_item: null as null|{ label: string, value: string },\r\n INSUFFLATION_SPEED: '',\r\n APPLICATION: '',\r\n },\r\n automationTabHasBeenSelected: false,\r\n comboOpts: {\r\n yesNo: [\r\n {\r\n label: t('sim'), value: '1', valueN: 1, valueNinv: 0,\r\n },\r\n {\r\n label: t('nao'), value: '0', valueN: 0, valueNinv: 1,\r\n },\r\n ] as { label: string, value: string, valueN: 0|1, valueNinv: 0|1 }[],\r\n optionsEco: [\r\n {\r\n label: t('sim'), value: '1', valueN: 1, valueNinv: 0,\r\n },\r\n {\r\n label: t('simEco2'), value: '2', valueN: 2, valueNinv: 2,\r\n },\r\n {\r\n label: t('nao'), value: '0', valueN: 0, valueNinv: 1,\r\n },\r\n ] as { label: string, value: string, valueN: 0|1|2, valueNinv: 0|1|2 }[],\r\n optionsEcoLocal: [\r\n {\r\n label: t('sim'), value: 1,\r\n },\r\n {\r\n label: t('nao'), value: 0,\r\n },\r\n ] as { label: string, value: 0|1 }[],\r\n pPositions: [\r\n { label: 'Psuc', value: 'Psuc' },\r\n { label: 'Pliq', value: 'Pliq' },\r\n ],\r\n tPositions: [\r\n { label: 'Tamb', value: 'Tamb' },\r\n { label: 'Tsuc', value: 'Tsuc' },\r\n { label: 'Tliq', value: 'Tliq' },\r\n ],\r\n applicsNew: [\r\n { label: t('1acComPliq'), value: { DAC_APPL: 'ar-condicionado', hasPliq: true, hasPsuc: false } },\r\n { label: t('2acComPsuc'), value: { DAC_APPL: 'ar-condicionado', hasPliq: false, hasPsuc: true } },\r\n { label: t('4acSemPliqPsuc'), value: { DAC_APPL: 'ar-condicionado', hasPliq: false, hasPsuc: false } },\r\n ],\r\n capacUnits: [\r\n { label: 'TR', value: 'TR' },\r\n { label: 'BTU/hr', value: 'BTU/hr' },\r\n { label: 'kW', value: 'kW' },\r\n { label: 'HP', value: 'HP' },\r\n ],\r\n placement: [\r\n { label: t('ambientePadrao'), value: 'AMB' },\r\n { label: t('insuflamento'), value: 'INS' },\r\n { label: t('duo'), value: 'DUO' },\r\n ] as { label: string, value: 'INS'|'AMB' }[],\r\n damPlacement: [\r\n { label: t('retorno'), value: 'RETURN' },\r\n { label: t('duo'), value: 'DUO' },\r\n ] as { label: string, value: 'DUO'|'RETURN' }[],\r\n sensorAutom: [t('retorno'), t('insuflamento')],\r\n sensorDamDuo: [{ label: t('retorno'), value: 'RETURN' }, { label: t('insuflamento'), value: 'INSUFFLATION' }] as { label: string, value: 'RETURN'|'INSUFFLATION' }[],\r\n dutAutCfg: [\r\n { label: t('infraVermelhoPadrao'), value: 'IR' },\r\n { label: t('rele'), value: 'RELAY' },\r\n { label: t('nao'), value: 'DISABLED' },\r\n ] as { label: string, value: 'IR'|'RELAY'|'DISABLED' }[],\r\n dutControlOperation: [\r\n { label: t('modoEco'), value: '1_CONTROL' },\r\n { label: t('modoSobDemanda'), value: '2_SOB_DEMANDA' },\r\n { label: t('modoBackup'), value: '3_BACKUP' },\r\n { label: t('modoBloqueio'), value: '4_BLOCKED' },\r\n { label: t('modoBackupEco'), value: '5_BACKUP_CONTROL' },\r\n { label: t('modoEco2'), value: '6_BACKUP_CONTROL_V2' },\r\n { label: t('modoForcado'), value: '7_FORCED' },\r\n ] as { label: string, value: '0_NO_CONTROL'|'1_CONTROL'|'2_SOB_DEMANDA'|'3_BACKUP'|'4_BLOCKED'|'5_BACKUP_CONTROL'|'6_BACKUP_CONTROL_V2'|'7_FORCED' }[],\r\n clients: [] as { NAME: string, CLIENT_ID: number }[],\r\n timezones: [] as { label: string, value: number }[],\r\n states: [] as { STATE_NAME: string, STATE_ID: string, COUNTRY_ID: number }[],\r\n cities: [] as { CITY_NAME: string, CITY_ID: string, STATE_ID: string }[],\r\n countries: [] as { COUNTRY_NAME: string, COUNTRY_ID: number}[],\r\n units: [] as { UNIT_NAME: string, UNIT_ID: number }[],\r\n environments: [] as {ENVIRONMENT_ID: number, ENVIRONMENT_NAME: string, DUT_CODE: string, ENVIRONMENT_LABEL: string}[],\r\n ecoModeCfg: [] as { label: string, value: string }[],\r\n groups: [] as { label: string, value: number, withDacAut?: boolean, checked?: boolean, unit: number, dev_aut: string }[],\r\n assets: [] as { value: number, label: string, UNIT_ID: number, CLIENT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, DAT_ID: string|null, DAT_INDEX: number|null }[],\r\n duts: [] as { DEV_ID: string, UNIT_ID: number, RTYPE_NAME: string, TUSEMAX?: number, TUSEMIN?: number }[],\r\n psens: [] as { label: string, value: string }[],\r\n fluids: [] as { label: string, value: string }[],\r\n applics: [] as { label: string, value: string }[],\r\n types: [] as { label: string, value: string, tags: string }[],\r\n envs: [] as { label: string, value: string, tags: string }[],\r\n brands: [] as { label: string, value: string }[],\r\n scheduleStartBehavior: [] as { label: string, value: string}[],\r\n heatExchangerTypes: [] as {ID: number, NAME: string, BRAND?: string, MODEL?: string, label: string, value: string}[],\r\n dutScheduleStartBehavior: [] as { label: string, value: string}[],\r\n dutScheduleEndBehavior: [] as { label: string, value: string}[],\r\n dutForcedBehavior: [] as { label: string, value: string}[],\r\n damInstallationLocation: [] as { label: string, value: string}[],\r\n evaporatorModels: [] as { label: string, value: string}[],\r\n extThermCfg: [\r\n { label: t('desabilitado'), value: 'D' },\r\n { label: t('emSerie'), value: 'S' },\r\n { label: t('emParalelo'), value: 'P' },\r\n ] as { label: string, value: 'D'|'S'|'P' }[],\r\n equipmentPower: [\r\n { label: '380V / 3F / 60Hz', value: '380V / 3F / 60Hz' },\r\n { label: '220V / 3F / 60Hz', value: '220V / 3F / 60Hz' },\r\n { label: '220V / 1F / 60Hz', value: '220V / 1F / 60Hz' },\r\n ],\r\n },\r\n filtComboOpts: {\r\n groups: [] as { label: string, value: number, withDacAut?: boolean, checked?: boolean, unit: number, dev_aut: string }[],\r\n duts: [] as { DEV_ID: string, UNIT_ID: number }[],\r\n types: [] as { label: string, value: string }[],\r\n envs: [] as { label: string, value: string }[],\r\n },\r\n telemetry: {\r\n P0raw: null,\r\n P1raw: null,\r\n },\r\n openModal: null as null|string,\r\n offsetChecked: false as boolean,\r\n hysteresisChecked: false as boolean,\r\n dutCompatibilityHysteresisEco2: false as boolean,\r\n driInfo: null as null|ApiResps['/get-integration-info'],\r\n machinesAssetsList: null as null|ApiResps['/clients/get-machines-list'],\r\n cards: [] as string[],\r\n subcards: [] as string[],\r\n relevances: [] as string[],\r\n DUTS_SCHEDULES: [] as ScheduleDut[],\r\n DUTS_SCHEDULES_FILTERED: [] as ScheduleDut[],\r\n DUTS_SCHEDULES_DELETED: [] as number[],\r\n DUTS_EXCEPTIONS: [] as ExceptionDut[],\r\n DUTS_EXCEPTIONS_FILTERED: [] as ExceptionDut[],\r\n DUTS_EXCEPTIONS_DELETED: [] as number[],\r\n selectedSchedule: null as ScheduleDut|null,\r\n selectedIndexSchedule: null as number|null,\r\n selectedException: null as ExceptionDut|null,\r\n selectedIndexException: null as number|null,\r\n NEED_MULT_SCHEDULES: false as boolean,\r\n CHANGE_EXCEPTION_PARAMETERS: false as boolean,\r\n showExceptions: false as boolean,\r\n irCommands: [] as {\r\n IR_ID: string,\r\n CMD_NAME: string,\r\n CMD_TYPE: string|null,\r\n TEMPER: number\r\n }[],\r\n persisted_USE_RELAY_item: null as null|{ label: string, value: string, valueN: 0|1 },\r\n isLoadingUnitInfo: false as boolean,\r\n };\r\n if (!profile.permissions.isInstaller) {\r\n state.comboOpts.applicsNew.push(\r\n { label: t('3acComPliqPsuc'), value: { DAC_APPL: 'ar-condicionado', hasPliq: true, hasPsuc: true } },\r\n { label: t('5cfComPliq'), value: { DAC_APPL: 'camara-fria', hasPliq: true, hasPsuc: false } },\r\n { label: t('6cfComPsuc'), value: { DAC_APPL: 'camara-fria', hasPliq: false, hasPsuc: true } },\r\n { label: t('7cfComPliqPsuc'), value: { DAC_APPL: 'camara-fria', hasPliq: true, hasPsuc: true } },\r\n { label: t('8cfSemPlicPsuc'), value: { DAC_APPL: 'camara-fria', hasPliq: false, hasPsuc: false } },\r\n { label: t('9fancoil'), value: { DAC_APPL: 'fancoil', hasPliq: false, hasPsuc: false } },\r\n { label: t('10chillerComPliq'), value: { DAC_APPL: 'chiller', hasPliq: true, hasPsuc: false } },\r\n { label: t('11chillerComPsuc'), value: { DAC_APPL: 'chiller', hasPliq: false, hasPsuc: true } },\r\n { label: t('12chillerComPliqPsuc'), value: { DAC_APPL: 'chiller', hasPliq: true, hasPsuc: true } },\r\n { label: t('13chillerSemPliqPsuc'), value: { DAC_APPL: 'chiller', hasPliq: false, hasPsuc: false } },\r\n { label: t('14trocadorCalor'), value: { DAC_APPL: 'trocador-de-calor', hasPliq: false, hasPsuc: false } },\r\n );\r\n }\r\n return state;\r\n });\r\n\r\n function redirectToIntegrations() {\r\n if (match.params.devId.startsWith('DRI') || match.params.devId.startsWith('DMA')) {\r\n const url = `/integracoes/info/diel/${state.devId}/editar`;\r\n history.push(url);\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n redirectToIntegrations();\r\n }, []);\r\n\r\n const temprtControlModeDetails = {\r\n '1_CONTROL': t('detalhesModoControle1'),\r\n '2_SOB_DEMANDA': t('detalhesModoControle2'),\r\n '4_BLOCKED': t('detalhesModoControle4'),\r\n '5_BACKUP_CONTROL': t('detalhesModoControle5'),\r\n '6_BACKUP_CONTROL_V2': t('detalhesModoControle6'),\r\n '7_FORCED': t('detalhesModoControle7'),\r\n };\r\n\r\n const dacDamEcoDetails = t('damEcoDetalhes');\r\n\r\n const { formData } = state;\r\n const { comboOpts } = state;\r\n const { filtComboOpts } = state;\r\n\r\n const ecoModeDetails = {\r\n 'eco-C1-V': t('detalheModoEcoC1-V', {\r\n value1: formData.ECO_INTERVAL_TIME,\r\n value2: formData.ECO_INTERVAL_TIME,\r\n }),\r\n 'eco-C2-V': t('detalheModoEcoC2-V', {\r\n value1: formData.ECO_INTERVAL_TIME,\r\n value2: formData.ECO_INTERVAL_TIME,\r\n }),\r\n };\r\n\r\n const wsl = useWebSocketLazy();\r\n function onWsOpen(wsConn) {\r\n wsConn.send({ type: 'subscribeTelemetry', data: { dac_id: state.devId } });\r\n }\r\n function onWsMessage(message) {\r\n if (message && message.type === 'dacTelemetry') {\r\n setState({ telemetry: message.data });\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'subscribeTelemetry', data: {} });\r\n }\r\n\r\n function checkDamFields(damData: ApiParams['/dam/set-dam-info']) {\r\n let returnCheck = true;\r\n\r\n if (damData.ENABLE_ECO && damData.SELF_REFERENCE && damData.MAXIMUM_TEMPERATURE != null && damData.MINIMUM_TEMPERATURE != null) {\r\n if (damData.MAXIMUM_TEMPERATURE < damData.MINIMUM_TEMPERATURE) {\r\n toast.warn(t('avisoTemperaturaMaximaDeveSerMaiorMinima'));\r\n returnCheck = false;\r\n }\r\n }\r\n\r\n if (damData.ENABLE_ECO && !damData.ECO_CFG) {\r\n toast.warn(t('avisoNecessarioSelecionarConfiguracaoModoEco'));\r\n returnCheck = false;\r\n }\r\n\r\n if ((damData.UPPER_HYSTERESIS != null && damData.UPPER_HYSTERESIS < 0) || (damData.LOWER_HYSTERESIS != null && damData.LOWER_HYSTERESIS < 0)) {\r\n toast.warn(t('avisoNaoPodeHaverHistereseNegativa'));\r\n returnCheck = false;\r\n }\r\n\r\n if (damData.REL_DUT_ID && (damData.groups == null || damData.groups.length === 0)) {\r\n toast.warn(t('necessarioSelecionarGrupoReliacionarDamDut'));\r\n returnCheck = false;\r\n }\r\n\r\n returnCheck = checkGroupAutomated(damData.groups);\r\n\r\n return returnCheck;\r\n }\r\n\r\n function checkGroupAutomated(groupsDevice) {\r\n let returnCheck = true;\r\n if (groupsDevice) {\r\n groupsDevice.forEach((group) => {\r\n const groupInfo = state.filtComboOpts.groups.find((groupInfo) => groupInfo.value.toString() === group);\r\n if (groupInfo && groupInfo.dev_aut != null && groupInfo.dev_aut !== state.devId) {\r\n toast.warn(t('avisoGrupoEstaAutomatizadoDispositivo', {\r\n value1: groupInfo.label,\r\n value2: groupInfo.dev_aut,\r\n }));\r\n returnCheck = false;\r\n }\r\n });\r\n }\r\n return returnCheck;\r\n }\r\n function checkIsDutRef(groupsDevice) {\r\n let returnCheck = false;\r\n if (groupsDevice) {\r\n groupsDevice.forEach((group) => {\r\n const groupInfo = state.filtComboOpts.groups.find((groupInfo) => groupInfo.value === group.GROUP_ID);\r\n if (groupInfo && groupInfo.dev_aut != null && groupInfo.dev_aut !== state.devId) {\r\n returnCheck = true;\r\n }\r\n });\r\n }\r\n return returnCheck;\r\n }\r\n async function deleteAutAndDisassociate() {\r\n setState({ isSaving: true });\r\n try {\r\n const dutData: ApiParams['/dut/set-dut-info'] = {\r\n DEV_ID: state.devId,\r\n ROOM_NAME: formData.ROOM_NAME || null,\r\n PLACEMENT: formData.PLACEMENT_item?.value || null,\r\n CLIENT_ID: formData.CLIENT_ID_item?.CLIENT_ID || null,\r\n UNIT_ID: formData.UNIT_ID_item?.UNIT_ID || null,\r\n TEMPERATURE_OFFSET: formData.TEMPERATURE_OFFSET && state.offsetChecked ? parseDecimalNumber(formData.TEMPERATURE_OFFSET) : null,\r\n ENVIRONMENT_ID: formData.ENVIRONMENT_ID_item && formData.ENVIRONMENT_ID_item.ENVIRONMENT_ID || null,\r\n };\r\n\r\n const deleteDayProg = {\r\n permission: 'allow' as 'allow' | 'forbid',\r\n start: '',\r\n end: '',\r\n clearProg: true,\r\n };\r\n const dutProgramming: ApiParams['/dut/set-programming-v3'] = {\r\n dutId: state.devId,\r\n week: {\r\n mon: deleteDayProg,\r\n tue: deleteDayProg,\r\n wed: deleteDayProg,\r\n thu: deleteDayProg,\r\n fri: deleteDayProg,\r\n sat: deleteDayProg,\r\n sun: deleteDayProg,\r\n },\r\n exceptions: {},\r\n };\r\n state.DUTS_EXCEPTIONS.forEach((exception) => {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n if (!dutProgramming.exceptions) dutProgramming.exceptions = {};\r\n dutProgramming.exceptions[day] = {\r\n permission: exception.PERMISSION,\r\n start: exception.BEGIN_TIME,\r\n end: exception.END_TIME,\r\n clearProg: true,\r\n };\r\n });\r\n await apiCall('/dut/set-programming-v3', dutProgramming);\r\n await apiCall('/dut/set-dut-info', dutData);\r\n toast.success(t('sucessoAoSalvar'));\r\n } catch (error) {\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ isSaving: false });\r\n setSendAndDisableAut(false);\r\n }\r\n\r\n const formatDacData = () => {\r\n const currentUseRelayValue = formData.USE_RELAY_item ? formData.USE_RELAY_item.valueN : 0;\r\n const considerDutRef = state.persisted_USE_RELAY_item?.valueN ? 1 : currentUseRelayValue;\r\n let l1SimMode: string | null = null;\r\n if (state.selectedL1Sim) {\r\n if (state.devInfo?.dac?.DAC_APPL === 'fancoil') {\r\n l1SimMode = 'fancoil';\r\n }\r\n else {\r\n l1SimMode = 'virtual';\r\n }\r\n }\r\n const dacData: ApiParams['/dac/set-dac-info'] = {\r\n DAC_ID: state.devId,\r\n DAC_DESC: valueOrNull(formData.DAC_DESC),\r\n DAC_NAME: valueOrNull(formData.DAC_NAME),\r\n DAC_MODEL: valueOrNull(formData.DAC_MODEL),\r\n CLIENT_ID: valueOrNull(formData.CLIENT_ID_item?.CLIENT_ID),\r\n UNIT_ID: valueOrNull(formData.UNIT_ID_item?.UNIT_ID),\r\n GROUP_ID: valueOrNull(formData.GROUP_ID_item?.value),\r\n FLUID_TYPE: valueOrNull(formData.FLUID_TYPE_item?.value),\r\n DAC_TYPE: valueOrNull(formData.DAC_TYPE_item?.value),\r\n CAPACITY_UNIT: valueOrNull(formData?.CAPACITY_UNIT_item?.value),\r\n CAPACITY_PWR: valueOrNull(parseDecimalNumber(formData.CAPACITY_PWR)),\r\n COMPRESSOR_NOMINAL_CURRENT: valueOrNull(parseDecimalNumber(formData.COMPRESSOR_NOMINAL_CURRENT)),\r\n EQUIPMENT_POWER: valueOrNull(formData.EQUIPMENT_POWER_item?.value),\r\n EVAPORATOR_MODEL_ID: valueOrNull(formData.EVAPORATOR_MODEL_item && Number(formData.EVAPORATOR_MODEL_item.value)),\r\n DAC_COP: valueOrNull(parseDecimalNumber(formData.DAC_COP)),\r\n DAC_ENV: valueOrNull(formData.DAC_ENV_item?.value),\r\n DAC_BRAND: valueOrNull(formData.DAC_BRAND_item?.value),\r\n DAC_MODIF: valueOrNull(formData.DAC_MODIF_item?.value),\r\n DAC_COMIS: valueOrNull(formData.DAC_COMIS_item?.value),\r\n DAC_HEAT_EXCHANGER_ID: valueOrNull(formData.DAC_HEAT_EXCHANGER_item?.ID),\r\n DAC_APPL: null,\r\n P0_POSITN: null,\r\n P0_SENSOR: null,\r\n P1_POSITN: null,\r\n P1_SENSOR: null,\r\n T0_T1_T2: null,\r\n REL_DUT_ID: considerDutRef ? (valueOrNull(formData.REL_DUT_ID_item?.DEV_ID)) : undefined,\r\n SELECTED_L1_SIM: l1SimMode,\r\n INSUFFLATION_SPEED: valueOrNull(parseDecimalNumber(formData.INSUFFLATION_SPEED)),\r\n };\r\n return dacData;\r\n };\r\n\r\n const getPsucAndPliq = () => {\r\n const applicationConfig = valueOrNull(formData.DAC_APPL_item?.value);\r\n let Psuc = null as null|string;\r\n let Pliq = null as null|string;\r\n let isValidationOk = true;\r\n if (formData.P0_POSITION && formData.P0_POSITION.value === 'Psuc') Psuc = 'P0';\r\n if (formData.P0_POSITION && formData.P0_POSITION.value === 'Pliq') Pliq = 'P0';\r\n if (formData.P1_POSITION && formData.P1_POSITION.value === 'Psuc') Psuc = 'P1';\r\n if (formData.P1_POSITION && formData.P1_POSITION.value === 'Pliq') Pliq = 'P1';\r\n if (applicationConfig.hasPsuc && !Psuc) { alert(t('alertaNecessarioPreencherFormulaConversaoPsuc')); isValidationOk = false; return { Psuc, Pliq, isValidationOk }; }\r\n if (applicationConfig.hasPliq && !Pliq) { alert(t('alertaNecessarioPreencherFormulaConversaoPliq')); isValidationOk = false; return { Psuc, Pliq, isValidationOk }; }\r\n return { Psuc, Pliq, isValidationOk };\r\n };\r\n\r\n const validateDacApp = (dacData: ApiParams['/dac/set-dac-info']) => {\r\n if (dacData.DAC_APPL === 'trocador-de-calor' && dacData.DAC_TYPE === 'tipo-trocador-de-calor' && state.comboOpts.heatExchangerTypes.length === 0) {\r\n toast.error(t('erroClienteNaoTemTipoTrocadorDeCalorParaSerSelecionado'));\r\n return false;\r\n }\r\n\r\n if (dacData.DAC_APPL === 'trocador-de-calor' && dacData.DAC_TYPE === 'tipo-trocador-de-calor' && !dacData.DAC_HEAT_EXCHANGER_ID) {\r\n toast.error(t('erroParaCompletarOperacaoNecessarioSelecionarTipoTrocadorCalor'));\r\n return false;\r\n }\r\n return true;\r\n };\r\n\r\n const validatePsucAndPliq = (Psuc: string | null, Pliq: string | null, dacData: ApiParams['/dac/set-dac-info']) => {\r\n const applicationConfig = valueOrNull(formData.DAC_APPL_item?.value);\r\n if (Psuc === 'P0' || Pliq === 'P0') {\r\n if (!formData.P0_SENSOR) { alert(t('alertaNecessarioSelecionarSensorP0')); return false; }\r\n dacData.P0_POSITN = formData.P0_POSITION!.value;\r\n dacData.P0_SENSOR = formData.P0_SENSOR.value;\r\n }\r\n if (Psuc === 'P1' || Pliq === 'P1') {\r\n if (!formData.P1_SENSOR) { alert(t('alertaNecessarioSelecionarSensorP1')); return false; }\r\n dacData.P1_POSITN = formData.P1_POSITION!.value;\r\n dacData.P1_SENSOR = formData.P1_SENSOR.value;\r\n }\r\n dacData.DAC_APPL = applicationConfig.DAC_APPL;\r\n\r\n return true;\r\n };\r\n\r\n const validateDacAppConfig = (dacData: ApiParams['/dac/set-dac-info']) => {\r\n const applicationConfig = valueOrNull(formData.DAC_APPL_item?.value);\r\n if (applicationConfig) {\r\n const { Psuc, Pliq, isValidationOk } = getPsucAndPliq();\r\n if (!isValidationOk) return false;\r\n\r\n if (!validatePsucAndPliq(Psuc, Pliq, dacData)) return false;\r\n\r\n if (!validateDacApp(dacData)) return false;\r\n }\r\n\r\n return true;\r\n };\r\n\r\n const validateDacData = (dacData: ApiParams['/dac/set-dac-info']) => {\r\n if (dacData.GROUP_ID && !formData.ASSET_ID_item) {\r\n toast.warn(t('ativoObrigatorio'));\r\n return false;\r\n }\r\n if (formData.ASSET_ID_item?.DEV_ID && formData.ASSET_ID_item?.DEV_ID !== state.devId) {\r\n toast.warn(t('ativoRelacionadoOutroDispositivo'));\r\n return false;\r\n }\r\n\r\n if (!validateDacAppConfig(dacData)) return false;\r\n\r\n return true;\r\n };\r\n\r\n const sendDacData = async (dacData: ApiParams['/dac/set-dac-info']) => {\r\n if ((!dacData.GROUP_ID && state.persistedAssetDevice) || (state.persistedAssetDevice && formData.ASSET_ID_item && state.persistedAssetDevice.value !== formData.ASSET_ID_item.value)) {\r\n await apiCall('/clients/edit-asset', {\r\n GROUP_ID: state.persistedAssetDevice.GROUP_ID,\r\n DAT_ID: state.persistedAssetDevice.DAT_ID as string || undefined,\r\n AST_DESC: state.persistedAssetDevice.label,\r\n UNIT_ID: state.persistedAssetDevice.UNIT_ID,\r\n AST_ROLE: state.persistedAssetDevice.ASSET_ROLE,\r\n DAT_INDEX: state.persistedAssetDevice.DAT_INDEX,\r\n ASSET_ID: state.persistedAssetDevice.value,\r\n DEV_ID: null,\r\n OLD_DEV_ID: state.persistedAssetDevice.DEV_ID,\r\n CLIENT_ID: state.persistedAssetDevice.CLIENT_ID,\r\n });\r\n }\r\n\r\n if (formData.ASSET_ID_item) {\r\n await apiCall('/clients/edit-asset', {\r\n DAT_INDEX: formData.ASSET_ID_item.DAT_INDEX,\r\n AST_ROLE: formData.ASSET_ID_item.ASSET_ROLE,\r\n ASSET_ID: formData.ASSET_ID_item.value,\r\n GROUP_ID: formData.ASSET_ID_item.GROUP_ID,\r\n UNIT_ID: formData.ASSET_ID_item.UNIT_ID,\r\n OLD_DEV_ID: formData.ASSET_ID_item.DEV_ID,\r\n DEV_ID: state.devId,\r\n DAT_ID: formData.ASSET_ID_item.DAT_ID as string || undefined,\r\n AST_DESC: formData.ASSET_ID_item.label,\r\n CLIENT_ID: formData.ASSET_ID_item.CLIENT_ID,\r\n MCHN_KW: valueOrNull(parseDecimalNumber(formData.DAC_KW)),\r\n UPDATE_MACHINE_RATED_POWER: true,\r\n });\r\n }\r\n await apiCall('/dac/set-dac-info', dacData);\r\n };\r\n\r\n const valueOrNumber = (value, number) => (value || number);\r\n\r\n const setDacWithDamInfo = (dacData: ApiParams['/dac/set-dac-info']) => {\r\n dacData.ECO_OFST_START = valueOrNumber(parseDecimalNumber(formData.ECO_OFST_START || '0'), 0);\r\n dacData.ECO_OFST_END = valueOrNumber(parseDecimalNumber(formData.ECO_OFST_END || '0'), 0);\r\n dacData.FU_NOM = valueOrNull(formData.FU_NOM && parseDecimalNumber(formData.FU_NOM));\r\n dacData.ECO_INT_TIME = valueOrNumber(parseDecimalNumber(formData.ECO_INTERVAL_TIME), 5);\r\n\r\n if (state.devInfo?.dam?.CAN_SELF_REFERENCE) {\r\n dacData.UPPER_HYSTERESIS = valueOrNumber(parseDecimalNumber(formData.ECO_UPPER_HYSTERESIS || '0'), 0);\r\n dacData.LOWER_HYSTERESIS = valueOrNumber(parseDecimalNumber(formData.ECO_LOWER_HYSTERESIS || '0'), 0);\r\n dacData.SETPOINT = valueOrNumber(parseDecimalNumber(formData.ECO_SETPOINT || '21'), 21);\r\n }\r\n\r\n if (dacData.ENABLE_ECO === 2) {\r\n dacData.SCHEDULE_START_BEHAVIOR = valueOrNull(formData.ECO_SCHEDULE_START_BEHAVIOR_item?.value);\r\n dacData.ECO_INT_TIME = valueOrNumber(parseDecimalNumber(formData.ECO_INTERVAL_TIME || '0'), 0);\r\n dacData.SETPOINT = valueOrNumber(parseDecimalNumber(formData.ECO_SETPOINT || '21'), 21);\r\n dacData.LTC = valueOrNumber(parseDecimalNumber(formData.ECO_LTC || '0'), 0);\r\n dacData.LTI = valueOrNumber(parseDecimalNumber(formData.ECO_LTI || '0'), 0);\r\n dacData.UPPER_HYSTERESIS = valueOrNumber(parseDecimalNumber(formData.ECO_UPPER_HYSTERESIS || '0'), 0);\r\n dacData.LOWER_HYSTERESIS = valueOrNumber(parseDecimalNumber(formData.ECO_LOWER_HYSTERESIS || '0'), 0);\r\n }\r\n };\r\n\r\n const handleDacWithDam = (dacData: ApiParams['/dac/set-dac-info']) => {\r\n if (!checkGroupAutomated([dacData.GROUP_ID])) {\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n dacData.USE_RELAY = valueOrNull(formData.USE_RELAY_item?.valueN);\r\n if (dacData.USE_RELAY === 1) {\r\n dacData.ENABLE_ECO = valueOrNull(formData.ENABLE_ECO_item?.valueN);\r\n } else {\r\n dacData.ENABLE_ECO = 0;\r\n }\r\n if (dacData.ENABLE_ECO !== 0) {\r\n dacData.ECO_CFG = valueOrNull(formData.ECO_CFG_item?.value);\r\n } else {\r\n dacData.ECO_CFG = null;\r\n }\r\n\r\n if (dacData.ENABLE_ECO && (!dacData.CLIENT_ID || !dacData.UNIT_ID) && (state.devInfo?.CLIENT_ID || state.devInfo?.UNIT_ID)) {\r\n toast.warn(t(t('precisaDesabilitarAutomacao')));\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n\r\n if (dacData.ENABLE_ECO && !dacData.GROUP_ID) {\r\n toast.warn(t('precisaMaquinaAutomatizada'));\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n\r\n setDacWithDamInfo(dacData);\r\n return true;\r\n };\r\n\r\n const saveDacInfo = async () => {\r\n const dacData = formatDacData();\r\n\r\n if (!validateDacData(dacData)) return;\r\n\r\n if (formData.configTsensors) {\r\n dacData.T0_T1_T2 = [\r\n valueOrNull(formData.T0_POSITION?.value),\r\n valueOrNull(formData.T1_POSITION?.value),\r\n valueOrNull(formData.T2_POSITION?.value),\r\n ];\r\n }\r\n if (state.devType.isDam) {\r\n if (!handleDacWithDam(dacData)) return;\r\n }\r\n\r\n await sendDacData(dacData);\r\n };\r\n\r\n const showDamWarnings = (damData: ApiParams['/dam/set-dam-info']) => {\r\n if ((damData.ECO_CFG === 'eco-C1-V' || damData.ECO_CFG === 'eco-C2-V') && (damData.ECO_INT_TIME! < 5)) {\r\n damData.ECO_INT_TIME = 5;\r\n toast.warn(t('ecoIntTimeParaEcoC-V'));\r\n }\r\n\r\n if (damData.REL_DUT_ID && damData.groups?.length === 0) {\r\n toast.warn(t('avisoAmbienteMonitorado'));\r\n }\r\n };\r\n\r\n const validateDamParams = (damData: ApiParams['/dam/set-dam-info']) => {\r\n if (damData.PLACEMENT === 'DUO') {\r\n if (damData.T0_POSITION === damData.T1_POSITION && damData.T0_POSITION != null) {\r\n toast.error('Não é permitido selecionar o mesmo posicionamento para os sensores T0 e T1');\r\n return false;\r\n }\r\n }\r\n\r\n showDamWarnings(damData);\r\n\r\n if (!checkGroupAutomated(damData.groups)) {\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n\r\n if (!damData.ENABLE_ECO) {\r\n damData.ECO_CFG = null;\r\n }\r\n else {\r\n if ((!damData.CLIENT_ID || !damData.UNIT_ID) && (state.devInfo?.CLIENT_ID || state.devInfo?.UNIT_ID)) {\r\n toast.warn(t(t('precisaDesabilitarAutomacao')));\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n if (!damData.groups || damData.groups.length === 0) {\r\n toast.warn(t('precisaMaquinaAutomatizada'));\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n\r\n const formatDamData = () => {\r\n const damData: ApiParams['/dam/set-dam-info'] = {\r\n DAM_ID: state.devId,\r\n CLIENT_ID: valueOrNull(formData.CLIENT_ID_item?.CLIENT_ID),\r\n UNIT_ID: valueOrNull(formData.UNIT_ID_item?.UNIT_ID),\r\n ENABLE_ECO: valueOrNull(formData.ENABLE_ECO_item?.valueN),\r\n ENABLE_ECO_LOCAL: formData.ENABLE_ECO_local ? formData.ENABLE_ECO_local.value : null,\r\n ECO_CFG: valueOrNull(formData.ECO_CFG_item?.value),\r\n REL_DUT_ID: valueOrNull(formData.REL_DUT_ID_item?.DEV_ID?.startsWith('DUT') ? formData.REL_DUT_ID_item?.DEV_ID : null),\r\n groups: filtComboOpts.groups.filter((group) => group.checked).map((group) => group.value.toString()),\r\n ECO_OFST_START: parseDecimalNumber(formData.ECO_OFST_START || '0') || 0,\r\n ECO_OFST_END: parseDecimalNumber(formData.ECO_OFST_END || '0') || 0,\r\n FU_NOM: formData.FU_NOM ? parseDecimalNumber(formData.FU_NOM) : null,\r\n ECO_INT_TIME: parseDecimalNumber(formData.ECO_INTERVAL_TIME) || 5,\r\n HAD_AUTOMATION_SETTING_CHANGED: state.automationTabHasBeenSelected,\r\n EXT_THERM_CFG: (state.devInfo?.dam?.supportsExtTherm && formData.EXT_THERM_CFG && formData.EXT_THERM_CFG.value) || undefined,\r\n INSTALLATION_LOCATION: valueOrNull(formData.DAM_INSTALLATION_LOCATION_item?.value),\r\n PLACEMENT: (formData.DAM_PLACEMENT_item?.value) || 'RETURN',\r\n T0_POSITION: valueOrNull(formData.DAM_PLACEMENT_item?.value === 'DUO' && formData.T0_POSITION_DAM?.value),\r\n T1_POSITION: valueOrNull(formData.DAM_PLACEMENT_item?.value === 'DUO' && formData.T1_POSITION_DAM?.value),\r\n };\r\n return damData;\r\n };\r\n\r\n const setDamDataWithCanSelfReference = (damData: ApiParams['/dam/set-dam-info']) => {\r\n if (state.devInfo?.dam?.CAN_SELF_REFERENCE) {\r\n damData.SELF_REFERENCE = formData.REL_DUT_ID_item?.DEV_ID?.startsWith('DAM');\r\n if (damData.SELF_REFERENCE) {\r\n damData.MINIMUM_TEMPERATURE = parseDecimalNumber(formData.MINIMUM_TEMPERATURE || '20') || 20;\r\n damData.MAXIMUM_TEMPERATURE = parseDecimalNumber(formData.MAXIMUM_TEMPERATURE || '28') || 28;\r\n }\r\n damData.UPPER_HYSTERESIS = parseDecimalNumber(formData.ECO_UPPER_HYSTERESIS || '0') || 0;\r\n damData.LOWER_HYSTERESIS = parseDecimalNumber(formData.ECO_LOWER_HYSTERESIS || '0') || 0;\r\n damData.SETPOINT = parseDecimalNumber(formData.ECO_SETPOINT || '21') || 21;\r\n }\r\n\r\n if (state.devInfo?.dam?.CAN_SELF_REFERENCE && !checkDamFields(damData)) {\r\n return false;\r\n }\r\n return true;\r\n };\r\n\r\n const saveDamInfo = async () => {\r\n const damData = formatDamData();\r\n\r\n if (!validateDamParams(damData)) return;\r\n\r\n if (!setDamDataWithCanSelfReference(damData)) return;\r\n\r\n if (damData.ENABLE_ECO === 2) {\r\n damData.SCHEDULE_START_BEHAVIOR = valueOrNull(formData.ECO_SCHEDULE_START_BEHAVIOR_item?.value);\r\n damData.ECO_INT_TIME = parseDecimalNumber(formData.ECO_INTERVAL_TIME || '0') || 0;\r\n damData.LTC = parseDecimalNumber(formData.ECO_LTC || '0') || 0;\r\n damData.LTI = parseDecimalNumber(formData.ECO_LTI || '0') || 0;\r\n damData.UPPER_HYSTERESIS = parseDecimalNumber(formData.ECO_UPPER_HYSTERESIS || '0') || 0;\r\n damData.LOWER_HYSTERESIS = parseDecimalNumber(formData.ECO_LOWER_HYSTERESIS || '0') || 0;\r\n }\r\n\r\n await apiCall('/dam/set-dam-info', damData);\r\n redirectToProfile();\r\n };\r\n\r\n const dutBeginValidations = () => {\r\n const environmentToCheck = comboOpts.environments.find((item) => item.ENVIRONMENT_ID === formData.ENVIRONMENT_ID_item?.ENVIRONMENT_ID);\r\n if (formData.ENVIRONMENT_ID_item && environmentToCheck && environmentToCheck.DUT_CODE && environmentToCheck.DUT_CODE !== state.devId) {\r\n toast.warn(t('outroDutRelacionadoAmbiente'));\r\n return false;\r\n }\r\n\r\n return true;\r\n };\r\n\r\n const formatDutData = () => {\r\n const dutData: ApiParams['/dut/set-dut-info'] = {\r\n DEV_ID: state.devId,\r\n ROOM_NAME: valueOrNull(formData.ROOM_NAME),\r\n PLACEMENT: valueOrNull(formData.PLACEMENT_item?.value),\r\n CLIENT_ID: valueOrNull(formData.CLIENT_ID_item?.CLIENT_ID),\r\n UNIT_ID: valueOrNull(formData.UNIT_ID_item?.UNIT_ID),\r\n TEMPERATURE_OFFSET: formData.TEMPERATURE_OFFSET && state.offsetChecked ? parseDecimalNumber(formData.TEMPERATURE_OFFSET) : null,\r\n ENVIRONMENT_ID: valueOrNull(formData.ENVIRONMENT_ID_item?.ENVIRONMENT_ID),\r\n groups: filtComboOpts.groups.filter((group) => group.checked).map((group) => group.value.toString()),\r\n };\r\n return dutData;\r\n };\r\n\r\n const handleDutAsset = async () => {\r\n if ((!devInfo?.GROUP_ID && state.persistedAssetDevice) || (state.persistedAssetDevice && formData.ASSET_ID_item && state.persistedAssetDevice.value !== formData.ASSET_ID_item.value) || (state.persistedAssetDevice && !formData.ASSET_ID_item)) {\r\n await apiCall('/clients/edit-asset', {\r\n ASSET_ID: state.persistedAssetDevice.value,\r\n DAT_ID: state.persistedAssetDevice.DAT_ID as string || undefined,\r\n AST_DESC: state.persistedAssetDevice.label,\r\n CLIENT_ID: state.persistedAssetDevice.CLIENT_ID,\r\n GROUP_ID: state.persistedAssetDevice.GROUP_ID,\r\n UNIT_ID: state.persistedAssetDevice.UNIT_ID,\r\n AST_ROLE: state.persistedAssetDevice.ASSET_ROLE,\r\n DEV_ID: null,\r\n OLD_DEV_ID: state.persistedAssetDevice.DEV_ID,\r\n DAT_INDEX: state.persistedAssetDevice.DAT_INDEX,\r\n });\r\n }\r\n\r\n if (formData.ASSET_ID_item) {\r\n await apiCall('/clients/edit-asset', {\r\n ASSET_ID: formData.ASSET_ID_item.value,\r\n DAT_ID: formData.ASSET_ID_item.DAT_ID as string || undefined,\r\n AST_DESC: formData.ASSET_ID_item.label,\r\n CLIENT_ID: formData.ASSET_ID_item.CLIENT_ID,\r\n GROUP_ID: formData.ASSET_ID_item.GROUP_ID,\r\n UNIT_ID: formData.ASSET_ID_item.UNIT_ID,\r\n AST_ROLE: formData.ASSET_ID_item.ASSET_ROLE,\r\n DEV_ID: state.devId,\r\n OLD_DEV_ID: formData.ASSET_ID_item.DEV_ID,\r\n DAT_INDEX: formData.ASSET_ID_item.DAT_INDEX,\r\n });\r\n }\r\n };\r\n\r\n const beginDutAutValidations = (dutData: ApiParams['/dut/set-dut-info']) => {\r\n dutData.groups = filtComboOpts.groups.filter((group) => group.checked).map((group) => group.value.toString());\r\n if (!checkGroupAutomated(dutData.groups)) {\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n\r\n if (formData.DUTAUTCFG_item?.value === 'IR' && (!dutData.CLIENT_ID || !dutData.UNIT_ID) && (state.devInfo?.CLIENT_ID || state.devInfo?.UNIT_ID)) {\r\n if (profile.permissions.isInstaller) {\r\n setSendAndDisableAut(true);\r\n } else {\r\n toast.warn(t(t('precisaDesabilitarAutomacao')));\r\n setState({ isSaving: false });\r\n }\r\n return false;\r\n }\r\n if (formData.DUTAUTCFG_item?.value === 'IR' && (!dutData.groups || dutData.groups.length === 0)) {\r\n toast.warn(t('precisaMaquinaAutomatizada'));\r\n setState({ isSaving: false });\r\n return false;\r\n }\r\n return true;\r\n };\r\n\r\n const handleDutSched = (dutSchedules: ApiParams['/dut/set-dut-schedules']) => {\r\n // #region Dut Schedules\r\n dutSchedules.NEED_MULT_SCHEDULES = state.NEED_MULT_SCHEDULES;\r\n\r\n // Adiciona programações editadas/incluídas\r\n if (state.DUTS_SCHEDULES_FILTERED.length > 0 && formData.DUTAUTCFG_item?.value === 'IR') {\r\n dutSchedules.schedules = state.DUTS_SCHEDULES_FILTERED.map((schedule) => {\r\n const hasIrCode = schedule.CTRLOPER === '7_FORCED' && schedule.FORCED_BEHAVIOR === 'dut-forced-cool' && schedule.SETPOINT != null;\r\n return ({\r\n DUT_SCHEDULE_ID: schedule.DUT_SCHEDULE_ID,\r\n DELETE: false,\r\n SCHEDULE_TITLE: schedule.SCHEDULE_TITLE,\r\n SCHEDULE_STATUS: schedule.SCHEDULE_STATUS,\r\n PERMISSION: schedule.PERMISSION,\r\n BEGIN_TIME: schedule.BEGIN_TIME,\r\n END_TIME: schedule.END_TIME,\r\n CTRLOPER: schedule.CTRLOPER,\r\n DAYS: schedule.DAYS,\r\n SETPOINT: schedule.SETPOINT,\r\n LTC: schedule.LTC,\r\n LTI: schedule.LTI,\r\n UPPER_HYSTERESIS: schedule.UPPER_HYSTERESIS,\r\n LOWER_HYSTERESIS: schedule.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: schedule.SCHEDULE_START_BEHAVIOR,\r\n SCHEDULE_END_BEHAVIOR: schedule.SCHEDULE_END_BEHAVIOR,\r\n FORCED_BEHAVIOR: schedule.FORCED_BEHAVIOR,\r\n IR_ID_COOL: hasIrCode ? state.irCommands.find((item) => item.TEMPER === schedule.SETPOINT)?.IR_ID || null : null,\r\n ACTION_MODE: schedule.ACTION_MODE,\r\n ACTION_TIME: schedule.ACTION_TIME,\r\n ACTION_POST_BEHAVIOR: schedule.ACTION_POST_BEHAVIOR,\r\n });\r\n });\r\n }\r\n\r\n // Adiciona programações deletadas\r\n if (formData.DUTAUTCFG_item?.value === 'IR') {\r\n state.DUTS_SCHEDULES_DELETED.forEach((deletedId) => {\r\n const schedule = state.DUTS_SCHEDULES.find((deleted) => deleted.DUT_SCHEDULE_ID === deletedId);\r\n if (schedule) {\r\n dutSchedules.schedules.push({\r\n DUT_SCHEDULE_ID: schedule.DUT_SCHEDULE_ID,\r\n DELETE: true,\r\n SCHEDULE_TITLE: schedule.SCHEDULE_TITLE,\r\n SCHEDULE_STATUS: schedule.SCHEDULE_STATUS,\r\n PERMISSION: schedule.PERMISSION,\r\n BEGIN_TIME: schedule.BEGIN_TIME,\r\n END_TIME: schedule.END_TIME,\r\n CTRLOPER: schedule.CTRLOPER,\r\n DAYS: schedule.DAYS,\r\n SETPOINT: schedule.SETPOINT,\r\n LTC: schedule.LTC,\r\n LTI: schedule.LTI,\r\n UPPER_HYSTERESIS: schedule.UPPER_HYSTERESIS,\r\n LOWER_HYSTERESIS: schedule.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: schedule.SCHEDULE_START_BEHAVIOR,\r\n SCHEDULE_END_BEHAVIOR: schedule.SCHEDULE_END_BEHAVIOR,\r\n FORCED_BEHAVIOR: schedule.FORCED_BEHAVIOR,\r\n ACTION_MODE: schedule.ACTION_MODE,\r\n ACTION_TIME: schedule.ACTION_TIME,\r\n ACTION_POST_BEHAVIOR: schedule.ACTION_POST_BEHAVIOR,\r\n });\r\n }\r\n });\r\n }\r\n else {\r\n state.DUTS_SCHEDULES.forEach((schedule) => {\r\n dutSchedules.schedules.push({\r\n DUT_SCHEDULE_ID: schedule.DUT_SCHEDULE_ID,\r\n DELETE: true,\r\n SCHEDULE_TITLE: schedule.SCHEDULE_TITLE,\r\n SCHEDULE_STATUS: schedule.SCHEDULE_STATUS,\r\n PERMISSION: schedule.PERMISSION,\r\n BEGIN_TIME: schedule.BEGIN_TIME,\r\n END_TIME: schedule.END_TIME,\r\n CTRLOPER: schedule.CTRLOPER,\r\n DAYS: schedule.DAYS,\r\n SETPOINT: schedule.SETPOINT,\r\n LTC: schedule.LTC,\r\n LTI: schedule.LTI,\r\n UPPER_HYSTERESIS: schedule.UPPER_HYSTERESIS,\r\n LOWER_HYSTERESIS: schedule.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: schedule.SCHEDULE_START_BEHAVIOR,\r\n SCHEDULE_END_BEHAVIOR: schedule.SCHEDULE_END_BEHAVIOR,\r\n FORCED_BEHAVIOR: schedule.FORCED_BEHAVIOR,\r\n ACTION_MODE: schedule.ACTION_MODE,\r\n ACTION_TIME: schedule.ACTION_TIME,\r\n ACTION_POST_BEHAVIOR: schedule.ACTION_POST_BEHAVIOR,\r\n });\r\n });\r\n }\r\n // #endregion Dut Schedules\r\n };\r\n\r\n const handleDutSchedWithoutMultProg = (dutData: ApiParams['/dut/set-dut-info']) => {\r\n dutData.CTRLOPER = '0_NO_CONTROL';\r\n dutData.TSETPOINT = null;\r\n dutData.LTCRIT = null;\r\n dutData.LTINF = null;\r\n dutData.UPPER_HYSTERESIS = null;\r\n dutData.LOWER_HYSTERESIS = null;\r\n dutData.SCHEDULE_START_BEHAVIOR = null;\r\n dutData.SCHEDULE_END_BEHAVIOR = null;\r\n dutData.FORCED_BEHAVIOR = null;\r\n dutData.IR_ID_COOL = null;\r\n dutData.ACTION_MODE = null;\r\n dutData.ACTION_TIME = null;\r\n dutData.ACTION_POST_BEHAVIOR = null;\r\n\r\n const scheduleAux = state.DUTS_SCHEDULES_FILTERED.filter((schedule) => schedule.PERMISSION === 'allow' && schedule.SCHEDULE_STATUS);\r\n\r\n if (scheduleAux != null && scheduleAux.length > 0) {\r\n const hasIrCode = scheduleAux[0].CTRLOPER === '7_FORCED' && scheduleAux[0].FORCED_BEHAVIOR === 'dut-forced-cool' && scheduleAux[0].SETPOINT != null;\r\n dutData.IR_ID_COOL = hasIrCode ? state.irCommands.find((item) => item.TEMPER === scheduleAux[0].SETPOINT)?.IR_ID || null : null;\r\n dutData.ACTION_MODE = scheduleAux[0].ACTION_MODE;\r\n dutData.LOWER_HYSTERESIS = scheduleAux[0].LOWER_HYSTERESIS;\r\n dutData.SCHEDULE_START_BEHAVIOR = scheduleAux[0].SCHEDULE_START_BEHAVIOR;\r\n dutData.SCHEDULE_END_BEHAVIOR = scheduleAux[0].SCHEDULE_END_BEHAVIOR;\r\n dutData.FORCED_BEHAVIOR = scheduleAux[0].FORCED_BEHAVIOR;\r\n dutData.ACTION_TIME = scheduleAux[0].ACTION_TIME;\r\n dutData.ACTION_POST_BEHAVIOR = scheduleAux[0].ACTION_POST_BEHAVIOR;\r\n dutData.CTRLOPER = scheduleAux[0].CTRLOPER ? scheduleAux[0].CTRLOPER : comboOpts.dutControlOperation[0].value;\r\n dutData.UPPER_HYSTERESIS = scheduleAux[0].UPPER_HYSTERESIS;\r\n dutData.TSETPOINT = scheduleAux[0].SETPOINT;\r\n dutData.LTCRIT = scheduleAux[0].LTC;\r\n dutData.LTINF = scheduleAux[0].LTI;\r\n }\r\n };\r\n\r\n const handleDutsExcepts = (dutData: ApiParams['/dut/set-dut-info'], dutExceptions: ApiParams['/dut/set-dut-exceptions']) => {\r\n // #region Dut Exceptions\r\n if (state.DUTS_EXCEPTIONS_FILTERED.length > 0 && dutData.USE_IR === 1) {\r\n dutExceptions.exceptions = state.DUTS_EXCEPTIONS_FILTERED.map((exception) => {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n const hasIrCode = exception.CTRLOPER === '7_FORCED' && exception.FORCED_BEHAVIOR === 'dut-forced-cool' && exception.SETPOINT != null;\r\n return {\r\n DUT_EXCEPTION_ID: exception.DUT_EXCEPTION_ID,\r\n DELETE: false,\r\n EXCEPTION_TITLE: exception.EXCEPTION_TITLE,\r\n EXCEPTION_DATE: day,\r\n REPEAT_YEARLY: exception.REPEAT_YEARLY,\r\n BEGIN_TIME: exception.BEGIN_TIME,\r\n END_TIME: exception.END_TIME,\r\n PERMISSION: exception.PERMISSION,\r\n EXCEPTION_STATUS_ID: 1,\r\n CTRLOPER: exception.CTRLOPER,\r\n SETPOINT: exception.SETPOINT,\r\n LTC: exception.LTC,\r\n LTI: exception.LTI,\r\n UPPER_HYSTERESIS: exception.UPPER_HYSTERESIS,\r\n LOWER_HYSTERESIS: exception.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n SCHEDULE_END_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n FORCED_BEHAVIOR: exception.FORCED_BEHAVIOR,\r\n IR_ID_COOL: hasIrCode ? state.irCommands.find((item) => item.TEMPER === exception.SETPOINT)?.IR_ID || null : null,\r\n ACTION_MODE: exception.ACTION_MODE,\r\n ACTION_TIME: exception.ACTION_TIME,\r\n ACTION_POST_BEHAVIOR: exception.ACTION_POST_BEHAVIOR,\r\n };\r\n });\r\n }\r\n\r\n if (dutData.USE_IR === 1) {\r\n state.DUTS_EXCEPTIONS_DELETED.forEach((deletedId) => {\r\n const exception = state.DUTS_EXCEPTIONS.find((deleted) => deleted.DUT_EXCEPTION_ID === deletedId);\r\n if (exception) {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n dutExceptions.exceptions.push({\r\n EXCEPTION_TITLE: exception.EXCEPTION_TITLE,\r\n DUT_EXCEPTION_ID: exception.DUT_EXCEPTION_ID,\r\n REPEAT_YEARLY: exception.REPEAT_YEARLY,\r\n BEGIN_TIME: exception.BEGIN_TIME,\r\n END_TIME: exception.END_TIME,\r\n LOWER_HYSTERESIS: exception.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n SCHEDULE_END_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n FORCED_BEHAVIOR: exception.FORCED_BEHAVIOR,\r\n ACTION_MODE: exception.ACTION_MODE,\r\n PERMISSION: exception.PERMISSION,\r\n EXCEPTION_STATUS_ID: 1,\r\n CTRLOPER: exception.CTRLOPER,\r\n SETPOINT: exception.SETPOINT,\r\n LTC: exception.LTC,\r\n LTI: exception.LTI,\r\n EXCEPTION_DATE: day,\r\n UPPER_HYSTERESIS: exception.UPPER_HYSTERESIS,\r\n ACTION_TIME: exception.ACTION_TIME,\r\n ACTION_POST_BEHAVIOR: exception.ACTION_POST_BEHAVIOR,\r\n DELETE: true,\r\n });\r\n }\r\n });\r\n }\r\n else {\r\n state.DUTS_EXCEPTIONS.forEach((exception) => {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n dutExceptions.exceptions.push({\r\n DELETE: true,\r\n DUT_EXCEPTION_ID: exception.DUT_EXCEPTION_ID,\r\n EXCEPTION_TITLE: exception.EXCEPTION_TITLE,\r\n BEGIN_TIME: exception.BEGIN_TIME,\r\n END_TIME: exception.END_TIME,\r\n PERMISSION: exception.PERMISSION,\r\n UPPER_HYSTERESIS: exception.UPPER_HYSTERESIS,\r\n LOWER_HYSTERESIS: exception.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n EXCEPTION_STATUS_ID: 1,\r\n CTRLOPER: exception.CTRLOPER,\r\n FORCED_BEHAVIOR: exception.FORCED_BEHAVIOR,\r\n ACTION_MODE: exception.ACTION_MODE,\r\n ACTION_TIME: exception.ACTION_TIME,\r\n ACTION_POST_BEHAVIOR: exception.ACTION_POST_BEHAVIOR,\r\n SETPOINT: exception.SETPOINT,\r\n EXCEPTION_DATE: day,\r\n REPEAT_YEARLY: exception.REPEAT_YEARLY,\r\n LTC: exception.LTC,\r\n LTI: exception.LTI,\r\n SCHEDULE_END_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n });\r\n });\r\n }\r\n // #endregion Dut Exceptions\r\n };\r\n\r\n const handleDutsCommandsWithoutMultSchedsPart1 = (dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n const deleteDayProg = {\r\n permission: 'allow' as 'allow' | 'forbid',\r\n start: '',\r\n end: '',\r\n clearProg: true,\r\n };\r\n let scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.mon && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.mon = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.mon = deleteDayProg;\r\n }\r\n\r\n scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.tue && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.tue = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.tue = deleteDayProg;\r\n }\r\n\r\n scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.wed && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.wed = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.wed = deleteDayProg;\r\n }\r\n\r\n scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.thu && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.thu = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.thu = deleteDayProg;\r\n }\r\n };\r\n\r\n const handleDutsCommandsWithoutMultSchedsPart2 = (dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n const deleteDayProg = {\r\n permission: 'allow' as 'allow' | 'forbid',\r\n start: '',\r\n end: '',\r\n clearProg: true,\r\n };\r\n let scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.fri && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.fri = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.fri = deleteDayProg;\r\n }\r\n\r\n scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.sat && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.sat = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.sat = deleteDayProg;\r\n }\r\n\r\n scheduleAux = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.DAYS.sun && schedule.SCHEDULE_STATUS);\r\n if (scheduleAux) {\r\n dutProgramming.week.sun = {\r\n permission: scheduleAux.PERMISSION,\r\n start: scheduleAux.BEGIN_TIME,\r\n end: scheduleAux.END_TIME,\r\n };\r\n }\r\n else {\r\n dutProgramming.week.sun = deleteDayProg;\r\n }\r\n };\r\n\r\n const handleDutsCommandsWithoutMultScheds = (dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n handleDutsCommandsWithoutMultSchedsPart1(dutProgramming);\r\n handleDutsCommandsWithoutMultSchedsPart2(dutProgramming);\r\n\r\n state.DUTS_EXCEPTIONS_FILTERED.forEach((exception) => {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n if (!dutProgramming.exceptions) dutProgramming.exceptions = {};\r\n dutProgramming.exceptions[day] = {\r\n permission: exception.PERMISSION,\r\n start: exception.BEGIN_TIME,\r\n end: exception.END_TIME,\r\n };\r\n });\r\n };\r\n\r\n const handleDutsCommands = (dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n // #region Dut Commands\r\n if (!state.NEED_MULT_SCHEDULES && formData.DUTAUTCFG_item?.value === 'IR') {\r\n handleDutsCommandsWithoutMultScheds(dutProgramming);\r\n }\r\n // Desativou automação e havia cards cadastrados; necessário limpar programação do dispositivo\r\n else if (formData.DUTAUTCFG_item?.value !== 'IR' && state.DUTS_SCHEDULES.length > 0) {\r\n const deleteDayProg = {\r\n permission: 'allow' as 'allow' | 'forbid',\r\n start: '',\r\n end: '',\r\n clearProg: true,\r\n };\r\n dutProgramming.week.mon = deleteDayProg;\r\n dutProgramming.week.tue = deleteDayProg;\r\n dutProgramming.week.wed = deleteDayProg;\r\n dutProgramming.week.thu = deleteDayProg;\r\n dutProgramming.week.fri = deleteDayProg;\r\n dutProgramming.week.sat = deleteDayProg;\r\n dutProgramming.week.sun = deleteDayProg;\r\n\r\n state.DUTS_EXCEPTIONS.forEach((exception) => {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n if (!dutProgramming.exceptions) dutProgramming.exceptions = {};\r\n dutProgramming.exceptions[day] = {\r\n permission: exception.PERMISSION,\r\n start: exception.BEGIN_TIME,\r\n end: exception.END_TIME,\r\n clearProg: true,\r\n };\r\n });\r\n }\r\n state.DUTS_EXCEPTIONS_DELETED.forEach((exceptionId) => {\r\n const exception = state.DUTS_EXCEPTIONS.find((item) => item.DUT_EXCEPTION_ID === exceptionId);\r\n if (exception) {\r\n const day = `${exception.EXCEPTION_DATE.substring(6, 10)}-${exception.EXCEPTION_DATE.substring(3, 5)}-${exception.EXCEPTION_DATE.substring(0, 2)}`;\r\n if (!dutProgramming.exceptions) dutProgramming.exceptions = {};\r\n dutProgramming.exceptions[day] = {\r\n permission: exception.PERMISSION,\r\n start: exception.BEGIN_TIME,\r\n end: exception.END_TIME,\r\n clearProg: true,\r\n };\r\n }\r\n });\r\n // #endregion Dut Commands\r\n };\r\n\r\n const setDutExcepts = (scheduleReference: ScheduleDut) => {\r\n for (const dut of state.DUTS_EXCEPTIONS) {\r\n if (dut.PERMISSION === 'allow') {\r\n dut.CTRLOPER = scheduleReference.CTRLOPER;\r\n dut.SCHEDULE_END_BEHAVIOR = scheduleReference.SCHEDULE_END_BEHAVIOR;\r\n dut.SCHEDULE_START_BEHAVIOR = scheduleReference.SCHEDULE_START_BEHAVIOR;\r\n dut.ACTION_MODE = scheduleReference.ACTION_MODE;\r\n dut.ACTION_TIME = scheduleReference.ACTION_TIME;\r\n dut.ACTION_POST_BEHAVIOR = scheduleReference.ACTION_POST_BEHAVIOR;\r\n dut.LOWER_HYSTERESIS = scheduleReference.LOWER_HYSTERESIS;\r\n dut.FORCED_BEHAVIOR = scheduleReference.FORCED_BEHAVIOR;\r\n dut.LTC = scheduleReference.LTC;\r\n dut.LTI = scheduleReference.LTI;\r\n dut.SETPOINT = scheduleReference.SETPOINT;\r\n dut.UPPER_HYSTERESIS = scheduleReference.UPPER_HYSTERESIS;\r\n }\r\n }\r\n };\r\n\r\n const setDutExceptsFiltered = (scheduleReference: ScheduleDut) => {\r\n for (const dut of state.DUTS_EXCEPTIONS_FILTERED) {\r\n if (dut.PERMISSION === 'allow') {\r\n dut.SETPOINT = scheduleReference.SETPOINT;\r\n dut.SCHEDULE_END_BEHAVIOR = scheduleReference.SCHEDULE_END_BEHAVIOR;\r\n dut.CTRLOPER = scheduleReference.CTRLOPER;\r\n dut.FORCED_BEHAVIOR = scheduleReference.FORCED_BEHAVIOR;\r\n dut.SCHEDULE_START_BEHAVIOR = scheduleReference.SCHEDULE_START_BEHAVIOR;\r\n dut.ACTION_MODE = scheduleReference.ACTION_MODE;\r\n dut.ACTION_TIME = scheduleReference.ACTION_TIME;\r\n dut.ACTION_POST_BEHAVIOR = scheduleReference.ACTION_POST_BEHAVIOR;\r\n dut.LTC = scheduleReference.LTC;\r\n dut.LTI = scheduleReference.LTI;\r\n dut.LOWER_HYSTERESIS = scheduleReference.LOWER_HYSTERESIS;\r\n dut.UPPER_HYSTERESIS = scheduleReference.UPPER_HYSTERESIS;\r\n }\r\n }\r\n };\r\n\r\n const handleEqualsExcepts = () => {\r\n // Altera configuração de exceções quando todas forem iguais e não precisar de programação múltipla\r\n if (!state.NEED_MULT_SCHEDULES && state.CHANGE_EXCEPTION_PARAMETERS) {\r\n const scheduleReference = state.DUTS_SCHEDULES_FILTERED.find((schedule) => schedule.PERMISSION === 'allow' && schedule.SCHEDULE_STATUS);\r\n if (scheduleReference) {\r\n setDutExcepts(scheduleReference);\r\n setDutExceptsFiltered(scheduleReference);\r\n }\r\n }\r\n };\r\n\r\n const setDutAutTimeAndConf = (dutData: ApiParams['/dut/set-dut-info']) => {\r\n if (formData.RESENDPER) {\r\n const resendPER: number = parseDecimalNumber(formData.RESENDPER)!;\r\n if (resendPER % 5 !== 0 || resendPER < 5) {\r\n toast.error(t('erroTempoReenvioDeveSerMultiplo5Minimo5'));\r\n return false;\r\n }\r\n dutData.RESENDPER = parseDecimalNumber(formData.RESENDPER)! * 60;\r\n } else {\r\n dutData.RESENDPER = null;\r\n }\r\n\r\n if (formData.DUTAUTCFG_item) {\r\n if (formData.DUTAUTCFG_item.value === 'IR') {\r\n dutData.PORTCFG = 'IR';\r\n dutData.USE_IR = 1;\r\n } else if (formData.DUTAUTCFG_item.value === 'RELAY') {\r\n dutData.PORTCFG = 'RELAY';\r\n dutData.USE_IR = 0;\r\n } else if (formData.DUTAUTCFG_item.value === 'DISABLED') {\r\n dutData.PORTCFG = 'IR';\r\n dutData.USE_IR = 0;\r\n }\r\n }\r\n return true;\r\n };\r\n\r\n const isDevicesConnecteds = () => {\r\n if (state.devInfo?.status !== 'ONLINE' && tabs.find((tab) => tab.title === t('automacao') && tab.isActive)) {\r\n toast.warn(t('erroRealizarAlteracaoParametrosDispositivoSemConexao'));\r\n return false;\r\n }\r\n return true;\r\n };\r\n\r\n const setDutAutEquipInfo = async (dutData: ApiParams['/dut/set-dut-info']) => {\r\n if (state.devInfo?.status !== 'ONLINE' && tabs.find((tab) => tab.title === t('equipamento') && tab.isActive)) {\r\n dutData.UPDATE_AUTOM_INFO = false;\r\n await apiCall('/dut/set-dut-info', dutData);\r\n\r\n try {\r\n if (dutData.PLACEMENT === 'DUO' && formData.SENSOR_AUTOM == null) throw new Error(t('erroT0eT1naoDefinidos'));\r\n if (dutData.PLACEMENT !== state.devInfo?.dut?.PLACEMENT || (dutData.PLACEMENT === 'DUO' && (formData.SENSOR_AUTOM ?? 0) !== state.devInfo?.dut?.SENSOR_AUTOM)) {\r\n await apiCall('/dut/set-temperature-sensors', { devId: state.devId, value: formData.SENSOR_AUTOM ?? 0, placement: dutData.PLACEMENT ?? 'AMB' });\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarConfiguracaoSensores'));\r\n }\r\n toast.success(t('sucessoSalvar'));\r\n setState({ isSaving: false });\r\n return true;\r\n }\r\n return false;\r\n };\r\n\r\n const handleDutAut = async (dutData: ApiParams['/dut/set-dut-info'], dutSchedules: ApiParams['/dut/set-dut-schedules'], dutExceptions: ApiParams['/dut/set-dut-exceptions'], dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n if (!beginDutAutValidations(dutData)) return false;\r\n\r\n const ans = await setDutAutEquipInfo(dutData);\r\n if (ans) return false;\r\n\r\n if (!isDevicesConnecteds()) return false;\r\n\r\n const conflits = await checkCardsNoConflicts();\r\n if (!conflits) {\r\n return false;\r\n }\r\n await checkNeedMultipleSchedule();\r\n\r\n handleDutSched(dutSchedules);\r\n\r\n dutData.UPDATE_AUTOM_INFO = !state.NEED_MULT_SCHEDULES || (!!state.devInfo?.dut_aut?.DUTAUT_DISABLED && formData.DUTAUTCFG_item?.value === 'IR');\r\n dutData.MCHN_BRAND = formData.MCHN_BRAND_item?.value;\r\n dutData.MCHN_MODEL = formData.MCHN_MODEL || null;\r\n\r\n // Não precisa entrar no script de Programação Múltipla, pode enviar programação normalmente\r\n if (!state.NEED_MULT_SCHEDULES) {\r\n handleDutSchedWithoutMultProg(dutData);\r\n }\r\n\r\n if (!setDutAutTimeAndConf(dutData)) return false;\r\n\r\n handleEqualsExcepts();\r\n\r\n handleDutsExcepts(dutData, dutExceptions);\r\n\r\n handleDutsCommands(dutProgramming);\r\n return true;\r\n };\r\n\r\n const sendDutAutData = async (dutData: ApiParams['/dut/set-dut-info'], dutSchedules: ApiParams['/dut/set-dut-schedules'], dutExceptions: ApiParams['/dut/set-dut-exceptions'], dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n if (!state.NEED_MULT_SCHEDULES) {\r\n try {\r\n await apiCall('/resend-dut-ir-codes', { devId: state.devId });\r\n }\r\n catch (err) {\r\n toast.error('Não foi possível reenviar comandos de IR do dispositivo.');\r\n }\r\n\r\n try {\r\n await apiCall('/dut/set-programming-v3', dutProgramming);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroEnviarProgramacao'));\r\n setState({ isSaving: false });\r\n return;\r\n }\r\n try {\r\n await apiCall('/dut/set-dut-schedules', dutSchedules);\r\n await apiCall('/dut/set-dut-exceptions', dutExceptions);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarCardsProgramacao'));\r\n setState({ isSaving: false });\r\n return;\r\n }\r\n }\r\n else {\r\n if (state.DUTS_EXCEPTIONS_DELETED && state.DUTS_EXCEPTIONS_DELETED.length > 0) {\r\n try {\r\n await apiCall('/dut/update-programming', dutProgramming);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroApagarExcecao'));\r\n setState({ isSaving: false });\r\n return;\r\n }\r\n }\r\n try {\r\n await apiCall('/dut/set-dut-schedules', dutSchedules);\r\n await apiCall('/dut/set-dut-exceptions', dutExceptions);\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarCardsProgramacao'));\r\n setState({ isSaving: false });\r\n return;\r\n }\r\n }\r\n if (!state.NEED_MULT_SCHEDULES) {\r\n toast.success(t('sucessoSalvarProgramacao'));\r\n }\r\n else {\r\n toast.success(t('sucessoSalvarProgramacaoEnviadaMultiplaProgramacao'));\r\n setState({ isSaving: false });\r\n redirectToProfile();\r\n }\r\n clearArraysSchedulesExceptions();\r\n };\r\n\r\n const sendDutData = async (dutData: ApiParams['/dut/set-dut-info'], dutSchedules: ApiParams['/dut/set-dut-schedules'], dutExceptions: ApiParams['/dut/set-dut-exceptions'], dutProgramming: ApiParams['/dut/set-programming-v3']) => {\r\n await apiCall('/dut/set-dut-info', dutData);\r\n\r\n try {\r\n if (dutData.PLACEMENT === 'DUO' && formData.SENSOR_AUTOM == null) throw new Error(t('erroT0eT1naoDefinidos'));\r\n if (dutData.PLACEMENT !== state.devInfo?.dut?.PLACEMENT || (dutData.PLACEMENT === 'DUO' && (formData.SENSOR_AUTOM ?? 0) !== state.devInfo?.dut?.SENSOR_AUTOM)) {\r\n await apiCall('/dut/set-temperature-sensors', { devId: state.devId, value: formData.SENSOR_AUTOM ?? 0, placement: dutData.PLACEMENT ?? 'AMB' });\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarConfiguracaoSensores'));\r\n }\r\n\r\n if (state.devType.isDutAut && !state.devType.isDutQA) {\r\n await sendDutAutData(dutData, dutSchedules, dutExceptions, dutProgramming);\r\n }\r\n };\r\n\r\n const saveDutInfo = async () => {\r\n if (!dutBeginValidations()) return;\r\n\r\n const dutData = formatDutData();\r\n\r\n await handleDutAsset();\r\n\r\n const dutSchedules: ApiParams['/dut/set-dut-schedules'] = {\r\n CLIENT_ID: valueOrNull(formData.CLIENT_ID_item?.CLIENT_ID),\r\n UNIT_ID: valueOrNull(formData.UNIT_ID_item?.UNIT_ID),\r\n DUT_ID: state.devId,\r\n NEED_MULT_SCHEDULES: state.NEED_MULT_SCHEDULES,\r\n schedules: [],\r\n };\r\n\r\n const dutExceptions: ApiParams['/dut/set-dut-exceptions'] = {\r\n CLIENT_ID: valueOrNull(formData.CLIENT_ID_item?.CLIENT_ID),\r\n UNIT_ID: valueOrNull(formData.UNIT_ID_item?.UNIT_ID),\r\n DUT_ID: state.devId,\r\n exceptions: [],\r\n };\r\n\r\n const dutProgramming: ApiParams['/dut/set-programming-v3'] = {\r\n dutId: state.devId,\r\n week: {},\r\n exceptions: {},\r\n };\r\n\r\n if (state.devType.isDutAut && !state.devType.isDutQA && filtComboOpts.groups.filter((group) => group.checked).map((group) => group.value.toString()).length) {\r\n const ans = await handleDutAut(dutData, dutSchedules, dutExceptions, dutProgramming);\r\n if (!(ans)) return;\r\n }\r\n\r\n await sendDutData(dutData, dutSchedules, dutExceptions, dutProgramming);\r\n };\r\n\r\n const handleDriConfig = (driData: ApiParams['/dri/set-dri-info']) => {\r\n const cfgsList = formData.varsConfigInput.replace(/\\r/g, '\\n').split('\\n').map((x) => x.trim()).filter((x) => !!x);\r\n\r\n if (cfgsList.length > 0) {\r\n driData.varsList = [];\r\n try {\r\n for (let item of cfgsList) {\r\n if (item.endsWith(',')) item = item.substr(0, item.length - 1);\r\n const itemJ = JSON.parse(item);\r\n if (itemJ?.address?.protocol || itemJ?.address?.['modbus-protocol'] || itemJ?.address?.['device-protocol']) {\r\n driData.varsList.push(itemJ);\r\n } else {\r\n console.log(item);\r\n toast.error(t('erroInterpretarConfiguracaoDri'));\r\n return false;\r\n }\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroInterpretarConfiguracaoDri'));\r\n return false;\r\n }\r\n }\r\n return true;\r\n };\r\n\r\n const saveDriInfo = async () => {\r\n const driData: ApiParams['/dri/set-dri-info'] = {\r\n DRI_ID: state.devId,\r\n CLIENT_ID: valueOrNull(formData.CLIENT_ID_item?.CLIENT_ID),\r\n UNIT_ID: valueOrNull(formData.UNIT_ID_item?.UNIT_ID),\r\n };\r\n if (profile.manageAllClients) {\r\n if (!handleDriConfig(driData)) return;\r\n }\r\n await apiCall('/dri/set-dri-info', driData);\r\n };\r\n\r\n async function saveDevInfo(tabs) {\r\n try {\r\n setState({ isSaving: true });\r\n const {\r\n isDac, isDam, isDut, isDutAut, isDri, isDutQA,\r\n } = getDevType();\r\n\r\n if (isDac) {\r\n await saveDacInfo();\r\n } else if (isDam) {\r\n await saveDamInfo();\r\n } else if (isDut) {\r\n await saveDutInfo();\r\n } else if (isDri) {\r\n await saveDriInfo();\r\n } else {\r\n toast.error(t('houveErro'));\r\n return;\r\n }\r\n\r\n // TODO: se não tiver UNIT selecionada, não é para mostrar nenhum group na lista.\r\n\r\n getData().catch(console.log);\r\n if (isDutAut && !isDutQA) {\r\n if (!state.NEED_MULT_SCHEDULES) {\r\n await apiCall('/resend-dut-aut-config', { devId: state.devId })\r\n .then(() => {\r\n toast.success(t('sucessoSalvar'));\r\n setState({ isSaving: false });\r\n redirectToProfile();\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n toast.error(t('erroEnviarNovaAutomacaoDut'));\r\n });\r\n }\r\n } else {\r\n redirectToProfile();\r\n toast.success(t('sucessoSalvar'));\r\n }\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroSalvarAlteracoes'));\r\n }\r\n setState({ isSaving: false });\r\n }\r\n\r\n function redirectToProfile() {\r\n const urlBase = history.location.pathname.replace('editar', 'informacoes');\r\n history.push(urlBase);\r\n }\r\n\r\n function clearArraysSchedulesExceptions() {\r\n state.DUTS_SCHEDULES = [];\r\n state.DUTS_SCHEDULES_FILTERED = [];\r\n state.DUTS_SCHEDULES_DELETED = [];\r\n state.DUTS_EXCEPTIONS = [];\r\n state.DUTS_EXCEPTIONS_FILTERED = [];\r\n state.DUTS_EXCEPTIONS_DELETED = [];\r\n }\r\n\r\n function dateDiffInDays(a, b) {\r\n const utc1 = Date.UTC(a.getFullYear(), a.getMonth(), a.getDate());\r\n const utc2 = Date.UTC(b.getFullYear(), b.getMonth(), b.getDate());\r\n\r\n return Math.floor((utc2 - utc1) / (24 * 60 * 60 * 1000));\r\n }\r\n\r\n async function getDAMFUnom() {\r\n if (!(state.devInfo?.DAT_BEGAUT)) return null;\r\n const groupIds = state.devInfo?.dam?.groups.map((r) => r.GROUP_ID);\r\n if (groupIds && groupIds.length > 0) {\r\n // OK\r\n }\r\n else return null;\r\n const { list: dacsList } = await apiCall('/dac/get-dacs-list', { groupIds });\r\n if (dacsList.length === 0) {\r\n toast.warn(t('avisoNaoHaDacAssociadoMaquinaAutomatizadaDAM'));\r\n return null;\r\n }\r\n const dacId = dacsList[0].DAC_ID;\r\n const begMonDate = new Date(state.devInfo.DAT_BEGMON);\r\n const begAutDate = new Date(state.devInfo.DAT_BEGAUT);\r\n const day = begMonDate.getDate().toString().padStart(2, '0');\r\n const month = (begMonDate.getMonth() + 1).toString().padStart(2, '0');\r\n const year = begMonDate.getFullYear().toString();\r\n const datIni = [year, month, day].join('-');\r\n const numDays = dateDiffInDays(begMonDate, begAutDate);\r\n const { list: usageList } = await apiCall('/dac/get-usage-per-day', { dacId, datIni, numDays });\r\n if (usageList) {\r\n const usageListFiltered = usageList.filter((r) => r.hoursOn > 0);\r\n const totalHoursOn = usageListFiltered.reduce((acc, value) => acc + value.hoursOn, 0);\r\n const averageHoursOn = totalHoursOn / usageListFiltered.length;\r\n const fu = averageHoursOn / 24;\r\n if (fu < 0.1) return null;\r\n return Number(fu.toFixed(2));\r\n }\r\n return null;\r\n }\r\n\r\n const getDutAutConfig = (devInfo: DevFullInfo) => {\r\n if (devInfo.status === 'ONLINE') {\r\n apiCall('/request-dut-aut-config', { devId: devInfo.DEV_ID })\r\n .then((response) => {\r\n state.temperatureControlState = {\r\n automation: response.enabled,\r\n mode: response.ctrl_mode,\r\n temperature: response.setpoint,\r\n LTC: response.LTC,\r\n };\r\n render();\r\n })\r\n .catch(console.log);\r\n }\r\n\r\n apiCall('/get-dut-ircodes-list', { devId: devInfo.DEV_ID })\r\n .then((response) => {\r\n const dutIrCodes = response.list;\r\n state.irCommands = identifyDutIrCommands(dutIrCodes)\r\n .filter((command) => {\r\n const cmdSetpoint = Number(command?.cmdName?.split(':')[1]) || null;\r\n if (cmdSetpoint != null) return command;\r\n })\r\n .map((command) => (\r\n {\r\n IR_ID: command.IR_ID,\r\n CMD_NAME: command?.cmdName,\r\n CMD_TYPE: command?.CMD_TYPE,\r\n TEMPER: Number(command?.cmdName?.split(':')[1]),\r\n }\r\n ))\r\n .sort((a, _b) => {\r\n if (a.TYPE === 'AC_COOL') {\r\n return 1;\r\n }\r\n return -1;\r\n })\r\n .sort((a, b) => {\r\n if (a.TEMPER > b.TEMPER) {\r\n return 1;\r\n }\r\n return -1;\r\n })\r\n .filter((value, index, self) => index === self.findIndex((t) => (\r\n t.CMD_NAME === value.CMD_NAME\r\n )));\r\n });\r\n };\r\n\r\n const getTranslatedInstallationLocation = (str?: string|null) => {\r\n const opts = {\r\n 'casa-de-maquina': t('casaDeMaquina'),\r\n 'ambiente-refrigerado': t('ambienteRefrigeradoDam'),\r\n outros: t('outros'),\r\n };\r\n\r\n return (str && opts[str]) || null;\r\n };\r\n\r\n const fetchEndpoints = async (devInfo: DevFullInfo) => {\r\n const reqCombos = {\r\n fluids: true,\r\n applics: true,\r\n types: true,\r\n envs: true,\r\n brands: true,\r\n psens: true,\r\n ecoModeCfg: true,\r\n scheduleStartBehavior: true,\r\n dutScheduleStartBehavior: true,\r\n dutScheduleEndBehavior: true,\r\n dutForcedBehavior: true,\r\n damInstallationLocation: true,\r\n evaporatorModels: true,\r\n };\r\n await Promise.all([\r\n apiCall('/clients/get-clients-list', {}).then(({ list }) => {\r\n comboOpts.clients = list;\r\n }),\r\n apiCall('/get-timezones-list-with-offset', {}).then(({ list }) => {\r\n comboOpts.timezones = list.map((item) => ({ label: `${item.area} (${item.offset})`, value: item.id }));\r\n }),\r\n apiCall('/dac/get-states-list', { full: true }).then(({ list }) => {\r\n comboOpts.states = list.map((item) => ({ STATE_NAME: item.fullName, STATE_ID: item.fullName, COUNTRY_ID: item.countryId }));\r\n }),\r\n apiCall('/dac/get-cities-list', {}).then(({ list }) => {\r\n comboOpts.cities = list.map((item) => ({ CITY_NAME: item.name, CITY_ID: item.id, STATE_ID: item.stateFullName }));\r\n }),\r\n apiCall('/dac/get-countries-list', { full: true }).then(({ list }) => {\r\n comboOpts.countries = list.map((item) => ({ COUNTRY_NAME: item.name, COUNTRY_ID: item.id }));\r\n }),\r\n apiCall('/dev/dev-info-combo-options', reqCombos).then((response) => {\r\n response.damInstallationLocation = response.damInstallationLocation?.map((item) => ({ ...item, label: getTranslatedInstallationLocation(item.value) }));\r\n Object.assign(comboOpts, response);\r\n }),\r\n fetchGroupsAndUnits(devInfo.CLIENT_ID),\r\n fetchEnvironments(devInfo.CLIENT_ID, devInfo.UNIT_ID, devInfo),\r\n ]);\r\n };\r\n\r\n const setDutAutFormData = (devInfo: DevFullInfo) => {\r\n comboOpts.ecoModeCfg = comboOpts.ecoModeCfg.filter((x) => ['eco-V', 'eco-D'].includes(x.value));\r\n\r\n for (let i = comboOpts.dutControlOperation.length - 1; i >= 0; i--) {\r\n if (!devInfo.dut_aut?.COMPATIBLE_MODES.includes(comboOpts.dutControlOperation[i].value)) {\r\n comboOpts.dutControlOperation.splice(i, 1);\r\n }\r\n }\r\n\r\n for (let i = comboOpts.dutForcedBehavior.length - 1; i >= 0; i--) {\r\n if (!devInfo.dut_aut?.COMPATIBLE_MODES.includes(comboOpts.dutForcedBehavior[i].value)) {\r\n comboOpts.dutForcedBehavior.splice(i, 1);\r\n }\r\n }\r\n\r\n state.dutCompatibilityHysteresisEco2 = devInfo.dut_aut?.COMPATIBLE_MODES.includes('8_ECO_2') || false;\r\n };\r\n\r\n const valueOrEmptyString = (value) => ((value || '').toString());\r\n\r\n const setDamFormData = async (devInfo: DevFullInfo) => {\r\n formData.ENABLE_ECO_item = valueOrNull(comboOpts.optionsEco.find((item) => item.valueN === devInfo.dam!.ENABLE_ECO));\r\n if (devInfo.dam?.ENABLE_ECO == null) formData.ENABLE_ECO_item = valueOrNull(comboOpts.optionsEco.find((item) => item.valueN === 0));\r\n formData.ECO_CFG_item = valueOrNull(comboOpts.ecoModeCfg.find((item) => item.value === devInfo.dam!.ECO_CFG));\r\n if (formData.ENABLE_ECO_item && formData.ENABLE_ECO_item.valueN !== 0) {} // OK\r\n else formData.ECO_CFG_item = null;\r\n formData.REL_DUT_ID_item = !devInfo.dam!.SELF_REFERENCE ? valueOrNull(comboOpts.duts.find((item) => item.DEV_ID === devInfo.dam!.REL_DUT_ID)) : {\r\n DEV_ID: devInfo.DEV_ID, UNIT_ID: devInfo.UNIT_ID, ROOM_NAME: 'Sensor Interno do DAM', RTYPE_NAME: '',\r\n };\r\n formData.ENABLE_ECO_local = comboOpts.optionsEcoLocal.find((item) => item.value === devInfo.dam!.ENABLE_ECO_LOCAL) || null;\r\n\r\n formData.DAM_PLACEMENT_item = comboOpts.damPlacement.find((item) => item.value === devInfo.dam!.PLACEMENT) || comboOpts.damPlacement.find((item) => item.value === 'RETURN');\r\n formData.T0_POSITION_DAM = valueOrNull(comboOpts.sensorDamDuo.find((item) => item.value === devInfo.dam!.T0_POSITION));\r\n formData.T1_POSITION_DAM = valueOrNull(comboOpts.sensorDamDuo.find((item) => item.value === devInfo.dam!.T1_POSITION));\r\n\r\n formData.EXT_THERM_CFG = valueOrNull(comboOpts.extThermCfg.find((item) => item.value === devInfo.dam?.EXT_THERM_CFG));\r\n formData.ECO_OFST_START = valueOrEmptyString(devInfo.dam?.ECO_OFST_START);\r\n formData.ECO_OFST_END = valueOrEmptyString(devInfo.dam?.ECO_OFST_END);\r\n formData.ECO_INTERVAL_TIME = valueOrEmptyString(devInfo.dam?.ECO_INT_TIME);\r\n formData.FU_NOM = (devInfo.dam?.FU_NOM == null) ? '' : String(devInfo.dam?.FU_NOM);\r\n\r\n formData.ECO_SCHEDULE_START_BEHAVIOR_item = valueOrNull(comboOpts.scheduleStartBehavior.find((item) => item.value === devInfo.dam!.SCHEDULE_START_BEHAVIOR));\r\n formData.ECO_INTERVAL_TIME = valueOrEmptyString(devInfo.dam?.ECO_INT_TIME);\r\n formData.ECO_SETPOINT = (devInfo.dam?.SETPOINT == null ? '21' : devInfo.dam.SETPOINT).toString();\r\n formData.ECO_LTC = valueOrEmptyString(devInfo.dam?.LTC);\r\n formData.ECO_LTI = valueOrEmptyString(devInfo.dam?.LTI);\r\n formData.ECO_UPPER_HYSTERESIS = (devInfo.dam?.UPPER_HYSTERESIS == null ? '1' : devInfo.dam.UPPER_HYSTERESIS).toString();\r\n formData.ECO_LOWER_HYSTERESIS = (devInfo.dam?.LOWER_HYSTERESIS == null ? '1' : devInfo.dam.LOWER_HYSTERESIS).toString();\r\n formData.MINIMUM_TEMPERATURE = (devInfo.dam?.MINIMUM_TEMPERATURE == null ? '20' : devInfo.dam.MINIMUM_TEMPERATURE).toString();\r\n formData.MAXIMUM_TEMPERATURE = (devInfo.dam?.MAXIMUM_TEMPERATURE == null ? '28' : devInfo.dam.MAXIMUM_TEMPERATURE).toString();\r\n formData.DAM_INSTALLATION_LOCATION_item = devInfo.dam?.INSTALLATION_LOCATION ? { label: getTranslatedInstallationLocation(devInfo.dam.INSTALLATION_LOCATION), value: devInfo.dam.INSTALLATION_LOCATION } : null; // adicionar traducao no label\r\n state.damFuNomCalc = await getDAMFUnom();\r\n };\r\n\r\n const setDacL1 = (devInfo: DevFullInfo) => {\r\n if (devInfo.dac?.DAC_APPL === 'fancoil') {\r\n state.selectedL1Sim = devInfo.dac.SELECTED_L1_SIM === 'fancoil';\r\n }\r\n else {\r\n state.selectedL1Sim = devInfo.dac?.SELECTED_L1_SIM === 'virtual';\r\n }\r\n };\r\n\r\n const setDacApplication = (devInfo: DevFullInfo) => {\r\n const hasPsuc = !!(devInfo.dac?.P0Psuc || devInfo.dac?.P1Psuc);\r\n const hasPliq = !!(devInfo.dac?.P0Pliq || devInfo.dac?.P1Pliq);\r\n\r\n formData.DAC_APPL_item = comboOpts.applicsNew.find((item) => {\r\n if (item.value.DAC_APPL !== devInfo.dac!.DAC_APPL) return false;\r\n if (!!item.value.hasPsuc !== hasPsuc) return false;\r\n if (!!item.value.hasPliq !== hasPliq) return false;\r\n return true;\r\n }) || null;\r\n if (devInfo.dac!.DAC_APPL === 'trocador-de-calor') {\r\n formData.DAC_APPL_item = { label: t('14trocadorCalor'), value: { DAC_APPL: 'trocador-de-calor', hasPliq: false, hasPsuc: false } };\r\n }\r\n };\r\n\r\n const setDacSensors = (devInfo: DevFullInfo) => {\r\n formData.P0_POSITION = valueOrNull(comboOpts.pPositions.find((item) => item.value === devInfo.dac!.P0_POSITN));\r\n formData.P1_POSITION = valueOrNull(comboOpts.pPositions.find((item) => item.value === devInfo.dac!.P1_POSITN));\r\n formData.P0_SENSOR = valueOrNull(comboOpts.psens.find((item) => item.value === devInfo.dac!.P0_SENSOR));\r\n formData.P1_SENSOR = valueOrNull(comboOpts.psens.find((item) => item.value === devInfo.dac!.P1_SENSOR));\r\n\r\n formData.configTsensors = !!devInfo.dac?.T0_T1_T2;\r\n if (devInfo.dac?.T0_T1_T2) {\r\n const arr = JSON.parse(devInfo.dac.T0_T1_T2);\r\n formData.T0_POSITION = valueOrNull(comboOpts.tPositions.find((x) => x.value === arr[0]));\r\n formData.T1_POSITION = valueOrNull(comboOpts.tPositions.find((x) => x.value === arr[1]));\r\n formData.T2_POSITION = valueOrNull(comboOpts.tPositions.find((x) => x.value === arr[2]));\r\n }\r\n\r\n isFancoil();\r\n };\r\n\r\n const setDacFormData = async (devInfo: DevFullInfo) => {\r\n setDacL1(devInfo);\r\n\r\n formData.DAC_DESC = valueOrEmptyString(devInfo.dac?.DAC_DESC);\r\n formData.DAC_NAME = valueOrEmptyString(devInfo.dac?.DAC_NAME);\r\n formData.DAC_MODEL = valueOrEmptyString(devInfo.dac?.DAC_MODEL);\r\n formData.CAPACITY_PWR = valueOrEmptyString(devInfo.dac?.CAPACITY_PWR);\r\n formData.DAC_COP = valueOrEmptyString(devInfo.dac?.DAC_COP);\r\n formData.DAC_KW = valueOrEmptyString(devInfo.dac?.DAC_KW);\r\n formData.GROUP_ID_item = valueOrNull(comboOpts.groups.find((item) => item.value === devInfo.dac!.GROUP_ID));\r\n formData.ASSET_ID_item = valueOrNull(comboOpts.assets.find((item) => item.DEV_ID === devInfo.DEV_ID && item.GROUP_ID === devInfo.dac!.GROUP_ID));\r\n formData.FLUID_TYPE_item = valueOrNull(comboOpts.fluids.find((item) => item.value === devInfo.dac!.FLUID_TYPE));\r\n formData.DAC_TYPE_item = valueOrNull(comboOpts.types.find((item) => item.value === devInfo.dac!.DAC_TYPE));\r\n formData.CAPACITY_UNIT_item = valueOrNull(comboOpts.capacUnits.find((item) => item.value === devInfo.dac!.CAPACITY_UNIT));\r\n formData.DAC_ENV_item = valueOrNull(comboOpts.envs.find((item) => item.value === devInfo.dac!.DAC_ENV));\r\n formData.DAC_BRAND_item = valueOrNull(comboOpts.brands.find((item) => item.value === devInfo.dac!.DAC_BRAND));\r\n formData.DAC_MODIF_item = valueOrNull(comboOpts.yesNo.find((item) => item.value === devInfo.dac!.DAC_MODIF));\r\n formData.DAC_COMIS_item = valueOrNull(comboOpts.yesNo.find((item) => item.value === devInfo.dac!.DAC_COMIS));\r\n formData.REL_DUT_ID_item = valueOrNull(comboOpts.duts.find((item) => item.DEV_ID === devInfo.dac!.REL_DUT_ID));\r\n formData.DAC_HEAT_EXCHANGER_item = valueOrNull(comboOpts.heatExchangerTypes.find((item) => item.ID === devInfo.dac!.HEAT_EXCHANGER_ID));\r\n formData.COMPRESSOR_NOMINAL_CURRENT = valueOrEmptyString(devInfo.dac?.COMPRESSOR_NOMINAL_CURRENT);\r\n formData.EQUIPMENT_POWER_item = devInfo.dac?.EQUIPMENT_POWER ? { label: devInfo.dac.EQUIPMENT_POWER, value: devInfo.dac.EQUIPMENT_POWER } : null;\r\n formData.EVAPORATOR_MODEL_item = devInfo.dac?.EVAPORATOR_MODEL_ID ? { label: devInfo.dac.EQUIPMENT_POWER, value: String(devInfo.dac.EVAPORATOR_MODEL_ID) } : null;\r\n formData.INSUFFLATION_SPEED = valueOrEmptyString(devInfo.dac?.INSUFFLATION_SPEED);\r\n\r\n if (devInfo.dac?.DAC_COMIS == null) formData.DAC_COMIS_item = valueOrNull(comboOpts.yesNo.find((item) => item.valueN === 0));\r\n\r\n setDacApplication(devInfo);\r\n\r\n setDacSensors(devInfo);\r\n\r\n if (devInfo.dam) {\r\n formData.USE_RELAY_item = valueOrNull(comboOpts.yesNo.find((x) => x.valueNinv === devInfo.dam!.DAM_DISABLED));\r\n if (devInfo.dam.DAM_DISABLED == null) formData.USE_RELAY_item = valueOrNull(comboOpts.yesNo.find((item) => item.valueN === 0));\r\n state.persisted_USE_RELAY_item = formData.USE_RELAY_item;\r\n }\r\n await getOriginalInfoAssets();\r\n };\r\n\r\n const setDutAutConfig = (devInfo: DevFullInfo) => {\r\n let portCfg = devInfo.dut_aut?.PORTCFG;\r\n if (portCfg === null) portCfg = 'IR';\r\n let autCfg = null as null|string;\r\n if ((devInfo.dut_aut?.DUTAUT_DISABLED === 0) && (portCfg === 'IR')) autCfg = 'IR';\r\n if ((devInfo.dut_aut?.DUTAUT_DISABLED === 1) && (portCfg === 'RELAY')) autCfg = 'RELAY';\r\n if ((devInfo.dut_aut?.DUTAUT_DISABLED === 1) && (portCfg === 'IR')) autCfg = 'DISABLED';\r\n formData.DUTAUTCFG_item = valueOrNull(comboOpts.dutAutCfg.find((item) => item.value === autCfg));\r\n };\r\n\r\n const setDutFormData = async (devInfo: DevFullInfo) => {\r\n formData.PLACEMENT_item = valueOrNull(comboOpts.placement.find((item) => item.value === devInfo.dut!.PLACEMENT));\r\n formData.SENSOR_AUTOM = valueOrNull(devInfo.dut?.SENSOR_AUTOM) as null|0|1;\r\n formData.TEMPERATURE_OFFSET = (devInfo.dut?.TEMPERATURE_OFFSET ?? '0').toString();\r\n formData.GROUP_ID_item = valueOrNull(comboOpts.groups.find((item) => item.value === devInfo.GROUP_ID));\r\n formData.ASSET_ID_item = valueOrNull(comboOpts.assets.find((item) => item.DEV_ID === devInfo.DEV_ID && item?.GROUP_ID === devInfo?.GROUP_ID));\r\n if (devInfo.dut_aut) {\r\n formData.CTRLOPER_item = comboOpts.dutControlOperation.find((item) => item.value === devInfo.dut_aut!.CTRLOPER) || comboOpts.dutControlOperation[0];\r\n setDutAutConfig(devInfo);\r\n }\r\n if (formData.TEMPERATURE_OFFSET != null) {\r\n state.offsetChecked = true;\r\n }\r\n await getOriginalInfoAssets();\r\n };\r\n\r\n const getDutsSchedAndExcepts = (devInfo: DevFullInfo) => {\r\n if (state.DUTS_SCHEDULES.length === 0) {\r\n apiCall('/dut/get-dut-schedules', { DUT_ID: devInfo.DEV_ID, CLIENT_ID: devInfo.CLIENT_ID, UNIT_ID: devInfo.UNIT_ID })\r\n .then((response) => {\r\n state.DUTS_SCHEDULES = response.schedules;\r\n state.DUTS_SCHEDULES_FILTERED = state.DUTS_SCHEDULES.filter((schedule) => schedule.DUT_SCHEDULE_ID == null || !state.DUTS_SCHEDULES_DELETED.includes(schedule.DUT_SCHEDULE_ID));\r\n render();\r\n })\r\n .catch(console.log);\r\n }\r\n\r\n if (state.DUTS_EXCEPTIONS.length === 0) {\r\n apiCall('/dut/get-dut-exceptions', { DUT_ID: devInfo.DEV_ID, CLIENT_ID: devInfo.CLIENT_ID, UNIT_ID: devInfo.UNIT_ID })\r\n .then((response) => {\r\n state.DUTS_EXCEPTIONS = response.exceptions;\r\n state.DUTS_EXCEPTIONS_FILTERED = state.DUTS_EXCEPTIONS.filter((exception) => exception.DUT_EXCEPTION_ID == null || !state.DUTS_EXCEPTIONS_DELETED.includes(exception.DUT_EXCEPTION_ID));\r\n render();\r\n })\r\n .catch(console.log);\r\n }\r\n };\r\n\r\n const setDutAutMachine = (devInfo: DevFullInfo) => {\r\n formData.MCHN_MODEL = devInfo.dut_aut?.MCHN_MODEL || '';\r\n formData.MCHN_BRAND_item = comboOpts.brands.find((item) => item.value === devInfo.dut_aut!.MCHN_BRAND) || null;\r\n formData.TSETPOINT = (devInfo.dut_aut?.TSETPOINT || '').toString();\r\n formData.RESENDPER = (devInfo.dut_aut?.RESENDPER && (devInfo.dut_aut?.RESENDPER / 60) >= 5) ? (devInfo.dut_aut.RESENDPER / 60).toString() : '5';\r\n formData.LTCRIT = (devInfo.dut_aut?.LTCRIT || '').toString();\r\n formData.LTINF = (devInfo.dut_aut?.LTINF || '').toString();\r\n const devGroups = (devInfo.dut_aut?.groups || []).map((x) => x.GROUP_ID);\r\n for (const group of comboOpts.groups) {\r\n group.checked = devGroups.includes(group.value);\r\n }\r\n formData.TEMPERATURE_OFFSET = (devInfo.dut_aut?.TEMPERATURE_OFFSET || '0').toString();\r\n if (formData.TEMPERATURE_OFFSET.length > 0) {\r\n state.offsetChecked = true;\r\n }\r\n };\r\n\r\n const setFormDataDates = (devInfo: DevFullInfo) => {\r\n if (devInfo.DAT_BEGMON) {\r\n formData.DAT_BEGMON = new Date(devInfo.DAT_BEGMON).toLocaleString().split('T')[0].split('-').reverse().join('/');\r\n } else {\r\n formData.DAT_BEGMON = '';\r\n }\r\n if (devInfo.DAT_BEGAUT) {\r\n formData.DAT_BEGAUT = new Date(devInfo.DAT_BEGAUT).toLocaleString().split('T')[0].split('-').reverse().join('/');\r\n } else {\r\n formData.DAT_BEGAUT = '';\r\n }\r\n };\r\n\r\n const setFormDataValues = async (devInfo: DevFullInfo) => {\r\n if (state.devType.isDutAut) {\r\n setDutAutFormData(devInfo);\r\n }\r\n if (state.devType.isDam && state.devType.isDac && comboOpts.ecoModeCfg.some((x) => x.value === 'eco-D')) {\r\n comboOpts.ecoModeCfg = comboOpts.ecoModeCfg.filter((x) => x.value === 'eco-D');\r\n }\r\n if (state.devType.isDam && (!state.devType.isDac) && comboOpts.ecoModeCfg.some((x) => x.value === 'eco-D')) {\r\n comboOpts.ecoModeCfg = comboOpts.ecoModeCfg.filter((x) => x.value !== 'eco-D');\r\n }\r\n formData.CLIENT_ID_item = comboOpts.clients.find((item) => item.CLIENT_ID === devInfo.CLIENT_ID) || null;\r\n formData.UNIT_ID_item = comboOpts.units.find((item) => item.UNIT_ID === devInfo.UNIT_ID) || null;\r\n\r\n setFormDataDates(devInfo);\r\n\r\n if (devInfo.dam) {\r\n await setDamFormData(devInfo);\r\n }\r\n\r\n if (devInfo.dac) {\r\n await setDacFormData(devInfo);\r\n }\r\n\r\n if (devInfo.dut) {\r\n await setDutFormData(devInfo);\r\n }\r\n\r\n if (devInfo.dam) {\r\n const devGroups = (devInfo.dam.groups || []).map((x) => x.GROUP_ID);\r\n for (const group of comboOpts.groups) {\r\n group.checked = devGroups.includes(group.value);\r\n }\r\n }\r\n if (devInfo.dut_aut && !state.devType.isDutQA) {\r\n setDutAutMachine(devInfo);\r\n\r\n getDutsSchedAndExcepts(devInfo);\r\n }\r\n };\r\n\r\n async function getData() {\r\n try {\r\n state.devInfo = await getCachedDevInfo(state.devId, { forceFresh: true });\r\n const devInfo = state.devInfo!;\r\n const {\r\n isDutAut, isDri,\r\n } = getDevType();\r\n\r\n if (isDri) {\r\n await getDriInfo(devInfo.DEV_ID);\r\n }\r\n if (devInfo.dac) {\r\n wsl.start(onWsOpen, onWsMessage, beforeWsClose);\r\n }\r\n\r\n state.formData.varsConfigInput = '';\r\n if (devInfo.dri) {\r\n state.formData.varsConfigInput = devInfo.dri.varsCfg && devInfo.dri.varsCfg.varsList.map((x) => JSON.stringify(x)).join('\\n');\r\n }\r\n if (isDutAut && state.devInfo?.dut?.operation_mode !== 5) {\r\n getDutAutConfig(devInfo);\r\n }\r\n\r\n if (devInfo.dac) {\r\n const heatExchangers = await apiCall('/heat-exchanger/get-list-v2', { CLIENT_ID: devInfo.CLIENT_ID });\r\n state.comboOpts.heatExchangerTypes = heatExchangers.map((e) => ({ ...e, label: e.NAME, value: e.NAME }));\r\n render();\r\n }\r\n\r\n // Temporario: será permitido que o novo modo seja configurável apenas para os seguintes DAMs:\r\n // DAM303221310, DAM303221303, DAM209211441, DAM210211471 e DAM210211473\r\n if (!['DAM303221310', 'DAM303221303', 'DAM209211441', 'DAM210211471', 'DAM210211473'].includes(devInfo.DEV_ID)) {\r\n // Remove segunda opção: 'Sim, Eco 2\r\n if (comboOpts.optionsEco.length === 3) {\r\n comboOpts.optionsEco.splice(1, 1);\r\n }\r\n }\r\n\r\n await fetchEndpoints(devInfo);\r\n\r\n await setFormDataValues(devInfo);\r\n\r\n onSelectUnit(formData.UNIT_ID_item);\r\n onSelectApplication(formData.DAC_APPL_item);\r\n } catch (err) {\r\n console.log(err);\r\n alert(t('houveErro'));\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n useEffect(() => {\r\n getData();\r\n setState({ offsetChecked: false });\r\n render();\r\n }, []);\r\n\r\n const formatGroups = (dutsList: ApiResps['/dut/get-duts-list']['list'], dacsAutoList: ApiResps['/dacs-with-automation-enabled']['list']) => {\r\n const isDam = !!(state.devInfo?.dam);\r\n const isOnlyDutRef = !!(state.devType.isDut && state.devInfo?.dut_aut && checkIsDutRef(state.devInfo.dut_aut.groups));\r\n const isDutAut = !!(!isOnlyDutRef && state.devInfo?.dut_aut);\r\n\r\n if (isDam) {\r\n for (const dut of dutsList) {\r\n if (!dut.ROOM_NAME) { dut.ROOM_NAME = dut.DEV_ID; }\r\n }\r\n // DUTS QA não podem ser selecionados para serem referências de temperatura.\r\n // Atualmente, o único critério confiável que eu descobri é se o DUT tiver variáveis de umidade e CO2.\r\n // Isso implica que o DUT QA ainda aparecerá na lista antes de começar a publicar.\r\n comboOpts.duts = dutsList.filter((x) => !x.automationEnabled && (!x.VARS || !x.VARS.includes('HD')));\r\n const devGroups = (state.devInfo!.dam!.groups || []).map((x) => x.GROUP_ID);\r\n for (const group of comboOpts.groups) {\r\n group.checked = devGroups.includes(group.value);\r\n group.withDacAut = dacsAutoList.some((x) => (x.GROUP_ID === group.value));\r\n }\r\n }\r\n if (isDutAut) {\r\n const devGroups = (state.devInfo!.dut_aut!.groups || []).map((x) => x.GROUP_ID);\r\n for (const group of comboOpts.groups) {\r\n group.checked = devGroups.includes(group.value);\r\n }\r\n }\r\n };\r\n\r\n async function getOriginalInfoAssets() {\r\n const { devInfo } = state;\r\n const asset = await apiCall('/clients/get-asset-info', { DEV_ID: devInfo?.DEV_ID });\r\n if (asset?.info) {\r\n state.persistedAssetDevice = {\r\n value: asset.info.ASSET_ID,\r\n label: asset.info.AST_DESC,\r\n UNIT_ID: asset.info.UNIT_ID,\r\n GROUP_ID: asset.info.GROUP_ID,\r\n DEV_ID: asset.info.DEV_ID,\r\n ASSET_ROLE: asset.info.AST_ROLE || 0,\r\n CLIENT_ID: formData.CLIENT_ID_item?.CLIENT_ID as number,\r\n DAT_INDEX: asset.info.DAT_INDEX,\r\n DAT_ID: asset.info.DAT_ID,\r\n MCHN_KW: asset.info.MCHN_KW,\r\n };\r\n } else {\r\n state.persistedAssetDevice = null;\r\n }\r\n render();\r\n }\r\n\r\n async function fetchGroupsAndUnits(CLIENT_ID) {\r\n comboOpts.units = [];\r\n comboOpts.groups = [];\r\n comboOpts.duts = [];\r\n comboOpts.environments = [];\r\n if (!CLIENT_ID) return;\r\n\r\n const { devInfo } = state;\r\n const isDac = !!(devInfo?.dac);\r\n const isDam = !!(devInfo?.dam);\r\n const isOnlyDutRef = !!(state.devType.isDut && state.devInfo?.dut_aut && checkIsDutRef(state.devInfo.dut_aut.groups));\r\n const isDutAut = !!(!isOnlyDutRef && state.devInfo?.dut_aut);\r\n\r\n const reqCombos = { CLIENT_ID, units: true, groups: (isDac || isDam || isDutAut || state.devType.isDut) };\r\n const [\r\n combos,\r\n { list: dutsList },\r\n { list: dacsAutoList },\r\n ] = await Promise.all([\r\n apiCall('/dev/dev-info-combo-options', reqCombos),\r\n Promise.resolve().then(async () => (isDam ? apiCall('/dut/get-duts-list', { clientId: CLIENT_ID }) : ({ list: [] }))),\r\n Promise.resolve().then(async () => (isDam ? apiCall('/dacs-with-automation-enabled', { clientId: CLIENT_ID }) : ({ list: [] }))),\r\n ]);\r\n\r\n let units;\r\n if (combos.units) {\r\n units = combos.units.map((unit) => ({ UNIT_ID: unit.value, UNIT_NAME: unit.label }));\r\n }\r\n Object.assign(comboOpts, combos, { units });\r\n\r\n formatGroups(dutsList, dacsAutoList);\r\n\r\n state.isLoadingUnitInfo = false;\r\n }\r\n\r\n async function fetchEnvironments(CLIENT_ID, UNIT_ID, devInfo) {\r\n comboOpts.environments = [];\r\n const isDut = !!(devInfo && devInfo.dut);\r\n setFormData({ ENVIRONMENT_ID_item: null });\r\n setFormData({ ROOM_NAME: '' });\r\n if (!isDut || !CLIENT_ID || !UNIT_ID) return;\r\n\r\n let environments;\r\n await apiCall('/environments/get-environment-list', { CLIENT_ID, UNIT_ID }).then((result) => {\r\n environments = result.environments.map((environment) => Object.assign(environment, {\r\n ENVIRONMENT_LABEL: `${environment.ENVIRONMENT_NAME}${environment.DUT_CODE ? ` - ${environment.DUT_CODE}` : ''}`,\r\n }));\r\n });\r\n\r\n comboOpts.environments = environments;\r\n setFormData({ ENVIRONMENT_ID_item: environments.find((item) => item.ENVIRONMENT_ID === state.devInfo?.dut?.ENVIRONMENT_ID) || null });\r\n setFormData({ ROOM_NAME: formData.ENVIRONMENT_ID_item?.ENVIRONMENT_NAME || null });\r\n }\r\n\r\n const fancoilLabel = (position) => {\r\n if (position && position.label) {\r\n if (position.label === 'Tamb') {\r\n position.label = t('temperaturaExterna');\r\n } else if (position.label === 'Tsuc') {\r\n position.label = t('temperaturaEntradaAgua');\r\n } else if (position.label === 'Tliq') {\r\n position.label = t('temperaturaSaidaAgua');\r\n }\r\n }\r\n return position;\r\n };\r\n\r\n function isFancoil() {\r\n if (formData.DAC_APPL_item?.value?.DAC_APPL === 'fancoil') {\r\n comboOpts.tPositions = [\r\n { label: t('temperaturaExterna'), value: 'Tamb' },\r\n { label: t('temperaturaEntradaAgua'), value: 'Tsuc' },\r\n { label: t('temperaturaSaidaAgua'), value: 'Tliq' },\r\n ];\r\n\r\n fancoilLabel(formData.T0_POSITION);\r\n fancoilLabel(formData.T1_POSITION);\r\n fancoilLabel(formData.T2_POSITION);\r\n } else {\r\n comboOpts.tPositions = [\r\n { label: 'Tamb', value: 'Tamb' },\r\n { label: 'Tsuc', value: 'Tsuc' },\r\n { label: 'Tliq', value: 'Tliq' },\r\n ];\r\n\r\n if (state.devInfo?.dac?.T0_T1_T2) {\r\n const arr = JSON.parse(state.devInfo?.dac?.T0_T1_T2);\r\n formData.T0_POSITION = valueOrNull(comboOpts.tPositions.find((x) => x.value === arr[0]));\r\n formData.T1_POSITION = valueOrNull(comboOpts.tPositions.find((x) => x.value === arr[1]));\r\n formData.T2_POSITION = valueOrNull(comboOpts.tPositions.find((x) => x.value === arr[2]));\r\n } else {\r\n formData.T0_POSITION = comboOpts.tPositions[0];\r\n formData.T1_POSITION = comboOpts.tPositions[1];\r\n formData.T2_POSITION = comboOpts.tPositions[2];\r\n }\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n isFancoil();\r\n render();\r\n }, [formData.DAC_APPL_item]);\r\n\r\n function onSelectApplication(item) {\r\n if (formData.DAC_APPL_item?.label !== item?.label) {\r\n setFormData({\r\n P0_POSITION: null,\r\n P0_SENSOR: null,\r\n P1_POSITION: null,\r\n P1_SENSOR: null,\r\n });\r\n }\r\n\r\n formData.DAC_APPL_item = item;\r\n const dacApplic = (formData.DAC_APPL_item && formData.DAC_APPL_item.value.DAC_APPL) || null;\r\n let tag = null as null|string;\r\n if (dacApplic === 'ar-condicionado') tag = '(ac)';\r\n if (dacApplic === 'camara-fria') tag = '(cf)';\r\n if (dacApplic === 'fancoil') tag = '(fc)';\r\n if (dacApplic === 'chiller') tag = '(ch)';\r\n if (dacApplic === 'trocador-de-calor') {\r\n tag = '(he)';\r\n formData.DAC_TYPE_item = {\r\n value: 'tipo-trocador-de-calor',\r\n label: t('trocadorCalor'),\r\n tags: '(he)',\r\n };\r\n formData.configTsensors = true;\r\n if ((!formData.T0_POSITION) && (!formData.T1_POSITION) && (!formData.T2_POSITION)) {\r\n formData.T0_POSITION = comboOpts.tPositions[0];\r\n formData.T1_POSITION = comboOpts.tPositions[1];\r\n formData.T2_POSITION = comboOpts.tPositions[2];\r\n }\r\n if (comboOpts.heatExchangerTypes.length !== 0 && !formData.DAC_HEAT_EXCHANGER_item) {\r\n formData.DAC_HEAT_EXCHANGER_item = comboOpts.heatExchangerTypes[0];\r\n }\r\n }\r\n if (tag) {\r\n filtComboOpts.types = comboOpts.types.filter((type) => type.tags === tag);\r\n filtComboOpts.envs = comboOpts.envs.filter((env) => env.tags === tag);\r\n if (formData.DAC_TYPE_item && formData.DAC_TYPE_item.tags !== tag) {\r\n formData.DAC_TYPE_item = null;\r\n }\r\n if (formData.DAC_ENV_item && formData.DAC_ENV_item.tags !== tag) {\r\n formData.DAC_ENV_item = null;\r\n }\r\n } else {\r\n filtComboOpts.types = comboOpts.types.filter((type) => true);\r\n filtComboOpts.envs = comboOpts.envs.filter((env) => true);\r\n }\r\n isFancoil();\r\n render();\r\n }\r\n\r\n const changeDacPropertiesByMachine = () => {\r\n const selectedMachine = state.machinesAssetsList?.find((item) => item.GROUP_ID === formData.GROUP_ID_item?.value);\r\n\r\n const hasPsuc = !!(state.devInfo?.dac?.P0Psuc || state.devInfo?.dac?.P1Psuc);\r\n const hasPliq = !!(state.devInfo!.dac!.P0Pliq || state.devInfo?.dac?.P1Pliq);\r\n formData.DAC_APPL_item = comboOpts.applicsNew.find((item) => {\r\n if (item.value.DAC_APPL !== selectedMachine!.MCHN_APPL) return false;\r\n if (!!item.value.hasPsuc !== hasPsuc) return false;\r\n if (!!item.value.hasPliq !== hasPliq) return false;\r\n return true;\r\n }) || null;\r\n formData.FLUID_TYPE_item = comboOpts.fluids.find((item) => item.value === selectedMachine!.FLUID_TYPE) || null;\r\n formData.DAC_TYPE_item = comboOpts.types.find((item) => item.value === selectedMachine!.GROUP_TYPE) || null;\r\n formData.DAC_BRAND_item = comboOpts.brands.find((item) => item.value === selectedMachine!.BRAND) || null;\r\n };\r\n\r\n function changePropertiesByMachine() {\r\n if (!formData.GROUP_ID_item || !state.machinesAssetsList || !state.devInfo) return;\r\n\r\n if (formData.GROUP_ID_item.value !== formData.ASSET_ID_item?.GROUP_ID) {\r\n formData.ASSET_ID_item = null;\r\n }\r\n const selectedMachine = state.machinesAssetsList.find((item) => item.GROUP_ID === formData.GROUP_ID_item?.value);\r\n\r\n if (!selectedMachine) return;\r\n\r\n if (state.devType.isDac) {\r\n changeDacPropertiesByMachine();\r\n }\r\n }\r\n\r\n function changePropertiesByAsset() {\r\n if (!formData.ASSET_ID_item || !state.machinesAssetsList || !state.devInfo) return;\r\n const selectedAsset = state.machinesAssetsList!.find((item) => item.GROUP_ID === formData.GROUP_ID_item?.value)?.assets.find((item) => item.ASSET_ID === formData.ASSET_ID_item?.value);\r\n\r\n if (!selectedAsset) return;\r\n if (state.devType.isDac) {\r\n formData.CAPACITY_PWR = (selectedAsset.CAPACITY_PWR && String(selectedAsset.CAPACITY_PWR)) || '';\r\n formData.CAPACITY_UNIT_item = comboOpts.capacUnits.find((item) => item.value === selectedAsset.CAPACITY_UNIT) || null;\r\n formData.DAC_KW = (selectedAsset.MCHN_KW && String(selectedAsset.MCHN_KW)) || '';\r\n formData.DAC_MODEL = selectedAsset.MCHN_MODEL || '';\r\n formData.DAC_NAME = selectedAsset.AST_DESC || '';\r\n }\r\n }\r\n\r\n const setAsset = () => {\r\n if (state.devType.isDac) {\r\n formData.ASSET_ID_item = comboOpts.assets.find((item) => item.DEV_ID === state.devInfo?.DEV_ID && item?.GROUP_ID === state.devInfo?.dac?.GROUP_ID) || null;\r\n }\r\n if (state.devType.isDut) {\r\n formData.ASSET_ID_item = comboOpts.assets.find((item) => item.DEV_ID === state.devInfo?.DEV_ID && item?.GROUP_ID === state.devInfo?.GROUP_ID) || null;\r\n }\r\n };\r\n\r\n const filterByUnitId = async (unitId: number, item) => {\r\n filtComboOpts.groups = comboOpts.groups.filter((group) => group.unit === unitId);\r\n filtComboOpts.duts = comboOpts.duts.filter((dut) => dut.UNIT_ID === unitId);\r\n if (!formData.ASSET_ID_item || unitId !== formData.ASSET_ID_item.UNIT_ID) {\r\n formData.ASSET_ID_item = null;\r\n state.isLoadingUnitInfo = true;\r\n render();\r\n const machinesAssetsList = await (state.devType.isDam || state.devType.isDac || state.devType.isDut ? apiCall('/clients/get-machines-list', { unitIds: [item.value || item.UNIT_ID] }) : []);\r\n const assets = [] as { value: number, label: string, UNIT_ID: number, GROUP_ID: number, DEV_ID: string|null, ASSET_ROLE: number, CLIENT_ID: number, DAT_INDEX: number|null, DAT_ID: string|null }[];\r\n for (const item of machinesAssetsList) {\r\n item.assets.forEach((asset) => {\r\n assets.push({\r\n value: asset.ASSET_ID,\r\n label: asset.AST_DESC,\r\n UNIT_ID: asset.UNIT_ID,\r\n GROUP_ID: item.GROUP_ID,\r\n DEV_ID: asset.DEV_ID,\r\n ASSET_ROLE: asset.AST_ROLE || 0,\r\n CLIENT_ID: formData.CLIENT_ID_item?.CLIENT_ID as number,\r\n DAT_INDEX: asset.DAT_INDEX,\r\n DAT_ID: asset.DAT_ID,\r\n });\r\n });\r\n }\r\n Object.assign(comboOpts, { assets });\r\n setAsset();\r\n state.machinesAssetsList = machinesAssetsList;\r\n state.isLoadingUnitInfo = false;\r\n }\r\n };\r\n\r\n const valueOrNull = (value) => (value ?? null);\r\n\r\n async function onSelectUnit(item) {\r\n const { devInfo } = state;\r\n const isDac = !!(devInfo?.dac);\r\n formData.UNIT_ID_item = item && comboOpts.units.find((x) => (x.UNIT_ID === item.value || x.UNIT_ID === item.UNIT_ID)) || null;\r\n const unitId = valueOrNull(formData.UNIT_ID_item?.UNIT_ID);\r\n if (unitId) {\r\n await filterByUnitId(unitId, item);\r\n } else {\r\n if (isDac || state.devType.isDut) {\r\n filtComboOpts.groups = comboOpts.groups.filter((group) => true);\r\n } else {\r\n filtComboOpts.groups = [];\r\n }\r\n filtComboOpts.duts = [];\r\n }\r\n if (devInfo?.DEV_ID.startsWith('DAM3') && devInfo.dam?.CAN_SELF_REFERENCE) {\r\n filtComboOpts.duts.push({ DEV_ID: devInfo.DEV_ID, UNIT_ID: devInfo.UNIT_ID, ROOM_NAME: 'Sensor Interno do DAM' });\r\n }\r\n if (formData.GROUP_ID_item && formData.GROUP_ID_item.unit !== unitId) {\r\n formData.GROUP_ID_item = null;\r\n formData.ASSET_ID_item = null;\r\n }\r\n if (formData.REL_DUT_ID_item && formData.REL_DUT_ID_item.UNIT_ID !== unitId) {\r\n formData.REL_DUT_ID_item = null;\r\n }\r\n await fetchEnvironments(formData.CLIENT_ID_item?.CLIENT_ID, formData.UNIT_ID_item?.UNIT_ID, devInfo);\r\n render();\r\n }\r\n\r\n async function onSelectClient(item) {\r\n try {\r\n formData.CLIENT_ID_item = item ? { NAME: item.name, CLIENT_ID: item.value } : null;\r\n // const clientId = formData.CLIENT_ID_item && formData.CLIENT_ID_item.CLIENT_ID;\r\n render();\r\n await fetchGroupsAndUnits(item?.value);\r\n onSelectUnit(formData.UNIT_ID_item);\r\n fetchEnvironments(item?.value, formData.UNIT_ID_item?.UNIT_ID, devInfo);\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n async function afterCreateUnit({ item: response }) {\r\n try {\r\n const clientId = (formData.CLIENT_ID_item && formData.CLIENT_ID_item.CLIENT_ID) || null;\r\n await fetchGroupsAndUnits(clientId);\r\n formData.UNIT_ID_item = comboOpts.units.find((item) => item.UNIT_ID === response.UNIT_ID) || null;\r\n onSelectUnit(formData.UNIT_ID_item);\r\n fetchEnvironments(clientId, formData.UNIT_ID_item?.UNIT_ID, state.devInfo);\r\n toast.success(t('sucessoUnidadeAdicionada'));\r\n setState({ openModal: null });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n async function afterCreateGroup({ item: response }) {\r\n try {\r\n const { devInfo } = state;\r\n const isDac = !!(devInfo && devInfo.dac);\r\n const isDam = !!(devInfo && devInfo.dam);\r\n\r\n const clientId = (formData.CLIENT_ID_item && formData.CLIENT_ID_item.CLIENT_ID) || null;\r\n await fetchGroupsAndUnits(clientId);\r\n const groupItem = comboOpts.groups.find((item) => item.value === response.GROUP_ID) || null;\r\n if (isDac || state.devType.isDut) {\r\n formData.GROUP_ID_item = groupItem;\r\n }\r\n if (isDam) {\r\n if (groupItem) groupItem.checked = true;\r\n }\r\n if (groupItem) {\r\n formData.UNIT_ID_item = comboOpts.units.find((item) => item.UNIT_ID === groupItem.unit) || null;\r\n }\r\n onSelectUnit(formData.UNIT_ID_item);\r\n fetchEnvironments(clientId, formData.UNIT_ID_item?.UNIT_ID, devInfo);\r\n toast.success(t('sucessoAdicionarGrupo'));\r\n setState({ openModal: null });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n function onTconfigClick() {\r\n formData.configTsensors = !formData.configTsensors;\r\n if (formData.configTsensors) {\r\n if ((!formData.T0_POSITION) && (!formData.T1_POSITION) && (!formData.T2_POSITION)) {\r\n formData.T0_POSITION = comboOpts.tPositions[0];\r\n formData.T1_POSITION = comboOpts.tPositions[1];\r\n formData.T2_POSITION = comboOpts.tPositions[2];\r\n }\r\n }\r\n isFancoil();\r\n render();\r\n }\r\n\r\n function changeSelectedL1Sim() {\r\n setState({ selectedL1Sim: !state.selectedL1Sim });\r\n }\r\n\r\n async function getDriInfo(driId: string) {\r\n const response = await apiCall('/get-integration-info', { supplier: 'diel', integrId: driId });\r\n state.driInfo = response;\r\n const cardsCfg = (response.cardsCfg && jsonTryParse(response.cardsCfg)) || null;\r\n state.cards = (cardsCfg && cardsCfg.cards) || [];\r\n state.subcards = (cardsCfg && cardsCfg.subcards) || [];\r\n state.relevances = (cardsCfg && cardsCfg.relevances) || [];\r\n render();\r\n }\r\n\r\n function getMinimumInterval(ecoCfg: string) {\r\n return ['eco-C1-V', 'eco-C2-V'].includes(ecoCfg) ? 5 : 0;\r\n }\r\n\r\n let { devInfo } = state;\r\n function getDevType() {\r\n const isOnlyDutRef = !!(state.devType.isDut && state.devInfo?.dut_aut && checkIsDutRef(state.devInfo.dut_aut.groups));\r\n const isDutAut = !!(!isOnlyDutRef && state.devInfo?.dut_aut);\r\n return {\r\n isDac: !!(devInfo?.dac),\r\n isDam: !!(devInfo?.dam),\r\n isDut: !!(devInfo?.dut),\r\n isDutAut,\r\n isOnlyDutRef,\r\n isDri: !!(devInfo?.dri),\r\n isDal: !!(devInfo?.dal),\r\n isDmt: !!(devInfo?.dmt),\r\n dutAutEnabled: (isDutAut && formData.DUTAUTCFG_item && (formData.DUTAUTCFG_item.value === 'IR')),\r\n isDutQA: (state.devType.isDut && state.devInfo?.dut?.operation_mode === 5) || false,\r\n };\r\n }\r\n useEffect(() => {\r\n setState({ devType: getDevType() });\r\n }, [state.devInfo]);\r\n\r\n function setFormData(obj) {\r\n state.automationTabHasBeenSelected = queryPars.aba === 'automacao';\r\n if (obj.hasOwnProperty('RESENDPER')) {\r\n if (obj.RESENDPER && (obj.RESENDPER % 5 !== 0 || obj.RESENDPER < 5)) {\r\n setResendTimeError(t('insiraValorMultiplo5Minimo5'));\r\n } else {\r\n setResendTimeError('');\r\n }\r\n }\r\n // Regra temporária caso seja configurado DAM em tela que não tem o SETPOINT ainda (ex programação múltipla da unidade)\r\n else if (obj.hasOwnProperty('REL_DUT_ID_item') && state.devInfo && state.devInfo.DEV_ID.startsWith('DAM3') && state.devInfo.dam?.CAN_SELF_REFERENCE && obj.REL_DUT_ID_item.length > 0) {\r\n const needCalculateSetpoint = !obj.REL_DUT_ID_item.DEV_ID?.startsWith('DAM3') && state.formData.ECO_SETPOINT.length === 0 && obj.REL_DUT_ID_item.TUSEMIN;\r\n if (needCalculateSetpoint) {\r\n setSetpointByRoom(obj.REL_DUT_ID_item.TUSEMIN);\r\n }\r\n }\r\n else if (obj.hasOwnProperty('SENSOR_AUTOM')) {\r\n toast.warn(t('mudancaSensorDutDuo'));\r\n }\r\n Object.assign(state.formData, obj);\r\n\r\n devInfo = state.devInfo;\r\n setState({ devType: getDevType() });\r\n render();\r\n }\r\n\r\n function setSetpointByRoom(tusemin: number) {\r\n state.formData.ECO_SETPOINT = (state.devInfo!.dam!.ECO_OFST_START + tusemin).toString();\r\n }\r\n\r\n function editSchedule(cardPosition: number) {\r\n state.selectedSchedule = state.DUTS_SCHEDULES_FILTERED[cardPosition];\r\n state.selectedIndexSchedule = cardPosition;\r\n state.openModal = 'add-edit-schedule';\r\n\r\n render();\r\n }\r\n\r\n function saveSchedule(schedule: ScheduleDut, cardPosition: number|null) {\r\n if (cardPosition != null) {\r\n state.DUTS_SCHEDULES_FILTERED[cardPosition] = schedule;\r\n }\r\n else {\r\n state.DUTS_SCHEDULES_FILTERED.push(schedule);\r\n }\r\n render();\r\n }\r\n\r\n function deleteSchedule(scheduleId: number|null, cardPosition: number) {\r\n if (scheduleId != null) {\r\n state.DUTS_SCHEDULES_DELETED.push(scheduleId);\r\n state.DUTS_SCHEDULES_FILTERED = state.DUTS_SCHEDULES_FILTERED.filter((schedule) => schedule.DUT_SCHEDULE_ID == null || !state.DUTS_SCHEDULES_DELETED.includes(schedule.DUT_SCHEDULE_ID));\r\n }\r\n else {\r\n state.DUTS_SCHEDULES_FILTERED = state.DUTS_SCHEDULES_FILTERED.filter((_schedule, index) => index !== cardPosition);\r\n }\r\n\r\n render();\r\n }\r\n\r\n function editException(cardPosition: number) {\r\n state.selectedException = state.DUTS_EXCEPTIONS_FILTERED[cardPosition];\r\n state.selectedIndexException = cardPosition;\r\n state.openModal = 'add-edit-exception';\r\n\r\n render();\r\n }\r\n\r\n function saveException(exception: ExceptionDut, cardPosition: number|null) {\r\n if (cardPosition != null) {\r\n state.DUTS_EXCEPTIONS_FILTERED[cardPosition] = exception;\r\n }\r\n else {\r\n state.DUTS_EXCEPTIONS_FILTERED.push(exception);\r\n }\r\n render();\r\n }\r\n\r\n function deleteException(exceptionId: number|null, cardPosition: number) {\r\n if (exceptionId != null) {\r\n state.DUTS_EXCEPTIONS_DELETED.push(exceptionId);\r\n state.DUTS_EXCEPTIONS_FILTERED = state.DUTS_EXCEPTIONS_FILTERED.filter((exception) => exception.DUT_EXCEPTION_ID == null || !state.DUTS_EXCEPTIONS_DELETED.includes(exception.DUT_EXCEPTION_ID));\r\n }\r\n else {\r\n state.DUTS_EXCEPTIONS_FILTERED = state.DUTS_EXCEPTIONS_FILTERED.filter((_schedule, index) => index !== cardPosition);\r\n }\r\n\r\n render();\r\n }\r\n\r\n async function checkCardsNoConflicts() {\r\n let index = 0;\r\n for (const schedule of state.DUTS_SCHEDULES_FILTERED) {\r\n for (let i = index + 1; i < state.DUTS_SCHEDULES_FILTERED.length; i++) {\r\n const scheduleCompare = state.DUTS_SCHEDULES_FILTERED[i];\r\n const bothSchedulesActives = schedule.SCHEDULE_STATUS && scheduleCompare.SCHEDULE_STATUS;\r\n if (checkWeekDayCommun(schedule, scheduleCompare) && bothSchedulesActives) {\r\n let conflict = schedule.BEGIN_TIME >= scheduleCompare.BEGIN_TIME && schedule.BEGIN_TIME < state.DUTS_SCHEDULES_FILTERED[i].END_TIME;\r\n conflict = conflict || (schedule.END_TIME >= scheduleCompare.BEGIN_TIME && schedule.END_TIME < scheduleCompare.END_TIME);\r\n conflict = conflict || (scheduleCompare.BEGIN_TIME >= schedule.BEGIN_TIME && scheduleCompare.BEGIN_TIME < schedule.END_TIME);\r\n conflict = conflict || (scheduleCompare.END_TIME >= schedule.BEGIN_TIME && scheduleCompare.END_TIME < schedule.END_TIME);\r\n if (conflict) {\r\n const msgError = t('erroSalvarProgramacoesHorarias', {\r\n value1: schedule.SCHEDULE_TITLE,\r\n value2: scheduleCompare.SCHEDULE_TITLE,\r\n });\r\n toast.error(msgError);\r\n return false;\r\n }\r\n }\r\n }\r\n index++;\r\n }\r\n return true;\r\n }\r\n\r\n async function checkNeedMultipleSchedule() {\r\n let index = 0;\r\n checkExceptionsHasSameProperties();\r\n if (formData.DUTAUTCFG_item?.value !== 'IR') {\r\n state.NEED_MULT_SCHEDULES = false;\r\n return;\r\n }\r\n\r\n for (const schedule of state.DUTS_SCHEDULES_FILTERED) {\r\n if (schedule.SCHEDULE_STATUS) {\r\n compareWithAllOthersSchedules(index, schedule);\r\n if (state.NEED_MULT_SCHEDULES) {\r\n return;\r\n }\r\n\r\n if (schedule.SCHEDULE_STATUS && !state.CHANGE_EXCEPTION_PARAMETERS && checkScheduleAndExceptions(schedule)) {\r\n state.NEED_MULT_SCHEDULES = true;\r\n return;\r\n }\r\n }\r\n index++;\r\n }\r\n state.NEED_MULT_SCHEDULES = false;\r\n }\r\n\r\n function compareWithAllOthersSchedules(index: number, schedule: ScheduleDut) {\r\n for (let i = index + 1; i < state.DUTS_SCHEDULES_FILTERED.length; i++) {\r\n const scheduleCompare = state.DUTS_SCHEDULES_FILTERED[i];\r\n if (!scheduleCompare.SCHEDULE_STATUS) continue;\r\n const bothSchedulesAllow = schedule.PERMISSION === 'allow' && scheduleCompare.PERMISSION === 'allow';\r\n if (checkWeekDayCommun(schedule, scheduleCompare)) {\r\n state.NEED_MULT_SCHEDULES = true;\r\n return;\r\n }\r\n if (!checkWeekDayCommun(schedule, scheduleCompare) && bothSchedulesAllow && checkSchedulesConfigurationDifferent(schedule, scheduleCompare)) {\r\n state.NEED_MULT_SCHEDULES = true;\r\n return;\r\n }\r\n }\r\n }\r\n\r\n function checkExceptionsHasSameProperties() {\r\n // Encontra uma exceção que não seja desligar\r\n const exceptionToCompare = state.DUTS_EXCEPTIONS_FILTERED.find((exception) => exception.PERMISSION === 'allow');\r\n if (exceptionToCompare) {\r\n for (const exception of state.DUTS_EXCEPTIONS_FILTERED) {\r\n if (exception.PERMISSION === 'allow') {\r\n if (checkSchedulesConfigurationDifferent(exceptionToCompare, exception)) {\r\n return false;\r\n }\r\n }\r\n }\r\n state.CHANGE_EXCEPTION_PARAMETERS = true;\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function checkScheduleAndExceptions(schedule: ScheduleDut) {\r\n for (const exception of state.DUTS_EXCEPTIONS_FILTERED) {\r\n const bothSchedulesAllow = schedule.PERMISSION === 'allow' && exception.PERMISSION === 'allow';\r\n const exceptionAsScheduleConfig = {\r\n SCHEDULE_TITLE: exception.EXCEPTION_TITLE,\r\n SCHEDULE_STATUS: true,\r\n BEGIN_TIME: exception.BEGIN_TIME,\r\n END_TIME: exception.END_TIME,\r\n CTRLOPER: exception.CTRLOPER,\r\n PERMISSION: exception.PERMISSION,\r\n DAYS: {\r\n mon: true,\r\n tue: true,\r\n wed: true,\r\n thu: true,\r\n fri: true,\r\n sat: true,\r\n sun: true,\r\n },\r\n SETPOINT: exception.SETPOINT,\r\n LTC: exception.LTC,\r\n LTI: exception.LTI,\r\n UPPER_HYSTERESIS: exception.UPPER_HYSTERESIS,\r\n LOWER_HYSTERESIS: exception.LOWER_HYSTERESIS,\r\n SCHEDULE_START_BEHAVIOR: exception.SCHEDULE_START_BEHAVIOR,\r\n SCHEDULE_END_BEHAVIOR: exception.SCHEDULE_END_BEHAVIOR,\r\n FORCED_BEHAVIOR: exception.FORCED_BEHAVIOR,\r\n } as ScheduleDut;\r\n if (bothSchedulesAllow && checkSchedulesConfigurationDifferent(schedule, exceptionAsScheduleConfig)) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n }\r\n\r\n function checkWeekDayCommun(schedule1: ScheduleDut, schedule2: ScheduleDut) {\r\n let result = schedule1.DAYS.mon && schedule2.DAYS.mon;\r\n result = result || (schedule1.DAYS.tue && schedule2.DAYS.tue);\r\n result = result || (schedule1.DAYS.wed && schedule2.DAYS.wed);\r\n result = result || (schedule1.DAYS.thu && schedule2.DAYS.thu);\r\n result = result || (schedule1.DAYS.fri && schedule2.DAYS.fri);\r\n result = result || (schedule1.DAYS.sat && schedule2.DAYS.sat);\r\n result = result || (schedule1.DAYS.sun && schedule2.DAYS.sun);\r\n\r\n return result;\r\n }\r\n\r\n function getModificationsSobDemanda(schedule1: ScheduleDut|ExceptionDut, schedule2: ScheduleDut|ExceptionDut) {\r\n const hasActionMode = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['2_SOB_DEMANDA'].includes(schedule1.CTRLOPER) : false;\r\n const hasActionTime = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['2_SOB_DEMANDA'].includes(schedule1.CTRLOPER) : false;\r\n const hasActionPostBehavior = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['2_SOB_DEMANDA'].includes(schedule1.CTRLOPER) : false;\r\n return {\r\n hasActionMode,\r\n hasActionTime,\r\n hasActionPostBehavior,\r\n };\r\n }\r\n\r\n function getModifications(schedule1: ScheduleDut|ExceptionDut, schedule2: ScheduleDut|ExceptionDut) {\r\n const hasSetPoint = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && (['1_CONTROL', '2_SOB_DEMANDA', '3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2', '8_ECO_2'].includes(schedule1.CTRLOPER) || schedule1.CTRLOPER === '7_FORCED' && schedule1.FORCED_BEHAVIOR === 'dut-forced-cool') : false;\r\n const hasLtc = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['3_BACKUP', '5_BACKUP_CONTROL', '6_BACKUP_CONTROL_V2', '8_ECO_2'].includes(schedule1.CTRLOPER) : false;\r\n const hasLti = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['6_BACKUP_CONTROL_V2', '8_ECO_2'].includes(schedule1.CTRLOPER) : false;\r\n const hasForcedOptions = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['7_FORCED'].includes(schedule1.CTRLOPER) : false;\r\n const hasEco2Options = schedule1.CTRLOPER ? schedule1.PERMISSION === 'allow' && ['8_ECO_2'].includes(schedule1.CTRLOPER) : false;\r\n return {\r\n hasSetPoint,\r\n hasLtc,\r\n hasLti,\r\n hasForcedOptions,\r\n hasEco2Options,\r\n };\r\n }\r\n\r\n function configResultSobDemanda(resultInitial: boolean, schedule1: ScheduleDut|ExceptionDut, schedule2: ScheduleDut|ExceptionDut, hasActionMode: boolean, hasActionTime: boolean, hasActionPostBehavior: boolean, hasForcedOptions: boolean) {\r\n let result = resultInitial;\r\n result = result || (hasForcedOptions && schedule1.FORCED_BEHAVIOR !== schedule2.FORCED_BEHAVIOR);\r\n result = result || (hasActionMode && schedule1.ACTION_MODE !== schedule2.ACTION_MODE);\r\n result = result || (hasActionTime && schedule1.ACTION_TIME !== schedule2.ACTION_TIME);\r\n result = result || (hasActionPostBehavior && schedule1.ACTION_POST_BEHAVIOR !== schedule2.ACTION_POST_BEHAVIOR);\r\n return result;\r\n }\r\n\r\n function checkSchedulesConfigurationDifferent(schedule1: ScheduleDut|ExceptionDut, schedule2: ScheduleDut|ExceptionDut) {\r\n const {\r\n hasSetPoint,\r\n hasLtc,\r\n hasLti,\r\n hasEco2Options,\r\n hasForcedOptions,\r\n } = getModifications(schedule1, schedule2);\r\n const {\r\n hasActionMode,\r\n hasActionPostBehavior,\r\n hasActionTime,\r\n } = getModificationsSobDemanda(schedule1, schedule2);\r\n\r\n let result = schedule1.CTRLOPER !== schedule2.CTRLOPER;\r\n\r\n result = result || (hasSetPoint && schedule1.SETPOINT !== schedule2.SETPOINT);\r\n result = result || (hasLtc && schedule1.LTC !== schedule2.LTC);\r\n result = result || (hasLti && schedule1.LTI !== schedule2.LTI);\r\n result = result || (hasEco2Options && schedule1.UPPER_HYSTERESIS !== schedule2.UPPER_HYSTERESIS);\r\n result = result || (hasEco2Options && schedule1.LOWER_HYSTERESIS !== schedule2.LOWER_HYSTERESIS);\r\n result = result || (hasEco2Options && schedule1.SCHEDULE_START_BEHAVIOR !== schedule2.SCHEDULE_START_BEHAVIOR);\r\n result = result || (hasEco2Options && schedule1.SCHEDULE_END_BEHAVIOR !== schedule2.SCHEDULE_END_BEHAVIOR);\r\n result = configResultSobDemanda(result, schedule1, schedule2, hasActionMode, hasActionTime, hasActionPostBehavior, hasForcedOptions);\r\n\r\n return result;\r\n }\r\n\r\n let permissionProfile = (state.devInfo && state.devInfo.CLIENT_ID\r\n ? profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === state.devInfo?.CLIENT_ID)\r\n : false) || profile.manageAllClients;\r\n\r\n if (permissionProfile === false || permissionProfile === undefined) {\r\n permissionProfile = !!profile.adminClientProg?.UNIT_MANAGE.some((item) => item === state.devInfo?.UNIT_ID);\r\n }\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n state.assetLayout = linkBase.includes('/ativo');\r\n const allTabs = [\r\n {\r\n title: t('equipamento'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'equipamento' })}`,\r\n isActive: (queryPars.aba === 'equipamento') || (!queryPars.aba),\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('automacao'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'automacao' })}`,\r\n isActive: (queryPars.aba === 'automacao'),\r\n visible: (permissionProfile && (state.devType.isDam || state.devType.isDutAut)),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: 'DRI',\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'dri' })}`,\r\n isActive: (queryPars.aba === 'dri'),\r\n visible: (profile.manageAllClients && state.devType.isDri),\r\n ref: useRef(null),\r\n },\r\n ];\r\n const tabs = allTabs;\r\n\r\n function increaseDecreaseIntervalTime(value: string) {\r\n setFormData({ ECO_INTERVAL_TIME: value });\r\n }\r\n\r\n function increaseDecreaseSetpoint(value: string) {\r\n setFormData({ ECO_SETPOINT: value });\r\n }\r\n\r\n function increaseDecreaseUpperHysterese(value: string) {\r\n setFormData({ ECO_UPPER_HYSTERESIS: value });\r\n }\r\n\r\n function increaseDecreaseLowerHysterese(value: string) {\r\n setFormData({ ECO_LOWER_HYSTERESIS: value });\r\n }\r\n\r\n function increaseDecreaseMinimumTemperature(value: string) {\r\n setFormData({ MINIMUM_TEMPERATURE: value });\r\n }\r\n\r\n function increaseDecreaseMaximumTemperature(value: string) {\r\n setFormData({ MAXIMUM_TEMPERATURE: value });\r\n }\r\n\r\n function renderModal(devInfo) {\r\n return (state.openModal != null) && (\r\n setState({ openModal: null })}>\r\n {state.openModal === 'add-unit'\r\n && (\r\n setState({ openModal: null })}\r\n onSuccess={afterCreateUnit}\r\n />\r\n )}\r\n {state.openModal === 'add-group'\r\n && (\r\n setState({ openModal: null })}\r\n onSuccess={afterCreateGroup}\r\n />\r\n )}\r\n {state.openModal === 'add-edit-schedule'\r\n && (\r\n { setState({ openModal: null }); }}\r\n />\r\n )}\r\n {state.openModal === 'add-edit-exception'\r\n && (\r\n { setState({ openModal: null }); }}\r\n />\r\n )}\r\n \r\n );\r\n }\r\n\r\n if (state.devType.isDal || state.devType.isDmt) {\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devId, t('editar'))}\r\n \r\n \r\n {state.isLoading && (\r\n
\r\n \r\n
\r\n )}\r\n
\r\n {(!state.isLoading) && devInfo && (\r\n \r\n <>\r\n {state.devType.isDal && }\r\n {state.devType.isDmt && }\r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n const dutDuoFancoil = () => {\r\n if (devInfo?.dut?.APPLICATION === 'fancoil') {\r\n comboOpts.sensorAutom = [t('temperaturaSaidaAgua'), t('temperaturaEntradaAgua')];\r\n }\r\n };\r\n\r\n function renderDutDuoEquipFields() {\r\n dutDuoFancoil();\r\n return (formData.PLACEMENT_item?.value === 'DUO' && (\r\n \r\n setFormData({ SENSOR_AUTOM: item === t('retorno') ? 0 : 1 })}\r\n notNull\r\n />\r\n setFormData({ SENSOR_AUTOM: item === t('retorno') ? 1 : 0 })}\r\n notNull\r\n />\r\n \r\n ));\r\n }\r\n\r\n function renderDutEquipFields() {\r\n return (\r\n <>\r\n {(state.devType.isDut && state.devInfo?.dut?.APPLICATION !== 'fancoil') && (\r\n <>\r\n
\r\n env.ENVIRONMENT_NAME !== null)}\r\n value={formData.ENVIRONMENT_ID_item}\r\n propLabel=\"ENVIRONMENT_LABEL\"\r\n placeholder={t('ambiente')}\r\n onSelect={(item) => { setFormData({ ENVIRONMENT_ID_item: item }); setFormData({ ROOM_NAME: item.ENVIRONMENT_NAME }); }}\r\n disabled={!formData.UNIT_ID_item}\r\n />\r\n
\r\n
\r\n setFormData({ ROOM_NAME: event.target.value })}\r\n disabled={!profile.manageAllClients}\r\n />\r\n
\r\n \r\n )}\r\n\r\n {(state.devType.isDut) && (\r\n <>\r\n setFormData({ PLACEMENT_item: item, SENSOR_AUTOM: item.value === 'DUO' ? 0 : null })}\r\n notNull\r\n />\r\n {renderDutDuoEquipFields()}\r\n \r\n )}\r\n\r\n {(state.devType.isDut) && (\r\n <>\r\n
\r\n {\r\n state.offsetChecked = !state.offsetChecked;\r\n if (state.offsetChecked) {\r\n alert(t('cadastroOffsetAlerta'));\r\n }\r\n state.formData.TEMPERATURE_OFFSET = state.formData.TEMPERATURE_OFFSET ? state.formData.TEMPERATURE_OFFSET : '0';\r\n render();\r\n }}\r\n style={{\r\n display: 'flex',\r\n marginTop: '5px',\r\n }}\r\n >\r\n \r\n {state.offsetChecked ? : null}\r\n \r\n \r\n {t('offsetTemperatura')}\r\n \r\n \r\n
\r\n {state.offsetChecked && (\r\n <>\r\n
\r\n e.target.blur()}\r\n onChange={(event) => setFormData({ TEMPERATURE_OFFSET: event.target.value })}\r\n />\r\n
\r\n
\r\n {t('detalhesOffset', {\r\n value1: (formData.TEMPERATURE_OFFSET || '0'),\r\n value2: (formData.TEMPERATURE_OFFSET ? (23.0 + (parseDecimalNumber(formData.TEMPERATURE_OFFSET) || 0)).toString() : '23'),\r\n })}\r\n
\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n function renderAssetsFields() {\r\n return (\r\n <>\r\n
\r\n \r\n
\r\n \r\n ({\r\n value: item.value,\r\n name: item.label,\r\n unit: item.unit,\r\n }))}\r\n value={formData.GROUP_ID_item?.value.toString()}\r\n placeholder={t('conjunto')}\r\n search\r\n filterOptions={fuzzySearch}\r\n onChange={(value, name) => {\r\n setFormData({ GROUP_ID_item: name });\r\n changePropertiesByMachine();\r\n }}\r\n disabled={!formData.UNIT_ID_item}\r\n />\r\n
\r\n \r\n
\r\n
\r\n {formData.GROUP_ID_item?.value && (\r\n
\r\n {\r\n setFormData({ GROUP_ID_item: null });\r\n setFormData({ ASSET_ID_item: null });\r\n }}\r\n value={formData.GROUP_ID_item.name || formData.GROUP_ID_item.label}\r\n />\r\n
\r\n )}\r\n
\r\n asset.GROUP_ID === formData.GROUP_ID_item?.value)}\r\n value={formData.ASSET_ID_item}\r\n placeholder={t('ativo')}\r\n onSelect={(item) => {\r\n setFormData({ ASSET_ID_item: item || null });\r\n changePropertiesByAsset();\r\n render();\r\n }}\r\n disabled={!formData.GROUP_ID_item}\r\n />\r\n \r\n );\r\n }\r\n\r\n function renderDacEquipFields() {\r\n return (\r\n <>\r\n {(state.devType.isDac)\r\n && (\r\n <>\r\n \r\n {\r\n !profile.permissions.isInstaller && (\r\n setFormData({ FLUID_TYPE_item: item })}\r\n />\r\n )\r\n }\r\n
\r\n
\r\n P0: [\r\n {state.telemetry.P0raw}\r\n ]\r\n
\r\n setFormData({ P0_POSITION: item })}\r\n />\r\n setFormData({ P0_SENSOR: item })}\r\n />\r\n
\r\n
\r\n
\r\n P1: [\r\n {state.telemetry.P1raw}\r\n ]\r\n
\r\n setFormData({ P1_POSITION: item })}\r\n />\r\n setFormData({ P1_SENSOR: item })}\r\n />\r\n
\r\n {\r\n !profile.permissions.isInstaller && (\r\n <>\r\n
\r\n onTconfigClick()}\r\n />\r\n {(formData.configTsensors)\r\n && (\r\n
\r\n setFormData({ T0_POSITION: item })}\r\n />\r\n setFormData({ T1_POSITION: item })}\r\n />\r\n setFormData({ T2_POSITION: item })}\r\n />\r\n
\r\n )}\r\n
\r\n setFormData({ DAC_TYPE_item: item })}\r\n />\r\n {renderHeatExchangerFields()}\r\n \r\n ) => setFormData({ CAPACITY_PWR: event.target.value })}\r\n />\r\n setFormData({ CAPACITY_UNIT_item: item })}\r\n />\r\n \r\n \r\n ) => setFormData({ DAC_COP: event.target.value })}\r\n />\r\n \r\n \r\n ) => setFormData({ DAC_KW: event.target.value })}\r\n />\r\n \r\n setFormData({ DAC_ENV_item: item })}\r\n />\r\n\r\n setFormData({ DAC_BRAND_item: item })}\r\n />\r\n \r\n ) => setFormData({ DAC_MODEL: event.target.value })}\r\n />\r\n \r\n setFormData({ DAC_MODIF_item: item })}\r\n />\r\n setFormData({ DAC_COMIS_item: item })}\r\n notNull\r\n />\r\n \r\n ) => setFormData({ DAC_DESC: event.target.value })}\r\n />\r\n \r\n \r\n ) => setFormData({ DAC_NAME: event.target.value })}\r\n />\r\n \r\n \r\n )\r\n }\r\n {/* FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA */}\r\n {(state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.persistedAssetDevice?.ASSET_ROLE === 1 || state.persistedAssetDevice?.ASSET_ROLE === 2) && (\r\n <>\r\n \r\n
\r\n \r\n ({ name: item.label, value: item.value }))}\r\n value={formData.EVAPORATOR_MODEL_item?.value}\r\n printOptions=\"on-focus\"\r\n search\r\n filterOptions={fuzzySearch}\r\n placeholder={t('selecioneOModeloDaEvaporadora')}\r\n onChange={(id) => { setFormData({ EVAPORATOR_MODEL_item: comboOpts.evaporatorModels.find((item) => String(item.value) === String(id)) }); }}\r\n closeOnSelect={false}\r\n />\r\n
\r\n
\r\n setFormData({ EVAPORATOR_MODEL_item: null })} style={{ marginBottom: '10px' }}>{t('limparCampo')}\r\n \r\n ) => setFormData({ INSUFFLATION_SPEED: event.target.value })}\r\n />\r\n \r\n \r\n )}\r\n {((state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && (state.persistedAssetDevice?.ASSET_ROLE === 1 || state.persistedAssetDevice?.ASSET_ROLE === 2)) && (\r\n <>\r\n \r\n ) => setFormData({ COMPRESSOR_NOMINAL_CURRENT: event.target.value })}\r\n />\r\n \r\n setFormData({ EQUIPMENT_POWER_item: item })}\r\n notNull\r\n />\r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n function renderDamDuoEquipFields() {\r\n return (formData.DAM_PLACEMENT_item?.value === 'DUO' && (\r\n \r\n {\r\n const other = item.value === 'RETURN' ? comboOpts.sensorDamDuo[1] : comboOpts.sensorDamDuo[0];\r\n setFormData({ T0_POSITION_DAM: item, T1_POSITION_DAM: other });\r\n }}\r\n />\r\n {\r\n const other = item.value === 'RETURN' ? comboOpts.sensorDamDuo[1] : comboOpts.sensorDamDuo[0];\r\n setFormData({ T1_POSITION_DAM: item, T0_POSITION_DAM: other });\r\n }}\r\n />\r\n \r\n ));\r\n }\r\n\r\n function renderEquipmentInfo() {\r\n return (\r\n
\r\n \r\n \r\n \r\n DEV ID: \r\n {state.devId}\r\n \r\n \r\n\r\n \r\n \r\n {`${t('inicioMonitoramento')}: `}\r\n {formData.DAT_BEGMON || t('semInformacoes')}\r\n \r\n \r\n\r\n {(state.devType.isDac) && (\r\n
\r\n {t('l1Real')}\r\n \r\n {t('l1Simulado')}\r\n
\r\n )}\r\n\r\n {state.isLoadingUnitInfo && (\r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n ({ value: item.CLIENT_ID, name: item.NAME }))}\r\n value={formData.CLIENT_ID_item?.CLIENT_ID.toString()}\r\n propLabel=\"NAME\"\r\n placeholder={t('cliente')}\r\n search\r\n filterOptions={fuzzySearch}\r\n onChange={(value, name) => { onSelectClient(name); }}\r\n />\r\n
\r\n \r\n {formData.CLIENT_ID_item?.CLIENT_ID && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n
\r\n \r\n ({ value: item.UNIT_ID, name: item.UNIT_NAME }))}\r\n value={formData.UNIT_ID_item?.UNIT_ID.toString()}\r\n propLabel=\"NAME\"\r\n placeholder={t('unidade')}\r\n search\r\n filterOptions={fuzzySearch}\r\n notNull={false}\r\n onChange={(value, name) => { onSelectUnit(name); }}\r\n disabled={!formData.CLIENT_ID_item}\r\n />\r\n
\r\n \r\n {formData.UNIT_ID_item?.UNIT_ID && (\r\n
\r\n \r\n
\r\n )}\r\n {(state.devId.startsWith('DAM')) && (\r\n <>\r\n setFormData({ DAM_INSTALLATION_LOCATION_item: item })}\r\n />\r\n {/* FEATURE DISPONIVEL APENAS PARA OS CLIENTES: BANCO DO BRASIL e DIEL ENERGIA */}\r\n {(state.devInfo?.CLIENT_ID === 145 || state.devInfo?.CLIENT_ID === 1) && formData.DAM_INSTALLATION_LOCATION_item?.value === 'casa-de-maquina' && (\r\n <>\r\n setFormData({ DAM_PLACEMENT_item: item, ...(item.value === 'RETURN' && { T0_POSITION_DAM: null, T1_POSITION_DAM: null }) })}\r\n />\r\n {renderDamDuoEquipFields()}\r\n \r\n )}\r\n \r\n )}\r\n {(state.devType.isDut)\r\n && (\r\n renderAssetsFields()\r\n )}\r\n {renderDutEquipFields()}\r\n\r\n {((!state.devType.isDac) && filtComboOpts.groups.length > 0) && (\r\n <>\r\n
\r\n {`${t('maquinas')}:`}\r\n
\r\n
\r\n
\r\n {filtComboOpts.groups.map((group) => (\r\n \r\n ))}\r\n
\r\n
\r\n
\r\n \r\n )}\r\n {(state.devType.isDac)\r\n && (\r\n renderAssetsFields()\r\n )}\r\n {renderDacEquipFields()}\r\n \r\n \r\n \r\n \r\n
\r\n );\r\n }\r\n\r\n function renderDutAutSchedTabs() {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n { state.showExceptions && setState({ showExceptions: !state.showExceptions, showList: false }); }}\r\n >\r\n {t('programacoes')}\r\n \r\n \r\n { (!state.showExceptions) && setState({ showExceptions: !state.showExceptions }); }}\r\n >\r\n {t('excecoes')}\r\n \r\n \r\n
\r\n \r\n );\r\n }\r\n\r\n function renderDutAutSchedCards() {\r\n return (\r\n <>\r\n {!state.showExceptions && (\r\n \r\n {state.DUTS_SCHEDULES_FILTERED.map((schedule, index) => (index % 2 === 0\r\n ? (\r\n \r\n {state.isSaving && (\r\n \r\n \r\n \r\n )}\r\n \r\n {index + 1 < state.DUTS_SCHEDULES_FILTERED.length ? (\r\n \r\n ) : (\r\n <>\r\n \r\n )}\r\n \r\n )\r\n : (\r\n <>\r\n )))}\r\n \r\n )}\r\n {state.showExceptions && state.DUTS_EXCEPTIONS_FILTERED.length > 0 && (\r\n <>\r\n \r\n \r\n {t('titulo')}\r\n
\r\n \r\n {t('data')}\r\n
\r\n \r\n {t('repetirTodoAno')}\r\n
\r\n \r\n {t('inicio')}\r\n
\r\n \r\n {t('fim')}\r\n
\r\n \r\n {state.DUTS_EXCEPTIONS_FILTERED.map((exception, index) => (\r\n \r\n \r\n \r\n ))}\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n function renderDutAutSchedule(devInfo) {\r\n return (devInfo.dut_aut) && state.devType.dutAutEnabled && (\r\n <>\r\n {renderDutAutSchedTabs()}\r\n \r\n \r\n \r\n {`Total: ${!state.showExceptions ? state.DUTS_SCHEDULES_FILTERED.length : state.DUTS_EXCEPTIONS_FILTERED.length}`}\r\n
\r\n \r\n {\r\n if (state.showExceptions && state.DUTS_EXCEPTIONS_FILTERED.length === 30) {\r\n toast.error('Limite de 30 exceções alcançado!');\r\n }\r\n else {\r\n setState({\r\n selectedSchedule: null,\r\n selectedIndexSchedule: null,\r\n selectedException: null,\r\n selectedIndexException: null,\r\n openModal: !state.showExceptions ? 'add-edit-schedule' : 'add-edit-exception',\r\n });\r\n }\r\n }}\r\n variant=\"primary\"\r\n >\r\n {`${!state.showExceptions ? t('adicionarProgramacao') : t('adicionarExcecao')}`}\r\n \r\n
\r\n
\r\n {renderDutAutSchedCards()}\r\n
\r\n \r\n );\r\n }\r\n\r\n function renderHeatExchangerFields() {\r\n return (formData.DAC_APPL_item?.label === t('14trocadorCalor') && formData.DAC_TYPE_item?.label === t('trocadorCalor')) ? (\r\n
\r\n setFormData({ DAC_HEAT_EXCHANGER_item: item })}\r\n />\r\n {(formData.DAC_HEAT_EXCHANGER_item && formData.DAC_HEAT_EXCHANGER_item?.BRAND && formData.DAC_HEAT_EXCHANGER_item?.MODEL)\r\n ? (\r\n
\r\n {t('informacoesTipoTrocadorCalor')}\r\n {`\r\n ${formData.DAC_HEAT_EXCHANGER_item?.BRAND ? t('marcaTrocadorCalor', { value1: formData.DAC_HEAT_EXCHANGER_item?.BRAND }) : ''}\r\n ${formData.DAC_HEAT_EXCHANGER_item?.BRAND && formData.DAC_HEAT_EXCHANGER_item?.MODEL ? ' | ' : ''}\r\n ${formData.DAC_HEAT_EXCHANGER_item?.MODEL ? t('modeloTrocadorCalor', { value1: formData.DAC_HEAT_EXCHANGER_item?.MODEL }) : ''}\r\n `}\r\n
\r\n )\r\n\r\n : null}\r\n
\r\n\r\n ) : null;\r\n }\r\n\r\n function renderDriConfig() {\r\n return (!state.isLoading) && devInfo && state.devType.isDri && state.driInfo?.dri?.varsList && (\r\n \r\n
\r\n \r\n
\r\n );\r\n }\r\n\r\n function renderDamEcoFields() {\r\n return formData.ECO_CFG_item && (ecoModeDetails[formData.ECO_CFG_item.value] || state.devInfo?.dam?.CAN_SELF_REFERENCE) && (\r\n
\r\n {!state.devInfo?.dam?.CAN_SELF_REFERENCE\r\n ? (\r\n {\r\n if (\r\n (parseInt(e.target.value, 10) >= 1 && parseInt(e.target.value, 10) <= 15)\r\n || (e.target.value === '')\r\n ) {\r\n setFormData({ ECO_INTERVAL_TIME: e.target.value });\r\n }\r\n }}\r\n />\r\n )\r\n : (\r\n {\r\n if (\r\n (parseInt(e.target.value, 10) >= 1 && parseInt(e.target.value, 10) <= 15)\r\n || (e.target.value === '')\r\n ) {\r\n setFormData({ ECO_INTERVAL_TIME: e.target.value });\r\n }\r\n }}\r\n />\r\n )}\r\n

{t('limitesMin', { inicio: 1, final: 15 })}

\r\n \r\n {ecoModeDetails[formData.ECO_CFG_item.value]}\r\n
\r\n
\r\n );\r\n }\r\n\r\n function renderEco1Fields() {\r\n return (\r\n <>\r\n {renderDamEcoFields()}\r\n {!state.devInfo?.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n
\r\n setFormData({ ECO_OFST_START: e.target.value })}\r\n />\r\n
\r\n
\r\n {t('seTemperaturaMinimaAmbiente20graus', {\r\n value1: formData.ECO_OFST_START,\r\n value2: (20 + parseFloat(formData.ECO_OFST_START)),\r\n })}\r\n
\r\n
\r\n setFormData({ ECO_OFST_END: e.target.value })}\r\n />\r\n
\r\n
\r\n {t('seTemperaturaAtivacaoModoEcoCamaraFria7graus', {\r\n value1: (formData.ECO_OFST_END || 1),\r\n value2: (7 + (parseFloat(formData.ECO_OFST_END) || 1)),\r\n })}\r\n
\r\n \r\n )}\r\n {state.devInfo?.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n
\r\n setFormData({ ECO_SETPOINT: e.target.value })}\r\n />\r\n
\r\n
\r\n setFormData({ ECO_UPPER_HYSTERESIS: e.target.value })}\r\n />\r\n
\r\n
\r\n {t('refrigerarAcionandoQuando', {\r\n value1: ((Number(formData.ECO_SETPOINT) || 0) + (Number(formData.ECO_UPPER_HYSTERESIS) || 0)),\r\n value2: (formData.ECO_SETPOINT || '0'),\r\n value3: (formData.ECO_UPPER_HYSTERESIS || '0'),\r\n })}\r\n
\r\n
\r\n setFormData({ ECO_LOWER_HYSTERESIS: e.target.value })}\r\n />\r\n
\r\n
\r\n {t('modoEcoAcionandoQuando', {\r\n value1: ((Number(formData.ECO_SETPOINT) || 0) - (Number(formData.ECO_LOWER_HYSTERESIS) || 0)),\r\n value2: (formData.ECO_SETPOINT || '0'),\r\n value3: (formData.ECO_LOWER_HYSTERESIS || '0'),\r\n })}\r\n
\r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n function renderEco2Fields() {\r\n return (\r\n <>\r\n {!state.devType.isDac && (\r\n
\r\n setFormData({ ECO_SCHEDULE_START_BEHAVIOR_item: item })}\r\n notNull\r\n />\r\n
\r\n )}\r\n
\r\n setFormData({ ECO_INTERVAL_TIME: e.target.value })}\r\n />\r\n
\r\n
\r\n {t('histereseSoSeraConsideradaAlterarEstadoDispositivoIntervaloTempo')}\r\n
\r\n
\r\n setFormData({ ECO_SETPOINT: e.target.value })}\r\n />\r\n
\r\n
\r\n setFormData({ ECO_LTC: e.target.value })}\r\n />\r\n
\r\n
\r\n setFormData({ ECO_LTI: e.target.value })}\r\n />\r\n
\r\n
\r\n setFormData({ ECO_UPPER_HYSTERESIS: e.target.value })}\r\n />\r\n
\r\n
\r\n setFormData({ ECO_LOWER_HYSTERESIS: e.target.value })}\r\n />\r\n
\r\n \r\n );\r\n }\r\n\r\n function decideAssetLayout() {\r\n if (!state.assetLayout) {\r\n return ;\r\n }\r\n return ;\r\n }\r\n\r\n function formDataPlacemantitem() {\r\n if (formData.PLACEMENT_item && formData.PLACEMENT_item.value === 'DUO') {\r\n return

{t('msgInfoDutDuo')}

;\r\n }\r\n return null;\r\n }\r\n\r\n function verifyDamAndRelDutId(devInfo) {\r\n if (devInfo.dam && ((!devInfo.dac) || (devInfo.dam.DAM_DISABLED !== 1)) && formData.REL_DUT_ID_item) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyDamAndDamDisabled(devInfo) {\r\n if ((devInfo.dam) && ((!devInfo.dac) || (devInfo.dam.DAM_DISABLED !== 1))) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n function verifyDamFuNomCal() {\r\n if (state.damFuNomCalc) {\r\n return state.damFuNomCalc;\r\n }\r\n return t('semDados');\r\n }\r\n\r\n function verifyVariableExistence(variable, exeption) {\r\n if (variable) {\r\n return variable;\r\n }\r\n return exeption;\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devId, t('editar'))}\r\n \r\n {decideAssetLayout()}\r\n {state.isLoading && (\r\n
\r\n \r\n
\r\n )}\r\n {renderDriConfig()}\r\n\r\n \r\n \r\n
\r\n \r\n

Aguarde, os dados estão

\r\n

sendo salvos.

\r\n \r\n {formDataPlacemantitem()}\r\n
\r\n
\r\n\r\n {(!state.isLoading) && devInfo && !state.devType.isDri && (\r\n <>\r\n \r\n {t('botaoEditar')}\r\n {(tabs.length > 1) && }\r\n
\r\n
\r\n {(allTabs[0].isActive)\r\n && renderEquipmentInfo()}\r\n {(allTabs[1].isActive)\r\n && (\r\n
\r\n {/* Informação ocultada para futuras melhorias */}\r\n {/* \r\n \r\n Data da primeira automação: \r\n {formData.DAT_BEGAUT || 'Sem informações'}\r\n \r\n */}\r\n \r\n \r\n \r\n \r\n {(state.devType.isDac && state.devType.isDam) && (\r\n setFormData({ USE_RELAY_item: item })}\r\n notNull\r\n />\r\n )}\r\n {(state.devType.isDutAut) && (\r\n setFormData({ DUTAUTCFG_item: item })}\r\n notNull\r\n disabled={state.devType.isDut && state.devInfo?.dut?.operation_mode === 5}\r\n />\r\n )}\r\n\r\n {(devInfo.dut_aut) && state.devType.dutAutEnabled && (\r\n <>\r\n setFormData({ MCHN_BRAND_item: item })}\r\n />\r\n \r\n setFormData({ MCHN_MODEL: event.target.value })}\r\n />\r\n \r\n {(state.temperatureControlState && profile.manageAllClients) && (\r\n
{JSON.stringify(state.temperatureControlState)}
\r\n )}\r\n {(formData.DUTAUTCFG_item && (formData.DUTAUTCFG_item.value === 'IR')) && (\r\n <>\r\n \r\n setFormData({ RESENDPER: event.target.value })}\r\n placeholder={t('valorMultiplo5')}\r\n error={resendTimeError}\r\n />\r\n \r\n \r\n )}\r\n \r\n )}\r\n\r\n {(!state.devType.isDut) && (\r\n setFormData({ REL_DUT_ID_item: item })}\r\n disabled={!formData.UNIT_ID_item}\r\n propLabel=\"ROOM_NAME\"\r\n />\r\n )}\r\n\r\n {(state.devType.isDam && devInfo.DEV_ID.startsWith('DAM3')) && devInfo.dam?.supportsExtTherm && (\r\n setFormData({ EXT_THERM_CFG: item })}\r\n propLabel=\"label\"\r\n />\r\n )}\r\n\r\n {(verifyDamAndRelDutId(devInfo)) && (\r\n <>\r\n {!formData.REL_DUT_ID_item!.DEV_ID.startsWith('DAM3') && state.devInfo?.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n \r\n {t('tipoAmbiente')}\r\n
\r\n

{verifyVariableExistence(formData.REL_DUT_ID_item!.RTYPE_NAME, '-')}

\r\n \r\n {t('limitesTemperatura')}\r\n
\r\n
\r\n <>min.\r\n \r\n <>{` ${verifyVariableExistence(formData.REL_DUT_ID_item!.TUSEMIN, '-')} `}\r\n
\r\n <>ºC\r\n \r\n <>max.\r\n \r\n \r\n

{formData.REL_DUT_ID_item!.TUSEMAX || '-'}

\r\n \r\n <>ºC\r\n \r\n \r\n )}\r\n {formData.REL_DUT_ID_item!.DEV_ID.startsWith('DAM3') && state.devInfo?.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n
\r\n
\r\n setFormData({ MINIMUM_TEMPERATURE: e.target.value })}\r\n />\r\n
\r\n
\r\n setFormData({ MAXIMUM_TEMPERATURE: e.target.value })}\r\n />\r\n
\r\n
\r\n \r\n )}\r\n \r\n

{t('limitesTemperaturaConsideradosApenasNotificacoesExibicaoLinhas')}

\r\n \r\n\r\n \r\n setFormData({ ENABLE_ECO_item: item })}\r\n notNull\r\n />\r\n {formData.ENABLE_ECO_item && (formData.ENABLE_ECO_item.valueN !== 0) && (\r\n <>\r\n setFormData({ ENABLE_ECO_local: item })}\r\n notNull\r\n data-tip\r\n data-for=\"ecoLocal\"\r\n />\r\n \r\n \r\n \r\n {t('quandoHabilitadoODamExecutara')}\r\n \r\n \r\n\r\n \r\n \r\n )}\r\n \r\n\r\n {formData.ENABLE_ECO_item && (formData.ENABLE_ECO_item.valueN === 2) && (\r\n <>\r\n
\r\n {dacDamEcoDetails}\r\n
\r\n {profile.manageAllClients && (\r\n
\r\n \r\n
\r\n )}\r\n \r\n )}\r\n {formData.ENABLE_ECO_item && (formData.ENABLE_ECO_item.valueN !== 0) && (\r\n <>\r\n setFormData({ ECO_CFG_item: item })}\r\n notNull\r\n />\r\n {formData.ENABLE_ECO_item.valueN === 1 && renderEco1Fields()}\r\n {formData.ENABLE_ECO_item.valueN === 2 && renderEco2Fields()}\r\n {!state.devInfo?.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n \r\n setFormData({ FU_NOM: event.target.value })}\r\n />\r\n \r\n

(1-0)

\r\n \r\n )}\r\n {state.devInfo?.dam?.CAN_SELF_REFERENCE && (\r\n <>\r\n \r\n setFormData({ FU_NOM: e.target.value })}\r\n />\r\n \r\n

(1-0)

\r\n \r\n )}\r\n
\r\n {t('fatorUtilizacaoNominalSugerido', {\r\n value1: (verifyDamFuNomCal()),\r\n })}\r\n
\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n
\r\n \r\n {(verifyDamAndDamDisabled(devInfo)) && (\r\n
\r\n \r\n
\r\n )}\r\n {/* {(devInfo.dut_aut) && dutAutEnabled && (\r\n
\r\n \r\n
\r\n )} */}\r\n {renderDutAutSchedule(devInfo)}\r\n \r\n )}\r\n {(allTabs[2].isActive)\r\n && (\r\n formData.varsConfigInput = data.varsConfigInput}\r\n />\r\n )}\r\n
\r\n \r\n
\r\n \r\n {renderModal(devInfo)}\r\n {sendAndDisableAut && (\r\n setSendAndDisableAut(false)}>\r\n
Essa desassociação irá desabilitar a automação do dispositivo, deseja continuar?
\r\n \r\n \r\n
\r\n )}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('EditDevInfo', 'component')(EditDevInfo);\r\n","export default __webpack_public_path__ + \"static/media/IR_symbol_paths.98d34e58.svg\";","export default __webpack_public_path__ + \"static/media/IR_symbol_paths_faint.ce7d94df.svg\";","export default __webpack_public_path__ + \"static/media/wifi_icon.e368e180.svg\";","import styled from 'styled-components';\r\nimport {\r\n Select,\r\n} from 'components';\r\n\r\nexport const Card = styled.div`\r\n border-radius: 16px;\r\n padding: 32px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\nexport const IrTable = styled.div`\r\n display: grid;\r\n border-left: 1px solid grey;\r\n border-bottom: 1px solid grey;\r\n`;\r\n\r\nexport const IrTableCell = styled.div`\r\n border-top: 1px solid grey;\r\n border-right: 1px solid grey;\r\n padding: 5px;\r\n display: flex;\r\n align-items: center;\r\n`;\r\n\r\nexport const IrTableCell2 = styled(IrTableCell)`\r\n justify-content: space-between;\r\n`;\r\n\r\nexport const SelectContainer = styled.div`\r\n font-weight: bold;\r\n position: fixed;\r\n background: white;\r\n border: 2px solid #d3d3d3;\r\n border-radius: 10px;\r\n box-shadow: 5px 6px 11px rgba(0,0,0,0.24), 0px 14px 15px rgba(0,0,0,0.12);\r\n`;\r\n\r\nexport const CustomSelect = styled(Select)`\r\n margin-bottom: 20px;\r\n background-color: white;\r\n margin-bottom: 0;\r\n`;\r\n\r\nexport const TextLine = styled.div`\r\n display: flex;\r\n align-items: center;\r\n color: #5d5d5d;\r\n margin-top: 10px;\r\n`;\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport * as levenshtein from 'fast-levenshtein';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams, useHistory } from 'react-router-dom';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport IrReadIcon from 'assets/img/icons/IR_symbol_paths.svg';\r\nimport IrReadFaintIcon from 'assets/img/icons/IR_symbol_paths_faint.svg';\r\nimport TransmitIcon from 'assets/img/icons/wifi_icon.svg';\r\nimport {\r\n Loader, ModalWindow, Select, Button, ActionButton, Input, Checkbox, RouterPrompt,\r\n} from 'components';\r\nimport { getCachedDevInfo, getCachedDevInfoSync } from 'helpers/cachedStorage';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { useWebSocket } from 'helpers/wsConnection';\r\nimport {\r\n DeleteOutlineIcon,\r\n EditIcon,\r\n} from 'icons';\r\nimport { DevLayout } from 'pages/Analysis/DEVs/DevLayout';\r\nimport { apiCall } from 'providers';\r\nimport { colors } from 'styles/colors';\r\nimport { AssetLayout } from 'pages/Analysis/Assets/AssetLayout';\r\n\r\nimport {\r\n Card,\r\n IrTable,\r\n IrTableCell,\r\n IrTableCell2,\r\n SelectContainer,\r\n CustomSelect,\r\n TextLine,\r\n} from './styles';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { MdArrowDropDown, MdArrowRight } from 'react-icons/md';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nfunction getDutDefaultTemps() {\r\n const temps = [] as { name: string, value: number }[];\r\n for (let index = 16; index <= 30; index += 1) {\r\n temps.push({ name: `${index}°C`, value: index });\r\n }\r\n return temps;\r\n}\r\n\r\nexport const DutIrManagement = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const routeParams = useParams<{ devId: string }>();\r\n const [profile] = useState(getUserProfile);\r\n const [state, render, setState] = useStateVar(() => ({\r\n modify: false,\r\n haveError: false,\r\n devId: routeParams.devId,\r\n loading: true,\r\n savingCmdType: false,\r\n savingCmdsTable: false,\r\n savingFakeCmds: false,\r\n deletingSelectedCmds: false,\r\n transmittingCommand: false,\r\n selectedDutCommands: 0,\r\n selectPositionY: 0,\r\n assetLayout: false,\r\n selectPositionX: 0,\r\n devInfo: getCachedDevInfoSync(routeParams.devId),\r\n defaultIrList: [] as { IR_ID: string, CMD_TYPE: string, CMD_DESC: string, TEMPER: number }[],\r\n irList: [] as { IR_ID: string, CMD_TYPE: string, CMD_DESC: string, TEMPER: number }[],\r\n loadedIrList: [] as {\r\n IR_ID: string;\r\n CMD_TYPE: string;\r\n CMD_DESC: string;\r\n TEMPER: number;\r\n }[],\r\n dutCommandTypes: [{ name: t('refrigerar'), value: 'COOL' }, { name: t('desligar'), value: 'OFF' }, { name: t('ventilar'), value: 'FAN' }, { name: t('outro'), value: 'OTHER' }],\r\n dutDefaultTemps: getDutDefaultTemps(),\r\n dutCommandActions: [] as string[],\r\n probableIrCommands: null as null | {\r\n ircodes: {\r\n DUT_ID: string;\r\n IR_ID: string;\r\n CMD_TYPE: string;\r\n CMD_DESC: string;\r\n TEMPER: number;\r\n }[];\r\n dutCommandTypes: string[];\r\n model: string;\r\n DUT_ID: string;\r\n distance: number;\r\n }[],\r\n loadedIrModel: '',\r\n checkedAllCodes: false,\r\n lastIr: {\r\n id: null,\r\n ts: null,\r\n isOld: null,\r\n timer: null,\r\n },\r\n showModal: null,\r\n modalCmdType: {\r\n IR_ID: null,\r\n CMD_TYPE: null as null | { name: string, value: string },\r\n CMD_DESC: null,\r\n CMD_ACTION: null,\r\n TEMPER: null as null | { name: string, value: number },\r\n },\r\n wsConn: null,\r\n learnActive: false,\r\n rends: 0,\r\n comboOpts: {} as {\r\n units?: { label: string, value: number }[],\r\n groups?: { label: string, value: number, unit: number }[],\r\n fluids?: { label: string, value: string }[],\r\n applics?: { label: string, value: string }[],\r\n types?: { label: string, value: string }[],\r\n envs?: { label: string, value: string }[],\r\n brands?: { label: string, value: string }[],\r\n roles?: { label: string, value: string }[],\r\n psens?: { label: string, value: string }[],\r\n vavs?: { label: string, value: string }[],\r\n rtypes?: { RTYPE_NAME: string, RTYPE_ID: number }[],\r\n dutPlacement?: { label: string, value: string }[],\r\n },\r\n MCHN_BRAND_item: null as null|{ label: string, value: string },\r\n MCHN_MODEL: '',\r\n openEdit: false,\r\n savingModel: false,\r\n permissionGeral: false,\r\n }));\r\n\r\n useEffect(() => {\r\n verifyPermissions();\r\n }, [profile]);\r\n\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n try {\r\n const [\r\n devInfo,\r\n { list, dutCommandTypes },\r\n ] = await Promise.all([\r\n getCachedDevInfo(state.devId, {}),\r\n apiCall('/get-dut-ircodes-list', { devId: state.devId }),\r\n ]);\r\n state.devInfo = devInfo;\r\n // @ts-ignore\r\n state.irList = list || [];\r\n state.defaultIrList = state.irList;\r\n state.loadedIrList = state.irList;\r\n // @ts-ignore\r\n if (!sessionStorage.getItem('savingOnDut')) {\r\n sessionStorage.setItem('savingOnDut', JSON.stringify(state.loadedIrList));\r\n }\r\n state.dutCommandActions = dutCommandTypes || [];\r\n if (state.permissionGeral) {\r\n const probableCommands = await fetchIRCommandSets(state.devId);\r\n setState({ probableIrCommands: probableCommands });\r\n }\r\n } catch (err) { toast.error(t('erro')); console.error(err); }\r\n state.loading = false;\r\n render();\r\n });\r\n if (profile.permissions.isInstaller) {\r\n const reqCombos = {\r\n fluids: true,\r\n applics: true,\r\n types: true,\r\n envs: true,\r\n brands: true,\r\n psens: true,\r\n ecoModeCfg: true,\r\n scheduleStartBehavior: true,\r\n dutScheduleStartBehavior: true,\r\n dutScheduleEndBehavior: true,\r\n dutForcedBehavior: true,\r\n };\r\n apiCall('/dev/dev-info-combo-options', reqCombos).then((response) => {\r\n state.comboOpts = response;\r\n });\r\n }\r\n }, [state.savingModel]);\r\n\r\n useEffect(() => {\r\n if (!state.wsConn) return;\r\n if (state.learnActive) {\r\n // @ts-ignore\r\n state.wsConn.send({\r\n type: 'dutSubscribeIrRead', data: { DUT_ID: state.devId },\r\n });\r\n } else {\r\n // @ts-ignore\r\n state.wsConn.send({\r\n type: 'dutUnsubscribeIrRead',\r\n });\r\n }\r\n }, [state.learnActive]);\r\n\r\n const linkBase = history.location.pathname;\r\n\r\n state.assetLayout = linkBase.includes('/ativo');\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n function onWsOpen(wsConn) {\r\n state.wsConn = wsConn;\r\n if (state.learnActive) {\r\n wsConn.send({ type: 'dutSubscribeIrRead', data: { DUT_ID: state.devId } });\r\n }\r\n }\r\n function onWsMessage(payload) {\r\n const { type: msgType, data: msgData } = (payload || {});\r\n if (msgType === 'dutIrRead') {\r\n if (msgData.devId !== state.devId) return;\r\n if (!msgData.IR_ID) return;\r\n state.lastIr.id = msgData.IR_ID;\r\n // @ts-ignore\r\n state.lastIr.ts = Date.now();\r\n // @ts-ignore\r\n state.lastIr.isOld = false;\r\n // @ts-ignore\r\n clearTimeout(state.lastIr.timer);\r\n // @ts-ignore\r\n state.lastIr.timer = setTimeout(() => {\r\n // @ts-ignore\r\n state.lastIr.isOld = ((state.lastIr.ts + 1000) < Date.now());\r\n // @ts-ignore\r\n if (state.lastIr.isOld) render();\r\n }, 1500);\r\n // @ts-ignore\r\n if (!state.irList.some((x) => x.IR_ID === msgData.IR_ID)) {\r\n // @ts-ignore\r\n state.irList.push({\r\n // @ts-ignore\r\n IR_ID: msgData.IR_ID,\r\n // @ts-ignore\r\n CMD_TYPE: (msgData.CMD_TYPE || null),\r\n // @ts-ignore\r\n CMD_DESC: (msgData.CMD_DESC || null),\r\n // @ts-ignore\r\n TEMPER: (msgData.TEMPER == null) ? null : msgData.TEMPER,\r\n });\r\n }\r\n render();\r\n }\r\n }\r\n function beforeWsClose(wsConn) {\r\n wsConn.send({ type: 'dutUnsubscribeIrRead' });\r\n }\r\n\r\n const confirmSetCmdType = async () => {\r\n try {\r\n const { IR_ID } = state.modalCmdType;\r\n const CMD_TYPE = state.modalCmdType.CMD_ACTION || null;\r\n const CMD_DESC = state.modalCmdType.CMD_TYPE\r\n && state.modalCmdType.CMD_TYPE.value === 'COOL'\r\n ? (state.modalCmdType.TEMPER && `ON_${state.modalCmdType.TEMPER.value}`)\r\n : (state.modalCmdType.CMD_TYPE?.value === 'OTHER' ? state.modalCmdType.CMD_DESC : (state.modalCmdType.CMD_TYPE?.value));\r\n const TEMPER = ((CMD_TYPE === 'AC_COOL') && state.modalCmdType.TEMPER) ? state.modalCmdType.TEMPER.value : null;\r\n setState({ savingCmdType: true });\r\n await apiCall('/define-ircode-action', {\r\n devId: state.devId,\r\n // @ts-ignore\r\n IR_ID,\r\n // @ts-ignore\r\n CMD_TYPE,\r\n // @ts-ignore\r\n CMD_DESC,\r\n // @ts-ignore\r\n TEMPER,\r\n });\r\n for (const row of state.irList) {\r\n // @ts-ignore\r\n if (row.CMD_TYPE === CMD_TYPE) { row.CMD_TYPE = null; }\r\n // @ts-ignore\r\n if (row.IR_ID === IR_ID) {\r\n // @ts-ignore\r\n row.CMD_TYPE = CMD_TYPE;\r\n // @ts-ignore\r\n row.CMD_DESC = CMD_DESC;\r\n // @ts-ignore\r\n row.TEMPER = TEMPER;\r\n }\r\n }\r\n state.showModal = null;\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n setState({ savingCmdType: false });\r\n };\r\n\r\n const emmitDutCommand = async (item) => {\r\n try {\r\n setState({ transmittingCommand: true });\r\n await apiCall('/send-dut-aut-command', {\r\n devId: state.devId,\r\n IR_ID: item.IR_ID,\r\n });\r\n toast.success(t('sucessoTransmitido'));\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n setState({ transmittingCommand: false });\r\n };\r\n\r\n const sendCommandsTableToDut = async () => {\r\n try {\r\n setState({ savingCmdsTable: true });\r\n await apiCall('/resend-dut-ir-codes', {\r\n devId: state.devId,\r\n });\r\n sessionStorage.clear();\r\n sessionStorage.setItem('savingOnDut', JSON.stringify(state.defaultIrList));\r\n setState({ haveError: false });\r\n toast.success(t('sucessoTransmitido'));\r\n } catch (err) { console.log(err); toast.error(t('erro')); setState({ haveError: true }); }\r\n setState({ savingCmdsTable: false });\r\n };\r\n const deleteIrCode = async (item) => {\r\n if (!window.confirm(t('desejaExcluirCodigo'))) {\r\n return;\r\n }\r\n try {\r\n await apiCall('/delete-dut-ircode', {\r\n devId: state.devId,\r\n IR_ID: item.IR_ID,\r\n });\r\n setState({ modify: true });\r\n toast.success(t('sucessoExcluir'));\r\n // @ts-ignore\r\n state.irList = state.irList.filter((x) => x.IR_ID !== item.IR_ID);\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n };\r\n\r\n async function fetchIRCommandSets(dutId: string) {\r\n if (!state.devInfo) return null;\r\n if (!state.devInfo.dut_aut) return null;\r\n const probableCommands = (await apiCall('/get-dut-ircodes-by-model', { devId: dutId }).then((x) => x.list))\r\n .filter((x) => x.ircodes?.length > 0 && x.ircodes[0].DUT_ID !== state.devId && x.model)\r\n .map((command) => Object.assign(command, {\r\n distance: levenshtein.get(state.devInfo!.dut_aut!.MCHN_MODEL || '', command.model),\r\n dropdown_text: `${command.model} - ${command.ircodes[0].DUT_ID}`,\r\n }));\r\n\r\n probableCommands.sort((a, b) => a.distance - b.distance);\r\n return probableCommands;\r\n }\r\n\r\n async function saveTableCmds() {\r\n setState({ savingCmdsTable: true });\r\n setState({ modify: true });\r\n const commands = {\r\n configs: state.loadedIrList.map((x) => ({ IR_ID: x.IR_ID, CMD_TYPE: x.CMD_TYPE })),\r\n targetDutId: state.devId,\r\n };\r\n const response = await apiCall('/write-dut-command-by-ircode', commands);\r\n if (!response.success || response.success !== true) {\r\n toast.error(t('erro'));\r\n setState({ savingCmdsTable: false });\r\n return;\r\n }\r\n\r\n for (const config of state.loadedIrList) {\r\n const idx = state.irList.findIndex((x) => x.IR_ID === config.IR_ID);\r\n if (idx !== -1) {\r\n state.irList[idx] = config;\r\n }\r\n else {\r\n state.irList.push(config);\r\n }\r\n }\r\n\r\n for (const config of state.loadedIrList) {\r\n const idx = state.irList.findIndex((x) => x.IR_ID === config.IR_ID);\r\n if (idx !== -1) {\r\n state.irList[idx] = config;\r\n }\r\n else {\r\n state.irList.push(config);\r\n }\r\n\r\n for (const ir of state.irList) {\r\n if (config.CMD_TYPE === ir.CMD_TYPE && config.IR_ID !== ir.IR_ID) {\r\n // @ts-ignore\r\n ir.CMD_TYPE = null;\r\n }\r\n }\r\n }\r\n // let {list, dutCommandTypes} = await apiCall('/get-dut-ircodes-list', { devId: state.devId })\r\n // state.irList = list || state.irList\r\n // state.dutCommandTypes = dutCommandTypes || state.dutCommandTypes\r\n setState({ savingCmdsTable: false });\r\n }\r\n\r\n function getCommandType(cmdDesc) {\r\n if (cmdDesc?.includes('ON')) {\r\n return { name: t('refrigerar'), value: 'COOL' };\r\n }\r\n if (cmdDesc === 'FAN') return { name: t('ventilar'), value: 'FAN' };\r\n if (cmdDesc === 'OFF') return { name: t('desligar'), value: 'OFF' };\r\n if (cmdDesc) return { name: t('outro'), value: 'OTHER' };\r\n return null;\r\n }\r\n\r\n function getCommandTemp(temp, cmdDesc) {\r\n if (temp) return temp;\r\n if (cmdDesc?.includes('ON')) {\r\n const cmdDescTemp = Number(cmdDesc.split('_')[1]) || null;\r\n return (cmdDescTemp && { name: `${cmdDescTemp}°C`, value: cmdDescTemp });\r\n }\r\n return null;\r\n }\r\n\r\n function clearEditItemValues(item) {\r\n if (item.IR_ID) state.modalCmdType.IR_ID = item.IR_ID;\r\n state.modalCmdType.CMD_TYPE = getCommandType(item.CMD_DESC || '');\r\n if (item.CMD_DESC) state.modalCmdType.CMD_DESC = item.CMD_DESC;\r\n state.modalCmdType.CMD_ACTION = item.CMD_TYPE || '';\r\n state.modalCmdType.TEMPER = getCommandTemp(item.TEMPER, item.CMD_DESC);\r\n }\r\n\r\n function wantEditItem(item) {\r\n setState({ modify: true });\r\n clearEditItemValues(item);\r\n // @ts-ignore\r\n state.showModal = 'set-cmd-type';\r\n render();\r\n }\r\n\r\n function verifyParams() {\r\n if (!state.devInfo?.dut_aut || !state.devInfo?.CLIENT_ID || !state.devInfo?.UNIT_ID) {\r\n return true;\r\n }\r\n return false;\r\n }\r\n\r\n async function saveModel() {\r\n try {\r\n setState({ savingModel: true });\r\n if (verifyParams()) {\r\n toast.error(t('houveErro'));\r\n return;\r\n }\r\n await apiCall('/dut/set-dut-info', {\r\n DEV_ID: state.devId,\r\n MCHN_BRAND: state.MCHN_BRAND_item?.value,\r\n MCHN_MODEL: state.MCHN_MODEL,\r\n CLIENT_ID: state.devInfo?.CLIENT_ID,\r\n UNIT_ID: state.devInfo?.UNIT_ID,\r\n groups: state.devInfo?.dut_aut?.groups?.map((item) => item.GROUP_ID.toString()),\r\n });\r\n toast.success(t('salvoSucesso'));\r\n render();\r\n } catch (err) {\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ savingModel: false });\r\n render();\r\n }\r\n\r\n const deleteAllSelectedCommands = async () => {\r\n try {\r\n setState({ deletingSelectedCmds: true });\r\n state.irList.forEach(async (ir) => {\r\n // @ts-ignore\r\n if (ir.checked) {\r\n await apiCall('/delete-dut-ircode', {\r\n // @ts-ignore\r\n devId: state.devId,\r\n // @ts-ignore\r\n IR_ID: ir.IR_ID,\r\n });\r\n }\r\n });\r\n // @ts-ignore\r\n setState({ irList: state.irList.filter((ir) => !ir.checked) });\r\n setState({ modify: true });\r\n render();\r\n toast.success(t('sucessoTransmitido'));\r\n } catch (err) { console.log(err); toast.error(t('erro')); }\r\n // @ts-ignore\r\n setState({ selectedDutCommands: state.irList.filter((x) => x.checked).length });\r\n setState({ deletingSelectedCmds: false });\r\n };\r\n\r\n function verifyPermissions() {\r\n if (profile.manageAllClients || profile.isUserManut || profile.permissions.isInstaller || (state.devInfo?.CLIENT_ID && profile.permissions.CLIENT_MANAGE.includes(state.devInfo.CLIENT_ID))) {\r\n setState({ permissionGeral: true });\r\n }\r\n }\r\n\r\n function buildScreenInfoParams(): Parameters<(typeof AssetLayout)>[0]['screenInfo'] {\r\n return {\r\n forceHideHealthTab: false,\r\n groupSelected: true,\r\n hasNonDutDeviceInAssets: false,\r\n dutAutomationInfo: {},\r\n isDuoSelected: state.devInfo?.dut?.PLACEMENT === 'DUO',\r\n assetRoleSelected: 0,\r\n };\r\n }\r\n\r\n return (\r\n <>\r\n { setState({ modify: false }); return true; }}\r\n onCancel={async () => { await sendCommandsTableToDut(); if (!state.haveError) { setState({ modify: false }); return true; } return false; }}\r\n >\r\n

{t('comandosNaoForamSalvosDutDesejaContinuar')}

\r\n \r\n \r\n {generateNameFormatted(state.devInfo?.DEV_ID, t('controleRemoto'))}\r\n \r\n {!state.assetLayout ? () : ()}\r\n {(state.loading) ? \r\n : (\r\n <>\r\n \r\n
\r\n
 
\r\n
{(state.transmittingCommand) && }
\r\n
\r\n {(state.permissionGeral) && (\r\n \r\n )}\r\n
\r\n
\r\n {(state.permissionGeral) && (\r\n
\r\n setState({ learnActive: !state.learnActive })}\r\n color=\"primary\"\r\n />\r\n {t('habilitarAprendizagem')}\r\n
\r\n )}\r\n {(state.permissionGeral) && (\r\n
\r\n \r\n {\r\n profile.permissions.isInstaller && (\r\n <>\r\n
\r\n

setState({ openEdit: !state.openEdit })}>\r\n \r\n { state.openEdit ? : }\r\n {' '}\r\n {t('editarAcrescentarModelo')}\r\n \r\n

\r\n {\r\n state.openEdit && (\r\n <>\r\n { setState({ MCHN_BRAND_item: item }); render(); }}\r\n />\r\n \r\n { setState({ MCHN_MODEL: event.target.value }); }}\r\n />\r\n \r\n \r\n \r\n )\r\n }\r\n
\r\n \r\n )\r\n }\r\n \r\n {profile.permissions.isInstaller && (\r\n \r\n )}\r\n a.distance - b.distance)}\r\n placeholder={t('modelos')}\r\n propLabel=\"dropdown_text\"\r\n value={state.loadedIrModel}\r\n onSelect={(ir_command) => {\r\n // let command = state.probableIrCommands.find((x) => x.model === ir_command);\r\n if (ir_command === '') {\r\n setState({ loadedIrList: state.defaultIrList, loadedIrModel: '' });\r\n render();\r\n return;\r\n }\r\n\r\n const clonedIrCodes = JSON.parse(JSON.stringify(ir_command.ircodes));\r\n\r\n setState({ loadedIrList: clonedIrCodes, dutCommandTypes: ir_command.dutCommandTypes, loadedIrModel: ir_command.dropdown_text });\r\n render();\r\n // setState({irList : ir_command.ircodes, dutCommandTypes : ir_command.dutCommandTypes, loadedIrModel: ir_command.model})\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n )}\r\n
\r\n \r\n {(state.permissionGeral) && (\r\n {t('codigo')}\r\n )}\r\n {t('comentario')}\r\n \r\n {t('acaoAutomocao')}\r\n \r\n {(state.permissionGeral) && (\r\n \r\n !!item.checked) && state.irList.length > 0}\r\n onClick={(event) => {\r\n // @ts-ignore\r\n state.checkedAllCodes = !state.checkedAllCodes;\r\n // @ts-ignore\r\n state.irList.forEach((item) => { item.checked = state.checkedAllCodes; });\r\n state.selectPositionX = event.clientX - 300;\r\n state.selectPositionY = event.clientY;\r\n // @ts-ignore\r\n setState({ selectedDutCommands: state.irList.filter((x) => x.checked).length });\r\n render();\r\n }}\r\n />\r\n \r\n )}\r\n {(!state.savingCmdsTable) && state.irList.map((item) => (\r\n // @ts-ignore\r\n <>\r\n {(state.permissionGeral) && (\r\n <>\r\n {/* @ts-ignore */}\r\n \r\n {/* @ts-ignore */}\r\n {item.IR_ID}\r\n {/* @ts-ignore */}\r\n {(item.IR_ID === state.lastIr.id) ? : ''}\r\n \r\n \r\n )}\r\n {/* @ts-ignore */}\r\n \r\n {/* @ts-ignore */}\r\n {(item.TEMPER != null) && `[${item.TEMPER}] `}\r\n {/* @ts-ignore */}\r\n {item.CMD_DESC}\r\n \r\n {/* @ts-ignore */}\r\n \r\n {/* @ts-ignore */}\r\n {item.CMD_TYPE}\r\n
\r\n {(state.permissionGeral) && (\r\n wantEditItem(item)} variant=\"blue-inv\">\r\n \r\n \r\n )}\r\n\r\n emmitDutCommand(item)} variant=\"blue-inv\">\r\n \r\n \r\n\r\n {(state.permissionGeral) && (\r\n deleteIrCode(item)} variant=\"red-inv\">\r\n \r\n \r\n )}\r\n
\r\n
\r\n {(state.permissionGeral) && (\r\n <>\r\n {/* @ts-ignore */}\r\n \r\n {\r\n // @ts-ignore\r\n item.checked = !item.checked;\r\n state.selectPositionX = event.clientX - 300;\r\n state.selectPositionY = event.clientY;\r\n // @ts-ignore\r\n setState({ selectedDutCommands: state.irList.filter((x) => x.checked).length });\r\n render();\r\n }}\r\n />\r\n \r\n \r\n )}\r\n {(state.selectedDutCommands > 0) && (\r\n \r\n {\r\n if (opt.value === 'erase') {\r\n await deleteAllSelectedCommands();\r\n }\r\n }}\r\n />\r\n \r\n )}\r\n \r\n ))}\r\n
\r\n
\r\n
\r\n \r\n )}\r\n {\r\n (state.showModal === 'set-cmd-type')\r\n && (\r\n null}>\r\n
\r\n null}\r\n disabled\r\n />\r\n
\r\n
\r\n { clearEditItemValues({}); state.modalCmdType.CMD_TYPE = item; render(); }}\r\n />\r\n
\r\n {state.modalCmdType.CMD_TYPE?.value === 'COOL' && (\r\n
\r\n { state.modalCmdType.TEMPER = item; render(); }}\r\n />\r\n
\r\n )}\r\n {state.modalCmdType.CMD_TYPE?.value === 'OTHER' && (\r\n
\r\n { state.modalCmdType.CMD_DESC = event.target.value; render(); }}\r\n />\r\n
\r\n )}\r\n
\r\n { state.modalCmdType.CMD_ACTION = item; render(); }}\r\n />\r\n
\r\n {/* {(state.modalCmdType.CMD_TYPE === 'AC_COOL')\r\n && (\r\n
\r\n { state.modalCmdType.TEMPER = event.target.value; render(); }}\r\n />\r\n
\r\n )} */}\r\n
\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n )\r\n }\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('DutIrManagement', 'component')(DutIrManagement);\r\n","import { Link } from 'react-router-dom';\r\nimport styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const DesktopTable = styled.div`\r\n display: none;\r\n @media (min-width: 768px) {\r\n display: block;\r\n }\r\n`;\r\n\r\nexport const MobileTable = styled.div`\r\n display: block;\r\n @media (min-width: 768px) {\r\n display: none;\r\n }\r\n`;\r\n\r\nexport const StyledSpan = styled.span`\r\n color: ${colors.Grey400};\r\n font-size: 1em;\r\n`;\r\n\r\nexport const StyledLink = styled(Link)`\r\n color: ${colors.Grey400};\r\n font-size: 1em;\r\n`;\r\n\r\nexport const SearchInput = styled.div`\r\n min-height: 48px;\r\n margin: 0;\r\n font-size: 12px;\r\n margin-left: 16px;\r\n color: #000;\r\n width: 100%;\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n box-sizing: border-box !important;\r\n display: inline-flex;\r\n align-items: center;\r\n`;\r\n\r\nexport const Label = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-top: 6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const BtnClean = styled.div`\r\n cursor: pointer;\r\n color: ${colors.BlueSecondary};\r\n margin-top: 7px;\r\n margin-left: 10px;\r\n text-decoration: underline;\r\n font-size: 11px;\r\n`;\r\n\r\nexport const BtnInput = styled.button`\r\ndisplay: flex;\r\nalign-items: center;\r\njustify-content: center;\r\nbackground-color: white;\r\nwidth: 32px;\r\nheight: 30px;\r\nmargin-right: 10px;\r\n\r\nborder: 1px solid rgba(0, 0, 0, 0.15);\r\ncursor: pointer;\r\nborder-radius: 5px;\r\nbox-shadow: 0 0.3em 0.3em rgba(0, 0, 0, 0.09);\r\ntransition: all 0.5s ease-in;\r\n&:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n cursor: pointer;\r\n }\r\n`;\r\n\r\nexport const ClickableSpan = styled.span`\r\ncursor: pointer;\r\n`;\r\n","import React, { useState, useEffect, useMemo } from 'react';\r\n\r\nimport queryString from 'query-string';\r\nimport { CSVLink } from 'react-csv';\r\nimport { Helmet } from 'react-helmet';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex, Box } from 'reflexbox';\r\n\r\nimport {\r\n DataTable, Button, EmptyWrapper, Loader, StatusBox, Checkbox, Select,\r\n} from '~/components';\r\nimport { FilterItem } from '../../AnalysisFilters';\r\nimport { ModalWindow } from '~/components/ModalWindow';\r\nimport checkDutsLimits from '~/helpers/checkDutsLimits';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { TermometerSubIcon, HumidityIcon } from '~/icons';\r\nimport { AnalysisLayout } from '~/pages/Analysis/AnalysisLayout';\r\nimport { saveSessionStorageItem, removeSessionStorageItem, getSessionStorageItem } from '~/helpers/cachedStorage';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport {\r\n DesktopTable,\r\n MobileTable,\r\n StyledSpan,\r\n StyledLink,\r\n} from './styles';\r\nimport { t } from 'i18next';\r\nimport '~/assets/css/ReactTags.css';\r\nimport { TableColumn, OrderableHeaderCell } from '~/components/DataTable';\r\nimport { UtilFilter } from '../../Utilities/UtilityFilter';\r\nimport { ajustParams, setValueState } from '~/helpers/genericHelper';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { AnalysisEmpty } from '../../AnalysisEmpty';\r\nimport { formatNumberWithFractionDigits } from '~/helpers/thousandFormatNumber';\r\n\r\nconst KeyCodes = {\r\n comma: 188,\r\n slash: 191,\r\n enter: [10, 13],\r\n};\r\n\r\nconst tempCodes = {\r\n 'Temperatura acima': 'high',\r\n 'Temperatura correta': 'good',\r\n 'Temperatura abaixo': 'low',\r\n 'Sem info': 'no data',\r\n};\r\n\r\nconst delimiters = [...KeyCodes.enter, KeyCodes.comma, KeyCodes.slash];\r\n\r\nexport const Environments = ({ history }): JSX.Element => {\r\n const csvLinkEl = React.useRef();\r\n const [profile] = useState(getUserProfile);\r\n\r\n const [state, render, setState] = useStateVar(() => {\r\n const {\r\n preFiltered,\r\n unitIds,\r\n stateIds,\r\n cityIds,\r\n } = queryString.parse(history.location.search, { arrayFormat: 'comma' });\r\n const formattedPreFilter = (typeof preFiltered === 'string')\r\n ? preFiltered\r\n ? [preFiltered]\r\n : [...preFiltered]\r\n : [];\r\n\r\n const state = {\r\n actionOpts: [] as { label: string, value: string }[],\r\n clientsList: [] as { CLIENT_ID: number, NAME: string }[],\r\n selectedClientFilter: setValueState('filterClient') as any[],\r\n manufacturers: [],\r\n selectedClient: null,\r\n wantSetClient: false,\r\n ownershipFilter: null,\r\n permissions: profile.permissions,\r\n isLoading: !profile.manageAllClients && !profile.manageSomeClient, // setIsLoading\r\n csvData: [], // setCsvData\r\n environments: [], // setEnvironments\r\n invisibleDuts: [] as {}[] | undefined,\r\n searchState: '' as string, // setSearchState\r\n searchValue: '' as string,\r\n tablePage: 1,\r\n tablePageSize: 50,\r\n totalItems: 0,\r\n\r\n statesList: [] as { value: string, name: string }[],\r\n selectedState: stateIds?.length ? stateIds : setValueState('filterStates') as any[],\r\n citiesList: [] as { value: string, name: string }[],\r\n selectedCity: cityIds?.length ? cityIds : setValueState('filterCity') as any[],\r\n unitsList: [] as { value: string, name: string }[],\r\n selectedUnit: unitIds?.length ? unitIds : setValueState('filterUnit') as any[],\r\n selectedTemperature: formattedPreFilter.map((value) => tempCodes[value]),\r\n selectedConnection: [],\r\n selectedDevId: '',\r\n filters: [] as FilterItem[],\r\n orderBy: null as null | [string, 'ASC' | 'DESC'],\r\n needFilter: profile.manageAllClients || profile.manageSomeClient,\r\n };\r\n\r\n if (profile.permissions.isAdminSistema) {\r\n state.actionOpts = [{ label: t('excluir'), value: 'delete' }, { label: t('atribuirCliente'), value: 'set-client' }];\r\n } else if (profile.manageAllClients) {\r\n state.actionOpts = [{ label: t('excluir'), value: 'delete' }, { label: t('atribuirCliente'), value: 'set-client' }];\r\n }\r\n\r\n return state;\r\n });\r\n\r\n function loadSessionFilters() {\r\n const filters = getSessionStorageItem('environmentsAnalysisFilters') as null | {\r\n searchState: '',\r\n selectedState: [],\r\n selectedCity: [],\r\n selectedUnit: [],\r\n selectedClientFilter?: [],\r\n selectedTemperature: [],\r\n selectedConnection: [],\r\n };\r\n if (filters) {\r\n state.searchState = filters.searchState || '';\r\n state.selectedState = filters.selectedState || [];\r\n state.selectedCity = filters.selectedCity || [];\r\n state.selectedUnit = filters.selectedUnit || [];\r\n state.selectedClientFilter = filters.selectedClientFilter || [];\r\n state.selectedTemperature = filters.selectedTemperature || [];\r\n state.selectedConnection = filters.selectedConnection || [];\r\n }\r\n render();\r\n removeSessionStorageItem('environmentsAnalysisFilters');\r\n }\r\n\r\n function saveSessionFilters() {\r\n const filters = {\r\n searchState: state.searchState,\r\n selectedState: state.selectedState,\r\n selectedCity: state.selectedCity,\r\n selectedUnit: state.selectedUnit,\r\n selectedTemperature: state.selectedTemperature,\r\n selectedConnection: state.selectedConnection,\r\n } as any;\r\n if (profile.manageAllClients) {\r\n filters.selectedClientFilter = state.selectedClientFilter;\r\n }\r\n saveSessionStorageItem('environmentsAnalysisFilters', filters);\r\n }\r\n\r\n async function clearFilters() {\r\n state.searchState = '';\r\n state.selectedCity = [];\r\n state.selectedClientFilter = [];\r\n state.selectedState = [];\r\n state.selectedConnection = [];\r\n state.selectedTemperature = [];\r\n state.selectedUnit = [];\r\n\r\n state.isLoading = true;\r\n render();\r\n await handleGetDUTS();\r\n }\r\n\r\n async function applyActionToSelected(action, list) {\r\n try {\r\n const selectedDevs = list.filter((dev) => dev.checked);\r\n\r\n if (!selectedDevs.length) return;\r\n\r\n if (action === 'delete') {\r\n if (!window.confirm(`Deseja excluir ${selectedDevs.length} DUT(s)?`)) {\r\n return;\r\n }\r\n for (const dev of selectedDevs) {\r\n await apiCall('/dut/delete-dut-info', { dutId: dev.DEV_ID });\r\n }\r\n window.location.reload();\r\n return;\r\n }\r\n if (action === 'set-client') {\r\n state.wantSetClient = true; render();\r\n return;\r\n }\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n async function confirmSetClient() {\r\n try {\r\n // @ts-ignore\r\n const selectedDevs = state.environments.filter((dev) => dev.checked);\r\n if (!selectedDevs.length) {\r\n toast.error(t('erroNenhumSelecionado'));\r\n return;\r\n }\r\n\r\n // @ts-ignore\r\n const clientId = state.selectedClient && state.selectedClient.CLIENT_ID;\r\n\r\n if (!clientId) {\r\n toast.error(t('erroNaoSelecionadoOuInvalido'));\r\n return;\r\n }\r\n\r\n for (const dev of selectedDevs) {\r\n // @ts-ignore\r\n await apiCall('/dut/set-dut-info', { DEV_ID: dev.DEV_ID, CLIENT_ID: clientId });\r\n }\r\n\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n function orderColumn(column: TableColumn) {\r\n return (\r\n \r\n );\r\n }\r\n\r\n const [columns, columnsMobile] = useMemo(() => {\r\n const columnsDesktop = [] as TableColumn[];\r\n const columnsMobile = [] as TableColumn[];\r\n\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('estado'),\r\n // @ts-ignore\r\n accessor: 'col_STATE_ID',\r\n // @ts-ignore\r\n Cell: (props) => {props.state},\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('cidade'),\r\n // @ts-ignore\r\n accessor: 'col_CITY_NAME',\r\n // @ts-ignore\r\n Cell: (props) => {props.city},\r\n HeaderCell: orderColumn,\r\n });\r\n if (profile.viewMultipleClients) {\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('cliente'),\r\n // @ts-ignore\r\n accessor: 'col_CLIENT_NAME',\r\n // @ts-ignore\r\n Cell: (props) => (props.CLIENT_NAME ? {props.CLIENT_NAME} : '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n }\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('unidade'),\r\n // @ts-ignore\r\n accessor: 'col_UNIT_NAME',\r\n // @ts-ignore\r\n Cell: (props) => <>{props.unit && props.unit.id && props.unit.name ? {props.unit.name} : '-'},\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('ambiente'),\r\n // @ts-ignore\r\n accessor: 'col_ROOM_NAME',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.measuring_point.length > 1\r\n ? (\r\n \r\n {(props.environment && props.environment.length > 100 ? (props.environment).slice(0, 100).concat('...') : props.environment || '-')}\r\n \r\n )\r\n : (\r\n {(props.environment && props.environment.length > 100 ? (props.environment).slice(0, 100).concat('...') : props.environment || '-')}\r\n )}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('dispositivo'),\r\n // @ts-ignore\r\n accessor: 'col_DEV_ID',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.unit.id && props.measuring_point\r\n ? (\r\n \r\n {props.measuring_point}\r\n \r\n )\r\n : ((!props.unit.id && props.measuring_point)\r\n ? (\r\n \r\n {props.measuring_point}\r\n \r\n )\r\n : (\r\n '-'\r\n ))}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('temperatura'),\r\n // @ts-ignore\r\n accessor: 'col_Temperature',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n \r\n {props.temperature}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('umidade'),\r\n // @ts-ignore\r\n accessor: 'col_Humidity',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.VARS?.includes('H') ? (\r\n <>\r\n \r\n {props.Humidity ? ` ${props.Humidity}%` : ' -'}\r\n \r\n ) : (\r\n -\r\n )}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: 'CO2',\r\n // @ts-ignore\r\n accessor: 'col_eCO2',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.eCO2}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('conexao'),\r\n // @ts-ignore\r\n accessor: 'col_status',\r\n // @ts-ignore\r\n Cell: (props) => {props.status},\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n if (profile.manageAllClients) {\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: t('ultimaVezVisto'),\r\n // @ts-ignore\r\n accessor: 'col_lastCommTs',\r\n // @ts-ignore\r\n Cell: (props) => (props.lastCommTs || '-'),\r\n HeaderCell: orderColumn,\r\n });\r\n }\r\n\r\n if (profile.manageAllClients) {\r\n columnsDesktop.push({\r\n // @ts-ignore\r\n Header: '',\r\n // @ts-ignore\r\n accessor: 'col_selection',\r\n // @ts-ignore\r\n Cell: (props) => { props.checked = !props.checked; render(); }} />,\r\n });\r\n }\r\n\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: t('dispositivo'),\r\n // @ts-ignore\r\n accessor: 'measuring_point',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n {props.unit.id && props.measuring_point\r\n ? (\r\n \r\n {props.measuring_point}\r\n \r\n )\r\n : ((!props.unit.id && props.measuring_point)\r\n ? (\r\n \r\n {props.measuring_point}\r\n \r\n )\r\n : (\r\n '-'\r\n ))}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: 'Temp',\r\n // @ts-ignore\r\n accessor: 'col_Temperature',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n \r\n {props.temperature}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: 'Umid',\r\n // @ts-ignore\r\n accessor: 'col_Humidity',\r\n // @ts-ignore\r\n Cell: (props) => (\r\n <>\r\n \r\n {props.humidity}\r\n \r\n ),\r\n HeaderCell: orderColumn,\r\n });\r\n columnsMobile.push({\r\n // @ts-ignore\r\n Header: t('conexao'),\r\n // @ts-ignore\r\n accessor: 'col_status',\r\n // @ts-ignore\r\n Cell: (props) => {props.status},\r\n HeaderCell: orderColumn,\r\n });\r\n\r\n return [columnsDesktop, columnsMobile];\r\n }, []);\r\n\r\n function verifyExist(item) {\r\n if (item) return item;\r\n return '-';\r\n }\r\n\r\n function formatDut(list) {\r\n for (const dut of list) {\r\n // @ts-ignore\r\n if (dut.lastCommTs) { dut.lastCommTs = dut.lastCommTs.replace('T', ' '); }\r\n Object.assign(dut, {\r\n Humidity: dut.Humidity ? dut.Humidity.toString() : '-',\r\n state: verifyExist(dut.STATE_ID),\r\n city: verifyExist(dut.CITY_NAME),\r\n unit: { id: dut.UNIT_ID, name: dut.UNIT_NAME } || '-',\r\n environment: dut.ROOM_NAME,\r\n measuring_point: verifyExist(dut.DEV_ID),\r\n temperature: (dut.Temperature != null) ? `${formatNumberWithFractionDigits(dut.Temperature)}°C` : ' -',\r\n humidity: dut.Humidity ? `${formatNumberWithFractionDigits(dut.Humidity)}%` : ' -',\r\n eCO2: dut.eCO2 ? `${formatNumberWithFractionDigits(dut.eCO2, { minimum: 0, maximum: 0 })} ppm` : '-',\r\n status: verifyExist(dut.status),\r\n });\r\n }\r\n }\r\n\r\n const CSVHeader = [\r\n { label: t('cliente'), key: 'CLIENT_NAME' },\r\n { label: t('estado'), key: 'state' },\r\n { label: t('cidade'), key: 'city' },\r\n { label: t('unidade'), key: 'unit' },\r\n { label: t('ambiente'), key: 'environment' },\r\n { label: t('dispositivo'), key: 'measuring' },\r\n { label: t('temperatura'), key: 'temperature' },\r\n { label: t('umidade'), key: 'humidity' },\r\n { label: t('conexao'), key: 'status' },\r\n { label: t('ultimoVisto'), key: 'lastCommTs' },\r\n ];\r\n\r\n function onColumnClick(column: { accessor: string }) {\r\n if (state.orderBy && (state.orderBy[1] === 'ASC') && (state.orderBy[0] === column.accessor)) {\r\n state.orderBy = [column.accessor, 'DESC'];\r\n } else {\r\n state.orderBy = [column.accessor, 'ASC'];\r\n }\r\n render();\r\n handleGetDUTS();\r\n }\r\n\r\n function getParamsToCallEnvironmentsListPage() {\r\n const params = {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients || !!profile.permissions.isInstaller,\r\n SKIP: (state.tablePage - 1) * state.tablePageSize,\r\n LIMIT: state.tablePageSize,\r\n // @ts-ignore\r\n searchTerms: state.selectedDevId ? [state.selectedDevId] : [],\r\n // @ts-ignore\r\n ownershipFilter: (state.ownershipFilter?.value) || undefined,\r\n stateIds: (state.selectedState.length > 0) ? ajustParams(state.selectedState) : undefined,\r\n cityIds: (state.selectedCity.length > 0) ? ajustParams(state.selectedCity) : undefined,\r\n unitIds: (state.selectedUnit.length > 0) ? ajustParams(state.selectedUnit) : undefined,\r\n clientIds: (state.selectedClientFilter.length > 0) ? ajustParams(state.selectedClientFilter) : undefined,\r\n temprtAlerts: (state.selectedTemperature.length > 0) ? state.selectedTemperature : undefined,\r\n status: (state.selectedConnection.length > 0) ? state.selectedConnection : undefined,\r\n searchEnvironment: state.searchState || undefined,\r\n orderByProp: state.orderBy && state.orderBy[0]?.substring('col_'.length) || undefined,\r\n orderByDesc: (state.orderBy && state.orderBy[1] === 'DESC') || undefined,\r\n };\r\n\r\n return params;\r\n }\r\n const handleGetDUTS = async () => {\r\n try {\r\n setState({ isLoading: true });\r\n if (state.needFilter !== null) setState({ needFilter: false });\r\n loadSessionFilters();\r\n const [\r\n { list, totalItems },\r\n ] = await Promise.all([\r\n apiCall('/get-environments-list-page', getParamsToCallEnvironmentsListPage()),\r\n ]);\r\n await checkDutsLimits(list);\r\n formatDut(list);\r\n setState({ invisibleDuts: list.filter((item) => item.ISVISIBLE !== 1) });\r\n const invisibleDutsCount = state.invisibleDuts ? state.invisibleDuts.length : 0;\r\n state.totalItems = totalItems - invisibleDutsCount;\r\n // @ts-ignore\r\n setState({ environments: list.filter((item) => item.ISVISIBLE === 1) });\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroDados'));\r\n } finally {\r\n if (state.needFilter === null) setState({ needFilter: true });\r\n setState({ isLoading: false });\r\n }\r\n };\r\n\r\n const getCsvData = async () => {\r\n state.isLoading = true; render();\r\n\r\n apiCall('/dut/get-duts-list', {\r\n INCLUDE_INSTALLATION_UNIT: !!profile.manageAllClients || !!profile.permissions.isInstaller,\r\n }).then(({ list }) => {\r\n const formatterCSV = list.map((dut) => ({\r\n CLIENT_NAME: dut.CLIENT_NAME || '-',\r\n state: dut.STATE_ID || '-',\r\n city: dut.CITY_NAME || '-',\r\n unit: dut.UNIT_NAME || '-',\r\n environment: dut.ROOM_NAME || '-',\r\n measuring: dut.DEV_ID || '-',\r\n temperature: (dut.Temperature != null) ? `${formatNumberWithFractionDigits(dut.Temperature)}` : '-',\r\n humidity: dut.Humidity || '-',\r\n status: dut.status || '-',\r\n // @ts-ignore\r\n lastCommTs: (dut.lastCommTs && dut.lastCommTs.replace('T', ' ')) || '-',\r\n }));\r\n\r\n // @ts-ignore\r\n state.csvData = formatterCSV;\r\n state.isLoading = false; render();\r\n\r\n setTimeout(() => {\r\n (csvLinkEl as any).current.link.click();\r\n }, 1000);\r\n });\r\n };\r\n\r\n const onPageChange = (page) => {\r\n state.tablePage = page;\r\n render();\r\n handleGetDUTS();\r\n };\r\n\r\n const awaitData = async () => {\r\n try {\r\n const { list: clientlist } = await apiCall('/clients/get-clients-list', {});\r\n state.clientsList = clientlist;\r\n handleGetDUTS();\r\n } catch (error) {\r\n console.log(error); toast.error(t('houveErro'));\r\n }\r\n };\r\n\r\n useEffect(() => {\r\n state.tablePage = 1;\r\n render();\r\n if (!profile.manageAllClients && !profile.manageSomeClient) {\r\n awaitData();\r\n }\r\n }, [state.ownershipFilter]);\r\n\r\n return (\r\n <>\r\n \r\n {t('dielEnergiaAmbientes')}\r\n \r\n \r\n { state.tablePage = 1; handleGetDUTS(); }}\r\n setState={setState}\r\n clearFilter={clearFilters}\r\n exportFunc={getCsvData}\r\n csvHeader={CSVHeader}\r\n listFilters={['tipo', 'estado', 'cidade', 'unidade', 'cliente', 'conexao', 'temperatura', 'id', 'search']}\r\n searchLabel={t('ambientes')}\r\n />\r\n \r\n
\r\n \r\n
\r\n
\r\n {state.needFilter && (\r\n <>\r\n \r\n \r\n )}\r\n {state.isLoading\r\n ? (\r\n \r\n \r\n \r\n )\r\n : !state.needFilter && (\r\n <>\r\n \r\n {state.environments\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n \r\n {t('erroDados')}\r\n \r\n \r\n )}\r\n \r\n \r\n {state.environments\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n \r\n {t('erroDados')}\r\n \r\n \r\n )}\r\n \r\n \r\n )}\r\n {(state.wantSetClient)\r\n && (\r\n // @ts-ignore\r\n \r\n

{t('selecioneOCliente')}

\r\n { state.selectedClient = item; render(); }}\r\n />\r\n
\r\n \r\n {/* @ts-ignore */}\r\n \r\n
\r\n
\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('Environments', 'component')(Environments);\r\n","import { parseProgrammingString } from '~/helpers/scheduleData';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport default async function checkDutsLimits(duts: S) {\r\n const { rtypes } = await apiCall('/clients/get-roomtypes-list', {});\r\n return duts.map((dut) => {\r\n const rtype = rtypes.find((x) => x.RTYPE_ID === dut.RTYPE_ID);\r\n const workPeriods = rtype && { ...rtype.workPeriods, ...rtype.workPeriodExceptions };\r\n\r\n let USEPERIOD_INDEX_INI: number|undefined;\r\n let USEPERIOD_INDEX_END: number|undefined;\r\n let specialColor: string|undefined;\r\n\r\n if (rtype && workPeriods && dut.Temperature != null) {\r\n const nowShifted = new Date(Date.now() - 3 * 60 * 60 * 1000);\r\n const todayWeek = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'][nowShifted.getUTCDay()];\r\n const todayDate = nowShifted.toISOString().substr(0, 10);\r\n const todaySchedule = workPeriods[todayDate] || workPeriods[todayWeek];\r\n if (todaySchedule) {\r\n const pData = parseProgrammingString(todaySchedule);\r\n if ((!pData.isDefault) && pData.type === 'enabled') {\r\n const indexIni = Number(pData.startHM.substr(0, 2)) * 60 + Number(pData.startHM.substr(3, 2)) * 1;\r\n const indexEnd = Number(pData.endHM.substr(0, 2)) * 60 + Number(pData.endHM.substr(3, 2)) * 1;\r\n USEPERIOD_INDEX_INI = indexIni;\r\n USEPERIOD_INDEX_END = indexEnd;\r\n const nowIndex = nowShifted.getUTCHours() * 60 + nowShifted.getUTCMinutes() * 1;\r\n if (nowIndex >= indexIni && nowIndex <= indexEnd) {\r\n if (rtype.TUSEMIN != null && dut.Temperature < rtype.TUSEMIN) {\r\n specialColor = colors.LightBlue;\r\n }\r\n if (rtype.TUSEMAX != null && dut.Temperature > rtype.TUSEMAX) {\r\n specialColor = colors.Red;\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n return Object.assign(dut, {\r\n rtype,\r\n TUSEMIN: rtype && rtype.TUSEMIN,\r\n TUSEMAX: rtype && rtype.TUSEMAX,\r\n RTYPE_NAME: rtype && rtype.RTYPE_NAME,\r\n workPeriods,\r\n USEPERIOD_INDEX_INI,\r\n USEPERIOD_INDEX_END,\r\n specialColor,\r\n });\r\n });\r\n}\r\n","import { useEffect } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { apiCall, ApiResps } from '~/providers';\r\n\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nconst profile = getUserProfile();\r\n\r\nexport const useFilter = () => {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n isLoading: true,\r\n dacs_all: [] as ApiResps['/dac/get-dacs-list']['list'],\r\n duts_all: [] as ApiResps['/dut/get-duts-list']['list'],\r\n dams_all: [] as ApiResps['/dam/get-dams-list']['list'],\r\n dacs_filt: [] as ApiResps['/dac/get-dacs-list']['list'],\r\n duts_filt: [] as ApiResps['/dut/get-duts-list']['list'],\r\n dams_filt: [] as ApiResps['/dam/get-dams-list']['list'],\r\n countriesPositions: [] as ApiResps['/dac/get-countries-list']['list'],\r\n statesPositions: [] as ApiResps['/dac/get-states-list']['list'],\r\n citiesPositions: [] as ApiResps['/dac/get-cities-list']['list'],\r\n optionsCountry: [] as string[],\r\n optionsState: [] as string[],\r\n optionsCity: [] as string[],\r\n optionsUnits: [] as string[],\r\n filters: {\r\n country: null as null|string,\r\n state: null as null|string,\r\n city: null as null|string,\r\n unit: null as null|string,\r\n },\r\n });\r\n\r\n async function handleGetDacs() {\r\n const permissionsIncludeInstallationUnit = !!profile.manageAllClients || !!profile.permissions.isInstaller;\r\n try {\r\n const [\r\n responseDacs,\r\n responseDuts,\r\n responseCountries,\r\n responseStates,\r\n responseCities,\r\n ] = await Promise.all([\r\n apiCall('/dac/get-dacs-list', {\r\n includeHealthDesc: true,\r\n includeCapacityKW: true,\r\n INCLUDE_INSTALLATION_UNIT: permissionsIncludeInstallationUnit,\r\n }),\r\n apiCall('/dut/get-duts-list', {\r\n INCLUDE_INSTALLATION_UNIT: permissionsIncludeInstallationUnit,\r\n }),\r\n apiCall('/dac/get-countries-list', {}),\r\n apiCall('/dac/get-states-list', {}),\r\n apiCall('/dac/get-cities-list', {}),\r\n ]);\r\n\r\n state.dacs_all = (responseDacs && responseDacs.list.filter((item) => item.STATE_NAME && item.CITY_NAME && item.UNIT_NAME)) || [];\r\n state.duts_all = (responseDuts && responseDuts.list.filter((item) => item.STATE_NAME && item.CITY_NAME && item.UNIT_NAME)) || [];\r\n state.countriesPositions = (responseCountries?.list) || [];\r\n state.statesPositions = (responseStates?.list) || [];\r\n state.citiesPositions = (responseCities?.list) || [];\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erroCarregarDadosMaquinasAmbientesMonitorados'));\r\n }\r\n handleSelect();\r\n setState({ isLoading: false });\r\n }\r\n\r\n function handleSelect(filter?: { type, value }) {\r\n if (filter?.type === 'country') {\r\n state.filters.state = '';\r\n state.filters.city = '';\r\n state.filters.unit = '';\r\n state.filters.country = filter.value || '';\r\n }\r\n\r\n else if (filter?.type === 'state') {\r\n state.filters.city = '';\r\n state.filters.unit = '';\r\n state.filters.state = filter?.value || '';\r\n }\r\n\r\n else if (filter?.type === 'city') {\r\n state.filters.unit = '';\r\n state.filters.city = filter?.value || '';\r\n }\r\n\r\n else if (filter?.type === 'unit') {\r\n state.filters.unit = filter?.value || '';\r\n }\r\n\r\n state.dacs_filt = handleFilterChanged(state.dacs_all.filter((item) => item.DAC_ID));\r\n state.duts_filt = handleFilterChanged(state.duts_all.filter((item) => item.DEV_ID));\r\n state.dams_filt = state.dams_all;\r\n\r\n const options = [...state.dacs_filt, ...state.duts_filt];\r\n state.optionsCountry = Array.from(new Set(handleFilterCountry(options)));\r\n if (!filter?.type || filter?.type === 'country') state.optionsState = Array.from(new Set(handleFilterState(options)));\r\n if (!filter?.type || filter?.type === 'country' || filter?.type === 'state') state.optionsCity = Array.from(new Set(handleFilterCity(options)));\r\n if (!filter?.type || filter?.type === 'country' || filter?.type === 'state' || filter?.type === 'city') state.optionsUnits = Array.from(new Set(handleFilterUnit(options)));\r\n\r\n render();\r\n }\r\n\r\n function handleFilterChanged(array: T[]) {\r\n return array.filter((item) => {\r\n if (state.filters.country && state.filters.country !== item.COUNTRY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.state && state.filters.state !== item.STATE_NAME) {\r\n return false;\r\n }\r\n if (state.filters.city && state.filters.city !== item.CITY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.unit && state.filters.unit !== item.UNIT_NAME) {\r\n return false;\r\n }\r\n return true;\r\n });\r\n }\r\n\r\n function handleFilterCountry(array: { UNIT_NAME: string, CITY_NAME: string, STATE_NAME: string, COUNTRY_NAME: string }[]): string[] {\r\n return array.filter((item) => {\r\n if (state.filters.state && state.filters.state !== item.STATE_NAME) {\r\n return false;\r\n }\r\n if (state.filters.city && state.filters.city !== item.CITY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.unit && state.filters.unit !== item.UNIT_NAME) {\r\n return false;\r\n }\r\n\r\n return true;\r\n })\r\n .map((item) => item.COUNTRY_NAME).sort();\r\n }\r\n\r\n function handleFilterState(array: { UNIT_NAME: string, CITY_NAME: string, STATE_NAME: string, COUNTRY_NAME: string }[]): string[] {\r\n return array.filter((item) => {\r\n if (state.filters.country && state.filters.country !== item.COUNTRY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.city && state.filters.city !== item.CITY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.unit && state.filters.unit !== item.UNIT_NAME) {\r\n return false;\r\n }\r\n\r\n return true;\r\n })\r\n .map((item) => item.STATE_NAME).sort();\r\n }\r\n\r\n function handleFilterCity(array: { UNIT_NAME: string, CITY_NAME: string, STATE_NAME: string, COUNTRY_NAME: string }[]): string[] {\r\n return array.filter((item) => {\r\n if (state.filters.country && state.filters.country !== item.COUNTRY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.state && state.filters.state !== item.STATE_NAME) {\r\n return false;\r\n }\r\n if (state.filters.unit && state.filters.unit !== item.UNIT_NAME) {\r\n return false;\r\n }\r\n\r\n return true;\r\n })\r\n .map((item) => item.CITY_NAME).sort();\r\n }\r\n\r\n function handleFilterUnit(array: { UNIT_NAME: string, CITY_NAME: string, STATE_NAME: string, COUNTRY_NAME: string }[]): string[] {\r\n return array.filter((item) => {\r\n if (state.filters.country && state.filters.country !== item.COUNTRY_NAME) {\r\n return false;\r\n }\r\n if (state.filters.state && state.filters.state !== item.STATE_NAME) {\r\n return false;\r\n }\r\n if (state.filters.city && state.filters.city !== item.CITY_NAME) {\r\n return false;\r\n }\r\n\r\n return true;\r\n })\r\n .map((item) => item.UNIT_NAME).sort();\r\n }\r\n\r\n useEffect(() => {\r\n handleGetDacs();\r\n }, []);\r\n\r\n return { ...state, handleSelect };\r\n};\r\n","export default __webpack_public_path__ + \"static/media/marker.f8b8ad39.svg\";","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const StyledSpan = styled.span`\r\ndisplay: flex;\r\nflex-direction: column;\r\ntext-align: center;\r\nmargin-top: 5px;\r\n`;\r\n\r\nexport const MapCard = styled.div`\r\nborder-radius: 16px;\r\noverflow: hidden;\r\n`;\r\n\r\nexport const PopupContainer = styled.div`\r\ndisplay: flex;\r\nflex-direction: column;\r\n`;\r\n\r\nexport const Title = styled.span`\r\nfont-weight: bold;\r\n`;\r\n\r\nexport const DesktopWrapper = styled.div`\r\ndisplay: none;\r\n@media (min-width: 768px) {\r\n display: block;\r\n}\r\n`;\r\n\r\nexport const MobileWrapper = styled.div`\r\ndisplay: block;\r\n@media (min-width: 768px) {\r\n display: none;\r\n}\r\n`;\r\n\r\nexport const ModalMobile = styled.div<{ isModalOpen }>(\r\n ({ isModalOpen }) => `\r\ndisplay:${isModalOpen ? 'block' : 'none'};\r\nposition: fixed;\r\ntop: 0;\r\nleft: 0;\r\nbackground-color: ${colors.White};\r\nwidth: 100%;\r\nheight: 100vh;\r\nz-index: 1;\r\noverflow: hidden;\r\ntransition: all .5s ease-in-out;\r\n`,\r\n);\r\n\r\nexport const ModalTitle = styled.span`\r\nfont-weight: bold;\r\nfont-size: 1.25em;\r\nline-height: 27px;\r\ncolor: ${colors.Grey400};\r\n`;\r\n\r\nexport const ModalTitleContainer = styled.div`\r\ndisplay: flex;\r\njustify-content: space-between;\r\nalign-items: center;\r\nheight: 100%;\r\nwidth: 100%;\r\npadding: 16px;\r\nsvg {\r\n cursor: pointer;\r\n}\r\n`;\r\n\r\nexport const ModalSection = styled.div`\r\nwidth: 100%;\r\nheight: 80px;\r\nbackground: ${colors.Grey030};\r\nborder-bottom: 2px solid ${colors.Grey100};\r\nbox-shadow: 0px 2px 3px rgba(0, 0, 0, 0.3);\r\n`;\r\n\r\nexport const ControlFilter = styled.div`\r\n border: 1px solid #E9E9E9;\r\n border-radius: 5px;\r\n background-color: #ffffff;\r\n padding: 6px 10px;\r\n user-select: none;\r\n display: flex;\r\n flex-direction: row;\r\n align-items: center;\r\n justify-content: space-between;\r\n flex-wrap: nowrap;\r\n z-index: 1;\r\n &:hover {\r\n cursor: pointer;\r\n background-color: ${colors.BlueSecondary};\r\n color: white;\r\n svg path {\r\n fill: white !important;\r\n }\r\n }\r\n`;\r\n\r\nexport const Label = styled.label`\r\n position: relative;\r\n display: inline-block;\r\n width: 100%;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: #202370;\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n\r\nexport const ContainerSearch = styled.div`\r\n width: 100%;\r\n padding-top: 3;\r\n padding-bottom: 3;\r\n min-width: 80px;\r\n border: 1px solid #E9E9E9;\r\n max-width: 200px;\r\n border-radius: 3px;\r\n background-color: #ffff;\r\n margin-left: 10px;\r\n margin-bottom: 10px;\r\n width: 220px;\r\n padding: 3px;\r\n\r\n @media (max-width: 770px) {\r\n min-width: 100%;\r\n justify-content: space-between;\r\n margin: 0;\r\n margin-bottom: 10px;\r\n }\r\n`;\r\n","import { useState } from 'react';\r\n\r\nimport LeafletIcon from 'leaflet';\r\nimport 'leaflet/dist/leaflet.css';\r\nimport { Helmet } from 'react-helmet';\r\nimport {\r\n Map, TileLayer, Marker, Popup,\r\n} from 'react-leaflet';\r\nimport { Link } from 'react-router-dom';\r\nimport { Flex, Box } from 'reflexbox';\r\nimport 'react-leaflet-markercluster/dist/styles.min.css';\r\n\r\nimport { useFilter } from 'hooks';\r\nimport MarkerIcon from '~/assets/img/marker.svg';\r\nimport {\r\n Button, EmptyWrapper, Loader,\r\n} from '~/components';\r\nimport {\r\n CloseIcon,\r\n FilterIcon,\r\n ArrowDownIconV2,\r\n ArrowUpIconV2,\r\n} from '~/icons';\r\nimport { AnalysisLayout } from '~/pages/Analysis/AnalysisLayout';\r\nimport { useTranslation } from 'react-i18next';\r\nimport {\r\n StyledSpan,\r\n MapCard,\r\n PopupContainer,\r\n Title,\r\n DesktopWrapper,\r\n MobileWrapper,\r\n ModalMobile,\r\n ModalTitle,\r\n ModalTitleContainer,\r\n ModalSection,\r\n ControlFilter,\r\n Label,\r\n ContainerSearch,\r\n} from './styles';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { colors } from '~/styles/colors';\r\nimport SelectSearch from 'react-select-search';\r\nimport { CleanBtn, FiltersContainer } from '../Utilities/UtilityFilter/styles';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { AnalysisEmpty } from '../AnalysisEmpty';\r\n\r\nexport const Geolocation = (): JSX.Element => {\r\n const [center, setCenter] = useState([-15.533773, -55.62529]);\r\n const [zoom, setZoom] = useState(4);\r\n const { t } = useTranslation();\r\n const [isModalOpen, setIsModalOpen] = useState(false);\r\n const profile = getUserProfile();\r\n const [state, render] = useStateVar(() => {\r\n const state = {\r\n showFilter: true as boolean,\r\n isDisabledButton: true as boolean,\r\n selectedUnit: '',\r\n selectedCountry: '',\r\n selectedState: '',\r\n selectedCity: '',\r\n needFilter: profile.manageAllClients || profile.manageSomeClient,\r\n };\r\n return state;\r\n });\r\n const {\r\n filters,\r\n citiesPositions,\r\n statesPositions,\r\n countriesPositions,\r\n isLoading,\r\n handleSelect,\r\n optionsCountry,\r\n optionsState,\r\n optionsCity,\r\n optionsUnits,\r\n duts_filt: duts,\r\n dacs_filt: machines,\r\n } = useFilter();\r\n\r\n const dutsAndMachines = [...duts, ...machines];\r\n\r\n delete LeafletIcon.Icon.Default.prototype._getIconUrl;\r\n\r\n const fac = (4 / 20) * 0.7 + 0.3;\r\n LeafletIcon.Icon.Default.mergeOptions({\r\n iconUrl: MarkerIcon,\r\n iconRetinaUrl: MarkerIcon,\r\n iconSize: [55 * fac, 60 * fac],\r\n iconAnchor: [(55 * fac) / 2, 60 * fac],\r\n shadowSize: [0, 0],\r\n });\r\n\r\n const trocouZoom = (e) => {\r\n // console.log('c', e)\r\n const map = e.target;\r\n const layers = map._layers;\r\n const fac = (map._zoom / 20) * 0.7 + 0.3;\r\n const i2 = new LeafletIcon.Icon.Default({\r\n iconSize: [55 * fac, 60 * fac],\r\n iconAnchor: [(55 * fac) / 2, 60 * fac],\r\n });\r\n for (const layerId in layers) {\r\n const layer = layers[layerId];\r\n // console.log(layer.setIcon, layer._setIcon, layer)\r\n if (!layer._icon) continue;\r\n const icon = layer._icon;\r\n if (!icon.className) continue;\r\n if (!icon.className.includes('leaflet-marker-icon')) continue;\r\n // icon.style.width = '30px'\r\n // icon.style.height = '30px'\r\n layer.setIcon(i2);\r\n }\r\n };\r\n\r\n const setToInitialStateMap = () => {\r\n setCenter([-14.235004, -51.92528]);\r\n return setZoom(4);\r\n };\r\n\r\n const handleMapGeolocation = () => {\r\n state.needFilter = false;\r\n state.showFilter = false;\r\n render();\r\n };\r\n\r\n const handleSelectGeolocation = ({ type, value }) => {\r\n state.isDisabledButton = false;\r\n handleSelect({ type, value });\r\n switch (type) {\r\n case 'country': return handleSelectCountry(value);\r\n case 'state': return handleSelectState(value);\r\n case 'city': return handleSelectCity(value);\r\n case 'unit': return handleSelectUnit(value);\r\n }\r\n };\r\n\r\n const handleSelectCountry = (value) => {\r\n const selectedCountry = value && countriesPositions.find((item) => item.name === value);\r\n if (selectedCountry) {\r\n setZoom(4);\r\n return setCenter([Number(selectedCountry.lat), Number(selectedCountry.lon)]);\r\n }\r\n return setToInitialStateMap();\r\n };\r\n\r\n const handleSelectState = (value) => {\r\n const selectedState = value && statesPositions.find((item) => item.fullName === value);\r\n if (selectedState) {\r\n setZoom(6);\r\n return setCenter([Number(selectedState.lat), Number(selectedState.lon)]);\r\n }\r\n\r\n const selectedCountry = filters.country && countriesPositions.find((item) => item.name === filters.country);\r\n if (selectedCountry) {\r\n setZoom(4);\r\n return setCenter([Number(selectedCountry.lat), Number(selectedCountry.lon)]);\r\n }\r\n\r\n return setToInitialStateMap();\r\n };\r\n\r\n const handleSelectCity = (value) => {\r\n const selectedCity = value && citiesPositions.find((item) => item.name === value);\r\n if (selectedCity) {\r\n setZoom(11);\r\n return setCenter([Number(selectedCity.lat), Number(selectedCity.lon)]);\r\n }\r\n\r\n const selectedState = filters.state && statesPositions.find((item) => item.fullName === filters.state);\r\n if (selectedState) {\r\n setZoom(6);\r\n return setCenter([Number(selectedState.lat), Number(selectedState.lon)]);\r\n }\r\n\r\n const selectedCountry = filters.country && countriesPositions.find((item) => item.name === filters.country);\r\n if (selectedCountry) {\r\n setZoom(4);\r\n return setCenter([Number(selectedCountry.lat), Number(selectedCountry.lon)]);\r\n }\r\n\r\n return setToInitialStateMap();\r\n };\r\n\r\n const handleSelectUnit = (value) => {\r\n const selectedUnit = value && dutsAndMachines.find((item) => item.UNIT_NAME === value);\r\n if (selectedUnit) {\r\n setCenter([Number(selectedUnit.LAT), Number(selectedUnit.LON)]);\r\n return setZoom(16);\r\n }\r\n\r\n const selectedCity = filters.city && citiesPositions.find((item) => item.name === filters.city);\r\n if (selectedCity) {\r\n setCenter([Number(selectedCity.lat), Number(selectedCity.lon)]);\r\n return setZoom(11);\r\n }\r\n\r\n const selectedState = filters.state && statesPositions.find((item) => item.fullName === filters.state);\r\n if (selectedState) {\r\n setCenter([Number(selectedState.lat), Number(selectedState.lon)]);\r\n return setZoom(6);\r\n }\r\n\r\n const selectedCountry = filters.country && countriesPositions.find((item) => item.name === filters.country);\r\n if (selectedCountry) {\r\n setZoom(4);\r\n return setCenter([Number(selectedCountry.lat), Number(selectedCountry.lon)]);\r\n }\r\n\r\n return setToInitialStateMap();\r\n };\r\n\r\n function clearFilters() {\r\n state.selectedCountry = '';\r\n state.selectedCity = '';\r\n state.selectedState = '';\r\n state.selectedUnit = '';\r\n state.needFilter = true;\r\n state.isDisabledButton = true;\r\n render();\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {t('dielEnergiaGeolocalizacao')}\r\n \r\n \r\n {isLoading\r\n ? (\r\n \r\n \r\n \r\n )\r\n : (\r\n <>\r\n \r\n \r\n\r\n {state.needFilter\r\n ? \r\n : (\r\n \r\n \r\n \r\n {dutsAndMachines.map(\r\n (machine) => machine.LAT\r\n && machine.LON && (\r\n \r\n \r\n \r\n \r\n {`${t('unidade')}: `}\r\n \r\n {machine.UNIT_NAME}\r\n \r\n \r\n \r\n {`${t('estado')}: `}\r\n {' '}\r\n {machine.STATE_ID}\r\n \r\n \r\n {`${t('cidade')}: `}\r\n {' '}\r\n {machine.CITY_NAME}\r\n \r\n \r\n \r\n \r\n ),\r\n )}\r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n );\r\n};\r\n\r\nfunction FilterGeo({\r\n handleMapGeolocation,\r\n handleSelectGeolocation,\r\n t,\r\n optionsCountry,\r\n filters,\r\n optionsState,\r\n optionsUnits,\r\n optionsCity,\r\n state,\r\n clearFilters,\r\n}) {\r\n return (\r\n <>\r\n
\r\n \r\n { handleMapGeolocation(); }}\r\n >\r\n {t('botaoAnalisar')}\r\n \r\n
\r\n
\r\n { clearFilters(); }}>\r\n {t('limparFiltrosCap')}\r\n \r\n
\r\n \r\n );\r\n}\r\n\r\nfunction SearchsGeoloc({\r\n handleSelectGeolocation,\r\n t,\r\n optionsCountry,\r\n filters,\r\n optionsState,\r\n optionsUnits,\r\n optionsCity,\r\n state,\r\n}) {\r\n const profile = getUserProfile();\r\n return (\r\n <>\r\n \r\n \r\n { handleSelectGeolocation({ type: 'country', value: e }); state.selectedCountry = e; }}\r\n options={optionsCountry.map((item) => ({ value: item, name: item }))}\r\n value={state.selectedCountry}\r\n placeholder={t('pais')}\r\n />\r\n \r\n \r\n \r\n { handleSelectGeolocation({ type: 'state', value: e }); state.selectedState = e; }}\r\n options={optionsState.map((item) => ({ value: item, name: item }))}\r\n value={state.selectedState}\r\n disabled={profile.manageAllClients ? !filters.country : false}\r\n placeholder={t('estado')}\r\n />\r\n \r\n \r\n \r\n { handleSelectGeolocation({ type: 'city', value: e }); state.selectedCity = e; }}\r\n options={optionsCity.map((item) => ({ value: item, name: item }))}\r\n value={state.selectedCity}\r\n disabled={profile.manageAllClients ? !filters.state : false}\r\n placeholder={t('cidade')}\r\n />\r\n \r\n \r\n \r\n { handleSelectGeolocation({ type: 'unit', value: e }); state.selectedUnit = e; }}\r\n options={optionsUnits.map((item) => ({ value: item, name: item }))}\r\n value={state.selectedUnit}\r\n disabled={profile.manageAllClients ? !filters.city : false}\r\n placeholder={t('unidade')}\r\n />\r\n \r\n \r\n );\r\n}\r\n\r\nfunction DesktopGeoFilter({\r\n handleMapGeolocation,\r\n clearFilters,\r\n handleSelectGeolocation,\r\n t,\r\n optionsCountry,\r\n filters,\r\n optionsState,\r\n optionsUnits,\r\n optionsCity,\r\n state,\r\n render,\r\n}) {\r\n return (\r\n \r\n \r\n {\r\n state.showFilter && (\r\n \r\n \r\n \r\n )\r\n }\r\n \r\n { state.showFilter = !state.showFilter; render(); }}>\r\n \r\n {t('filtros')}\r\n {state.showFilter ? : }\r\n \r\n \r\n );\r\n}\r\n\r\nfunction MobileGeoFilter({\r\n setIsModalOpen,\r\n isModalOpen,\r\n clearFilters,\r\n handleSelectGeolocation,\r\n t,\r\n optionsCountry,\r\n filters,\r\n optionsState,\r\n optionsUnits,\r\n optionsCity,\r\n state,\r\n}) {\r\n return (\r\n <>\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('filtrarPor')}\r\n setIsModalOpen(false)} />\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n { clearFilters(); }}\r\n style={{\r\n marginBottom: 10,\r\n marginTop: 10,\r\n }}\r\n >\r\n {t('limparFiltrosCap')}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nexport default withTransaction('Geolocation', 'component')(Geolocation);\r\n","export default __webpack_public_path__ + \"static/media/fan_0_off.b890d219.svg\";","export default __webpack_public_path__ + \"static/media/fan_1_low.e1047f6b.svg\";","export default __webpack_public_path__ + \"static/media/fan_2.ed75be48.svg\";","export default __webpack_public_path__ + \"static/media/fan_3.2986a186.svg\";","export default __webpack_public_path__ + \"static/media/fan_4_high.47df88e7.svg\";","export default __webpack_public_path__ + \"static/media/fan_auto.7355aadc.svg\";","export default __webpack_public_path__ + \"static/media/mode_auto.3584c6e4.svg\";","export default __webpack_public_path__ + \"static/media/mode_cool_off.4bb14ac2.svg\";","export default __webpack_public_path__ + \"static/media/mode_dry.d3f65ed3.svg\";","export default __webpack_public_path__ + \"static/media/mode_heat.bc6e7d9a.svg\";","export default __webpack_public_path__ + \"static/media/swing_1_low.f713b8a5.svg\";","export default __webpack_public_path__ + \"static/media/swing_2.8f3db404.svg\";","export default __webpack_public_path__ + \"static/media/swing_3.58e00a26.svg\";","export default __webpack_public_path__ + \"static/media/swing_4.fe03d207.svg\";","export default __webpack_public_path__ + \"static/media/swing_5_high.449d9f85.svg\";","export default __webpack_public_path__ + \"static/media/swing_auto.72e8392f.svg\";","export default __webpack_public_path__ + \"static/media/swing_off.3a7cf974.svg\";","import { ChangeEvent, useEffect, useState } from 'react';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { toast } from 'react-toastify';\r\nimport { Flex } from 'reflexbox';\r\nimport styled from 'styled-components';\r\n\r\nimport img_fan_0_off from '~/assets/img/cool_ico/fan_0_off.svg';\r\nimport img_fan_1_low from '~/assets/img/cool_ico/fan_1_low.svg';\r\nimport img_fan_2 from '~/assets/img/cool_ico/fan_2.svg';\r\nimport img_fan_3 from '~/assets/img/cool_ico/fan_3.svg';\r\nimport img_fan_4_high from '~/assets/img/cool_ico/fan_4_high.svg';\r\nimport img_fan_auto from '~/assets/img/cool_ico/fan_auto.svg';\r\nimport img_mode_auto from '~/assets/img/cool_ico/mode_auto.svg';\r\nimport img_mode_cool from '~/assets/img/cool_ico/mode_cool.svg';\r\nimport img_mode_cool_off from '~/assets/img/cool_ico/mode_cool_off.svg';\r\nimport img_mode_dry from '~/assets/img/cool_ico/mode_dry.svg';\r\nimport img_mode_fan from '~/assets/img/cool_ico/mode_fan.svg';\r\nimport img_mode_heat from '~/assets/img/cool_ico/mode_heat.svg';\r\nimport img_power from '~/assets/img/cool_ico/power.svg';\r\nimport img_power_grey from '~/assets/img/cool_ico/power_grey.svg';\r\nimport img_schedule from '~/assets/img/cool_ico/schedule.svg';\r\nimport img_swing_1_low from '~/assets/img/cool_ico/swing_1_low.svg';\r\nimport img_swing_2 from '~/assets/img/cool_ico/swing_2.svg';\r\nimport img_swing_3 from '~/assets/img/cool_ico/swing_3.svg';\r\nimport img_swing_4 from '~/assets/img/cool_ico/swing_4.svg';\r\nimport img_swing_5_high from '~/assets/img/cool_ico/swing_5_high.svg';\r\nimport img_swing_auto from '~/assets/img/cool_ico/swing_auto.svg';\r\nimport img_swing_off from '~/assets/img/cool_ico/swing_off.svg';\r\nimport {\r\n Button,\r\n Input,\r\n Loader,\r\n ModalWindow,\r\n ToggleSwitch,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { EditIcon } from '~/icons';\r\nimport { SmallTrashIcon } from '~/icons/Trash';\r\nimport { apiCall, ApiResps } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport {\r\n Bluebar, NotyIconStyle, NotyNumStyle, SchedCardContainer, Sidebar,\r\n} from './styles';\r\n\r\ninterface UnitInfo {\r\n id: string\r\n name: string\r\n system: string\r\n site: string\r\n type: number\r\n activeOperationMode: number\r\n activeSetpoint: number\r\n ambientTemperature: number\r\n activeOperationStatus: number\r\n activeFanMode: number\r\n activeSwingMode: number\r\n}\r\n\r\nexport interface ScheduleInfo {\r\n id: string\r\n name: string\r\n isDisabled: boolean\r\n powerOnTime: number\r\n powerOffTime?: number\r\n setpoint: number\r\n days: ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[],\r\n units?: string[]\r\n}\r\n\r\nexport function convertCoolAutomationSchedTime(value: number|null|undefined) {\r\n if (value == null) return '';\r\n return `${String(Math.floor(value / 60)).padStart(2, '0')}:${String(value % 60).padStart(2, '0')}`;\r\n}\r\n\r\nfunction formatSchedules(scheds: ScheduleInfo[]|undefined) {\r\n const devsSched = {} as {\r\n [unitId: string]: ScheduleInfo[],\r\n };\r\n if (scheds) {\r\n for (const sched of scheds) {\r\n if (sched.units) {\r\n for (const unitId of sched.units) {\r\n if (!devsSched[unitId]) devsSched[unitId] = [sched];\r\n else devsSched[unitId].push(sched);\r\n }\r\n }\r\n }\r\n }\r\n\r\n return devsSched;\r\n}\r\n\r\nexport function CoolAutomationRealTime(props: { devInfo: ApiResps['/get-integration-info']['info'], coolAutomation: ApiResps['/get-integration-info']['coolautomation'] }) : JSX.Element {\r\n // const {} = props;\r\n const { t } = useTranslation();\r\n const [width, setWidth] = useState(window.innerWidth);\r\n const [state, render, setState] = useStateVar({\r\n loading: true,\r\n loadingTelemetry: false,\r\n loadingSchedule: false,\r\n lastRefresh: 0,\r\n timerChangeSetpoint: null as null|NodeJS.Timeout,\r\n allUnits: [] as (UnitInfo & { schedules?: ScheduleInfo[] })[],\r\n indoorUnits: [] as (UnitInfo & { schedules?: ScheduleInfo[] })[],\r\n outdoorUnits: [] as (UnitInfo & { schedules?: ScheduleInfo[] })[],\r\n schedules: formatSchedules(props.coolAutomation?.schedules),\r\n showScheds: false as boolean,\r\n selectedScheds: props.coolAutomation?.schedules,\r\n selectedUnitId: null as null|string,\r\n unitLastTelemetry: null as null|({\r\n name: string;\r\n y: number;\r\n unit?: string;\r\n }[]),\r\n siteTemprt: null as number|null,\r\n floatingControlMode: null as null|{\r\n x: number\r\n y: number\r\n },\r\n floatingControlFan: null as null|{\r\n x: number\r\n y: number\r\n },\r\n floatingControlSwing: null as null|{\r\n x: number\r\n y: number\r\n },\r\n modalSchedulesList: null as null|{\r\n list: ScheduleInfo[]\r\n },\r\n modalEditSchedule: null as null|{\r\n addEdit: 'Add'|'Edit'\r\n scheduleId: string\r\n name: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon: boolean\r\n tue: boolean\r\n wed: boolean\r\n thu: boolean\r\n fri: boolean\r\n sat: boolean\r\n sun: boolean\r\n }\r\n useSetpoint: boolean\r\n setpointValue: string\r\n },\r\n });\r\n\r\n useEffect(() => {\r\n (async () => {\r\n try {\r\n setState({ loading: true });\r\n await atualizarUnits();\r\n } catch (err) { toast.error(t('houveErro')); console.error(err); }\r\n setState({ loading: false });\r\n })();\r\n const refreshUnitsTimer = setInterval(() => {\r\n if (state.lastRefresh > (Date.now() - 15000)) return;\r\n state.lastRefresh = Date.now();\r\n // console.log('DBG R1', Date.now());\r\n atualizarUnits().catch(console.log);\r\n render();\r\n }, 1000);\r\n return () => {\r\n clearInterval(refreshUnitsTimer);\r\n if (state.timerChangeSetpoint) clearTimeout(state.timerChangeSetpoint);\r\n };\r\n }, []);\r\n\r\n useEffect(() => {\r\n // console.log('DBG P1', Date.now());\r\n (async () => {\r\n try {\r\n state.unitLastTelemetry = null;\r\n state.siteTemprt = null;\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n if (!selectedUnit) return;\r\n // console.log('DBG P2', Date.now());\r\n setState({ loadingTelemetry: true });\r\n const [\r\n { telemetry },\r\n ] = await Promise.all([\r\n apiCall('/coolautomation/get-unit-last-telemetry', { coolAutUnitId: selectedUnit.id }),\r\n ]);\r\n state.unitLastTelemetry = Object.values(telemetry);\r\n for (const val of state.unitLastTelemetry) {\r\n const { name, unit } = parseCoolAutVarName(val.name);\r\n val.name = name;\r\n val.unit = unit;\r\n if (val.name === 'Site temperature') state.siteTemprt = val.y;\r\n }\r\n state.unitLastTelemetry = state.unitLastTelemetry.sort((a, b) => {\r\n if (a.name > b.name) return 1;\r\n if (a.name < b.name) return -1;\r\n return 0;\r\n });\r\n } catch (err) { toast.error(t('houveErro')); console.error(err); }\r\n setState({ loadingTelemetry: false });\r\n // console.log('DBG P3', Date.now());\r\n })();\r\n }, [state.selectedUnitId]);\r\n\r\n async function atualizarUnits() {\r\n state.lastRefresh = Date.now();\r\n const [\r\n { list, valsTransl },\r\n ] = await Promise.all([\r\n apiCall('/coolautomation/get-device-units', { coolAutDeviceId: props.devInfo.integrId }),\r\n ]);\r\n state.allUnits = list.sort((a, b) => {\r\n if (a.name > b.name) return 1;\r\n if (a.name < b.name) return -1;\r\n return 0;\r\n });\r\n state.indoorUnits = state.allUnits.filter((unit) => unit.type === 1).map((unit) => {\r\n const schedules = state.schedules[unit.id];\r\n return { ...unit, schedules };\r\n });\r\n state.outdoorUnits = state.allUnits.filter((unit) => unit.type === 2).map((unit) => {\r\n const schedules = state.schedules[unit.id];\r\n return { ...unit, schedules };\r\n });\r\n\r\n // console.log('DBG P0', Date.now());\r\n for (const item of state.allUnits) {\r\n if (item.activeSetpoint != null) item.activeSetpoint = Math.round(item.activeSetpoint);\r\n }\r\n }\r\n\r\n function onClickMode(event) {\r\n if (state.floatingControlMode) {\r\n state.floatingControlMode = null;\r\n } else {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'div') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n state.floatingControlMode = null;\r\n state.floatingControlFan = null;\r\n state.floatingControlSwing = null;\r\n state.floatingControlMode = {\r\n x: rect.x, // event.target.offsetLeft, // event.clientX\r\n y: rect.y - 5 * 71, // event.target.offsetTop, // event.clientY\r\n };\r\n }\r\n render();\r\n }\r\n function onClickFan(event) {\r\n if (state.floatingControlFan) {\r\n state.floatingControlFan = null;\r\n } else {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'div') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n state.floatingControlMode = null;\r\n state.floatingControlFan = null;\r\n state.floatingControlSwing = null;\r\n state.floatingControlFan = {\r\n x: rect.x,\r\n y: rect.y - 5 * 71,\r\n };\r\n }\r\n render();\r\n }\r\n function onClickSwing(event) {\r\n if (state.floatingControlSwing) {\r\n state.floatingControlSwing = null;\r\n } else {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'div') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n state.floatingControlMode = null;\r\n state.floatingControlFan = null;\r\n state.floatingControlSwing = null;\r\n state.floatingControlSwing = {\r\n x: rect.x,\r\n y: rect.y - 5 * 71,\r\n };\r\n }\r\n render();\r\n }\r\n\r\n function onOffBackgroundColor(operationStatuse: number) {\r\n // operationStatuses: {\"1\":\"on\",\"2\":\"off\"},\r\n switch (operationStatuse) {\r\n case 1: return '#363bc4'; // ON\r\n case 2: return '#bbbbbb'; // OFF\r\n default: return '#bbbbbb';\r\n }\r\n }\r\n function getOperationStatusIcon(operationStatus: number) {\r\n // operationStatuses: {\"1\":\"on\",\"2\":\"off\"},\r\n switch (operationStatus) {\r\n case 1: return img_power;\r\n case 2: return img_power_grey;\r\n default: return img_power_grey;\r\n }\r\n }\r\n function getOperationModeIcon(operationMode: number) {\r\n // operationModes: {\"0\":\"COOL\",\"1\":\"HEAT\",\"2\":\"AUTO\",\"3\":\"DRY\",\"5\":\"FAN\"},\r\n switch (operationMode) {\r\n case 0: return img_mode_cool;\r\n case 1: return img_mode_heat;\r\n case 2: return img_mode_auto;\r\n case 3: return img_mode_dry;\r\n case 5: return img_mode_fan;\r\n default: return img_mode_cool_off;\r\n }\r\n }\r\n function getFanModeIcon(fanMode: number) {\r\n // fanModes: {\"0\":\"LOW\",\"1\":\"MEDIUM\",\"2\":\"HIGH\",\"3\":\"AUTO\",\"4\":\"TOP\",\"5\":\"VERYLOW\"},\r\n switch (fanMode) {\r\n case 0: return img_fan_1_low;\r\n case 1: return img_fan_2;\r\n case 2: return img_fan_3;\r\n case 3: return img_fan_auto;\r\n case 4: return img_fan_4_high;\r\n default: return img_fan_0_off;\r\n }\r\n }\r\n function getSwingModeIcon(swingMode: number) {\r\n // swingModes: {\"0\":\"vertical\",\"1\":\"30\",\"2\":\"45\",\"3\":\"60\",\"4\":\"horizontal\",\"5\":\"auto\",\"6\":\"off\",\"7\":\"on\"},\r\n switch (swingMode) {\r\n case 0: return img_swing_1_low;\r\n case 1: return img_swing_4;\r\n case 2: return img_swing_3;\r\n case 3: return img_swing_2;\r\n case 4: return img_swing_5_high;\r\n case 5: return img_swing_auto;\r\n case 7: return img_swing_auto;\r\n default: return img_swing_off;\r\n }\r\n }\r\n\r\n async function setOperationStatus(unit: { id: string, activeOperationStatus: number }, operationStatus: number) {\r\n try {\r\n if (!unit) return;\r\n await apiCall('/coolautomation/control-unit-operation', {\r\n unitId: unit.id,\r\n operationStatus,\r\n });\r\n unit.activeOperationStatus = operationStatus;\r\n toast.info(t('comandoEnviado'));\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n async function setOperationMode(operationMode: number) {\r\n try {\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n if (!selectedUnit) return;\r\n await apiCall('/coolautomation/control-unit-operation', {\r\n unitId: selectedUnit.id,\r\n operationMode,\r\n });\r\n selectedUnit.activeOperationMode = operationMode;\r\n toast.info(t('comandoEnviado'));\r\n setState({ floatingControlMode: null, floatingControlFan: null, floatingControlSwing: null });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n async function setFanMode(fanMode: number) {\r\n try {\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n if (!selectedUnit) return;\r\n await apiCall('/coolautomation/control-unit-operation', {\r\n unitId: selectedUnit.id,\r\n fanMode,\r\n });\r\n selectedUnit.activeFanMode = fanMode;\r\n toast.info(t('comandoEnviado'));\r\n setState({ floatingControlMode: null, floatingControlFan: null, floatingControlSwing: null });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n async function setSwingMode(swingMode: number) {\r\n try {\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n if (!selectedUnit) return;\r\n await apiCall('/coolautomation/control-unit-operation', {\r\n unitId: selectedUnit.id,\r\n swingMode,\r\n });\r\n selectedUnit.activeSwingMode = swingMode;\r\n toast.info(t('comandoEnviado'));\r\n setState({ floatingControlMode: null, floatingControlFan: null, floatingControlSwing: null });\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n async function sendSSetpoint(setpoint: number) {\r\n try {\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n if (!selectedUnit) return;\r\n await apiCall('/coolautomation/control-unit-operation', {\r\n unitId: selectedUnit.id,\r\n setpoint,\r\n });\r\n toast.info(t('setpointEnviado'));\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n function changeSetpoint(newSetpoint: number) {\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n if (state.timerChangeSetpoint) clearTimeout(state.timerChangeSetpoint);\r\n if (selectedUnit) {\r\n selectedUnit.activeSetpoint = newSetpoint;\r\n state.timerChangeSetpoint = setTimeout(() => sendSSetpoint(newSetpoint), 1500);\r\n render();\r\n }\r\n }\r\n\r\n async function showProgramming() {\r\n try {\r\n if (!state.selectedUnitId) return;\r\n state.modalSchedulesList = null;\r\n state.modalEditSchedule = null;\r\n setState({ loadingSchedule: true });\r\n const unitSched = await apiCall('/coolautomation/get-unit-programming', { coolAutUnitId: state.selectedUnitId });\r\n for (const item of (unitSched.list as any[])) {\r\n for (const prop of Object.keys(item)) {\r\n if (prop.includes('nable')) delete item[prop];\r\n if ((item[prop] instanceof Array) && (item[prop].length === 0)) delete item[prop];\r\n if (['system', 'unit', 'eWrcDisable'].includes(prop)) delete item[prop];\r\n }\r\n }\r\n if (unitSched.list.length > 0) {\r\n state.modalSchedulesList = unitSched;\r\n } else {\r\n toast.info(t('nenhumaProgramacao'));\r\n }\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n setState({ loadingSchedule: false });\r\n }\r\n\r\n function showScheds() {\r\n try {\r\n state.showScheds = true;\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n function selectedSchedules(name:string) {\r\n state.selectedScheds = props.coolAutomation?.schedules.filter((sched) => sched.unitName?.includes(name));\r\n }\r\n\r\n async function onDeleteClick(item: ScheduleInfo) {\r\n try {\r\n if (!window.confirm(t('temCertezaQueDesejaExcluir'))) return;\r\n // setState({ savingSched: true });\r\n await apiCall('/coolautomation/delete-unit-schedule', {\r\n scheduleId: item.id,\r\n });\r\n toast.success(t('sucessoExcluirProgramacao'));\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n function editAddProgramming(item?: ScheduleInfo) {\r\n try {\r\n state.modalEditSchedule = {\r\n addEdit: item ? 'Edit' : 'Add',\r\n scheduleId: (item && item.id) || '',\r\n name: (item && item.name) || '',\r\n active: !(item && item.isDisabled),\r\n start_time: item ? convertCoolAutomationSchedTime(item.powerOnTime) : '',\r\n start_time_error: '',\r\n end_time: (item && item.powerOffTime != null) ? convertCoolAutomationSchedTime(item.powerOffTime) : '',\r\n end_time_error: '',\r\n selectedDays: {\r\n mon: item ? item.days.includes('Monday') : false,\r\n tue: item ? item.days.includes('Tuesday') : false,\r\n wed: item ? item.days.includes('Wednesday') : false,\r\n thu: item ? item.days.includes('Thursday') : false,\r\n fri: item ? item.days.includes('Friday') : false,\r\n sat: item ? item.days.includes('Saturday') : false,\r\n sun: item ? item.days.includes('Sunday') : false,\r\n },\r\n useSetpoint: item ? (item.setpoint != null) : false,\r\n setpointValue: item ? (item.setpoint != null) ? String(item.setpoint) : '24' : '24',\r\n };\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n async function saveNewProgramming() {\r\n try {\r\n // setState({ savingSched: true });\r\n if (!state.modalEditSchedule) return;\r\n if (!state.selectedUnitId) return;\r\n\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.start_time)) return toast.error(t('erroHorarioInvalido'));\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.end_time)) return toast.error(t('erroHorarioInvalido'));\r\n const days = [] as ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[];\r\n if (state.modalEditSchedule.selectedDays.mon) days.push('Monday');\r\n if (state.modalEditSchedule.selectedDays.tue) days.push('Tuesday');\r\n if (state.modalEditSchedule.selectedDays.wed) days.push('Wednesday');\r\n if (state.modalEditSchedule.selectedDays.thu) days.push('Thursday');\r\n if (state.modalEditSchedule.selectedDays.fri) days.push('Friday');\r\n if (state.modalEditSchedule.selectedDays.sat) days.push('Saturday');\r\n if (state.modalEditSchedule.selectedDays.sun) days.push('Sunday');\r\n\r\n const { info: newScnhedule } = await apiCall('/coolautomation/add-unit-schedule', {\r\n unitId: state.selectedUnitId,\r\n isDisabled: !state.modalEditSchedule.active,\r\n name: state.modalEditSchedule.name,\r\n powerOnTime: state.modalEditSchedule.start_time, // \"23:59\"\r\n powerOffTime: state.modalEditSchedule.end_time, // \"23:59\"\r\n setpoint: state.modalEditSchedule.useSetpoint ? Number(state.modalEditSchedule.setpointValue) : null,\r\n days, // ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[]\r\n });\r\n state.modalEditSchedule = null;\r\n render();\r\n toast.success(t('sucessoProgramacaoAdicionada'));\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n // setState({ savingSched: false });\r\n }\r\n\r\n async function onSaveEditClick() {\r\n try {\r\n // setState({ savingSched: true });\r\n if (!state.modalEditSchedule) return;\r\n\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.start_time)) return toast.error(t('erroHorarioInvalido'));\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.end_time)) return toast.error(t('erroHorarioInvalido'));\r\n const days = [] as ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[];\r\n if (state.modalEditSchedule.selectedDays.mon) days.push('Monday');\r\n if (state.modalEditSchedule.selectedDays.tue) days.push('Tuesday');\r\n if (state.modalEditSchedule.selectedDays.wed) days.push('Wednesday');\r\n if (state.modalEditSchedule.selectedDays.thu) days.push('Thursday');\r\n if (state.modalEditSchedule.selectedDays.fri) days.push('Friday');\r\n if (state.modalEditSchedule.selectedDays.sat) days.push('Saturday');\r\n if (state.modalEditSchedule.selectedDays.sun) days.push('Sunday');\r\n\r\n const { info: newSchedule } = await apiCall('/coolautomation/alter-unit-schedule', {\r\n scheduleId: state.modalEditSchedule.scheduleId,\r\n isDisabled: !state.modalEditSchedule.active,\r\n name: state.modalEditSchedule.name,\r\n powerOnTime: state.modalEditSchedule.start_time, // \"23:59\"\r\n powerOffTime: state.modalEditSchedule.end_time, // \"23:59\"\r\n setpoint: state.modalEditSchedule.useSetpoint ? Number(state.modalEditSchedule.setpointValue) : null,\r\n days, // ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[]\r\n });\r\n state.modalEditSchedule = null;\r\n toast.success(t('sucessoProgramacaoAlterada'));\r\n window.location.reload();\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n // setState({ savingSched: false });\r\n }\r\n\r\n useEffect(() => {\r\n const handleResize = () => {\r\n setWidth(window.innerWidth);\r\n };\r\n\r\n window.addEventListener('resize', handleResize);\r\n\r\n return () => {\r\n window.removeEventListener('resize', handleResize);\r\n };\r\n }, []);\r\n\r\n const selectedUnit = state.allUnits.find((unit) => unit.id === state.selectedUnitId);\r\n const mobileWitdh = width < 1650;\r\n return (\r\n <>\r\n {state.loading && }\r\n {!state.loading && (\r\n
\r\n {(state.showScheds) && (\r\n
\r\n {\r\n if (!state.modalEditSchedule) {\r\n setState({ showScheds: false });\r\n }\r\n }}\r\n >\r\n \r\n \r\n
\r\n {`Total: ${(state.selectedScheds?.length) || 0}`}\r\n {\r\n state.showScheds = false;\r\n editAddProgramming();\r\n }}\r\n >\r\n {t('adicionarProgramacao')}\r\n \r\n
\r\n
\r\n {state.selectedScheds?.map((sched) => (\r\n {\r\n state.showScheds = false;\r\n editAddProgramming(sched);\r\n }}\r\n onDelete={() => onDeleteClick(sched)}\r\n />\r\n ))}\r\n
\r\n \r\n
\r\n )}\r\n
\r\n
\r\n
\r\n \r\n
{t('ambientes')}
\r\n
\r\n {`${t('total')} `}\r\n {state.indoorUnits.length}\r\n {` ${t('ambientes')}`}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {t('nome')}\r\n {t('modo')}\r\n Set\r\n {t('agora')}\r\n \r\n {t('status')}\r\n \r\n \r\n \r\n {state.indoorUnits.map((unit) => (\r\n {\r\n setState({ selectedUnitId: unit.id });\r\n selectedSchedules(unit.name);\r\n }}\r\n >\r\n \r\n
{unit.name}
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {`${unit.activeSetpoint}`}\r\n °C\r\n
\r\n \r\n \r\n
\r\n {`${unit.ambientTemperature}`}\r\n °C\r\n
\r\n \r\n \r\n {unit.schedules && (\r\n \r\n )}\r\n \r\n \r\n
\r\n setOperationStatus(unit, (unit.activeOperationStatus === 2) ? 1 : 2)}\r\n />\r\n
\r\n \r\n \r\n ))}\r\n \r\n
\r\n
\r\n
\r\n \r\n
{t('condensadoras')}
\r\n
\r\n {`${t('total')} `}\r\n {state.outdoorUnits.length}\r\n {` ${t('condensadoras')}`}\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n {t('nome')}\r\n \r\n \r\n \r\n \r\n {state.outdoorUnits.map((unit) => (\r\n { setState({ selectedUnitId: unit.id }); selectedSchedules(unit.name); }}>\r\n \r\n
{unit.name}
\r\n \r\n \r\n {unit.schedules && (\r\n \r\n )}\r\n \r\n
\r\n ))}\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n {(selectedUnit && (selectedUnit.type === 1)) && (\r\n
\r\n
\r\n
\r\n
{t('unidade')}
\r\n
{props.devInfo.UNIT_NAME}
\r\n
\r\n
\r\n
{t('maquina')}
\r\n
{selectedUnit.name}
\r\n
\r\n setOperationStatus(selectedUnit!, (selectedUnit!.activeOperationStatus === 2) ? 1 : 2)}\r\n >\r\n \r\n \r\n
\r\n
\r\n
{t('externo')}
\r\n
\r\n \r\n {(state.siteTemprt != null) ? state.siteTemprt : '-'}\r\n \r\n {(state.siteTemprt != null) && (\r\n °C\r\n )}\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
Setpoint
\r\n
\r\n
\r\n changeSetpoint(selectedUnit!.activeSetpoint + 1)}\r\n />\r\n changeSetpoint(selectedUnit!.activeSetpoint - 1)}\r\n />\r\n
\r\n {selectedUnit.activeSetpoint}\r\n  °C\r\n
\r\n
{t('agora')}
\r\n
\r\n {selectedUnit.ambientTemperature}\r\n °C\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n {state.floatingControlMode && (\r\n \r\n
\r\n setOperationMode(0)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(1)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(2)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(3)}>\r\n \r\n \r\n
\r\n
\r\n setOperationMode(5)}>\r\n \r\n \r\n
\r\n
\r\n )}\r\n\r\n \r\n \r\n \r\n {state.floatingControlFan && (\r\n \r\n
\r\n setFanMode(4)}>\r\n \r\n \r\n
\r\n
\r\n setFanMode(2)}>\r\n \r\n \r\n
\r\n
\r\n setFanMode(1)}>\r\n \r\n \r\n
\r\n
\r\n setFanMode(0)}>\r\n \r\n \r\n
\r\n
\r\n setFanMode(3)}>\r\n \r\n \r\n
\r\n
\r\n )}\r\n\r\n \r\n \r\n \r\n {state.floatingControlSwing && (\r\n \r\n
\r\n setSwingMode(4)}>\r\n \r\n \r\n
\r\n
\r\n setSwingMode(1)}>\r\n \r\n \r\n
\r\n
\r\n setSwingMode(2)}>\r\n \r\n \r\n
\r\n
\r\n setSwingMode(3)}>\r\n \r\n \r\n
\r\n
\r\n setSwingMode(0)}>\r\n \r\n \r\n
\r\n
\r\n )}\r\n\r\n \r\n {state.selectedScheds?.length ? {state.selectedScheds.length} : null}\r\n showScheds()}\r\n style={{ margin: '0 10px' }}\r\n >\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n \r\n \r\n
\r\n
\r\n \r\n )}\r\n\r\n {(selectedUnit && (selectedUnit.type === 2)) && (\r\n
\r\n\r\n
\r\n \r\n {state.selectedScheds?.length ? {state.selectedScheds.length} : null}\r\n showScheds()}\r\n style={{ margin: '0 10px' }}\r\n >\r\n {state.loadingSchedule\r\n ? \r\n : }\r\n \r\n \r\n
\r\n
\r\n )}\r\n \r\n\r\n {state.loadingTelemetry && }\r\n {(selectedUnit && state.unitLastTelemetry) && (\r\n
\r\n
\r\n

{t('informacoesGerais')}

\r\n \r\n

{selectedUnit.name}

\r\n
\r\n {state.unitLastTelemetry.map((varItem) => (\r\n \r\n {varItem.name}\r\n \r\n {varItem.y}\r\n \r\n  \r\n {varItem.unit}\r\n \r\n \r\n \r\n ))}\r\n
\r\n
\r\n
\r\n )}\r\n {(state.modalEditSchedule) && (\r\n { setState({ modalEditSchedule: null }); }}>\r\n { setState({ modalEditSchedule: null }); }}\r\n />\r\n \r\n )}\r\n {(state.modalSchedulesList && !state.modalEditSchedule) && (\r\n { setState({ modalSchedulesList: null }); }}>\r\n
\r\n {state.modalSchedulesList.list.map((item) => (\r\n
editAddProgramming(item)}>\r\n {item.name}\r\n
\r\n ))}\r\n
editAddProgramming()}>\r\n {`+ ${t('botaoAdicionar')}`}\r\n
\r\n
\r\n
\r\n )}\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport function parseCoolAutVarName(name: string) {\r\n const matched = name && name.match(/^(\\*)?([^[]+)( \\[([^\\]]+)\\])?$/);\r\n let unit = undefined as undefined|string;\r\n if (matched) {\r\n const [, ast, namePart, , unitPart] = matched;\r\n name = namePart + (ast || '');\r\n unit = unitPart;\r\n if (unit === '-') unit = undefined;\r\n }\r\n return { name, unit };\r\n}\r\n\r\nexport function CoolAutomationSchedForm(props: {\r\n modalEditSchedule: {\r\n addEdit: 'Add'|'Edit'\r\n name: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon: boolean\r\n tue: boolean\r\n wed: boolean\r\n thu: boolean\r\n fri: boolean\r\n sat: boolean\r\n sun: boolean\r\n }\r\n useSetpoint: boolean\r\n setpointValue: string\r\n },\r\n onNewConfirm?: () => void\r\n onEditConfirm?: () => void\r\n onCancel: () => void\r\n}) {\r\n const [, render] = useStateVar({});\r\n const { t } = useTranslation();\r\n\r\n const isEdit = props.modalEditSchedule.addEdit === 'Edit';\r\n\r\n return (\r\n
\r\n
{`${isEdit ? t('editar') : t('adicionar')} Programação`}
\r\n
\r\n
{t('nome')}
\r\n { props.modalEditSchedule.name = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('status')}
\r\n
\r\n {props.modalEditSchedule.active ? t('ativo') : t('desativado')}\r\n { props.modalEditSchedule.active = !props.modalEditSchedule.active; render(); }}\r\n />\r\n
\r\n
\r\n \r\n
\r\n
{t('horarioInicio')}
\r\n ) => { props.modalEditSchedule!.start_time = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
{t('horarioTermino')}
\r\n ) => { props.modalEditSchedule!.end_time = e.target.value; render(); }}\r\n />\r\n
\r\n
\r\n
\r\n
{t('selecioneOsDias')}
\r\n
\r\n { props.modalEditSchedule.selectedDays.sun = !props.modalEditSchedule.selectedDays.sun; render(); }}>DOM\r\n { props.modalEditSchedule.selectedDays.mon = !props.modalEditSchedule.selectedDays.mon; render(); }}>SEG\r\n { props.modalEditSchedule.selectedDays.tue = !props.modalEditSchedule.selectedDays.tue; render(); }}>TER\r\n { props.modalEditSchedule.selectedDays.wed = !props.modalEditSchedule.selectedDays.wed; render(); }}>QUA\r\n { props.modalEditSchedule.selectedDays.thu = !props.modalEditSchedule.selectedDays.thu; render(); }}>QUI\r\n { props.modalEditSchedule.selectedDays.fri = !props.modalEditSchedule.selectedDays.fri; render(); }}>SEX\r\n { props.modalEditSchedule.selectedDays.sat = !props.modalEditSchedule.selectedDays.sat; render(); }}>SAB\r\n
\r\n
\r\n
\r\n
\r\n
Setpoint  
\r\n { props.modalEditSchedule.useSetpoint = !props.modalEditSchedule.useSetpoint; render(); }}\r\n />\r\n
\r\n {(props.modalEditSchedule.useSetpoint) && (\r\n
\r\n
\r\n { props.modalEditSchedule.setpointValue = String(Number(props.modalEditSchedule.setpointValue) + 1); render(); }}\r\n />\r\n { props.modalEditSchedule.setpointValue = String(Number(props.modalEditSchedule.setpointValue) - 1); render(); }}\r\n />\r\n
\r\n
{props.modalEditSchedule.setpointValue}
\r\n
 °C
\r\n
\r\n )}\r\n
\r\n
\r\n \r\n
\r\n
\r\n {t('cancelar')}\r\n
\r\n \r\n );\r\n}\r\n\r\nfunction Dial(props: { temperature: number }) {\r\n const min = 10;\r\n const max = 30;\r\n let percentage = (props.temperature == null) ? NaN : ((props.temperature - min) / (max - min));\r\n if (percentage > 1) percentage = 1;\r\n if (percentage < 0) percentage = 0;\r\n if (!Number.isFinite(percentage)) percentage = NaN;\r\n\r\n function onSvgClick(event) {\r\n let el = event.target;\r\n while (el.tagName.toLowerCase() !== 'svg') {\r\n if (!el.parentElement) return;\r\n if (!el.parentElement.tagName) return;\r\n el = el.parentElement;\r\n }\r\n const rect = el.getBoundingClientRect();\r\n console.log('DBG013', rect, event);\r\n }\r\n\r\n return (\r\n \r\n \r\n \r\n {(!Number.isNaN(percentage)) && (\r\n \r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport function SchedCard(props: {\r\n sched: any,\r\n onEdit: () => void\r\n onDelete: () => void\r\n}): JSX.Element {\r\n const [, render] = useStateVar({});\r\n const { t } = useTranslation();\r\n\r\n const { sched, onEdit, onDelete } = props;\r\n const days = sched.days;\r\n\r\n return (\r\n \r\n \r\n
\r\n
\r\n
\r\n {sched.name}\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
{t('status')}
\r\n
\r\n {sched.isDisabled ? t('inativo') : t('ativo')}\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n {t('horarioDeInicio')}\r\n {sched.powerOnTime ? formatHours(sched.powerOnTime) : '-'}\r\n
\r\n
\r\n {t('horarioDeFim')}\r\n {sched.powerOffTime ? formatHours(sched.powerOffTime) : '-'}\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
Setpoint
\r\n
\r\n
{sched.setpoint}
\r\n
 °C
\r\n
\r\n
\r\n\r\n
\r\n
\r\n {days && (\r\n
\r\n e === 'Sunday')}>{t('diaDom').toLocaleUpperCase()}\r\n e === 'Monday')}>{t('diaSeg').toLocaleUpperCase()}\r\n e === 'Tuesday')}>{t('diaTer').toLocaleUpperCase()}\r\n e === 'Wednesday')}>{t('diaQua').toLocaleUpperCase()}\r\n e === 'Thursday')}>{t('diaQui').toLocaleUpperCase()}\r\n e === 'Friday')}>{t('diaSex').toLocaleUpperCase()}\r\n e === 'Saturday')}>{t('diaSab').toLocaleUpperCase()}\r\n
\r\n )}\r\n
\r\n
\r\n \r\n );\r\n}\r\n\r\nconst formatHours = (minutes) => {\r\n const hours = Math.floor(minutes / 60);\r\n const min = minutes % 60;\r\n const textHours = (`00${hours}`).slice(-2);\r\n const textMinutes = (`00${min}`).slice(-2);\r\n\r\n return `${textHours}:${textMinutes}`;\r\n};\r\n\r\nconst InfoCellWrapper = styled.div`\r\n padding: 20px 40px;\r\n width: 300px;\r\n`;\r\n\r\nconst InfoCellValueWrapper = styled.div`\r\n line-height: initial;\r\n`;\r\n\r\nconst InfoCellValue = styled.span`\r\n font-size: 170%;\r\n font-weight: bold;\r\n`;\r\n\r\nconst InfoCellUnit = styled.span`\r\n color: ${colors.Grey200};\r\n font-size: 120%;\r\n`;\r\n\r\nconst InfoCellTitle = styled.div`\r\n font-weight: bold;\r\n white-space: wrap;\r\n`;\r\n\r\nconst UnitsTable = styled.table`\r\n width: 100%;\r\n & thead th {\r\n position: sticky;\r\n top: 0;\r\n background-color: white;\r\n z-index: 1;\r\n }\r\n`;\r\n\r\nconst WeekDayButton = styled.div<{ checked: boolean }>`\r\n padding: 8px 10px;\r\n border-radius: 5px;\r\n margin: 5px;\r\n background-color: ${({ checked }) => (checked ? 'blue' : 'lightgrey')};\r\n color: ${({ checked }) => (checked ? 'white' : 'black')};\r\n`;\r\n\r\nconst ControlButtonIcon = styled.img`\r\n max-width: 100%;\r\n`;\r\n\r\nconst ControlButton = styled.div<{ isActive?: boolean, noBorder?: boolean }>`\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n ${({ noBorder }) => (noBorder ? 'border: 0;' : '')}\r\n border-radius: 10px;\r\n width: 70px;\r\n height: 70px;\r\n cursor: pointer;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n ${({ isActive }) => (isActive ? 'border: 2px solid blue;' : '')}\r\n`;\r\n\r\nconst SelectContainer = styled.div`\r\n position: fixed;\r\n background: white;\r\n border: 1px solid #d3d3d3;\r\n border-radius: 10px;\r\n`;\r\n\r\nconst UnitRow = styled.tr<{ checked?: boolean }>`\r\n ${({ checked }) => (checked ? 'border: 2px solid blue;' : '')}\r\n height: 40px;\r\n`;\r\n\r\nconst UnitRowA = styled.tr<{ checked?: boolean }>`\r\n td {\r\n padding: 8px;\r\n &:first-child {\r\n border-left: 1px solid ${colors.GreyDefaultCardBorder};\r\n }\r\n &:last-child {\r\n border-right: 1px solid ${colors.GreyDefaultCardBorder};\r\n }\r\n }\r\n &:first-child td {\r\n border-top: 1px solid ${colors.GreyDefaultCardBorder};\r\n &:first-child {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-top-right-radius: 10px;\r\n }\r\n }\r\n &:last-child td {\r\n border-bottom: 1px solid ${colors.GreyDefaultCardBorder};\r\n &:first-child {\r\n border-bottom-left-radius: 10px;\r\n }\r\n &:last-child {\r\n border-bottom-right-radius: 10px;\r\n }\r\n }\r\n ${({ checked }) => (checked ? 'border: 2px solid blue;' : '')}\r\n`;\r\n\r\nconst UnitRowB = styled.tr`\r\n td {\r\n & div {\r\n padding: 15px;\r\n }\r\n &:first-child div {\r\n border-left: 1px solid ${colors.GreyDefaultCardBorder};\r\n }\r\n &:last-child div {\r\n border-right: 1px solid ${colors.GreyDefaultCardBorder};\r\n }\r\n }\r\n &:first-child td {\r\n & div {\r\n border-top: 1px solid ${colors.GreyDefaultCardBorder};\r\n }\r\n &:first-child div {\r\n border-top-left-radius: 10px;\r\n }\r\n &:last-child div {\r\n border-top-right-radius: 10px;\r\n }\r\n }\r\n &:last-child td {\r\n & div {\r\n border-bottom: 1px solid ${colors.GreyDefaultCardBorder};\r\n }\r\n &:first-child div {\r\n border-bottom-left-radius: 10px;\r\n }\r\n &:last-child div {\r\n border-bottom-right-radius: 10px;\r\n }\r\n }\r\n`;\r\n\r\nconst Card = styled.div`\r\n margin-top: 15px;\r\n border-radius: 8px;\r\n padding: 12px 24px 32px;\r\n border: 1px solid ${colors.GreyDefaultCardBorder};\r\n border-top: 10px solid ${colors.BlueSecondary};\r\n`;\r\n","import { useEffect } from 'react';\r\nimport moment from 'moment';\r\nimport { SingleDatePicker, DateRangePicker } from 'react-dates';\r\nimport { useParams } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\nimport i18n from '~/i18n';\r\nimport {\r\n Checkbox,\r\n Loader, Select,\r\n} from 'components';\r\nimport {\r\n AxisInfo,\r\n ChartLineNumber,\r\n ChartLineSteps,\r\n fillDynamicValues,\r\n fillMaxMin,\r\n fillSteps,\r\n} from 'helpers/axisCalc';\r\nimport { useStateVar } from 'helpers/useStateVar';\r\nimport { CalendarIcon } from 'icons';\r\nimport { apiCall } from 'providers';\r\nimport { colors } from 'styles/colors';\r\n\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport { ChartLine, colorPalete } from '~/components/ChartRecharts';\r\nimport { LegendaGroup } from '~/components/ChartRecharts/Legenda';\r\nimport { parseCoolAutVarName } from '../IntegrRealTime/CoolAutomationRealTime';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport function CoolAutomationHist(props: { deviceId: string }): JSX.Element {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ coolAutUnitId: string }>();\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const [state, render, setState] = useStateVar({\r\n loadingChart: true,\r\n loadingUnitsList: true,\r\n chartData: {\r\n x: [] as number[],\r\n vars: null as null|{\r\n id: string;\r\n name: string;\r\n unit?: string;\r\n y: (null|number)[];\r\n color: string;\r\n axisId: string;\r\n maxY?: null|number;\r\n minY?: null|number;\r\n y_orig?: (null|number|string)[];\r\n steps?: {\r\n y_orig: (null|number|string);\r\n y_chart: (null|number);\r\n label: string;\r\n }[];\r\n checked?: boolean;\r\n }[],\r\n axisInfo: {\r\n x: { domain: [0, 24] as [number, number] },\r\n y: {\r\n left: {\r\n domain: [-1, 50] as [number, number],\r\n ticks: [-1, 0, 50],\r\n ticksLabels: ['-1', '0', '50'],\r\n },\r\n },\r\n },\r\n },\r\n multiDays: false,\r\n numDays: 1 as number,\r\n focused: false,\r\n focusedInput: null as 'endDate'|'startDate'|null,\r\n dateStart: moment().subtract(1, 'days'),\r\n dateEnd: moment().subtract(1, 'days'),\r\n tomorrow: moment(moment().add(1, 'days').format('YYYY-MM-DD')),\r\n deviceUnits: null as null|({ id: string, name: string }[]),\r\n selectedUnit: null as null|{ id: string, name: string },\r\n });\r\n\r\n const coolAutUnitId = (state.selectedUnit && state.selectedUnit.id) || routeParams.coolAutUnitId;\r\n\r\n useEffect(() => {\r\n Promise.resolve().then(async () => {\r\n try {\r\n if (props.deviceId) {\r\n setState({ loadingUnitsList: true });\r\n const { list } = await apiCall('/coolautomation/get-device-units', { coolAutDeviceId: props.deviceId });\r\n state.deviceUnits = list;\r\n }\r\n } catch (err) { toast.error(t('houveErro')); console.error(err); }\r\n setState({ loadingUnitsList: false });\r\n });\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (state.multiDays && state.focusedInput) return;\r\n const chartVars: (typeof state.chartData.vars) = [];\r\n const checkedBefore = (state.chartData.vars && state.chartData.vars.filter((line) => line.checked).map((line) => line.name)) || [];\r\n state.chartData.vars = null;\r\n Promise.resolve().then(async () => {\r\n try {\r\n if (state.dateStart && state.dateEnd && coolAutUnitId) {\r\n const d1 = new Date(`${moment(state.dateStart).format('YYYY-MM-DD')}T00:00:00Z`).getTime();\r\n const d2 = new Date(`${moment(state.dateEnd).format('YYYY-MM-DD')}T00:00:00Z`).getTime();\r\n const numDays = Math.round((d2 - d1) / 1000 / 60 / 60 / 24) + 1;\r\n if ((numDays >= 1) && (numDays <= 8)) { } // OK\r\n else {\r\n toast.error(t('erroPeriodo1a8'));\r\n return;\r\n }\r\n\r\n state.numDays = numDays;\r\n\r\n setState({ loadingChart: true });\r\n const { vars, commonX } = await apiCall('/coolautomation/get-unit-history', {\r\n coolAutUnitId,\r\n dayYMD: moment(state.dateStart).format('YYYY-MM-DD'),\r\n numDays,\r\n });\r\n const varsList = Object.values(vars);\r\n varsList.sort((a, b) => {\r\n if (a.name > b.name) return 1;\r\n if (a.name < b.name) return -1;\r\n return 0;\r\n });\r\n const linesCont = [] as ChartLineNumber[];\r\n const linesDisc = [] as ChartLineSteps[];\r\n for (const row of varsList) {\r\n if (row.name.includes('Horímetro')) continue;\r\n if (row.name.includes('Partidas')) continue;\r\n if (row.name.includes('Umidade')) continue;\r\n if (row.name.includes('Status')) {\r\n const line: ChartLineSteps = {\r\n name: row.name,\r\n x: [], // not used\r\n y_orig: row.y.map((v) => ((v === 0) ? t('desligadoMinusculo') : (v === 2) ? t('ligadoMinusculo') : (v && String(v)))),\r\n y: row.y,\r\n steps: [],\r\n };\r\n fillSteps(line);\r\n linesDisc.push(line);\r\n } else {\r\n const line: ChartLineNumber = {\r\n name: row.name,\r\n x: [], // not used\r\n y: row.y,\r\n maxY: null,\r\n minY: null,\r\n };\r\n fillMaxMin(line);\r\n linesCont.push(line);\r\n }\r\n }\r\n const axisInfo: AxisInfo = { left: null };\r\n fillDynamicValues(axisInfo, linesCont, linesDisc);\r\n let nColor = 0;\r\n for (const line of [...linesCont, ...linesDisc]) {\r\n const { name, unit } = parseCoolAutVarName(line.name);\r\n chartVars.push({\r\n ...line,\r\n name,\r\n unit,\r\n color: colorPalete[nColor++ % colorPalete.length],\r\n axisId: 'left',\r\n id: line.name,\r\n checked: checkedBefore.includes(name),\r\n });\r\n }\r\n state.chartData.vars = chartVars;\r\n state.chartData.x = commonX;\r\n state.chartData.axisInfo.x.domain = [0, 24 * numDays];\r\n if (axisInfo.left) {\r\n // state.chartData.axisInfo.y.left.domain = axisInfo.left.range;\r\n state.chartData.axisInfo.y.left.domain = axisInfo.left.range;\r\n state.chartData.axisInfo.y.left.ticks = axisInfo.left.tickvals;\r\n state.chartData.axisInfo.y.left.ticksLabels = axisInfo.left.ticktext;\r\n }\r\n }\r\n } catch (err) { toast.error(t('houveErro')); console.error(err); }\r\n setState({ loadingChart: false });\r\n });\r\n }, [coolAutUnitId, state.dateStart, state.dateEnd, state.focusedInput]);\r\n\r\n function onMultidaysClick() {\r\n state.multiDays = !state.multiDays;\r\n if (!state.multiDays) {\r\n state.dateEnd = state.dateStart;\r\n }\r\n render();\r\n }\r\n\r\n function tooltipXLabelFormater(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(state.dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n const dateFinal = `${dd}/${mm}`;\r\n\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const min = Math.floor((Math.abs(hour) * 60) % 60);\r\n const ss = Math.floor((Math.abs(hour) * 60 * 60) % 60);\r\n\r\n return `${dateFinal} - ${String(hh).padStart(2, '0')}:${String(min).padStart(2, '0')}:${String(ss).padStart(2, '0')}`;\r\n }\r\n\r\n function tickXLabelFormaterDay(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const date = new Date(`${moment(state.dateStart).add(numDays + 1, 'days').format('YYYY-MM-DD')}T00:00:00Z`);\r\n const dd = String(date.getDate()).padStart(2, '0');\r\n const mm = String(date.getMonth() + 1).padStart(2, '0');\r\n\r\n const dateFinal = `${dd}/${mm}`;\r\n return `${dateFinal}`;\r\n }\r\n\r\n function tickXLabelFormaterHour(hour: number) {\r\n const numDays = Math.floor(hour / 24);\r\n const sign = hour - 24 * numDays < 0 ? '-' : '';\r\n const hh = Math.floor(Math.abs(hour)) - 24 * numDays;\r\n const mm = Math.floor((Math.abs(hour) * 60) % 60);\r\n return `${'\\n'} ${sign}${String(hh).padStart(2, '0')}:${String(mm).padStart(2, '0')}`;\r\n }\r\n\r\n const renderQuarterTickHour = (tickProps: any) => {\r\n const { x, y, payload } = tickProps;\r\n const { value, offset } = payload;\r\n const date = new Date(value);\r\n const month = date.getMonth();\r\n const quarterNo = Math.floor(month / 3) + 1;\r\n\r\n return {`${tickXLabelFormaterHour(value)}`};\r\n };\r\n\r\n const loading = state.loadingChart || state.loadingUnitsList;\r\n\r\n return (\r\n <>\r\n {(loading) && }\r\n {(!loading)\r\n && (\r\n
\r\n
\r\n {(state.deviceUnits) && (\r\n
\r\n setState({ selectedUnit: opt })}\r\n notNull\r\n style={{ minWidth: '200px', marginRight: '20px' }}\r\n />\r\n
\r\n )}\r\n \r\n {t('data')}\r\n
\r\n {(!state.multiDays) && (\r\n setState({ dateStart: value, dateEnd: value })}\r\n focused={state.focused}\r\n onFocusChange={({ focused }) => setState({ focused })}\r\n id=\"datepicker\"\r\n numberOfMonths={1}\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n {(state.multiDays) && (\r\n { setState({ dateStart: startDate, dateEnd: startDate !== state.dateStart ? null : endDate }); }} // PropTypes.func.isRequired,\r\n onFocusChange={(focused: 'endDate'|'startDate'|null) => setState({ focusedInput: focused })}\r\n focusedInput={state.focusedInput}\r\n noBorder\r\n isOutsideRange={(d) => !d.isBefore(state.tomorrow)}\r\n />\r\n )}\r\n \r\n
\r\n \r\n
\r\n {(state.chartData.vars) && (\r\n
\r\n { render(); }}\r\n onColorChanging={(color, line) => { line.color = color.hex; render(); }}\r\n />\r\n line.checked)}\r\n axisInfo={state.chartData.axisInfo}\r\n tooltipXLabelFormater={tooltipXLabelFormater}\r\n formaterXTick={state.numDays && state.numDays > 1 ? tickXLabelFormaterDay : tickXLabelFormaterHour}\r\n tickSecondX={renderQuarterTickHour}\r\n numDays={state.numDays}\r\n />\r\n
\r\n )}\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nconst ContentDate = styled.div`\r\n position: relative;\r\n border: 1px solid ${colors.GreyLight};\r\n border-radius: 5px;\r\n min-height: 50px;\r\n .react-datepicker__month-text--keyboard-selected {\r\n background-color: ${colors.BlueSecondary};\r\n }\r\n .react-datepicker__triangle {\r\n left: -130px !important;\r\n }\r\n .react-datepicker__header {\r\n background-color: white;\r\n border-bottom: none;\r\n }\r\n .react-datepicker-popper[data-placement^=\"bottom\"] .react-datepicker__triangle::after {\r\n border-bottom-color: white;\r\n }\r\n .react-datepicker-wrapper {\r\n display: block;\r\n .react-datepicker__input-container {\r\n input[type=\"text\"] {\r\n border: none;\r\n font-size: 12px;\r\n outline: none;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: #464555;\r\n }\r\n }\r\n }\r\n .SingleDatePicker {\r\n display: block;\r\n position: initial;\r\n }\r\n .SingleDatePickerInput {\r\n display: block;\r\n position: relative;\r\n border: none;\r\n .DateInput {\r\n display: block;\r\n position: relative;\r\n width: 100%;\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n width: 100%;\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateRangePickerInput {\r\n .DateRangePickerInput_arrow {\r\n width: 60px;\r\n }\r\n .DateInput {\r\n .DateInput_input {\r\n outline: none;\r\n font-size: 12px;\r\n line-height: 19px;\r\n padding: 0px 40px 0px 14px;\r\n color: ${colors.Grey400};\r\n }\r\n .DateInput_input__focused {\r\n border: none;\r\n }\r\n }\r\n }\r\n .DateInput_fang {\r\n z-index: 1;\r\n }\r\n .SingleDatePicker_picker {\r\n width: 100%;\r\n }\r\n .CalendarDay__selected,\r\n .CalendarDay__selected:active {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n color: ${colors.White};\r\n }\r\n .CalendarDay__selected:hover {\r\n background: ${colors.BlueSecondary};\r\n border: 1px double ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n .DayPickerKeyboardShortcuts_show__bottomRight:hover::before {\r\n border-right: 33px solid ${colors.BlueSecondary};\r\n }\r\n`;\r\n\r\nconst StyledCalendarIcon = styled(CalendarIcon)`\r\n position: absolute;\r\n top: 17px;\r\n right: 16px;\r\n`;\r\n\r\nconst DateLabel = styled.span`\r\n transition: all 0.2s;\r\n margin-top: -6px;\r\n margin-left: 16px;\r\n margin-right: 16px;\r\n color: ${colors.Blue700};\r\n font-size: 11px;\r\n font-weight: bold;\r\n`;\r\n// margin-left: 16px;\r\n// color: ${colors.Grey300};\r\n\r\nexport default withTransaction('CoolAutomationHist', 'component')(CoolAutomationHist);\r\n","import { useMemo, useRef } from 'react';\r\nimport queryString from 'query-string';\r\nimport { useHistory } from 'react-router-dom';\r\n\r\nimport { Breadcrumb2 } from '~/components';\r\n\r\nimport { Header, Headers2 } from '../Header';\r\n\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport default function IntegrLayout(props: {\r\n integrType: string,\r\n integrId: string,\r\n varsCfg?: any,\r\n}): JSX.Element {\r\n const history = useHistory();\r\n const { t } = useTranslation();\r\n\r\n const { integrType, integrId, varsCfg } = props;\r\n const isEdit = history.location.pathname.endsWith('/editar');\r\n\r\n const links = [\r\n {\r\n title: t('perfil'),\r\n link: `/integracoes/info/${integrType}/${integrId}/perfil`,\r\n visible: true,\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('tempoReal'),\r\n link: `/integracoes/info/${integrType}/${integrId}/tempo-real`,\r\n visible: ((integrType === 'diel' && varsCfg) || ['ness', 'water', 'coolautomation'].includes(integrType) || (integrType === 'diel' && integrId.startsWith('DMA'))),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('historico'),\r\n link: `/integracoes/info/${integrType}/${integrId}/historico`,\r\n visible: ((integrType === 'diel' && varsCfg && varsCfg.application && !['cg-et330', 'abb-nexus-ii', 'abb-ete-30', 'cg-em210', 'kron-mult-k', 'kron-mult-k-05', 'kron-mult-k-120', 'kron-ikron-03'].includes(varsCfg.application)) || ['ness', 'water', 'coolautomation'].includes(integrType) || (integrType === 'diel' && integrId.startsWith('DMA'))),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('editar'),\r\n link: `/integracoes/info/${integrType}/${integrId}/editar`,\r\n visible: !!isEdit,\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n return (\r\n
x.visible)} match={history} />\r\n );\r\n}\r\n\r\nexport function buildTabLink(aba: string, history: ReturnType) {\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n\r\n return `${linkBase}?${queryString.stringify({ ...queryPars, aba })}`;\r\n}\r\n\r\nexport function IntegrInlineTabs(props: {\r\n integrType: string,\r\n}): JSX.Element {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const { integrType } = props;\r\n\r\n const queryPars = queryString.parse(history.location.search);\r\n const linkBase = history.location.pathname;\r\n\r\n const allTabs = [\r\n {\r\n title: t('perfil'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'perfil' })}`,\r\n visible: true,\r\n isActive: (queryPars.aba === 'perfil') || (!queryPars.aba && integrType !== 'coolautomation'),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('tempoReal'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'tempo-real' })}`,\r\n visible: (['diel', 'ness', 'coolautomation'].includes(integrType) || (integrType === 'water' && queryPars.supplier === 'diel')),\r\n isActive: (queryPars.aba === 'tempo-real') || (!queryPars.aba && integrType === 'coolautomation'),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('historico'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'historico' })}`,\r\n visible: (['diel', 'water', 'coolautomation'].includes(integrType)),\r\n isActive: (queryPars.aba === 'historico'),\r\n ref: useRef(null),\r\n },\r\n {\r\n title: t('editar'),\r\n link: `${linkBase}?${queryString.stringify({ ...queryPars, aba: 'editar' })}`,\r\n visible: (queryPars.aba === 'editar'),\r\n isActive: (queryPars.aba === 'editar'),\r\n ref: useRef(null),\r\n },\r\n ];\r\n\r\n return (\r\n x.visible)} />\r\n );\r\n}\r\n\r\nexport function IntegrBreadCrumbs(props: {\r\n integrId: string,\r\n integrType: string,\r\n devInfo: null | {\r\n CLIENT_ID: number,\r\n CLIENT_NAME: string,\r\n UNIT_NAME: string,\r\n UNIT_ID: number,\r\n machineName: string,\r\n dataSource: string,\r\n automatedMachine?: string,\r\n TIMEZONE_ID?: number\r\n TIMEZONE_AREA?: string\r\n TIMEZONE_OFFSET?: number\r\n },\r\n}) {\r\n const { t } = useTranslation();\r\n const { integrId, devInfo } = props;\r\n const integrType = props.integrType === 'water' ? t('agua') : props.integrType;\r\n\r\n const bcrumbs = useMemo(() => {\r\n const path = [] as {}[];\r\n // if (devInfo && devInfo.UNIT_NAME) {\r\n // path.push({ text: 'Unidades', link: '/analise/unidades' });\r\n // path.push({ text: devInfo.UNIT_NAME, link: `/analise/unidades/${devInfo.UNIT_ID}` });\r\n // if (devInfo.machineName) {\r\n // path.push({ text: devInfo.machineName, link: null });\r\n // }\r\n // }\r\n // path.push({ text: `Integração ${integrType}`, link: `/integracoes?fornecedor=${integrType}` });\r\n if (integrType === 'diel' && devInfo && devInfo.CLIENT_ID && devInfo.UNIT_ID) {\r\n path.push({ text: devInfo.CLIENT_NAME, link: '/visao-geral' });\r\n path.push({ text: devInfo.UNIT_NAME, link: `/analise/unidades/${devInfo.UNIT_ID}` });\r\n if (devInfo.machineName) {\r\n path.push({ text: devInfo.machineName, link: `/integracoes/info/diel/${devInfo.dataSource}/perfil` });\r\n }\r\n else if (devInfo.automatedMachine) {\r\n path.push({ text: devInfo.automatedMachine, link: null });\r\n }\r\n path.push({ text: devInfo.dataSource, link: null });\r\n } else if (devInfo) {\r\n path.push({ text: t('integracoes'), link: '/integracoes' });\r\n path.push({ text: integrType.toUpperCase(), link: `/integracoes?fornecedor=${integrType}` });\r\n path.push({ text: (devInfo && devInfo.dataSource) || integrId, link: null }); // match.url\r\n }\r\n return ();\r\n }, [devInfo]);\r\n return (\r\n <>\r\n {bcrumbs}\r\n
\r\n \r\n );\r\n}\r\n","import { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\nimport {\r\n ActionButton,\r\n ModalWindow,\r\n ToggleSwitch,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { apiCall, ApiResps } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { DeleteOutlineIcon, EditIcon } from '~/icons';\r\n\r\nimport { convertCoolAutomationSchedTime, CoolAutomationSchedForm, ScheduleInfo } from '../IntegrRealTime/CoolAutomationRealTime';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nexport const CoolAutomationEdit = (props: {\r\n schedInfo: ApiResps['/get-integration-info']['coolautomation']\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n modalEditSchedule: null as null|{\r\n addEdit: 'Add'|'Edit'\r\n scheduleId: string\r\n name: string\r\n active: boolean\r\n start_time: string\r\n start_time_error: string\r\n end_time: string\r\n end_time_error: string\r\n selectedDays: {\r\n mon: boolean\r\n tue: boolean\r\n wed: boolean\r\n thu: boolean\r\n fri: boolean\r\n sat: boolean\r\n sun: boolean\r\n }\r\n useSetpoint: boolean\r\n setpointValue: string\r\n },\r\n });\r\n\r\n async function onDeleteClick(item: ScheduleInfo) {\r\n try {\r\n if (!window.confirm(t('temCertezaQueDesejaExcluir'))) return;\r\n // setState({ savingSched: true });\r\n await apiCall('/coolautomation/delete-unit-schedule', {\r\n scheduleId: item.id,\r\n });\r\n toast.success(t('sucessoProgramacaoExcluida'));\r\n window.location.reload();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n // setState({ savingSched: false });\r\n }\r\n\r\n async function onSaveEditClick() {\r\n try {\r\n // setState({ savingSched: true });\r\n if (!state.modalEditSchedule) return;\r\n\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.start_time)) return toast.error(t('erroHorarioInvalido'));\r\n if (!/^[0-2][0-9]:[0-5][0-9]$/.test(state.modalEditSchedule.end_time)) return toast.error(t('erroHorarioInvalido'));\r\n const days = [] as ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[];\r\n if (state.modalEditSchedule.selectedDays.mon) days.push('Monday');\r\n if (state.modalEditSchedule.selectedDays.tue) days.push('Tuesday');\r\n if (state.modalEditSchedule.selectedDays.wed) days.push('Wednesday');\r\n if (state.modalEditSchedule.selectedDays.thu) days.push('Thursday');\r\n if (state.modalEditSchedule.selectedDays.fri) days.push('Friday');\r\n if (state.modalEditSchedule.selectedDays.sat) days.push('Saturday');\r\n if (state.modalEditSchedule.selectedDays.sun) days.push('Sunday');\r\n\r\n const { info: newSchedule } = await apiCall('/coolautomation/alter-unit-schedule', {\r\n scheduleId: state.modalEditSchedule.scheduleId,\r\n isDisabled: !state.modalEditSchedule.active,\r\n name: state.modalEditSchedule.name,\r\n powerOnTime: state.modalEditSchedule.start_time, // \"23:59\"\r\n powerOffTime: state.modalEditSchedule.end_time, // \"23:59\"\r\n setpoint: state.modalEditSchedule.useSetpoint ? Number(state.modalEditSchedule.setpointValue) : null,\r\n days, // ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[]\r\n });\r\n state.modalEditSchedule = null;\r\n toast.success(t('sucessoProgramacaoAlterada'));\r\n window.location.reload();\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n // setState({ savingSched: false });\r\n }\r\n\r\n function editAddProgramming(item: ScheduleInfo) {\r\n try {\r\n state.modalEditSchedule = {\r\n addEdit: item ? 'Edit' : 'Add',\r\n scheduleId: item && item.id,\r\n name: (item && item.name) || '',\r\n active: !(item && item.isDisabled),\r\n start_time: item ? convertCoolAutomationSchedTime(item.powerOnTime) : '',\r\n start_time_error: '',\r\n end_time: (item && item.powerOffTime != null) ? convertCoolAutomationSchedTime(item.powerOffTime) : '',\r\n end_time_error: '',\r\n selectedDays: {\r\n mon: item ? item.days.includes('Monday') : false,\r\n tue: item ? item.days.includes('Tuesday') : false,\r\n wed: item ? item.days.includes('Wednesday') : false,\r\n thu: item ? item.days.includes('Thursday') : false,\r\n fri: item ? item.days.includes('Friday') : false,\r\n sat: item ? item.days.includes('Saturday') : false,\r\n sun: item ? item.days.includes('Sunday') : false,\r\n },\r\n useSetpoint: item ? (item.setpoint != null) : false,\r\n setpointValue: item ? (item.setpoint != null) ? String(item.setpoint) : '24' : '24',\r\n };\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n async function switchScheduleEnabled(item: ScheduleInfo) {\r\n try {\r\n const newState = !item.isDisabled;\r\n const { info: newSchedule } = await apiCall('/coolautomation/alter-unit-schedule', {\r\n scheduleId: item.id,\r\n isDisabled: newState,\r\n });\r\n item.isDisabled = newSchedule.isDisabled;\r\n render();\r\n } catch (err) { console.log(err); toast.error(t('houveErro')); }\r\n }\r\n\r\n return (\r\n
\r\n
{t('programacoesAdicionadas')}
\r\n {(props.schedInfo && (props.schedInfo.schedules.length === 0)) && (\r\n
(nenhuma)
\r\n )}\r\n {(props.schedInfo && (props.schedInfo.schedules.length > 0)) && (\r\n \r\n )}\r\n {(state.modalEditSchedule) && (\r\n { setState({ modalEditSchedule: null }); }}>\r\n { setState({ modalEditSchedule: null }); }}\r\n />\r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport const CoolAutomationSchedTable = (props: {\r\n schedInfo: ApiResps['/get-integration-info']['coolautomation']\r\n onDeleteClick?: (item: ScheduleInfo) => void\r\n onEditClick?: (item: ScheduleInfo) => void\r\n onSwitchClick?: (item: ScheduleInfo) => void\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const hasActions = !!(props.onDeleteClick || props.onEditClick);\r\n const daysTransl: { [k: string]: string } = {\r\n Monday: t('diaSeg').toLocaleUpperCase(),\r\n Tuesday: t('diaTer').toLocaleUpperCase(),\r\n Wednesday: t('diaQua').toLocaleUpperCase(),\r\n Thursday: t('diaQui').toLocaleUpperCase(),\r\n Friday: t('diaSex').toLocaleUpperCase(),\r\n Saturday: t('diaSab').toLocaleUpperCase(),\r\n Sunday: t('diaDom').toLocaleUpperCase(),\r\n };\r\n return (\r\n
\r\n {(props.schedInfo) && (\r\n \r\n \r\n \r\n {t('nome')}\r\n {t('ambiente')}\r\n {t('status')}\r\n {t('horarioDeInicio')}\r\n {t('horarioTermino')}\r\n {t('temperatura')}\r\n {t('programacao')}\r\n {hasActions && {t('acoes')}}\r\n \r\n \r\n \r\n {props.schedInfo.schedules.map((rowVar) => (\r\n \r\n {rowVar.name || '-'}\r\n {rowVar.unitName || rowVar.unit || '-'}\r\n \r\n {props.onSwitchClick && (\r\n { props.onSwitchClick!(rowVar); }}\r\n style={{ marginRight: '10px' }}\r\n />\r\n )}\r\n {(rowVar.isDisabled === false) ? t('ativo') : (rowVar.isDisabled === true) ? t('inativo') : '-'}\r\n \r\n {convertCoolAutomationSchedTime(rowVar.powerOnTime) || '-'}\r\n {convertCoolAutomationSchedTime(rowVar.powerOffTime) || '-'}\r\n {(rowVar.setpoint == null) ? '-' : `${rowVar.setpoint}°C`}\r\n {(rowVar.days && rowVar.days.map((x) => daysTransl[x] || x).join('-')) || '-'}\r\n {hasActions && (\r\n \r\n {props.onEditClick && (\r\n props.onEditClick!(rowVar)} variant=\"blue-inv\">\r\n \r\n \r\n )}\r\n {props.onDeleteClick && (\r\n props.onDeleteClick!(rowVar)} variant=\"red-inv\">\r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n ))}\r\n \r\n \r\n )}\r\n
\r\n );\r\n};\r\n\r\nexport const TableScheds = styled.table`\r\n white-space: nowrap;\r\n border-collapse: collapse;\r\n & tbody {\r\n & tr {\r\n height: 35px;\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n }\r\n & td {\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n padding: 0 10px;\r\n font-size: 0.71rem\r\n }\r\n }\r\n & thead {\r\n & tr {\r\n height: 40px;\r\n display: table-row;\r\n }\r\n & th {\r\n flex: 1;\r\n justify-content: space-between;\r\n align-items: center;\r\n text-align: left;\r\n padding: 0 10px;\r\n word-break: normal;\r\n border-bottom: solid 1px ${colors.Grey};\r\n font-size: 0.75rem;\r\n }\r\n }\r\n`;\r\n","import styled from 'styled-components';\r\n\r\nimport { colors } from '~/styles/colors';\r\n\r\nexport const InfoItem = styled.div`\r\nwidth: 150px;\r\nmargin-right: 20px;\r\nmargin-bottom: 30px;\r\n`;\r\n\r\nexport const TableNew2 = styled.table`\r\nwidth: 100%;\r\nwhite-space: nowrap;\r\nborder-collapse: collapse;\r\n& tbody {\r\n & tr {\r\n height: 35px;\r\n &:hover {\r\n background-color: rgba(0, 0, 0, 0.05);\r\n }\r\n }\r\n & td {\r\n text-align: left;\r\n color: ${colors.DarkGrey};\r\n padding: 0 10px;\r\n }\r\n}\r\n& thead {\r\n & tr {\r\n height: 40px;\r\n display: table-row;\r\n border-bottom: solid 1px ${colors.Grey};\r\n }\r\n & th {\r\n flex: 1;\r\n text-align: left;\r\n align-items: center;\r\n padding: 0 10px;\r\n word-break: normal;\r\n }\r\n}\r\n`;\r\n\r\nexport const Title = styled.h1`\r\n font-size: 1.25em;\r\n color: #363BC4;\r\n font-weight: bold;\r\n margin-bottom: 16px;\r\n`;\r\n\r\nexport const IconWrapper = styled.div`\r\n width: 100%;\r\n height: 27px;\r\n display: flex;\r\n align-items: center;\r\n justify-content: center;\r\n svg {\r\n width: 25px;\r\n height: 19px;\r\n }\r\n`;\r\n\r\nexport const StatusDevice = styled.div`\r\n border: 1px solid #D7D7D7;\r\n border-radius: 8px;\r\n padding: 10px 20px;\r\n display: flex;\r\n flex-direction: row;\r\n justify-content: space-between;\r\n align-items: center;\r\n min-width: 260px;\r\n font-size: 12px;\r\n`;\r\n","import { apiCall, ApiResps, apiSpecial } from '~/providers';\r\nimport {\r\n InfoItem, Title,\r\n} from './styles';\r\nimport {\r\n Carousel,\r\n} from '~/components';\r\nimport {\r\n driApplicationOpts,\r\n driChillerCarrierApplications,\r\n driFancoilsApplications,\r\n driMeterApplications,\r\n driProtocolsOpts,\r\n driVAVsApplications,\r\n} from '~/helpers/driConfigOptions';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { AssetStatus } from '~/components/AssetStatus';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { DRIScheduleSummary } from '../../SchedulesModals/DRI_Shedule';\r\nimport { useEffect, useState } from 'react';\r\n\r\nfunction getKeyByValue(object, value) {\r\n return Object.keys(object).find((key) => object[key] === value);\r\n}\r\n\r\nexport const DRIPRofile = (props: { devInfo: ApiResps['/get-integration-info']['info'], varsCfg?: { application: string, protocol: string, worksheetName: string }|null|undefined }): JSX.Element => {\r\n const { devInfo, varsCfg } = props;\r\n const { t } = useTranslation();\r\n\r\n async function handleGetAssetImages() {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'DRIS',\r\n });\r\n }\r\n async function handlePostAssetImage(photo: Blob) {\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'DRIS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n async function handleDeleteAssetImage(imageUrl: string) {\r\n return apiCall('/upload-service/delete-image',\r\n {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'DRIS',\r\n filename: imageUrl,\r\n });\r\n }\r\n const [windowSize, setWindowSize] = useState([\r\n window.innerWidth,\r\n window.innerHeight,\r\n ]);\r\n\r\n useEffect(() => {\r\n const handleWindowResize = () => {\r\n setWindowSize([window.innerWidth, window.innerHeight]);\r\n };\r\n\r\n window.addEventListener('resize', handleWindowResize);\r\n\r\n return () => {\r\n window.removeEventListener('resize', handleWindowResize);\r\n };\r\n });\r\n\r\n const getDriModel = (varsCfg) => (\r\n getKeyByValue(driMeterApplications, varsCfg.application)\r\n ?? getKeyByValue(driVAVsApplications, varsCfg.application)\r\n ?? getKeyByValue(driFancoilsApplications, varsCfg.application)\r\n ?? varsCfg?.chillerModel\r\n ?? '-'\r\n );\r\n\r\n const getDriApplication = (varsCfg) => (\r\n varsCfg && (\r\n getKeyByValue(driApplicationOpts, varsCfg.application)\r\n || (getKeyByValue(driMeterApplications, varsCfg.application) && t('medidorEnergia'))\r\n || (getKeyByValue(driVAVsApplications, varsCfg.application) && 'VAV')\r\n || (getKeyByValue(driFancoilsApplications, varsCfg.application) && 'Fancoil')\r\n || (getKeyByValue(driChillerCarrierApplications, varsCfg.application) && 'Chiller Carrier')\r\n ) || '-'\r\n );\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t('informacoes')}\r\n \r\n {t('fonteDados')}\r\n
\r\n {devInfo.dataSource || '-'}\r\n
\r\n \r\n \r\n {`${t('aplicacao')}:`}\r\n
\r\n {getDriApplication(varsCfg)}\r\n
\r\n {varsCfg && (\r\n getKeyByValue(driMeterApplications, varsCfg.application)\r\n || getKeyByValue(driVAVsApplications, varsCfg.application)\r\n || getKeyByValue(driFancoilsApplications, varsCfg.application)\r\n || getKeyByValue(driChillerCarrierApplications, varsCfg.application)\r\n ) && (\r\n \r\n {`${t('modelo')}:`}\r\n
\r\n {getDriModel(varsCfg)}\r\n
\r\n )}\r\n
\r\n\r\n \r\n \r\n {`${t('protocoloComunicacao')}:`}\r\n
\r\n {varsCfg && getKeyByValue(driProtocolsOpts, varsCfg.protocol) || '-'}\r\n
\r\n \r\n {`${t('planilha')}:`}\r\n
\r\n {varsCfg?.worksheetName ?? '-'}\r\n
\r\n
\r\n\r\n
\r\n\r\n {(['fancoil', 'carrier-ecosplit'].includes(varsCfg?.application ?? '')) && (\r\n \r\n Funcionamento\r\n \r\n \r\n )}\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n \r\n \r\n\r\n );\r\n};\r\n","import { useTranslation } from 'react-i18next';\r\nimport { ApiResps } from '~/providers';\r\nimport { InfoItem } from './styles';\r\nimport { t } from 'i18next';\r\n\r\nexport const IntegrDevInfo = (props: { devInfo: ApiResps['/get-integration-info']['info'] }): JSX.Element => {\r\n const { devInfo } = props;\r\n const { t } = useTranslation();\r\n\r\n return (\r\n
\r\n \r\n {`${t('estado')}:`}\r\n
\r\n {devInfo.STATE_ID || '-'}\r\n
\r\n \r\n {`${t('cidade')}:`}\r\n
\r\n {devInfo.CITY_NAME || '-'}\r\n
\r\n \r\n {`${t('unidade')}:`}\r\n
\r\n {devInfo.UNIT_NAME || '-'}\r\n
\r\n \r\n {`${t('cliente')}:`}\r\n
\r\n {devInfo.CLIENT_NAME || '-'}\r\n
\r\n \r\n {`${t('vertical')}:`}\r\n
\r\n {devInfo.vertical || '-'}\r\n
\r\n \r\n {t('fonteDados')}\r\n
\r\n {devInfo.dataSource || '-'}\r\n
\r\n \r\n {`${t('metodo')}:`}\r\n
\r\n {devInfo.method || '-'}\r\n
\r\n \r\n {`${t('maquina')}:`}\r\n
\r\n {devInfo.machineName || '-'}\r\n
\r\n \r\n {`${t('ambiente')}:`}\r\n
\r\n {devInfo.roomName || '-'}\r\n
\r\n \r\n {`${t('fornecedor')}:`}\r\n
\r\n {devInfo.supplier || '-'}\r\n
\r\n \r\n {`${t('tipo')}:`}\r\n
\r\n {devInfo.equipType || '-'}\r\n
\r\n \r\n {`${t('status')}:`}\r\n
\r\n {devInfo.status || '-'}\r\n
\r\n
\r\n );\r\n};\r\n","import moment from 'moment';\r\nimport { useEffect, useState } from 'react';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport { Carousel } from '~/components';\r\nimport { apiCall, ApiResps, apiSpecial } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { Data, DataText } from '../../Assets/AssetInfo/styles';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { thousandPointFormat } from '~/helpers/thousandFormatNumber';\r\nimport { toast } from 'react-toastify';\r\nimport i18n from '~/i18n';\r\nimport { useWebSocket } from '~/helpers/wsConnection';\r\nimport {\r\n RegularSignalIcon,\r\n NoSignalIcon,\r\n BadSignalIcon,\r\n GoodSignalIcon,\r\n GreatSignalIcon,\r\n} from '~/icons';\r\nimport { IconWrapper, StatusDevice } from './styles';\r\n\r\nexport const IntegrWaterInfo = (props: {\r\n devInfo: ApiResps['/get-integration-info']['info'],\r\n integrId: string,\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const { devInfo, integrId } = props;\r\n const [bateryState, setBateryState] = useState('');\r\n const [rfModule, setRfModule] = useState('');\r\n const [lastReadingDate, setLastReadingDate] = useState(null);\r\n const [lastRSSI, setLastRSSI] = useState(0);\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n\r\n useEffect(() => {\r\n (async () => {\r\n if (!integrId.startsWith('DMA')) {\r\n const laagerUsage = await apiCall('/laager/get-informations', {\r\n unit_id: integrId,\r\n });\r\n\r\n setBateryState(laagerUsage.batery_state);\r\n setRfModule(laagerUsage.module_rf.toString());\r\n await verifyLastReadingDateLaager(integrId);\r\n }\r\n })();\r\n }, []);\r\n\r\n useWebSocket(onWsOpen, onWsMessage, beforeWsClose);\r\n\r\n function getRssiIcon(RSSI: number, status: string) {\r\n if (RSSI < 0 && status === 'ONLINE') {\r\n if (RSSI > -50) return ;\r\n if (RSSI > -60) return ;\r\n if (RSSI > -70) return ;\r\n return ;\r\n }\r\n return ;\r\n }\r\n\r\n async function verifyLastReadingDateLaager(device_code: string) {\r\n try {\r\n const response = await apiCall('/laager/get-informations', {\r\n unit_id: device_code,\r\n });\r\n if (response?.last_reading_date) {\r\n setLastReadingDate(moment(response.last_reading_date).format('lll'));\r\n setLastRSSI(-1);\r\n } else {\r\n setLastReadingDate(t('erroNaoFoiRealizadaNenhumaLeitura'));\r\n }\r\n } catch (error) {\r\n toast.error(t('erroCarregarInformacoes'));\r\n console.error(error);\r\n }\r\n }\r\n\r\n const changeSamplingPeriod = async (interval: number) => {\r\n try {\r\n await apiCall('/dma/set-sampling-period', { dmaId: integrId, samplingPeriod: interval });\r\n } catch (err) {\r\n toast.error(t('erroTelemetrias'));\r\n }\r\n };\r\n\r\n function onWsOpen(wsConn) {\r\n if (integrId?.startsWith('DMA')) {\r\n wsConn.send({ type: 'dmaSubscribeRealTime', data: { DMA_ID: integrId } });\r\n changeSamplingPeriod(10);\r\n }\r\n }\r\n\r\n function onWsMessage(response) {\r\n if (response && response.type === 'dmaTelemetry') {\r\n setLastReadingDate(moment(response.data?.timestamp).format('lll'));\r\n setLastRSSI(response.data?.RSSI ?? 0);\r\n }\r\n }\r\n\r\n function beforeWsClose(wsConn) {\r\n changeSamplingPeriod(900);\r\n wsConn.send({ type: 'dmaUnsubscribeRealTime' });\r\n }\r\n\r\n async function handleGetAssetImages() {\r\n if (integrId.startsWith('DMA')) {\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'DMAS',\r\n });\r\n }\r\n return apiCall('/upload-service/get-images', {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'LAAGER',\r\n });\r\n }\r\n async function handlePostAssetImage(photo: Blob) {\r\n if (integrId.startsWith('DMA')) {\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'DMAS',\r\n file: photo,\r\n },\r\n );\r\n }\r\n\r\n return apiSpecial['/upload-service/upload-image'](\r\n {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'LAAGER',\r\n file: photo,\r\n },\r\n );\r\n }\r\n async function handleDeleteAssetImage(imageUrl: string) {\r\n if (integrId.startsWith('DMA')) {\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'DMAS',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n return apiCall('/upload-service/delete-image', {\r\n referenceId: devInfo.DEVICE_ID!,\r\n referenceType: 'LAAGER',\r\n filename: imageUrl,\r\n });\r\n }\r\n\r\n const handleDate = () => (\r\n devInfo.installationDate ? moment(devInfo.installationDate?.substring(0, 10)).format('ll') === t('dataInvalida') ? '-' : moment(devInfo.installationDate?.substring(0, 10)).format('ll') : '-'\r\n );\r\n\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n {integrId === '' ? 'Ambiente virtual sem Dispositivo' : integrId.startsWith('DMA') ? 'DMA ID' : t('idDaUnidadeLaager')}\r\n \r\n {devInfo.integrId || '-'}\r\n \r\n\r\n \r\n \r\n {t('fabricante')}\r\n \r\n {devInfo.supplier || '-'}\r\n \r\n\r\n {!integrId.startsWith('DMA') && (\r\n \r\n \r\n {t('moduloRf')}\r\n \r\n {rfModule || '-'}\r\n \r\n )}\r\n\r\n {!integrId.startsWith('DMA') && (\r\n \r\n \r\n {t('statusBateria')}\r\n \r\n {bateryState || '-'}\r\n \r\n )}\r\n\r\n \r\n \r\n {t('hidrometro')}\r\n \r\n {devInfo.hydrometerModel || '-'}\r\n \r\n\r\n \r\n \r\n {t('localDeInstalacao')}\r\n \r\n {devInfo.installationLocation || '-'}\r\n \r\n\r\n \r\n \r\n {t('dataInstalacao')}\r\n \r\n {handleDate()}\r\n \r\n\r\n \r\n \r\n {t('capacidadeTotalReservatorios')}\r\n \r\n {thousandPointFormat(devInfo.totalCapacity, true) || '-'}\r\n \r\n\r\n \r\n \r\n {t('totalDeReservatorios')}\r\n \r\n {devInfo.quantityOfReservoirs || '-'}\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n {t('status')}\r\n \r\n \r\n {getRssiIcon(lastRSSI, devInfo.status)}\r\n \r\n
\r\n \r\n \r\n {t('ultimaLeitura')}\r\n \r\n {lastReadingDate ?? '-'}\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n {integrId !== '' && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n
\r\n );\r\n};\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport styled from 'styled-components';\r\nimport {\r\n Button,\r\n Card,\r\n Loader,\r\n} from '~/components';\r\nimport jsonTryParse from '~/helpers/jsonTryParse';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport IntegrLayout, { IntegrBreadCrumbs } from '~/pages/Analysis/Integrations/IntegrLayout';\r\nimport { apiCall, ApiResps } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport { CardsCfg } from '../IntegrEdit';\r\nimport { CoolAutomationSchedTable } from '../IntegrEdit/CoolAutomationEdit';\r\nimport { DRIPRofile } from './DRIProfile';\r\nimport { IntegrDevInfo } from './IntegrDevInfo';\r\nimport { IntegrWaterInfo } from './IntegrWaterInfo';\r\nimport { TableNew2 } from './styles';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nexport const IntegrPerfil = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const match = useRouteMatch<{ integrType: 'diel'|'ness'|'greenant'|'coolautomation'|'water', integrId: string }>();\r\n const { integrType, integrId } = match.params;\r\n\r\n const [state, render, setState] = useStateVar(() => ({\r\n isLoading: true,\r\n devInfoResp: null as (null|ApiResps['/get-integration-info']),\r\n }));\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n setState({ isLoading: true });\r\n let response;\r\n\r\n if (integrId.startsWith('DMA')) {\r\n response = await apiCall('/get-integration-info', { supplier: 'diel-dma', integrId });\r\n } else if (integrType === 'water') {\r\n response = await apiCall('/get-integration-info', { supplier: 'laager', integrId });\r\n } else {\r\n response = await apiCall('/get-integration-info', { supplier: integrType, integrId });\r\n }\r\n state.devInfoResp = response;\r\n } catch (err) {\r\n toast.error(t('houveErro'));\r\n console.log(err);\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.devInfoResp?.info?.DEVICE_ID, t('perfil'))}\r\n \r\n \r\n \r\n
\r\n {state.isLoading && (\r\n \r\n )}\r\n {(!state.isLoading) && state.devInfoResp\r\n && (\r\n \r\n )}\r\n
\r\n \r\n );\r\n};\r\n\r\nexport function IntegrPerfilContents(props: {\r\n integrType: string\r\n integrId: string\r\n devInfoResp: ApiResps['/get-integration-info'],\r\n editLink: null|string\r\n}): JSX.Element {\r\n const { t } = useTranslation();\r\n const history = useHistory();\r\n const { integrType, integrId, devInfoResp } = props;\r\n const [profile] = useState(getUserProfile);\r\n\r\n const [state, render, setState] = useStateVar(() => ({\r\n isLoading: true,\r\n varsCfg: null as (null|ApiResps['/get-integration-info']['dri']),\r\n varsList: [] as {\r\n varId: string\r\n name: string\r\n currVal?: string|null\r\n valUnit?: string\r\n card?: string\r\n subcard?: string\r\n timestamp?: string\r\n relevance?: string | number\r\n }[],\r\n coolautomation: null as null|{\r\n schedules: {\r\n days: ('Monday'|'Tuesday'|'Wednesday'|'Thursday'|'Friday'|'Saturday'|'Sunday')[],\r\n isDisabled: boolean\r\n endActionType: number\r\n scheduleCategory: number\r\n dates: unknown[]\r\n name: string\r\n powerOnTime: number\r\n powerOffTime?: number\r\n operationMode?: number\r\n setpoint: number\r\n system?: string\r\n unit?: string\r\n id: string\r\n }[]\r\n },\r\n }));\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n setState({ isLoading: true });\r\n const response = props.devInfoResp;\r\n state.varsCfg = (response.dri);\r\n state.varsList = (response.dri && response.dri.varsList) || [];\r\n state.coolautomation = response.coolautomation || null;\r\n const cardsCfg = (response.cardsCfg && jsonTryParse(response.cardsCfg)) || null;\r\n if (cardsCfg && cardsCfg.varscards) {\r\n for (const rowVar of state.varsList) {\r\n if (cardsCfg.varscards[rowVar.varId]) {\r\n rowVar.card = cardsCfg.varscards[rowVar.varId].card;\r\n rowVar.subcard = cardsCfg.varscards[rowVar.varId].subcard;\r\n rowVar.relevance = cardsCfg.varscards[rowVar.varId].relevance;\r\n rowVar.valUnit = cardsCfg.varscards[rowVar.varId].valUnit;\r\n }\r\n }\r\n }\r\n } catch (err) {\r\n toast.error(t('houveErro'));\r\n console.log(err);\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }, []);\r\n\r\n return (\r\n <>\r\n
\r\n {state.isLoading && (\r\n \r\n )}\r\n {(devInfoResp.info && !state.isLoading) && (\r\n <>\r\n {(integrType === 'diel' && integrId.startsWith('DRI')) ? (\r\n \r\n <>\r\n \r\n {((profile.manageAllClients && (['diel'].includes(integrType))) || profile.permissions.isInstaller || profile.adminClientProg?.CLIENT_MANAGE.some((item) => item === devInfoResp.info?.CLIENT_ID)) && props.editLink && (\r\n
\r\n history.push(props.editLink!)}\r\n variant=\"primary\"\r\n >\r\n {`${t('editar')}`}\r\n \r\n
\r\n )}\r\n \r\n
\r\n\r\n )\r\n : (\r\n \r\n {((integrType === 'water') || (integrId.startsWith('DMA') && integrType === 'diel')) && (\r\n <>\r\n {t('informacoes')}\r\n \r\n \r\n )}\r\n\r\n {(integrType !== 'water' && integrType !== 'diel') && (\r\n <>\r\n
{t('informacoes')}
\r\n \r\n \r\n )}\r\n\r\n {(profile.manageAllClients && (['water', 'coolautomation'].includes(integrType) || integrId.startsWith('DMA')) || profile.permissions.isInstaller) && props.editLink && (\r\n
\r\n history.push(props.editLink!)}\r\n variant=\"primary\"\r\n >\r\n {t('editar')}\r\n \r\n
\r\n )}\r\n\r\n
\r\n )}\r\n \r\n )}\r\n
\r\n\r\n {(state.coolautomation) && (\r\n
\r\n \r\n
\r\n
{t('programacoesAdicionadas')}
\r\n {(state.coolautomation.schedules.length === 0) && (\r\n
{t('nenhuma')}
\r\n )}\r\n {(state.coolautomation.schedules.length > 0) && (\r\n \r\n )}\r\n
\r\n
\r\n
\r\n )}\r\n \r\n );\r\n}\r\n\r\nexport const Title = styled.h1`\r\n font-size: 1.5em;\r\n color: ${colors.Grey400};\r\n font-weight: bold;\r\n`;\r\n\r\nexport const CardElement = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n`;\r\n\r\n//
Protocolo de Comunicação
\r\n//
Planilha
\r\n//
Dados Recebidos
\r\n//
Tabela com ID, Descrição (nome da variável), Valor Atual, Un. Medida, Card, Subcard
\r\n\r\nexport default withTransaction('IntegrPerfil', 'component')(IntegrPerfil);\r\n","import { useState, useEffect, SetStateAction } from 'react';\r\nimport { t } from 'i18next';\r\nimport { Box, Flex } from 'reflexbox';\r\nimport styled from 'styled-components';\r\nimport {\r\n Button, Input, Select, Loader, ClearSelect,\r\n} from '~/components';\r\nimport { ContentDate, Label, StyledCalendarIcon } from '~/pages/Overview/Default/styles';\r\nimport { Title } from '../../Integrations/IntegrPerfil';\r\nimport moment from 'moment';\r\nimport { SingleDatePicker } from 'react-dates';\r\nimport i18n from '~/i18n';\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport { toast } from 'react-toastify';\r\nimport { apiCall } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\nimport { Data, DataText } from '../../Assets/AssetInfo/styles';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { AxiosError } from 'axios';\r\nimport { useHistory } from 'react-router';\r\nimport SelectSearch, { fuzzySearch } from 'react-select-search';\r\nimport { SearchInput } from '../../styles';\r\n\r\nconst comboOptions: string[] = [\r\n t('emSerieHidrometroUnidade'),\r\n t('proximoCaixaDagua'),\r\n t('somenteSensorHidrometroUnidade'),\r\n t('outro'),\r\n];\r\n\r\nconst comboHydrometerOptions: string[] = ['Elster S120 (1 L/pulso)', 'ZENNER ETKD-P-N (10 L/pulso)', 'ZENNER MTKD-AM-I (10 L/pulso)',\r\n 'Saga Unijato US-1.5 (1 L/pulso)', 'Saga Unijato US-3.0 (1 L/pulso)', 'Saga Unijato US-5.0 (1 L/pulso)'];\r\n\r\ntype WaterData = {\r\n installationLocation?: string | null,\r\n installationDate?: string | null,\r\n totalCapacity?: number | null,\r\n quantityOfReservoirs?: number | null,\r\n hydrometerModel?: string | null,\r\n clientId?: number | null,\r\n unitId?: number | null,\r\n}\r\n\r\nexport default function WaterProfileEdit(props: {\r\n integrType: string,\r\n integrId: string,\r\n prevQuantityOfReservoirs?: number | null,\r\n prevTotalCapacity?: number | null,\r\n prevInstallationDate?: string | null,\r\n prevInstallationLocation?: string | null,\r\n prevHydrometerModel?: string | null,\r\n supplier?: string | null,\r\n clientInfo: { NAME: string, ID: number},\r\n unitInfo: { NAME: string, ID: number},\r\n handleUpdateIntegrPerfil: (installationLocation?: string | null, installationDate?: string | null, totalCapacity?: number | null, quantityOfReservoirs?: number | null, hydrometerModel?: string | null,) => void,\r\n}): JSX.Element {\r\n moment.locale(i18n.language === 'pt' ? 'pt-BR' : 'en');\r\n const {\r\n integrType, integrId, prevQuantityOfReservoirs, supplier, prevHydrometerModel, prevTotalCapacity, prevInstallationDate, prevInstallationLocation, handleUpdateIntegrPerfil, clientInfo, unitInfo,\r\n } = props;\r\n const [state, render, setState] = useStateVar({\r\n comboClients: [] as { label: string, value: number }[],\r\n comboUnits: [] as { label: string, value: number }[],\r\n client: clientInfo.NAME || '',\r\n clientId: clientInfo.ID || null,\r\n unit: unitInfo.NAME || '',\r\n unitId: unitInfo.ID || null,\r\n });\r\n\r\n const getInstallationLocation = () => {\r\n if (!prevInstallationLocation) return '';\r\n if (comboOptions.includes(prevInstallationLocation)) return prevInstallationLocation;\r\n return t('outro');\r\n };\r\n const getHydrometerModel = () => {\r\n if (!prevHydrometerModel) return '';\r\n if (comboHydrometerOptions.includes(prevHydrometerModel)) return prevHydrometerModel;\r\n return '';\r\n };\r\n\r\n const getOtherInstallationLocation = () => {\r\n if (!prevInstallationLocation) return '';\r\n if (!comboOptions.includes(prevInstallationLocation)) return prevInstallationLocation;\r\n return '';\r\n };\r\n\r\n const [installationLocation, setInstallationLocation] = useState(getInstallationLocation());\r\n const [hydrometerModel, setHydrometerModel] = useState(getHydrometerModel());\r\n const [installationDate, setInstallationDate] = useState(prevInstallationDate ? moment(prevInstallationDate) : '');\r\n const [totalCapacity, setTotalCapacity] = useState(prevTotalCapacity ? String(prevTotalCapacity) : '');\r\n const [quantityOfReservoirs, setQuantityOfReservoirs] = useState(prevQuantityOfReservoirs ? String(prevQuantityOfReservoirs) : '');\r\n const [calendarFocused, setCalendarFocused] = useState(false);\r\n const [otherLocation, setOtherLocation] = useState(getOtherInstallationLocation());\r\n const [isOtherSelected, setIsOtherSelected] = useState(false);\r\n const [isLoading, setIsLoading] = useState(false);\r\n const history = useHistory();\r\n\r\n useEffect(() => {\r\n if (state.comboClients.length === 0) {\r\n apiCall('/clients/get-clients-list', {}).then((response) => {\r\n state.comboClients = response.list.map((row) => ({ label: row.NAME, value: row.CLIENT_ID }));\r\n render();\r\n });\r\n }\r\n if (state.clientId) {\r\n loadUnitsClient(state.clientId);\r\n }\r\n }, [false]);\r\n\r\n useEffect(() => {\r\n if (installationLocation === t('outro')) {\r\n setIsOtherSelected(true);\r\n } else {\r\n setIsOtherSelected(false);\r\n }\r\n }, [installationLocation]);\r\n\r\n const loadUnitsClient = (clientId) => {\r\n const reqCombos = { CLIENT_ID: clientId, units: true };\r\n apiCall('/dev/dev-info-combo-options', reqCombos)\r\n .then((response) => {\r\n state.comboUnits = response.units!.map((row) => ({ label: row.label, value: row.value }));\r\n render();\r\n })\r\n .catch((err) => {\r\n console.log(err);\r\n toast.error('Houve erro');\r\n });\r\n };\r\n\r\n const onSelectClient = (item) => {\r\n state.client = item.name;\r\n state.clientId = item.value;\r\n state.unit = '';\r\n state.unitId = null;\r\n state.comboUnits = [];\r\n render();\r\n\r\n if (item?.value != null) {\r\n loadUnitsClient(item.value);\r\n }\r\n };\r\n\r\n const onSelectUnit = (item) => {\r\n state.unitId = item.value;\r\n state.unit = item.name;\r\n render();\r\n };\r\n\r\n const onSelectHydrometer = (item) => {\r\n setHydrometerModel(item);\r\n };\r\n\r\n const onSelectInstallationLocation = (item) => {\r\n setInstallationLocation(item);\r\n };\r\n\r\n const handleSaveBtn = async () => {\r\n const data: WaterData = {};\r\n const defaultInstallationLocation = !isOtherSelected && installationLocation !== '' ? installationLocation : null;\r\n data.installationLocation = isOtherSelected && otherLocation !== '' ? otherLocation : defaultInstallationLocation;\r\n data.installationDate = installationDate !== '' && installationDate !== null ? moment(installationDate).format('YYYY-MM-DD') : moment().format('YYYY-MM-DD');\r\n data.totalCapacity = totalCapacity !== '' ? Number(totalCapacity) : null;\r\n data.hydrometerModel = hydrometerModel !== '' ? hydrometerModel : null;\r\n data.quantityOfReservoirs = quantityOfReservoirs !== '' ? Number(quantityOfReservoirs) : null;\r\n data.unitId = state.unitId || null;\r\n data.clientId = state.clientId || null;\r\n\r\n try {\r\n setIsLoading(true);\r\n await apiCall(\r\n '/save-integration-info',\r\n {\r\n supplier: (integrId.startsWith('DMA') ? 'diel-dma' : 'laager'),\r\n integrId,\r\n ...data,\r\n },\r\n );\r\n\r\n handleUpdateIntegrPerfil(data.installationLocation, data.installationDate,\r\n data.totalCapacity, data.quantityOfReservoirs, data.hydrometerModel);\r\n\r\n if (!data.installationLocation) {\r\n setIsOtherSelected(false);\r\n setInstallationLocation('');\r\n }\r\n toast.success(t('sucessoSalvar'));\r\n // eslint-disable-next-line no-restricted-globals\r\n if (integrId.startsWith('DMA')) {\r\n history.push(`/integracoes/info/diel/${integrId}/perfil`);\r\n } else {\r\n history.push('/integracoes/');\r\n }\r\n\r\n render();\r\n } catch (error) {\r\n const err = error as AxiosError;\r\n toast.error(err?.response?.data || t('erroDados'));\r\n } finally {\r\n setIsLoading(false);\r\n }\r\n };\r\n\r\n return (\r\n \r\n \r\n {t('editar')}\r\n \r\n\r\n \r\n \r\n \r\n \r\n {integrId.startsWith('DMA') ? 'DMA ID' : t('idDaUnidadeLaager')}\r\n \r\n {integrId || '-'}\r\n \r\n \r\n \r\n \r\n \r\n {t('fabricante')}\r\n \r\n {supplier || '-'}\r\n \r\n \r\n \r\n \r\n
\r\n \r\n ({ value: item.value, name: item.label }))}\r\n value={state.clientId?.toString()}\r\n placeholder={t('cliente')}\r\n search\r\n filterOptions={fuzzySearch}\r\n onChange={(item, name) => onSelectClient(name)}\r\n />\r\n
\r\n
\r\n {state.clientId && (\r\n \r\n )}\r\n
\r\n \r\n \r\n
\r\n \r\n ({ value: item.value, name: item.label }))}\r\n value={state.unitId?.toString()}\r\n placeholder={t('unidade')}\r\n onChange={(item, name) => {\r\n onSelectUnit(name);\r\n }}\r\n disabled={!state.client}\r\n filterOptions={fuzzySearch}\r\n search\r\n />\r\n
\r\n
\r\n {state.unitId && (\r\n \r\n )}\r\n
\r\n \r\n \r\n
\r\n \r\n ({ value: item, name: item }))}\r\n value={hydrometerModel}\r\n placeholder={t('hidrometro')}\r\n onChange={(item) => {\r\n onSelectHydrometer(item);\r\n }}\r\n filterOptions={fuzzySearch}\r\n search\r\n disabled={!state.unit}\r\n />\r\n
\r\n
\r\n {hydrometerModel && (\r\n \r\n )}\r\n
\r\n \r\n \r\n
\r\n \r\n ({ value: item, name: item }))}\r\n value={installationLocation}\r\n placeholder={t('localDeInstalacao')}\r\n onChange={(item) => {\r\n onSelectInstallationLocation(item);\r\n }}\r\n filterOptions={fuzzySearch}\r\n search\r\n />\r\n
\r\n
\r\n {installationLocation && (\r\n \r\n )}\r\n
\r\n {isOtherSelected && (\r\n \r\n }; }) => setOtherLocation(e.target.value)}\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n setCalendarFocused(focused)}\r\n isOutsideRange={() => false}\r\n />\r\n \r\n \r\n \r\n \r\n }; }) => setTotalCapacity(e.target.value)}\r\n />\r\n \r\n \r\n }; }) => setQuantityOfReservoirs(e.target.value)}\r\n />\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n );\r\n}\r\n\r\nconst Card = styled.div`\r\n padding: 32px;\r\n margin-top: 24px;\r\n border-radius: 16px;\r\n box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.24), 0px 3px 12px rgba(0, 0, 0, 0.12);\r\n height: 100%;\r\n`;\r\n","import { useEffect } from 'react';\r\nimport moment from 'moment';\r\n\r\nimport { Loader } from '~/components';\r\nimport jsonTryParse from '~/helpers/jsonTryParse';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { apiCall, ApiResps } from '~/providers';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport { CardsCfg } from '../IntegrEdit';\r\nimport { InfoItem, TableNew2 } from './styles';\r\nimport { useTranslation } from 'react-i18next';\r\nimport i18n from '~/i18n';\r\n\r\nconst t = i18n.t.bind(i18n);\r\n\r\nexport const waterVars = [\r\n {\r\n varId: 'module_rf',\r\n name: t('moduloRf'),\r\n },\r\n {\r\n varId: 'batery_state',\r\n name: t('bateriaStatus'),\r\n },\r\n {\r\n varId: 'meter_type',\r\n name: t('tipoDeMedidor'),\r\n },\r\n {\r\n varId: 'last_reading_date',\r\n name: t('ultimaLeitura'),\r\n },\r\n {\r\n varId: 'current_usage',\r\n name: t('consumoAtual'),\r\n unity: true,\r\n },\r\n {\r\n varId: 'day_usage',\r\n name: t('consumoDia'),\r\n unity: true,\r\n },\r\n];\r\n\r\nexport function WaterProfile({ devInfoResp, integrId }: {\r\n devInfoResp: ApiResps['/get-integration-info'],\r\n integrId: string\r\n}): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, _, setState] = useStateVar(() => ({\r\n loading: true,\r\n laagerUsage: {} as ApiResps['/laager/get-informations'] | null,\r\n varsList: waterVars as {\r\n name: string\r\n varId: string,\r\n currVal?: string|null\r\n valUnit?: string\r\n card?: string,\r\n subcard?: string,\r\n relevance?: number | string\r\n }[],\r\n }));\r\n\r\n useEffect(() => {\r\n (async function () {\r\n setState({ loading: true });\r\n const laagerUsage = await apiCall('/laager/get-informations', {\r\n unit_id: integrId,\r\n });\r\n\r\n setState({ laagerUsage, loading: false });\r\n }());\r\n\r\n const cardsCfg = (devInfoResp.cardsCfg && jsonTryParse(devInfoResp.cardsCfg)) || null;\r\n if (cardsCfg && cardsCfg.varscards) {\r\n for (const rowVar of state.varsList) {\r\n if (cardsCfg.varscards[rowVar.varId]) {\r\n rowVar.card = cardsCfg.varscards[rowVar.varId].card;\r\n rowVar.subcard = cardsCfg.varscards[rowVar.varId].subcard;\r\n rowVar.relevance = cardsCfg.varscards[rowVar.varId].relevance;\r\n rowVar.valUnit = cardsCfg.varscards[rowVar.varId].valUnit;\r\n }\r\n }\r\n }\r\n }, [integrId]);\r\n\r\n function getVarValue(id: string, unity?: string) {\r\n if (id === 'last_reading_date') {\r\n return moment(state?.laagerUsage?.[id]).format('lll');\r\n } if (['current_usage', 'day_usage'].includes(id) && unity === 'm³') {\r\n return state?.laagerUsage?.[id] / 1000;\r\n }\r\n\r\n return state?.laagerUsage?.[id];\r\n }\r\n\r\n return (\r\n <>\r\n {state.loading && }\r\n {!state.loading && (\r\n <>\r\n <>\r\n
{t('consumo')}
\r\n
\r\n \r\n {t('consumoAtual')}\r\n
\r\n {state.laagerUsage?.current_usage}\r\n m³\r\n
\r\n \r\n {t('consumoDia')}\r\n
\r\n {state.laagerUsage?.day_usage}\r\n m³\r\n
\r\n \r\n {t('ultimaLeitura')}\r\n
\r\n {moment(state.laagerUsage?.last_reading_date).format('lll') || '-'}\r\n
\r\n
\r\n \r\n
\r\n
{t('dadosRecebidos')}
\r\n \r\n \r\n \r\n ID\r\n {t('descricao')}\r\n {t('valorAtual')}\r\n {t('unMedida')}\r\n Card\r\n Subcard\r\n {t('relevancia')}\r\n \r\n \r\n \r\n {waterVars.map((rowVar, index) => {\r\n const varValues = state.varsList.find((x) => x.varId === rowVar.varId);\r\n return (\r\n \r\n {devInfoResp.info.dataSource || '-'}\r\n {rowVar.name || '-'}\r\n \r\n {getVarValue(rowVar.varId, varValues?.valUnit)}\r\n \r\n \r\n {rowVar.unity\r\n ? (varValues?.valUnit !== 'm³' ? t('litros') : t('metrosCubicos'))\r\n : t('nenhum')}\r\n \r\n {varValues?.card || '-'}\r\n {varValues?.subcard || '-'}\r\n {varValues?.relevance || '1'}\r\n \r\n );\r\n })}\r\n \r\n \r\n
\r\n \r\n )}\r\n \r\n );\r\n}\r\n","import { useTranslation } from 'react-i18next';\r\nimport {\r\n Button,\r\n Input,\r\n Select,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { colors } from '~/styles/colors';\r\n\r\nimport {\r\n CardIntem, TableNew2,\r\n} from './styles';\r\n\r\nexport const CardsConfig = (props: {\r\n integrType: string\r\n varsList: {\r\n varId: string\r\n name: string\r\n currVal?: string\r\n valUnit?: string\r\n card?: string\r\n subcard?: string\r\n relevance?: string | number\r\n }[]\r\n cards: string[]\r\n subcards: string[]\r\n relevances: string[]\r\n}): JSX.Element => {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n newCardName: '',\r\n newSubcardName: '',\r\n newRelevance: '',\r\n });\r\n\r\n function addNewRelevance() {\r\n const name = state.newRelevance.trim();\r\n if (!props.relevances.includes(name)) props.relevances.push(name);\r\n state.newRelevance = '';\r\n render();\r\n }\r\n function addNewCard() {\r\n const name = state.newCardName.trim();\r\n if (!props.cards.includes(name)) props.cards.push(name);\r\n state.newCardName = '';\r\n render();\r\n }\r\n function addNewSubcard() {\r\n const name = state.newSubcardName.trim();\r\n if (!props.subcards.includes(name)) props.subcards.push(name);\r\n state.newSubcardName = '';\r\n render();\r\n }\r\n function removeCard(itemName: string) {\r\n for (const rowVar of props.varsList) {\r\n if (rowVar.card === itemName) {\r\n alert(t('alertaCardEstaSendoUtilizado'));\r\n return;\r\n }\r\n }\r\n for (let i = props.cards.length - 1; i >= 0; i--) {\r\n if (props.cards[i] === itemName) {\r\n props.cards.splice(i, 1);\r\n }\r\n }\r\n render();\r\n }\r\n function removeSubcard(itemName: string) {\r\n for (const rowVar of props.varsList) {\r\n if (rowVar.subcard === itemName) {\r\n alert(t('alertaSubcardEstaSendoUtilizado'));\r\n return;\r\n }\r\n }\r\n for (let i = props.subcards.length - 1; i >= 0; i--) {\r\n if (props.subcards[i] === itemName) {\r\n props.subcards.splice(i, 1);\r\n }\r\n }\r\n render();\r\n }\r\n function removeRelevance(itemName: string) {\r\n for (const rowVar of props.varsList) {\r\n if (rowVar.relevance === itemName) {\r\n alert(t('alertaRelevanceEstaSendoUtilizado'));\r\n return;\r\n }\r\n }\r\n for (let i = props.relevances.length - 1; i >= 0; i--) {\r\n if (props.relevances[i] === itemName) {\r\n props.relevances.splice(i, 1);\r\n }\r\n }\r\n render();\r\n }\r\n\r\n return (\r\n
\r\n
\r\n\r\n
\r\n
{t('cards')}
\r\n
\r\n setState({ newCardName: event.target.value })}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n {props.cards.map((itemName) => (\r\n removeCard(itemName)} variant=\"blue\">{`${itemName} X`}\r\n ))}\r\n
\r\n
\r\n\r\n
\r\n
{t('subcards')}
\r\n
\r\n setState({ newSubcardName: event.target.value })}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n {props.subcards.map((itemName) => (\r\n removeSubcard(itemName)} variant=\"blue\">{`${itemName} X`}\r\n ))}\r\n
\r\n
\r\n\r\n
\r\n
{t('relevancia')}
\r\n
\r\n setState({ newRelevance: event.target.value })}\r\n />\r\n
\r\n \r\n
\r\n
\r\n
\r\n {props.relevances.map((itemName) => (\r\n removeRelevance(itemName)} variant=\"blue\">{`${itemName} X`}\r\n ))}\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n {t('Nome')}\r\n {t('valorAtual')}\r\n {t('unidadeMedida')}\r\n {t('card')}\r\n {t('subcard')}\r\n {t('relevancia')}\r\n \r\n \r\n \r\n {props.varsList.map((rowVar, index) => (\r\n \r\n {rowVar.name}\r\n {rowVar.currVal || '-'}\r\n \r\n {['current_usage', 'day_usage'].includes(rowVar.varId) ? (\r\n { rowVar.valUnit = item; render(); }}\r\n />\r\n ) : ''}\r\n \r\n \r\n { rowVar.card = item; render(); }}\r\n />\r\n \r\n \r\n { rowVar.subcard = item; render(); }}\r\n />\r\n \r\n {props.integrType === 'water' ? (\r\n \r\n { rowVar.relevance = item; render(); }}\r\n />\r\n \r\n ) : (\r\n {rowVar.relevance || '-'}\r\n )}\r\n \r\n ))}\r\n \r\n \r\n
\r\n\r\n
\r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { useHistory, useRouteMatch } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\nimport {\r\n Button,\r\n Card,\r\n Loader,\r\n} from '~/components';\r\nimport jsonTryParse from '~/helpers/jsonTryParse';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport IntegrLayout, { IntegrBreadCrumbs } from '~/pages/Analysis/Integrations/IntegrLayout';\r\nimport { apiCall, ApiResps } from '~/providers';\r\nimport WaterProfileEdit from '../../Units/UnitWater/WaterProfileEdit';\r\nimport { IntegrDevInfo } from '../IntegrPerfil/IntegrDevInfo';\r\nimport { waterVars } from '../IntegrPerfil/WaterProfile';\r\nimport { CardsConfig } from './CardsConfig';\r\nimport { CoolAutomationEdit } from './CoolAutomationEdit';\r\nimport { DriConfig } from './DriConfig';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\n\r\nexport interface CardsCfg {\r\n cards: string[]\r\n subcards: string[]\r\n relevances: string[]\r\n varscards: {\r\n [varId: string]: { card?: string, subcard?: string, relevance?: string | number, valUnit?: string }\r\n }\r\n}\r\n\r\nexport const IntegrEdit = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const match = useRouteMatch<{ integrType: 'diel'|'ness'|'greenant'|'coolautomation'|'laager', integrId: string }>();\r\n const history = useHistory();\r\n const { integrType, integrId } = match.params;\r\n\r\n const [state, render, setState] = useStateVar(() => ({\r\n isLoading: true,\r\n devInfoResp: null as (null|ApiResps['/get-integration-info']),\r\n varsCfg: null as (null|ApiResps['/get-integration-info']['dri']),\r\n varsList: [] as {\r\n varId: string\r\n name: string\r\n currVal?: string\r\n valUnit?: string\r\n card?: string\r\n subcard?: string\r\n relevance?: string | number\r\n }[],\r\n cards: [] as string[],\r\n subcards: [] as string[],\r\n relevances: [] as string[],\r\n }));\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n setState({ isLoading: true });\r\n let response;\r\n if (integrId.startsWith('DMA')) {\r\n response = await apiCall('/get-integration-info', { supplier: 'diel-dma', integrId });\r\n } else {\r\n response = await apiCall('/get-integration-info', { supplier: integrType, integrId });\r\n }\r\n state.devInfoResp = response;\r\n state.varsCfg = (response.dri);\r\n state.varsList = (response.dri && response.dri.varsList)\r\n || (response.info.supplier === 'Laager' && waterVars) || [];\r\n const cardsCfg = (response.cardsCfg && jsonTryParse(response.cardsCfg)) || null;\r\n state.cards = (cardsCfg && cardsCfg.cards) || [];\r\n state.subcards = (cardsCfg && cardsCfg.subcards) || [];\r\n state.relevances = (cardsCfg && cardsCfg.relevances) || [];\r\n if (cardsCfg && cardsCfg.varscards) {\r\n for (const rowVar of state.varsList) {\r\n if (cardsCfg.varscards[rowVar.varId]) {\r\n rowVar.card = cardsCfg.varscards[rowVar.varId].card;\r\n rowVar.subcard = cardsCfg.varscards[rowVar.varId].subcard;\r\n rowVar.relevance = cardsCfg.varscards[rowVar.varId].relevance;\r\n rowVar.valUnit = cardsCfg.varscards[rowVar.varId].valUnit;\r\n }\r\n }\r\n }\r\n } catch (err) {\r\n toast.error(t('erro'));\r\n console.log(err);\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }, []);\r\n\r\n async function save() {\r\n try {\r\n const cardsCfg: CardsCfg = {\r\n cards: state.cards,\r\n subcards: state.subcards,\r\n relevances: state.relevances,\r\n varscards: {},\r\n };\r\n for (const rowVar of state.varsList) {\r\n cardsCfg.varscards[rowVar.varId] = {\r\n card: rowVar.card,\r\n subcard: rowVar.subcard,\r\n relevance: rowVar.relevance || 1,\r\n valUnit: rowVar.valUnit ?? undefined,\r\n };\r\n }\r\n await apiCall('/save-integration-info', { supplier: integrType, integrId, cardsCfg: JSON.stringify(cardsCfg) });\r\n history.push(history.location.pathname.replace('/editar', '/perfil'));\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('erro'));\r\n }\r\n }\r\n const handleUpdateIntegrPerfil = (installationLocation?: string | null, installationDate?: string | null, totalCapacity?: number | null, quantityOfReservoirs?: number | null, hydrometerModel?: string | null) => {\r\n state.devInfoResp!.info.installationLocation = installationLocation;\r\n state.devInfoResp!.info.installationDate = installationDate;\r\n state.devInfoResp!.info.totalCapacity = totalCapacity;\r\n state.devInfoResp!.info.quantityOfReservoirs = quantityOfReservoirs;\r\n state.devInfoResp!.info.hydrometerModel = hydrometerModel;\r\n render();\r\n };\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaIntegracoes')}\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n {state.isLoading && (\r\n \r\n )}\r\n {(state.devInfoResp && !state.isLoading) && (\r\n <>\r\n {(integrType === 'diel' && integrId.startsWith('DRI')) ? (\r\n <>\r\n {/* */}\r\n
\r\n \r\n \r\n ) : (integrType === 'diel' && integrId.startsWith('DMA') ? (\r\n \r\n ) : (\r\n
\r\n
{t('editar')}
\r\n
{t('informacoes')}
\r\n \r\n
\r\n ))}\r\n\r\n {(integrType === 'coolautomation') && state.devInfoResp.coolautomation && (\r\n <>\r\n
\r\n
\r\n \r\n \r\n )}\r\n\r\n {(!['coolautomation', 'diel'].includes(integrType)) && (\r\n <>\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n save()}\r\n variant=\"primary\"\r\n >\r\n {t('botaoSalvar')}\r\n \r\n history.push(history.location.pathname.replace('/editar', '/perfil'))}\r\n variant=\"secondary\"\r\n >\r\n {t('botaoCancelar')}\r\n \r\n
\r\n \r\n )}\r\n \r\n )}\r\n
\r\n
\r\n \r\n );\r\n};\r\n\r\nexport default withTransaction('IntegrEdit', 'component')(IntegrEdit);\r\n","import { useEffect, useState } from 'react';\r\n\r\nimport { Helmet } from 'react-helmet';\r\nimport { useRouteMatch } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { apiCall, ApiResps } from 'providers';\r\nimport {\r\n Loader,\r\n} from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport IntegrLayout, { IntegrBreadCrumbs } from '~/pages/Analysis/Integrations/IntegrLayout';\r\n\r\nimport { DriHistory } from './DriHistory';\r\nimport { WaterHistory } from './WaterHistory/WaterHistory';\r\nimport { useTranslation } from 'react-i18next';\r\n\r\nimport 'react-datepicker/dist/react-datepicker.css';\r\nimport { TimezoneWarn } from '~/components/TimezoneWarn';\r\nimport { getUserProfile } from '~/helpers/userProfile';\r\n\r\nexport default function IntegrHistory(): JSX.Element {\r\n const { t } = useTranslation();\r\n const match = useRouteMatch<{ integrType: string, integrId: string }>();\r\n const { integrType, integrId } = match.params;\r\n const [profile] = useState(getUserProfile);\r\n const [state, render, setState] = useStateVar(() => ({\r\n isLoading: true,\r\n devInfo: null as (null|ApiResps['/get-integration-info']),\r\n }));\r\n\r\n useEffect(() => {\r\n (async function () {\r\n try {\r\n setState({ isLoading: true });\r\n let response;\r\n if (integrId.startsWith('DMA')) {\r\n response = await apiCall('/get-integration-info', {\r\n supplier: 'diel-dma',\r\n integrId,\r\n });\r\n } else {\r\n response = await apiCall('/get-integration-info', {\r\n supplier: integrType as 'diel' | 'ness' | 'greenant' | 'coolautomation' | 'laager',\r\n integrId,\r\n });\r\n }\r\n state.devInfo = response;\r\n } catch (err) {\r\n toast.error(t('erro'));\r\n console.log(err);\r\n }\r\n setState({ isLoading: false });\r\n }());\r\n }, []);\r\n function returnHistory() {\r\n if (match.params.integrType === 'diel' && integrId.startsWith('DRI')) {\r\n return ;\r\n }\r\n return
{t('naoDisponivel')}
;\r\n }\r\n\r\n return (\r\n <>\r\n \r\n {t('tituloPagDielEnergiaHistorico')}\r\n \r\n \r\n \r\n
\r\n {((match.params.integrType === 'water' || (match.params.integrType === 'diel' && integrId.startsWith('DMA'))) ? (\r\n <>\r\n \r\n \r\n ) : (\r\n
\r\n {state.isLoading && (\r\n \r\n )}\r\n {(!state.isLoading) && (\r\n <>\r\n {returnHistory()}\r\n \r\n )}\r\n
\r\n ))}\r\n \r\n );\r\n}\r\n","import { useEffect, useMemo, useState } from 'react';\r\nimport { t } from 'i18next';\r\nimport { useParams, useHistory } from 'react-router-dom';\r\n\r\nimport { Breadcrumb3 } from 'components/Breadcrumb';\r\nimport { getUserProfile } from 'helpers/userProfile';\r\nimport { Header } from 'pages/Analysis/Header';\r\n\r\nexport type TUnitInfo = {\r\n CLIENT_NAME: string\r\n CLIENT_ID: number\r\n UNIT_ID: number\r\n UNIT_NAME: string\r\n LAT: string\r\n LON: string\r\n CITY_ID: string\r\n CITY_NAME: string\r\n STATE_ID: string\r\n ADDRESS: string\r\n PRODUCTION: boolean\r\n hasEnergyInfo: boolean\r\n TARIFA_KWH: number\r\n EXTRA_DATA: string\r\n GA_METER: number\r\n TARIFA_DIEL: 0|1\r\n hasNess: boolean\r\n hasWater: boolean\r\n hasOxyn: boolean\r\n hasLaager: boolean\r\n hasChiller: boolean\r\n hasVrf: boolean\r\n dmaId: string\r\n BASELINE_ID: number\r\n TIMEZONE_AREA: string\r\n TIMEZONE_ID: number\r\n TIMEZONE_OFFSET: number\r\n CONSTRUCTED_AREA: number\r\n AMOUNT_PEOPLE: number\r\n arrayChiller: { VARSCFG: string; DEVICE_CODE: string; }[]\r\n}\r\n\r\nexport const UnitLayout = (props: {\r\n unitInfo: null | TUnitInfo\r\n}): JSX.Element => {\r\n const routeParams = useParams<{ unitId }>();\r\n const history = useHistory();\r\n const [profile] = useState(getUserProfile);\r\n const { unitInfo } = props;\r\n const isInstaller = profile.permissions.isInstaller;\r\n const links = [] as { title: string, link: string }[];\r\n\r\n links.push({\r\n title: t('perfil'),\r\n link: `/analise/unidades/perfil/${routeParams.unitId}`,\r\n });\r\n if (props.unitInfo && !props.unitInfo.hasChiller) {\r\n links.push({\r\n title: t('tempoReal'),\r\n link: `/analise/unidades/${routeParams.unitId}`,\r\n });\r\n\r\n if (!isInstaller) {\r\n links.push({\r\n title: t('analiseIntegrada'),\r\n link: `/analise/unidades/integrated/${routeParams.unitId}`,\r\n });\r\n }\r\n links.push({\r\n title: t('energia'),\r\n link: `/analise/unidades/energyEfficiency/${routeParams.unitId}`,\r\n });\r\n }\r\n if (props.unitInfo && props.unitInfo.hasNess && !isInstaller) {\r\n links.push({\r\n title: 'NESS',\r\n link: `/analise/unidades/integracao-ness/${routeParams.unitId}`,\r\n });\r\n }\r\n if (props.unitInfo && props.unitInfo.hasLaager) {\r\n links.push({\r\n title: t('agua'),\r\n link: `/analise/unidades/integracao-agua/${routeParams.unitId}?aba=historico&supplier=laager`,\r\n });\r\n }\r\n if (props.unitInfo && props.unitInfo.dmaId) {\r\n links.push({\r\n title: t('agua'),\r\n link: `/analise/unidades/integracao-agua/${routeParams.unitId}?aba=historico&supplier=diel`,\r\n });\r\n }\r\n if (props.unitInfo && props.unitInfo.hasVrf && !isInstaller) {\r\n links.push({\r\n title: t('sistemasVrf'),\r\n link: `/analise/unidades/integracao-vrf/${routeParams.unitId}`,\r\n });\r\n }\r\n if (history.location.pathname.startsWith('/analise/unidades/revezamento-programacao/')) {\r\n links.push({\r\n link: history.location.pathname,\r\n title: t('revezamentoDeProgramacao'),\r\n });\r\n }\r\n if (history.location.pathname.startsWith(`/analise/unidades/perfil/${routeParams.unitId}/editar`)) {\r\n links.push({\r\n link: history.location.pathname,\r\n title: t('editarUnidade'),\r\n });\r\n }\r\n if (props.unitInfo && props.unitInfo.hasChiller) {\r\n links.push({\r\n link: `/analise/unidades/cag/${routeParams.unitId}`,\r\n title: t('CAG'),\r\n });\r\n }\r\n const bcrumbItems = useMemo(() => {\r\n const path = [] as { text: string, link: string|null }[];\r\n if (unitInfo && unitInfo.UNIT_NAME) {\r\n if (profile.manageAllClients) {\r\n path.push({ text: unitInfo.CLIENT_NAME, link: null });\r\n }\r\n path.push({ text: t('analise'), link: '/analise' });\r\n path.push({ text: t('unidades'), link: '/analise/unidades' });\r\n if (unitInfo.hasChiller) {\r\n path.push({ text: unitInfo.UNIT_NAME, link: `/analise/unidades/cag/${unitInfo.UNIT_ID}` });\r\n } else {\r\n path.push({ text: unitInfo.UNIT_NAME, link: `/analise/unidades/${unitInfo.UNIT_ID}` });\r\n }\r\n }\r\n return path;\r\n }, [unitInfo]);\r\n\r\n useEffect(() => {\r\n if (unitInfo && unitInfo?.hasChiller) {\r\n const linkBase = `/analise/unidades/cag/${unitInfo.UNIT_ID}?aba=tempo-real&driId=${unitInfo.arrayChiller?.[0].DEVICE_CODE}`;\r\n history.push(`${linkBase}`);\r\n }\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n
\r\n
\r\n \r\n );\r\n};\r\n","import { useEffect } from 'react';\r\nimport { t } from 'i18next';\r\nimport { Helmet } from 'react-helmet';\r\nimport { useParams } from 'react-router';\r\nimport { toast } from 'react-toastify';\r\n\r\nimport { Loader } from '~/components';\r\nimport { useStateVar } from '~/helpers/useStateVar';\r\nimport { TUnitInfo, UnitLayout } from '~/pages/Analysis/Units/UnitLayout';\r\nimport { apiCall } from '~/providers';\r\nimport { useTranslation } from 'react-i18next';\r\nimport { withTransaction } from '@elastic/apm-rum-react';\r\nimport { generateNameFormatted } from '~/helpers/titleHelper';\r\n\r\nexport const UnitNess = (): JSX.Element => {\r\n const { t } = useTranslation();\r\n const routeParams = useParams<{ unitId: string }>();\r\n const [state, render, setState] = useStateVar({\r\n unitId: Number(routeParams.unitId),\r\n unitInfo: null as null| TUnitInfo,\r\n });\r\n\r\n async function fetchUnitInfo() {\r\n try {\r\n const unitInfo = await apiCall('/clients/get-unit-info', { unitId: state.unitId });\r\n state.unitInfo = unitInfo;\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n }\r\n\r\n useEffect(() => {\r\n fetchUnitInfo();\r\n }, []);\r\n\r\n return (\r\n <>\r\n \r\n {generateNameFormatted(state.unitInfo?.UNIT_NAME, t('sistemasNess'))}\r\n \r\n \r\n
\r\n \r\n \r\n );\r\n};\r\n\r\nexport function UnitNessContent(props: { unitId: number }): JSX.Element {\r\n const { t } = useTranslation();\r\n const [state, render, setState] = useStateVar({\r\n isLoading: true,\r\n iframeLoading: false,\r\n // @ts-ignore\r\n url: null as string,\r\n });\r\n\r\n async function handleGetUnitInfo() {\r\n try {\r\n setState({ isLoading: true });\r\n const { url } = await apiCall('/get-ness-dashboard-url-for-unit', { unitId: props.unitId });\r\n state.url = url;\r\n state.iframeLoading = !!url;\r\n\r\n render();\r\n } catch (err) {\r\n console.log(err);\r\n toast.error(t('houveErro'));\r\n }\r\n setState({ isLoading: false });\r\n }\r\n\r\n useEffect(() => {\r\n handleGetUnitInfo();\r\n }, []);\r\n\r\n return (\r\n <>\r\n {(state.isLoading) && }\r\n {(!state.isLoading) && (\r\n (state.url)\r\n ? (\r\n <>\r\n {state.iframeLoading &&
{t('carregando')}
}\r\n