{"version":3,"sources":["webpack:///src/app/common/commonFunctions.ts","webpack:///src/app/components/amaala-dashboard/station-graphs/station-graphs.component.ts","webpack:///src/app/components/amaala-dashboard/station-graphs/station-graphs.component.html","webpack:///src/app/components/home-page/contact-modal/contact-modal.component.ts","webpack:///src/app/components/home-page/contact-modal/contact-modal.component.html","webpack:///src/app/common/loading-spinner/loading-spinner.component.ts","webpack:///src/app/common/loading-spinner/loading-spinner.component.html","webpack:///src/app/components/dashboard/charts/linechart/linechart.component.ts","webpack:///src/app/components/dashboard/charts/linechart/linechart.component.html","webpack:///src/app/components/report/basic-report-print/basic-report-print.component.ts","webpack:///src/app/components/report/basic-report-print/basic-report-print.component.html","webpack:///src/app/components/dashboard/charts/vibration-chart/vibration-chart.component.ts","webpack:///src/app/components/dashboard/charts/vibration-chart/vibration-chart.component.html","webpack:///src/app/common/sidebarSelect.ts","webpack:///src/app/components/home-page/login-modal/login-modal.component.ts","webpack:///src/app/components/home-page/login-modal/login-modal.component.html","webpack:///src/app/common/colorrangeforamaala.ts","webpack:///src/app/components/navbar-merged/navbar-merged.component.ts","webpack:///src/app/components/navbar-merged/navbar-merged.component.html","webpack:///src/app/services/passwordforgot/password-forgot.service.ts","webpack:///src/app/components/user/create-user/create-user.component.ts","webpack:///src/app/components/user/create-user/create-user.component.html","webpack:///src/environments/environment.ts","webpack:///src/app/components/home-page/forgot-password/forgot-password.component.ts","webpack:///src/app/components/home-page/forgot-password/forgot-password.component.html","webpack:///src/app/services/contact-us/contact-us.service.ts","webpack:///src/app/services/user/user.service.ts","webpack:///src/app/components/color-codes/color-codes.component.ts","webpack:///src/app/components/color-codes/color-codes.component.html","webpack:///src/app/components/amaala-dashboard/amaala-dashboard.component.ts","webpack:///src/app/components/amaala-dashboard/amaala-dashboard.component.html","webpack:///src/app/services/select-client/select-client.service.ts","webpack:///src/app/services/regulation/regulation.service.ts","webpack:///src/app/components/user-group/create-user-group/create-user-group.component.ts","webpack:///src/app/components/user-group/create-user-group/create-user-group.component.html","webpack:///src/app/components/dashboard/event-graph/event-graph.component.ts","webpack:///src/app/components/dashboard/event-graph/event-graph.component.html","webpack:///src/app/components/dashboard/charts/barchart/barchart.component.ts","webpack:///src/app/components/dashboard/charts/barchart/barchart.component.html","webpack:///src/app/components/dashboard/charts/scatter/scatter.component.ts","webpack:///src/app/components/dashboard/charts/scatter/scatter.component.html","webpack:///node_modules/moment/locale sync ^\\.\\/.*$","webpack:///src/app/app.component.ts","webpack:///src/app/app.component.html","webpack:///src/app/services/report/download-pdf.service.ts","webpack:///src/app/components/user/edit-user/edit-user.component.ts","webpack:///src/app/components/user/edit-user/edit-user.component.html","webpack:///src/app/components/dashboard/all-graphs/all-graphs.component.ts","webpack:///src/app/components/dashboard/all-graphs/all-graphs.component.html","webpack:///src/app/components/client-stations/stations-navbar/stations-navbar.component.ts","webpack:///src/app/components/client-stations/stations-navbar/stations-navbar.component.html","webpack:///src/settings.global.ts","webpack:///src/app/components/client-stations/stations-sidebar/stations-sidebar.component.ts","webpack:///src/app/components/client-stations/stations-sidebar/stations-sidebar.component.html","webpack:///src/app/services/guards/auth.guard.ts","webpack:///src/app/app.module.ts","webpack:///src/app/components/report/report-filters/report-filters.component.html","webpack:///src/app/components/report/report-filters/report-filters.component.ts","webpack:///src/app/components/select-client/select-client.component.ts","webpack:///src/app/components/select-client/select-client.component.html","webpack:///src/app/components/client-stations/stations-all-summary/stations-all-summary.component.ts","webpack:///src/app/components/client-stations/stations-all-summary/stations-all-summary.component.html","webpack:///src/app/components/home-page/home-page.component.ts","webpack:///src/app/components/home-page/home-page.component.html","webpack:///src/app/components/sidebar-merged/sidebar-merged.component.ts","webpack:///src/app/components/sidebar-merged/sidebar-merged.component.html","webpack:///src/app/components/report/wind-direction-report/wind-direction-report.component.ts","webpack:///src/app/components/report/wind-direction-report/wind-direction-report.component.html","webpack:///src/app/components/report/regulation-report/regulation-report.component.ts","webpack:///src/app/components/report/regulation-report/regulation-report.component.html","webpack:///src/app/services/report/csv-data.service.ts","webpack:///src/app/material/material.module.ts","webpack:///src/app/components/navbar/navbar.component.ts","webpack:///src/app/components/navbar/navbar.component.html","webpack:///src/app/components/admin-navbar/admin-navbar.component.ts","webpack:///src/app/components/admin-navbar/admin-navbar.component.html","webpack:///src/app/components/report/basic-report/basic-report.component.ts","webpack:///src/app/components/report/basic-report/basic-report.component.html","webpack:///src/app/components/user/popup-modal/popup-modal.component.ts","webpack:///src/app/components/user/popup-modal/popup-modal.component.html","webpack:///src/app/components/home-page/otp-modal/otp-modal.component.ts","webpack:///src/app/components/home-page/otp-modal/otp-modal.component.html","webpack:///src/app/services/user-group/user-group.service.ts","webpack:///src/app/components/report/daily-report/daily-report.component.ts","webpack:///src/app/components/report/daily-report/daily-report.component.html","webpack:///src/app/components/home-page/reset-password/reset-password.component.ts","webpack:///src/app/components/home-page/reset-password/reset-password.component.html","webpack:///src/app/components/amaala-dashboard/gauge/gauge.component.ts","webpack:///src/app/components/amaala-dashboard/gauge/gauge.component.html","webpack:///src/app/components/user-group/edit-user-group/edit-user-group.component.ts","webpack:///src/app/components/user-group/edit-user-group/edit-user-group.component.html","webpack:///src/app/services/auth-service/auth.service.ts","webpack:///src/app/components/dashboard/charts/multi-line-chart/multi-line-chart.component.ts","webpack:///src/app/components/dashboard/charts/multi-line-chart/multi-line-chart.component.html","webpack:///src/app/services/stations/stations.service.ts","webpack:///src/app/services/general/message.service.ts","webpack:///src/app/services/ebam-dashboard/ebam-data.service.ts","webpack:///src/app/components/dashboard/charts/wind-direction/wind-direction.component.ts","webpack:///src/app/components/dashboard/charts/wind-direction/wind-direction.component.html","webpack:///src/app/app-routing.module.ts","webpack:///src/app/components/user-group/user-group.component.ts","webpack:///src/app/components/user-group/user-group.component.html","webpack:///src/app/components/admin-sidebar/admin-sidebar.component.ts","webpack:///src/app/components/admin-sidebar/admin-sidebar.component.html","webpack:///src/app/components/landing-page/landing-page.component.ts","webpack:///src/app/components/landing-page/landing-page.component.html","webpack:///src/app/components/dashboard/summary.component.ts","webpack:///src/app/components/dashboard/summary.component.html","webpack:///src/app/common/dateAndTime.ts","webpack:///src/app/components/user/user.component.ts","webpack:///src/app/components/user/user.component.html","webpack:///src/app/components/sidebar/sidebar.component.ts","webpack:///src/app/components/sidebar/sidebar.component.html","webpack:///src/main.ts","webpack:///$_lazy_route_resource lazy namespace object"],"names":["generateUniqueId","makeRandomString","Date","length","result","characters","charactersLength","i","charAt","Math","floor","random","StationGraphsComponent","route","ebamDataService","router","stationId","summarydata","ColourRange","wetBulbData","humidity10mData","humidity2mData","temperature10mData","temperature2mData","windRose10mData","windRose2mData","windSpeedtenData","windSpeedtwoData","soilTempData","WBGTData","HeatIndexData","BarometricPressureData","SolarRadiationData","title_wetbulb_tempersture","title_humidityten","title_humiditytwo","title_temperatureten","title_temperaturetwo","title_wind_directionten","title_wind_directiontwo","title_wind_speed_ten","title_wind_speed_two","title_soil_tempersture","title_WBGT","title_HeatIndex","title_BarometricPressure","title_SolarRadiation","dateFrom","dateTo","period","dateFromAllowed","dateToAllowed","datetime","snapshot","paramMap","get","stationName","drawgraph","currentDate","stationid","getEbamDataSummary","subscribe","data","getEbamDataWetBuldTemperature","getEbamDataHumidity","getEbamDataHumidityTwo","getEbamDataTemprature","getEbamDataTempraturetwo","getEbamDataWindRose","console","log","getEbamDataWindRosetwo","getEbamDataWindSpeed","getEbamDataWindSpeed2m","getEbamDataSoilTemperature","getEbamDataWBGT","getEbamDataHeatIndex","getEbamDataBpressure","getEbamSolarRadiation","popup","navigateByUrl","getToday","getYesterday","getThisWeekStart","getThisWeekEnd","getLastWeekStart","getLastWeekEnd","getThisMonthStart","getThisMonthEnd","getLastMonthStart","getLastMonthEnd","getThisYearStart","getThisYearEnd","getLastYearStart","getLastYearEnd","start","toDateString","end","reporttitle","toISOString","getEbamDataWetBuldTemperature_ByDate","getEbamDataHumidity_ByDate","getEbamDataHumidityTwo_ByDate","getEbamDataTemprature_ByDate","getEbamDataTempraturetwo_ByDate","getEbamDataWindRose_ByDate","getEbamDataWindRosetwo_ByDate","getEbamDataWindSpeed_ByDate","getEbamDataWindSpeed2m_ByDate","getEbamDataSoilTemperature_ByDate","getEbamDataWBGT_ByDate","getEbamDataHeatIndex_ByDate","getEbamDataBpressure_ByDate","getEbamSolarRadiation_ByDate","todate","event","date","target","value","getMonthFirstDay","getMonthLastDay","getYearFirstDay","getYearLastDay","getWeeklyAddDay","goBackFn","startDateChange","ToDateChange","onPeriodChange","generateBasicReport","selector","templateUrl","styleUrls","ContactModalComponent","fb","dialogRef","contactUs","contactForm","group","FullName","required","EmailId","email","Message","postMessage","res","IsSuccess","close","errorMessage","error","onSubmit","LoadingSpinnerComponent","LinechartComponent","margin","width","height","figureId","changes","Data","currentValue","drawLineChart","initChart","divView","nativeElement","offsetWidth","colorKey","ColorKey","yKey","YKey","xKey","XKey","toolTipUnit","ToolTipUnit","max","Max","min","Min","forEach","element","bisectChart","xy","bisect","d","left","x","invert","index","a","b","callout","g","Value","cc","style","path","selectAll","join","attr","text","call","split","_","node","getBBox","y","w","h","parseTime","range","valueline","curve","defined","isNaN","remove","svg","append","domain","maximumY","LabelX","LabelY","enter","transition","duration","ease","make_x_gridlines","ticks","make_y_gridlines","tickSize","tickFormat","select","clone","tooltip","on","pointedAt","timeString","toLocaleTimeString","ChartTitle","BasicReportPrintComponent","messageService","stationService","stationsService","titleService","page_report","currentPopupGraph","isLoading","isBusy","oneDay","ClientId","CLIENT_ID","getCurrentstation","title_pm10","title_temperature","title_humidity","title_wind_speed","title_wind_direction","title_wind_direction_10m","title_pm25","titile_noise","title_background_noise","title_event_noise","title_SolarRadiation_DHI","title_dew_point_temp","title_VWC","title_ElectricalC","title_CloudCover","title_Rain","title_Visibility","Maxval","currentStation","getLastStation","getPast24Data","CurrentStation","appendTo","queryParamMap","queryParams","startDate","endDate","StationName","menuItemVisibility","graphsRequired","periodName","JSON","parse","ElectricalC","format","setTitle","getAllGraphData","graphData","grawgraphdata","Cloud_Cover","RainLabelY","newData","PM10","pm10Data","PM2_5","pm25data","Temperature","temperatureData","stringify","Humidity","humidityData","WindSpeed","windSpeedData","windDirection","windDirectionData","Noise","NoiseData","vibrationBackgrounds","VibrationBackgroundData","vibrationEvent","VibrationEventData","HeatIndex","heatIndexData","SolarRadiation","solarRadiationDHI","SolarRadiationDHIData","WBGT","WindSpeed2m","WindSpeed2mData","WindSpeedAndAngle","WindSpeedAndAngleData","angleAndDirections2m","angleAndDirections2mData","barometricPressure","barometricPressureData","windDirection2m","WindDirection2m","windDirection10m","WindDirection10m","duePointTemperature","duePointTemperatureData","soilTemperature","soilTemperatureData","wetBulbTemperature","wetBulbTemperatureData","WindSpeed2mand10m","windSpeed2m10m","windSpeed2m","WindSpeed10m","windSpeed10m","Temperature2mand10m","Temperature2m10m","Temperature2m","Humidity2mand10m","Humidity2m10m","Humidity2m","windDirection2mand10m","WindDirection2m10m","VWContent","Electrical_Conductivity","ElectriaclCdata","CS136_Lowest_Data","CloudCoverData","Visibility","Visibilitydata","Rain","RainData","selectedStation","graphType","id","getEventGraphData","VibrationEventDataNew","divName","printContents","document","getElementById","innerHTML","originalContents","body","window","print","printBackFn","dateStatus","Period","VibrationChartComponent","parseFloat","minimumY","arMax","arMin","Keys","push","Sidebar","LoginModalComponent","deviceService","authService","dialog","detectDevice","loginForm","password","deviceInfo","getDeviceInfo","isMobile","isTablet","isDesktopDevice","isDesktop","login","device","Result","IsSuperUser","getClient","ress","localStorage","setItem","Clientid","ClientName","parseInt","getItem","CLIENT_NAME","getstationvisble","getStations","stationsDt","client_stations","Id","getStation","stationData","open","panelClass","openForgotpasswordForm","colorRangeForAmaala","CommonRange","Range","WindDirectionRange","Barometric_pressureRange","WBGT_sensorRange","WBGT_NewRange","HeatIndexColorRange","Cloud_cover_range","CommonColor","HeatIdexColor","WbgtColor","BaroetricColor","SolarColor","WinDirectionColor","WBGTNewcolor","Cloud_cover_colour","NavbarMergedComponent","currentSidebar","main","toString","isVisible","getLastSidebar","sidebarSubscription","subscription","unsubscribe","getSidebar","sidebar","PasswordForgotService","http","user","forgot_pswrd_url","API_END_POINT","otp_url","password_reset_url","postData","UserName","post","pipe","err","otp","postOtpData","OTP","newpassword","Password","providedIn","CreateUserComponent","userService","userGroupService","client_id","superUser","mailAlert","isMailAlert","displayName","isSMSAlert","userType","checked","userForm","FirstName","LastName","ContactNo","UserTypeId","UserGroupId","IsMailAlert","IsSMSAlert","RegulationViolationAlert","MachineStopAlert","DailyMailAlert","getAllUserGroups","userGroups","filter","GroupName","userGroupArray","map","userGroup","Name","submitData","Device","clientId","postUser","createUser","response","reset","navigate","openpopup","environment","production","ForgotPasswordComponent","passwordForgotService","forgotpassword","EmailID","status","myClickFunction","ContactUsService","contactUs_url","UserService","user_url","userId","userData","userUpdatedData","put","ColorCodesComponent","fetchColorCodes","getAllColorCodes","color_codes","parametrName","key","ParameterName","AmaalaDashboardComponent","current_tile_clock","year","monthAndDay","time","updated_tile_clock","apiInerval","REFRESH_FREQUENCY","other_info","UrlImage","LastUpdateDate","Needle","Needle1","abmColor","image_url","uid1","uid2","clientName","bindStationSidebar","initialStationId","bindStationdata","liveClock","bindAllStationsSummary","stations","selected_station","station","stationdata","LocationImage","LoactionImage","dAndT","setInterval","getTime","stTime","Column1","getFullYear","getThreeLetterMonthName","getDate","stindex","apiSubscription","summary","stations_summary","m","Time","logout","graphReport","SelectClientService","stations_for_login","RegulationService","regulation_url","regulation_report","regulation_daily_report","lastUpdate_Daily","TwentyFourTemperatureReport","LastTwentyDays","TwentyFourReport","WindDirection","WindDirectionDailyreportRose","PDFDownload","DailyVibration","DailyNoise","DailyHumidity","DailyWindSpeed","RegulationId","Year","DateTime","CreateUserGroupComponent","stationsApi","userGroupApi","userGroupForm","Description","stationsSelected","array","insert","control","stationPermissions","controls","checkbox","StationId","PermissionStatus","StationsPermission","postUserGroupData","createUserGroup","EventGraphComponent","EventSelected","headElements","Download","emit","vibration_event_name","TableVibrationEvent","_vibrationEvent","xx","exportToCsv","BarchartComponent","chartType","includes","getpm10_GraphlegendCodeColor","color","PM10_Colorcodes","lowest","Number","POSITIVE_INFINITY","highest","NEGATIVE_INFINITY","tmp","createSvg","drawBars","parsedate","padding","bandwidth","toLocaleString","monthNames","datex","month","getMonth","day","dateStr","ScatterComponent","drawPlot","dots","Cloud","webpackContext","req","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","webpackContextKeys","Object","resolve","module","exports","AppComponent","title","autoLogin","DownloadPDFService","EditUserComponent","params","getUser","UserId","putUserData","updateUser","AllGraphsComponent","title_noise","readingAvailability","getAvailableReadingsForStation","Pm10","getEbamDataPM10","Pm25","getEbamDataPM25","temperature","humidity","windSpeed","noise","getEbamDataNoise","noiseData","background","getEbamDataNoiseBackground","backgroundData","getEbamDataNoiseEvent","eventData","eventGraphData","StationsNavbarComponent","AppSettings","CLIENT_URL","StationsSidebarComponent","isShown","stationsAllowed","isAdmin","getAllowedStations","getLastSidebarvisibilityOnReload","doSidebarSubscription","UserGroupPermission","permission","getLastSidebarVisibility","filterStations","sendStationChange","setStationSideMenuVisibility","changeSidebar","admin","getStationSideMenuVisibility","AuthGuard","state","isLoggedIn","parseUrl","AppModule","forRoot","apiKey","declarations","entryComponents","imports","providers","bootstrap","ReportFiltersComponent","regulationService","chkPM10","chkPM2_5","chkTemperature","chkHumidity","chkWindSpeed","chkWindDirection","chkNoise","chkVibrationBackground","chkVibrationEvent","chkHeatIndex","chkHumidity2m","chkSolarRadiation","chkTemperature2m","chkWBGT","chkWindSpeed2m","chkangleAndDirections2m","chkbarometricPressure","chkduePointTemperature","chksoilTemperature","chkwetBulbTemperature","chkSolarRadiationDHI","chkVWCContent","chkEConductivity","chkCloudCover","chkVisibility","chkRain","chkTemperature2m10m","chkHumidity2m10m","chkWindSpeed2m10m","chkWindSpeed10m","chkWindDirection2m","chkWindDirection10m","chkUnSelect","MinuteVisble","HourVisble","VisibilityVisible","downloadBtn","bannerVisible","stationDrpVisible","Print","DailyWindDirectionReport","init","fetchRegulations","ms","Promise","setTimeout","allStations","getAllRegulations","regulations","allRegulations","stationDat","heatIndex","SolarRadiationDHI","VWConductivity","WindSpeed2m10m","StationValue","reportTitle","stationDt","OnUnSelectChanged","onSelectClick","openedWindow","startDtprint","EndDtprint","toLocaleDateString","Days","FindDiffers","getBasicReportfiveminnVisibility","ReportByMintueVisibility","getBasicReportHour","ReportByHour","getVibrationBgBasicReportMinute","VibrationBgReportByMinute","getVibrationBgBasicReportHourly","VibrationBgReportByHour","storeGraphData","getWindDirectionGraphData","WindDirectiongraphData","reportTitleForWindDrn","String","getBasicReportMinute","ReportByMintue","getBasicReportMinutecelometer","ReportByMintuecelometer","Ceilometer_Name","temp_name","preventDefault","From_Day","slice","To_Day","From_Month","To_Month","From_Year","To_Year","From_Date","To_Date","Vibration_Bg_Name","visibilityname","pm10_name","pm25_name","humid_name","wind_name","noise_name","vibration_background_name","wind_direction_name","heatIndex_name","Humidity_10m_name","Humidity_2m_name","Solar_Radiation_name","Temperature_name","WindDirection_name","WindApeed_name","WBGT_name","barometricPressure_name","duePointTemperature_name","soilTemperature_name","solarRadiationDHI_name","wetBulbTemperature_name","vwc_name","ec_name","fifthcloud_name","fourthcloud_name","thirdcloud_name","secondcloud_name","visibilitycloud_name","Lowestcloud_name","Rain_name","TableTemperature","temp","utcTime","delay","pm10","TablePM10","pm","pm25","TablePM2_5","TableHumidity","humid","windspeed","TableWindSpeed","wind","TableNoise","_noise","NoiseMin","NoiseMax","NoiseAvg","vibrationBackground","TableVibrationBackground","_vibrationBackground","VibrationX","VibrationY","VibrationZ","TableheatIndex","_heat","HeatIndexValue","TableWBGT","_Wbgt","WBGTvalue","solarRadiation","TablesolarRadiation","_solarRadiation","SolarRadiationValue","_Temperature","windDirection10mDt","Table_2m10mwindDirection","_windDirection","windDirection2mDt","duePointTemp","TableduePointTemperature","_duepoint","bmPressure","TablebarometricPressure","_bmpressure","BarometricPressure","soiltemp","TablesoilTemperature","_soil","solarDHI","TablesolarRadiationDHI","_solardhi","wetBulb","TablewetBulbTemperature","_wetBulb","VWC","TableVWC","_vwc","VolumetricWContent","EC","TableEC","_ec","electrical_C","CS136_Fifth_Cloud_Oktas","FifthCloudEC","_fifth","CS136_Fourth_Cloud_Oktas","FourthCloudEC","_fourth","CS136_Third_Cloud_Oktas","ThirdCloudEC","_third","CS136_Second_Cloud_Oktas","SecondCloudEC","_second","CS136_Vertical_Visibility","VisibleCloudEC","_vertical_visibility","LowestCloudEC","_Lowest","RainTbl","_Rain","RainValue","date1","date2","UTC","SelectClientComponent","selectstations","getstationsforfirstpage","StationsAllSummaryComponent","sanitizer","mapLocation","loadStyle","styleName","head","getElementsByTagName","themeLink","href","createElement","rel","type","appendChild","getAllStationsSummary","StationsSummary","Info","SVGFile","bypassSecurityTrustResourceUrl","readingType","Document","HomePageComponent","height_nav","buttontoggle","openLoginForm","openContactForm","SidebarMergedComponent","WindDirectionReportComponent","WindDirectionsByDate","RegulationReportComponent","years","selectedRegulationId","currentYear","regulationId","getRegulationReport","regulationReport","onRegulationChange","CsvDataService","filename","rows","separator","csvData","row","k","cell","undefined","replace","search","blob","Blob","navigator","msSaveBlob","link","download","url","URL","createObjectURL","setAttribute","visibility","click","removeChild","material","MaterialModule","NavbarComponent","setLastStationOnReload","subscribeToStationChange","lastUsedStation","stationSubscription","getStationChange","AdminNavbarComponent","BasicReportComponent","PopupModalComponent","OtpModalComponent","otpService","errorMsg","otpconfirm","OtpConfirm","UserGroupService","userGroup_url","userGroupId","userGroupData","userGroupUpdatedData","DailyReportComponent","valueOf","client_url_bottom","now","selectedRegulationFlag","AYC_LastUpdateDaily_status","DGDA_LastUpdateDaily_status","NORTH_LastUpdateDaily_status","SOUTH_LastUpdateDaily_status","Chart_Flag","selectedRegulationName","visible","getTodayDateTIme","ClientID","ClientNameBind","IsDesable","datafortablewind","selectedRegulation","dateTime","resetChart","yearDate","selectedyear","todaydate","fire","icon","confirmButtonText","getRegulationValue","RegulationValue","DGDA_PM10_RV","getLastTwentyDays","generateStationName","last_twenty_data","AYC_PM10_LastTwentyDays","ReportDatas","AYC_PM10_LastTwentyDays_Graph","PM10_LastTwentyDays_Label","Month_Day","DGDA_PM10_LastTwentyDays","DGDA_PM10_LastTwentyDays_Graph","NORTH_PM10_LastTwentyDays","NORTH_PM10_LastTwentyDays_Graph","SOUTH_PM10_LastTwentyDays","SOUTH_PM10_LastTwentyDays_Graph","Chart_TwentyDays","getWindSpeedDailyReport","windSpeedDt","getTwentyFourReport","twenty_four_report","generateStationNameTwentFour","AYC_PM10_1H","AYC_PM10_1H_Label","AYC_PM10_1H_Graph","NORTH_PM10_1H","NORTH_PM10_1H_Graph","SOUTH_PM10_1H","SOUTH_PM10_1H_Graph","DGDA_PM10_1H","DGDA_PM10_1H_Graph","Chart_24Hrs","getLastUpdateDaily","LastUpdateDaily","report_table_data","DGDA_LastUpdateDaily","getWindDirection","Wind","getWindDirectionDailyReportRose","WindRose","windRoseData","getTwentyFourTemperatureReport","Temp","generateStationNameTemp","DGDA_Temp","TemperatureReportDatas","Temperature_Chart_Label","DGDA_Temperature_Chart_Value","NORTH_Temp","NORTH_Temperature_Chart_Value","SOUTH_Temp","SOUTH_Temperature_Chart_Value","AYC_Temp","AYC_Temperature_Chart_Value","Temperature_Chart","getvibrationDailyReport","vibrationDt","generateStationNameVibration","DGDA_Vib","DailyVibrationReportDatas","Vibration_Chart_Label","DGDA_vibration_Chart_Value","Vibration","VMPeak","NORTH_Vib","NORTH_Vibration_Chart_Value","SOUTH_Vib","SOUTH_Vibration_Chart_Value","AYC_Vib","AYC_Vibration_Chart_Value","Vibration_Chart","getNoiseDailyReport","noiseDt","generateStationNameNoise","DGDA_Noise","DailyNoiseReportDatas","Noise_Chart_Label","DGDA_Noise_Chart_Value","NORTH_Noise","NORTH_Noise_Chart_Value","SOUTH_Noise","SOUTH_Noise_Chart_Value","AYC_Noise","AYC_Noise_Chart_Value","NoiseGraph_Chart","getHumidityDailyReport","humidityDt","generateStationNameHumidity","DGDA_Humidity","HumidityDataReportDatas","Humidity_Chart_Label","DGDA_Humidity_Chart_Value","NORTH_Humidity","NORTH_Humidity_Chart_Value","SOUTH_Humidity","SOUTH_Humidity_Chart_Value","AYC_Humidity","AYC_Humidity_Chart_Value","Humidity_Graph_Chart","RegulationName","graph_stations_name","graph_stations_name_temp","graph_stations_name_twenty_four","graph_station_name_vibration","graph_station_name_noise","graph_stations_name_humidity","colors","Chart20Days","labels","datasets","label","backgroundColor","options","legend","display","fontColor","scales","yAxes","beginAtZero","Chart24Hrs","Humidity_Chart","fill","borderColor","Temerature_Chart","Vibration_Chart_Daily","Noise_Chart","PM10TwentyFour","RangeTwentyFour","regulation","actual","PM10Annuval","RangeAnnuval","Wind_Speed_Chart_Graph","destroy","handleChange","generateDailyReport","ResetPasswordComponent","showMsg","resetpassword","confirmpassword","validator","checkIfMatchingPasswords","resetPassword","passwordKey","passwordConfirmationKey","passwordInput","passwordConfirmationInput","setErrors","notEquivalent","GaugeComponent","gaugemap","uid","needlevalue","MaxValue","gaugeUnit","Unit","MinValue","draw","MinumumValue","_gauge_ticks","ColorRangeCode","colorFun","ColorFunction","self","gauge","container","configuration","config","size","clipWidth","clipHeight","ringInset","ringWidth","pointerWidth","pointerTailLength","pointerHeadLengthPercent","minValue","maxValue","minAngle","maxAngle","transitionMs","majorTicks","labelFormat","labelInset","colorfn","arcColorFn","r","pointerHeadLength","arc","scale","tickData","pointer","donut","deg2rad","deg","PI","newAngle","ratio","configure","prop","round","start_angles","end_angles","colorData","val","innerRadius","outerRadius","startAngle","endAngle","centerTranslation","isRendered","render","newValue","centerTx","arcs","lg","lineData","pointerLine","pg","update","newConfiguration","powerGauge","EditUserGroupComponent","allDataReceived","getUserGroup","patchValue","stationsData","stationsArray","find","updateUserGroupData","AuthService","login_url","Client_url","next","removeItem","MultiLineChartComponent","chart","pad2","getHours","getMinutes","getSeconds","n","ykeyUnit","unit","minmum","YMinimum","maximum","YMaximum","minmumAdjust","YMinimumAdjust","maximumAdjust","YMaximumAdjust","limitLineX","LimitLineX","maxVal","MaxVal","getStringDate","items","replacer","header","csv","fieldName","columns","formatDate","bisectDate","formatValue","top","right","bottom","rangeRound","z","line","degrees","XLabel","focus","overlay","colorCodes","cy","cx","cxInc","item","input","speed","copy","cities","values","_maximum","c","_minmum","nice","city","exit","getProperColorCode","merge","circles","mousemove","x0","d0","d1","StationsService","stations_url","amaalastation_url","station_url","all_stations_summary","all_stations_color_codes","getAvailbleRedingTypesForStation","readingAvailable","current_station_id","readingsAvailable","Temparature","EventVibration","BackgroundVibration","SolarRadiationGHI","WBGTSensor","WetBulbTemperature","DewPointTemperature","SoilTemperature","WinDirection2m10m","WinDirection10m","RelativeHumidity2m","AmbientTemparature2m","SoilMoistureVWC","SoilMoistureEC","MessageService","stationChange","showStationSidemenu","sidebarChange","Mobile","test","userAgent","lastStation","callback","asObservable","newSidebar","lastSidebar","show","sideMenuVisibility","graphDatas","EbamDataService","ebam_pm10_url","ebam_pm25_url","ebam_temperature_url","ebam_temperature_url_ByDate","ebam_wind_speed_url","ebam_wind_speed_url_ByDate","ebam_wind_direction_url","ebam_wind_rose_url","ebam_wind_rose_url_ByDate","ebam_humidity","ebam_humidity_ByDate","ebam_noise","ebam_noise_background","ebam_summary","ebam_all_graph_data","ebam_pm10_GraphlegendCodeColor","ebam_basic_report_minute","ebam_basic_report_minute_celometer","ebam_basic_report_minute_Visibility","ebam_basic_report_hour","event_graph_data","ebam_noise_event","ebam_vibration_background_byminute","ebam_vibration_background_byhourly","ebam_wet_bulb_temperature","ebam_wet_bulb_temperature_ByDate","ebam_humidity_two","ebam_humidity_two_ByDate","ebam_temperature_url_two","ebam_temperature_url_two_ByDate","ebam_wind_rose_url_two","ebam_wind_rose_url_two_ByDate","ebam_wind_speed_url_two","ebam_wind_speed_url_two_ByDate","ebam_soil_temp","ebam_soil_temp_ByDate","ebam_wbgt","ebam_wbgt_ByDate","ebam_heatIndex","ebam_heatIndex_ByDate","ebam_Bpressure","ebam_Bpressure_ByDate","ebam_solarRadiation","ebam_solarRadiation_ByDate","ebam_WindDirection_graph_data","todayDate","Start","End","strcurrentDate","eventId","fromDate","toDate","windSpeedAndAngle","pm2_5","ECdata","CloudCover","menudata","menuDatas","WindDirectionComponent","iswinval","IsWin","drawEbamBarChartWindDirection","drawWindRoseChart","chartWidth","chartHeight","angle","radius","align","t","j","total","Angle","y0","angleOffset","padAngle","padRadius","yAxis","yTick","reverse","routes","component","canActivate","children","redirectTo","AppRoutingModule","UserGroupComponent","columndefs","fetctData","getUserGroupData","paginator","dataLength","deleteUserGroup","AdminSidebarComponent","goToHomeSidebar","LandingPageComponent","SummaryComponent","lat","lng","station_name","safeUrl","getDashBoardTiles","selectdStation","hideUnnecessaryTilesForStation","station_summary","checkWindDirection","intervelHandle","clearInterval","toPng","quality","then","dataUrl","pdf","imgData","addImage","save","direction","dateAndTime","substring","hours","minutes","ampm","strTime","FirstDay","LastDay","setDate","current","weekstart","getDay","monday","weekend","sunday","firstDay","lastDay","UserComponent","getAllUsers","users","usersData","deleteUser","SidebarComponent","Sidebar_Station_Name","doStationChangeSubscription","HideUnNecessaryMenuAndTiles","showStationsMenu","bootstrapModule","webpackEmptyAsyncContext"],"mappings":"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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;;;AAEA,mBAAKvwB,eAAL,CAAqBwwB,kBAArB,CAAwC,KAAK3gB,cAAL,CAAoBgJ,EAA5D,EAAgE5T,KAAhE,EAAuEE,GAAvE,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F;;AACF;;AACF;;AACF;;AACF;;AACF;;AAEF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACF;;AACA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAGF;;AACF;;AACA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACF;;AACF;;AACF;;AACF;;AAEF;;AACA;;AACE;;AACE;;AACE;;AACE;;AAIE;;AACF;;AAEA;;AAGE;;AAAS;;AAA2B;;AAAW;;AACjD;;AACA;;AACE;;AAI4D;;AAEhE;;AACF;;AACF;;AACF;;AACA;;AACE;;AACE;;AACE;;AACE;;AACA;;AAGE;;AACE;;AACF;;AACA;;AACE;;AACE;;AACE;;AACF;;AACA;;AACM;;AAAI;;AAAU;;AACd;;AAIL;;AACH;;AACA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAAI;;AAAkB;;AACtB;;AACD;;AACH;;AACA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAAI;;AAAiB;;AACrB;;AACD;;AACH;;AACA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAAI;;AAAY;;AAClB;;AACC;;AACH;;AACF;;AACF;;AACA;;AACF;;AACF;;AACF;;AAEA;;AACE;;AACE;;AAEE;;AACE;;AAEA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACA;;AACE;;AAMF;;AACF;;AACA;;AACE;;AAKF;;AACF;;AACA;;AAEA;;AACE;;AAEA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACA;;AACE;;AACF;;AACF;;AACA;;AACE;;AAKF;;AACF;;AACA;;AAEA;;AACE;;AAEA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACA;;AACE;;AACF;;AACF;;AACA;;AACE;;AAKF;;AACF;;AACA;;AAEA;;AACE;;AAEA;;AACE;;AACE;;AACF;;AACA;;AACE;;AAEF;;AACA;;AACE;;AACF;;AACF;;AACA;;AACE;;AAKF;;AACF;;AACA;;AAEA;;AACE;;AAKF;;AACA;;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","file":"main-es5.js","sourcesContent":["import { dateAndTime } from \"./dateAndTime\";\r\n\r\nfunction generateUniqueId() {\r\n return makeRandomString(5) + +new Date();\r\n}\r\n\r\nfunction makeRandomString(length) {\r\n var result = '';\r\n var characters = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';\r\n var charactersLength = characters.length;\r\n for (var i = 0; i < length; i++) {\r\n result += characters.charAt(Math.floor(Math.random() * charactersLength));\r\n }\r\n return result;\r\n}\r\n\r\nexport { generateUniqueId }","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { colorRangeForAmaala } from 'src/app/common/colorrangeforamaala';\r\nimport { GaugeComponent } from '../gauge/gauge.component';\r\nimport { dateAndTime } from 'src/app/common/dateAndTime'\r\n\r\n\r\n@Component({\r\n selector: 'app-station-graphs',\r\n templateUrl: './station-graphs.component.html',\r\n styleUrls: ['./station-graphs.component.css']\r\n})\r\nexport class StationGraphsComponent implements OnInit {\r\n\r\n public stationId:any=[];\r\n public summarydata:any=[];\r\n public ColourRange:any=[];\r\n public wetBulbData:any=[];\r\n public humidity10mData:any=[];\r\n public humidity2mData:any=[];\r\n public temperature10mData:any=[];\r\n public temperature2mData:any=[];\r\n public windRose10mData:any=[];\r\n public windRose2mData:any=[];\r\n public windSpeedtenData:any=[];\r\n public windSpeedtwoData:any=[];\r\n public soilTempData:any=[];\r\n public WBGTData:any=[];\r\n public HeatIndexData:any=[];\r\n public BarometricPressureData:any=[];\r\n public SolarRadiationData:any=[];\r\n\r\n //garph title\r\n public title_wetbulb_tempersture:any=\"Wet Bulb Temperature\";\r\n public title_humidityten:any=\"Humidity 10 m\";\r\n public title_humiditytwo:any=\"Humidity 2 m\";\r\n public title_temperatureten:any=\"Ambient Temperature 10 m\";\r\n public title_temperaturetwo:any=\"Ambient Temperature 2 m\";\r\n public title_wind_directionten:any=\"Wind Direction 10 m\";\r\n public title_wind_directiontwo:any=\"Wind Direction 2 m\";\r\n public title_wind_speed_ten:any=\"Wind Speed 10 m\";\r\n public title_wind_speed_two:any=\"Wind Speed 2 m\";\r\n public title_soil_tempersture:any=\"Soil Temperature\";\r\n public title_WBGT:any = \"WBGT\";\r\n public title_HeatIndex:any = \"Heat Index\";\r\n public title_BarometricPressure:any = \"Barometric Pressure\";\r\n public title_SolarRadiation:any=\"Solar Radiation\";\r\n\r\n public stationName:any;\r\n public currentDate : any;\r\n\r\n public dateFrom: Date = new Date();\r\n public dateTo: Date = new Date();\r\n // public dateStart: dateAndTime\r\n // public dateEnd: dateAndTime\r\n public period: String = \"\";\r\n public dateFromAllowed: boolean = true;\r\n public dateToAllowed: boolean = false;\r\n public datetime: dateAndTime\r\n \r\n\r\n constructor(\r\n private route: ActivatedRoute,\r\n private ebamDataService: EbamDataService,\r\n private router: Router\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.datetime = new dateAndTime();\r\n var stationId = this.route.snapshot.paramMap.get('id');\r\n this.stationName = this.route.snapshot.paramMap.get('station');\r\n this.stationId = stationId;\r\n this.ColourRange = colorRangeForAmaala;\r\n this.drawgraph(this.stationId);\r\n this.currentDate = new Date();\r\n }\r\n drawgraph(stationid)\r\n {\r\n debugger\r\n this.ebamDataService.getEbamDataSummary(stationid).subscribe((data: any) => { \r\n if (data) { \r\n this.summarydata = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWetBuldTemperature(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.wetBulbData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataHumidity(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.humidity10mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataHumidityTwo(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.humidity2mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataTemprature(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.temperature10mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataTempraturetwo(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.temperature2mData = data; \r\n }\r\n }); \r\n\r\n this.ebamDataService.getEbamDataWindRose(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.windRose10mData = data; \r\n console.log(\"getangleand direstions \",data) \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWindRosetwo(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.windRose2mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWindSpeed(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.windSpeedtenData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWindSpeed2m(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.windSpeedtwoData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataSoilTemperature(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.soilTempData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWBGT(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.WBGTData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataHeatIndex(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.HeatIndexData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataBpressure(stationid,24).subscribe((data: any) => { \r\n if (data) { \r\n this.BarometricPressureData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamSolarRadiation(stationid,24).subscribe((data: any) => { \r\n debugger \r\n if (data) { \r\n this.SolarRadiationData = data; \r\n console.log(\"solar data\",this.SolarRadiationData); \r\n }\r\n });\r\n\r\n }\r\n openGraphPopUp(popup)\r\n {\r\n\r\n }\r\n goBackFn()\r\n {\r\n this.router.navigateByUrl('/Amaala-dashboard');\r\n }\r\n onPeriodChange(period) {\r\n debugger\r\n this.period = period;\r\n this.dateFromAllowed = false;\r\n \r\n if (period == 'daily') {\r\n this.dateFromAllowed = true;\r\n this.dateFrom = this.datetime.getToday();\r\n this.dateTo = this.dateFrom\r\n }\r\n else if (this.period == 'today') {\r\n this.dateTo = this.datetime.getToday();\r\n this.dateFrom = this.datetime.getToday();\r\n }\r\n else if (this.period == 'yesterday') {\r\n this.dateTo = this.datetime.getYesterday();\r\n this.dateFrom = this.datetime.getYesterday();\r\n }\r\n else if (this.period == 'thisWeek') {\r\n this.dateFrom = this.datetime.getThisWeekStart();\r\n this.dateTo = this.datetime.getThisWeekEnd();\r\n }\r\n else if (this.period == 'lastWeek') {\r\n this.dateFrom = this.datetime.getLastWeekStart();\r\n this.dateTo = this.datetime.getLastWeekEnd();\r\n }\r\n else if (this.period == 'thisMonth') {\r\n this.dateFrom = this.datetime.getThisMonthStart();\r\n this.dateTo = this.datetime.getThisMonthEnd();;\r\n }\r\n else if (this.period == 'lastMonth') {\r\n this.dateFrom = this.datetime.getLastMonthStart();\r\n this.dateTo = this.datetime.getLastMonthEnd();\r\n }\r\n else if (this.period == 'thisYear') {\r\n this.dateFrom = this.datetime.getThisYearStart();\r\n this.dateTo = this.datetime.getThisYearEnd();\r\n }\r\n else if (this.period == 'lastYear') {\r\n this.dateFrom = this.datetime.getLastYearStart()\r\n this.dateTo = this.datetime.getLastYearEnd()\r\n }\r\n else if (this.period == 'Week') {\r\n this.dateFromAllowed = true;\r\n }\r\n else if (this.period == 'Month') {\r\n this.dateFromAllowed = true;\r\n \r\n }\r\n else if (this.period == 'Year') {\r\n this.dateFromAllowed = true;\r\n }\r\n }\r\n generateBasicReport() {\r\n\r\n\r\n var start = new Date(this.dateFrom).toDateString();\r\n var end = new Date(this.dateTo).toDateString();\r\n var reporttitle = \"\"\r\n \r\n /*If same day time must be given */\r\n if (start == end) {\r\n start = start + \" 00:00:00\"\r\n end = end + \" 23:59:59\"\r\n start = new Date(start).toISOString();\r\n end = new Date(end).toISOString();\r\n \r\n // reporttitle = \"Report for - \" + new Date(start).toLocaleDateString('en-GB')\r\n }\r\n else {\r\n start = new Date(start).toISOString();\r\n end = new Date(end).toISOString();\r\n // reporttitle = \"Report for the period of \"\r\n // + new Date(start).toLocaleDateString('en-GB')\r\n // + \" - \"\r\n // + new Date(end).toLocaleDateString('en-GB')\r\n \r\n }\r\n \r\n\r\n //data for date range\r\n this.ebamDataService.getEbamDataWetBuldTemperature_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.wetBulbData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataHumidity_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.humidity10mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataHumidityTwo_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.humidity2mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataTemprature_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.temperature10mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataTempraturetwo_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.temperature2mData = data; \r\n }\r\n }); \r\n\r\n this.ebamDataService.getEbamDataWindRose_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.windRose10mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWindRosetwo_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.windRose2mData = data; \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWindSpeed_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.windSpeedtenData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWindSpeed2m_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.windSpeedtwoData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataSoilTemperature_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.soilTempData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataWBGT_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.WBGTData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataHeatIndex_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.HeatIndexData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamDataBpressure_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.BarometricPressureData = data; \r\n \r\n }\r\n });\r\n\r\n this.ebamDataService.getEbamSolarRadiation_ByDate(this.stationId,start,end).subscribe((data: any) => { \r\n if (data) { \r\n this.SolarRadiationData = data; \r\n \r\n }\r\n });\r\n\r\n\r\n\r\n\r\n }\r\n ToDateChange(todate: Date) {\r\n this.dateTo = todate;\r\n }\r\n startDateChange(event) {\r\n var date = event.target.value;\r\n this.dateFrom = date;\r\n if (this.period == 'daily') {\r\n this.dateTo = this.dateFrom;\r\n }\r\n else if (this.period == 'Month') {\r\n this.dateFrom = this.datetime.getMonthFirstDay(this.dateFrom);\r\n this.dateTo = this.datetime.getMonthLastDay(this.dateFrom);\r\n // event.target.value=\"2021-01-01\";\r\n //this.dateFrom=new Date(\"2021-01-01\");\r\n console.log(this.dateFrom);\r\n \r\n }\r\n else if (this.period == 'Year') {\r\n this.dateFrom = this.datetime.getYearFirstDay(this.dateFrom);\r\n this.dateTo = this.datetime.getYearLastDay(this.dateFrom);\r\n }\r\n else if (this.period == 'Week') {\r\n this.dateTo = this.datetime.getWeeklyAddDay(this.dateFrom);\r\n }\r\n //event.preventDefault();\r\n \r\n }\r\n}\r\n","
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n

REPORT FOR AMAALA

\r\n\r\n

{{stationName }} MONITORING REPORT

\r\n
\r\n
\r\n\r\n
\r\n
\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \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 { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { MatDialogRef } from '@angular/material/dialog';\r\nimport { ContactUsService } from 'src/app/services/contact-us/contact-us.service';\r\n\r\n@Component({\r\n selector: 'app-contact-modal',\r\n templateUrl: './contact-modal.component.html',\r\n styleUrls: ['./contact-modal.component.css']\r\n})\r\nexport class ContactModalComponent implements OnInit {\r\n\r\n contactForm;\r\n errorMessage: string;\r\n constructor(private fb: FormBuilder,\r\n private dialogRef: MatDialogRef, private contactUs: ContactUsService) { }\r\n\r\n ngOnInit(): void {\r\n this.contactForm = this.fb.group({\r\n FullName: [\"\", Validators.required],\r\n EmailId: [\"\", [Validators.required, Validators.email]],\r\n Message: [\"\", Validators.required]\r\n })\r\n }\r\n onSubmit(){\r\n // console.log(\"contact form\",this.contactForm);\r\n this.contactUs.postMessage(this.contactForm.value).subscribe(res => {\r\n\r\n if(res[0].IsSuccess){\r\n // console.log(res);\r\n this.dialogRef.close();\r\n } \r\n else if (!res[0].IsSuccess) {\r\n this.errorMessage = res[0].Message;\r\n }\r\n }, error => {\r\n // console.log(error);\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

DROP US A MESSAGE

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Name *\r\n
\r\n \r\n \r\n \r\n Name is required\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n Email *\r\n
\r\n \r\n \r\n \r\n \r\n Email Id is required\r\n Enter a valid email\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Message\r\n
\r\n \r\n \r\n \r\n Message is required\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n CONTACT US\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-loading-spinner',\r\n templateUrl: './loading-spinner.component.html',\r\n styleUrls: ['./loading-spinner.component.css']\r\n})\r\nexport class LoadingSpinnerComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
","import { AfterViewInit, Component, ElementRef, Input, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\nimport * as d3 from 'd3';\r\n\r\n\r\n@Component({\r\n selector: 'app-linechart',\r\n templateUrl: './linechart.component.html',\r\n styleUrls: ['./linechart.component.css']\r\n})\r\nexport class LinechartComponent implements OnInit, AfterViewInit, OnChanges {\r\n @ViewChild(\"linechartfigure\") divView: ElementRef;\r\n\r\n @Input()\r\n ChartTitle: string\r\n @Input()\r\n Data: any\r\n @Input()\r\n XKey: string\r\n @Input()\r\n YKey: string\r\n @Input()\r\n ColorKey: string\r\n @Input()\r\n LabelX: string\r\n @Input()\r\n LabelY: string\r\n @Input()\r\n ToolTipUnit: string\r\n\r\n @Input()\r\n Max: number\r\n\r\n @Input()\r\n Min: number\r\n\r\n public data: any;\r\n private svg;\r\n private margin = 100;\r\n private width = 540 - (this.margin * 2);\r\n private height = 400 - (this.margin * 2);\r\n\r\n public figureId = null;\r\n\r\n constructor() {\r\n this.figureId = \"line-chart-\" + generateUniqueId();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Data.currentValue) {\r\n this.data = changes.Data.currentValue\r\n this.drawLineChart(this.data);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initChart();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n initChart() {\r\n \r\n //width of container\r\n this.width = this.divView.nativeElement.offsetWidth + 50 - (this.margin * 2);\r\n\r\n //too small apply better width and make scrollable\r\n if (this.width <= 300) {\r\n this.width = 650 - (this.margin * 2);\r\n this.height = 400 - (this.margin * 2);\r\n }\r\n else {\r\n this.width = this.width - (this.margin / 2);\r\n }\r\n\r\n this.data = this.Data;\r\n this.drawLineChart(this.data);\r\n }\r\n\r\n drawLineChart(data: any[]) {\r\n\r\n var colorKey = this.ColorKey;\r\n var yKey = this.YKey;\r\n var xKey = this.XKey;\r\n var toolTipUnit = this.ToolTipUnit;\r\n var max = this.Max;\r\n var min = this.Min;\r\n data.forEach(element => {\r\n element[xKey] = new Date(element[xKey]);\r\n });\r\n\r\n var bisectChart = (xy) => {\r\n const bisect = d3.bisector(d => d[xKey]).left;\r\n const date = x.invert(xy);\r\n const index = bisect(data, date, 1);\r\n const a = data[index - 1];\r\n const b = data[index];\r\n return b && (date - a.date > b.date - date) ? b : a;\r\n\r\n }\r\n\r\n var callout = (g, Value, cc) => {\r\n if (!Value) return g.style(\"display\", \"none\");\r\n\r\n g.style(\"display\", null)\r\n .style(\"pointer-events\", \"none\")\r\n .style(\"font\", \"10px sans-serif\");\r\n\r\n const path = g.selectAll(\"path\")\r\n .data([null])\r\n .join(\"path\")\r\n .attr(\"fill\", cc)\r\n .attr(\"stroke\", cc)\r\n .attr(\"stroke-linecap\", \"round\")\r\n\r\n\r\n const text = g.selectAll(\"text\")\r\n .data([null])\r\n .join(\"text\")\r\n .call(text => text\r\n .selectAll(\"tspan\")\r\n .data((Value).split(/\\n/))\r\n .join(\"tspan\")\r\n .attr(\"x\", 0)\r\n .attr(\"y\", (d, i) => `${i * 1.1}em`)\r\n .style(\"font-weight\", (_, i) => i ? null : \"bold\")\r\n .style(\"font-size\", \"15px\")\r\n .text(d => d))\r\n .style(\"fill\", \"Black\");\r\n\r\n const { x, y, width: w, height: h } = text.node().getBBox();\r\n\r\n text.attr(\"transform\", `translate(${-w / 2},${15 - y})`);\r\n path.attr(\"d\", `M${-w / 2 - 10},5H-5l5,-5l5,5H${w / 2 + 10}v${h + 20}h-${w + 20}z`);\r\n }\r\n\r\n var parseTime = d3.timeParse(\"%m/%d/%Y %I\");\r\n\r\n // set the ranges\r\n var x = d3.scaleTime().range([0, this.width]);\r\n var y = d3.scaleLinear().range([this.height, 0]);\r\n\r\n // define the line\r\n var valueline = d3.line()\r\n .curve(d3.curveNatural)\r\n .defined(d => !isNaN(d[yKey]))\r\n .x(d => x(d[xKey]))\r\n .y(d => y(d[yKey]))\r\n\r\n // append the svg obgect to the body of the page\r\n // appends a 'group' element to 'svg'\r\n // moves the 'group' element to the top left margin\r\n d3.select(\"#\" + this.figureId + \">svg\").remove();\r\n this.svg = d3.select(\"figure#\" + this.figureId + \"\")\r\n .append(\"svg\")\r\n // .attr('preserveAspectRatio', 'xMinYMin meet')\r\n // .attr('viewBox','0 0 ' +(this.width + (this.margin * 2)) +' ' +(this.height + (this.margin * 2)))\r\n .attr(\"width\", this.width + (this.margin * 2))\r\n .attr(\"height\", this.height + (this.margin * 2))\r\n .append(\"g\")\r\n .attr(\"transform\", \"translate(\" + this.margin + \",\" + this.margin + \")\")\r\n .style(\"-webkit-tap-highlight-color\", \"transparent\")\r\n .style(\"overflow\", \"visible\");\r\n\r\n // Get the data\r\n\r\n\r\n // format the data\r\n data.forEach(function (d) {\r\n //d[xKey] = parseTime(d[xKey]);\r\n d[xKey] = d[xKey];\r\n d[yKey] = +d[yKey];\r\n });\r\n\r\n // Scale the range of the data\r\n x.domain(d3.extent(data, function (d) { return d[xKey]; }));\r\n if(min&max)\r\n {\r\n y.domain([min, max]);\r\n }\r\n else if (max) {\r\n y.domain([0, max]);\r\n }\r\n else {\r\n var maximumY = d3.max(data, function (d) { return d[yKey]; });\r\n maximumY = maximumY + (maximumY * (50 / 100))\r\n y.domain([0, maximumY]);\r\n }\r\n\r\n\r\n //x-Axis label\r\n this.svg.append(\"text\")\r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"y\", this.height + (this.margin / 2) + 10)\r\n .attr(\"x\", this.width / 2)\r\n .text(this.LabelX);\r\n\r\n\r\n\r\n //y-Axis label\r\n this.svg.append(\"text\")\r\n .attr(\"transform\", \"rotate(-90)\")\r\n .attr(\"y\", 0)\r\n .attr(\"x\", 0)\r\n .attr(\"dy\", \"-4em\")\r\n .attr(\"dx\", -(this.height))\r\n .text(this.LabelY);\r\n\r\n\r\n\r\n this.svg.selectAll('path')\r\n .data(data)\r\n .enter()\r\n .append('path')\r\n .attr('d', function (d, i) {\r\n if (i === data.length - 1) {\r\n return valueline([data[i], data[i]])\r\n } else {\r\n return valueline([data[i], data[i + 1]])\r\n }\r\n })\r\n .attr(\"fill\", \"none\")\r\n .attr('stroke-width', 2.5)\r\n .attr(\"stroke-linejoin\", \"round\")\r\n .attr(\"stroke-linecap\", \"round\")\r\n .attr('stroke', function (d, i) { return d[colorKey] })\r\n .transition() // Call Transition Method\r\n .duration(2000) // Set Duration timing (ms)\r\n .ease(d3.easeLinear) // Set Easing option\r\n .attr(\"stroke-dasharray\", 5)\r\n .attr(\"opacity\", 1);\r\n\r\n\r\n\r\n // gridlines in x axis function\r\n function make_x_gridlines() {\r\n return d3.axisBottom(x)\r\n .ticks(5)\r\n }\r\n\r\n // gridlines in y axis function\r\n function make_y_gridlines() {\r\n return d3.axisLeft(y)\r\n .ticks(5)\r\n }\r\n\r\n\r\n // add the X gridlines\r\n this.svg.append(\"g\")\r\n .attr(\"class\", \"grid\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .attr(\"shape-rendering\", \"crispEdges\")\r\n .call(make_x_gridlines()\r\n .tickSize(-this.height)\r\n .tickFormat(\"\")\r\n )\r\n .attr(\"class\", \"grid-lines\")\r\n\r\n // add the Y gridlines\r\n this.svg.append(\"g\")\r\n .attr(\"class\", \"grid\")\r\n .attr(\"shape-rendering\", \"crispEdges\")\r\n .call(make_y_gridlines()\r\n .tickSize(-this.width)\r\n .tickFormat(\"\")\r\n )\r\n .attr(\"class\", \"grid-lines\")\r\n\r\n // Add the X Axis\r\n this.svg.append(\"g\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .call(d3.axisBottom(x).tickFormat(d3.timeFormat(\"%d %b %I:%M %p\")))\r\n .selectAll(\"text\")\r\n .style(\"text-anchor\", \"end\")\r\n .attr(\"dx\", \"-.8em\")\r\n .attr(\"dy\", \".15em\")\r\n .attr(\"transform\", \"rotate(-65)\");\r\n\r\n // Add the Y Axis\r\n this.svg.append(\"g\")\r\n .call(d3.axisLeft(y))\r\n .select(\".tick:last-of-type text\").clone();\r\n\r\n\r\n const tooltip = this.svg.append(\"g\");\r\n\r\n this.svg.append(\"rect\")\r\n .attr(\"class\", \"overlay\")\r\n .attr(\"width\", this.width)\r\n .attr(\"height\", this.height)\r\n .style('fill', 'none')\r\n .style('pointer-events', 'all');\r\n\r\n\r\n this.svg.on(\"touchmove mousemove\", function (event) {\r\n var pointedAt = bisectChart(d3.pointer(event, this)[0]);\r\n var timeString = pointedAt[xKey].toLocaleTimeString();\r\n tooltip\r\n .attr(\"transform\", `translate(${x(pointedAt[xKey])},${y(pointedAt[yKey])})`)\r\n .call(callout, `${(pointedAt[yKey] + \" \" + toolTipUnit)}\r\n ${(timeString)}`, pointedAt[colorKey]);\r\n });\r\n\r\n this.svg.on(\"touchend mouseleave\", () => tooltip.call(callout, 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
\r\n
\r\n

{{ChartTitle}}

\r\n
\r\n
\r\n \r\n
\r\n
\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 { ChangeDetectorRef, Component, Input, NgZone, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport * as $ from 'jquery'\r\nimport { CsvDataService } from 'src/app/services/report/csv-data.service';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { JsonpClientBackend } from '@angular/common/http';\r\nimport {Title} from \"@angular/platform-browser\";\r\nimport * as moment from 'moment';\r\n\r\n\r\n@Component({\r\n selector: 'app-basic-report-print',\r\n templateUrl: './basic-report-print.component.html',\r\n styleUrls: ['./basic-report-print.component.css']\r\n})\r\nexport class BasicReportPrintComponent implements OnInit {\r\n\r\n @Input()\r\n dateStatus: boolean\r\n\r\n @Input()\r\n CurrentStation: any\r\n\r\n @Input()\r\n Data: any\r\n\r\n @Input()\r\n Period: any\r\n public currentStation: any;\r\n public page_report: boolean = false;\r\n public TableVibrationEvent: any;\r\n\r\n public title_pm10: string;\r\n public title_temperature: string;\r\n public title_humidity: string;\r\n public title_wind_speed: string;\r\n public title_wind_direction: string;\r\n public title_wind_direction_10m: string;\r\n public title_pm25: string;\r\n public titile_noise: string;\r\n public title_background_noise: string;\r\n public title_event_noise: string;\r\n public title_HeatIndex:string;\r\n public title_SolarRadiation:any;\r\n public title_SolarRadiation_DHI:any;\r\n public title_WBGT:any;\r\n public title_wind_speed_two:any;\r\n public title_wind_directiontwo:any;\r\n public title_dew_point_temp:any;\r\n public title_soil_tempersture:any;\r\n public title_wetbulb_tempersture:any;\r\n public title_BarometricPressure:any;\r\n public title_VWC:any;\r\n public title_ElectricalC:any;\r\n public title_CloudCover:any;\r\n public title_Rain:any;\r\n public title_Visibility:any;\r\n\r\n public currentPopupGraph = \"none\";\r\n public isLoading: boolean = false;\r\n public isBusy:boolean = false;\r\n\r\n\r\n public pm10Data: any;\r\n public pm25data: any;\r\n public temperatureData: any;\r\n public humidityData: any;\r\n public windSpeedData: any;\r\n public windDirectionData: any;\r\n public NoiseData: any;\r\n public VibrationBackgroundData: any;\r\n public VibrationEventData: any;\r\n public period: any;\r\n public VibrationEventDataNew:any;\r\n public heatIndexData:any;\r\n public SolarRadiationData:any;\r\n public SolarRadiationDHIData:any;\r\n public WBGTData:any;\r\n public WindSpeed2mData:any;\r\n public WindSpeedAndAngleData:any;\r\n public angleAndDirections2mData:any;\r\n public barometricPressureData:any;\r\n public duePointTemperatureData:any;\r\n public soilTemperatureData:any;\r\n public wetBulbTemperatureData:any;\r\n public windSpeed2m10m:any;\r\n public windSpeed2m:any;\r\n public windSpeed10m:any;\r\n public Temperature2m10m:any;\r\n public Temperature2m:any;\r\n public Humidity2m10m:any;\r\n public Humidity2m:any;\r\n public WindDirection2m10m:any;\r\n public VWContent:any;\r\n public ElectriaclCdata:any;\r\n public CloudCoverData:any;\r\n public Visibilitydata:any;\r\n public RainData:any;\r\n public WindDirection2m:any;\r\n public WindDirection10m:any;\r\n public graphData:any;\r\n public startDate:any;\r\n public endDate:any;\r\n public periodName:any;\r\n public RainLabelY:any;\r\n public menuItem:any;\r\n public StationName:any;\r\n public oneDay:boolean=false;\r\n public reporttitle:any;\r\n public graphsRequired:any;\r\n public stationId:any;\r\n\r\n public Maxval:Number;\r\n public ClientId:any = +AppSettings.CLIENT_ID;\r\n \r\n public menuItemVisibility :any;\r\n\r\n stationSubscription: Subscription;\r\n\r\n constructor(\r\n private ebamDataService: EbamDataService,\r\n public messageService: MessageService,\r\n private stationService: StationsService,\r\n private stationsService: StationsService,\r\n private route: ActivatedRoute,\r\n private titleService:Title,\r\n ) {\r\n this.getCurrentstation();\r\n this.page_report = true;\r\n\r\n\r\n this.title_pm10 = \"PM10\";\r\n this.title_temperature = \"Temperature\";\r\n this.title_humidity = \"Humidity\";\r\n this.title_wind_speed = \"Wind Speed\";\r\n this.title_wind_direction = \"Wind Direction\";\r\n this.title_wind_direction_10m = \"Wind Direction 10 m\";\r\n this.title_pm25 = \"PM2.5\";\r\n this.titile_noise = \"Noise\";\r\n this.title_background_noise = \"Vibration Background\";\r\n this.title_event_noise = \"Vibration Event\";\r\n this.title_HeatIndex = \"Heat Index\";\r\n this.title_SolarRadiation = \"Solar Radiation GHI\";\r\n this.title_SolarRadiation_DHI = \"Solar Radiation DHI\";\r\n this.title_WBGT = \"WBGT\";\r\n this.title_wind_speed_two = \"Wind Speed 2 m\";\r\n this.title_wind_directiontwo = \"Wind Direction 2 m\";\r\n this.title_dew_point_temp = \"Dew Point Temperature\";\r\n this.title_soil_tempersture = \"Soil Temperature\";\r\n this.title_wetbulb_tempersture = \"Wet Bulb Temperature\";\r\n this.title_BarometricPressure = \"Barometric Pressure\";\r\n this.title_VWC = \"Volumetric water content\";\r\n this.title_ElectricalC = \"Electrical conductivity\";\r\n this.title_CloudCover = \"Cloud Cover\";\r\n this.title_Rain = \"Rain\";\r\n this.title_Visibility = \"Visibility\";\r\n\r\n this.Maxval = 600;\r\n\r\n\r\n \r\n\r\n }\r\n getCurrentstation() {\r\n this.currentStation = this.messageService.getLastStation();\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n this.getPast24Data(this.CurrentStation);\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n $('#graphModal').appendTo(\"body\");\r\n this.route.queryParamMap.subscribe(queryParams => {\r\n debugger\r\n this.startDate = queryParams.get(\"StartDate\"),\r\n this.endDate = queryParams.get(\"EndDate\"),\r\n this.StationName = queryParams.get(\"StationName\"),\r\n this.menuItemVisibility = queryParams.get(\"menuItemVisibility\"),\r\n this.graphsRequired = queryParams.get(\"graphsRequired\"),\r\n this.stationId = queryParams.get(\"stationId\"),\r\n this.periodName = queryParams.get(\"Period\") \r\n })\r\n \r\n this.menuItemVisibility = JSON.parse(this.menuItemVisibility); \r\n console.log(this.menuItemVisibility,\"menutest\");\r\n console.log(this.menuItemVisibility.ElectricalC,\"test\")\r\n console.log(this.stationId,\"test stationid\")\r\n console.log( this.StationName,\"stationname\")\r\n\r\n if(this.startDate==this.endDate)\r\n {\r\n this.oneDay=true;\r\n this.reporttitle=\"Report for - \" + moment(this.startDate).format(\"Do/MM/yyyy\");\r\n }\r\n else\r\n {\r\n this.oneDay=false;\r\n this.reporttitle = \"Report for the period of -\" + moment(this.startDate).format(\"Do/MM/yyyy\") + \"-to-\" + moment(this.endDate).format(\"Do/MM/yyyy\");\r\n }\r\n // var StationName=localStorage.getItem(\"lastStation\");\r\n // var station = JSON.parse(StationName) ;\r\n // console.log(\"stationname\",station);\r\n // this.StationName = station.Name; \r\n //this.titleService.setTitle(this.StationName + moment().format(\"Do/MM/yyyy HH:mm:ss.SS\"));\r\n\r\n this.titleService.setTitle(this.StationName +\"-\"+ this.reporttitle);\r\n //var graphData= this.ebamDataService.getGraphData();\r\n //this.graphData = graphData.graphDatas;\r\n //this.menuItemVisibility = graphData.menuDatas;\r\n // console.log(\"graphData\",this.graphData); \r\n // console.log(\"graph data\",this.startDate);\r\n // console.log(\"graph data\",this.endDate); \r\n this.graphsRequired=this.graphsRequired.split(','); \r\n console.log(\"grpaph split\",this.graphsRequired); \r\n this.isBusy=true; \r\n this.ebamDataService.getAllGraphData(\r\n this.stationId,\r\n this.startDate, this.endDate,\r\n this.graphsRequired[0], this.graphsRequired[1], this.graphsRequired[2],\r\n this.graphsRequired[3], this.graphsRequired[4], this.graphsRequired[17],\r\n this.graphsRequired[5], this.graphsRequired[6], this.graphsRequired[7],\r\n this.graphsRequired[8],\r\n this.graphsRequired[9], this.graphsRequired[10], this.graphsRequired[11],\r\n this.graphsRequired[12], this.graphsRequired[13], this.graphsRequired[14],\r\n this.graphsRequired[15], this.graphsRequired[16], this.graphsRequired[18],\r\n this.graphsRequired[19],this.graphsRequired[20],this.graphsRequired[21],\r\n this.graphsRequired[22],this.graphsRequired[23],this.graphsRequired[24],\r\n this.graphsRequired[25],this.graphsRequired[26],this.graphsRequired[27],\r\n this.graphsRequired[28], this.graphsRequired[29], this.graphsRequired[30],\r\n this.graphsRequired[31],this.graphsRequired[32]\r\n ).subscribe((res: any) => { \r\n this.graphData = res;\r\n this.isBusy=false; \r\n this.grawgraphdata(this.graphData);\r\n console.log(\"graphdata\",this.graphData) \r\n }); \r\n console.log(\"cloud\",this.menuItemVisibility.Cloud_Cover)\r\n if (this.periodName == 'daily') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'today') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'yesterday') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'thisWeek') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'lastWeek') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'thisMonth') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'lastMonth') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'thisYear') {\r\n this.RainLabelY = \"Rain ( mm/month )\"\r\n }\r\n else if (this.period == 'lastYear') {\r\n this.RainLabelY = \"Rain ( mm/month )\"\r\n }\r\n else if (this.period == 'Week') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'Month') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n \r\n }\r\n else if (this.period == 'Year') {\r\n this.RainLabelY = \"Rain ( mm/month )\"\r\n }\r\n\r\n\r\n \r\n\r\n }\r\n\r\n grawgraphdata(data)\r\n {\r\n debugger;\r\n var newData = data[0];\r\n console.log(\"newdata\",newData);\r\n if (newData.PM10)\r\n this.pm10Data = newData.PM10;\r\n else\r\n this.pm10Data = null;\r\n if (newData.PM2_5)\r\n this.pm25data = newData.PM2_5;\r\n else\r\n this.pm25data = null;\r\n\r\n if (newData.Temperature)\r\n this.temperatureData = JSON.parse(JSON.stringify(newData.Temperature));\r\n else\r\n this.temperatureData = null;\r\n\r\n if (newData.Humidity)\r\n this.humidityData = JSON.parse(JSON.stringify(newData.Humidity));\r\n else\r\n this.humidityData = null;\r\n\r\n if (newData.WindSpeed)\r\n this.windSpeedData = JSON.parse(JSON.stringify(newData.WindSpeed));\r\n else\r\n this.windSpeedData = null;\r\n\r\n if (newData.windDirection)\r\n this.windDirectionData = newData.windDirection;\r\n else\r\n this.windDirectionData = null;\r\n\r\n if (newData.Noise) {\r\n this.NoiseData = JSON.parse(JSON.stringify(newData.Noise));\r\n }\r\n else\r\n this.NoiseData = null;\r\n\r\n if (newData.vibrationBackgrounds)\r\n this.VibrationBackgroundData = JSON.parse(JSON.stringify(newData.vibrationBackgrounds));\r\n else\r\n this.VibrationBackgroundData = null;\r\n\r\n if (newData.vibrationEvent)\r\n this.VibrationEventData = JSON.parse(JSON.stringify(newData.vibrationEvent));\r\n else\r\n this.VibrationEventData = null;\r\n\r\n if (newData.HeatIndex)\r\n this.heatIndexData = JSON.parse(JSON.stringify(newData.HeatIndex));\r\n else\r\n this.heatIndexData = null;\r\n\r\n if (newData.SolarRadiation)\r\n this.SolarRadiationData = JSON.parse(JSON.stringify(newData.SolarRadiation));\r\n else\r\n this.SolarRadiationData = null;\r\n \r\n if (newData.solarRadiationDHI)\r\n this.SolarRadiationDHIData = JSON.parse(JSON.stringify(newData.solarRadiationDHI));\r\n else\r\n this.SolarRadiationDHIData = null;\r\n\r\n if (newData.WBGT)\r\n this.WBGTData = JSON.parse(JSON.stringify(newData.WBGT));\r\n else\r\n this.WBGTData = null;\r\n\r\n if (newData.WindSpeed2m)\r\n this.WindSpeed2mData = JSON.parse(JSON.stringify(newData.WindSpeed2m));\r\n else\r\n this.WindSpeed2mData = null;\r\n\r\n if (newData.WindSpeedAndAngle)\r\n {\r\n this.WindSpeedAndAngleData = JSON.parse(JSON.stringify(newData.WindSpeedAndAngle));\r\n if(this.WindSpeedAndAngleData.length==0)\r\n {\r\n this.title_wind_direction_10m=\"Wind Direction\";\r\n this.title_wind_directiontwo=\"Wind Direction\";\r\n }\r\n }\r\n \r\n else\r\n {\r\n this.WindSpeedAndAngleData = null;\r\n }\r\n \r\n \r\n if (newData.angleAndDirections2m)\r\n {\r\n this.angleAndDirections2mData = JSON.parse(JSON.stringify(newData.angleAndDirections2m));\r\n if(this.angleAndDirections2mData.length==0)\r\n {\r\n this.title_wind_direction_10m=\"Wind Direction\";\r\n this.title_wind_directiontwo=\"Wind Direction\";\r\n }\r\n }\r\n \r\n else\r\n {\r\n this.angleAndDirections2mData = null;\r\n\r\n }\r\n \r\n\r\n if (newData.barometricPressure)\r\n this.barometricPressureData = JSON.parse(JSON.stringify(newData.barometricPressure));\r\n else\r\n this.barometricPressureData = null;\r\n\r\n if (newData.windDirection2m)\r\n this.WindDirection2m = JSON.parse(JSON.stringify(newData.windDirection2m));\r\n else\r\n this.WindDirection2m = null;\r\n\r\n if (newData.windDirection10m)\r\n this.WindDirection10m = JSON.parse(JSON.stringify(newData.windDirection10m));\r\n else\r\n this.WindDirection10m = null;\r\n\r\n if (newData.duePointTemperature)\r\n this.duePointTemperatureData = JSON.parse(JSON.stringify(newData.duePointTemperature));\r\n else\r\n this.duePointTemperatureData = null;\r\n\r\n if (newData.soilTemperature)\r\n this.soilTemperatureData = JSON.parse(JSON.stringify(newData.soilTemperature));\r\n else\r\n this.soilTemperatureData = null;\r\n\r\n if (newData.wetBulbTemperature)\r\n this.wetBulbTemperatureData = JSON.parse(JSON.stringify(newData.wetBulbTemperature));\r\n else\r\n this.wetBulbTemperatureData = null;\r\n\r\n if (newData.WindSpeed2mand10m)\r\n this.windSpeed2m10m = JSON.parse(JSON.stringify(newData.WindSpeed2mand10m));\r\n else\r\n this.windSpeed2m10m = null;\r\n\r\n if (newData.WindSpeed2m)\r\n this.windSpeed2m = JSON.parse(JSON.stringify(newData.WindSpeed2m));\r\n else\r\n this.windSpeed2m = null;\r\n if (newData.WindSpeed10m)\r\n this.windSpeed10m = JSON.parse(JSON.stringify(newData.WindSpeed10m));\r\n else\r\n this.windSpeed10m = null;\r\n\r\n if (newData.Temperature2mand10m)\r\n this.Temperature2m10m = JSON.parse(JSON.stringify(newData.Temperature2mand10m));\r\n else\r\n this.Temperature2m10m = null;\r\n\r\n if (newData.Temperature2m)\r\n this.Temperature2m = JSON.parse(JSON.stringify(newData.Temperature2m));\r\n else\r\n this.Temperature2m = null;\r\n\r\n if (newData.Humidity2mand10m)\r\n this.Humidity2m10m = JSON.parse(JSON.stringify(newData.Humidity2mand10m));\r\n else\r\n this.Humidity2m10m = null;\r\n if (newData.Humidity2m)\r\n this.Humidity2m = JSON.parse(JSON.stringify(newData.Humidity2m));\r\n else\r\n this.Humidity2m = null;\r\n\r\n if (newData.windDirection2mand10m)\r\n this.WindDirection2m10m = JSON.parse(JSON.stringify(newData.windDirection2mand10m));\r\n else\r\n this.WindDirection2m10m = null;\r\n if (newData.VWContent)\r\n this.VWContent = JSON.parse(JSON.stringify(newData.VWContent));\r\n else\r\n this.VWContent = null;\r\n\r\n if (newData.Electrical_Conductivity)\r\n this.ElectriaclCdata = JSON.parse(JSON.stringify(newData.Electrical_Conductivity));\r\n else\r\n this.ElectriaclCdata = null;\r\n\r\n if (newData.CS136_Lowest_Data)\r\n this.CloudCoverData = JSON.parse(JSON.stringify(newData.CS136_Lowest_Data));\r\n else\r\n this.CloudCoverData = null;\r\n\r\n if (newData.Visibility)\r\n this.Visibilitydata = JSON.parse(JSON.stringify(newData.Visibility));\r\n else\r\n this.Visibilitydata = null;\r\n\r\n if (newData.Rain)\r\n this.RainData = JSON.parse(JSON.stringify(newData.Rain));\r\n else\r\n this.RainData = null;\r\n\r\n\r\n \r\n // setTimeout(function(){\r\n // window.print();\r\n // }, 3000);\r\n \r\n }\r\n \r\n\r\n\r\n\r\n\r\n ngOnDestroy() {\r\n $('#graphModal').remove();\r\n }\r\n\r\n getPast24Data(selectedStation) {\r\n\r\n\r\n\r\n // if (selectedStation) {\r\n\r\n // var readingAvailability = this.stationService.getAvailableReadingsForStation(selectedStation);\r\n\r\n // var subscription = this.ebamDataService.getEbamDataPM10(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.pm10Data = res;\r\n // });\r\n\r\n // subscription = this.ebamDataService.getEbamDataTemprature(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.temperatureData = res;\r\n // });\r\n // subscription = this.ebamDataService.getEbamDataHumidity(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.humidityData = res;\r\n // });\r\n // subscription = this.ebamDataService.getEbamDataWindSpeed(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.windSpeedData = res;\r\n // });\r\n // if (readingAvailability.windDirection) {\r\n // subscription = this.ebamDataService.getEbamDataWindRose(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.windDirectionData = res;\r\n // });\r\n // }\r\n // }\r\n\r\n }\r\n\r\n\r\n openGraphPopUp(graphType) {\r\n this.currentPopupGraph = graphType;\r\n }\r\n onEventSelected(id) {\r\n this.isLoading = true;\r\n this.ebamDataService.getEventGraphData(id).subscribe((res: any) => {\r\n if (res && res.length > 0) {\r\n this.VibrationEventDataNew = res;\r\n this.currentPopupGraph = \"event-graph\";\r\n this.isLoading = false;\r\n }\r\n });\r\n }\r\n // printBackFn()\r\n // {\r\n // window.print();\r\n // }\r\n printBackFn(divName) {\r\n const printContents = document.getElementById(divName).innerHTML;\r\n const originalContents = document.body.innerHTML;\r\n document.body.innerHTML = printContents;\r\n window.print();\r\n document.body.innerHTML = originalContents;\r\n window.close();\r\n}\r\n\r\n}\r\n\r\n","
\r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n

REPORT FOR {{StationName }} FROM {{startDate |\r\n date:'dd/MM/yyyy'}} TO {{endDate | date:'dd/MM/yyyy'}}

\r\n

REPORT FOR {{StationName }} {{startDate | date:'dd/MM/yyyy'}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \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 { ElementRef, Input, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { AfterViewInit, Component, OnChanges, OnInit } from '@angular/core';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\nimport * as d3 from 'd3';\r\n\r\n\r\n@Component({\r\n selector: 'app-vibration-chart',\r\n templateUrl: './vibration-chart.component.html',\r\n styleUrls: ['./vibration-chart.component.css']\r\n})\r\nexport class VibrationChartComponent implements OnInit, AfterViewInit, OnChanges {\r\n @ViewChild(\"linechartfigure\") divView: ElementRef;\r\n\r\n\r\n @Input()\r\n ChartTitle: string\r\n @Input()\r\n Data: any\r\n @Input()\r\n XKey: string\r\n @Input()\r\n YKey: string\r\n @Input()\r\n ColorKey: string\r\n @Input()\r\n LabelX: string\r\n @Input()\r\n LabelY: string\r\n @Input()\r\n ToolTipUnit: string\r\n @Input()\r\n Max: number\r\n @Input()\r\n Keys: []\r\n\r\n\r\n public data: any;\r\n private svg;\r\n private margin = 100;\r\n private width = 540 - (this.margin * 2);\r\n private height = 400 - (this.margin * 2);\r\n\r\n public figureId = null;\r\n\r\n constructor() {\r\n this.figureId = \"line-chart-\" + generateUniqueId();\r\n }\r\n\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Data.currentValue) {\r\n this.data = changes.Data.currentValue\r\n this.drawLineChart(this.data);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n this.initChart();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n initChart() {\r\n\r\n //width of container\r\n this.width = this.divView.nativeElement.offsetWidth + 50 - (this.margin * 2);\r\n\r\n //too small apply better width and make scrollable\r\n if (this.width <= 300) {\r\n this.width = 650 - (this.margin * 2);\r\n this.height = 400 - (this.margin * 2);\r\n }\r\n else {\r\n this.width = this.width - (this.margin / 2);\r\n }\r\n\r\n this.data = this.Data;\r\n this.drawLineChart(this.data);\r\n }\r\n\r\n drawLineChart(data: any[]) {\r\n\r\n var colorKey = this.ColorKey;\r\n var yKey = this.YKey;\r\n var xKey = this.XKey;\r\n var toolTipUnit = this.ToolTipUnit;\r\n var max = this.Max;\r\n data.forEach(element => {\r\n element[xKey] = parseFloat(element[xKey]);\r\n });\r\n\r\n var bisectChart = (xy) => {\r\n const bisect = d3.bisector(d => d[xKey]).left;\r\n const date = x.invert(xy);\r\n const index = bisect(data, date, 1);\r\n const a = data[index - 1];\r\n const b = data[index];\r\n return b && (date - a.date > b.date - date) ? b : a;\r\n\r\n }\r\n\r\n var callout = (g, Value, cc) => {\r\n if (!Value) return g.style(\"display\", \"none\");\r\n\r\n g.style(\"display\", null)\r\n .style(\"pointer-events\", \"none\")\r\n .style(\"font\", \"10px sans-serif\");\r\n\r\n const path = g.selectAll(\"path\")\r\n .data([null])\r\n .join(\"path\")\r\n .attr(\"fill\", cc)\r\n .attr(\"stroke\", cc)\r\n .attr(\"stroke-linecap\", \"round\")\r\n\r\n\r\n const text = g.selectAll(\"text\")\r\n .data([null])\r\n .join(\"text\")\r\n .call(text => text\r\n .selectAll(\"tspan\")\r\n .data((Value).split(/\\n/))\r\n .join(\"tspan\")\r\n .attr(\"x\", 0)\r\n .attr(\"y\", (d, i) => `${i * 1.1}em`)\r\n .style(\"font-weight\", (_, i) => i ? null : \"bold\")\r\n .style(\"font-size\", \"15px\")\r\n .text(d => d))\r\n .style(\"fill\", \"Black\");\r\n\r\n const { x, y, width: w, height: h } = text.node().getBBox();\r\n\r\n text.attr(\"transform\", `translate(${-w / 2},${15 - y})`);\r\n path.attr(\"d\", `M${-w / 2 - 10},5H-5l5,-5l5,5H${w / 2 + 10}v${h + 20}h-${w + 20}z`);\r\n }\r\n\r\n var parseTime = d3.timeParse(\"%m/%d/%Y %I\");\r\n\r\n // set the ranges\r\n var x = d3.scaleLinear().range([0, this.width]);\r\n var y = d3.scaleLinear().range([this.height, 0]);\r\n\r\n // define the line\r\n var valueline = d3.line()\r\n .curve(d3.curveNatural)\r\n .defined(d => !isNaN(d[yKey]))\r\n .x(d => x(d[xKey]))\r\n .y(d => y(d[yKey]))\r\n\r\n // append the svg obgect to the body of the page\r\n // appends a 'group' element to 'svg'\r\n // moves the 'group' element to the top left margin\r\n d3.select(\"#\" + this.figureId + \">svg\").remove();\r\n this.svg = d3.select(\"figure#\" + this.figureId + \"\")\r\n .append(\"svg\")\r\n // .attr('preserveAspectRatio', 'xMinYMin meet')\r\n // .attr('viewBox','0 0 ' +(this.width + (this.margin * 2)) +' ' +(this.height + (this.margin * 2)))\r\n .attr(\"width\", this.width + (this.margin * 2))\r\n .attr(\"height\", this.height + (this.margin / 4))\r\n .append(\"g\")\r\n //.attr(\"transform\", \"translate(\" + this.margin + \",\" + this.margin + \")\")\r\n .attr(\"transform\", \"translate(\" + this.margin + \",0)\")\r\n\r\n\r\n .style(\"-webkit-tap-highlight-color\", \"transparent\")\r\n .style(\"overflow\", \"visible\");\r\n\r\n // Get the data\r\n\r\n\r\n // format the data\r\n data.forEach(function (d) {\r\n //d[xKey] = parseTime(d[xKey]);\r\n d[xKey] = d[xKey];\r\n d[yKey] = +d[yKey];\r\n });\r\n\r\n // Scale the range of the data\r\n x.domain(d3.extent(data, function (d) { return d[xKey]; }));\r\n if (max) {\r\n y.domain([0, max]);\r\n }\r\n else {\r\n\r\n var maximumY = 0;\r\n var minimumY = 0;\r\n\r\n var arMax = [];\r\n var arMin = [];\r\n\r\n this.Keys.forEach(element => {\r\n arMax.push(d3.max(data, function (d) { return d[element]; }))\r\n arMin.push(d3.min(data, function (d) { return d[element]; }))\r\n });\r\n\r\n maximumY = Math.max(...arMax);\r\n minimumY = Math.min(...arMin);\r\n maximumY = maximumY + (maximumY * (50 / 100))\r\n minimumY = minimumY + (minimumY * (50 / 100))\r\n\r\n y.domain([minimumY, maximumY]);\r\n }\r\n\r\n //x-Axis label\r\n this.svg.append(\"text\")\r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"y\", this.height + (this.margin / 2))\r\n .attr(\"x\", this.width / 2)\r\n .text(this.LabelX);\r\n\r\n\r\n\r\n //y-Axis label\r\n this.svg.append(\"text\")\r\n .attr(\"transform\", \"rotate(-90)\")\r\n .attr(\"y\", 0)\r\n .attr(\"x\", 0)\r\n .attr(\"dy\", \"-4em\")\r\n .attr(\"dx\", -(this.height))\r\n .text(this.LabelY);\r\n\r\n\r\n\r\n this.svg.selectAll('path')\r\n .data(data)\r\n .enter()\r\n .append('path')\r\n .attr('d', function (d, i) {\r\n if (i === data.length - 1) {\r\n return valueline([data[i], data[i]])\r\n } else {\r\n return valueline([data[i], data[i + 1]])\r\n }\r\n })\r\n .attr(\"fill\", \"none\")\r\n .attr('stroke-width', 2.5)\r\n .attr(\"stroke-linejoin\", \"round\")\r\n .attr(\"stroke-linecap\", \"round\")\r\n //.attr('stroke', function (d, i) { return d[colorKey] })\r\n .attr('stroke', \"#5391d4\")\r\n .transition() // Call Transition Method\r\n .duration(2000) // Set Duration timing (ms)\r\n .ease(d3.easeLinear) // Set Easing option\r\n //.attr(\"stroke-dasharray\", 5)\r\n .attr(\"opacity\", 1);\r\n\r\n\r\n\r\n // gridlines in x axis function\r\n function make_x_gridlines() {\r\n return d3.axisBottom(x)\r\n .ticks(5)\r\n }\r\n\r\n // gridlines in y axis function\r\n function make_y_gridlines() {\r\n\r\n return d3.axisLeft(y)\r\n // .tickValues([0])\r\n //.ticks(11)\r\n\r\n }\r\n\r\n\r\n // // add the X gridlines\r\n // this.svg.append(\"g\")\r\n // .attr(\"class\", \"grid\")\r\n // .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n // .attr(\"shape-rendering\", \"crispEdges\")\r\n // .call(make_x_gridlines()\r\n // .tickSize(-this.height)\r\n // .tickFormat(\"\")\r\n // )\r\n // .attr(\"class\", \"grid-lines\")\r\n\r\n // add the Y gridlines\r\n this.svg.append(\"g\")\r\n .attr(\"class\", \"grid\")\r\n .attr(\"shape-rendering\", \"crispEdges\")\r\n .call(make_y_gridlines()\r\n .tickSize(-this.width)\r\n .tickFormat(\"\")\r\n )\r\n .attr(\"class\", \"grid-lines\")\r\n .attr(\"opacity\", 0.2);\r\n\r\n\r\n // Add the X Axis\r\n this.svg.append(\"g\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .call(d3.axisBottom(x))\r\n .selectAll(\"text\")\r\n .style(\"text-anchor\", \"end\")\r\n .attr(\"dx\", \"-.8em\")\r\n .attr(\"dy\", \".15em\")\r\n .attr(\"transform\", \"rotate(-65)\");\r\n\r\n // Add the Y Axis\r\n this.svg.append(\"g\")\r\n .call(d3.axisLeft(y))\r\n .select(\".tick:last-of-type text\").clone();\r\n\r\n d3.select(\"figure#\" + this.figureId + \">svg\")\r\n .attr(\"height\", this.height + (this.margin / 2) );\r\n\r\n\r\n const tooltip = this.svg.append(\"g\");\r\n\r\n this.svg.append(\"rect\")\r\n .attr(\"class\", \"overlay\")\r\n .attr(\"width\", this.width)\r\n .attr(\"height\", this.height)\r\n .style('fill', 'none')\r\n .style('pointer-events', 'all');\r\n\r\n this.svg.on(\"touchmove mousemove\", function (event) {\r\n var pointedAt = bisectChart(d3.pointer(event, this)[0]);\r\n var timeString = pointedAt[xKey];\r\n tooltip\r\n .attr(\"transform\", `translate(${x(pointedAt[xKey])},${y(pointedAt[yKey])})`)\r\n .call(callout, `${(pointedAt[yKey] + \" \" + toolTipUnit)}\r\n ${(timeString)}`, \"#5391d4\");\r\n });\r\n\r\n this.svg.on(\"touchend mouseleave\", () => tooltip.call(callout, 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 \r\n \r\n
\r\n
\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 enum Sidebar{\r\n main = 1,\r\n station,\r\n admin\r\n}\r\n\r\n ","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { AuthService } from 'src/app/services/auth-service/auth.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { ForgotPasswordComponent } from '../forgot-password/forgot-password.component';\r\n\r\n@Component({\r\n selector: 'app-login-modal',\r\n templateUrl: './login-modal.component.html',\r\n styleUrls: ['./login-modal.component.css'],\r\n})\r\nexport class LoginModalComponent implements OnInit {\r\n loginForm;\r\n deviceInfo;\r\n errorMessage: string;\r\n constructor(\r\n private fb: FormBuilder,\r\n private deviceService: DeviceDetectorService,\r\n private authService: AuthService,\r\n private router: Router,\r\n public dialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n private stationService: StationsService\r\n ) {}\r\npublic client_stations:any;\r\npublic stationData:any;\r\n ngOnInit(): void {\r\n this.detectDevice();\r\n this.loginForm = this.fb.group({\r\n email: ['', Validators.required],\r\n password: ['', Validators.required],\r\n });\r\n }\r\n\r\n detectDevice() {\r\n this.deviceInfo = this.deviceService.getDeviceInfo();\r\n const isMobile = this.deviceService.isMobile();\r\n const isTablet = this.deviceService.isTablet();\r\n const isDesktopDevice = this.deviceService.isDesktop();\r\n console.log('device info:', this.deviceInfo);\r\n }\r\n\r\n onSubmit() {\r\n // console.log(this.loginForm);\r\n this.authService\r\n .login(\r\n this.loginForm.value.email,\r\n this.loginForm.value.password,\r\n this.deviceInfo.device\r\n )\r\n .subscribe((res) => {\r\n //console.log('loginData', res[0]);\r\n if (res[0].IsSuccess) {\r\n this.errorMessage = '';\r\n this.dialogRef.close();\r\n if(res[0].Result[0].IsSuperUser)\r\n {\r\n this.router.navigateByUrl('/SelectClient');\r\n }\r\n else\r\n {\r\n this.authService.getClient(res[0].Result[0].ClientId).subscribe((ress) => {\r\n //console.log('loginData', ress[0]);\r\n localStorage.setItem('ClientId', ress[0].Clientid);\r\n localStorage.setItem('ClientName', ress[0].ClientName);\r\n AppSettings.CLIENT_ID=parseInt(localStorage.getItem('ClientId'));\r\n AppSettings.CLIENT_NAME=localStorage.getItem('ClientName');\r\n if (ress[0].Clientid==3) \r\n {\r\n this.stationService.getstationvisble(); \r\n this.stationService.getStations(3).subscribe((stationsDt: any) => { \r\n console.log(\"dataStation\",stationsDt[0]); \r\n this.client_stations = stationsDt[0]; \r\n //this.stationId = this.client_stations.Id;\r\n console.log(\"dataStation\",this.client_stations.Id); \r\n localStorage.setItem('StationId',this.client_stations.Id);\r\n this.stationService.getStation(this.client_stations.Id).subscribe((stationData: any) => {\r\n this.stationData = stationData; \r\n localStorage.setItem('lastStation', JSON.stringify(this.stationData[0])); \r\n \r\n }); \r\n this.router.navigateByUrl('/Amaala-dashboard'); \r\n });\r\n //this.router.navigateByUrl('/Amaala-dashboard');\r\n }\r\n else\r\n {\r\n this.router.navigateByUrl('/dashboard');\r\n }\r\n \r\n });\r\n }\r\n } else if (!res[0].IsSuccess) {\r\n this.errorMessage = res[0].Message;\r\n }\r\n });\r\n }\r\n openForgotpasswordForm() {\r\n this.dialogRef.close();\r\n this.dialog.open(ForgotPasswordComponent, {\r\n panelClass: 'custom-dialog-container',\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

Sign In

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Email address\r\n
\r\n \r\n \r\n \r\n Username is required\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Password\r\n
\r\n \r\n \r\n \r\n Password is required\r\n
\r\n \r\n
\r\n
\r\n\r\n {{ errorMessage }}\r\n\r\n \r\n Submit\r\n \r\n
\r\n
Forgot password
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n","var colorRangeForAmaala = {\r\n CommonRange:[0.1,0.4,0.5],\r\n Range:[.2,.2,.2,.2,.2],\r\n WindDirectionRange:[1/8,1/8,1/8,1/8,1/8,1/8,1/8,1/8], \r\n Barometric_pressureRange:[0.33,0.33,0.33],\r\n WBGT_sensorRange:[.18,0.05,.05,.72],\r\n WBGT_NewRange:[0.45,0.55],\r\n //HeatIndexColorRange:[.26,.06,.09,.13,.46],\r\n HeatIndexColorRange:[.445,.0916,.12,.196,.1483],\r\n Cloud_cover_range:[.2,.2,.2,.2,.2],\r\n CommonColor:['#2EA37E', '#3598DC', '#F71228'],\r\n // HeatIdexColor:['#FFFF66','#FFFF66','#FFD700','#FF8C00','#FF0000'],\r\n HeatIdexColor:['#00FF00','#FFFF00','#FF8C00','#FF0000','#880808'],\r\n WbgtColor:['#2EA37E','#fcf33f','#F71228','#000000'],\r\n BaroetricColor:['#2EA37E', '#2EA37E', '#2EA37E'],\r\n SolarColor:['#2EA37E', '#2EA37E', '#2EA37E','#2EA37E', '#2EA37E'],\r\n WinDirectionColor:['#2EA37E','#2EA37E', '#2EA37E','#2EA37E', '#2EA37E','#2EA37E','#2EA37E', '#2EA37E'],\r\n WBGTNewcolor:[\"#00FF00\",\"#FFFF00\"],\r\n Cloud_cover_colour:['#2EA37E','#2EA37E','#2EA37E','#2EA37E','#2EA37E','#2EA37E','#2EA37E','#2EA37E']\r\n\r\n}\r\n\r\nexport { colorRangeForAmaala }\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { Sidebar } from 'src/app/common/sidebarSelect';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\n\r\n@Component({\r\n selector: 'app-navbar-merged',\r\n templateUrl: './navbar-merged.component.html',\r\n styleUrls: ['./navbar-merged.component.css']\r\n})\r\nexport class NavbarMergedComponent implements OnInit {\r\n\r\n public isVisible: boolean\r\n subscription: Subscription;\r\n currentSidebar = Sidebar.main.toString();\r\n \r\n constructor(\r\n private messageService: MessageService\r\n ) { \r\n this.isVisible = true;\r\n }\r\n\r\n ngOnInit(): void {\r\n // this.getLastSidebarvisibilityOnReload();\r\n // this.doSidebarSubscription();\r\n this.getLastSidebar();\r\n this.sidebarSubscription();\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription)\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n getLastSidebar() {\r\n if(this.messageService.getLastSidebar()){\r\n this.currentSidebar = this.messageService.getLastSidebar();\r\n }\r\n }\r\n\r\n sidebarSubscription() {\r\n this.subscription = this.messageService.getSidebar().subscribe((sidebar) => {\r\n // console.log(sidebar);\r\n\r\n // console.log(typeof this.currentSidebar);\r\n this.currentSidebar = sidebar.toString();\r\n });\r\n }\r\n\r\n\r\n // getLastSidebarvisibilityOnReload() {\r\n // this.isVisible = this.messageService.getLastSidebarVisibility();\r\n // }\r\n\r\n // doSidebarSubscription() {\r\n // this.subscription = this.messageService.getStationSideMenuVisibility().subscribe(isVisible => {\r\n // this.isVisible = isVisible;\r\n // });\r\n // }\r\n\r\n}\r\n","
\r\n \r\n \r\n \r\n
","import { Injectable } from '@angular/core';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable, throwError } from 'rxjs';\r\nimport { HttpClient, HttpEvent } from '@angular/common/http';\r\nimport { catchError, tap, map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PasswordForgotService {\r\n user = new BehaviorSubject(null);\r\n private readonly forgot_pswrd_url = AppSettings.API_END_POINT + 'General/ForgotPassword';\r\n\r\n private readonly otp_url = AppSettings.API_END_POINT + 'General/CheckOTP';\r\n\r\n private readonly password_reset_url = AppSettings.API_END_POINT + 'General/ResetPassword';\r\n\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n forgotpassword(email: string): Observable {\r\n //debugger\r\n const postData = {\r\n UserName: email\r\n\r\n };\r\n return this.http.post(this.forgot_pswrd_url, postData).pipe(\r\n tap((res) => {\r\n if (res) {\r\n return res;\r\n }\r\n else {\r\n return res;\r\n }\r\n }),\r\n catchError((err) => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n OtpConfirm(data: string, otp: any): Observable {\r\n const postOtpData = {\r\n UserName: data,\r\n OTP: otp,\r\n\r\n };\r\n return this.http.post(this.otp_url, postOtpData).pipe(\r\n tap((res) => {\r\n if (res) {\r\n return res;\r\n } else {\r\n return res;\r\n }\r\n }),\r\n\r\n catchError((err) => {\r\n return throwError(err);\r\n })\r\n\r\n );\r\n }\r\n resetPassword(email: string, newpassword: string): Observable {\r\n const postData = {\r\n UserName: email,\r\n Password: newpassword,\r\n };\r\n return this.http.post(this.password_reset_url, postData).pipe(\r\n tap((res: Response) => {\r\n if (res) {\r\n return res;\r\n }\r\n else {\r\n\r\n return res;\r\n }\r\n\r\n }),\r\n catchError((err) => {\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n}\r\n\r\n\r\n\r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {\r\n FormArray,\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { UserGroupService } from 'src/app/services/user-group/user-group.service';\r\nimport { UserService } from 'src/app/services/user/user.service';\r\nimport { Router } from '@angular/router';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { PopupModalComponent } from '../popup-modal/popup-modal.component';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n\r\n@Component({\r\n selector: 'app-create-user',\r\n templateUrl: './create-user.component.html',\r\n styleUrls: ['./create-user.component.css']\r\n})\r\nexport class CreateUserComponent implements OnInit {\r\n checked: boolean;\r\n public response: any;\r\n constructor(public dialog: MatDialog, private router: Router, private fb: FormBuilder, private userService: UserService, private userGroupService: UserGroupService, private deviceService: DeviceDetectorService) {\r\n this.checked = false;\r\n }\r\n private readonly client_id = AppSettings.CLIENT_ID;\r\n\r\n userForm;\r\n userGroups;\r\n userGroupArray;\r\n deviceInfo;\r\n superUser = [true, false];\r\n mailAlert = [true, false];\r\n isMailAlert = [{ displayName: \"Yes\", value: true }, { displayName: \"No\", value: false }];\r\n isSMSAlert = [{ displayName: \"Yes\", value: true }, { displayName: \"No\", value: false }];\r\n userType = [{ Id: 1, userType: \"Admin\" }, { Id: 2, userType: \"Normal User\" }];\r\n\r\n\r\n ngOnInit(): void {\r\n this.userForm = this.fb.group({\r\n FirstName: ['', Validators.required],\r\n LastName: ['', Validators.required],\r\n UserName: [''],\r\n Password: [''],\r\n EmailId: ['', Validators.required],\r\n ContactNo: [''],\r\n UserTypeId: ['', Validators.required],\r\n UserGroupId: ['', Validators.required],\r\n IsSuperUser: [false],\r\n IsMailAlert: ['', Validators.required],\r\n IsSMSAlert: ['', Validators.required],\r\n RegulationViolationAlert: [this.checked],\r\n MachineStopAlert: [this.checked],\r\n DailyMailAlert: [this.checked]\r\n })\r\n\r\n\r\n this.userGroupService.getAllUserGroups(this.client_id).subscribe(res => {\r\n this.userGroups = res[0].Result;\r\n // Filter Super Admin User Group\r\n this.userGroups = this.userGroups.filter(group => {\r\n return group.GroupName != \"SuperAdminGroup\"\r\n });\r\n this.userGroupArray = this.userGroups.map(userGroup => {\r\n return {\r\n Id: userGroup.UserGroupId,\r\n Name: userGroup.GroupName\r\n }\r\n });\r\n })\r\n\r\n this.detectDevice();\r\n\r\n\r\n }\r\n\r\n detectDevice() {\r\n this.deviceInfo = this.deviceService.getDeviceInfo();\r\n const isMobile = this.deviceService.isMobile();\r\n const isTablet = this.deviceService.isTablet();\r\n const isDesktopDevice = this.deviceService.isDesktop();\r\n }\r\n\r\n\r\n onSubmit() {\r\n const submitData = {\r\n ...this.userForm.value,\r\n Device: this.deviceInfo.device,\r\n clientId: this.client_id,\r\n }\r\n this.postUser(submitData);\r\n }\r\n\r\n postUser(data) {\r\n this.userService.createUser(data, this.client_id).subscribe((res: any) => {\r\n\r\n this.response = res;\r\n\r\n if (this.response.Message != \"User name already exists\") {\r\n this.userForm.reset();\r\n this.router.navigate(['/dashboard/user']);\r\n }\r\n else {\r\n console.log(this.response.Message);\r\n this.openpopup();\r\n }\r\n\r\n }, error => {\r\n //console.log(error);\r\n })\r\n }\r\n\r\n openpopup() {\r\n this.dialog.open(PopupModalComponent, {\r\n panelClass: 'custom-dialog-container',\r\n });\r\n }\r\n\r\n}\r\n","
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Create User

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n User Type\r\n \r\n \r\n {{user.userType}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n User Group (required)\r\n \r\n \r\n {{userGroup.Name}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n Mail Alert (required)\r\n \r\n \r\n {{value.displayName}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n SMS Alert (required)\r\n \r\n \r\n {{value.displayName}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Daily Report Alert\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Regulation Violation Alert\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Machine Stop Alert\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Create\r\n \r\n \r\n Cancel\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n","// This file can be replaced during build by using the `fileReplacements` array.\r\n// `ng build --prod` replaces `environment.ts` with `environment.prod.ts`.\r\n// The list of file replacements can be found in `angular.json`.\r\n\r\nexport const environment = {\r\n production: false\r\n};\r\n\r\n/*\r\n * For easier debugging in development mode, you can import the following file\r\n * to ignore zone related error stack frames such as `zone.run`, `zoneDelegate.invokeTask`.\r\n *\r\n * This import should be commented out in production mode because it will have a negative impact\r\n * on performance if an error is thrown.\r\n */\r\n// import 'zone.js/dist/zone-error'; // Included with Angular CLI.\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { PasswordForgotService } from 'src/app/services/passwordforgot/password-forgot.service';\r\nimport Swal from 'sweetalert2';\r\nimport { OtpModalComponent } from '../otp-modal/otp-modal.component';\r\n\r\n\r\n@Component({\r\n selector: 'app-forgot-password',\r\n templateUrl: './forgot-password.component.html',\r\n styleUrls: ['./forgot-password.component.css']\r\n})\r\nexport class ForgotPasswordComponent implements OnInit {\r\n forgotpassword;\r\n errorMessage: string;\r\n constructor(\r\n private fb: FormBuilder,\r\n private passwordForgotService: PasswordForgotService,\r\n private router: Router,\r\n public dialog: MatDialog,\r\n private dialogRef: MatDialogRef\r\n ) { }\r\n\r\n ngOnInit(): void {\r\n this.forgotpassword = this.fb.group({\r\n\r\n email: [\"\", [Validators.required, Validators.email]]\r\n\r\n });\r\n \r\n }\r\n \r\n onSubmit() {\r\n this.errorMessage='';\r\n this.passwordForgotService\r\n .forgotpassword(\r\n this.forgotpassword.value.email\r\n )\r\n .subscribe((res) => {\r\n if (res) {\r\n this.errorMessage = '';\r\n this.dialogRef.close();\r\n this.dialog.open(OtpModalComponent, {\r\n panelClass: 'custom-dialog-container',\r\n data: { EmailID: this.forgotpassword.value.email }\r\n });\r\n }\r\n else {\r\n this.errorMessage = \"Try Again\";\r\n }\r\n }, ((error) => {\r\n if (error.status == 400) {\r\n this.errorMessage = error.error; }\r\n else { this.errorMessage = \"Try Again!\" }\r\n }\r\n\r\n ));\r\n }\r\n myClickFunction(event: any){\r\n this.errorMessage=\"\";\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

Forgot Password

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Email address\r\n
\r\n \r\n \r\n \r\n Please Provide a Valid Email Address\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{ errorMessage }}\r\n \r\n \r\n Submit\r\n \r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { Injectable } from '@angular/core';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { HttpClient } from '@angular/common/http';\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ContactUsService {\r\n\r\n private readonly contactUs_url = AppSettings.API_END_POINT + \"General/AddContactUS\";\r\n constructor(private http: HttpClient) {\r\n \r\n }\r\n\r\n postMessage(data){\r\n return this.http.post(this.contactUs_url, data);\r\n }\r\n \r\n\r\n\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class UserService {\r\n\r\n private readonly user_url = AppSettings.API_END_POINT + \"User\";\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n getUser(clientId, userId) {\r\n return this.http.get(\r\n this.user_url +\r\n `?ClientId=` + clientId + `&UserId=` + userId\r\n );\r\n }\r\n\r\n getAllUsers(clientId: Number) {\r\n // console.log(this.user_url + `?ClientId=${{clientId}}`);\r\n return this.http.get(this.user_url + `?ClientId=` + clientId);\r\n }\r\n\r\n createUser(userData, clientId) {\r\n return this.http.post(this.user_url + `?ClientId=` + clientId, userData);\r\n }\r\n\r\n updateUser(userUpdatedData) {\r\n return this.http.put(this.user_url, userUpdatedData);\r\n }\r\n\r\n deleteUser(userId) {\r\n return this.http.delete(\r\n this.user_url + `?UserId=` + userId);\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\n\r\n@Component({\r\n selector: 'app-color-codes',\r\n templateUrl: './color-codes.component.html',\r\n styleUrls: ['./color-codes.component.css']\r\n})\r\nexport class ColorCodesComponent implements OnInit {\r\n\r\n public color_codes: any\r\n\r\n constructor(private stationService: StationsService) { }\r\n\r\n ngOnInit(): void {\r\n this.fetchColorCodes();\r\n }\r\n\r\n fetchColorCodes() {\r\n this.stationService.getAllColorCodes().subscribe((res) => {\r\n this.color_codes = res;\r\n var parametrName = \"\";\r\n for (var key in res) {\r\n\r\n /*Remove duplicate ParameterName to avoid repetition */\r\n if (parametrName != res[key].ParameterName) {\r\n parametrName = res[key].ParameterName\r\n }\r\n else {\r\n res[key].ParameterName = \"\";\r\n }\r\n\r\n }\r\n })\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n\r\n
\r\n \"banner\"\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

Colour Code Info.

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
ParameterRangeKey ValueColourNote
{{cc.ParameterName}}\r\n \r\n {{cc.MinAndMaxValue}} \r\n \r\n \r\n {{cc.KeyValue}}\r\n
\r\n
\r\n
{{cc.Note}}
\r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n\r\n
\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 { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { startWith } from 'rxjs/operators';\r\nimport { dateAndTime } from 'src/app/common/dateAndTime';\r\nimport { tileClock } from 'src/app/common/tileClock';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\nimport { colorRangeForAmaala } from 'src/app/common/colorrangeforamaala';\r\nimport { AuthService } from 'src/app/services/auth-service/auth.service';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\n\r\n@Component({\r\n selector: 'app-amaala-dashboard',\r\n templateUrl: './amaala-dashboard.component.html',\r\n styleUrls: ['./amaala-dashboard.component.css']\r\n})\r\nexport class AmaalaDashboardComponent implements OnInit {\r\n public current_tile_clock: tileClock = { year: 0, monthAndDay: \"N/A\", time: \"N/A\" };\r\n public updated_tile_clock: tileClock = { year: 0, monthAndDay: \"N/A\", time: \"N/A\" };\r\n public stations_summary: any;\r\n public client_stations: any;\r\n public selected_station: any;\r\n public isLoading: boolean;\r\n private apiSubscription: Subscription;\r\n private apiInerval = interval(AppSettings.REFRESH_FREQUENCY);\r\n public other_info: any = { UrlImage: \"\", LastUpdateDate: \"\" };\r\n public clientName: any;\r\n public Needle: any = 60.2;\r\n public Needle1: any = 70;\r\n public ColourRange: any;\r\n public abmColor:any=[.1,.4,.5];\r\n public stationIndex:any;\r\n public StationName:any;\r\n public image_url:any = [\"../../../assets/images/airfield.jpg\",\"../../../assets/images/triplebay.jpg\",\"../../../assets/images/island.jpg\"];\r\n public initialStationId : any;\r\n public LocationImage : any;\r\n public stationdata: any;\r\n public stationDataSt:any; \r\n public currentStationTime:any;\r\n\r\n public uid1 = generateUniqueId();\r\n public uid2 = generateUniqueId();\r\n\r\n constructor(\r\n private ebamDataService: EbamDataService,\r\n private stationService: StationsService,\r\n private messageService: MessageService,\r\n private router: Router,\r\n private authService: AuthService,\r\n ) {\r\n\r\n this.clientName = AppSettings.CLIENT_NAME;\r\n\r\n }\r\n\r\n ngOnInit(): void {\r\n //this.stationIndex=0;\r\n this.ColourRange = colorRangeForAmaala;\r\n this.bindStationSidebar(AppSettings.CLIENT_ID);\r\n this.initialStationId=parseInt(localStorage.getItem('StationId'));\r\n this.bindStationdata(this.initialStationId);\r\n console.log(\"initial station summary\",this.initialStationId);\r\n this.liveClock();\r\n this.bindAllStationsSummary(+this.initialStationId);\r\n }\r\n\r\n bindStationSidebar(Id) {\r\n this.stationService.getStations(Id).subscribe((stations: any) => {\r\n this.client_stations = stations;\r\n //localStorage.setItem(\"stationID\",this.client_stations[0].Id);\r\n //this.StationName = this.client_stations[0].Name;\r\n console.log(\"station name\",this.StationName);\r\n //this.LocationImage = this.client_stations[0].LoactionImage;\r\n for (let i = 0; i < stations.length; i++) {\r\n this.selected_station = this.client_stations[0].Name;\r\n break;\r\n } \r\n });\r\n }\r\nbindStationdata(id)\r\n{\r\n this.stationService.getStation(id).subscribe((station: any) => {\r\n this.stationdata=station;\r\n this.StationName = this.stationdata[0].Name;\r\n this.LocationImage = this.stationdata[0].LoactionImage;\r\n console.log(\"station\",station);\r\n \r\n });\r\n}\r\n\r\n liveClock() {\r\n var dAndT = new dateAndTime();\r\n\r\n setInterval(() => {\r\n // var m = new Date();\r\n\r\n // this.current_tile_clock.year = m.getFullYear();\r\n // this.current_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(m)\r\n // + \" \" +\r\n // m.getDate();\r\n // this.current_tile_clock.time = m.toLocaleTimeString('en-GB')\r\n\r\n\r\n this.stationService.getTime().subscribe((time:any) =>{\r\n var stTime = new Date(time[0].Column1);\r\n \r\n \r\n //console.log(\"crrTime\",stTime);\r\n this.current_tile_clock.year = stTime.getFullYear();\r\n this.current_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(stTime)\r\n + \" \" +\r\n stTime.getDate();\r\n this.current_tile_clock.time = stTime.toLocaleTimeString('en-GB')\r\n });\r\n\r\n }, 1000);\r\n\r\n \r\n }\r\n stationChangefn(stindex)\r\n {\r\n debugger\r\n this.bindStationdata(parseInt( stindex.Id));\r\n localStorage.setItem('StationId',stindex.Id);\r\n this.initialStationId=parseInt(localStorage.getItem('StationId'));\r\n this.apiSubscription.unsubscribe();\r\n this.bindAllStationsSummary(parseInt(stindex.Id)); \r\n localStorage.setItem('lastStation', JSON.stringify(stindex));\r\n // this.stationService.getStation(stindex.Id).subscribe((stationData: any) => {\r\n // this.stationDataSt = stationData; \r\n // localStorage.setItem('lastStation', JSON.stringify(this.stationDataSt[0])); \r\n\r\n // }); \r\n \r\n }\r\n graphReport()\r\n {\r\n this.apiSubscription.unsubscribe();\r\n //this.router.navigateByUrl('/Station-graphs/'+this.initialStationId+'/'+this.StationName);\r\n this.router.navigateByUrl('basic-report-amaala');\r\n }\r\n bindAllStationsSummary(stationId) { \r\n this.isLoading = true\r\n this.apiSubscription = this.apiInerval.pipe(startWith(0)).subscribe(x => { \r\n this.ebamDataService.getEbamDataSummary(+stationId).subscribe((summary: any) => { \r\n //this.stationService.getAllStationsSummary(stationId).subscribe((summary: any) => {\r\n this.isLoading = false;\r\n if (summary) {\r\n console.log(\"summary\"); \r\n this.stations_summary = summary;\r\n console.log(this.stations_summary); \r\n //Set Last Updated Date\r\n var dAndT = new dateAndTime();\r\n var m = new Date(this.stations_summary[0].Time)\r\n this.updated_tile_clock.year = m.getFullYear();\r\n this.updated_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(m)\r\n + \" \" +\r\n m.getDate();\r\n this.updated_tile_clock.time = m.toLocaleTimeString('en-GB')\r\n\r\n }\r\n });\r\n });\r\n }\r\n logout(){\r\n this.apiSubscription.unsubscribe();\r\n this.authService.logout();\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{clientName | uppercase}}
{{ StationName }} Weather Station

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

Saudi Arabia

\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n Current Date & Time\r\n
\r\n
\r\n {{current_tile_clock.year}}\r\n
\r\n
\r\n {{current_tile_clock.monthAndDay}}\r\n
\r\n
\r\n {{current_tile_clock.time}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Last Updated Date & Time\r\n
\r\n
\r\n {{updated_tile_clock.year}}\r\n
\r\n
\r\n {{updated_tile_clock.monthAndDay}}\r\n
\r\n
\r\n {{updated_tile_clock.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\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SelectClientService {\r\n private readonly stations_for_login = AppSettings.API_END_POINT +'Client';\r\n\r\n constructor(private http: HttpClient) { }\r\n getstationsforfirstpage()\r\n {\r\n return this.http.get(this.stations_for_login);\r\n }\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class RegulationService {\r\n\r\n private readonly regulation_url = AppSettings.API_END_POINT + 'Regulation/GetRegulation';\r\n private readonly regulation_report = AppSettings.API_END_POINT + 'Regulation/GetRegulationById';\r\n private readonly regulation_daily_report = AppSettings.API_END_POINT + 'DailyReport/GetRegulationValue';\r\n private readonly lastUpdate_Daily = AppSettings.API_END_POINT + 'DailyReport/GetLastUpdate';\r\n private readonly TwentyFourTemperatureReport = AppSettings.API_END_POINT + 'DailyReport/GetTwentyFourTemperatureReport';\r\n private readonly LastTwentyDays = AppSettings.API_END_POINT + 'DailyReport/GetLastTwentyDays';\r\n private readonly TwentyFourReport = AppSettings.API_END_POINT + 'DailyReport/GetTwentyFourReport';\r\n private readonly WindDirection = AppSettings.API_END_POINT + 'DailyReport/GetWindDirectionGraphdata';\r\n private readonly WindDirectionDailyreportRose = AppSettings.API_END_POINT + 'DailyReport/GetAngleAndDirections';\r\n private readonly PDFDownload = AppSettings.API_END_POINT + 'DailyReport/DailyReportDownloadPDF';\r\n private readonly DailyVibration = AppSettings.API_END_POINT + 'DailyReport/GetDailyVibrationReport';\r\n private readonly DailyNoise = AppSettings.API_END_POINT + 'DailyReport/GetDailyNoiseReport';\r\n private readonly DailyHumidity = AppSettings.API_END_POINT + 'DailyReport/GetTwentyFourHumidityReport';\r\n private readonly DailyWindSpeed = AppSettings.API_END_POINT + 'DailyReport/GetDailywindSpeedReport';\r\n \r\n constructor(private http: HttpClient) { }\r\n\r\n getAllRegulations(): Observable {\r\n return this.http.get(this.regulation_url);\r\n }\r\n\r\n getRegulationReport(stationId, RegulationId, Year): Observable {\r\n return this.http.get(this.regulation_report + \"?StationId=\" + stationId\r\n + \"&RegulationId=\" + RegulationId\r\n + \"&Year=\" + Year);\r\n }\r\n\r\n getRegulationValue(client_id, DateTime, RegulationId): Observable {\r\n return this.http.get(this.regulation_daily_report + \"?ClientId=\" + client_id + \"&Date=\" + DateTime + \r\n \"&RegulationId=\" + RegulationId);\r\n }\r\n \r\n getLastUpdateDaily(client_id,DateTime) {\r\n return this.http.get(this.lastUpdate_Daily + \"?ClientId=\" + client_id+\"&Date=\" + DateTime);\r\n }\r\n\r\n getTwentyFourTemperatureReport(DateTime,client_id) {\r\n return this.http.get(this.TwentyFourTemperatureReport+ \"?ClientId=\" +client_id + \"&Date=\" + DateTime); //chart\r\n }\r\n\r\n getLastTwentyDays(DateTime) {\r\n return this.http.get(this.LastTwentyDays+ \"?ClientId=\" + AppSettings.CLIENT_ID + \"&Date=\" + DateTime); //done\r\n }\r\n\r\n getTwentyFourReport(DateTime) {\r\n return this.http.get(this.TwentyFourReport+ \"?ClientId=\" + AppSettings.CLIENT_ID + \"&Date=\" + DateTime); //done\r\n }\r\n\r\n getWindDirection(DateTime,client_id) {\r\n return this.http.get(this.WindDirection + \"?Date=\" + DateTime + \"&ClientId=\"+client_id); //done\r\n }\r\n getWindDirectionDailyReportRose(DateTime,client_id){\r\n return this.http.get(this.WindDirectionDailyreportRose + \"?Date=\" + DateTime + \"&ClientId=\"+client_id);\r\n }\r\n getvibrationDailyReport(DateTime,client_id){\r\n return this.http.get(this.DailyVibration + \"?Date=\" + DateTime + \"&ClientId=\"+client_id);\r\n }\r\n getNoiseDailyReport(DateTime,client_id){\r\n return this.http.get(this.DailyNoise + \"?Date=\" + DateTime + \"&ClientId=\"+client_id);\r\n }\r\n getHumidityDailyReport(DateTime,client_id){\r\n return this.http.get(this.DailyHumidity + \"?Date=\" + DateTime + \"&ClientId=\"+client_id);\r\n }\r\n getWindSpeedDailyReport(DateTime,client_id){\r\n return this.http.get(this.DailyWindSpeed + \"?Date=\" + DateTime + \"&ClientId=\"+client_id);\r\n }\r\n \r\n getDownloadPDF(DateTime,client_id,RegulationId){\r\n return this.http.get(this.PDFDownload + \"?Date=\" + DateTime + \"&ClientId=\"+client_id + \"&RegulationId=\" + RegulationId)\r\n }\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport {\r\n FormArray,\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { Router } from '@angular/router';\r\nimport { UserGroupService } from 'src/app/services/user-group/user-group.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-create-user-group',\r\n templateUrl: './create-user-group.component.html',\r\n styleUrls: ['./create-user-group.component.css'],\r\n})\r\nexport class CreateUserGroupComponent implements OnInit {\r\n private readonly stationsApi = AppSettings.API_END_POINT + 'Station?id=' + AppSettings.CLIENT_ID;\r\n private readonly userGroupApi = AppSettings.API_END_POINT + 'UserGroup';\r\n private router: Router\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private http: HttpClient,\r\n private userGroupService: UserGroupService\r\n ) { }\r\n stations;\r\n userGroupForm;\r\n clientId;\r\n ngOnInit(): void {\r\n this.userGroupForm = this.fb.group({\r\n GroupName: ['', Validators.required],\r\n Description: [''],\r\n stationsSelected: this.fb.array([]),\r\n });\r\n\r\n this.getStations().subscribe((res) => {\r\n // console.log(res);\r\n this.stations = res;\r\n this.clientId = this.stations[0].ClientId;\r\n // console.log('Client id:', this.clientId);\r\n this.stations.map((station) => {\r\n this.stationsSelected.insert(0, this.fb.control(false));\r\n });\r\n });\r\n }\r\n\r\n get stationsSelected(): FormArray {\r\n return this.userGroupForm.get('stationsSelected') as FormArray;\r\n }\r\n\r\n getStations() {\r\n return this.http.get(this.stationsApi);\r\n }\r\n\r\n onChange() { }\r\n\r\n onSubmit() {\r\n const stationPermissions = this.stationsSelected.controls.map(\r\n (checkbox, index) => {\r\n return {\r\n StationId: this.stations[index].Id,\r\n PermissionStatus: checkbox.value,\r\n };\r\n }\r\n );\r\n\r\n delete this.userGroupForm.value.stationsSelected;\r\n\r\n const submitData = {\r\n ...this.userGroupForm.value,\r\n ClientId: AppSettings.CLIENT_ID,\r\n StationsPermission: stationPermissions,\r\n };\r\n\r\n // console.log('Data:', submitData);\r\n\r\n this.postUserGroupData(submitData);\r\n }\r\n\r\n postUserGroupData(data) {\r\n this.userGroupService.createUserGroup(data).subscribe(\r\n (res) => {\r\n // console.log(res);\r\n this.userGroupForm.reset();\r\n },\r\n (error) => {\r\n // console.log(error);\r\n }\r\n );\r\n }\r\n}\r\n","
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Create User Group

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Select Stations
\r\n
\r\n \r\n \r\n \r\n \r\n {{ stations[i].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 Create\r\n \r\n \r\n Cancel\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { EventEmitter, Input, Output, SimpleChanges } from '@angular/core';\r\nimport { Component, ElementRef, OnInit, ViewChild } from '@angular/core';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { CsvDataService } from 'src/app/services/report/csv-data.service';\r\n\r\n@Component({\r\n selector: 'app-event-graph',\r\n templateUrl: './event-graph.component.html',\r\n styleUrls: ['./event-graph.component.css']\r\n})\r\nexport class EventGraphComponent implements OnInit {\r\n\r\n data: any;\r\n headElements: any;\r\n ChartTitle: any;\r\n public TableVibrationEvent: any;\r\n public currentStation: any;\r\n public VibrationEventData: any;\r\n @ViewChild(\"eventgraph\") divView: ElementRef;\r\n\r\n @Input()\r\n Data: any;\r\n @Input()\r\n Download: boolean;\r\n @Output() EventSelected = new EventEmitter();\r\n\r\n constructor(private ebamDataService: EbamDataService,\r\n public messageService: MessageService,) {\r\n this.getCurrentstation();\r\n this.ChartTitle = \"Vibration Events (Today)\";\r\n }\r\n getCurrentstation() {\r\n this.currentStation = this.messageService.getLastStation();\r\n }\r\n ngOnInit() {\r\n this.data = this.Data;\r\n this.headElements = ['Id', 'Start Date', 'Start Time', 'Length(sec)', 'Peak-X', 'Peak-Y', 'Peak-Z', 'Freq-X', 'Freq-Y', 'Freq-Z', 'View'];\r\n if(this.Download){\r\n this.headElements.push(\"Download\");\r\n \r\n\r\n }\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Data.currentValue) {\r\n this.data = changes.Data.currentValue\r\n this.headElements = ['Id', 'Start Date', 'Start Time', 'Length(sec)', 'Peak-X', 'Peak-Y', 'Peak-Z', 'Freq-X', 'Freq-Y', 'Freq-Z', 'View'];\r\n if(this.Download){\r\n this.headElements.push(\"Download\");\r\n }\r\n }\r\n }\r\n onClickButton(Id) {\r\n this.EventSelected.emit(Id);\r\n }\r\n downloadEvent(id) {\r\n \r\n let stationName = this.currentStation.Name;\r\n var vibration_event_name = stationName + '_Vibration Event_' + '.csv';\r\n this.ebamDataService.getEventGraphData(id).subscribe((res: any) => {\r\n\r\n if (res && res.length > 0) { \r\n debugger;\r\n this.VibrationEventData = res;\r\n let vibrationEvent = this.VibrationEventData;\r\n this.TableVibrationEvent = [];\r\n vibrationEvent.forEach(_vibrationEvent => {\r\n let xx = {\r\n 'StartTime': _vibrationEvent[\"Time\"],\r\n 'Peak-X ( mm/s )': _vibrationEvent[\"VibrationX\"],\r\n 'Peak-Y ( mm/s )': _vibrationEvent[\"VibrationY\"],\r\n 'Peak-Z ( mm/s )': _vibrationEvent[\"VibrationZ\"]\r\n }\r\n this.TableVibrationEvent.push(xx);\r\n });\r\n CsvDataService.exportToCsv(vibration_event_name, this.TableVibrationEvent);\r\n \r\n\r\n /////////////////////////////////////////////////////////////////\r\n\r\n }\r\n });\r\n }\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n

{{ChartTitle}}

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{head}}
{{i+1}}{{evData.StartDate}}{{evData.StartTime}}{{evData.Length}}{{evData[\"Peak-X\"]}}{{evData[\"Peak-Y\"]}}{{evData[\"Peak-Z\"]}}{{evData[\"DomFreq-X\"]}}{{evData[\"DomFreq-Y\"]}}{{evData[\"DomFreq-Z\"]}}
\r\n \r\n
\r\n \r\n
\r\n","import { AfterViewInit, Component, ElementRef, Input, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';\r\nimport { BehaviorSubject, Subscription } from 'rxjs';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\nimport * as d3 from 'd3';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n\r\n@Component({\r\n selector: 'app-barchart',\r\n templateUrl: './barchart.component.html',\r\n styleUrls: ['./barchart.component.css']\r\n})\r\nexport class BarchartComponent implements OnInit, AfterViewInit, OnChanges {\r\n @ViewChild(\"barchartfigure\") divView: ElementRef;\r\n\r\n\r\n public data: any;\r\n private svg;\r\n private margin = 100;\r\n private width = 850 - (this.margin * 2);\r\n private height = 400 - (this.margin * 2);\r\n stationSubscription: Subscription;\r\n public figureId = null;\r\n public PM10_Colorcodes: any;\r\n\r\n @Input()\r\n ChartTitle: string\r\n @Input()\r\n Data: any\r\n @Input()\r\n XKey: string\r\n @Input()\r\n YKey: string\r\n @Input()\r\n ColorKey: string\r\n @Input()\r\n LabelX: string\r\n @Input()\r\n LabelY: string\r\n @Input()\r\n dateStatus: boolean\r\n @Input()\r\n Period: any\r\n\r\n constructor(private ebamDataService: EbamDataService) {\r\n this.figureId = \"bar-chart-\" + generateUniqueId();\r\n }\r\n ngAfterViewInit(): void {\r\n //Width of the container\r\n this.width = this.divView.nativeElement.offsetWidth + 50 - (this.margin * 2);\r\n\r\n //too small apply better width and make scrollable\r\n if (this.width <= 300) {\r\n this.width = 650 - (this.margin * 2);\r\n this.height = 400 - (this.margin * 2);\r\n }\r\n else {\r\n this.width = this.width - (this.margin / 2);\r\n }\r\n this.initChart();\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n var chartType = \"PM10\";\r\n\r\n if (this.ChartTitle.includes(\"PM2.5\"))\r\n chartType = \"PM2.5\";\r\n\r\n if (this.ChartTitle.includes(\"PM10\"))\r\n chartType = \"PM10\";\r\n\r\n\r\n this.ebamDataService.getpm10_GraphlegendCodeColor(chartType).subscribe((color: any) => {\r\n this.PM10_Colorcodes = color;\r\n console.log(chartType)\r\n console.log(color)\r\n });\r\n\r\n\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Data && changes.Data.currentValue) {\r\n this.Data = changes.Data.currentValue\r\n this.initChart();\r\n }\r\n }\r\n\r\n private initChart() {\r\n this.data = this.Data;\r\n\r\n var lowest = Number.POSITIVE_INFINITY;\r\n var highest = Number.NEGATIVE_INFINITY;\r\n var tmp;\r\n for (var i = this.data.length - 1; i >= 0; i--) {\r\n tmp = this.data[i][this.YKey];\r\n if (tmp < lowest) lowest = tmp;\r\n if (tmp > highest) highest = tmp;\r\n }\r\n\r\n this.createSvg();\r\n this.drawBars(this.data, 0, highest);\r\n }\r\n\r\n private createSvg(): void {\r\n d3.select(\"#\" + this.figureId + \">svg\").remove();\r\n this.svg = d3.select(\"figure#\" + this.figureId)\r\n .append(\"svg\")\r\n // .attr('preserveAspectRatio', 'xMinYMin meet')\r\n // .attr('viewBox','0 0 ' +(this.width + (this.margin * 2)) +' ' +(this.height + (this.margin * 2)))\r\n .attr(\"width\", this.width + (this.margin * 2))\r\n .attr(\"height\", this.height + (this.margin * 2))\r\n .append(\"g\")\r\n .attr(\"transform\", \"translate(\" + this.margin + \",\" + this.margin + \")\");\r\n }\r\n\r\n private drawBars(data: any[], lowest, highest): void {\r\n\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n if(highest==0)\r\n {\r\n highest=10;\r\n }\r\n }\r\n \r\n if (this.dateStatus) {\r\n // Create the X-axis band scale\r\n const x = d3.scaleBand()\r\n .range([0, this.width])\r\n .domain(data.map(d => this.parsedate(d[this.XKey])))\r\n .padding(0.2)\r\n\r\n\r\n // Draw the X-axis on the DOM\r\n this.svg.append(\"g\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .call(d3.axisBottom(x))\r\n .selectAll(\"text\")\r\n .attr(\"transform\", \"translate(-10,0)rotate(-45)\")\r\n .style(\"text-anchor\", \"end\");\r\n\r\n // Create the Y-axis band scale\r\n const y = d3.scaleLinear()\r\n .domain([lowest, highest])\r\n .range([this.height, 0])\r\n\r\n // Draw the Y-axis on the DOM\r\n this.svg.append(\"g\")\r\n .call(d3.axisLeft(y));\r\n\r\n this.svg.append(\"text\")\r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"y\", this.height + (this.margin))\r\n .attr(\"x\", this.width / 2)\r\n .text(this.LabelX);\r\n\r\n this.svg.append(\"text\")\r\n .attr(\"transform\", \"rotate(-90)\")\r\n .attr(\"y\", 0)\r\n .attr(\"x\", 0)\r\n .attr(\"dy\", \"-5em\")\r\n .attr(\"dx\", -(this.height))\r\n .text(this.LabelY);\r\n\r\n // Create and fill the bars\r\n this.svg.selectAll(\"bars\")\r\n .data(data)\r\n .enter()\r\n .append(\"rect\")\r\n .attr(\"x\", d => x(this.parsedate(d[this.XKey])))\r\n .attr(\"y\", d => y(d[this.YKey]))\r\n .attr(\"width\", x.bandwidth())\r\n .attr(\"fill\", d => d[this.ColorKey])\r\n .transition() // <---- Here is the transition\r\n // .duration(2000)\r\n .duration(0)\r\n .attr(\"height\", (d) => this.height - y(d[this.YKey]));\r\n\r\n //adding value on the bars for amaala\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n this.svg.selectAll(\"bars\")\r\n .data(data)\r\n .enter()\r\n .append(\"text\") \r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"x\", d => x(this.parsedate(d[this.XKey]))+x.bandwidth()/2)\r\n .attr(\"y\", d => y(d[this.YKey])-5)\r\n // .attr(\"x\", d => x(new Date(d[this.XKey]).toLocaleString())+x.bandwidth()/2)\r\n // .attr(\"y\", d => y(d[this.YKey])-5)\r\n .text(d => (d[this.YKey]));\r\n // .style('fill', '#3598dc');\r\n }\r\n \r\n }\r\n else {\r\n // Create the X-axis band scale\r\n const x = d3.scaleBand()\r\n .range([0, this.width])\r\n .domain(data.map(d => new Date(d[this.XKey]).toLocaleString()))\r\n .padding(0.2)\r\n\r\n\r\n // Draw the X-axis on the DOM\r\n this.svg.append(\"g\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .call(d3.axisBottom(x))\r\n .selectAll(\"text\")\r\n .attr(\"transform\", \"translate(-10,0)rotate(-45)\")\r\n .style(\"text-anchor\", \"end\");\r\n\r\n // Create the Y-axis band scale\r\n const y = d3.scaleLinear()\r\n .domain([lowest, highest])\r\n .range([this.height, 0])\r\n\r\n // Draw the Y-axis on the DOM\r\n this.svg.append(\"g\")\r\n .call(d3.axisLeft(y));\r\n\r\n this.svg.append(\"text\")\r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"y\", this.height + (this.margin))\r\n .attr(\"x\", this.width / 2)\r\n .text(this.LabelX);\r\n\r\n this.svg.append(\"text\")\r\n .attr(\"transform\", \"rotate(-90)\")\r\n .attr(\"y\", 0)\r\n .attr(\"x\", 0)\r\n .attr(\"dy\", \"-5em\")\r\n .attr(\"dx\", -(this.height))\r\n .text(this.LabelY);\r\n\r\n // Create and fill the bars\r\n this.svg.selectAll(\"bars\")\r\n .data(data)\r\n .enter()\r\n .append(\"rect\")\r\n .attr(\"x\", d => x(new Date(d[this.XKey]).toLocaleString()))\r\n .attr(\"y\", d => y(d[this.YKey]))\r\n .attr(\"width\", x.bandwidth())\r\n .attr(\"fill\", d => d[this.ColorKey])\r\n .transition() // <---- Here is the transition\r\n // .duration(2000)\r\n .duration(0)\r\n .attr(\"height\", (d) => this.height - y(d[this.YKey])); \r\n\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n this.svg.selectAll(\"bars\")\r\n .data(data)\r\n .enter()\r\n .append(\"text\") \r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"x\", d => x(new Date(d[this.XKey]).toLocaleString())+x.bandwidth()/2)\r\n .attr(\"y\", d => y(d[this.YKey])-5)\r\n .text(d => (d[this.YKey]));\r\n // .style('fill', '#3598dc');\r\n }\r\n \r\n \r\n \r\n \r\n }\r\n \r\n\r\n\r\n }\r\n\r\n parsedate(date) {\r\n const monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\",\r\n \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"\r\n ];\r\n var datex = new Date(date);\r\n var year = datex.getFullYear();\r\n var month = datex.getMonth() + 1;\r\n var day = datex.getDate();\r\n\r\n var dateStr = (day < 10 ? \"0\" + day.toString() : day.toString()) + \"/\"\r\n + (month < 10 ? \"0\" + month.toString() : month.toString()) + \"/\"\r\n + year;\r\n\r\n\r\n if (this.Period)\r\n if (this.Period.includes(\"Year\"))\r\n return monthNames[month - 1];\r\n\r\n return dateStr;\r\n }\r\n\r\n\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

{{ChartTitle}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n  \r\n
 \r\n
{{color.MinAndMaxValue}} µg/m3
   \r\n
\r\n
\r\n
\r\n\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 { Component, ElementRef, Input, OnInit, SimpleChanges, ViewChild } from '@angular/core';\r\nimport * as d3 from 'd3';\r\n\r\n@Component({\r\n selector: 'app-scatter',\r\n templateUrl: './scatter.component.html',\r\n styleUrls: ['./scatter.component.scss']\r\n})\r\nexport class ScatterComponent implements OnInit {\r\n @ViewChild(\"scatterchartfigure\") divView: ElementRef;\r\n\r\n @Input()\r\n ChartTitle: string\r\n @Input()\r\n Data: any\r\n @Input()\r\n XKey: string\r\n @Input()\r\n YKey: string\r\n @Input()\r\n ColorKey: string\r\n @Input()\r\n LabelX: string\r\n @Input()\r\n LabelY: string\r\n @Input()\r\n ToolTipUnit: string\r\n\r\n @Input()\r\n Max: number\r\n\r\n @Input()\r\n Min: number\r\n public data: any;\r\n private svg;\r\n private margin = 100;\r\n private width = 540 - (this.margin * 2);\r\n private height = 400 - (this.margin * 2); \r\n \r\n\r\n constructor() { }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Data.currentValue) {\r\n this.data = changes.Data.currentValue\r\n console.log('before cloud data',this.data)\r\n // this.drawLineChart(this.data);\r\n }\r\n }\r\n ngAfterViewInit(): void {\r\n this.data = this.Data;\r\n this.drawPlot();\r\n }\r\n // private data = [\r\n // {\"Framework\": \"Vue\", \"Stars\": \"166443\", \"Released\": \"2014\"},\r\n // {\"Framework\": \"React\", \"Stars\": \"150793\", \"Released\": \"2013\"},\r\n // {\"Framework\": \"Angular\", \"Stars\": \"62342\", \"Released\": \"2016\"},\r\n // {\"Framework\": \"Backbone\", \"Stars\": \"27647\", \"Released\": \"2010\"},\r\n // {\"Framework\": \"Ember\", \"Stars\": \"21471\", \"Released\": \"2011\"},\r\n // ];\r\n \r\n\r\n\r\n \r\n \r\n private createSvg(): void {\r\n this.svg = d3.select(\"figure#scatter\")\r\n .append(\"svg\")\r\n .attr(\"width\", this.width + (this.margin * 2))\r\n .attr(\"height\", this.height + (this.margin * 2))\r\n .append(\"g\")\r\n .attr(\"transform\", \"translate(\" + this.margin + \",\" + this.margin + \")\");\r\n}\r\nprivate drawPlot(): void {\r\n // Add X axis \r\n //x.domain(d3.extent(data, function (d) { return d[xKey]; }));\r\n const x = d3.scaleLinear()\r\n .domain(d3.extent(this.data, function (d) { return d.Time; }))\r\n .range([ 0, this.width ]);\r\n this.svg.append(\"g\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .call(d3.axisBottom(x).tickFormat(d3.timeFormat(\"%d %b %I:%M %p\")))\r\n .selectAll(\"text\")\r\n .style(\"text-anchor\", \"end\")\r\n .attr(\"dx\", \"-.8em\")\r\n .attr(\"dy\", \".15em\")\r\n .attr(\"transform\", \"rotate(-65)\");\r\n\r\n // Add Y axis\r\n const y = d3.scaleLinear()\r\n .domain([0, 8])\r\n .range([ this.height, 0]);\r\n this.svg.append(\"g\")\r\n .call(d3.axisLeft(y));\r\n\r\n // Add dots\r\n //console.log(\"sample\",this.data)\r\n const dots = this.svg.append('g');\r\n dots.selectAll(\"dot\")\r\n .data(this.data)\r\n .enter()\r\n .append(\"circle\")\r\n .attr(\"cx\", d => x(d.Time))\r\n .attr(\"cy\", d => y(d.Cloud))\r\n .attr(\"r\", 3)\r\n .style(\"opacity\", .5)\r\n .style(\"fill\", \"#3598DC\");\r\n\r\n // Add labels\r\n dots.selectAll(\"text\")\r\n .data(this.data)\r\n .enter()\r\n .append(\"text\")\r\n .text(d => \" \")\r\n .attr(\"x\", d => x(d.Time))\r\n .attr(\"y\", d => y(d.Cloud))\r\n\r\n //adding tool tip\r\n const tooltip = this.svg.append(\"g\");\r\n\r\n this.svg.append(\"rect\")\r\n .attr(\"class\", \"overlay\")\r\n .attr(\"width\", this.width)\r\n .attr(\"height\", this.height)\r\n .style('fill', 'none')\r\n .style('pointer-events', 'all');\r\n\r\n var bisectChart = (xy) => {\r\n const bisect = d3.bisector(d => d.Time).left;\r\n const date = x.invert(xy);\r\n const index = bisect(this.data, date, 1);\r\n const a = this.data[index - 1];\r\n const b = this.data[index];\r\n return b && (date - a.date > b.date - date) ? b : a;\r\n \r\n }\r\n // gridlines in x axis function\r\n function make_x_gridlines() {\r\n return d3.axisBottom(x)\r\n .ticks(8)\r\n }\r\n // gridlines in y axis function\r\n function make_y_gridlines() {\r\n return d3.axisLeft(y)\r\n .ticks(8)\r\n }\r\n //y-Axis label\r\n this.svg.append(\"text\")\r\n .attr(\"transform\", \"rotate(-90)\")\r\n .attr(\"y\", 0)\r\n .attr(\"x\", 0)\r\n .attr(\"dy\", \"-4em\")\r\n .attr(\"dx\", -(this.height))\r\n .text(\"Cloud Cover (oktas)\")\r\n .style(\"fill\", \"Black\");\r\n // add the X gridlines\r\n this.svg.append(\"g\")\r\n .attr(\"class\", \"grid\")\r\n .attr(\"transform\", \"translate(0,\" + this.height + \")\")\r\n .attr(\"shape-rendering\", \"crispEdges\")\r\n .call(make_x_gridlines()\r\n .tickSize(-this.height)\r\n .tickFormat(\"\")\r\n )\r\n .attr(\"class\", \"grid-lines\")\r\n\r\n // add the Y gridlines\r\n this.svg.append(\"g\")\r\n .attr(\"class\", \"grid\")\r\n .attr(\"shape-rendering\", \"crispEdges\")\r\n .call(make_y_gridlines()\r\n .tickSize(-this.width)\r\n .tickFormat(\"\")\r\n )\r\n .attr(\"class\", \"grid-lines\")\r\n var callout = (g, Value, cc) => { \r\n if (!Value) return g.style(\"display\", \"none\");\r\n \r\n g.style(\"display\", null)\r\n .style(\"pointer-events\", \"none\")\r\n .style(\"font\", \"10px sans-serif\");\r\n \r\n const path = g.selectAll(\"path\")\r\n .data([null])\r\n .join(\"path\")\r\n .attr(\"fill\", \"#3598DC\")\r\n .attr(\"stroke\", cc)\r\n .attr(\"stroke-linecap\", \"round\")\r\n \r\n \r\n const text = g.selectAll(\"text\")\r\n .data([null])\r\n .join(\"text\")\r\n .call(text => text\r\n .selectAll(\"tspan\")\r\n .data((Value).split(/\\n/))\r\n .join(\"tspan\")\r\n .attr(\"x\", 0)\r\n .attr(\"y\", (d, i) => `${i * 1.1}em`)\r\n .style(\"font-weight\", (_, i) => i ? null : \"bold\")\r\n .style(\"font-size\", \"15px\")\r\n .text(d => d))\r\n .style(\"fill\", \"Black\");\r\n \r\n const { x, y, width: w, height: h } = text.node().getBBox();\r\n \r\n text.attr(\"transform\", `translate(${-w / 2},${15 - y})`);\r\n path.attr(\"d\", `M${-w / 2 - 10},5H-5l5,-5l5,5H${w / 2 + 10}v${h + 20}h-${w + 20}z`);\r\n }\r\n this.svg.on(\"touchmove mousemove\", function (event) {\r\n var pointedAt = bisectChart(d3.pointer(event, this)[0]);\r\n var timeString = pointedAt.Time.toLocaleTimeString();\r\n tooltip\r\n .attr(\"transform\", `translate(${x(pointedAt.Time)},${y(pointedAt.Cloud)})`)\r\n .call(callout, `${(pointedAt.Cloud + \" \" + \"oktas\")}\r\n ${(timeString)}`, pointedAt[\"#87ceeb\"]);\r\n });\r\n\r\n this.svg.on(\"touchend mouseleave\", () => tooltip.call(callout, null));\r\n}\r\n\r\nngOnInit(): void {\r\n this.createSvg();\r\n //this.drawPlot();\r\n}\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

Cloud Cover

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n ","var map = {\n\t\"./af\": \"K/tc\",\n\t\"./af.js\": \"K/tc\",\n\t\"./ar\": \"jnO4\",\n\t\"./ar-dz\": \"o1bE\",\n\t\"./ar-dz.js\": \"o1bE\",\n\t\"./ar-kw\": \"Qj4J\",\n\t\"./ar-kw.js\": \"Qj4J\",\n\t\"./ar-ly\": \"HP3h\",\n\t\"./ar-ly.js\": \"HP3h\",\n\t\"./ar-ma\": \"CoRJ\",\n\t\"./ar-ma.js\": \"CoRJ\",\n\t\"./ar-sa\": \"gjCT\",\n\t\"./ar-sa.js\": \"gjCT\",\n\t\"./ar-tn\": \"bYM6\",\n\t\"./ar-tn.js\": \"bYM6\",\n\t\"./ar.js\": \"jnO4\",\n\t\"./az\": \"SFxW\",\n\t\"./az.js\": \"SFxW\",\n\t\"./be\": \"H8ED\",\n\t\"./be.js\": \"H8ED\",\n\t\"./bg\": \"hKrs\",\n\t\"./bg.js\": \"hKrs\",\n\t\"./bm\": \"p/rL\",\n\t\"./bm.js\": \"p/rL\",\n\t\"./bn\": \"kEOa\",\n\t\"./bn-bd\": \"loYQ\",\n\t\"./bn-bd.js\": \"loYQ\",\n\t\"./bn.js\": \"kEOa\",\n\t\"./bo\": \"0mo+\",\n\t\"./bo.js\": \"0mo+\",\n\t\"./br\": \"aIdf\",\n\t\"./br.js\": \"aIdf\",\n\t\"./bs\": \"JVSJ\",\n\t\"./bs.js\": \"JVSJ\",\n\t\"./ca\": \"1xZ4\",\n\t\"./ca.js\": \"1xZ4\",\n\t\"./cs\": \"PA2r\",\n\t\"./cs.js\": \"PA2r\",\n\t\"./cv\": \"A+xa\",\n\t\"./cv.js\": \"A+xa\",\n\t\"./cy\": \"l5ep\",\n\t\"./cy.js\": \"l5ep\",\n\t\"./da\": \"DxQv\",\n\t\"./da.js\": \"DxQv\",\n\t\"./de\": \"tGlX\",\n\t\"./de-at\": \"s+uk\",\n\t\"./de-at.js\": \"s+uk\",\n\t\"./de-ch\": \"u3GI\",\n\t\"./de-ch.js\": \"u3GI\",\n\t\"./de.js\": \"tGlX\",\n\t\"./dv\": \"WYrj\",\n\t\"./dv.js\": \"WYrj\",\n\t\"./el\": \"jUeY\",\n\t\"./el.js\": \"jUeY\",\n\t\"./en-au\": \"Dmvi\",\n\t\"./en-au.js\": \"Dmvi\",\n\t\"./en-ca\": \"OIYi\",\n\t\"./en-ca.js\": \"OIYi\",\n\t\"./en-gb\": \"Oaa7\",\n\t\"./en-gb.js\": \"Oaa7\",\n\t\"./en-ie\": \"4dOw\",\n\t\"./en-ie.js\": \"4dOw\",\n\t\"./en-il\": \"czMo\",\n\t\"./en-il.js\": \"czMo\",\n\t\"./en-in\": \"7C5Q\",\n\t\"./en-in.js\": \"7C5Q\",\n\t\"./en-nz\": \"b1Dy\",\n\t\"./en-nz.js\": \"b1Dy\",\n\t\"./en-sg\": \"t+mt\",\n\t\"./en-sg.js\": \"t+mt\",\n\t\"./eo\": \"Zduo\",\n\t\"./eo.js\": \"Zduo\",\n\t\"./es\": \"iYuL\",\n\t\"./es-do\": \"CjzT\",\n\t\"./es-do.js\": \"CjzT\",\n\t\"./es-mx\": \"tbfe\",\n\t\"./es-mx.js\": \"tbfe\",\n\t\"./es-us\": \"Vclq\",\n\t\"./es-us.js\": \"Vclq\",\n\t\"./es.js\": \"iYuL\",\n\t\"./et\": \"7BjC\",\n\t\"./et.js\": \"7BjC\",\n\t\"./eu\": \"D/JM\",\n\t\"./eu.js\": \"D/JM\",\n\t\"./fa\": \"jfSC\",\n\t\"./fa.js\": \"jfSC\",\n\t\"./fi\": \"gekB\",\n\t\"./fi.js\": \"gekB\",\n\t\"./fil\": \"1ppg\",\n\t\"./fil.js\": \"1ppg\",\n\t\"./fo\": \"ByF4\",\n\t\"./fo.js\": \"ByF4\",\n\t\"./fr\": \"nyYc\",\n\t\"./fr-ca\": \"2fjn\",\n\t\"./fr-ca.js\": \"2fjn\",\n\t\"./fr-ch\": \"Dkky\",\n\t\"./fr-ch.js\": \"Dkky\",\n\t\"./fr.js\": \"nyYc\",\n\t\"./fy\": \"cRix\",\n\t\"./fy.js\": \"cRix\",\n\t\"./ga\": \"USCx\",\n\t\"./ga.js\": \"USCx\",\n\t\"./gd\": \"9rRi\",\n\t\"./gd.js\": \"9rRi\",\n\t\"./gl\": \"iEDd\",\n\t\"./gl.js\": \"iEDd\",\n\t\"./gom-deva\": \"qvJo\",\n\t\"./gom-deva.js\": \"qvJo\",\n\t\"./gom-latn\": \"DKr+\",\n\t\"./gom-latn.js\": \"DKr+\",\n\t\"./gu\": \"4MV3\",\n\t\"./gu.js\": \"4MV3\",\n\t\"./he\": \"x6pH\",\n\t\"./he.js\": \"x6pH\",\n\t\"./hi\": \"3E1r\",\n\t\"./hi.js\": \"3E1r\",\n\t\"./hr\": \"S6ln\",\n\t\"./hr.js\": \"S6ln\",\n\t\"./hu\": \"WxRl\",\n\t\"./hu.js\": \"WxRl\",\n\t\"./hy-am\": \"1rYy\",\n\t\"./hy-am.js\": \"1rYy\",\n\t\"./id\": \"UDhR\",\n\t\"./id.js\": \"UDhR\",\n\t\"./is\": \"BVg3\",\n\t\"./is.js\": \"BVg3\",\n\t\"./it\": \"bpih\",\n\t\"./it-ch\": \"bxKX\",\n\t\"./it-ch.js\": \"bxKX\",\n\t\"./it.js\": \"bpih\",\n\t\"./ja\": \"B55N\",\n\t\"./ja.js\": \"B55N\",\n\t\"./jv\": \"tUCv\",\n\t\"./jv.js\": \"tUCv\",\n\t\"./ka\": \"IBtZ\",\n\t\"./ka.js\": \"IBtZ\",\n\t\"./kk\": \"bXm7\",\n\t\"./kk.js\": \"bXm7\",\n\t\"./km\": \"6B0Y\",\n\t\"./km.js\": \"6B0Y\",\n\t\"./kn\": \"PpIw\",\n\t\"./kn.js\": \"PpIw\",\n\t\"./ko\": \"Ivi+\",\n\t\"./ko.js\": \"Ivi+\",\n\t\"./ku\": \"JCF/\",\n\t\"./ku.js\": \"JCF/\",\n\t\"./ky\": \"lgnt\",\n\t\"./ky.js\": \"lgnt\",\n\t\"./lb\": \"RAwQ\",\n\t\"./lb.js\": \"RAwQ\",\n\t\"./lo\": \"sp3z\",\n\t\"./lo.js\": \"sp3z\",\n\t\"./lt\": \"JvlW\",\n\t\"./lt.js\": \"JvlW\",\n\t\"./lv\": \"uXwI\",\n\t\"./lv.js\": \"uXwI\",\n\t\"./me\": \"KTz0\",\n\t\"./me.js\": \"KTz0\",\n\t\"./mi\": \"aIsn\",\n\t\"./mi.js\": \"aIsn\",\n\t\"./mk\": \"aQkU\",\n\t\"./mk.js\": \"aQkU\",\n\t\"./ml\": \"AvvY\",\n\t\"./ml.js\": \"AvvY\",\n\t\"./mn\": \"lYtQ\",\n\t\"./mn.js\": \"lYtQ\",\n\t\"./mr\": \"Ob0Z\",\n\t\"./mr.js\": \"Ob0Z\",\n\t\"./ms\": \"6+QB\",\n\t\"./ms-my\": \"ZAMP\",\n\t\"./ms-my.js\": \"ZAMP\",\n\t\"./ms.js\": \"6+QB\",\n\t\"./mt\": \"G0Uy\",\n\t\"./mt.js\": \"G0Uy\",\n\t\"./my\": \"honF\",\n\t\"./my.js\": \"honF\",\n\t\"./nb\": \"bOMt\",\n\t\"./nb.js\": \"bOMt\",\n\t\"./ne\": \"OjkT\",\n\t\"./ne.js\": \"OjkT\",\n\t\"./nl\": \"+s0g\",\n\t\"./nl-be\": \"2ykv\",\n\t\"./nl-be.js\": \"2ykv\",\n\t\"./nl.js\": \"+s0g\",\n\t\"./nn\": \"uEye\",\n\t\"./nn.js\": \"uEye\",\n\t\"./oc-lnc\": \"Fnuy\",\n\t\"./oc-lnc.js\": \"Fnuy\",\n\t\"./pa-in\": \"8/+R\",\n\t\"./pa-in.js\": \"8/+R\",\n\t\"./pl\": \"jVdC\",\n\t\"./pl.js\": \"jVdC\",\n\t\"./pt\": \"8mBD\",\n\t\"./pt-br\": \"0tRk\",\n\t\"./pt-br.js\": \"0tRk\",\n\t\"./pt.js\": \"8mBD\",\n\t\"./ro\": \"lyxo\",\n\t\"./ro.js\": \"lyxo\",\n\t\"./ru\": \"lXzo\",\n\t\"./ru.js\": \"lXzo\",\n\t\"./sd\": \"Z4QM\",\n\t\"./sd.js\": \"Z4QM\",\n\t\"./se\": \"//9w\",\n\t\"./se.js\": \"//9w\",\n\t\"./si\": \"7aV9\",\n\t\"./si.js\": \"7aV9\",\n\t\"./sk\": \"e+ae\",\n\t\"./sk.js\": \"e+ae\",\n\t\"./sl\": \"gVVK\",\n\t\"./sl.js\": \"gVVK\",\n\t\"./sq\": \"yPMs\",\n\t\"./sq.js\": \"yPMs\",\n\t\"./sr\": \"zx6S\",\n\t\"./sr-cyrl\": \"E+lV\",\n\t\"./sr-cyrl.js\": \"E+lV\",\n\t\"./sr.js\": \"zx6S\",\n\t\"./ss\": \"Ur1D\",\n\t\"./ss.js\": \"Ur1D\",\n\t\"./sv\": \"X709\",\n\t\"./sv.js\": \"X709\",\n\t\"./sw\": \"dNwA\",\n\t\"./sw.js\": \"dNwA\",\n\t\"./ta\": \"PeUW\",\n\t\"./ta.js\": \"PeUW\",\n\t\"./te\": \"XLvN\",\n\t\"./te.js\": \"XLvN\",\n\t\"./tet\": \"V2x9\",\n\t\"./tet.js\": \"V2x9\",\n\t\"./tg\": \"Oxv6\",\n\t\"./tg.js\": \"Oxv6\",\n\t\"./th\": \"EOgW\",\n\t\"./th.js\": \"EOgW\",\n\t\"./tk\": \"Wv91\",\n\t\"./tk.js\": \"Wv91\",\n\t\"./tl-ph\": \"Dzi0\",\n\t\"./tl-ph.js\": \"Dzi0\",\n\t\"./tlh\": \"z3Vd\",\n\t\"./tlh.js\": \"z3Vd\",\n\t\"./tr\": \"DoHr\",\n\t\"./tr.js\": \"DoHr\",\n\t\"./tzl\": \"z1FC\",\n\t\"./tzl.js\": \"z1FC\",\n\t\"./tzm\": \"wQk9\",\n\t\"./tzm-latn\": \"tT3J\",\n\t\"./tzm-latn.js\": \"tT3J\",\n\t\"./tzm.js\": \"wQk9\",\n\t\"./ug-cn\": \"YRex\",\n\t\"./ug-cn.js\": \"YRex\",\n\t\"./uk\": \"raLr\",\n\t\"./uk.js\": \"raLr\",\n\t\"./ur\": \"UpQW\",\n\t\"./ur.js\": \"UpQW\",\n\t\"./uz\": \"Loxo\",\n\t\"./uz-latn\": \"AQ68\",\n\t\"./uz-latn.js\": \"AQ68\",\n\t\"./uz.js\": \"Loxo\",\n\t\"./vi\": \"KSF8\",\n\t\"./vi.js\": \"KSF8\",\n\t\"./x-pseudo\": \"/X5v\",\n\t\"./x-pseudo.js\": \"/X5v\",\n\t\"./yo\": \"fzPg\",\n\t\"./yo.js\": \"fzPg\",\n\t\"./zh-cn\": \"XDpg\",\n\t\"./zh-cn.js\": \"XDpg\",\n\t\"./zh-hk\": \"SatO\",\n\t\"./zh-hk.js\": \"SatO\",\n\t\"./zh-mo\": \"OmwH\",\n\t\"./zh-mo.js\": \"OmwH\",\n\t\"./zh-tw\": \"kOpN\",\n\t\"./zh-tw.js\": \"kOpN\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"RnhZ\";","import { Component, OnInit } from '@angular/core';\r\nimport { AuthService } from './services/auth-service/auth.service';\r\n\r\n@Component({\r\n selector: 'app-root',\r\n templateUrl: './app.component.html',\r\n styleUrls: ['./app.component.css']\r\n})\r\nexport class AppComponent implements OnInit {\r\n title = 'GACSWeb';\r\n\r\n constructor(private authService: AuthService){\r\n\r\n }\r\n\r\n ngOnInit(){\r\n this.authService.autoLogin();\r\n }\r\n}\r\n","","import { Injectable } from '@angular/core';\r\nimport {HttpClient,HttpHeaders,HttpHeaderResponse} from '@angular/common/http';\r\n\r\nimport { map } from 'rxjs/operators';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DownloadPDFService {\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport {\r\n FormArray,\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { DeviceDetectorService } from 'ngx-device-detector';\r\nimport { UserGroupService } from 'src/app/services/user-group/user-group.service';\r\nimport { UserService } from 'src/app/services/user/user.service';\r\nimport { Router } from '@angular/router';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-edit-user',\r\n templateUrl: './edit-user.component.html',\r\n styleUrls: ['./edit-user.component.css'],\r\n})\r\nexport class EditUserComponent implements OnInit {\r\n\r\n checked:boolean;\r\n userData;\r\n userForm;\r\n userGroups;\r\n userGroupArray;\r\n // UserGroupSelected;\r\n // UserTypeSelected;\r\n deviceInfo;\r\n clientId = AppSettings.CLIENT_ID;\r\n userId;\r\n superUser = [true, false];\r\n isMailAlert= [{displayName:\"Yes\", value: true},{displayName:\"No\", value: false} ];\r\n isSMSAlert=[{displayName:\"Yes\", value: true},{displayName:\"No\", value: false} ];\r\n mailAlert = [true, false];\r\n userType = [\r\n { Id: 1, userType: 'Admin' },\r\n { Id: 2, userType: 'Normal User' },\r\n ];\r\n\r\n constructor(\r\n private fb: FormBuilder,\r\n private userService: UserService,\r\n private userGroupService: UserGroupService,\r\n private deviceService: DeviceDetectorService,\r\n private route: ActivatedRoute,\r\n private router: Router\r\n ) {\r\n this.checked=false;\r\n }\r\n\r\n ngOnInit(): void {\r\n\r\n this.userId = this.route.snapshot.params['id'];\r\n // console.log(this.userId);\r\n\r\n this.userForm = this.fb.group({\r\n FirstName: [''],\r\n LastName: [''],\r\n EmailId: [''],\r\n ContactNo: [''],\r\n UserTypeId: [''],\r\n UserGroupId: [''],\r\n IsSuperUser: [false],\r\n IsMailAlert :['',Validators.required],\r\n IsSMSAlert : ['',Validators.required],\r\n RegulationViolationAlert:[this.checked],\r\n MachineStopAlert :[this.checked],\r\n DailyMailAlert :[this.checked]\r\n });\r\n this.userService.getUser(this.clientId, this.userId).subscribe((res) => {\r\n this.userData = res[0].Result[0];\r\n\r\n this.userGroupService.getAllUserGroups(AppSettings.CLIENT_ID).subscribe((res) => {\r\n // console.log(res);\r\n this.userGroups = res[0].Result;\r\n // console.log('userGroups', this.userGroups);\r\n \r\n this.userGroupArray = this.userGroups.map((userGroup) => {\r\n return {\r\n Id: userGroup.UserGroupId,\r\n Name: userGroup.GroupName,\r\n };\r\n });\r\n // console.log('userGroupArray', this.userGroupArray);\r\n\r\n // this.UserGroupSelected = this.userGroupArray.find(\r\n // (group) => group.Id === this.userData.UserGroupId\r\n // ).Name;\r\n // console.log('UserGroupSelected:', this.UserGroupSelected);\r\n // this.UserTypeSelected = this.userType.find(\r\n // (type) => type.Id === this.userData.UserTypeId\r\n // ).userType;\r\n\r\n this.userForm = this.fb.group({\r\n FirstName: [this.userData.FirstName, Validators.required],\r\n LastName: [this.userData.LastName, Validators.required],\r\n EmailId: [this.userData.EmailId],\r\n ContactNo: [this.userData.ContactNo],\r\n UserTypeId: [this.userData.UserTypeId],\r\n UserGroupId: [this.userData.UserGroupId],\r\n IsSuperUser: [false],\r\n IsMailAlert :[this.userData.IsMailAlert],\r\n IsSMSAlert : [this.userData.IsSMSAlert],\r\n RegulationViolationAlert:[this.userData.RegulationViolationAlert],\r\n MachineStopAlert :[this.userData.MachineStopAlert],\r\n DailyMailAlert: [this.userData.DailyMailAlert],\r\n });\r\n });\r\n\r\n // console.log(res[0].Result[0]);\r\n\r\n \r\n });\r\n this.detectDevice();\r\n }\r\n\r\n detectDevice(){\r\n this.deviceInfo = this.deviceService.getDeviceInfo();\r\n const isMobile = this.deviceService.isMobile();\r\n const isTablet = this.deviceService.isTablet();\r\n const isDesktopDevice = this.deviceService.isDesktop();\r\n // console.log(\"device info:\",this.deviceInfo);\r\n }\r\n\r\n onSubmit() {\r\n const submitData = {\r\n ...this.userForm.value,\r\n UserId: this.userData.UserId,\r\n Device: this.deviceInfo.device,\r\n clientId: AppSettings.CLIENT_ID,\r\n }\r\n // console.log(\"SubmitData:\",submitData);\r\n this.putUserData(submitData);\r\n }\r\n\r\n putUserData(newData){\r\n this.userService.updateUser(newData).subscribe(res => {\r\n // console.log(res);\r\n this.userForm.reset();\r\n this.router.navigate(['/dashboard/user']);\r\n }, error => {\r\n // console.log(error);\r\n })\r\n }\r\n}","
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Edit User

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n User Type\r\n \r\n \r\n {{user.userType}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n User Group (required)\r\n \r\n \r\n {{userGroup.Name}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n Mail Alert (required)\r\n \r\n \r\n {{value.displayName}}\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n SMS Alert (required)\r\n \r\n \r\n {{value.displayName}}\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Daily Report Alert\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Regulation Violation Alert\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Machine Stop Alert\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n Update\r\n \r\n \r\n Cancel\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n ","import { AfterViewInit, ChangeDetectorRef, Component, Input, NgZone, OnDestroy, OnInit } from '@angular/core';\r\nimport * as $ from 'jquery'\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport jspdf from 'jspdf';\r\nimport html2canvas from 'html2canvas';\r\nimport * as d3 from 'd3';\r\n\r\n@Component({\r\n selector: 'app-all-graphs',\r\n templateUrl: './all-graphs.component.html',\r\n styleUrls: ['./all-graphs.component.css']\r\n})\r\nexport class AllGraphsComponent implements OnInit, OnDestroy, AfterViewInit {\r\n\r\n @Input()\r\n CurrentStation: any\r\n\r\n public title_pm10: string;\r\n public title_pm25: string;\r\n public title_temperature: string;\r\n public title_humidity: string;\r\n public title_wind_speed: string;\r\n public title_wind_direction: string;\r\n public title_noise: string;\r\n public title_background_noise: string;\r\n public title_event_noise: string;\r\n public currentPopupGraph = \"none\";\r\n public isLoading: boolean = false;\r\n\r\n public pm10Data: any;\r\n public pm25data: any;\r\n public temperatureData: any;\r\n public humidityData: any;\r\n public windSpeedData: any;\r\n public windDirectionData: any;\r\n public noiseData: any;\r\n public backgroundData: any;\r\n public eventData: any;\r\n public eventGraphData: any;\r\n\r\n\r\n stationSubscription: Subscription;\r\n\r\n\r\n constructor(\r\n private ebamDataService: EbamDataService,\r\n public messageService: MessageService,\r\n private stationService: StationsService\r\n ) {\r\n\r\n this.title_pm10 = \"1-h PM10 (last 24 h)\";\r\n this.title_pm25 = \"1-h PM2.5 (last 24 h)\";\r\n this.title_temperature = \"Temperature (last 24 h)\";\r\n this.title_humidity = \"Humidity (last 24 h)\";\r\n this.title_wind_speed = \"Wind Speed (last 24 h)\";\r\n this.title_wind_direction = \"Wind Direction (last 24 h)\";\r\n this.title_noise = \"Noise Leq,1h\";\r\n this.title_background_noise = \"Vibration Background\";\r\n this.title_event_noise = \"Events Vibration\";\r\n }\r\n ngAfterViewInit(): void {\r\n this.getPast24Data(this.CurrentStation);\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n $('#graphModal').appendTo(\"body\");\r\n }\r\n\r\n ngOnDestroy() {\r\n $('#graphModal').remove();\r\n\r\n }\r\n\r\n\r\n\r\n getPast24Data(selectedStation) {\r\n\r\n // var yesterday = new Date(new Date().getTime() - (24 * 60 * 60 * 1000)).toISOString();\r\n // var today = new Date().toISOString();\r\n // this.ebamDataService.getAllGraphData(4, yesterday, today, true, true, true, true, true, true).subscribe((res: any) => {\r\n // console.log(res)\r\n // });\r\n\r\n if (selectedStation) {\r\n var readingAvailability = this.stationService.getAvailableReadingsForStation(selectedStation);\r\n\r\n if (readingAvailability.Pm10) {\r\n var subscription = this.ebamDataService.getEbamDataPM10(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.pm10Data = res;\r\n });\r\n }\r\n if (readingAvailability.Pm25) {\r\n var subscription = this.ebamDataService.getEbamDataPM25(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.pm25data = res;\r\n });\r\n }\r\n if (readingAvailability.temperature) {\r\n subscription = this.ebamDataService.getEbamDataTemprature(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.temperatureData = res;\r\n });\r\n }\r\n if (readingAvailability.humidity) {\r\n subscription = this.ebamDataService.getEbamDataHumidity(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.humidityData = res;\r\n });\r\n }\r\n if (readingAvailability.windSpeed) {\r\n subscription = this.ebamDataService.getEbamDataWindSpeed(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.windSpeedData = res;\r\n console.log(\"wind speed response\");\r\n console.log(this.windSpeedData);\r\n });\r\n }\r\n if (readingAvailability.windDirection) {\r\n subscription = this.ebamDataService.getEbamDataWindRose(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.windDirectionData = res;\r\n });\r\n }\r\n\r\n if (readingAvailability.noise) {\r\n subscription = this.ebamDataService.getEbamDataNoise(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.noiseData = res;\r\n });\r\n }\r\n if (readingAvailability.background) {\r\n subscription = this.ebamDataService.getEbamDataNoiseBackground(selectedStation.Id, 24).subscribe((res: any) => {\r\n if (res && res.length > 0)\r\n this.backgroundData = res;\r\n });\r\n }\r\n\r\n if (readingAvailability.event) {\r\n subscription = this.ebamDataService.getEbamDataNoiseEvent(selectedStation.Id).subscribe((res: any) => {\r\n\r\n console.log(res);\r\n if (res && res.length > 0)\r\n this.eventData = res;\r\n });\r\n }\r\n }\r\n\r\n }\r\n\r\n\r\n openGraphPopUp(graphType) {\r\n this.currentPopupGraph = graphType;\r\n }\r\n\r\n onEventSelected(id) {\r\n this.isLoading = true;\r\n this.ebamDataService.getEventGraphData(id).subscribe((res: any) => {\r\n if (res && res.length > 0) {\r\n this.eventGraphData = res;\r\n this.currentPopupGraph = \"event-graph\";\r\n this.isLoading = 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
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \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 { Component, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\n\r\n@Component({\r\n selector: 'app-stations-navbar',\r\n templateUrl: './stations-navbar.component.html',\r\n styleUrls: ['./stations-navbar.component.css']\r\n})\r\nexport class StationsNavbarComponent implements OnInit {\r\n public client_stations: any\r\n public isVisible: boolean\r\n subscription: Subscription;\r\n\r\n\r\n\r\n constructor(private stationService: StationsService,\r\n private messageService: MessageService) {\r\n this.isVisible = true;\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription)\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n

All Stations

\r\n
\r\n
\r\n
\r\n
\r\n \"user\"\r\n User\r\n
\r\n
\r\n \r\n
\r\n \r\n
\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 class AppSettings {\r\n //live main\r\n public static API_END_POINT = 'https://api.gacscloud.com/api/';\r\n\r\n //live test\r\n // public static API_END_POINT = 'http://20.196.1.204:81/api/';\r\n\r\n // test\r\n //public static API_END_POINT = 'https://amaalaapi.gacscloud.com/api/';\r\n \r\n //local\r\n //public static API_END_POINT = 'http://localhost:53947/api/';\r\n \r\n //local\r\n //public static API_END_POINT = 'http://localhost:53947/api/';\r\n \r\n\r\n public static REFRESH_FREQUENCY = 10000;\r\n\r\n public static CLIENT_ID=parseInt(localStorage.getItem('ClientId'));\r\n public static CLIENT_NAME=localStorage.getItem('ClientName');\r\n public static CLIENT_URL=\"keo.gacscloud.com\";\r\n\r\n // public static CLIENT_ID = 1;\r\n // public static CLIENT_NAME = \"Al Diriyah\";\r\n // public static CLIENT_URL=\"diriyah.gacscloud.com\";\r\n}","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { Subscription } from 'rxjs';\r\nimport { Sidebar } from 'src/app/common/sidebarSelect';\r\nimport { AuthService } from 'src/app/services/auth-service/auth.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-stations-sidebar',\r\n templateUrl: './stations-sidebar.component.html',\r\n styleUrls: ['./stations-sidebar.component.css'],\r\n})\r\nexport class StationsSidebarComponent implements OnInit {\r\n public client_stations: any;\r\n public isVisible: boolean;\r\n subscription: Subscription;\r\n isShown: boolean = true;\r\n user;\r\n stationsAllowed = [];\r\n isAdmin: boolean = false;\r\n\r\n constructor(\r\n private stationService: StationsService,\r\n private messageService: MessageService,\r\n private router: Router,\r\n private authService: AuthService\r\n ) {\r\n this.isVisible = true;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.user = JSON.parse(localStorage.getItem(\"CurrentUser\"));\r\n if(this.user.UserTypeId != 2){\r\n this.isAdmin = true;\r\n }\r\n // console.log(\"User now\", this.user)\r\n this.getAllowedStations();\r\n this.bindStationSidebar(AppSettings.CLIENT_ID);\r\n this.getLastSidebarvisibilityOnReload();\r\n this.doSidebarSubscription();\r\n \r\n }\r\n\r\n getAllowedStations(){\r\n this.stationsAllowed =this.user.UserGroupPermission[0].StationsPermission.filter( permission => {\r\n if(permission.PermissionStatus){\r\n return permission.StationId;\r\n }\r\n }).map(station => station.StationId);\r\n //console.log(\"allowedStations\",this.stationsAllowed);\r\n }\r\n\r\n\r\n getLastSidebarvisibilityOnReload() {\r\n this.isVisible = this.messageService.getLastSidebarVisibility();\r\n }\r\n\r\n bindStationSidebar(Id) {\r\n this.stationService.getStations(Id).subscribe((stations: any) => {\r\n this.client_stations = stations;\r\n //console.log(\"Stations:\", this.client_stations);\r\n this.filterStations();\r\n });\r\n }\r\n\r\n filterStations(){\r\n this.client_stations = this.client_stations.filter(station => {\r\n return this.stationsAllowed.includes(station.Id);\r\n })\r\n\r\n //console.log(\"Client stations\", this.client_stations);\r\n }\r\n\r\n alertStationChange(station) {\r\n this.messageService.sendStationChange(station, () => {\r\n this.isVisible = false;\r\n this.messageService.setStationSideMenuVisibility(false);\r\n this.messageService.changeSidebar(Sidebar.station);\r\n });\r\n }\r\n\r\n goToAdmin() {\r\n this.messageService.changeSidebar(Sidebar.admin);\r\n }\r\n\r\n doSidebarSubscription() {\r\n this.subscription = this.messageService\r\n .getStationSideMenuVisibility()\r\n .subscribe((isVisible) => {\r\n this.isVisible = isVisible;\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription) this.subscription.unsubscribe();\r\n }\r\n\r\n gotodailyReport() {\r\n this.isShown = false;\r\n this.router.navigate(['dashboards/daily-report']);\r\n }\r\n\r\n gotosummaryAll() {\r\n this.isShown = true;\r\n this.router.navigate(['dashboards/summary-all']);\r\n }\r\n\r\n logout(){\r\n this.authService.logout();\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n Logout\r\n
\r\n
\r\n \r\n
\r\n
","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, UrlTree, Router } from '@angular/router';\r\nimport { Observable } from 'rxjs';\r\nimport { AuthService } from '../auth-service/auth.service';\r\nimport { map } from \"rxjs/operators\";\r\n\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n constructor(private authService: AuthService, private router: Router){}\r\n canActivate(\r\n route: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot): Observable | Promise | boolean | UrlTree {\r\n return this.authService.user.pipe(map(user => {\r\n const isLoggedIn = !!user;\r\n // console.log(\"entered auth guard\")\r\n // console.log(isLoggedIn);\r\n if(isLoggedIn){\r\n return true;\r\n }\r\n return this.router.parseUrl(\"/\");\r\n }))\r\n }\r\n \r\n}\r\n","import { BrowserModule } from '@angular/platform-browser';\r\nimport { NgModule } from '@angular/core';\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { AgmCoreModule } from '@agm/core';\r\n\r\nimport { AppRoutingModule } from './app-routing.module';\r\nimport { AppComponent } from './app.component';\r\nimport { SummaryComponent } from './components/dashboard/summary.component';\r\nimport { SidebarComponent } from './components/sidebar/sidebar.component';\r\nimport { NavbarComponent } from './components/navbar/navbar.component';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { WindDirectionComponent } from './components/dashboard/charts/wind-direction/wind-direction.component';\r\nimport { GoogleChartsModule } from 'angular-google-charts';\r\nimport { StationsSidebarComponent } from './components/client-stations/stations-sidebar/stations-sidebar.component';\r\nimport { StationsNavbarComponent } from './components/client-stations/stations-navbar/stations-navbar.component';\r\nimport { StationsAllSummaryComponent } from './components/client-stations/stations-all-summary/stations-all-summary.component';\r\nimport { SidebarMergedComponent } from './components/sidebar-merged/sidebar-merged.component';\r\nimport { NavbarMergedComponent } from './components/navbar-merged/navbar-merged.component';\r\nimport { ReportFiltersComponent } from './components/report/report-filters/report-filters.component';\r\nimport { AllGraphsComponent } from './components/dashboard/all-graphs/all-graphs.component';\r\nimport { BarchartComponent } from './components/dashboard/charts/barchart/barchart.component';\r\nimport { LinechartComponent } from './components/dashboard/charts/linechart/linechart.component';\r\nimport { BasicReportComponent } from './components/report/basic-report/basic-report.component';\r\nimport { RegulationReportComponent } from './components/report/regulation-report/regulation-report.component';\r\nimport { CsvDataService } from './services/report/csv-data.service';\r\nimport { DailyReportComponent } from './components/report/daily-report/daily-report.component';\r\nimport { DownloadPDFService } from './services/report/download-pdf.service';\r\nimport { BrowserAnimationsModule } from '@angular/platform-browser/animations';\r\nimport { MaterialModule } from './material/material.module';\r\nimport { UserGroupComponent } from './components/user-group/user-group.component';\r\nimport { CreateUserGroupComponent } from './components/user-group/create-user-group/create-user-group.component';\r\nimport { EditUserGroupComponent } from './components/user-group/edit-user-group/edit-user-group.component';\r\nimport { UserComponent } from './components/user/user.component';\r\nimport { CreateUserComponent } from './components/user/create-user/create-user.component';\r\nimport { EditUserComponent } from './components/user/edit-user/edit-user.component';\r\nimport { AdminSidebarComponent } from './components/admin-sidebar/admin-sidebar.component';\r\nimport { AdminNavbarComponent } from './components/admin-navbar/admin-navbar.component';\r\nimport { HomePageComponent } from './components/home-page/home-page.component';\r\nimport { LandingPageComponent } from './components/landing-page/landing-page.component';\r\nimport { LoadingSpinnerComponent } from './common/loading-spinner/loading-spinner.component';\r\nimport { LoginModalComponent } from './components/home-page/login-modal/login-modal.component';\r\nimport { ContactModalComponent } from './components/home-page/contact-modal/contact-modal.component';\r\nimport { PopupModalComponent } from './components/user/popup-modal/popup-modal.component';\r\nimport { MultiLineChartComponent } from './components/dashboard/charts/multi-line-chart/multi-line-chart.component';\r\nimport { ColorCodesComponent } from './components/color-codes/color-codes.component';\r\nimport { ForgotPasswordComponent } from './components/home-page/forgot-password/forgot-password.component';\r\nimport { OtpModalComponent } from './components/home-page/otp-modal/otp-modal.component';\r\nimport { ResetPasswordComponent } from './components/home-page/reset-password/reset-password.component';\r\nimport { VibrationChartComponent } from './components/dashboard/charts/vibration-chart/vibration-chart.component';\r\nimport { EventGraphComponent } from './components/dashboard/event-graph/event-graph.component';\r\nimport { SelectClientComponent } from './components/select-client/select-client.component';\r\nimport { AmaalaDashboardComponent } from './components/amaala-dashboard/amaala-dashboard.component';\r\nimport { GaugeComponent } from './components/amaala-dashboard/gauge/gauge.component';\r\nimport { StationGraphsComponent } from './components/amaala-dashboard/station-graphs/station-graphs.component';\r\nimport { BasicReportPrintComponent } from './components/report/basic-report-print/basic-report-print.component';\nimport { ScatterComponent } from './components/dashboard/charts/scatter/scatter.component';\nimport { WindDirectionReportComponent } from './components/report/wind-direction-report/wind-direction-report.component';\r\n@NgModule({\r\n declarations: [\r\n AppComponent,\r\n SummaryComponent,\r\n SidebarComponent,\r\n NavbarComponent,\r\n WindDirectionComponent,\r\n StationsSidebarComponent,\r\n StationsNavbarComponent,\r\n StationsAllSummaryComponent,\r\n SidebarMergedComponent,\r\n NavbarMergedComponent,\r\n ReportFiltersComponent,\r\n AllGraphsComponent,\r\n BarchartComponent,\r\n LinechartComponent,\r\n BasicReportComponent,\r\n RegulationReportComponent,\r\n DailyReportComponent,\r\n UserGroupComponent,\r\n CreateUserGroupComponent,\r\n EditUserGroupComponent,\r\n UserComponent,\r\n CreateUserComponent,\r\n EditUserComponent,\r\n AdminSidebarComponent,\r\n AdminNavbarComponent,\r\n HomePageComponent,\r\n LandingPageComponent,\r\n LoadingSpinnerComponent,\r\n LoginModalComponent,\r\n ContactModalComponent,\r\n PopupModalComponent,\r\n MultiLineChartComponent,\r\n ColorCodesComponent,\r\n ForgotPasswordComponent,\r\n OtpModalComponent,\r\n ResetPasswordComponent,\r\n VibrationChartComponent,\r\n EventGraphComponent,\r\n SelectClientComponent,\r\n AmaalaDashboardComponent,\r\n GaugeComponent,\r\n StationGraphsComponent,\r\n BasicReportPrintComponent,\r\n ScatterComponent,\r\n WindDirectionReportComponent,\r\n \r\n ],\r\n entryComponents: [LoginModalComponent, ContactModalComponent],\r\n imports: [\r\n GoogleChartsModule,\r\n BrowserModule,\r\n AppRoutingModule,\r\n HttpClientModule,\r\n FormsModule,\r\n ReactiveFormsModule,\r\n AgmCoreModule.forRoot({\r\n apiKey: 'AIzaSyDS4YjukLa0Fk-dAMACetlqgjKdTHsRZGU',\r\n }),\r\n BrowserAnimationsModule,\r\n MaterialModule,\r\n ],\r\n providers: [CsvDataService, DownloadPDFService],\r\n bootstrap: [AppComponent],\r\n})\r\nexport class AppModule {}\r\n","\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n
\r\n \"banner\"\r\n \"banner\"\r\n

{{currentStation.Name}} - Report

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

Report

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

{{reportTitle}}

\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n \r\n\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n
{{ graphData.Date | date: 'MMM d, y' }}
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n\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 { Component, OnInit } from '@angular/core';\r\nimport { FormGroup, FormControl, FormBuilder, Validators } from '@angular/forms';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { RegulationService } from 'src/app/services/regulation/regulation.service';\r\nimport { dateAndTime } from 'src/app/common/dateAndTime'\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { Route } from '@angular/compiler/src/core';\r\nimport { CsvDataService } from 'src/app/services/report/csv-data.service';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\nimport { Title } from '@angular/platform-browser';\r\nimport { timer } from 'rxjs';\r\n// import { appendFileSync } from 'fs';\r\n\r\n\r\n@Component({\r\n selector: 'app-report-filters',\r\n templateUrl: './report-filters.component.html',\r\n styleUrls: ['./report-filters.component.css']\r\n})\r\nexport class ReportFiltersComponent implements OnInit {\r\n\r\n public regulations: any;\r\n public currentStation: any;\r\n public allRegulations: any;\r\n public datetime: dateAndTime\r\n\r\n public dateStatus: boolean = false;\r\n public dateFromAllowed: boolean = true;\r\n public dateToAllowed: boolean = false;\r\n\r\n public chkPM10: boolean = true\r\n public chkPM2_5: boolean = true\r\n public chkTemperature: boolean = true;\r\n public chkHumidity: boolean = true;\r\n public chkWindSpeed: boolean = true;\r\n public chkWindDirection: boolean = true;\r\n // public chkWindDirection: boolean = false;\r\n public chkNoise: boolean = true;\r\n public chkVibrationBackground:boolean = true;\r\n public chkVibrationEvent: boolean = true;\r\n public chkHeatIndex: boolean = true;\r\n public chkHumidity2m: boolean = true;\r\n public chkSolarRadiation:boolean = true;\r\n public chkTemperature2m:boolean = true;\r\n public chkWBGT:boolean = true;\r\n public chkWindSpeed2m:boolean = true;\r\n public chkangleAndDirections2m:boolean = true;\r\n public chkbarometricPressure:boolean = true;\r\n public chkduePointTemperature:boolean = true;\r\n public chksoilTemperature:boolean = true;\r\n public chkwetBulbTemperature:boolean = true;\r\n public chkSolarRadiationDHI:boolean = true;\r\n public chkVWCContent: boolean = true;\r\n public chkEConductivity: boolean = true;\r\n public chkCloudCover: boolean = true;\r\n public chkVisibility:boolean = true;\r\n public chkRain:boolean = true;\r\n public chkTemperature2m10m:boolean = true;\r\n public chkHumidity2m10m:boolean = true;\r\n public chkWindSpeed2m10m:boolean = true;\r\n public chkWindSpeed10m:boolean = true;\r\n public chkWindDirection2m:boolean = true;\r\n public chkWindDirection10m:boolean = true;\r\n\r\n // public chkSelect:boolean = true;\r\n public chkUnSelect:boolean = false;\r\n \r\n \r\n public MinuteVisble: boolean = false;\r\n public HourVisble: boolean = false;\r\n public VisibilityVisible:boolean = false;\r\n public downloadBtn:boolean = false;\r\n\r\n public bannerVisible:boolean = true;\r\n public stationDrpVisible:boolean = false;\r\n public allStations : any;\r\n\r\n public dateFrom: Date = new Date();\r\n public dateTo: Date = new Date();\r\n public dateStart: dateAndTime\r\n public dateEnd: dateAndTime\r\n public period: String = \"\";\r\n public graphsRequired: any;\r\n public graphData: any;\r\n public ReportByMintue: any;\r\n public ReportByMintuecelometer:any;\r\n public ReportByHour: any;\r\n public VibrationBgReportByMinute: any;\r\n public VibrationBgReportByHour: any;\r\n public ReportByMintueVisibility:any;\r\n\r\n public menuItemVisibility: readingAvailability;\r\n\r\n\r\n public reportTitle: string;\r\n\r\n public TableTemperature: any;\r\n public TablePM10: any;\r\n public TablePM2_5: any;\r\n public TableHumidity: any;\r\n public TableWindSpeed: any;\r\n public TableNoise: any;\r\n public TableVibrationBackground: any;\r\n public TableVibrationEvent: any;\r\n public TableWindDirection: any;\r\n public TableheatIndex:any;\r\n public TableHumidity10m:any;\r\n public TableHumidity2m:any;\r\n public TablesolarRadiation:any;\r\n public Table_2m10mTemperature:any;\r\n public Table_2m10mwindDirection:any;\r\n public Table_2m10mWindSpeed:any;\r\n\r\n public TableWBGT:any;\r\n public TablebarometricPressure:any;\r\n public TableduePointTemperature:any;\r\n public TablesoilTemperature:any;\r\n public TablesolarRadiationDHI:any;\r\n public TablewetBulbTemperature:any;\r\n public TableVWC:any;\r\n public TableEC:any;\r\n public FifthCloudEC:any;\r\n public FourthCloudEC:any;\r\n public ThirdCloudEC:any;\r\n public SecondCloudEC:any;\r\n public VisibleCloudEC:any;\r\n public LowestCloudEC:any;\r\n public RainTbl:any;\r\n\r\n public ClientId:any;\r\n public Print:any =false;\r\n\r\n public startDtprint:any;\r\n public EndDtprint:any;\r\n public StationName:any;\r\n\r\n public isLoading:boolean = false;\r\n \r\n \r\n public DailyWindDirectionReport:boolean = false;\r\n public WindDirectiongraphData: any;\r\n public reportTitleForWindDrn: string;\r\n\r\n\r\n delay(ms: number): Promise {\r\n return new Promise(resolve => setTimeout(resolve, ms));\r\n }\r\n\r\n constructor(\r\n private regulationService: RegulationService,\r\n private stationsService: StationsService,\r\n private messageService: MessageService,\r\n private ebamDataService: EbamDataService,\r\n private router: Router,\r\n private titleService:Title,\r\n ) {\r\n this.init();\r\n this.getCurrentstation();\r\n this.fetchRegulations();\r\n }\r\n ngOnInit(): void { \r\n var station = this.messageService.getLastStation(); \r\n console.log(\"last station for drp\",station) \r\n this.StationName = station.Name; \r\n console.log(\"last station for drp\",this.StationName) \r\n this.menuItemVisibility = this.stationsService.getAvailableReadingsForStation(station); \r\n console.log(\"menu visibility\",this.menuItemVisibility)\r\n this.ClientId=+AppSettings.CLIENT_ID;\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n this.bannerVisible=false;\r\n this.stationDrpVisible=true;\r\n this.stationsService.getStations(AppSettings.CLIENT_ID).subscribe((stationsDt: any) => { \r\n this.allStations = stationsDt;\r\n console.log(\"all stations\",this.allStations);\r\n \r\n });\r\n }\r\n }\r\n\r\n fetchRegulations() {\r\n this.regulationService.getAllRegulations().subscribe(regulations => {\r\n this.allRegulations = regulations;\r\n });\r\n }\r\n getCurrentstation() {\r\n this.currentStation = this.messageService.getLastStation();\r\n console.log(\"getcurrentstationmethord\",this.currentStation);\r\n }\r\n\r\n init() {\r\n this.period = \"daily\";\r\n this.datetime = new dateAndTime();\r\n this.graphsRequired = [\r\n true, true,\r\n true, true,\r\n true, true,\r\n true, true,\r\n true, \r\n true, true,\r\n true, true,\r\n true, true,\r\n true, true,\r\n true, true,\r\n true,true,\r\n true,true,\r\n true,true,\r\n true,true,\r\n true,true,\r\n true,true,\r\n true,true\r\n ]\r\n }\r\n\r\n onPeriodChange(period) {\r\n this.period = period;\r\n this.dateFromAllowed = false;\r\n\r\n if (period == 'daily') {\r\n this.dateFromAllowed = true;\r\n this.dateFrom = this.datetime.getToday();\r\n this.dateTo = this.dateFrom\r\n }\r\n else if (this.period == 'today') {\r\n this.dateTo = this.datetime.getToday();\r\n this.dateFrom = this.datetime.getToday();\r\n }\r\n else if (this.period == 'yesterday') {\r\n this.dateTo = this.datetime.getYesterday();\r\n this.dateFrom = this.datetime.getYesterday();\r\n }\r\n else if (this.period == 'thisWeek') {\r\n this.dateFrom = this.datetime.getThisWeekStart();\r\n this.dateTo = this.datetime.getThisWeekEnd();\r\n }\r\n else if (this.period == 'lastWeek') {\r\n this.dateFrom = this.datetime.getLastWeekStart();\r\n this.dateTo = this.datetime.getLastWeekEnd();\r\n }\r\n else if (this.period == 'thisMonth') {\r\n this.dateFrom = this.datetime.getThisMonthStart();\r\n this.dateTo = this.datetime.getThisMonthEnd();;\r\n }\r\n else if (this.period == 'lastMonth') {\r\n this.dateFrom = this.datetime.getLastMonthStart();\r\n this.dateTo = this.datetime.getLastMonthEnd();\r\n }\r\n else if (this.period == 'thisYear') {\r\n this.dateFrom = this.datetime.getThisYearStart();\r\n this.dateTo = this.datetime.getThisYearEnd();\r\n }\r\n else if (this.period == 'lastYear') {\r\n this.dateFrom = this.datetime.getLastYearStart()\r\n this.dateTo = this.datetime.getLastYearEnd()\r\n }\r\n else if (this.period == 'Week') {\r\n this.dateFromAllowed = true;\r\n this.dateFrom = this.datetime.getThisWeekStart();\r\n this.dateTo = this.datetime.getThisWeekEnd();\r\n }\r\n else if (this.period == 'Month') {\r\n this.dateFromAllowed = true;\r\n this.dateFrom = this.datetime.getThisMonthStart();\r\n this.dateTo = this.datetime.getThisMonthEnd();\r\n\r\n }\r\n else if (this.period == 'Year') {\r\n this.dateFromAllowed = true;\r\n this.dateFrom = this.datetime.getThisYearStart();\r\n this.dateTo = this.datetime.getThisYearEnd();\r\n }\r\n }\r\n OnUnSelectChanged()\r\n { \r\n\r\n this.chkPM10=false,\r\n this.chkTemperature=false,\r\n this.chkHumidity=false,\r\n this.chkWindSpeed=false,\r\n this.chkWindDirection=false,\r\n this.chkPM2_5=false,\r\n this.chkNoise=false,\r\n this.chkVibrationBackground=false,\r\n this.chkVibrationEvent=false,\r\n this.chkSolarRadiation=false,\r\n this.chkWBGT=false,\r\n this.chkbarometricPressure=false,\r\n this.chkHeatIndex=false,\r\n this.chkwetBulbTemperature=false,\r\n this.chkduePointTemperature=false,\r\n this.chksoilTemperature=false,\r\n this.chkangleAndDirections2m=false,\r\n this.chkangleAndDirections2m=false,\r\n this.chkHumidity2m=false,\r\n this.chkTemperature2m=false,\r\n this.chkWindSpeed2m=false,\r\n this.chkSolarRadiationDHI=false,\r\n this.chkVWCContent=false,\r\n this.chkEConductivity=false,\r\n this.chkCloudCover=false,\r\n this.chkVisibility=false,\r\n this.chkRain=false,\r\n this.chkTemperature2m10m=false,\r\n this.chkHumidity2m10m=false,\r\n this.chkWindSpeed2m10m=false,\r\n this.chkWindSpeed10m=false,\r\n this.chkWindDirection2m=false,\r\n this.chkWindDirection10m=false,\r\n this.chkUnSelect=false\r\n \r\n }\r\n onSelectClick()\r\n {\r\n\r\n\r\n var stationDat = this.messageService.getLastStation();\r\n console.log(\"stationdattttt\",stationDat);\r\n this.menuItemVisibility = this.stationsService.getAvailableReadingsForStation(stationDat); \r\n this.chkPM10=this.menuItemVisibility.Pm10,\r\n this.chkTemperature=this.menuItemVisibility.temperature,\r\n this.chkHumidity=this.menuItemVisibility.humidity,\r\n this.chkWindSpeed=this.menuItemVisibility.windSpeed,\r\n this.chkWindDirection=this.menuItemVisibility.windDirection,\r\n this.chkPM2_5=this.menuItemVisibility.Pm25,\r\n this.chkNoise=this.menuItemVisibility.noise,\r\n this.chkVibrationBackground=this.menuItemVisibility.background,\r\n this.chkVibrationEvent=this.menuItemVisibility.event,\r\n this.chkSolarRadiation=this.menuItemVisibility.SolarRadiation,\r\n this.chkWBGT=this.menuItemVisibility.WBGT,\r\n this.chkbarometricPressure=this.menuItemVisibility.barometricPressure,\r\n this.chkHeatIndex=this.menuItemVisibility.heatIndex,\r\n this.chkwetBulbTemperature=this.menuItemVisibility.wetBulbTemperature,\r\n this.chkduePointTemperature=this.menuItemVisibility.duePointTemperature,\r\n this.chksoilTemperature=this.menuItemVisibility.soilTemperature,\r\n this.chkangleAndDirections2m=this.menuItemVisibility.angleAndDirections2m,\r\n this.chkangleAndDirections2m=this.menuItemVisibility.angleAndDirections2m,\r\n this.chkHumidity2m=this.menuItemVisibility.Humidity2m,\r\n this.chkTemperature2m=this.menuItemVisibility.Temperature2m,\r\n this.chkWindSpeed2m=this.menuItemVisibility.WindSpeed2m,\r\n this.chkSolarRadiationDHI=this.menuItemVisibility.SolarRadiationDHI,\r\n this.chkVWCContent=this.menuItemVisibility.VWConductivity,\r\n this.chkEConductivity=this.menuItemVisibility.ElectricalC,\r\n this.chkCloudCover=this.menuItemVisibility.Cloud_Cover,\r\n this.chkVisibility=this.menuItemVisibility.Visibility,\r\n this.chkRain=this.menuItemVisibility.Rain,\r\n this.chkTemperature2m10m=this.menuItemVisibility.Temperature2m10m,\r\n this.chkHumidity2m10m=this.menuItemVisibility.Humidity2m10m,\r\n this.chkWindDirection2m=this.menuItemVisibility.WindDirection2m,\r\n this.chkWindDirection10m=this.menuItemVisibility.WindDirection10m,\r\n this.chkWindSpeed10m=this.menuItemVisibility.WindSpeed10m,\r\n this.chkWindSpeed2m10m=this.menuItemVisibility.WindSpeed2m10m\r\n\r\n\r\n // Added 01-09-2025\r\n this.chkWindDirection=true;\r\n\r\n this.graphsRequired = [\r\n this.chkPM10,\r\n this.chkTemperature,\r\n this.chkHumidity,\r\n this.chkWindSpeed,\r\n this.chkWindDirection,\r\n this.chkPM2_5,\r\n this.chkNoise,\r\n this.chkVibrationBackground,\r\n this.chkVibrationEvent,\r\n this.chkSolarRadiation,\r\n this.chkWBGT,\r\n this.chkbarometricPressure,\r\n this.chkHeatIndex,\r\n this.chkwetBulbTemperature,\r\n this.chkduePointTemperature,\r\n this.chksoilTemperature,\r\n this.chkangleAndDirections2m,\r\n this.chkangleAndDirections2m,\r\n this.chkHumidity2m,\r\n this.chkTemperature2m,\r\n this.chkWindSpeed2m,\r\n this.chkSolarRadiationDHI,\r\n this.chkVWCContent,\r\n this.chkEConductivity,\r\n this.chkCloudCover,\r\n this.chkVisibility,\r\n this.chkRain,\r\n this.chkTemperature2m10m,\r\n this.chkHumidity2m10m,\r\n this.chkWindSpeed2m10m,\r\n this.chkWindSpeed10m,\r\n this.chkWindDirection2m,\r\n this.chkWindDirection10m\r\n \r\n \r\n ]\r\n }\r\n goBackFn()\r\n {\r\n this.router.navigateByUrl('/Amaala-dashboard');\r\n }\r\n onStationChange(StationValue)\r\n {\r\n this.reportTitle=\"\";\r\n this.stationsService.getStation(+StationValue).subscribe((stationDt: any) => { \r\n var stationData = stationDt;\r\n console.log(\"station change data\",stationData);\r\n localStorage.setItem('lastStation', JSON.stringify(stationData[0])); \r\n localStorage.setItem('StationId',StationValue);\r\n this.getCurrentstation();\r\n var stationDat = this.messageService.getLastStation();\r\n this.OnUnSelectChanged(); \r\n this.onSelectClick();\r\n this.StationName = stationDat.Name;\r\n this.downloadBtn = false; \r\n this.menuItemVisibility = this.stationsService.getAvailableReadingsForStation(stationDat);\r\n console.log(\"ne menu visibility\",this.menuItemVisibility);\r\n });\r\n }\r\n\r\n OnChkFilterChanged(graphType) {\r\n //if none selected select PM10\r\n if (!this.chkPM10\r\n && !this.chkPM2_5\r\n && !this.chkTemperature\r\n && !this.chkHumidity\r\n && !this.chkWindSpeed\r\n && !this.chkWindDirection\r\n && !this.chkNoise\r\n && !this.chkVibrationBackground\r\n && !this.chkVibrationEvent\r\n && !this.chkHeatIndex\r\n && !this.chkHumidity2m\r\n && !this.chkSolarRadiation\r\n && !this.chkTemperature2m\r\n && !this.chkWBGT\r\n && !this.chkWindSpeed2m\r\n && !this.chkangleAndDirections2m\r\n && !this.chkbarometricPressure\r\n && !this.chkduePointTemperature\r\n && !this.chksoilTemperature\r\n && !this.chkwetBulbTemperature\r\n && !this.chkSolarRadiationDHI\r\n && !this.chkVWCContent\r\n && !this.chkEConductivity\r\n && !this.chkCloudCover\r\n && !this.chkVisibility\r\n && !this.chkRain\r\n && !this.chkTemperature2m10m\r\n && !this.chkHumidity2m10m\r\n && !this.chkWindSpeed2m10m\r\n && !this.chkWindSpeed10m\r\n && !this.chkWindDirection2m\r\n && !this.chkWindDirection10m) {\r\n this.chkPM10 = true;\r\n }\r\n this.graphsRequired = [\r\n this.chkPM10,\r\n this.chkTemperature,\r\n this.chkHumidity,\r\n this.chkWindSpeed,\r\n this.chkWindDirection,\r\n this.chkPM2_5,\r\n this.chkNoise,\r\n this.chkVibrationBackground,\r\n this.chkVibrationEvent,\r\n this.chkSolarRadiation,\r\n this.chkWBGT,\r\n this.chkbarometricPressure,\r\n this.chkHeatIndex,\r\n this.chkwetBulbTemperature,\r\n this.chkduePointTemperature,\r\n this.chksoilTemperature,\r\n this.chkangleAndDirections2m,\r\n this.chkangleAndDirections2m,\r\n this.chkHumidity2m,\r\n this.chkTemperature2m,\r\n this.chkWindSpeed2m,\r\n this.chkSolarRadiationDHI,\r\n this.chkVWCContent,\r\n this.chkEConductivity,\r\n this.chkCloudCover,\r\n this.chkVisibility,\r\n this.chkRain,\r\n this.chkTemperature2m10m,\r\n this.chkHumidity2m10m,\r\n this.chkWindSpeed2m10m,\r\n this.chkWindSpeed10m,\r\n this.chkWindDirection2m,\r\n this.chkWindDirection10m\r\n \r\n \r\n ]\r\n console.log(\"graph required\",this.graphsRequired)\r\n\r\n }\r\n\r\n \r\n\r\n startDateChange(event) {\r\n var date = event.target.value;\r\n this.dateFrom = date;\r\n if (this.period == 'daily') {\r\n this.dateTo = this.dateFrom;\r\n }\r\n else if (this.period == 'Month') {\r\n this.dateFrom = this.datetime.getMonthFirstDay(this.dateFrom);\r\n this.dateTo = this.datetime.getMonthLastDay(this.dateFrom);\r\n // event.target.value=\"2021-01-01\";\r\n //this.dateFrom=new Date(\"2021-01-01\");\r\n console.log(this.dateFrom);\r\n\r\n }\r\n else if (this.period == 'Year') {\r\n this.dateFrom = this.datetime.getYearFirstDay(this.dateFrom);\r\n this.dateTo = this.datetime.getYearLastDay(this.dateFrom);\r\n }\r\n else if (this.period == 'Week') {\r\n this.dateTo = this.datetime.getWeeklyAddDay(this.dateFrom);\r\n }\r\n //event.preventDefault();\r\n\r\n }\r\n\r\n ToDateChange(todate: Date) {\r\n this.dateTo = todate;\r\n }\r\n \r\n downloadBasicReport()\r\n { \r\n var openedWindow\r\n console.log(\"stationtestlink\",this.currentStation.Id)\r\n openedWindow= window.open(\"https://gacscloud.com/basic-report-print\"+\"?StartDate=\"+this.startDtprint+\"&EndDate=\"+this.EndDtprint+\"&Period=\"+this.period+\"&StationName=\"+this.StationName+\"&graphsRequired=\"+this.graphsRequired+\"&menuItemVisibility=\"+JSON.stringify(this.menuItemVisibility)+\"&stationId=\"+this.currentStation.Id,\"_blank\");\r\n timer(50000).subscribe(x => {\r\n openedWindow=openedWindow.close();\r\n })\r\n }\r\n generateBasicReport() {\r\n console.log(\"stationtestid\",this.currentStation.Id)\r\n \r\n this.isLoading = true;\r\n this.MinuteVisble = false;\r\n this.HourVisble = false;\r\n this.VisibilityVisible = false;\r\n if(AppSettings.CLIENT_ID==3 && this.chkVisibility)\r\n {\r\n this.VisibilityVisible = true;\r\n }\r\n else{\r\n this.VisibilityVisible = false;\r\n }\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n this.downloadBtn = true; \r\n }\r\n else{\r\n this.downloadBtn = false;\r\n }\r\n var start = new Date(this.dateFrom).toDateString();\r\n var end = new Date(this.dateTo).toDateString();\r\n var reporttitle = \"\"\r\n // if(AppSettings.CLIENT_ID==3)\r\n // {\r\n // this.titleService.setTitle(this.currentStation.Name + start +\"_\"+end);\r\n // }\r\n\r\n /*If same day time must be given */\r\n if (start == end) {\r\n console.log(\"beforestartdate\",start);\r\n console.log(\"beforeenddate\",end);\r\n start = start + \" 00:00:00\"\r\n end = end + \" 23:59:59\"\r\n // start = new Date(start).toISOString();\r\n // end = new Date(end).toISOString();\r\n start = new Date(start).toDateString();\r\n end = new Date(end).toDateString();\r\n console.log(\"startdate\",start);\r\n console.log(\"enddate\",end);\r\n reporttitle = \"Report for - \" + new Date(start).toLocaleDateString('en-GB')\r\n }\r\n else {\r\n // start = new Date(start).toISOString();\r\n // end = new Date(end).toISOString();\r\n \r\n start = new Date(start).toDateString();\r\n end = new Date(end).toDateString();\r\n console.log(\"startdate\",start);\r\n console.log(\"enddate\",end);\r\n reporttitle = \"Report for the period of \"\r\n + new Date(start).toLocaleDateString('en-GB')\r\n + \" - \"\r\n + new Date(end).toLocaleDateString('en-GB')\r\n\r\n }\r\n this.startDtprint=start;\r\n this.EndDtprint=end;\r\n var Days = this.FindDiffers(this.dateFrom, this.dateTo);\r\n if (Days <= 31) {\r\n // if(this.chkCloudCover)\r\n // {\r\n // this.ebamDataService.getBasicReportMinutecelometer(this.currentStation.Id, start, end).subscribe((res: any) => {\r\n // this.ReportByMintuecelometer = res;\r\n // console.log(\"celometer report\",this.ReportByMintuecelometer);\r\n // });\r\n // }\r\n if(this.chkVisibility)\r\n {\r\n this.ebamDataService.getBasicReportfiveminnVisibility(this.currentStation.Id, start, end).subscribe((res: any) => {\r\n this.ReportByMintueVisibility = res;\r\n console.log(\"celometer report\",this.ReportByMintueVisibility);\r\n });\r\n }\r\n \r\n // this.ebamDataService.getBasicReportMinute(this.currentStation.Id, start, end).subscribe((res: any) => { \r\n // this.ReportByMintue = res;\r\n // console.log(\"minutebasicdata\",this.ReportByMintue);\r\n\r\n // this.ReportByMintue.forEach(element => {\r\n // if(!this.chkTemperature2m)\r\n // {\r\n // if(element['Ambient_temperature_2m'])\r\n // {\r\n // delete element['Ambient_temperature_2m'];\r\n // } \r\n // if(element['Ambient_temperature_10m'])\r\n // {\r\n // delete element['Ambient_temperature_10m'];\r\n // } \r\n // } \r\n // if(this.chkTemperature2m)\r\n // {\r\n // if(element['Ambient_temperature_10m'])\r\n // {\r\n // delete element['Ambient_temperature_10m'];\r\n // } \r\n // }\r\n // if(!this.chkTemperature2m10m)\r\n // {\r\n // if(element['Temperature_2Meter'])\r\n // {\r\n // delete element['Temperature_2Meter'];\r\n // } \r\n // if(element['Temperature_10Meter'])\r\n // {\r\n // delete element['Temperature_10Meter'];\r\n // } \r\n // } \r\n // if(!this.chkSolarRadiation)\r\n // {\r\n // if(element['Solar_radiation_GHI'])\r\n // {\r\n // delete element['Solar_radiation_GHI'];\r\n // } \r\n // }\r\n // if(!this.chkangleAndDirections2m)\r\n // {\r\n // if(!this.chkWindDirection)\r\n // {\r\n // if(element['WindDirection'])\r\n // {\r\n // delete element['WindDirection'];\r\n // } \r\n // }\r\n \r\n // if(element['Wind_Direction_2m'])\r\n // {\r\n // delete element['Wind_Direction_2m'];\r\n // } \r\n // }\r\n // if(!this.chkangleAndDirections2m)\r\n // {\r\n // if(element['Wind_Direction_2Meter'])\r\n // {\r\n // delete element['Wind_Direction_2Meter'];\r\n // } \r\n // if(element['Wind_Direction_10Meter'])\r\n // {\r\n // delete element['Wind_Direction_10Meter'];\r\n // } \r\n // } \r\n // if(!this.chkWindDirection10m)\r\n // {\r\n // if(element['Wind_Direction_10m'])\r\n // {\r\n // delete element['Wind_Direction_10m'];\r\n // } \r\n // // if(element['WindDirection10m'])\r\n // // {\r\n // // delete element['WindDirection10m'];\r\n // // } \r\n // } \r\n // if(!this.chkWindDirection2m)\r\n // {\r\n // if(element['WindDirection10m'])\r\n // {\r\n // delete element['WindDirection10m'];\r\n // } \r\n // } \r\n // if(!this.chkWBGT)\r\n // {\r\n // if(element['WBGT'])\r\n // {\r\n // delete element['WBGT'];\r\n // } \r\n // }\r\n // if(!this.chkbarometricPressure)\r\n // {\r\n // if(element['Barometric_pressure'])\r\n // {\r\n // delete element['Barometric_pressure'];\r\n // } \r\n // }\r\n // if(!this.chkHeatIndex)\r\n // {\r\n // if(element['Heat_Index'])\r\n // {\r\n // delete element['Heat_Index'];\r\n // } \r\n // }\r\n // if(!this.chkwetBulbTemperature)\r\n // {\r\n // if(element['Wet_bulb_temperature'])\r\n // {\r\n // delete element['Wet_bulb_temperature'];\r\n // } \r\n // }\r\n // if(!this.chkduePointTemperature)\r\n // {\r\n // if(element['Dew_point_temperature'])\r\n // {\r\n // delete element['Dew_point_temperature'];\r\n // } \r\n // }\r\n // if(!this.chksoilTemperature)\r\n // {\r\n // if(element['Soil_temperature'])\r\n // {\r\n // delete element['Soil_temperature'];\r\n // } \r\n // }\r\n // if(!this.chkSolarRadiationDHI)\r\n // {\r\n // if(element['Solar_radiation_DHI'])\r\n // {\r\n // delete element['Solar_radiation_DHI'];\r\n // } \r\n // }\r\n // if(!this.chkHumidity2m)\r\n // {\r\n // if(element['Relative_Humidity_2m'])\r\n // {\r\n // delete element['Relative_Humidity_2m'];\r\n // } \r\n // if(element['Relative_Humidity_10m'])\r\n // {\r\n // delete element['Relative_Humidity_10m'];\r\n // } \r\n // }\r\n // if(this.chkHumidity2m)\r\n // {\r\n // if(element['Relative_Humidity_10m'])\r\n // {\r\n // delete element['Relative_Humidity_10m'];\r\n // } \r\n // }\r\n // if(!this.chkHumidity2m10m)\r\n // {\r\n // if(element['Humidity_2Meter'])\r\n // {\r\n // delete element['Humidity_2Meter'];\r\n // } \r\n // if(element['Humidity_10Meter'])\r\n // {\r\n // delete element['Humidity_10Meter'];\r\n // } \r\n // }\r\n // if(this.chkHumidity2m10m)\r\n // {\r\n // if(element['Relative_Humidity_10m'])\r\n // {\r\n // delete element['Relative_Humidity_10m'];\r\n // } \r\n // }\r\n // if(!this.chkWindSpeed2m)\r\n // {\r\n // if(element['Wind_Speed_2m'])\r\n // {\r\n // delete element['Wind_Speed_2m'];\r\n // } \r\n // if(element['Wind_Speed_10m'])\r\n // {\r\n // delete element['Wind_Speed_10m'];\r\n // } \r\n // if(element['WindSpeed10m'])\r\n // {\r\n // delete element['WindSpeed10m'];\r\n // } \r\n // } \r\n // if(!this.chkWindSpeed10m)\r\n // { \r\n // if(element['Wind_Speed__10m'])\r\n // {\r\n // delete element['Wind_Speed__10m'];\r\n // } \r\n // }\r\n // if(this.chkWindSpeed2m) \r\n // {\r\n // if(element['Wind_Speed_2m'])\r\n // {\r\n // delete element['Wind_Speed_2m'];\r\n // } \r\n // }\r\n // if(!this.chkWindSpeed2m10m)\r\n // {\r\n // if(element['Wind_Speed__2Meter'])\r\n // {\r\n // delete element['Wind_Speed__2Meter'];\r\n // } \r\n // if(element['Wind_Speed_10Meter'])\r\n // {\r\n // delete element['Wind_Speed_10Meter'];\r\n // } \r\n // } \r\n // if(!this.chkVWCContent)\r\n // {\r\n // if(element['Volumetric_water_content'])\r\n // {\r\n // delete element['Volumetric_water_content'];\r\n // } \r\n // } \r\n // if(!this.chkEConductivity)\r\n // {\r\n // if(element['Electrical_conductivity'])\r\n // {\r\n // delete element['Electrical_conductivity'];\r\n // } \r\n // } \r\n // if(!this.chkRain)\r\n // {\r\n // if(element['Rain'])\r\n // {\r\n // delete element['Rain'];\r\n // } \r\n // } \r\n // });\r\n \r\n // console.log( \"report by minute\",this.ReportByMintue);\r\n // this.MinuteVisble = true;\r\n // });\r\n\r\n this.ebamDataService.getBasicReportHour(this.currentStation.Id, start, end).subscribe((res: any) => {\r\n this.ReportByHour = JSON.parse(JSON.stringify(res));\r\n //console.log(\"reportbasichour\",this.ReportByHour)\r\n this.ReportByHour.forEach(element => {\r\n if(!this.chkTemperature2m)\r\n {\r\n if(element['Ambient_temperature_2m'])\r\n {\r\n delete element['Ambient_temperature_2m'];\r\n } \r\n if(element['Ambient_temperature_10m'])\r\n {\r\n delete element['Ambient_temperature_10m'];\r\n } \r\n } \r\n if(this.chkTemperature2m)\r\n {\r\n if(element['Ambient_temperature_10m'])\r\n {\r\n delete element['Ambient_temperature_10m'];\r\n } \r\n }\r\n if(!this.chkTemperature2m10m)\r\n {\r\n if(element['Temperature_2Meter'])\r\n {\r\n delete element['Temperature_2Meter'];\r\n } \r\n if(element['Temperature_10Meter'])\r\n {\r\n delete element['Temperature_10Meter'];\r\n } \r\n } \r\n if(!this.chkSolarRadiation)\r\n {\r\n if(element['Solar_radiation_GHI'])\r\n {\r\n delete element['Solar_radiation_GHI'];\r\n } \r\n }\r\n if(!this.chkangleAndDirections2m)\r\n {\r\n if(!this.chkWindDirection)\r\n {\r\n if(element['WindDirection'])\r\n {\r\n delete element['WindDirection'];\r\n } \r\n }\r\n \r\n if(element['Wind_Direction_2m'])\r\n {\r\n delete element['Wind_Direction_2m'];\r\n } \r\n }\r\n if(!this.chkangleAndDirections2m)\r\n {\r\n if(element['Wind_Direction_2Meter'])\r\n {\r\n delete element['Wind_Direction_2Meter'];\r\n } \r\n if(element['Wind_Direction_10Meter'])\r\n {\r\n delete element['Wind_Direction_10Meter'];\r\n } \r\n } \r\n if(!this.chkWindDirection10m)\r\n {\r\n if(element['Wind_Direction_10m'])\r\n {\r\n delete element['Wind_Direction_10m'];\r\n } \r\n // if(element['WindDirection10m'])\r\n // {\r\n // delete element['WindDirection10m'];\r\n // } \r\n } \r\n if(!this.chkWindDirection2m)\r\n {\r\n if(element['WindDirection10m'])\r\n {\r\n delete element['WindDirection10m'];\r\n } \r\n } \r\n if(!this.chkWBGT)\r\n {\r\n if(element['WBGT'])\r\n {\r\n delete element['WBGT'];\r\n } \r\n }\r\n if(!this.chkbarometricPressure)\r\n {\r\n if(element['Barometric_pressure'])\r\n {\r\n delete element['Barometric_pressure'];\r\n } \r\n }\r\n if(!this.chkHeatIndex)\r\n {\r\n if(element['Heat_Index'])\r\n {\r\n delete element['Heat_Index'];\r\n } \r\n }\r\n if(!this.chkwetBulbTemperature)\r\n {\r\n if(element['Wet_bulb_temperature'])\r\n {\r\n delete element['Wet_bulb_temperature'];\r\n } \r\n }\r\n if(!this.chkduePointTemperature)\r\n {\r\n if(element['Dew_point_temperature'])\r\n {\r\n delete element['Dew_point_temperature'];\r\n } \r\n }\r\n if(!this.chksoilTemperature)\r\n {\r\n if(element['Soil_temperature'])\r\n {\r\n delete element['Soil_temperature'];\r\n } \r\n }\r\n if(!this.chkSolarRadiationDHI)\r\n {\r\n if(element['Solar_radiation_DHI'])\r\n {\r\n delete element['Solar_radiation_DHI'];\r\n } \r\n }\r\n if(!this.chkHumidity2m)\r\n {\r\n if(element['Relative_Humidity_2m'])\r\n {\r\n delete element['Relative_Humidity_2m'];\r\n } \r\n if(element['Relative_Humidity_10m'])\r\n {\r\n delete element['Relative_Humidity_10m'];\r\n } \r\n }\r\n if(this.chkHumidity2m)\r\n {\r\n if(element['Relative_Humidity_10m'])\r\n {\r\n delete element['Relative_Humidity_10m'];\r\n } \r\n }\r\n if(!this.chkHumidity2m10m)\r\n {\r\n if(element['Humidity_2Meter'])\r\n {\r\n delete element['Humidity_2Meter'];\r\n } \r\n if(element['Humidity_10Meter'])\r\n {\r\n delete element['Humidity_10Meter'];\r\n } \r\n }\r\n if(this.chkHumidity2m10m)\r\n {\r\n if(element['Relative_Humidity_10m'])\r\n {\r\n delete element['Relative_Humidity_10m'];\r\n } \r\n }\r\n if(!this.chkWindSpeed2m)\r\n {\r\n if(element['Wind_Speed_2m'])\r\n {\r\n delete element['Wind_Speed_2m'];\r\n } \r\n if(element['Wind_Speed_10m'])\r\n {\r\n delete element['Wind_Speed_10m'];\r\n } \r\n if(element['WindSpeed10m'])\r\n {\r\n delete element['WindSpeed10m'];\r\n } \r\n } \r\n if(!this.chkWindSpeed10m)\r\n { \r\n if(element['Wind_Speed__10m'])\r\n {\r\n delete element['Wind_Speed__10m'];\r\n } \r\n }\r\n if(this.chkWindSpeed2m) \r\n {\r\n if(element['Wind_Speed_2m'])\r\n {\r\n delete element['Wind_Speed_2m'];\r\n } \r\n }\r\n if(!this.chkWindSpeed2m10m)\r\n {\r\n if(element['Wind_Speed__2Meter'])\r\n {\r\n delete element['Wind_Speed__2Meter'];\r\n } \r\n if(element['Wind_Speed_10Meter'])\r\n {\r\n delete element['Wind_Speed_10Meter'];\r\n } \r\n } \r\n if(!this.chkVWCContent)\r\n {\r\n if(element['Volumetric_water_content'])\r\n {\r\n delete element['Volumetric_water_content'];\r\n } \r\n } \r\n if(!this.chkEConductivity)\r\n {\r\n if(element['Electrical_conductivity'])\r\n {\r\n delete element['Electrical_conductivity'];\r\n } \r\n } \r\n if(!this.chkRain)\r\n {\r\n if(element['Rain'])\r\n {\r\n delete element['Rain'];\r\n } \r\n } \r\n });\r\n this.HourVisble = true;\r\n });\r\n\r\n this.ebamDataService.getVibrationBgBasicReportMinute(this.currentStation.Id,start,end).subscribe((res:any)=>{\r\n console.log(\"minute\");\r\n console.log(res);\r\n this.VibrationBgReportByMinute = res;\r\n this.MinuteVisble = true;\r\n });\r\n\r\n this.ebamDataService.getVibrationBgBasicReportHourly(this.currentStation.Id,start,end).subscribe((res:any)=>{\r\n console.log(\"hour\");\r\n console.log(res);\r\n this.VibrationBgReportByHour = res;\r\n this.HourVisble = true;\r\n });\r\n\r\n }\r\n \r\n this.ebamDataService.getAllGraphData(\r\n this.currentStation.Id,\r\n start, end,\r\n this.graphsRequired[0], this.graphsRequired[1], this.graphsRequired[2],\r\n this.graphsRequired[3], this.graphsRequired[4], this.graphsRequired[17],\r\n this.graphsRequired[5], this.graphsRequired[6], this.graphsRequired[7],\r\n this.graphsRequired[8],\r\n this.graphsRequired[9], this.graphsRequired[10], this.graphsRequired[11],\r\n this.graphsRequired[12], this.graphsRequired[13], this.graphsRequired[14],\r\n this.graphsRequired[15], this.graphsRequired[16], this.graphsRequired[18],\r\n this.graphsRequired[19],this.graphsRequired[20],this.graphsRequired[21],\r\n this.graphsRequired[22],this.graphsRequired[23],this.graphsRequired[24],\r\n this.graphsRequired[25],this.graphsRequired[26],this.graphsRequired[27],\r\n this.graphsRequired[28], this.graphsRequired[29], this.graphsRequired[30],\r\n this.graphsRequired[31],this.graphsRequired[32]\r\n ).subscribe((res: any) => {\r\n \r\n //console.log(\"allgraph data from report\",res);\r\n this.graphData = res;\r\n console.log('report filter data = ',this.graphData);\r\n \r\n this.ebamDataService.storeGraphData(this.graphData,this.menuItemVisibility);\r\n this.reportTitle = reporttitle;\r\n if (Days > 2) {\r\n this.dateStatus = true;\r\n }\r\n else {\r\n this.dateStatus = false;\r\n }\r\n this.isLoading = false;\r\n this.DailyWindDirectionReport = false;\r\n });\r\n \r\n }\r\n\r\n generateWindDirectionReport(){\r\n \r\n this.reportTitle=null;\r\n this.isLoading = true;\r\n this.DailyWindDirectionReport = true;\r\n \r\n var start = new Date(this.dateFrom).toDateString();\r\n var end = new Date(this.dateTo).toDateString();\r\n var reporttitle = \"\"\r\n if (start == end) {\r\n console.log(\"beforestartdate\",start);\r\n console.log(\"beforeenddate\",end);\r\n start = start + \" 00:00:00\"\r\n end = end + \" 23:59:59\"\r\n // start = new Date(start).toISOString();\r\n // end = new Date(end).toISOString();\r\n start = new Date(start).toDateString();\r\n end = new Date(end).toDateString();\r\n console.log(\"startdate\",start);\r\n console.log(\"enddate\",end);\r\n reporttitle = \"Report for - \" + new Date(start).toLocaleDateString('en-GB')\r\n }\r\n else {\r\n // start = new Date(start).toISOString();\r\n // end = new Date(end).toISOString();\r\n \r\n start = new Date(start).toDateString();\r\n end = new Date(end).toDateString();\r\n console.log(\"startdate\",start);\r\n console.log(\"enddate\",end);\r\n reporttitle = \"Report for the period of \"\r\n + new Date(start).toLocaleDateString('en-GB')\r\n + \" - \"\r\n + new Date(end).toLocaleDateString('en-GB')\r\n\r\n }\r\n\r\n\r\n this.ebamDataService.getWindDirectionGraphData(\r\n this.currentStation.Id,\r\n start, end\r\n ).subscribe((res: any) => {\r\n \r\n //console.log(\"allgraph data from report\",res);\r\n this.WindDirectiongraphData = res;\r\n console.log('report filter data = ',this.WindDirectiongraphData);\r\n \r\n //this.ebamDataService.storeGraphData(this.graphData,this.menuItemVisibility);\r\n this.reportTitleForWindDrn = reporttitle;\r\n var Days = this.FindDiffers(this.dateFrom, this.dateTo);\r\n if (Days > 2) {\r\n this.dateStatus = true;\r\n }\r\n else {\r\n this.dateStatus = false;\r\n }\r\n this.isLoading = false;\r\n \r\n });\r\n\r\n\r\n\r\n }\r\n\r\n createReportByMintue(event) {\r\n\r\n if (typeof this.dateFrom === 'string' || this.dateFrom instanceof String) {\r\n this.dateFrom = new Date(this.dateFrom);\r\n }\r\n\r\n if (typeof this.dateTo === 'string' || this.dateTo instanceof String) {\r\n this.dateTo = new Date(this.dateTo);\r\n }\r\n debugger\r\n var start = this.startDtprint;\r\n var end = this.EndDtprint;\r\n this.ebamDataService.getBasicReportMinute(this.currentStation.Id, start, end).subscribe((res: any) => { \r\n this.ReportByMintue = res;\r\n console.log(\"minutebasicdata\",this.ReportByMintue);\r\n\r\n this.ReportByMintue.forEach(element => {\r\n if(!this.chkTemperature2m)\r\n {\r\n if(element['Ambient_temperature_2m'])\r\n {\r\n delete element['Ambient_temperature_2m'];\r\n } \r\n if(element['Ambient_temperature_10m'])\r\n {\r\n delete element['Ambient_temperature_10m'];\r\n } \r\n } \r\n if(this.chkTemperature2m)\r\n {\r\n if(element['Ambient_temperature_10m'])\r\n {\r\n delete element['Ambient_temperature_10m'];\r\n } \r\n }\r\n if(!this.chkTemperature2m10m)\r\n {\r\n if(element['Temperature_2Meter'])\r\n {\r\n delete element['Temperature_2Meter'];\r\n } \r\n if(element['Temperature_10Meter'])\r\n {\r\n delete element['Temperature_10Meter'];\r\n } \r\n } \r\n if(!this.chkSolarRadiation)\r\n {\r\n if(element['Solar_radiation_GHI'])\r\n {\r\n delete element['Solar_radiation_GHI'];\r\n } \r\n }\r\n if(!this.chkangleAndDirections2m)\r\n {\r\n if(!this.chkWindDirection)\r\n {\r\n if(element['WindDirection'])\r\n {\r\n delete element['WindDirection'];\r\n } \r\n }\r\n \r\n if(element['Wind_Direction_2m'])\r\n {\r\n delete element['Wind_Direction_2m'];\r\n } \r\n }\r\n if(!this.chkangleAndDirections2m)\r\n {\r\n if(element['Wind_Direction_2Meter'])\r\n {\r\n delete element['Wind_Direction_2Meter'];\r\n } \r\n if(element['Wind_Direction_10Meter'])\r\n {\r\n delete element['Wind_Direction_10Meter'];\r\n } \r\n } \r\n if(!this.chkWindDirection10m)\r\n {\r\n if(element['Wind_Direction_10m'])\r\n {\r\n delete element['Wind_Direction_10m'];\r\n } \r\n // if(element['WindDirection10m'])\r\n // {\r\n // delete element['WindDirection10m'];\r\n // } \r\n } \r\n if(!this.chkWindDirection2m)\r\n {\r\n if(element['WindDirection10m'])\r\n {\r\n delete element['WindDirection10m'];\r\n } \r\n } \r\n \r\n //Added 09-01-2025\r\n // delete element['WBGT'];\r\n // delete element['Heat_Index'];\r\n\r\n\r\n if(!this.chkWBGT)\r\n {\r\n if(element['WBGT'])\r\n {\r\n delete element['WBGT'];\r\n } \r\n }\r\n\r\n\r\n if(!this.chkbarometricPressure)\r\n {\r\n if(element['Barometric_pressure'])\r\n {\r\n delete element['Barometric_pressure'];\r\n } \r\n }\r\n\r\n \r\n if(!this.chkHeatIndex)\r\n {\r\n if(element['Heat_Index'])\r\n {\r\n delete element['Heat_Index'];\r\n } \r\n }\r\n\r\n\r\n if(!this.chkwetBulbTemperature)\r\n {\r\n if(element['Wet_bulb_temperature'])\r\n {\r\n delete element['Wet_bulb_temperature'];\r\n } \r\n }\r\n if(!this.chkduePointTemperature)\r\n {\r\n if(element['Dew_point_temperature'])\r\n {\r\n delete element['Dew_point_temperature'];\r\n } \r\n }\r\n if(!this.chksoilTemperature)\r\n {\r\n if(element['Soil_temperature'])\r\n {\r\n delete element['Soil_temperature'];\r\n } \r\n }\r\n if(!this.chkSolarRadiationDHI)\r\n {\r\n if(element['Solar_radiation_DHI'])\r\n {\r\n delete element['Solar_radiation_DHI'];\r\n } \r\n }\r\n if(!this.chkHumidity2m)\r\n {\r\n if(element['Relative_Humidity_2m'])\r\n {\r\n delete element['Relative_Humidity_2m'];\r\n } \r\n if(element['Relative_Humidity_10m'])\r\n {\r\n delete element['Relative_Humidity_10m'];\r\n } \r\n }\r\n if(this.chkHumidity2m)\r\n {\r\n if(element['Relative_Humidity_10m'])\r\n {\r\n delete element['Relative_Humidity_10m'];\r\n } \r\n }\r\n if(!this.chkHumidity2m10m)\r\n {\r\n if(element['Humidity_2Meter'])\r\n {\r\n delete element['Humidity_2Meter'];\r\n } \r\n if(element['Humidity_10Meter'])\r\n {\r\n delete element['Humidity_10Meter'];\r\n } \r\n }\r\n if(this.chkHumidity2m10m)\r\n {\r\n if(element['Relative_Humidity_10m'])\r\n {\r\n delete element['Relative_Humidity_10m'];\r\n } \r\n }\r\n if(!this.chkWindSpeed2m)\r\n {\r\n if(element['Wind_Speed_2m'])\r\n {\r\n delete element['Wind_Speed_2m'];\r\n } \r\n if(element['Wind_Speed_10m'])\r\n {\r\n delete element['Wind_Speed_10m'];\r\n } \r\n if(element['WindSpeed10m'])\r\n {\r\n delete element['WindSpeed10m'];\r\n } \r\n } \r\n if(!this.chkWindSpeed10m)\r\n { \r\n if(element['Wind_Speed__10m'])\r\n {\r\n delete element['Wind_Speed__10m'];\r\n } \r\n }\r\n if(this.chkWindSpeed2m) \r\n {\r\n if(element['Wind_Speed_2m'])\r\n {\r\n delete element['Wind_Speed_2m'];\r\n } \r\n }\r\n if(!this.chkWindSpeed2m10m)\r\n {\r\n if(element['Wind_Speed__2Meter'])\r\n {\r\n delete element['Wind_Speed__2Meter'];\r\n } \r\n if(element['Wind_Speed_10Meter'])\r\n {\r\n delete element['Wind_Speed_10Meter'];\r\n } \r\n } \r\n if(!this.chkVWCContent)\r\n {\r\n if(element['Volumetric_water_content'])\r\n {\r\n delete element['Volumetric_water_content'];\r\n } \r\n } \r\n if(!this.chkEConductivity)\r\n {\r\n if(element['Electrical_conductivity'])\r\n {\r\n delete element['Electrical_conductivity'];\r\n } \r\n } \r\n if(!this.chkRain)\r\n {\r\n if(element['Rain'])\r\n {\r\n delete element['Rain'];\r\n } \r\n } \r\n });\r\n if(this.chkCloudCover)\r\n {\r\n this.ebamDataService.getBasicReportMinutecelometer(this.currentStation.Id, start, end).subscribe((res: any) => {\r\n this.ReportByMintuecelometer = res;\r\n console.log(\"celometer report\",this.ReportByMintuecelometer);\r\n if(this.chkCloudCover)\r\n {\r\n CsvDataService.exportToCsv(Ceilometer_Name, this.ReportByMintuecelometer);\r\n }\r\n });\r\n }\r\n console.log( \"report by minute\",this.ReportByMintue);\r\n CsvDataService.exportToCsv(temp_name, this.ReportByMintue);\r\n this.MinuteVisble = true;\r\n });\r\n console.log(this.dateFrom);\r\n\r\n event.preventDefault();\r\n let stationName = this.currentStation.Name;\r\n let From_Day = (\"0\" + this.dateFrom.getDate()).slice(-2);\r\n let To_Day = (\"0\" + this.dateTo.getDate()).slice(-2);\r\n let From_Month = (\"0\" + (this.dateFrom.getMonth() + 1)).slice(-2);\r\n let To_Month = (\"0\" + (this.dateTo.getMonth() + 1)).slice(-2);\r\n let From_Year = this.dateFrom.getFullYear();\r\n let To_Year = this.dateTo.getFullYear();\r\n var From_Date = From_Day + From_Month + From_Year;\r\n var To_Date = To_Day + To_Month + To_Year;\r\n var temp_name = stationName + '_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n var Vibration_Bg_Name = stationName + '_Background_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n var Ceilometer_Name = stationName + '_Ceilometer_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n //CsvDataService.exportToCsv(temp_name, this.ReportByMintue);\r\n CsvDataService.exportToCsv(Vibration_Bg_Name, this.VibrationBgReportByMinute);\r\n\r\n // if(this.chkCloudCover)\r\n // {\r\n // CsvDataService.exportToCsv(Ceilometer_Name, this.ReportByMintuecelometer);\r\n // }\r\n\r\n }\r\n createReportVisibility(event)\r\n {\r\n if (typeof this.dateFrom === 'string' || this.dateFrom instanceof String) {\r\n this.dateFrom = new Date(this.dateFrom);\r\n }\r\n\r\n if (typeof this.dateTo === 'string' || this.dateTo instanceof String) {\r\n this.dateTo = new Date(this.dateTo);\r\n }\r\n\r\n console.log(this.dateFrom);\r\n\r\n event.preventDefault();\r\n let stationName = this.currentStation.Name;\r\n let From_Day = (\"0\" + this.dateFrom.getDate()).slice(-2);\r\n let To_Day = (\"0\" + this.dateTo.getDate()).slice(-2);\r\n let From_Month = (\"0\" + (this.dateFrom.getMonth() + 1)).slice(-2);\r\n let To_Month = (\"0\" + (this.dateTo.getMonth() + 1)).slice(-2);\r\n let From_Year = this.dateFrom.getFullYear();\r\n let To_Year = this.dateTo.getFullYear();\r\n var From_Date = From_Day + From_Month + From_Year;\r\n var To_Date = To_Day + To_Month + To_Year;\r\n var temp_name = stationName + '_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n var Vibration_Bg_Name = stationName + '_Background_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n var Ceilometer_Name = stationName + '_Ceilometer_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n var visibilityname = stationName + '_Visibility_five_Mintue_' + From_Date + '_' + To_Date + '.csv';\r\n //CsvDataService.exportToCsv(temp_name, this.ReportByMintue);\r\n CsvDataService.exportToCsv(visibilityname, this.ReportByMintueVisibility); \r\n }\r\n createReportByHour(event) {\r\n\r\n if (typeof this.dateFrom === 'string' || this.dateFrom instanceof String) {\r\n this.dateFrom = new Date(this.dateFrom);\r\n }\r\n\r\n if (typeof this.dateTo === 'string' || this.dateTo instanceof String) {\r\n this.dateTo = new Date(this.dateTo);\r\n }\r\n\r\n event.preventDefault();\r\n let stationName = this.currentStation.Name;\r\n let From_Day = (\"0\" + this.dateFrom.getDate()).slice(-2);\r\n let To_Day = (\"0\" + this.dateTo.getDate()).slice(-2);\r\n let From_Month = (\"0\" + (this.dateFrom.getMonth() + 1)).slice(-2);\r\n let To_Month = (\"0\" + (this.dateTo.getMonth() + 1)).slice(-2);\r\n let From_Year = this.dateFrom.getFullYear();\r\n let To_Year = this.dateTo.getFullYear();\r\n var From_Date = From_Day + From_Month + From_Year;\r\n var To_Date = To_Day + To_Month + To_Year;\r\n var temp_name = stationName + '_Hour_' + From_Date + '_' + To_Date + '.csv';\r\n var Vibration_Bg_Name = stationName + '_Background_Hour_' + From_Date + '_' + To_Date + '.csv';\r\n CsvDataService.exportToCsv(temp_name, this.ReportByHour);\r\n CsvDataService.exportToCsv(Vibration_Bg_Name, this.VibrationBgReportByHour);\r\n }\r\n\r\n async createTableforCSV(event) {\r\n\r\n if (typeof this.dateFrom === 'string' || this.dateFrom instanceof String) {\r\n this.dateFrom = new Date(this.dateFrom);\r\n }\r\n\r\n if (typeof this.dateTo === 'string' || this.dateTo instanceof String) {\r\n this.dateTo = new Date(this.dateTo);\r\n }\r\n\r\n event.preventDefault();\r\n let stationName = this.currentStation.Name;\r\n let From_Day = (\"0\" + this.dateFrom.getDate()).slice(-2);\r\n let To_Day = (\"0\" + this.dateTo.getDate()).slice(-2);\r\n let From_Month = (\"0\" + (this.dateFrom.getMonth() + 1)).slice(-2);\r\n let To_Month = (\"0\" + (this.dateTo.getMonth() + 1)).slice(-2);\r\n let From_Year = this.dateFrom.getFullYear();\r\n let To_Year = this.dateTo.getFullYear();\r\n var From_Date = From_Day + From_Month + From_Year;\r\n var To_Date = To_Day + To_Month + To_Year;\r\n\r\n var temp_name = stationName + '_Temperature_' + From_Date + '_' + To_Date + '.csv';\r\n var pm10_name = stationName + '_PM10_' + From_Date + '_' + To_Date + '.csv';\r\n var pm25_name = stationName + '_PM2_5_' + From_Date + '_' + To_Date + '.csv';\r\n var humid_name = stationName + '_Humidity_' + From_Date + '_' + To_Date + '.csv';\r\n var wind_name = stationName + '_WindSpeed_' + From_Date + '_' + To_Date + '.csv';\r\n var noise_name = stationName + '_Noise_' + From_Date + '_' + To_Date + '.csv';\r\n var vibration_background_name = stationName + '_Vibration Background_' + From_Date + '_' + To_Date + '.csv';\r\n var vibration_event_name = stationName + '_Vibration Event_' + From_Date + '_' + To_Date + '.csv';\r\n var wind_direction_name = stationName + '_Wind direction_' + From_Date + '_' + To_Date + '.csv';\r\n var heatIndex_name = stationName + '_Heat_Index_' + From_Date + '_' + To_Date + '.csv';\r\n var Humidity_10m_name = stationName + '_Humidity_10m_' + From_Date + '_' + To_Date + '.csv';\r\n var Humidity_2m_name = stationName + '_Humidity_2m_' + From_Date + '_' + To_Date + '.csv';\r\n var Solar_Radiation_name = stationName + '_Solar_Radiation_' + From_Date + '_' + To_Date + '.csv';\r\n var Temperature_name = stationName + '_Temperature_' + From_Date + '_' + To_Date + '.csv';\r\n var WindDirection_name = stationName + '_Wind_Direction_' + From_Date + '_' + To_Date + '.csv';\r\n var WindApeed_name = stationName + '_Wind_Speed_' + From_Date + '_' + To_Date + '.csv';\r\n\r\n var WBGT_name = stationName + '_WBGT_' + From_Date + '_' + To_Date + '.csv';\r\n var barometricPressure_name = stationName + '_Barometric_Pressure_' + From_Date + '_' + To_Date + '.csv';\r\n var duePointTemperature_name = stationName + '_Dew_Point_Temperature_' + From_Date + '_' + To_Date + '.csv';\r\n var soilTemperature_name = stationName + '_Soil_Temperature_' + From_Date + '_' + To_Date + '.csv';\r\n var solarRadiationDHI_name = stationName + '_Solar_Radiation_DHI_' + From_Date + '_' + To_Date + '.csv';\r\n var wetBulbTemperature_name = stationName + '_Solar_Radiation_GHI_' + From_Date + '_' + To_Date + '.csv';\r\n var vwc_name = stationName + '_Volumetric_water_content_' + From_Date + '_' + To_Date + '.csv';\r\n var ec_name = stationName + '_Electrical_conductivity_' + From_Date + '_' + To_Date + '.csv';\r\n var fifthcloud_name = stationName + '_Fifth_Cloud_oktas_' + From_Date + '_' + To_Date + '.csv';\r\n var fourthcloud_name = stationName + '_Fourth_Cloud_oktas_' + From_Date + '_' + To_Date + '.csv';\r\n var thirdcloud_name = stationName + '_Third_Cloud_oktas_' + From_Date + '_' + To_Date + '.csv';\r\n var secondcloud_name = stationName + '_Second_Cloud_oktas_' + From_Date + '_' + To_Date + '.csv';\r\n var visibilitycloud_name = stationName + '_Vertical_Visibility_oktas_' + From_Date + '_' + To_Date + '.csv';\r\n var Lowestcloud_name = stationName + '_Cloud_cover_oktas_' + From_Date + '_' + To_Date + '.csv';\r\n var Rain_name = stationName + '_Rain_' + From_Date + '_' + To_Date + '.csv';\r\n \r\n \r\n \r\n \r\n \r\n ///////////////////////////////////////////////////////\r\n let temperature = this.graphData[0].Temperature;\r\n if (temperature == null) {\r\n console.log(\"temperature is null\");\r\n }\r\n else {\r\n this.TableTemperature = [];\r\n temperature.forEach(temp => {\r\n var utcTime = new Date(temp.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Temperature ( °C )': temp.Temperature,\r\n }\r\n this.TableTemperature.push(xx);\r\n });\r\n\r\n await CsvDataService.exportToCsv(temp_name, this.TableTemperature);\r\n await this.delay(500);\r\n }\r\n\r\n ///////////////////////////////////////////////////\r\n let pm10 = this.graphData[0].PM10;\r\n if (pm10 == null) {\r\n console.log(\"pm10 is null\");\r\n }\r\n else {\r\n this.TablePM10 = [];\r\n pm10.forEach(pm => {\r\n var utcTime = new Date(pm.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'PM10 ( µg/m³ )': pm.PM10,\r\n }\r\n this.TablePM10.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(pm10_name, this.TablePM10);\r\n await this.delay(500);\r\n }\r\n\r\n /////////////////////////////////////////////////////////\r\n\r\n let pm25 = this.graphData[0].PM2_5;\r\n if (pm25 == null) {\r\n console.log(\"pm2.5 is null\");\r\n }\r\n else {\r\n this.TablePM2_5 = [];\r\n pm25.forEach(pm => {\r\n var utcTime = new Date(pm.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'PM2.5 ( µg/m³ )': pm.PM2_5,\r\n }\r\n this.TablePM2_5.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(pm25_name, this.TablePM2_5);\r\n await this.delay(500);\r\n }\r\n\r\n /////////////////////////////////////////////////////////\r\n let humidity = this.graphData[0].Humidity;\r\n if (humidity == null) {\r\n console.log(\"humidity is null\");\r\n }\r\n else {\r\n this.TableHumidity = [];\r\n humidity.forEach(humid => {\r\n var utcTime = new Date(humid.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Humidity (%)': humid.Humidity,\r\n }\r\n this.TableHumidity.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(humid_name, this.TableHumidity);\r\n await this.delay(500);\r\n }\r\n /////////////////////////////////////////////////////////////\r\n let windspeed = this.graphData[0].WindSpeed;\r\n if (windspeed == null) {\r\n console.log(\"windspeed is null\");\r\n }\r\n else {\r\n this.TableWindSpeed = [];\r\n windspeed.forEach(wind => {\r\n var utcTime = new Date(wind.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'WindSpeed ( m/s )': wind.WindSpeed,\r\n }\r\n this.TableWindSpeed.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(wind_name, this.TableWindSpeed);\r\n await this.delay(500);\r\n }\r\n\r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n \r\n //Commented 08-01-2025\r\n\r\n // if(this.chkWindSpeed2m10m)\r\n // {\r\n // let windspeed2m10m = this.graphData[0].WindSpeed2mand10m;\r\n // if (windspeed2m10m == null) {\r\n // console.log(\"windspeed is null\");\r\n // }\r\n // else {\r\n // this.TableWindSpeed = [];\r\n // windspeed2m10m.forEach(wind => {\r\n // var utcTime = new Date(wind.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'WindSpeed2m ( m/s )': wind.WindSpeed2m,\r\n // 'WindSpeed10m ( m/s )': wind.WindSpeed10m\r\n // }\r\n // this.TableWindSpeed.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(wind_name, this.TableWindSpeed);\r\n // }\r\n // }\r\n \r\n\r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n\r\n\r\n //Commented 08-01-2025\r\n\r\n// if(this.chkWindSpeed10m)\r\n// {\r\n// let windspeed10m = this.graphData[0].WindSpeed10m;\r\n// if (windspeed10m == null) {\r\n// console.log(\"windspeed is null\");\r\n// }\r\n// else {\r\n// this.TableWindSpeed = [];\r\n// windspeed10m.forEach(wind => {\r\n// var utcTime = new Date(wind.Time);\r\n// let xx = {\r\n// 'Time': utcTime,\r\n// 'WindSpeed ( m/s )': wind.WindSpeed\r\n \r\n// }\r\n// this.TableWindSpeed.push(xx);\r\n// });\r\n// CsvDataService.exportToCsv(wind_name, this.TableWindSpeed);\r\n// }\r\n// }\r\n\r\n//Commented 08-01-2025\r\n\r\n// if(this.chkWindSpeed2m)\r\n// {\r\n// let windspeed2m = this.graphData[0].WindSpeed2m;\r\n// if (windspeed2m == null) {\r\n// console.log(\"windspeed is null\");\r\n// }\r\n// else {\r\n// this.TableWindSpeed = [];\r\n// windspeed2m.forEach(wind => {\r\n// var utcTime = new Date(wind.Time);\r\n// let xx = {\r\n// 'Time': utcTime,\r\n// 'WindSpeed ( m/s )': wind.WindSpeed\r\n \r\n// }\r\n// this.TableWindSpeed.push(xx);\r\n// });\r\n// CsvDataService.exportToCsv(wind_name, this.TableWindSpeed);\r\n// }\r\n// }\r\n\r\n\r\n /////////////////////////////////////////////////////////////////\r\n\r\n let noise = this.graphData[0].Noise;\r\n if (noise == null) {\r\n console.log(\"noise is null\");\r\n }\r\n else {\r\n this.TableNoise = [];\r\n noise.forEach(_noise => {\r\n var utcTime = new Date(_noise.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Lmin ( db )': _noise.NoiseMin,\r\n 'Lmax ( db )': _noise.NoiseMax,\r\n 'LAeq ( db )': _noise.NoiseAvg\r\n }\r\n this.TableNoise.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(noise_name, this.TableNoise);\r\n await this.delay(500);\r\n }\r\n\r\n /////////////////////////////////////////////////////////////////\r\n let vibrationBackground = this.graphData[0].vibrationBackgrounds;\r\n if (vibrationBackground == null) {\r\n console.log(\"Vibration Backgrouns is null\");\r\n }\r\n else {\r\n this.TableVibrationBackground = [];\r\n vibrationBackground.forEach(_vibrationBackground => {\r\n var utcTime = new Date(_vibrationBackground.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Vibration Background X ( mm/s )': _vibrationBackground.VibrationX,\r\n 'Vibration Background Y ( mm/s )': _vibrationBackground.VibrationY,\r\n 'Vibration Background Z ( mm/s )': _vibrationBackground.VibrationZ\r\n }\r\n this.TableVibrationBackground.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(vibration_background_name, this.TableVibrationBackground);\r\n await this.delay(500);\r\n }\r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkHeatIndex)\r\n {\r\n let heatIndex = this.graphData[0].HeatIndex; \r\n if (heatIndex == null) {\r\n console.log(\"heat index is null\");\r\n }\r\n else {\r\n this.TableheatIndex = [];\r\n heatIndex.forEach(_heat => {\r\n var utcTime = new Date(_heat.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Heat Index ( oC )': _heat.HeatIndexValue\r\n }\r\n this.TableheatIndex.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(heatIndex_name, this.TableheatIndex);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n // if(this.chkHumidity2m)\r\n // {\r\n // let _humidity = this.graphData[0].Humidity; \r\n // if (_humidity == null) {\r\n // console.log(\"heat index is null\");\r\n // }\r\n // else {\r\n // this.TableHumidity10m = [];\r\n // _humidity.forEach(_humidity => {\r\n // var utcTime = new Date(_humidity.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'Humidity 10m ( % )': _humidity.Humidity\r\n // }\r\n // this.TableHumidity10m.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(Humidity_10m_name, this.TableHumidity10m);\r\n // }\r\n\r\n // }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n if(this.chkWBGT)\r\n {\r\n let WBGT = this.graphData[0].WBGT; \r\n if (WBGT == null) {\r\n console.log(\" wbgt is null\");\r\n }\r\n else {\r\n this.TableWBGT = [];\r\n WBGT.forEach(_Wbgt => {\r\n var utcTime = new Date(_Wbgt.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'WBGT( oC )': _Wbgt.WBGTvalue\r\n }\r\n this.TableWBGT.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(WBGT_name, this.TableWBGT);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n /////////////////////////////////////////////////////////////\r\n\r\n //Commented 08-01-2025\r\n // if(this.chkHumidity2m)\r\n // {\r\n // let _humidity_2m = this.graphData[0].Humidity2m; \r\n // if (_humidity_2m == null) {\r\n // console.log(\"heat index is null\");\r\n // }\r\n // else {\r\n // this.TableHumidity2m = [];\r\n // _humidity_2m.forEach(_humidity2m => {\r\n // var utcTime = new Date(_humidity2m.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'Humidity ( % )': _humidity2m.Humidity\r\n // }\r\n // this.TableHumidity2m.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(humid_name, this.TableHumidity2m);\r\n // }\r\n \r\n // }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n\r\n //Commented 08-01-2025\r\n\r\n // if(this.chkHumidity2m10m)\r\n // {\r\n // let _humidity_2m10m = this.graphData[0].Humidity2mand10m; \r\n // if (_humidity_2m10m == null) {\r\n // console.log(\"humidity is null\");\r\n // }\r\n // else {\r\n // this.TableHumidity2m = [];\r\n // _humidity_2m10m.forEach(_humidity2m => {\r\n // var utcTime = new Date(_humidity2m.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'Humidity 2m ( % )': _humidity2m.Humidity2m,\r\n // 'Humidity 10m ( % )': _humidity2m.Humidity10m\r\n // }\r\n // this.TableHumidity2m.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(humid_name, this.TableHumidity2m);\r\n // }\r\n \r\n // }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkSolarRadiation)\r\n {\r\n let solarRadiation = this.graphData[0].SolarRadiation; \r\n if (solarRadiation == null) {\r\n console.log(\"heat solar radiation is null\");\r\n }\r\n else {\r\n this.TablesolarRadiation = [];\r\n solarRadiation.forEach(_solarRadiation => {\r\n var utcTime = new Date(_solarRadiation.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Solar Radiation ( w/m2 )': _solarRadiation.SolarRadiationValue\r\n }\r\n this.TablesolarRadiation.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(Solar_Radiation_name, this.TablesolarRadiation);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkTemperature2m)\r\n {\r\n let Temperature2m = this.graphData[0].Temperature2m; \r\n if (Temperature2m == null) {\r\n console.log(\" Temperature is null\");\r\n }\r\n else {\r\n this.TableTemperature = [];\r\n Temperature2m.forEach(_Temperature => {\r\n var utcTime = new Date(_Temperature.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Ambient Temperature 2m ( oC )': _Temperature.Temperature \r\n }\r\n this.TableTemperature.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(Temperature_name, this.TableTemperature);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n\r\n //Commented 08-01-2025\r\n // if(this.chkTemperature2m10m)\r\n // {\r\n // let Temperature2m10 = this.graphData[0].Temperature2mand10m; \r\n // if (Temperature2m10 == null) {\r\n // console.log(\"heat Temperature is null\");\r\n // }\r\n // else {\r\n // this.Table_2m10mTemperature = [];\r\n // Temperature2m10.forEach(_Temperature => {\r\n // var utcTime = new Date(_Temperature.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'Ambient Temperature 2m ( oC )': _Temperature.Temperature2m,\r\n // 'Ambient Temperature 10m ( oC )': _Temperature.Temperature10m\r\n // }\r\n // this.Table_2m10mTemperature.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(Temperature_name, this.Table_2m10mTemperature);\r\n // }\r\n // }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n //Commented 08-01-2025\r\n\r\n // if(this.chkangleAndDirections2m)\r\n // {\r\n // let WindDirection2m10m = this.graphData[0].windDirection2mand10m; \r\n // if (WindDirection2m10m == null) {\r\n // console.log(\"heat wind direction is null\");\r\n // }\r\n // else {\r\n // this.Table_2m10mwindDirection = [];\r\n // WindDirection2m10m.forEach(_windDirection => {\r\n // var utcTime = new Date(_windDirection.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'Wind Direction 2m( Deg )': _windDirection.Data2m,\r\n // 'Wind Direction 10m ( Deg )': _windDirection.Data10m\r\n // }\r\n // this.Table_2m10mwindDirection.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(WindDirection_name, this.Table_2m10mwindDirection);\r\n // }\r\n // }\r\n\r\n if(this.chkWindDirection10m)\r\n {\r\n let WindDirection10m = this.graphData[0].windDirection10mDt; \r\n if (WindDirection10m == null) {\r\n console.log(\"heat wind direction is null\");\r\n }\r\n else {\r\n this.Table_2m10mwindDirection = [];\r\n WindDirection10m.forEach(_windDirection => {\r\n var utcTime = new Date(_windDirection.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Wind Direction ( Deg )': _windDirection.WindDirection \r\n }\r\n this.Table_2m10mwindDirection.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(WindDirection_name, this.Table_2m10mwindDirection);\r\n await this.delay(500);\r\n }\r\n }\r\n if(this.chkWindDirection2m)\r\n {\r\n let WindDirection2m = this.graphData[0].windDirection2mDt; \r\n if (WindDirection2m == null) {\r\n console.log(\"heat wind direction is null\");\r\n }\r\n else {\r\n this.Table_2m10mwindDirection = [];\r\n WindDirection2m.forEach(_windDirection => {\r\n var utcTime = new Date(_windDirection.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Wind Direction ( Deg )': _windDirection.WindDirection \r\n }\r\n this.Table_2m10mwindDirection.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(WindDirection_name, this.Table_2m10mwindDirection);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n ///////////////////////////////////////////////////////////\r\n\r\n //Commented 08-01-2025\r\n // if(this.chkWindSpeed2m)\r\n // {\r\n // let WindSpeed = this.graphData[0].WindSpeed2mand10m; \r\n // if (WindSpeed == null) {\r\n // console.log(\"heat wind direction is null\");\r\n // }\r\n // else {\r\n // this.Table_2m10mWindSpeed = [];\r\n // WindSpeed.forEach(_WindSpeed => {\r\n // var utcTime = new Date(_WindSpeed.Time);\r\n // let xx = {\r\n // 'Time': utcTime,\r\n // 'Wind Speed 2m( m/s )': _WindSpeed.Data2m,\r\n // 'Wind Speed 10m ( m/s )': _WindSpeed.Data10m\r\n // }\r\n // this.Table_2m10mWindSpeed.push(xx);\r\n // });\r\n // CsvDataService.exportToCsv(WindApeed_name, this.Table_2m10mWindSpeed);\r\n // }\r\n // }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n if(this.chkduePointTemperature)\r\n {\r\n let duePointTemp = this.graphData[0].duePointTemperature; \r\n if (duePointTemp == null) {\r\n console.log(\"heat wind direction is null\");\r\n }\r\n else {\r\n this.TableduePointTemperature = [];\r\n duePointTemp.forEach(_duepoint => {\r\n var utcTime = new Date(_duepoint.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Dew Point Twmperature( m/s )': _duepoint.Temperature \r\n }\r\n this.TableduePointTemperature.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(duePointTemperature_name, this.TableduePointTemperature);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////\r\n if(this.chkbarometricPressure)\r\n {\r\n let bmPressure = this.graphData[0].barometricPressure; \r\n if (bmPressure == null) {\r\n console.log(\" barometricPressure is null\");\r\n }\r\n else {\r\n this.TablebarometricPressure = [];\r\n bmPressure.forEach(_bmpressure => {\r\n var utcTime = new Date(_bmpressure.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Barometric Pressure( mb )': _bmpressure.BarometricPressure\r\n }\r\n this.TablebarometricPressure.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(barometricPressure_name, this.TablebarometricPressure);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chksoilTemperature)\r\n {\r\n let soiltemp = this.graphData[0].soilTemperature; \r\n if (soiltemp == null) {\r\n console.log(\" barometricPressure is null\");\r\n }\r\n else {\r\n this.TablesoilTemperature = [];\r\n soiltemp.forEach(_soil => {\r\n var utcTime = new Date(_soil.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Soil Temperature( oC )': _soil.Temperature\r\n }\r\n this.TablesoilTemperature.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(soilTemperature_name, this.TablesoilTemperature);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkSolarRadiationDHI)\r\n {\r\n let solarDHI = this.graphData[0].solarRadiationDHI; \r\n if (solarDHI == null) {\r\n console.log(\" soilar dhi is null\");\r\n }\r\n else {\r\n this.TablesolarRadiationDHI = [];\r\n solarDHI.forEach(_solardhi => {\r\n var utcTime = new Date(_solardhi.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Solat Radiation DHI( w/m2 )': _solardhi.SolarRadiationValue\r\n }\r\n this.TablesolarRadiationDHI.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(solarRadiationDHI_name, this.TablesolarRadiationDHI);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkwetBulbTemperature)\r\n {\r\n let wetBulb = this.graphData[0].wetBulbTemperature; \r\n if (wetBulb == null) {\r\n console.log(\" soilar dhi is null\");\r\n }\r\n else {\r\n this.TablewetBulbTemperature = [];\r\n wetBulb.forEach(_wetBulb => {\r\n var utcTime = new Date(_wetBulb.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Wet Bulb TemperatureI( oC )': _wetBulb.Temperature\r\n }\r\n this.TablewetBulbTemperature.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(wetBulbTemperature_name, this.TablewetBulbTemperature);\r\n await this.delay(500);\r\n }\r\n\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkVWCContent)\r\n {\r\n let VWC = this.graphData[0].VWContent; \r\n debugger \r\n if (VWC == null) {\r\n console.log(\" VWC is null\");\r\n }\r\n else {\r\n this.TableVWC = [];\r\n VWC.forEach(_vwc => {\r\n var utcTime = new Date(_vwc.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Volumetric water content ( % v/v )': _vwc.VolumetricWContent\r\n }\r\n this.TableVWC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(vwc_name, this.TableVWC);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkEConductivity)\r\n {\r\n let EC = this.graphData[0].Electrical_Conductivity; \r\n if (EC == null) {\r\n console.log(\" EC is null\");\r\n }\r\n else {\r\n this.TableEC = [];\r\n EC.forEach(_ec => {\r\n var utcTime = new Date(_ec.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Electrical conductivity dS/m': _ec.electrical_C\r\n }\r\n this.TableEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(ec_name, this.TableEC);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkCloudCover)\r\n {\r\n let CS136_Fifth_Cloud_Oktas = this.graphData[0].CS136_Fifth_Cloud_Oktas; \r\n if (CS136_Fifth_Cloud_Oktas == null) {\r\n console.log(\" CS136_Fifth_Cloud_Oktas is null\");\r\n }\r\n else {\r\n this.FifthCloudEC = [];\r\n CS136_Fifth_Cloud_Oktas.forEach(_fifth => {\r\n var utcTime = new Date(_fifth.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Fifth Cloudbase (oktas)': _fifth.Cloud\r\n }\r\n this.FifthCloudEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(fifthcloud_name, this.FifthCloudEC);\r\n await this.delay(500);\r\n }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n \r\n /////////////////////////////////////////////////////////////\r\n let CS136_Fourth_Cloud_Oktas = this.graphData[0].CS136_Fourth_Cloud_Oktas; \r\n if (CS136_Fourth_Cloud_Oktas == null) {\r\n console.log(\" CS136_Fourth_Cloud_Oktas is null\");\r\n }\r\n else {\r\n this.FourthCloudEC = [];\r\n CS136_Fourth_Cloud_Oktas.forEach(_fourth => {\r\n var utcTime = new Date(_fourth.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Fourth Cloudbase (oktas)': _fourth.Cloud\r\n }\r\n this.FourthCloudEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(fourthcloud_name, this.FourthCloudEC);\r\n await this.delay(500);\r\n }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n \r\n /////////////////////////////////////////////////////////////\r\n let CS136_Third_Cloud_Oktas = this.graphData[0].CS136_Third_Cloud_Oktas; \r\n if (CS136_Third_Cloud_Oktas == null) {\r\n console.log(\" CS136_Third_Cloud_Oktas is null\");\r\n }\r\n else {\r\n this.ThirdCloudEC = [];\r\n CS136_Third_Cloud_Oktas.forEach(_third => {\r\n var utcTime = new Date(_third.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Third Cloudbase (oktas)': _third.Cloud\r\n }\r\n this.ThirdCloudEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(thirdcloud_name, this.ThirdCloudEC);\r\n await this.delay(500);\r\n }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n /////////////////////////////////////////////////////////////\r\n let CS136_Second_Cloud_Oktas = this.graphData[0].CS136_Second_Cloud_Oktas; \r\n if (CS136_Second_Cloud_Oktas == null) {\r\n console.log(\" CS136_Second_Cloud_Oktas is null\");\r\n }\r\n else {\r\n this.SecondCloudEC = [];\r\n CS136_Second_Cloud_Oktas.forEach(_second => {\r\n var utcTime = new Date(_second.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Second Cloudbase (oktas)': _second.Cloud\r\n }\r\n this.SecondCloudEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(secondcloud_name, this.SecondCloudEC);\r\n await this.delay(500);\r\n }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n \r\n /////////////////////////////////////////////////////////////\r\n let CS136_Vertical_Visibility = this.graphData[0].CS136_Vertical_Visibility; \r\n if (CS136_Vertical_Visibility == null) {\r\n console.log(\" CS136_Vertical_Visibility is null\");\r\n }\r\n else {\r\n this.VisibleCloudEC = [];\r\n CS136_Vertical_Visibility.forEach(_vertical_visibility => {\r\n var utcTime = new Date(_vertical_visibility.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Vertical visibility ': _vertical_visibility.Cloud\r\n }\r\n this.VisibleCloudEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(visibilitycloud_name, this.VisibleCloudEC);\r\n await this.delay(500);\r\n }\r\n \r\n /////////////////////////////////////////////////////////////////\r\n debugger;\r\n /////////////////////////////////////////////////////////////\r\n let CS136_Lowest_Data = this.graphData[0].CS136_Lowest_Data; \r\n if (CS136_Lowest_Data == null) {\r\n console.log(\" CS136_Lowest_Data is null\");\r\n }\r\n else {\r\n this.LowestCloudEC = [];\r\n CS136_Lowest_Data.forEach(_Lowest => {\r\n var utcTime = new Date(_Lowest.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Cloud Cover (oktas) ': _Lowest.Cloud\r\n }\r\n this.LowestCloudEC.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(Lowestcloud_name, this.LowestCloudEC);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////////////////////////////\r\n if(this.chkRain)\r\n {\r\n let Rain = this.graphData[0].Rain; \r\n if (Rain == null) {\r\n console.log(\" Rain is null\");\r\n }\r\n else {\r\n this.RainTbl = [];\r\n Rain.forEach(_Rain => {\r\n var utcTime = new Date(_Rain.Time);\r\n let xx = {\r\n 'Time': utcTime,\r\n 'Rain (mm) ': _Rain.RainValue\r\n }\r\n this.RainTbl.push(xx);\r\n });\r\n await CsvDataService.exportToCsv(Rain_name, this.RainTbl);\r\n await this.delay(500);\r\n }\r\n }\r\n \r\n \r\n /////////////////////////////////////////////////////////////////\r\n\r\n \r\n \r\n \r\n }\r\n\r\n FindDiffers(date1, date2) {\r\n date1 = new Date(date1);\r\n date2 = new Date(date2);\r\n return Math.floor((Date.UTC(date2.getFullYear(), date2.getMonth(), date2.getDate()) - Date.UTC(date1.getFullYear(), date1.getMonth(), date1.getDate())) / (1000 * 60 * 60 * 24));\r\n }\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { SelectClientService } from 'src/app/services/select-client/select-client.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-select-client',\r\n templateUrl: './select-client.component.html',\r\n styleUrls: ['./select-client.component.css']\r\n})\r\nexport class SelectClientComponent implements OnInit {\r\n public Data:any;\r\n public client_stations :any;\r\n public stationId : any;\r\n public stationData : any;\r\n\r\n constructor(private selectstations:SelectClientService, private router: Router, private stationService: StationsService) { }\r\n\r\n ngOnInit(): void {\r\n this.selectstations.getstationsforfirstpage().subscribe((data:any)=>{\r\n if(data)\r\n {\r\n this.Data=data;\r\n console.log(this.Data);\r\n\r\n }\r\n })\r\n\r\n\r\n }\r\n onclick(data:any)\r\n {\r\n debugger\r\n localStorage.setItem('ClientId', data.Clientid);\r\n localStorage.setItem('ClientName', data.ClientName);\r\n AppSettings.CLIENT_ID=parseInt(localStorage.getItem('ClientId'));\r\n AppSettings.CLIENT_NAME=localStorage.getItem('ClientName'); \r\n if (data.Clientid==3) { \r\n this.stationService.getstationvisble(); \r\n this.stationService.getStations(data.Clientid).subscribe((stationsDt: any) => { \r\n console.log(\"dataStation\",stationsDt[0]); \r\n this.client_stations = stationsDt[0]; \r\n //this.stationId = this.client_stations.Id;\r\n console.log(\"dataStation\",this.client_stations.Id); \r\n localStorage.setItem('StationId',this.client_stations.Id);\r\n this.stationService.getStation(this.client_stations.Id).subscribe((stationData: any) => {\r\n this.stationData = stationData; \r\n localStorage.setItem('lastStation', JSON.stringify(this.stationData[0])); \r\n\r\n }); \r\n this.router.navigateByUrl('/Amaala-dashboard'); \r\n });\r\n \r\n \r\n }\r\n else\r\n {\r\n this.router.navigateByUrl('/dashboard');\r\n }\r\n \r\n \r\n }\r\n\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n \"Card\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n
","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { startWith } from 'rxjs/operators';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { dateAndTime } from 'src/app/common/dateAndTime';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\nimport { tileClock } from 'src/app/common/tileClock';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { DomSanitizer, SafeUrl } from '@angular/platform-browser';\r\nimport { DOCUMENT } from '@angular/common';\r\n\r\n\r\n@Component({\r\n selector: 'app-stations-all-summary',\r\n templateUrl: './stations-all-summary.component.html',\r\n styleUrls: ['./stations-all-summary.component.css']\r\n})\r\nexport class StationsAllSummaryComponent implements OnInit {\r\n\r\n public current_tile_clock: tileClock = { year: 0, monthAndDay: \"N/A\", time: \"N/A\" };\r\n public updated_tile_clock: tileClock = { year: 0, monthAndDay: \"N/A\", time: \"N/A\" };\r\n public stations_summary: any;\r\n public other_info: any = { UrlImage: \"\", LastUpdateDate: \"\" };\r\n public mapLocation: string\r\n public menuItemVisibility: readingAvailability\r\n private apiInerval = interval(AppSettings.REFRESH_FREQUENCY)\r\n private apiSubscription: Subscription;\r\n SVGFile: SafeUrl;\r\n isLoading: boolean = true;\r\n public clientName: string;\r\n\r\n\r\n constructor(\r\n private stationService: StationsService,\r\n private messageService: MessageService,\r\n protected sanitizer: DomSanitizer,\r\n @Inject(DOCUMENT) private document: Document\r\n ) {\r\n this.mapLocation = \"http://20.196.1.204:81/GACS%20Location%20Images/AYC.png\";\r\n this.messageService.setStationSideMenuVisibility(true);\r\n this.clientName = AppSettings.CLIENT_NAME;\r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n // this.isLoading = false;\r\n console.log(\"\");\r\n this.loadStyle(\"client_\"+AppSettings.CLIENT_ID+\".css\");\r\n this.liveClock();\r\n this.bindAllStationsSummary(AppSettings.CLIENT_ID);\r\n this.stationService.getstationvisble();\r\n \r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.apiSubscription)\r\n this.apiSubscription.unsubscribe();\r\n \r\n }\r\n\r\n loadStyle(styleName: string) {\r\n const head = this.document.getElementsByTagName('head')[0];\r\n\r\n let themeLink = this.document.getElementById(\r\n 'client-theme'\r\n ) as HTMLLinkElement;\r\n if (themeLink) {\r\n themeLink.href = styleName;\r\n } else {\r\n const style = this.document.createElement('link');\r\n style.id = 'client-theme';\r\n style.rel = 'stylesheet';\r\n style.type='text/css';\r\n style.href = `${styleName}`;\r\n\r\n head.appendChild(style);\r\n }\r\n }\r\n\r\n liveClock() {\r\n var dAndT = new dateAndTime();\r\n\r\n setInterval(() => {\r\n var m = new Date();\r\n\r\n this.current_tile_clock.year = m.getFullYear();\r\n this.current_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(m)\r\n + \" \" +\r\n m.getDate();\r\n this.current_tile_clock.time = m.toLocaleTimeString('en-GB')\r\n\r\n }, 1);\r\n }\r\n\r\n bindAllStationsSummary(client_id) {\r\n this.isLoading = true\r\n\r\n this.apiSubscription = this.apiInerval.pipe(startWith(0)).subscribe(x => {\r\n this.stationService.getAllStationsSummary(client_id).subscribe((summary: any) => {\r\n this.isLoading = false;\r\n if (summary) {\r\n this.stations_summary = summary.StationsSummary;\r\n this.other_info = summary.Info[0];\r\n console.log( \"TestForNA\",this.stations_summary);\r\n\r\n //Set Last Updated Date\r\n var dAndT = new dateAndTime();\r\n var m = new Date(summary.Info[0].LastUpdateDate)\r\n this.updated_tile_clock.year = m.getFullYear();\r\n this.updated_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(m)\r\n + \" \" +\r\n m.getDate();\r\n this.updated_tile_clock.time = m.toLocaleTimeString('en-GB')\r\n\r\n\r\n }\r\n\r\n\r\n let WindDirection = +(this.stations_summary[0].WindDirection);\r\n\r\n if (WindDirection >= 11.25 && WindDirection < 33.75) {\r\n // console.log(\"NNE\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg');\r\n }\r\n else if (WindDirection >= 33.75 && WindDirection < 56.25) {\r\n // console.log(\"NE\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg');\r\n }\r\n else if (WindDirection >= 56.25 && WindDirection < 78.75) {\r\n // console.log(\"ENE\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg');\r\n }\r\n else if (WindDirection >= 78.75 && WindDirection < 101.25) {\r\n // console.log(\"E\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg');\r\n }\r\n else if (WindDirection >= 101.25 && WindDirection < 123.75) {\r\n // console.log(\"ESE\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg');\r\n }\r\n else if (WindDirection >= 123.75 && WindDirection < 146.25) {\r\n // console.log(\"SE\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg');\r\n }\r\n else if (WindDirection >= 146.25 && WindDirection < 168.75) {\r\n // console.log(\"SSE\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 168.75 && WindDirection < 191.25) {\r\n // console.log(\"S\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 191.25 && WindDirection < 213.75) {\r\n // console.log(\"SSW\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 213.75 && WindDirection < 236.25) {\r\n // console.log(\"SW\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 236.25 && WindDirection < 258.75) {\r\n // console.log(\"WSW\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg');\r\n }\r\n else if (WindDirection >= 258.75 && WindDirection < 281.25) {\r\n // console.log(\"W\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg');\r\n }\r\n else if (WindDirection >= 281.25 && WindDirection < 303.75) {\r\n // console.log(\"WNW\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg');\r\n }\r\n else if (WindDirection >= 303.75 && WindDirection < 326.25) {\r\n // console.log(\"NW\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg');\r\n }\r\n else if (WindDirection >= 326.25 && WindDirection < 348.75) {\r\n // console.log(\"NNW\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg');\r\n }\r\n else {\r\n // console.log(\"N\");\r\n this.SVGFile = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg');\r\n }\r\n\r\n\r\n });\r\n });\r\n }\r\n\r\n\r\n\r\n tileVisibility(station, readingType): boolean {\r\n if (station)\r\n this.menuItemVisibility = this.stationService.getAvailableReadingsForStation(station);\r\n\r\n if (readingType == \"pm_ten\") {\r\n return this.menuItemVisibility.Pm10;\r\n }\r\n else if (readingType == \"pm_two_five\") {\r\n return this.menuItemVisibility.Pm25;\r\n }\r\n else if (readingType == \"humidity\") {\r\n return this.menuItemVisibility.humidity;\r\n }\r\n else if (readingType == \"temperature\") {\r\n return this.menuItemVisibility.temperature;\r\n }\r\n else if (readingType == \"wind_speed\") {\r\n return this.menuItemVisibility.windSpeed;\r\n }\r\n else if (readingType == \"wind_direction\") {\r\n return this.menuItemVisibility.windDirection;\r\n }\r\n else if (readingType == \"noise\") {\r\n return this.menuItemVisibility.noise;\r\n }\r\n else if (readingType == \"heat_index\") {\r\n return this.menuItemVisibility.heatIndex;\r\n }\r\n else if (readingType == \"background\") {\r\n return this.menuItemVisibility.background;\r\n }\r\n\r\n return false;\r\n\r\n }\r\n\r\n}\r\n","\r\n\r\n\r\n
\r\n\r\n
\r\n \"banner\"\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n

{{clientName}} PM10 Stations Info

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

Asia/Riyadh

\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n Current Date & Time\r\n
\r\n
\r\n {{current_tile_clock.year}}\r\n
\r\n
\r\n {{current_tile_clock.monthAndDay}}\r\n
\r\n
\r\n {{current_tile_clock.time}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Last Updated Date & Time\r\n
\r\n
\r\n {{updated_tile_clock.year}}\r\n
\r\n
\r\n {{updated_tile_clock.monthAndDay}}\r\n
\r\n
\r\n {{updated_tile_clock.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\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n {{station_summary.StationName}}\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.PM10\r\n +\" µg/m³\"}}\r\n N/A\r\n \r\n
\r\n
\r\n PM10\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.PM2_5\r\n +\" µg/m³\"}}\r\n N/A\r\n \r\n
\r\n
\r\n PM2.5\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.Temperature+\" °C\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Temperature\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.Humidity+\"\r\n %\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Humidity\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.HeatIndex+\"\r\n °C\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Heat Index\r\n
\r\n *{{station_summary?.HeatIndexKeyValue}}*\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.WindSpeed+\r\n \" m/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Wind Speed\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.WindDirection+\" °\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Wind Direction\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.Noise+\"\r\n db\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Noise\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.VibrationX+\"\r\n mm/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Vmax X\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n {{station_summary.VibrationY+\"\r\n mm/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Vmax Y\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary.VibrationZ+\"\r\n mm/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Vmax Z\r\n
\r\n
\r\n\r\n\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 { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { AuthService } from 'src/app/services/auth-service/auth.service';\r\nimport { ContactUsService } from 'src/app/services/contact-us/contact-us.service';\r\nimport { LoginModalComponent } from './login-modal/login-modal.component';\r\nimport { ContactModalComponent } from './contact-modal/contact-modal.component';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n selector: 'app-home-page',\r\n templateUrl: './home-page.component.html',\r\n styleUrls: ['./home-page.component.css'],\r\n})\r\nexport class HomePageComponent implements OnInit {\r\n public height_nav: boolean = true;\r\n\r\n constructor(\r\n private authService: AuthService,\r\n private router: Router,\r\n private contactUs: ContactUsService,\r\n public dialog: MatDialog\r\n ) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n ngAfterContentInit(): void {}\r\n\r\n openLoginForm() {\r\n this.dialog.open(LoginModalComponent, {\r\n panelClass: 'custom-dialog-container',\r\n });\r\n }\r\n\r\n openContactForm() {\r\n this.dialog.open(ContactModalComponent, {\r\n panelClass: 'custom-dialog-container',\r\n });\r\n }\r\n\r\n buttontoggle() {\r\n this.height_nav = 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 GACS\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n INTRODUCING GACS CLOUD-
AUTOMATED ANALYTICS AT YOUR\r\n FINGERTIPS\r\n
\r\n

\r\n ONE PLATFORM,
MULTIPLE DATA SOURCES,
TRUSTED\r\n PARTNER
FOR DECADES.\r\n

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

\r\n CONTACT US\r\n

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

\r\n ROBUST DATA PROTECTION\r\n

\r\n

\r\n Our service are build around the latest web standards\r\n with security at the heart.\r\n

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

\r\n SECURE ACCESSIBLE FROM ANYWHERE\r\n

\r\n

\r\n Our entire interface is designed to adapt from the\r\n largest desktop computer to varying sized tablets and\r\n right-down onto your smartphone.\r\n

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

\r\n NO PLATFORM DEPENDENCY\r\n

\r\n

\r\n You get the same look and feel whether its windows,\r\n linux, iOS or Android.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n WHAT MAKES THE GACS CLOUD\r\n \r\n \r\n \r\n PLATFORM 'DIFFERENT'\r\n \r\n

\r\n Connect and upload,then monitor organise and share your sensor\r\n data with ease. GACSCloud collects data from a wide range of\r\n sensor inputs and delivers informative reports to your\r\n fingerprints, Live data can be viewd remotely on mobile devices via\r\n animated dashboards for rapid evaluation and interpretation.\r\n

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

\r\n DESKTOP. TABLET. MOBILE. ANY PLATFORM.\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
DASHBOARDS
\r\n \"\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
SECURITY OF CLOUDS
\r\n \"\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
SUPPORTED SENSORS
\r\n \"\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
APPLICATIONS
\r\n \"\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n

\r\n DASHBOARDS\r\n

\r\n

\r\n Control Meets Freedom: Unlock the Data Vault and Unleash Your Data\r\n Potential in a Secure Way\r\n

\r\n

\r\n Our services are built around the latest web standards with\r\n security at the heart. Our entire interface is designed to adapt\r\n from the largest desktop computer, to varying sized tablets and\r\n right down onto your smartphone. all this whilst remaining platform\r\n independent,so you get the same look and feel whether its Windows,\r\n Linux, iOS or Android.\r\n

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

\r\n SECURITY OF CLOUDS\r\n

\r\n

\r\n Control Meets Freedom: Unlock the Data Vault and Unleash Your Data\r\n Potential in a Secure Way\r\n

\r\n

\r\n This section will show all the security features of our web-hosted cloud site, data storage security – SSL etc.. \r\n

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

\r\n SUPPORTED SENSORS\r\n

\r\n

\r\n Control Meets Freedom: Unlock the Data Vault and Unleash Your Data\r\n Potential in a Secure Way\r\n

\r\n

\r\n This section will show all the sensors this service supports, which we will create shortly.\r\n

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

\r\n APPLICATIONS\r\n

\r\n

\r\n Control Meets Freedom: Unlock the Data Vault and Unleash Your Data\r\n Potential in a Secure Way\r\n

\r\n

\r\n This section will show all the sensors this service supports, which we will create shortly.\r\n

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

\r\n A DATA-DRIVEN
APPROACH\r\n

\r\n
\r\n

\r\n Our entire interface is designed to adapt from the largest\r\n desktop computer to varying sized tablets and right down\r\n onto your smartphone.\r\n

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

LATEST NEWS

\r\n

\r\n ANALYTICS,DATA SCIENCE AND PROCESS
AUTOMATION CONVERGENCE\r\n ESSENTIAL
FOR DIGITAL TRANSFORMATION
\r\n

\r\n

Thursday, November 05, 2020

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

\r\n MORE NEWS\r\n

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

EVENTS

\r\n

\r\n FUNDAMENTALS OF TAX AUTOMATION
TRANSFER PRICING + INDIRECT\r\n TAX
\r\n

\r\n

Thursday, November 05, 2020

\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n MORE EVENTS\r\n

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

\r\n EXPERIENCE THE POWER
\r\n OF GACS CLOUD FOR YOURSELF\r\n

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

\r\n CONTACT US\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n PRIVACY POLICY\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { Sidebar } from 'src/app/common/sidebarSelect';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\n\r\n@Component({\r\n selector: 'app-sidebar-merged',\r\n templateUrl: './sidebar-merged.component.html',\r\n styleUrls: ['./sidebar-merged.component.css'],\r\n})\r\nexport class SidebarMergedComponent implements OnInit {\r\n currentSidebar = Sidebar.main.toString();\r\n subscription: Subscription;\r\n constructor(private messageService: MessageService) {}\r\n\r\n ngOnInit(): void {\r\n this.getLastSidebar();\r\n this.sidebarSubscription();\r\n }\r\n getLastSidebar() {\r\n if(this.messageService.getLastSidebar()){\r\n this.currentSidebar = this.messageService.getLastSidebar();\r\n }\r\n }\r\n\r\n sidebarSubscription() {\r\n this.subscription = this.messageService.getSidebar().subscribe((sidebar) => {\r\n // console.log(sidebar);\r\n\r\n // console.log(typeof this.currentSidebar);\r\n this.currentSidebar = sidebar.toString();\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n this.subscription.unsubscribe();\r\n }\r\n}\r\n","
\r\n \r\n \r\n \r\n
\r\n","import { Component, OnInit ,SimpleChanges,Input } from '@angular/core';\nimport { MessageService } from 'src/app/services/general/message.service';\n\nimport { StationsService } from 'src/app/services/stations/stations.service';\nimport * as $ from 'jquery'\nimport { CsvDataService } from 'src/app/services/report/csv-data.service';\nimport { readingAvailability } from 'src/app/common/readingAvailability';\nimport { AppSettings } from 'src/settings.global'\n\n@Component({\n selector: 'app-wind-direction-report',\n templateUrl: './wind-direction-report.component.html',\n styleUrls: ['./wind-direction-report.component.css']\n})\nexport class WindDirectionReportComponent implements OnInit {\n\n\n @Input()\n dateStatus: boolean\n \n @Input()\n CurrentStation: any\n \n @Input()\n Data: any\n \n @Input()\n Period: any\n\n\n constructor(\n public messageService: MessageService\n ) { \n this.title_wind_direction = \"Wind Direction\";\n }\n\n \n\n\n public windDirectionData: any;\n public title_wind_direction: string;\n\n\n\n // ngOnChanges(changes: SimpleChanges): void{\n // debugger\n // if (changes.Data && changes.Data.currentValue) {\n // var newData = changes.Data.currentValue[0];\n\n // if (newData.WindDirectionsByDate)\n // this.windDirectionData = JSON.parse(JSON.stringify(newData.WindDirectionsByDate));\n // else\n // this.windDirectionData = null;\n // console.log(`windDirection of Each Day = `,this.windDirectionData);\n // }\n\n // }\n\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.Data && changes.Data.currentValue) {\n const newData = changes.Data.currentValue;\n \n if (newData.WindDirectionsByDate) {\n this.windDirectionData = JSON.parse(JSON.stringify(newData.WindDirectionsByDate));\n } else {\n this.windDirectionData = null;\n }\n console.log(`Wind Direction Data: `, this.windDirectionData);\n }\n }\n \n\n\n\n\n ngOnInit(): void {\n var station = this.messageService.getLastStation();\n }\n\n}\n","\n\n\n\n\n\n
\n \n \n
\n \n \n \n
\n\n
\n\n","import { Component, OnInit } from '@angular/core';\r\nimport { dateAndTime } from 'src/app/common/dateAndTime';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { RegulationService } from 'src/app/services/regulation/regulation.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\n\r\n@Component({\r\n selector: 'app-regulation-report',\r\n templateUrl: './regulation-report.component.html',\r\n styleUrls: ['./regulation-report.component.css']\r\n})\r\nexport class RegulationReportComponent implements OnInit {\r\n\r\n public currentStation: any;\r\n public allRegulations: any;\r\n public period: Number = 0;\r\n public datetime: dateAndTime\r\n public reportTitle: string\r\n public years: Number[] = [];\r\n public selectedRegulationId: any;\r\n public regulationReport: any;\r\n\r\n constructor(\r\n private regulationService: RegulationService,\r\n private stationsService: StationsService,\r\n private messageService: MessageService,\r\n private ebamDataService: EbamDataService,\r\n ) {\r\n this.init();\r\n this.getCurrentstation();\r\n this.fetchRegulations();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n fetchRegulations() {\r\n this.regulationService.getAllRegulations().subscribe(regulations => {\r\n this.allRegulations = regulations;\r\n if (regulations) {\r\n this.selectedRegulationId = regulations[0].RegulationId;\r\n }\r\n });\r\n }\r\n getCurrentstation() {\r\n this.currentStation = this.messageService.getLastStation();\r\n }\r\n\r\n init() {\r\n this.datetime = new dateAndTime();\r\n\r\n var currentYear = new Date().getFullYear();\r\n for (let index = currentYear; index >= currentYear - 4; index--) {\r\n this.years.push(index)\r\n }\r\n if (this.years) {\r\n this.period = this.years[0]\r\n }\r\n }\r\n\r\n onPeriodChange(period) {\r\n this.period = period;\r\n }\r\n\r\n onRegulationChange(regulationId) {\r\n this.selectedRegulationId = regulationId;\r\n }\r\n\r\n getRegulationReport() {\r\n this.regulationService.getRegulationReport(this.currentStation.Id,\r\n this.selectedRegulationId,\r\n this.period).subscribe(res => {\r\n this.regulationReport = res;\r\n })\r\n\r\n this.reportTitle = \"Regulation Report of \" + this.period\r\n }\r\n\r\n}\r\n","\r\n
\r\n\r\n
\r\n \"banner\"\r\n

{{currentStation.Name}} - Regulation Report

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

Report

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

{{reportTitle}}

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
SLPollutants{{regulationReport[0].Regulations[0].RegulationName}}
Max. LimitsTotal Allowed ExceedencesActual Exceedences
Measurement Periodµg/m3
1{{regulationReport[0].Regulations[0].PollutantName}}{{regulationReport[0].Regulations[0].Period}}{{regulationReport[0].Regulations[0][\"[μg / m3]\"]}}{{regulationReport[0].Regulations[0].Exceedances}}{{regulationReport[0].ExceedancesTimesCount[0].TwentyFourHours}} Times
2{{regulationReport[0].Regulations[1].PollutantName}}{{regulationReport[0].Regulations[1].Period}}{{regulationReport[0].Regulations[1][\"[μg / m3]\"]}}{{regulationReport[0].Regulations[1].Exceedances}} NA
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n","export class CsvDataService {\r\n static exportToCsv(filename: string, rows: object[]) {\r\n if (!rows || !rows.length) {\r\n return;\r\n }\r\n const separator = ',';\r\n const keys = Object.keys(rows[0]);\r\n const csvData =\r\n keys.join(separator) +\r\n '\\n' +\r\n rows.map(row => {\r\n return keys.map(k => {\r\n let cell = row[k] === null || row[k] === undefined ? '' : row[k];\r\n cell = cell instanceof Date\r\n ? cell.toLocaleString()\r\n : cell.toString().replace(/\"/g, '\"\"');\r\n if (cell.search(/(\"|,|\\n)/g) >= 0) {\r\n cell = `\"${cell}\"`;\r\n }\r\n return cell;\r\n }).join(separator);\r\n }).join('\\n');\r\n\r\n const blob = new Blob([csvData], { type: 'text/csv;charset=utf-8;' });\r\n if (navigator.msSaveBlob) { // IE 10+\r\n navigator.msSaveBlob(blob, filename);\r\n } else {\r\n const link = document.createElement('a');\r\n if (link.download !== undefined) {\r\n // Browsers that support HTML5 download attribute\r\n const url = URL.createObjectURL(blob);\r\n link.setAttribute('href', url);\r\n link.setAttribute('download', filename);\r\n link.style.visibility = 'hidden';\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n }\r\n }\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatRippleModule } from '@angular/material/core';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport {MatCardModule} from '@angular/material/card';\r\nimport {MatIconModule} from '@angular/material/icon';\r\nimport {MatCheckboxModule} from '@angular/material/checkbox';\r\nimport {MatSelectModule} from '@angular/material/select';\r\n\r\n\r\n\r\nconst material = [\r\n MatPaginatorModule,\r\n MatTableModule,\r\n MatDialogModule,\r\n MatButtonModule,\r\n MatInputModule,\r\n MatRippleModule,\r\n MatFormFieldModule,\r\n MatCardModule,\r\n MatIconModule,\r\n MatCheckboxModule,\r\n MatSelectModule\r\n];\r\n\r\n@NgModule({\r\n imports: [material],\r\n exports: [material]\r\n})\r\nexport class MaterialModule {}\r\n","import { Component, EventEmitter, OnInit, Output } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service'\r\n\r\n@Component({\r\n selector: 'app-navbar',\r\n templateUrl: './navbar.component.html',\r\n styleUrls: ['./navbar.component.css']\r\n})\r\nexport class NavbarComponent implements OnInit {\r\n\r\n\r\n public stations: any;\r\n public selectedStation: any;\r\n public isVisible: boolean\r\n subscription: Subscription;\r\n public station: any;\r\n stationSubscription: Subscription;\r\n\r\n\r\n\r\n constructor(\r\n private stationService: StationsService,\r\n private messageService: MessageService) {\r\n this.isVisible = false;\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n this.setLastStationOnReload();\r\n this.subscribeToStationChange();\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription)\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n\r\n setLastStationOnReload() {\r\n var lastUsedStation = this.messageService.getLastStation();\r\n if (lastUsedStation)\r\n this.station = lastUsedStation;\r\n }\r\n\r\n subscribeToStationChange() {\r\n this.stationSubscription = this.messageService.getStationChange().subscribe(station => {\r\n if (station) {\r\n this.station = station;\r\n }\r\n });\r\n }\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \"user\"\r\n User\r\n
\r\n
\r\n \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 { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-admin-navbar',\r\n templateUrl: './admin-navbar.component.html',\r\n styleUrls: ['./admin-navbar.component.css']\r\n})\r\nexport class AdminNavbarComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \"user\"\r\n User\r\n
\r\n
\r\n \r\n
\r\n \r\n
\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 { ChangeDetectorRef, Component, Input, NgZone, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { Subscription } from 'rxjs';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport * as $ from 'jquery'\r\nimport { CsvDataService } from 'src/app/services/report/csv-data.service';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n\r\n@Component({\r\n selector: 'app-basic-report',\r\n templateUrl: './basic-report.component.html',\r\n styleUrls: ['./basic-report.component.css']\r\n})\r\nexport class BasicReportComponent implements OnInit, OnChanges {\r\n\r\n //Added 01-08-2025\r\n @Input() graphsRequired: any;\r\n\r\n @Input() chkWindDirection: boolean ;\r\n\r\n\r\n\r\n @Input()\r\n dateStatus: boolean\r\n\r\n @Input()\r\n CurrentStation: any\r\n\r\n @Input()\r\n Data: any\r\n\r\n @Input()\r\n Period: any\r\n public currentStation: any;\r\n public page_report: boolean = false;\r\n public TableVibrationEvent: any;\r\n\r\n public title_pm10: string;\r\n public title_temperature: string;\r\n public title_humidity: string;\r\n public title_wind_speed: string;\r\n public title_wind_direction: string;\r\n public title_wind_direction_10m: string;\r\n public title_pm25: string;\r\n public titile_noise: string;\r\n public title_background_noise: string;\r\n public title_event_noise: string;\r\n public title_HeatIndex:string;\r\n public title_SolarRadiation:any;\r\n public title_SolarRadiation_DHI:any;\r\n public title_WBGT:any;\r\n public title_wind_speed_two:any;\r\n public title_wind_directiontwo:any;\r\n public title_dew_point_temp:any;\r\n public title_soil_tempersture:any;\r\n public title_wetbulb_tempersture:any;\r\n public title_BarometricPressure:any;\r\n public title_VWC:any;\r\n public title_ElectricalC:any;\r\n public title_CloudCover:any;\r\n public title_Rain:any;\r\n public title_Visibility:any;\r\n\r\n public currentPopupGraph = \"none\";\r\n public isLoading: boolean = false;\r\n\r\n\r\n public pm10Data: any;\r\n public pm25data: any;\r\n public temperatureData: any;\r\n public humidityData: any;\r\n public windSpeedData: any;\r\n\r\n public windDirectionData: any;\r\n\r\n\r\n //public windDirection: any;\r\n\r\n\r\n public NoiseData: any;\r\n public VibrationBackgroundData: any;\r\n public VibrationEventData: any;\r\n public period: any;\r\n public VibrationEventDataNew:any;\r\n public heatIndexData:any;\r\n public SolarRadiationData:any;\r\n public SolarRadiationDHIData:any;\r\n public WBGTData:any;\r\n public WindSpeed2mData:any;\r\n public WindSpeedAndAngleData:any;\r\n public angleAndDirections2mData:any;\r\n public barometricPressureData:any;\r\n public duePointTemperatureData:any;\r\n public soilTemperatureData:any;\r\n public wetBulbTemperatureData:any;\r\n public windSpeed2m10m:any;\r\n public windSpeed2m:any;\r\n public windSpeed10m:any;\r\n public Temperature2m10m:any;\r\n public Temperature2m:any;\r\n public Humidity2m10m:any;\r\n public Humidity2m:any;\r\n public WindDirection2m10m:any;\r\n public VWContent:any;\r\n public ElectriaclCdata:any;\r\n public CloudCoverData:any;\r\n public Visibilitydata:any;\r\n public RainData:any;\r\n public WindDirection2m:any;\r\n public WindDirection10m:any;\r\n\r\n\r\n public RainLabelY:any;\r\n\r\n public Maxval:Number;\r\n public ClientId:any = +AppSettings.CLIENT_ID;\r\n \r\n public menuItemVisibility: readingAvailability;\r\n\r\n stationSubscription: Subscription;\r\n\r\n constructor(\r\n private ebamDataService: EbamDataService,\r\n public messageService: MessageService,\r\n private stationService: StationsService,\r\n private stationsService: StationsService,\r\n ) {\r\n this.getCurrentstation();\r\n this.page_report = true;\r\n\r\n\r\n this.title_pm10 = \"PM10\";\r\n this.title_temperature = \"Temperature\";\r\n this.title_humidity = \"Humidity\";\r\n this.title_wind_speed = \"Wind Speed\";\r\n this.title_wind_direction = \"Wind Direction\";\r\n this.title_wind_direction_10m = \"Wind Direction 10 m\";\r\n this.title_pm25 = \"PM2.5\";\r\n this.titile_noise = \"Noise\";\r\n this.title_background_noise = \"Vibration Background\";\r\n this.title_event_noise = \"Vibration Event\";\r\n this.title_HeatIndex = \"Heat Index\";\r\n this.title_SolarRadiation = \"Solar Radiation GHI\";\r\n this.title_SolarRadiation_DHI = \"Solar Radiation DHI\";\r\n this.title_WBGT = \"WBGT\";\r\n this.title_wind_speed_two = \"Wind Speed 2 m\";\r\n this.title_wind_directiontwo = \"Wind Direction 2 m\";\r\n this.title_dew_point_temp = \"Dew Point Temperature\";\r\n this.title_soil_tempersture = \"Soil Temperature\";\r\n this.title_wetbulb_tempersture = \"Wet Bulb Temperature\";\r\n this.title_BarometricPressure = \"Barometric Pressure\";\r\n this.title_VWC = \"Volumetric water content\";\r\n this.title_ElectricalC = \"Electrical conductivity\";\r\n this.title_CloudCover = \"Cloud Cover\";\r\n this.title_Rain = \"Rain\";\r\n this.title_Visibility = \"Visibility\";\r\n\r\n this.Maxval = 600;\r\n\r\n\r\n \r\n\r\n }\r\n getCurrentstation() {\r\n this.currentStation = this.messageService.getLastStation();\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.period = this.Period;\r\n\r\n if (this.period == 'daily') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'today') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'yesterday') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'thisWeek') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'lastWeek') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'thisMonth') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'lastMonth') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'thisYear') {\r\n this.RainLabelY = \"Rain ( mm/month )\"\r\n }\r\n else if (this.period == 'lastYear') {\r\n this.RainLabelY = \"Rain ( mm/month )\"\r\n }\r\n else if (this.period == 'Week') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n }\r\n else if (this.period == 'Month') {\r\n this.RainLabelY = \"Rain ( mm/day )\"\r\n \r\n }\r\n else if (this.period == 'Year') {\r\n this.RainLabelY = \"Rain ( mm/month )\"\r\n }\r\n\r\n\r\n if (changes.Data && changes.Data.currentValue) {\r\n var newData = changes.Data.currentValue[0];\r\n\r\n if (newData.PM10)\r\n this.pm10Data = newData.PM10;\r\n else\r\n this.pm10Data = null;\r\n if (newData.PM2_5)\r\n this.pm25data = newData.PM2_5;\r\n else\r\n this.pm25data = null;\r\n\r\n if (newData.Temperature)\r\n this.temperatureData = JSON.parse(JSON.stringify(newData.Temperature));\r\n else\r\n this.temperatureData = null;\r\n\r\n if (newData.Humidity)\r\n this.humidityData = JSON.parse(JSON.stringify(newData.Humidity));\r\n else\r\n this.humidityData = null;\r\n\r\n if (newData.WindSpeed)\r\n this.windSpeedData = JSON.parse(JSON.stringify(newData.WindSpeed));\r\n else\r\n this.windSpeedData = null;\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n // if (newData.WindSpeedAndAngle)\r\n // this.windDirectionData = newData.WindSpeedAndAngle;\r\n // else\r\n // this.windDirectionData = null;\r\n // console.log(`windDirection = `,this.windDirectionData);\r\n\r\n\r\n\r\n if (newData.WindSpeedAndAngle)\r\n this.windDirectionData = JSON.parse(JSON.stringify(newData.WindSpeedAndAngle));\r\n else\r\n this.windDirectionData = null;\r\n console.log(`windDirection = `,this.windDirectionData);\r\n\r\n\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 (newData.Noise) {\r\n this.NoiseData = JSON.parse(JSON.stringify(newData.Noise));\r\n }\r\n else\r\n this.NoiseData = null;\r\n\r\n if (newData.vibrationBackgrounds)\r\n this.VibrationBackgroundData = JSON.parse(JSON.stringify(newData.vibrationBackgrounds));\r\n else\r\n this.VibrationBackgroundData = null;\r\n\r\n if (newData.vibrationEvent)\r\n this.VibrationEventData = JSON.parse(JSON.stringify(newData.vibrationEvent));\r\n else\r\n this.VibrationEventData = null;\r\n\r\n if (newData.HeatIndex)\r\n this.heatIndexData = JSON.parse(JSON.stringify(newData.HeatIndex));\r\n else\r\n this.heatIndexData = null;\r\n\r\n if (newData.SolarRadiation)\r\n this.SolarRadiationData = JSON.parse(JSON.stringify(newData.SolarRadiation));\r\n else\r\n this.SolarRadiationData = null;\r\n \r\n if (newData.solarRadiationDHI)\r\n this.SolarRadiationDHIData = JSON.parse(JSON.stringify(newData.solarRadiationDHI));\r\n else\r\n this.SolarRadiationDHIData = null;\r\n\r\n if (newData.WBGT)\r\n this.WBGTData = JSON.parse(JSON.stringify(newData.WBGT));\r\n else\r\n this.WBGTData = null;\r\n\r\n if (newData.WindSpeed2m)\r\n this.WindSpeed2mData = JSON.parse(JSON.stringify(newData.WindSpeed2m));\r\n else\r\n this.WindSpeed2mData = null;\r\n\r\n if (newData.WindSpeedAndAngle)\r\n {\r\n this.WindSpeedAndAngleData = JSON.parse(JSON.stringify(newData.WindSpeedAndAngle));\r\n if(this.WindSpeedAndAngleData.length==0)\r\n {\r\n this.title_wind_direction_10m=\"Wind Direction\";\r\n this.title_wind_directiontwo=\"Wind Direction\";\r\n }\r\n }\r\n \r\n else\r\n {\r\n this.WindSpeedAndAngleData = null;\r\n }\r\n \r\n \r\n if (newData.angleAndDirections2m)\r\n {\r\n this.angleAndDirections2mData = JSON.parse(JSON.stringify(newData.angleAndDirections2m));\r\n if(this.angleAndDirections2mData.length==0)\r\n {\r\n this.title_wind_direction_10m=\"Wind Direction\";\r\n this.title_wind_directiontwo=\"Wind Direction\";\r\n }\r\n }\r\n \r\n else\r\n {\r\n this.angleAndDirections2mData = null;\r\n\r\n }\r\n \r\n\r\n if (newData.barometricPressure)\r\n this.barometricPressureData = JSON.parse(JSON.stringify(newData.barometricPressure));\r\n else\r\n this.barometricPressureData = null;\r\n\r\n if (newData.windDirection2m)\r\n this.WindDirection2m = JSON.parse(JSON.stringify(newData.windDirection2m));\r\n else\r\n this.WindDirection2m = null;\r\n\r\n if (newData.windDirection10m)\r\n this.WindDirection10m = JSON.parse(JSON.stringify(newData.windDirection10m));\r\n else\r\n this.WindDirection10m = null;\r\n\r\n if (newData.duePointTemperature)\r\n this.duePointTemperatureData = JSON.parse(JSON.stringify(newData.duePointTemperature));\r\n else\r\n this.duePointTemperatureData = null;\r\n\r\n if (newData.soilTemperature)\r\n this.soilTemperatureData = JSON.parse(JSON.stringify(newData.soilTemperature));\r\n else\r\n this.soilTemperatureData = null;\r\n\r\n if (newData.wetBulbTemperature)\r\n this.wetBulbTemperatureData = JSON.parse(JSON.stringify(newData.wetBulbTemperature));\r\n else\r\n this.wetBulbTemperatureData = null;\r\n\r\n if (newData.WindSpeed2mand10m)\r\n this.windSpeed2m10m = JSON.parse(JSON.stringify(newData.WindSpeed2mand10m));\r\n else\r\n this.windSpeed2m10m = null;\r\n\r\n if (newData.WindSpeed2m)\r\n this.windSpeed2m = JSON.parse(JSON.stringify(newData.WindSpeed2m));\r\n else\r\n this.windSpeed2m = null;\r\n if (newData.WindSpeed10m)\r\n this.windSpeed10m = JSON.parse(JSON.stringify(newData.WindSpeed10m));\r\n else\r\n this.windSpeed10m = null;\r\n\r\n if (newData.Temperature2mand10m)\r\n this.Temperature2m10m = JSON.parse(JSON.stringify(newData.Temperature2mand10m));\r\n else\r\n this.Temperature2m10m = null;\r\n\r\n if (newData.Temperature2m)\r\n this.Temperature2m = JSON.parse(JSON.stringify(newData.Temperature2m));\r\n else\r\n this.Temperature2m = null;\r\n\r\n if (newData.Humidity2mand10m)\r\n this.Humidity2m10m = JSON.parse(JSON.stringify(newData.Humidity2mand10m));\r\n else\r\n this.Humidity2m10m = null;\r\n if (newData.Humidity2m)\r\n this.Humidity2m = JSON.parse(JSON.stringify(newData.Humidity2m));\r\n else\r\n this.Humidity2m = null;\r\n\r\n if (newData.windDirection2mand10m)\r\n this.WindDirection2m10m = JSON.parse(JSON.stringify(newData.windDirection2mand10m));\r\n else\r\n this.WindDirection2m10m = null;\r\n if (newData.VWContent)\r\n this.VWContent = JSON.parse(JSON.stringify(newData.VWContent));\r\n else\r\n this.VWContent = null;\r\n\r\n if (newData.Electrical_Conductivity)\r\n this.ElectriaclCdata = JSON.parse(JSON.stringify(newData.Electrical_Conductivity));\r\n else\r\n this.ElectriaclCdata = null;\r\n\r\n if (newData.CS136_Lowest_Data)\r\n this.CloudCoverData = JSON.parse(JSON.stringify(newData.CS136_Lowest_Data));\r\n else\r\n this.CloudCoverData = null;\r\n\r\n if (newData.Visibility)\r\n this.Visibilitydata = JSON.parse(JSON.stringify(newData.Visibility));\r\n else\r\n this.Visibilitydata = null;\r\n\r\n if (newData.Rain)\r\n this.RainData = JSON.parse(JSON.stringify(newData.Rain));\r\n else\r\n this.RainData = null;\r\n\r\n\r\n }\r\n }\r\n\r\n\r\n ngAfterViewInit(): void {\r\n\r\n this.getPast24Data(this.CurrentStation);\r\n }\r\n\r\n\r\n ngOnInit(): void {\r\n $('#graphModal').appendTo(\"body\");\r\n var station = this.messageService.getLastStation();\r\n this.menuItemVisibility = this.stationsService.getAvailableReadingsForStation(station);\r\n console.log(this.menuItemVisibility)\r\n }\r\n\r\n ngOnDestroy() {\r\n $('#graphModal').remove();\r\n }\r\n\r\n getPast24Data(selectedStation) {\r\n\r\n\r\n\r\n // if (selectedStation) {\r\n\r\n // var readingAvailability = this.stationService.getAvailableReadingsForStation(selectedStation);\r\n\r\n // var subscription = this.ebamDataService.getEbamDataPM10(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.pm10Data = res;\r\n // });\r\n\r\n // subscription = this.ebamDataService.getEbamDataTemprature(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.temperatureData = res;\r\n // });\r\n // subscription = this.ebamDataService.getEbamDataHumidity(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.humidityData = res;\r\n // });\r\n // subscription = this.ebamDataService.getEbamDataWindSpeed(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.windSpeedData = res;\r\n // });\r\n // if (readingAvailability.windDirection) {\r\n // subscription = this.ebamDataService.getEbamDataWindRose(selectedStation.Id, 24).subscribe((res: any) => {\r\n // if (res && res.length > 0)\r\n // this.windDirectionData = res;\r\n // });\r\n // }\r\n // }\r\n\r\n }\r\n\r\n\r\n openGraphPopUp(graphType) {\r\n this.currentPopupGraph = graphType;\r\n }\r\n onEventSelected(id) {\r\n this.isLoading = true;\r\n this.ebamDataService.getEventGraphData(id).subscribe((res: any) => {\r\n if (res && res.length > 0) {\r\n this.VibrationEventDataNew = res;\r\n this.currentPopupGraph = \"event-graph\";\r\n this.isLoading = 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\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n
\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \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 { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\n@Component({\r\n selector: 'app-popup-modal',\r\n templateUrl: './popup-modal.component.html',\r\n styleUrls: ['./popup-modal.component.scss']\r\n})\r\nexport class PopupModalComponent implements OnInit {\r\n\r\n constructor(private router: Router) { }\r\n\r\n ngOnInit(): void {\r\n }\r\n \r\n}\r\n","
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Error!

User name already exists.

\r\n
\r\n
\r\n","import { Component, OnInit, Optional, Inject } from '@angular/core';\r\nimport { FormBuilder, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { PasswordForgotService } from 'src/app/services/passwordforgot/password-forgot.service';\r\nimport { ResetPasswordComponent } from '../reset-password/reset-password.component';\r\n\r\n@Component({\r\n selector: 'app-otp-modal',\r\n templateUrl: './otp-modal.component.html',\r\n styleUrls: ['./otp-modal.component.css']\r\n})\r\n\r\nexport class OtpModalComponent implements OnInit {\r\n otpconfirm;\r\n errorMessage: string;\r\n email: string;\r\n errorMsg: boolean = false;\r\n\r\n constructor(\r\n\r\n\r\n private fb: FormBuilder,\r\n private otpService: PasswordForgotService,\r\n private router: Router,\r\n public dialog: MatDialog,\r\n private dialogRef: MatDialogRef,\r\n @Optional() @Inject(MAT_DIALOG_DATA) public data: any\r\n ) {\r\n this.email = data.EmailID;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.otpconfirm = this.fb.group({\r\n\r\n otp: [\"\", [Validators.required]]\r\n });\r\n }\r\n onSubmit() {\r\n this.otpService\r\n .OtpConfirm(\r\n this.email,\r\n this.otpconfirm.value.otp,\r\n )\r\n .subscribe((res) => {\r\n console.log(res);\r\n if (res) {\r\n this.errorMessage = '';\r\n this.dialogRef.close();\r\n this.dialog.open(ResetPasswordComponent, {\r\n panelClass: 'custom-dialog-container',\r\n data: { EmailID: this.email }\r\n });\r\n }\r\n else {\r\n this.errorMessage = \"Try Again\";\r\n }\r\n\r\n }, ((error) => {\r\n ResetPasswordComponent\r\n if (error.status == 400) { this.errorMessage = error.error; }\r\n else { this.errorMessage = \"Try Again!\" }\r\n }\r\n ));\r\n }\r\n myClickFunction(event: any){\r\n this.errorMessage=\"\";\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n
\r\n

OTP Confirm

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Enter OTP\r\n
\r\n \r\n \r\n \r\n OTP is required\r\n OTP is in correct please try again\r\n \r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{ errorMessage }}\r\n \r\n \r\n Submit\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n ","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class UserGroupService {\r\n private readonly userGroup_url = AppSettings.API_END_POINT + 'UserGroup';\r\n\r\n constructor(private http: HttpClient) {}\r\n\r\n getUserGroup(clientId, userGroupId) {\r\n return this.http.get(\r\n this.userGroup_url +\r\n `?ClientId=` +\r\n clientId +\r\n `&UserGroupId=` +\r\n userGroupId\r\n );\r\n }\r\n\r\n getAllUserGroups(clientId) {\r\n return this.http.get(this.userGroup_url + `?ClientId=` + clientId);\r\n }\r\n\r\n createUserGroup(userGroupData) {\r\n return this.http.post(this.userGroup_url, userGroupData);\r\n }\r\n\r\n updateUserGroup(userGroupUpdatedData) {\r\n return this.http.put(this.userGroup_url, userGroupUpdatedData);\r\n }\r\n\r\n deleteUserGroup(userGroupId) {\r\n return this.http.delete(this.userGroup_url + `?UserGroupId=` + userGroupId);\r\n }\r\n}\r\n","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { RegulationService } from 'src/app/services/regulation/regulation.service';\r\nimport { Chart } from 'chart.js';\r\nimport * as moment from 'moment';\r\nimport { HttpClient, HttpHeaders, HttpHeaderResponse } from '@angular/common/http';\r\n// import { saveAs } from 'file-saver';\r\nimport * as fileSaver from 'file-saver';\r\nimport { map } from 'rxjs/operators';\r\nimport { DownloadPDFService } from 'src/app/services/report/download-pdf.service';\r\nimport { timer } from 'rxjs';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport {Title} from \"@angular/platform-browser\";\r\nimport Swal from 'sweetalert2';\r\nimport { Router } from '@angular/router';\r\n\r\n\r\n@Component({\r\n selector: 'app-daily-report',\r\n templateUrl: './daily-report.component.html',\r\n styleUrls: ['./daily-report.component.css']\r\n})\r\nexport class DailyReportComponent implements OnInit {\r\n\r\n public currentStation: any;\r\n public dateFrom: Date = new Date((new Date()).valueOf() - 1000*60*60*24);\r\n public selectedyear:any;\r\n \r\n public dateTime;\r\n public client_id = AppSettings.CLIENT_ID;\r\n public client_url_bottom = \"www.gacscloud.com\";\r\n visible: boolean;\r\n public now: Date = new Date();\r\n\r\n public TableTemperature: any;\r\n public TablePM10: any;\r\n public TableHumidity: any;\r\n public TableWindSpeed: any;\r\n\r\n public graph_stations_name: any;\r\n public graph_stations_name_temp:any;\r\n public graph_stations_name_twenty_four:any;\r\n public graph_stations_name_wind_direction:any;\r\n public graph_stations_name_humidity: any;\r\n public graph_station_name_vibration:any;\r\n public graph_station_name_noise:any;\r\n\r\n\r\n ////////////////////////////////////REGULATION DROPDOWN VARIABLES//////////////////////////////////////////////////////////////\r\n public allRegulations: any;\r\n public selectedRegulation: any;\r\n public selectedRegulationId: any;\r\n public selectedRegulationName: any;\r\n public selectedRegulationFlag: boolean = false;\r\n //////////////////////////////////////////////////////////////////////////////////////////////////////\r\n public ClientNameBind:any;\r\n public ClientID:number;\r\n //////////////////////////////////////PM10 COMPLIANCE VARIABLES/////////////////////////////////////////////////\r\n AYC_PM10_RV: any;\r\n AYC_PM10_RV_status: any;\r\n DGDA_PM10_RV: any;\r\n DGDA_PM10_RV_status: any;\r\n NORTH_PM10_RV: any;\r\n NORTH_PM10_RV_status: any;\r\n SOUTH_PM10_RV: any;\r\n SOUTH_PM10_RV_status: any;\r\n //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\r\n\r\n //////////////////////////////////////LAST TWENTY DAYS LABEL//////////////////////////////////////////////////////////\r\n AYC_PM10_LastTwentyDays: any;\r\n AYC_PM10_LastTwentyDays_Graph: any;\r\n PM10_LastTwentyDays_Label: any;\r\n\r\n DGDA_PM10_LastTwentyDays: any;\r\n DGDA_PM10_LastTwentyDays_Graph: any;\r\n\r\n NORTH_PM10_LastTwentyDays: any;\r\n NORTH_PM10_LastTwentyDays_Graph: any;\r\n\r\n SOUTH_PM10_LastTwentyDays: any;\r\n SOUTH_PM10_LastTwentyDays_Graph: any;\r\n ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\r\n\r\n //////////////////////////////////////////LAST 24HRS PM10-1Hr REPORT///////////////////////////////////////////////////\r\n AYC_PM10_1H: any;\r\n AYC_PM10_1H_Graph: any;\r\n AYC_PM10_1H_Label: any;\r\n AYC_Wind_Value: any;\r\n AYC_Wind_Directions: any;\r\n\r\n\r\n DGDA_PM10_1H: any;\r\n DGDA_Wind_Directions: any;\r\n DGDA_Wind_Value: any;\r\n DGDA_PM10_1H_Graph: any;\r\n\r\n NORTH_PM10_1H: any;\r\n NORTH_PM10_1H_Graph: any;\r\n NORTH_Wind_Value: any;\r\n NORTH_Wind_Directions: any;\r\n\r\n\r\n SOUTH_PM10_1H: any;\r\n SOUTH_PM10_1H_Graph: any;\r\n SOUTH_Wind_Value: any;\r\n SOUTH_Wind_Directions: any;\r\n\r\n ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\r\n\r\n /////////////////////////////////////LAST UPDATE DAILY VARIABLES///////////////////////////////////////////////////////////\r\n AYC_LastUpdateDaily: any;\r\n AYC_LastUpdateDaily_status: boolean = false;\r\n DGDA_LastUpdateDaily: any;\r\n DGDA_LastUpdateDaily_status: boolean = false;\r\n NORTH_LastUpdateDaily: any;\r\n NORTH_LastUpdateDaily_status: boolean = false;\r\n SOUTH_LastUpdateDaily: any;\r\n SOUTH_LastUpdateDaily_status: boolean = false;\r\n /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////\r\n\r\n\r\n DGDA_RangeTwentyFour: number;\r\n DGDA_RangeAnnuval: number;\r\n\r\n AYC_RangeAnnuval_status: boolean;\r\n DGDA_RangeAnnuval_status: boolean;\r\n NORTH_RangeAnnuval_status: boolean;\r\n SOUTH_RangeAnnuval_status: boolean;\r\n\r\n AYC_RangeTwentyFour_status: boolean;\r\n AYC_RangeTwentyFour_Null_status: boolean;\r\n AYC_Annual_Null_status: boolean;\r\n\r\n DGDA_RangeTwentyFour_status: boolean;\r\n DGDA_RangeTwentyFour_Null_status: boolean;\r\n DGDA_Annual_Null_status: boolean;\r\n\r\n NORTH_RangeTwentyFour_status: boolean;\r\n NORTH_RangeTwentyFour_Null_status: boolean;\r\n NORTH_Annual_Null_status: boolean;\r\n\r\n SOUTH_RangeTwentyFour_status: boolean;\r\n SOUTH_RangeTwentyFour_Null_status: boolean;\r\n SOUTH_Annual_Null_status: boolean;\r\n public title_wind_speed=\"Wind Speed\";\r\n public windSpeedDt:any;\r\n public Chart_Flag: boolean = false;\r\n public Wind_Chart;\r\n public Humidity_Chart;\r\n public Temerature_Chart;\r\n public Chart24Hrs;\r\n public Chart20Days;\r\n public Vibration_Chart_Daily;\r\n public Noise_Chart;\r\n public Wind_Speed_Chart_Graph;\r\n public WindSpeed_Chart_Label :any;\r\n public DGDA_WindSpeed_Chart_Value :any;\r\n\r\n public Temperature_Chart_Label: any;\r\n public DGDA_Temperature_Chart_Value: any;\r\n public SOUTH_Temperature_Chart_Value: any;\r\n public NORTH_Temperature_Chart_Value: any;\r\n public AYC_Temperature_Chart_Value: any;\r\n\r\n\r\n public report_table_data: any;\r\n public twenty_four_report: any;\r\n public last_twenty_data: any;\r\n\r\n\r\n public datafortablewind: any;\r\n\r\n public windRoseData:any;\r\n\r\n public Vibration_Chart_Label:any;\r\n public Noise_Chart_Label: any;\r\n public DGDA_vibration_Chart_Value: any;\r\n public SOUTH_Vibration_Chart_Value: any;\r\n public NORTH_Vibration_Chart_Value: any;\r\n public AYC_Vibration_Chart_Value: any;\r\n\r\n public DGDA_Noise_Chart_Value: any;\r\n public SOUTH_Noise_Chart_Value: any;\r\n public NORTH_Noise_Chart_Value: any;\r\n public AYC_Noise_Chart_Value: any;\r\n\r\n public DGDA_Humidity_Chart_Value: any;\r\n public SOUTH_Humidity_Chart_Value: any;\r\n public NORTH_Humidity_Chart_Value: any;\r\n public AYC_Humidity_Chart_Value: any;\r\n public DGDA_Humidity:any;\r\n public Humidity_Chart_Label:any;\r\n\r\n public IsDesable:boolean;\r\n \r\n\r\n constructor(\r\n private regulationService: RegulationService,\r\n private messageService: MessageService,\r\n private http: HttpClient,\r\n private titleService:Title,\r\n private router: Router\r\n \r\n\r\n ) {\r\n this.init();\r\n this.getCurrentstation();\r\n this.fetchRegulations();\r\n if(AppSettings.CLIENT_ID==1)\r\n {\r\n this.titleService.setTitle(\"Diriyah_Daily_Report_\"+moment().format(\"Do_MMM_YYYY\"));\r\n }\r\n else if(AppSettings.CLIENT_ID==2)\r\n {\r\n this.titleService.setTitle(\"KEO_Daily_Report_\"+moment().format(\"Do_MMM_YYYY\"));\r\n }\r\n \r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n this.selectedRegulationId = 1;\r\n this.selectedRegulationName = \"GAMEP(PME)\";\r\n this.visible = false;\r\n this.getTodayDateTIme();\r\n this.ClientID = AppSettings.CLIENT_ID;\r\n \r\n if(this.ClientID==1)\r\n {\r\n this.ClientNameBind=\"AL YAMAMA -DIRIYAH\";\r\n this.IsDesable=false;\r\n }\r\n if(this.ClientID==2)\r\n {\r\n this.ClientNameBind=\"KEO\";\r\n this.IsDesable=true;\r\n }\r\n\r\n }\r\n \r\n ngOnDestroy() {\r\n this.titleService.setTitle(\"GACSweb\");\r\n this.datafortablewind=\"\";\r\n }\r\n\r\n fetchRegulations() {\r\n this.regulationService.getAllRegulations().subscribe(regulations => {\r\n this.allRegulations = regulations;\r\n });\r\n }\r\n handleChange(index) {\r\n this.selectedRegulation = index;\r\n let x = this.allRegulations[index];\r\n this.selectedRegulationId = x.RegulationId;\r\n }\r\n\r\n\r\n getCurrentstation() {\r\n this.currentStation = this.messageService.getLastStation();\r\n }\r\n\r\n init() {\r\n\r\n }\r\n\r\n startDateChange(e) {\r\n \r\n this.dateTime = e;\r\n if (this.Chart_Flag) {\r\n this.resetChart();\r\n }\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n getTodayDateTIme() {\r\n // let start = moment().format(\"YYYY-MM-DDTHH:mm\");\r\n // this.dateTime = new Date(start+\" 00:00:01\").toISOString();\r\n //this.dateTime = new Date().toISOString();\r\n this.dateTime = new Date((new Date()).valueOf() - 1000*60*60*24).toISOString();\r\n }\r\n \r\n generateDailyReport() { \r\n this.dateTime = this.dateTime.split(\"T\")[0];\r\n var yearDate = new Date(this.dateTime);\r\n this.selectedyear = yearDate.getFullYear();\r\n var todaydate = new Date().toISOString(); \r\n if(this.dateTime>=todaydate.split(\"T\")[0])\r\n {\r\n \r\n Swal.fire({\r\n text: 'Please Select a Date Before Today\\'s date ',\r\n icon: 'warning',\r\n confirmButtonText: 'ok',\r\n });\r\n \r\n }\r\n else\r\n {\r\n this.regulationService.getRegulationValue(this.client_id, this.dateTime, this.selectedRegulationId).subscribe((RegulationValue: any) => {\r\n this.DGDA_PM10_RV = RegulationValue;\r\n \r\n });\r\n \r\n \r\n ////////////////////////////////////////LastTwentyDays//////////////////////////////////////////////////////////////////\r\n this.regulationService.getLastTwentyDays(this.dateTime).subscribe((LastTwentyDays: any) => {\r\n this.generateStationName(LastTwentyDays);\r\n \r\n this.last_twenty_data = LastTwentyDays;\r\n \r\n this.AYC_PM10_LastTwentyDays = LastTwentyDays[0].ReportDatas;\r\n this.AYC_PM10_LastTwentyDays_Graph = [];\r\n this.PM10_LastTwentyDays_Label = [];\r\n this.AYC_PM10_LastTwentyDays.forEach(res => {\r\n let xx = res.PM10;\r\n let date = new Date(res.Time);\r\n let Month_Day = (date.getMonth() + 1) + \"-\" + date.getDate();\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.AYC_PM10_LastTwentyDays_Graph.push(value);\r\n this.PM10_LastTwentyDays_Label.push(Month_Day);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.AYC_PM10_LastTwentyDays_Graph.push(value);\r\n this.PM10_LastTwentyDays_Label.push(Month_Day);\r\n }\r\n \r\n \r\n });\r\n \r\n this.DGDA_PM10_LastTwentyDays = LastTwentyDays[1].ReportDatas;\r\n this.DGDA_PM10_LastTwentyDays_Graph = [];\r\n this.DGDA_PM10_LastTwentyDays.forEach(res => {\r\n let xx = res.PM10;\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.DGDA_PM10_LastTwentyDays_Graph.push(value);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.DGDA_PM10_LastTwentyDays_Graph.push(value);\r\n }\r\n });\r\n \r\n this.NORTH_PM10_LastTwentyDays = LastTwentyDays[2].ReportDatas;\r\n this.NORTH_PM10_LastTwentyDays_Graph = [];\r\n this.NORTH_PM10_LastTwentyDays.forEach(res => {\r\n let xx = res.PM10;\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.NORTH_PM10_LastTwentyDays_Graph.push(value);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.NORTH_PM10_LastTwentyDays_Graph.push(value);\r\n }\r\n });\r\n if(LastTwentyDays[3])\r\n {\r\n this.SOUTH_PM10_LastTwentyDays = LastTwentyDays[3].ReportDatas;\r\n this.SOUTH_PM10_LastTwentyDays_Graph = [];\r\n this.SOUTH_PM10_LastTwentyDays.forEach(res => {\r\n let xx = res.PM10;\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.SOUTH_PM10_LastTwentyDays_Graph.push(value);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.SOUTH_PM10_LastTwentyDays_Graph.push(value);\r\n }\r\n });\r\n }\r\n \r\n \r\n this.Chart_TwentyDays();\r\n });\r\n /////////////////////////////////////////wind speed////////////////////////////////////////\r\n this.regulationService.getWindSpeedDailyReport(this.dateTime,this.client_id).subscribe((WindSpeed:any)=>{\r\n\r\n this.windSpeedDt=WindSpeed;\r\n console.log(\"wind speed data\");\r\n console.log(WindSpeed);\r\n });\r\n ////////////////////////////////////////TwentyFourReport//////////////////////////////////////////////////////////////////////////////////\r\n this.regulationService.getTwentyFourReport(this.dateTime).subscribe((TwentyFourReport: any) => {\r\n \r\n this.twenty_four_report = TwentyFourReport;\r\n console.log(\"pm10report\",this.twenty_four_report);\r\n this.generateStationNameTwentFour(TwentyFourReport);\r\n ///////////AYC_PM10_1H////////////////////////\r\n this.AYC_PM10_1H = TwentyFourReport[0].ReportDatas;\r\n this.AYC_PM10_1H_Label = [];\r\n this.AYC_PM10_1H_Graph = [];\r\n \r\n this.AYC_PM10_1H.forEach(res => {\r\n let xx = res.PM10;\r\n let date = moment(res.Time).format(\"HH:mm\");\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.AYC_PM10_1H_Graph.push(value);\r\n this.AYC_PM10_1H_Label.push(date);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.AYC_PM10_1H_Graph.push(value);\r\n this.AYC_PM10_1H_Label.push(date);\r\n }\r\n });\r\n ////////////////////////////NORTH_PM10_1H//////////////////////////////////////////////////////////////\r\n this.NORTH_PM10_1H = TwentyFourReport[2].ReportDatas;\r\n this.NORTH_PM10_1H_Graph = [];\r\n this.NORTH_PM10_1H.forEach(res => {\r\n let xx = res.PM10;\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.NORTH_PM10_1H_Graph.push(value);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.NORTH_PM10_1H_Graph.push(value);\r\n }\r\n });\r\n \r\n \r\n /////////////////////////////////////SOUTH_PM10_1H/////////////////////////////////////////////////////////////\r\n if(TwentyFourReport[3])\r\n {\r\n this.SOUTH_PM10_1H = TwentyFourReport[3].ReportDatas;\r\n this.SOUTH_PM10_1H_Graph = [];\r\n this.SOUTH_PM10_1H.forEach(res => {\r\n let xx = res.PM10;\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.SOUTH_PM10_1H_Graph.push(value);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.SOUTH_PM10_1H_Graph.push(value);\r\n }\r\n });\r\n }\r\n \r\n \r\n /////////////////////////////////////////DGDA_PM10_1H//////////////////////////////////////////////////////////////////////////\r\n \r\n this.DGDA_PM10_1H = TwentyFourReport[1].ReportDatas;\r\n this.DGDA_PM10_1H_Graph = [];\r\n this.DGDA_PM10_1H.forEach(res => {\r\n let xx = res.PM10;\r\n if (xx == \"NA\") {\r\n let value = +(0);\r\n this.DGDA_PM10_1H_Graph.push(value);\r\n }\r\n else {\r\n let value = +(xx);\r\n this.DGDA_PM10_1H_Graph.push(value);\r\n }\r\n });\r\n \r\n this.Chart_24Hrs();\r\n \r\n \r\n });\r\n \r\n this.regulationService.getLastUpdateDaily(this.client_id, this.dateTime).subscribe((LastUpdateDaily: any) => {\r\n this.report_table_data = LastUpdateDaily;\r\n this.DGDA_LastUpdateDaily = LastUpdateDaily;\r\n });\r\n \r\n this.regulationService.getWindDirection(this.dateTime, this.client_id).subscribe((Wind: any) => {\r\n this.datafortablewind=Wind;\r\n // console.log(this.datafortablewind);\r\n // this.generateStationNameWindDirection(Wind);\r\n // let WindData0 = Wind[0].WindDirectionGraphReportDatas;\r\n // this.DGDA_Wind_Directions = [];\r\n // this.DGDA_Wind_Value = [];\r\n // WindData0.forEach(res => {\r\n // let WindDirection = res.WindDirection;\r\n // this.DGDA_Wind_Directions.push(WindDirection);\r\n // let WindDirectionpercentage = +(res.WindDirectionpercentage);\r\n // this.DGDA_Wind_Value.push(WindDirectionpercentage);\r\n \r\n // });\r\n // ///////////////////////////////////////////////////////////////\r\n // let NORTH_Wind = Wind[1].WindDirectionGraphReportDatas;\r\n // this.NORTH_Wind_Value = [];\r\n \r\n // NORTH_Wind.forEach(res => {\r\n // let WindDirectionpercentage = +(res.WindDirectionpercentage);\r\n // this.NORTH_Wind_Value.push(WindDirectionpercentage);\r\n \r\n // });\r\n // //////////////////////////////////////////////////////////////////////\r\n // let SOUTH_Wind = Wind[2].WindDirectionGraphReportDatas;\r\n // this.SOUTH_Wind_Value = [];\r\n \r\n // SOUTH_Wind.forEach(res => {\r\n // let WindDirectionpercentage = +(res.WindDirectionpercentage);\r\n // this.SOUTH_Wind_Value.push(WindDirectionpercentage);\r\n \r\n // });\r\n // let AYC_Wind = Wind[3].WindDirectionGraphReportDatas;\r\n // this.AYC_Wind_Value = [];\r\n \r\n // AYC_Wind.forEach(res => {\r\n \r\n // let WindDirectionpercentage = +(res.WindDirectionpercentage);\r\n // this.AYC_Wind_Value.push(WindDirectionpercentage);\r\n \r\n // });\r\n // this.WindChart();\r\n \r\n });\r\n // ///////////////////////daily repotr windrose diagrem data////////////////////\r\n this.regulationService.getWindDirectionDailyReportRose(this.dateTime,this.client_id).subscribe((WindRose:any) =>{\r\n console.log(\"Windrose\");\r\n console.log(WindRose);\r\n \r\n // this.windRose0=WindRose[0].WindDirectionAndSpeedDatas;\r\n this.windRoseData=WindRose;\r\n \r\n\r\n\r\n });\r\n // /////////////////////////////////////////////////////////////////////////////\r\n this.regulationService.getTwentyFourTemperatureReport(this.dateTime,this.client_id).subscribe((Temp: any) => {\r\n \r\n /////////////////////////////////////////////////////////////////////////////////////////////////////\r\n //console.log(Temp);\r\n \r\n this.generateStationNameTemp(Temp);\r\n console.log(\"temp\")\r\n console.log(Temp);\r\n \r\n \r\n\r\n let DGDA_Temp = Temp[1].TemperatureReportDatas;\r\n this.Temperature_Chart_Label = [];\r\n this.DGDA_Temperature_Chart_Value = [];\r\n DGDA_Temp.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n //this.Temperature_Chart_Label.push(Time);\r\n let Temperature = +(res.Temperature);\r\n if(Temperature==0)\r\n {\r\n this.DGDA_Temperature_Chart_Value.push(\"NA\");\r\n }\r\n else\r\n {\r\n this.DGDA_Temperature_Chart_Value.push(Temperature);\r\n }\r\n \r\n \r\n });\r\n ///////////////////////////////////////////////////////////////\r\n let NORTH_Temp = Temp[2].TemperatureReportDatas;\r\n //this.Temperature_Chart_Label = [];\r\n this.NORTH_Temperature_Chart_Value = [];\r\n NORTH_Temp.forEach(res => { \r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Temperature_Chart_Label.length<24)\r\n {\r\n this.Temperature_Chart_Label.push(Time);\r\n }\r\n // this.Temperature_Chart_Label.push(Time);\r\n let Temperature = +(res.Temperature);\r\n if(Temperature==0)\r\n {\r\n this.NORTH_Temperature_Chart_Value.push(\"NA\");\r\n }\r\n else\r\n {\r\n this.NORTH_Temperature_Chart_Value.push(Temperature);\r\n }\r\n \r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n if(Temp[3])\r\n {\r\n let SOUTH_Temp = Temp[3].TemperatureReportDatas;\r\n this.SOUTH_Temperature_Chart_Value = [];\r\n SOUTH_Temp.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Temperature_Chart_Label.length<24)\r\n {\r\n this.Temperature_Chart_Label.push(Time);\r\n }\r\n let Temperature = +(res.Temperature);\r\n if(Temperature==0)\r\n {\r\n this.SOUTH_Temperature_Chart_Value.push(\"NA\");\r\n }\r\n else\r\n {\r\n this.SOUTH_Temperature_Chart_Value.push(Temperature);\r\n }\r\n \r\n \r\n });\r\n }\r\n \r\n //////////////////////////////////////////////////////////////////////\r\n let AYC_Temp = Temp[0].TemperatureReportDatas;\r\n this.AYC_Temperature_Chart_Value = [];\r\n AYC_Temp.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Temperature_Chart_Label.length<24)\r\n {\r\n this.Temperature_Chart_Label.push(Time);\r\n }\r\n let Temperature = +(res.Temperature);\r\n if(Temperature==0)\r\n {\r\n this.AYC_Temperature_Chart_Value.push(\"NA\");\r\n }\r\n else\r\n {\r\n this.AYC_Temperature_Chart_Value.push(Temperature);\r\n }\r\n \r\n \r\n });\r\n ////////////////////////////////////////////////////////////////////////\r\n this.Temperature_Chart();\r\n \r\n });\r\n\r\n\r\n // ////////////////////////////daily report graph vibration///////////////////\r\n this.regulationService.getvibrationDailyReport(this.dateTime,this.client_id).subscribe((vibrationDt: any) => {\r\n \r\n /////////////////////////////////////////////////////////////////////////////////////////////////////\r\n //console.log(Temp);\r\n this.generateStationNameVibration(vibrationDt);\r\n \r\n let DGDA_Vib = vibrationDt[0].DailyVibrationReportDatas;\r\n this.Vibration_Chart_Label = [];\r\n this.DGDA_vibration_Chart_Value = [];\r\n DGDA_Vib.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n this.Vibration_Chart_Label.push(Time);\r\n let Vibration = +(res.VMPeak);\r\n this.DGDA_vibration_Chart_Value.push(Vibration);\r\n \r\n });\r\n ///////////////////////////////////////////////////////////////\r\n let NORTH_Vib = vibrationDt[1].DailyVibrationReportDatas;\r\n this.NORTH_Vibration_Chart_Value = [];\r\n NORTH_Vib.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Vibration_Chart_Label.length==0)\r\n {\r\n this.Vibration_Chart_Label.push(Time);\r\n }\r\n let Vibration = +(res.VMPeak);\r\n this.NORTH_Vibration_Chart_Value.push(Vibration);\r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n let SOUTH_Vib = vibrationDt[2].DailyVibrationReportDatas;\r\n this.SOUTH_Vibration_Chart_Value = [];\r\n SOUTH_Vib.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Vibration_Chart_Label.length==0)\r\n {\r\n this.Vibration_Chart_Label.push(Time);\r\n }\r\n let Vibration = +(res.VMPeak);\r\n this.SOUTH_Vibration_Chart_Value.push(Vibration);\r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n let AYC_Vib = vibrationDt[3].DailyVibrationReportDatas;\r\n this.AYC_Vibration_Chart_Value = [];\r\n AYC_Vib.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Vibration_Chart_Label.length==0)\r\n {\r\n this.Vibration_Chart_Label.push(Time);\r\n }\r\n let Vibration = +(res.VMPeak);\r\n this.AYC_Vibration_Chart_Value.push(Vibration);\r\n \r\n });\r\n ////////////////////////////////////////////////////////////////////////\r\n if(this.client_id==2)\r\n {\r\n this.Vibration_Chart();\r\n }\r\n \r\n \r\n });\r\n // ////////////////////////////////////////////////////////////////////////////////\r\n // ////////////////////////////daily report graph Noise///////////////////\r\n this.regulationService.getNoiseDailyReport(this.dateTime,this.client_id).subscribe((noiseDt: any) => {\r\n \r\n /////////////////////////////////////////////////////////////////////////////////////////////////////\r\n console.log(\"noise\");\r\n console.log(noiseDt);\r\n this.generateStationNameNoise(noiseDt);\r\n \r\n let DGDA_Noise = noiseDt[0].DailyNoiseReportDatas;\r\n this.Noise_Chart_Label = [];\r\n this.DGDA_Noise_Chart_Value = [];\r\n DGDA_Noise.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n this.Noise_Chart_Label.push(Time);\r\n let Noise = +(res.Noise);\r\n this.DGDA_Noise_Chart_Value.push(Noise);\r\n \r\n });\r\n ///////////////////////////////////////////////////////////////\r\n let NORTH_Noise = noiseDt[1].DailyNoiseReportDatas;\r\n this.NORTH_Noise_Chart_Value = [];\r\n NORTH_Noise.forEach(res => {\r\n let Noise = +(res.Noise);\r\n this.NORTH_Noise_Chart_Value.push(Noise);\r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n let SOUTH_Noise = noiseDt[2].DailyNoiseReportDatas;\r\n this.SOUTH_Noise_Chart_Value = [];\r\n SOUTH_Noise.forEach(res => {\r\n let Noise = +(res.Noise);\r\n this.SOUTH_Noise_Chart_Value.push(Noise);\r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n let AYC_Noise = noiseDt[3].DailyNoiseReportDatas;\r\n this.AYC_Noise_Chart_Value = [];\r\n AYC_Noise.forEach(res => {\r\n let Noise = +(res.Noise);\r\n this.AYC_Noise_Chart_Value.push(Noise);\r\n \r\n });\r\n ////////////////////////////////////////////////////////////////////////\r\n if(this.client_id==2)\r\n {\r\n this.NoiseGraph_Chart();\r\n }\r\n \r\n \r\n });\r\n // ////////////////////////////////////////////////////////////////////////////////\r\n\r\n // ////////////////////////////daily report graph humidity///////////////////\r\n this.regulationService.getHumidityDailyReport(this.dateTime,this.client_id).subscribe((humidityDt: any) => {\r\n \r\n /////////////////////////////////////////////////////////////////////////////////////////////////////\r\n //console.log(Temp);\r\n this.generateStationNameHumidity(humidityDt);\r\n \r\n let DGDA_Humidity = humidityDt[0].HumidityDataReportDatas;\r\n this.Humidity_Chart_Label = [];\r\n this.DGDA_Humidity_Chart_Value = [];\r\n DGDA_Humidity.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n this.Humidity_Chart_Label.push(Time);\r\n let Humidity = +(res.Humidity);\r\n this.DGDA_Humidity_Chart_Value.push(Humidity);\r\n \r\n });\r\n ///////////////////////////////////////////////////////////////\r\n let NORTH_Humidity = humidityDt[1].HumidityDataReportDatas;\r\n this.NORTH_Humidity_Chart_Value = [];\r\n NORTH_Humidity.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Humidity_Chart_Label.length==0)\r\n {\r\n this.Humidity_Chart_Label.push(Time);\r\n }\r\n let Humidity = +(res.Humidity);\r\n this.NORTH_Humidity_Chart_Value.push(Humidity);\r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n let SOUTH_Humidity = humidityDt[2].HumidityDataReportDatas;\r\n this.SOUTH_Humidity_Chart_Value = [];\r\n SOUTH_Humidity.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Humidity_Chart_Label.length==0)\r\n {\r\n this.Humidity_Chart_Label.push(Time);\r\n }\r\n let Humidity = +(res.Humidity);\r\n this.SOUTH_Humidity_Chart_Value.push(Humidity);\r\n \r\n });\r\n //////////////////////////////////////////////////////////////////////\r\n if(humidityDt[3])\r\n {\r\n let AYC_Humidity = humidityDt[3].HumidityDataReportDatas;\r\n this.AYC_Humidity_Chart_Value = [];\r\n AYC_Humidity.forEach(res => {\r\n let Time = moment(res.Time).format(\"HH:mm\");\r\n if(this.Humidity_Chart_Label.length==0)\r\n {\r\n this.Humidity_Chart_Label.push(Time);\r\n }\r\n let Humidity = +(res.Humidity);\r\n this.AYC_Humidity_Chart_Value.push(Humidity);\r\n \r\n });\r\n }\r\n \r\n ////////////////////////////////////////////////////////////////////////\r\n // if(this.client_id==2)\r\n // {\r\n // this.Humidity_Graph_Chart();\r\n // }\r\n this.Humidity_Graph_Chart(); \r\n \r\n });\r\n // ////////////////////////////////////////////////////////////////////////////////\r\n\r\n\r\n/////////////////////////////////////////wind speed////////////////////////////////////////\r\n// this.regulationService.getHumidityDailyReport(this.dateTime,this.client_id).subscribe((HumidityDGDA:any)=>{\r\n\r\n \r\n// console.log(\"wind speed data\");\r\n// console.log(HumidityDGDA);\r\n// let DGDA_WindSpeed = HumidityDGDA[0].WindSpeedDataReportDatas;\r\n// this.WindSpeed_Chart_Label = [];\r\n// this.DGDA_WindSpeed_Chart_Value = [];\r\n// DGDA_WindSpeed.forEach(res => {\r\n// let Time = moment(res.Time).format(\"HH:mm\");\r\n// this.WindSpeed_Chart_Label.push(Time);\r\n// let WindSpeed = +(res.WindSpeed);\r\n// this.DGDA_WindSpeed_Chart_Value.push(WindSpeed);\r\n\r\n// });\r\n// // if(this.client_id==1)\r\n// // {\r\n// // this.HumidityDGDA_Chart();\r\n// // }\r\n \r\n// });\r\n\r\n \r\n this.visible = true;\r\n this.Chart_Flag = true;\r\n \r\n this.selectedRegulationFlag = true;\r\n let x = this.allRegulations[this.selectedRegulationId - 1];\r\n this.selectedRegulationName = x.RegulationName;\r\n\r\n }\r\n\r\n\r\n\r\n \r\n\r\n }\r\n\r\n////////////////////graph header change 10/06/2021//////////////////////\r\ngenerateStationName(Name:any)\r\n{\r\nthis.graph_stations_name=[];\r\nfor(var i=0;i parseInt(data.RangeTwentyFour))\r\n {\r\n return \"Warning\";\r\n }\r\n else if(parseInt(data.RangeTwentyFour) > parseInt(data.PM10TwentyFour))\r\n {\r\n \r\n return \"Meet\";\r\n }\r\n\r\n return \"NA\"\r\n }\r\n\r\n regulationStylePM10(regulation, actual) {\r\n if (parseInt(regulation) > parseInt(actual))\r\n return \"red\";\r\n return \"\"\r\n }\r\n\r\n regulationTextAnnual(data) {\r\n\r\n //console.log(data)\r\n\r\n if (!data.PM10Annuval)\r\n return \"NA\"\r\n\r\n if (data.PM10Annuval > data.RangeAnnuval)\r\n return \"Warning\";\r\n\r\n if (data.RangeAnnuval < data.PM10Annuval)\r\n return \"Meet\";\r\n\r\n return \"NA\"\r\n }\r\n\r\n regulationStylePM24(data) {\r\n if (data.PM10TwentyFour > data.RangeTwentyFour)\r\n return \"red\";\r\n return \"\"\r\n }\r\n\r\n resetChart() {\r\n this.Chart20Days.reset();\r\n this.Chart24Hrs.reset();\r\n // this.Wind_Chart.reset();\r\n this.Temerature_Chart.reset();\r\n this.Humidity_Chart.reset();\r\n this.Vibration_Chart_Daily.reset();\r\n this.Noise_Chart.reset();\r\n this.Wind_Speed_Chart_Graph.reset();\r\n \r\n\r\n this.Chart20Days.destroy();\r\n this.Chart24Hrs.destroy();\r\n //this.Wind_Chart.destroy();\r\n this.Temerature_Chart.destroy();\r\n this.Humidity_Chart.destroy();\r\n this.Vibration_Chart_Daily.destroy();\r\n this.Noise_Chart.destroy();\r\n this.Wind_Speed_Chart_Graph.destroy();\r\n }\r\n\r\n\r\n downloadPdf() {\r\n // var openedWindow;\r\n // let url = \"http://dailyreports.gacscloud.com/daily-report\" + \"?Date=\" + this.dateTime + \"&ClientId=\" + this.client_id + \"&RegulationId=\" + this.selectedRegulationId + \"&RegulationName=\" + this.selectedRegulationName;\r\n // timer(1000).subscribe(x => {\r\n // openedWindow = window.open(url, \"_blank\");\r\n // });\r\n // timer(30000).subscribe(x => {\r\n // openedWindow = openedWindow.close();\r\n // })\r\n //window.print();\r\n //this.router.navigateByUrl('dailyreports.gacscloud.com/daily-report?Date=this.dateTime&ClientId=this.client_id&RegulationId=this.selectedRegulationId&RegulationName=selectedRegulationName');\r\n var openedWindow;\r\n \r\n openedWindow= window.open(\"http://dailyreports.gacscloud.com/daily-report\"+\"?Date=\"+this.dateTime+\"&ClientId=\"+this.client_id+\"&RegulationId=\"+this.selectedRegulationId+\"&RegulationName=\"+this.selectedRegulationName, \"_blank\");\r\n timer(30000).subscribe(x => {\r\n openedWindow=openedWindow.close();\r\n })\r\n }\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","
\r\n\r\n
\r\n \"banner\"\r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Daily Report

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

DAILY REPORT FOR {{dateTime | date:'dd-MMM-yyyy'}}

\r\n
\r\n
{{ClientNameBind}} FENCE LINE MONITORING REPORT
\r\n
\r\n
\r\n
\r\n Date: {{now | date:'dd-MM-yyyy HH:mm' }}\r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n

PM10 {{this.selectedRegulationName}} COMPLIANCE (From 01-Jan-{{selectedyear}} to {{dateTime | date:'dd-MMM-yyyy'}})

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
 
PM10 24-h Conc. for {{dateTime | date:'dd-MMM-yyyy'}}
Maximum 24-h Conc(µg/m3)90th Percentile 24-h Conc(µg/m3)
{{this.selectedRegulationName}} 24-h Limit (µg/m3)
RCER CompliancePME Compliance
Number of Valid 24-h values
24-h values exceeding the limit
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {{regulationTextPM10(data.RegulationReportDatas[0])}}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{data.StationName}}
{{data.RegulationReportDatas[0]?.AVGPM10}}
\r\n {{data.RegulationReportDatas[0]?.PM10TwentyFour}}\r\n \r\n NA\r\n
{{data.RegulationReportDatas[0]?.RangeTwentyFour}}
{{data.RegulationReportDatas[0]?.DataCount}}
{{data.RegulationReportDatas[0]?.ExceedingLimtCount}}
\r\n
\r\n \r\n
NA:Not Available
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
NA:Not Available
\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n




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




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




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

HOURLY PM10 AVERAGES FOR {{dateTime | date:'dd-MMM-yyyy' }} (µg/m3)

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
Time
{{data.Time | date:'HH:mm'}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{data.StationName}}
{{rdata.PM10}}
\r\n
\r\n\r\n \r\n
\r\n
NA:Not Available
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
NA:Not Available
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n

LAST 24 HOURS - WD and WS(m/s) 1-h AVERAGES

\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
Date
Date and Time
{{data1.Time | date:'dd-MM-yyyy HH:mm'}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{data.StationName}}
WDWS m/s
{{rdata.WindDirection}}{{rdata.WindDirectionpercentage}}
\r\n
\r\n
\r\n
NA:Not Available
\r\n
\r\n\r\n\r\n\r\n \r\n
\r\n
\r\n

DAILY-PM10 24-h AVERAGES (µg/m3)

\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
Date
{{data.Time | date:'dd-MM-yyyy'}}
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
{{data.StationName}}
340 && selectedRegulationName==='GAMEP(PME)'\r\n }\">{{rdata.PM10}}
\r\n
\r\n
\r\n
NA:Not Available
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n
NA:Not Available
\r\n
\r\n
\r\n \r\n \r\n
\r\n\r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n

{{client_url_bottom}}

\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 { Inject, Optional } from '@angular/core';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport { FormBuilder, FormGroup, Validators } from '@angular/forms';\r\nimport { MatDialog, MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\nimport { Router } from '@angular/router';\r\nimport { PasswordForgotService } from 'src/app/services/passwordforgot/password-forgot.service';\r\nimport { LoginModalComponent } from '../login-modal/login-modal.component';\r\nimport Swal from 'sweetalert2';\r\n\r\n@Component({\r\n selector: 'app-reset-password',\r\n templateUrl: './reset-password.component.html',\r\n styleUrls: ['./reset-password.component.css']\r\n})\r\nexport class ResetPasswordComponent implements OnInit {\r\n resetpassword;\r\n errorMessage: string;\r\n email:string;\r\n constructor(\r\n private fb: FormBuilder,\r\n private passwordForgotService: PasswordForgotService,\r\n private router: Router,\r\n public dialog: MatDialog, \r\n private dialogRef: MatDialogRef,\r\n @Optional() @Inject(MAT_DIALOG_DATA ) public data: any\r\n ) {\r\n this.email = data.EmailID;\r\n }\r\n\r\n ngOnInit(): void {\r\n //console.log(this.data);\r\n this.resetpassword = this.fb.group({\r\n \r\n newpassword: [\"\", [Validators.required]],\r\n confirmpassword: [\"\", [Validators.required,]],\r\n \r\n },{validator: this.checkIfMatchingPasswords('newpassword', 'confirmpassword')});\r\n }\r\n showMsg: boolean = false;\r\n\r\n onSubmit() {\r\n this.passwordForgotService\r\n .resetPassword(\r\n this.email,\r\n this.resetpassword.value.newpassword\r\n )\r\n .subscribe((res) => { \r\n console.log(res);\r\n if (res) {\r\n this.errorMessage = '';\r\n this.showMsg= true;\r\n this.dialogRef.close();\r\n Swal.fire({\r\n text: 'Password Reset Success!',\r\n icon: 'success',\r\n confirmButtonText: ' Login Again!',\r\n });\r\n // this.dialog.open(LoginModalComponent, {\r\n//panelClass: 'custom-dialog-container',\r\n // });\r\n \r\n } \r\n else {\r\n this.errorMessage = \"Try Again\";\r\n }\r\n }, ((error) => {\r\n if (error.status == 400) { this.errorMessage = error.error; }\r\n else { this.errorMessage = \"Something Went Wrong!\" }\r\n }\r\n ));\r\n }\r\ncheckIfMatchingPasswords(passwordKey: string, passwordConfirmationKey: string) {\r\n return (group: FormGroup) => {\r\n let passwordInput = group.controls[passwordKey],\r\n passwordConfirmationInput = group.controls[passwordConfirmationKey];\r\n if (passwordInput.value !== passwordConfirmationInput.value) {\r\n return passwordConfirmationInput.setErrors({notEquivalent: true})\r\n }\r\n else {\r\n return passwordConfirmationInput.setErrors(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

Reset Password

\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n Enter new password\r\n
\r\n \r\n \r\n \r\n Email\r\n Address is required\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n Confirm password\r\n
\r\n \r\n \r\n \r\n \r\n Password Does not Match\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n {{ errorMessage }}\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
","import { AfterViewInit, Component, ElementRef, Input, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';\r\nimport * as d3 from 'd3';\r\nimport { until } from 'protractor';\r\nimport { config } from 'rxjs';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\n\r\n//declare var d3: any;\r\n@Component({\r\n selector: 'app-gauge',\r\n templateUrl: './gauge.component.html',\r\n styleUrls: ['./gauge.component.scss']//\r\n})\r\nexport class GaugeComponent implements OnInit, AfterViewInit, OnChanges {\r\n @ViewChild(\"chartfigure\") divView: ElementRef;\r\n @Input()\r\n Needle: any;\r\n @Input()\r\n title: any;\r\n @Input() \r\n MaxValue: any;\r\n @Input()\r\n MinValue: any;\r\n @Input()\r\n ColorRangeCode: any;\r\n @Input()\r\n ColorFunction: any;\r\n @Input()\r\n Unit: any;\r\n\r\n\r\n \r\n\r\n uid: any;\r\n\r\n public needlevalue: any;\r\n public max: any; \r\n public min: any;\r\n public colorFun: any;\r\n public gaugeUnit: any;\r\n //gauge_ticks = [0.1, 0.4, 0.5]\r\n public gauge_ticks:any;\r\n\r\n\r\n\r\n gaugemap: any = {\r\n\r\n };\r\n\r\n constructor() {\r\n this.uid = generateUniqueId()\r\n }\r\n ngOnInit() {\r\n //this.draw();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Needle.currentValue) {\r\n this.needlevalue = changes.Needle.currentValue;\r\n //this.gaugemap.render(this.needlevalue)\r\n //this.draw();\r\n //this.color='#e8e2ca';\r\n console.log(\"max value\",this.MaxValue)\r\n }\r\n\r\n }\r\n ngAfterViewInit(): void {\r\n this.needlevalue = this.Needle; \r\n this.gaugeUnit = this.Unit; \r\n this.max = +this.MaxValue; \r\n if(this.MinValue)\r\n {\r\n this.min = +this.MinValue;\r\n \r\n }\r\n else \r\n {\r\n this.min = 0;\r\n \r\n }\r\n console.log(\"minimumvalue\", this.min);\r\n // this.colorFun = this.ColorFunction;\r\n this.draw(this.min);\r\n }\r\n\r\n draw(MinumumValue) { \r\n var _gauge_ticks = this.ColorRangeCode; \r\n var colorFun = this.ColorFunction; \r\n var self = this;\r\n var gauge = function (container, configuration) {\r\n\r\n var config = {\r\n size: 710,\r\n clipWidth: 150,\r\n clipHeight: 150,\r\n ringInset: 20,\r\n ringWidth: 20,\r\n\r\n pointerWidth: 10,\r\n pointerTailLength: 5,\r\n pointerHeadLengthPercent: 0.5,\r\n\r\n minValue: MinumumValue,\r\n maxValue: 10,\r\n\r\n minAngle: -90,\r\n maxAngle: +90,\r\n\r\n transitionMs: 750,\r\n\r\n majorTicks: _gauge_ticks.length,\r\n labelFormat: d3.format('d'),\r\n labelInset: 10,\r\n\r\n // colorfn: ['#2EA37E', '#3598DC', '#F71228'],\r\n colorfn:colorFun,\r\n arcColorFn: d3.interpolateHsl(d3.rgb('#e8e2ca'), d3.rgb('#3e6c0a'))\r\n };\r\n\r\n \r\n\r\n var range = undefined;\r\n var r = undefined;\r\n var pointerHeadLength = undefined;\r\n var value = 0;\r\n\r\n var svg = undefined;\r\n var arc = undefined;\r\n var scale = undefined;\r\n var ticks = undefined;\r\n var tickData = undefined;\r\n var pointer = undefined;\r\n\r\n var donut = d3.pie();\r\n\r\n function deg2rad(deg) {\r\n return deg * Math.PI / 180;\r\n }\r\n\r\n function newAngle(d) {\r\n var ratio = scale(d);\r\n var newAngle = config.minAngle + (ratio * range);\r\n return newAngle;\r\n }\r\n\r\n function configure(configuration) {\r\n var prop = undefined;\r\n for (prop in configuration) {\r\n config[prop] = configuration[prop];\r\n }\r\n\r\n range = config.maxAngle - config.minAngle;\r\n r = config.size / 2;\r\n pointerHeadLength = Math.round(r * config.pointerHeadLengthPercent);\r\n\r\n // a linear scale this.gaugemap maps domain values to a percent from 0..1\r\n\r\n console.log(\"config\",config)\r\n scale = d3.scaleLinear()\r\n .range([0, 1])\r\n .domain([config.minValue, config.maxValue]);\r\n // .domain([config.minValue, config.maxValue]);\r\n if(config.maxValue && config.maxValue==360)\r\n {\r\n ticks=[0,45,90,135,180,225,270,315,360] \r\n }\r\n else{\r\n\r\n ticks = scale.ticks(config.majorTicks); \r\n }\r\n \r\n \r\n //tickData = d3.range(config.majorTicks).map(function () { return 1 / config.majorTicks; });\r\n //tickData = d3.range(config.majorTicks).map(function () { return 1 / config.majorTicks; });\r\n \r\n console.log(\"ticks\",ticks);\r\n tickData = _gauge_ticks;\r\n\r\n //tickData = [0.4,0.4,0.2];\r\n \r\n\r\n\r\n var start = config.minAngle;\r\n var end = config.maxAngle;\r\n\r\n var start_angles: number[] = [];\r\n var end_angles: number[] = [];\r\n colorData(_gauge_ticks);\r\n function colorData(params:any) { \r\n start_angles =[];\r\n end_angles=[];\r\n params.forEach((element, index) => {\r\n start_angles.push(start)\r\n let val = 180 * element\r\n end = start + val;\r\n end_angles.push(end)\r\n start = end\r\n }) \r\n console.log(\"startangles\",start_angles) \r\n console.log(\"endtangles\",end_angles) \r\n } \r\n\r\n\r\n arc = d3.arc()\r\n .innerRadius(r - config.ringWidth - config.ringInset)\r\n .outerRadius(r - config.ringInset)\r\n .startAngle(function (d, i) {\r\n return deg2rad(start_angles[i]);\r\n // var ratio = +d * i;\r\n // return deg2rad(config.minAngle + (ratio * range));\r\n })\r\n .endAngle(function (d, i) {\r\n\r\n return deg2rad(end_angles[i]);\r\n // var ratio = +d * (i + 1);\r\n // return deg2rad(config.minAngle + (ratio * range));\r\n });\r\n\r\n\r\n\r\n\r\n }\r\n self.gaugemap.configure = configure;\r\n\r\n function centerTranslation() {\r\n return 'translate(' + r + ',' + r + ')';\r\n }\r\n\r\n function isRendered() {\r\n return (svg !== undefined);\r\n }\r\n self.gaugemap.isRendered = isRendered;\r\n\r\n function render(newValue) {\r\n\r\n svg = d3.select(container)\r\n .append('svg:svg')\r\n .attr('class', 'gauge')\r\n .attr('width', config.clipWidth)\r\n .attr('height', config.clipHeight);\r\n\r\n var centerTx = centerTranslation();\r\n \r\n var arcs = svg.append('g')\r\n .attr('class', 'arc')\r\n .attr('transform', centerTx);\r\n\r\n arcs.selectAll('path')\r\n .data(tickData)\r\n .enter().append('path')\r\n .style('fill', function (d, i) {\r\n \r\n // return config.arcColorFn(d * i);\r\n \r\n //return '#e8e2ca';\r\n return config.colorfn[i];\r\n // return colorvalue;\r\n\r\n })\r\n .attr('d', arc);\r\n\r\n \r\n\r\n var lg = svg.append('g')\r\n .attr('class', 'label')\r\n .attr('transform', centerTx);\r\n lg.selectAll('text')\r\n .data(ticks)\r\n .enter().append('text')\r\n .attr('transform', function (d) {\r\n var ratio = scale(d);\r\n var newAngle = config.minAngle + (ratio * range);\r\n // return 'rotate(' + newAngle + ') translate(0,' + (config.labelInset - r) + ')';\r\n return 'rotate(' + newAngle + ') translate(0,' + (config.labelInset - r) + ')';\r\n })\r\n .text(config.labelFormat);\r\n\r\n var lineData = [[config.pointerWidth / 2, 0],\r\n [0, -pointerHeadLength],\r\n [-(config.pointerWidth / 2), 0],\r\n [0, config.pointerTailLength],\r\n [config.pointerWidth / 2, 0]];\r\n var pointerLine = d3.line().curve(d3.curveLinear)\r\n var pg = svg.append('g').data([lineData])\r\n .attr('class', 'pointer')\r\n .attr('transform', centerTx);\r\n\r\n pointer = pg.append('path')\r\n .attr('d', pointerLine/*function(d) { return pointerLine(d) +'Z';}*/)\r\n .attr('transform', 'rotate(' + config.minAngle + ')');\r\n\r\n update(newValue === undefined ? 0 : newValue);\r\n }\r\n self.gaugemap.render = render;\r\n function update(newValue, newConfiguration?) {\r\n if (newConfiguration !== undefined) {\r\n configure(newConfiguration);\r\n }\r\n var ratio = scale(newValue);\r\n var newAngle = config.minAngle + (ratio * range);\r\n pointer.transition()\r\n .duration(config.transitionMs)\r\n .ease(d3.easeElastic)\r\n .attr('transform', 'rotate(' + newAngle + ')');\r\n }\r\n self.gaugemap.update = update;\r\n\r\n configure(configuration);\r\n\r\n\r\n return self.gaugemap;\r\n };\r\n\r\n var powerGauge = gauge('#power-gauge' + '_' + this.uid, {\r\n size: 250,\r\n clipWidth: 250,\r\n clipHeight: 155,\r\n ringWidth: 60,\r\n maxValue: this.max,\r\n MinValue: this.min,\r\n transitionMs: 4000,\r\n });\r\n powerGauge.render(this.needlevalue);\r\n }\r\n}\r\n","
\r\n
\r\n
\r\n
\r\n {{needlevalue}} {{Unit}}
\r\n {{title}}\r\n
\r\n
\r\n\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit } from '@angular/core';\r\nimport {\r\n FormArray,\r\n FormBuilder,\r\n FormControl,\r\n FormGroup,\r\n Validators,\r\n} from '@angular/forms';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { UserGroupService } from 'src/app/services/user-group/user-group.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-edit-user-group',\r\n templateUrl: './edit-user-group.component.html',\r\n styleUrls: ['./edit-user-group.component.css'],\r\n})\r\nexport class EditUserGroupComponent implements OnInit {\r\n private readonly stationsApi = AppSettings.API_END_POINT + 'Station?id=' + AppSettings.CLIENT_ID;\r\n private readonly userGroupApi = AppSettings.API_END_POINT + 'UserGroup';\r\n \r\n constructor(private fb: FormBuilder, private http: HttpClient, private route: ActivatedRoute,private router: Router, private userGroupService: UserGroupService,) { }\r\n userGroupForm;\r\n userGroupData;\r\n stationsData;\r\n stationsArray;\r\n userGroupId;\r\n allDataReceived = false;\r\n clientId = AppSettings.CLIENT_ID;\r\n ngOnInit(): void {\r\n this.userGroupId = this.route.snapshot.params['id'];\r\n // console.log(\"Usergroup id:\",this.userGroupId);\r\n\r\n this.userGroupForm = this.fb.group({\r\n GroupName: ['', Validators.required],\r\n Description: [''],\r\n stationsSelected: this.fb.array([]),\r\n });\r\n\r\n this.getUserGroup(this.clientId, this.userGroupId).subscribe(\r\n (res) => {\r\n // console.log('Res', res[0].Result[0]);\r\n this.userGroupData = res[0].Result[0];\r\n this.userGroupForm.patchValue({\r\n GroupName: this.userGroupData.GroupName,\r\n Description: this.userGroupData.Description,\r\n });\r\n this.getStations().subscribe((res) => {\r\n // console.log(res);\r\n this.stationsData = res;\r\n this.stationsArray = this.userGroupData.StationsPermission.map(\r\n (currentStation) => {\r\n return {\r\n Name: this.stationsData.find(\r\n (station) => station.Id === currentStation.StationId\r\n ).Name,\r\n Id: this.stationsData.find(\r\n (station) => station.Id === currentStation.StationId\r\n ).Id,\r\n };\r\n }\r\n );\r\n // console.log('Station name array:', this.stationsArray);\r\n // console.log(\"station data 0:\", this.stationsData[0].Name);\r\n\r\n this.userGroupData.StationsPermission.map((station) => {\r\n this.stationsSelected.insert(\r\n 0,\r\n this.fb.control(station.PermissionStatus)\r\n );\r\n });\r\n this.allDataReceived = true;\r\n // console.log('station group controls:', this.userGroupForm.controls);\r\n });\r\n },\r\n (error) => {\r\n // console.log(error);\r\n }\r\n );\r\n }\r\n get stationsSelected(): FormArray {\r\n return this.userGroupForm.get('stationsSelected') as FormArray;\r\n }\r\n\r\n getStations() {\r\n return this.http.get(this.stationsApi);\r\n }\r\n\r\n getUserGroup(clientId, userGroupId) {\r\n // return this.http.get(\r\n // AppSettings.API_END_POINT + 'UserGroup?ClientId=1&UserGroupId='+this.userGroupId\r\n // );\r\n return this.userGroupService.getUserGroup(clientId, userGroupId)\r\n }\r\n\r\n onSubmit() {\r\n const stationPermissions = this.stationsSelected.controls.map(\r\n (checkbox, index) => {\r\n return {\r\n StationId: this.stationsArray[index].Id,\r\n PermissionStatus: checkbox.value,\r\n };\r\n }\r\n );\r\n delete this.userGroupForm.value.stationsSelected;\r\n\r\n\r\n const submitData = {\r\n ...this.userGroupForm.value,\r\n ClientId: AppSettings.CLIENT_ID,\r\n UserGroupId: this.userGroupId,\r\n StationsPermission: stationPermissions,\r\n };\r\n\r\n // console.log('Data:', submitData);\r\n\r\n this.updateUserGroupData(submitData);\r\n }\r\n\r\n updateUserGroupData(data) {\r\n this.http.put(this.userGroupApi, data).subscribe(\r\n (res) => {\r\n // console.log('success ', res);\r\n this.userGroupForm.reset();\r\n this.router.navigate(['/dashboard/user-group']);\r\n },\r\n (error) => {\r\n // console.log(error);\r\n this.userGroupForm.reset();\r\n }\r\n );\r\n\r\n }\r\n\r\n}\r\n\r\n","
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Edit User Group

\r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Select Stations
\r\n
\r\n \r\n \r\n \r\n {{ stationsArray[i].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 Update\r\n \r\n \r\n Cancel\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n","import { Injectable } from '@angular/core';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { Router } from '@angular/router';\r\nimport { BehaviorSubject, Observable, throwError } from 'rxjs';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { catchError, tap } from 'rxjs/operators';\r\nimport { log } from 'console';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthService {\r\n user = new BehaviorSubject(null);\r\n private readonly login_url = AppSettings.API_END_POINT + 'Login/UserLogin';\r\n private readonly Client_url = AppSettings.API_END_POINT + 'Client/';\r\n\r\n constructor(private http: HttpClient, private router: Router) { }\r\n\r\n login(email: string, password: string, device: string): Observable {\r\n const postData = {\r\n UserName: email,\r\n Password: password,\r\n Device: device\r\n };\r\n // console.log(postData);\r\n return this.http.post(this.login_url, postData).pipe(\r\n tap((res) => {\r\n // console.log('authres', res);\r\n if (res[0].IsSuccess) {\r\n const userData = res[0].Result[0];\r\n // console.log('User', userData);\r\n this.user.next(userData);\r\n localStorage.setItem('CurrentUser', JSON.stringify(userData));\r\n \r\n }\r\n }),\r\n catchError((err) => {\r\n // console.log(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n getClient(clientId: string): Observable {\r\n // console.log(postData);\r\n return this.http.get(this.Client_url+parseInt(clientId)).pipe(\r\n tap((res) => {\r\n // console.log('authres', res);\r\n }),\r\n catchError((err) => {\r\n // console.log(err);\r\n return throwError(err);\r\n })\r\n );\r\n }\r\n\r\n\r\n logout() {\r\n this.user.next(null);\r\n this.router.navigateByUrl('');\r\n localStorage.removeItem('CurrentUser');\r\n localStorage.removeItem('CurrentSidebar');\r\n localStorage.removeItem('lastStation');\r\n localStorage.removeItem('ClientId');\r\n }\r\n\r\n autoLogin() {\r\n const user = JSON.parse(localStorage.getItem('CurrentUser'));\r\n if (!user) {\r\n return;\r\n }\r\n this.user.next(user);\r\n }\r\n}\r\n","import { ElementRef } from '@angular/core';\r\nimport { SimpleChanges } from '@angular/core';\r\nimport { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport * as d3 from 'd3';\r\nimport { element } from 'protractor';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-multi-line-chart',\r\n templateUrl: './multi-line-chart.component.html',\r\n styleUrls: ['./multi-line-chart.component.css']\r\n})\r\nexport class MultiLineChartComponent implements OnInit {\r\n\r\n public figureId = null;\r\n public data: any;\r\n private margin = 10;\r\n private width = 850 - (this.margin * 2);\r\n private height = 400 - (this.margin * 2);\r\n\r\n @ViewChild(\"multilinechartfigure\") divView: ElementRef;\r\n\r\n @Input()\r\n ChartTitle: string\r\n @Input()\r\n Data: any\r\n @Input()\r\n XKey: string\r\n @Input()\r\n YKey: string\r\n @Input()\r\n ColorKey: string\r\n @Input()\r\n LabelX: string\r\n @Input()\r\n LabelY: string\r\n @Input()\r\n ToolTipUnit: string\r\n @Input()\r\n YMinimum: number\r\n @Input()\r\n YMinimumAdjust: number\r\n @Input()\r\n YMaximum: number\r\n @Input()\r\n YMaximumAdjust: number\r\n @Input()\r\n Unit: string\r\n @Input()\r\n LimitLineX: string\r\n @Input()\r\n MaxVal: number\r\n\r\n constructor() {\r\n this.figureId = \"multi-line-chart-\" + generateUniqueId();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.Data.currentValue) {\r\n this.data = changes.Data.currentValue\r\n console.log(this.data,\"dataa\")\r\n this.chart(this.data);\r\n }\r\n }\r\n\r\n ngAfterViewInit(): void { \r\n console.log(this.data,\"dataa\")\r\n this.chart(this.data);\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n getStringDate(date: Date) {\r\n return date.getFullYear().toString() +\r\n this.pad2(date.getMonth() + 1) +\r\n this.pad2(date.getDate()) +\r\n this.pad2(date.getHours()) +\r\n this.pad2(date.getMinutes()) +\r\n this.pad2(date.getSeconds())\r\n }\r\n pad2(n) {\r\n return n < 10 ? '0' + n : n\r\n }\r\n\r\n\r\n chart(data) {\r\n\r\n if (!this.Unit)\r\n this.Unit = \"Decibel (db)\";\r\n if(this.YKey)\r\n {\r\n var ykeyUnit = this.YKey;\r\n }\r\n else{\r\n var ykeyUnit = \" \";\r\n }\r\n var unit = this.Unit\r\n var minmum = this.YMinimum;\r\n var maximum = this.YMaximum;\r\n var minmumAdjust = this.YMinimumAdjust;\r\n var maximumAdjust = this.YMaximumAdjust;\r\n var limitLineX = this.LimitLineX;\r\n var maxVal = this.MaxVal;\r\n\r\n if (!data || data.length <= 0) {\r\n d3.select(\"#\" + this.figureId + \">svg\").remove();\r\n return;\r\n }\r\n data = JSON.parse(JSON.stringify(data))\r\n //data = JSON.parse(JSON.stringify(data, [\"Time\", \"NoiseMax\", \"NoiseAvg\", \"NoiseMin\"]));\r\n\r\n\r\n data.forEach(element => {\r\n element.Time = this.getStringDate(new Date(element.Time));\r\n });\r\n const items = data\r\n const replacer = (key, value) => value === null ? '' : value // specify how you want to handle null values here\r\n const header = Object.keys(items[0])\r\n const csv = [\r\n header.join(','), // header row first\r\n ...items.map(row => header.map(fieldName => JSON.stringify(row[fieldName], replacer)).join(','))\r\n ].join('\\r\\n')\r\n data = d3.csvParse(csv);\r\n\r\n\r\n\r\n //Columns\r\n var keys = data.columns.slice(1);\r\n\r\n var parseTime = d3.timeParse(\"%Y%m%d%H%M%S\"),\r\n formatDate = d3.timeFormat(\"%Y-%m-%d %I:%M %p\"),\r\n bisectDate = d3.bisector(d => d.Time).left,\r\n formatValue = d3.format(\",.0f\");\r\n\r\n data.forEach(function (d) {\r\n d.Time = parseTime(d.Time);\r\n return d;\r\n })\r\n\r\n d3.select(\"#\" + this.figureId + \">svg\").remove();\r\n\r\n d3.select(\"figure#\" + this.figureId + \"\").append(\"svg\")\r\n .attr(\"width\", this.width + (this.margin * 2))\r\n .attr(\"height\", this.height + (this.margin * 2));\r\n\r\n\r\n\r\n var svg = d3.select(\"figure#\" + this.figureId + \">svg\"),\r\n margin = { top: 35, right: 0, bottom: 0, left: 45 },\r\n width = +this.width - margin.left - margin.right,\r\n height = +this.height - margin.top - margin.bottom;\r\n\r\n\r\n var x = d3.scaleTime()\r\n .rangeRound([margin.left, width - margin.right])\r\n .domain(d3.extent(data, d => d.Time))\r\n\r\n var y = d3.scaleLinear()\r\n .rangeRound([height - margin.bottom, margin.top])\r\n\r\n var z = d3.scaleOrdinal(d3.schemeCategory10);\r\n\r\n var line = d3.line()\r\n //.curve(d3.curveCardinal)\r\n .x(d => x(d.Time))\r\n .y(d => y(d.degrees));\r\n\r\n\r\n var XLabel =\"Time\";\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n XLabel =\" \";\r\n }\r\n //x-Axis label\r\n svg.append(\"text\")\r\n .style(\"text-anchor\", \"middle\")\r\n .attr(\"y\", height + 30)\r\n .attr(\"x\", width / 2)\r\n .text(XLabel)\r\n .attr(\"dx\", \"-.8em\")\r\n .attr(\"dy\", \".15em\")\r\n\r\n\r\n //y-Axis label\r\n svg.append(\"text\")\r\n .attr(\"transform\", \"rotate(-90)\")\r\n .attr(\"y\", 0)\r\n .attr(\"x\", 0)\r\n .attr(\"dy\", \"0.7em\")\r\n .attr(\"dx\", -(height - 100))\r\n .text(unit);\r\n\r\n\r\n svg.append(\"g\")\r\n .attr(\"class\", \"x-axis\")\r\n .attr(\"transform\", \"translate(0,\" + (height - margin.bottom) + \")\")\r\n .call(d3.axisBottom(x).tickFormat(d3.timeFormat(\"%d %b %I:%M %p\")))\r\n .selectAll(\"text\")\r\n .style(\"text-anchor\", \"end\")\r\n .attr(\"dx\", \"-.8em\")\r\n .attr(\"dy\", \".15em\")\r\n .attr(\"transform\", \"rotate(-65)\");\r\n\r\n\r\n\r\n svg.append(\"g\")\r\n .attr(\"class\", \"y-axis\")\r\n .attr(\"transform\", \"translate(\" + margin.left + \",0)\");\r\n\r\n\r\n var focus = svg.append(\"g\")\r\n .attr(\"class\", \"focus\")\r\n .style(\"display\", \"none\");\r\n\r\n focus.append(\"line\").attr(\"class\", \"lineHover\")\r\n .style(\"stroke\", \"#999\")\r\n .attr(\"stroke-width\", 1)\r\n .style(\"shape-rendering\", \"crispEdges\")\r\n .style(\"opacity\", 0.5)\r\n .attr(\"y1\", -height)\r\n .attr(\"y2\", 0);\r\n\r\n focus.append(\"text\").attr(\"class\", \"lineHoverDate\")\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"font-size\", 12)\r\n\r\n var overlay = svg.append(\"rect\")\r\n .attr(\"class\", \"overlay\")\r\n .attr(\"x\", margin.left)\r\n .attr(\"width\", width - margin.right - margin.left)\r\n .attr(\"height\", height)\r\n\r\n\r\n //******************LEGEND************************** */\r\n var colorCodes = [];\r\n var labels = [];\r\n var cy = 450;\r\n var cx = 200;\r\n var cxInc = 120;\r\n\r\n //change for amaala\r\n if(AppSettings.CLIENT_ID==3)\r\n {\r\n colorCodes = [\"#FF5733\", \"#0000FF\"];\r\n }\r\n else\r\n {\r\n colorCodes = [\"#FF5733\", \"#0000FF\", \"#00FF00\"];\r\n }\r\n //upto here\r\n\r\n \r\n //labels = [\"variable A\", \"variable B\", \"variable C\"]\r\n labels = header.filter(item => item !== \"Time\");\r\n if(labels.length==1)\r\n {\r\n colorCodes = [\"#3d33ff\"];\r\n }\r\n\r\n for (let index = 0; index < colorCodes.length; index++) {\r\n if (index != 0)\r\n cx = cx + cxInc\r\n svg.append(\"circle\").attr(\"cx\", cx + 5).attr(\"cy\", cy).attr(\"r\", 6).style(\"fill\", colorCodes[index])\r\n svg.append(\"text\").attr(\"x\", cx + 10).attr(\"y\", cy).text(labels[index]).style(\"font-size\", \"15px\",\"margin-right\" ,\"20px\",\"margin-left\",\"20px\").attr(\"alignment-baseline\", \"middle\")\r\n\r\n }\r\n //*************************************************** */\r\n\r\n\r\n update(\"_1\", 0);\r\n\r\n function update(input, speed) {\r\n //var copy = keys.filter(f => f.includes(input))\r\n var copy = keys;\r\n var cities = copy.map(function (id) {\r\n return {\r\n id: id,\r\n values: data.map(d => {\r\n return {\r\n Time: d.Time, degrees: +d[id]\r\n }\r\n })\r\n };\r\n });\r\n\r\n // y.domain([\r\n // d3.min(cities, d => d3.min(d.values, c => c.degrees)),\r\n // d3.max(cities, d => d3.max(d.values, c => c.degrees))\r\n // ]).nice();\r\n\r\n var _maximum = d3.max(cities, d => d3.max(d.values, c => c.degrees))\r\n var _minmum = d3.min(cities, d => d3.min(d.values, c => c.degrees))\r\n\r\n if (!minmumAdjust)\r\n minmumAdjust = 0;\r\n\r\n if (!maximumAdjust)\r\n maximumAdjust = 0;\r\n\r\n if (!minmum) {\r\n minmum = _minmum\r\n }\r\n else {\r\n if (_minmum < minmum)\r\n minmum = _minmum\r\n }\r\n if(maxVal)\r\n {\r\n maximum=maxVal\r\n }\r\n else if (!maximum) {\r\n maximum = _maximum\r\n }\r\n else {\r\n if (_maximum > maximum)\r\n maximum = _maximum\r\n }\r\n\r\n\r\n y.domain([\r\n minmum + minmumAdjust,\r\n maximum + maximumAdjust\r\n ]).nice();\r\n\r\n svg.selectAll(\".y-axis\").transition()\r\n .duration(speed)\r\n .call(d3.axisLeft(y).tickSize(-width + margin.right + margin.left))\r\n\r\n if (limitLineX)\r\n svg.append(\"line\")\r\n .attr(\"x1\", x(x.domain()[0]))\r\n .attr(\"x2\", x(x.domain()[1]))\r\n .attr(\"y1\", y(limitLineX)) // whatever the y-val should be\r\n .attr(\"y2\", y(limitLineX))\r\n .style(\"stroke\", \"#ff0000\")\r\n if (limitLineX)\r\n svg.append(\"text\")\r\n \r\n \r\n .text(\"Trigger limit 2.5 \")\r\n .attr('transform', 'translate(' + 370 + ',' + 35 + ')')\r\n \r\n\r\n var city = svg.selectAll(\".cities\")\r\n .data(cities);\r\n\r\n city.exit().remove();\r\n city.enter().insert(\"g\", \".focus\").append(\"path\")\r\n .attr(\"class\", \"line cities\")\r\n .style(\"stroke\", d => getProperColorCode(d))\r\n .merge(city)\r\n .transition().duration(speed)\r\n .attr(\"d\", d => line(d.values))\r\n\r\n tooltip(copy);\r\n }\r\n\r\n function getProperColorCode(data) { \r\n if (data.id === \"LeqMax\" || data === \"LeqMax\")\r\n return \"#FF5733\";\r\n else if (data.id === \"LeqAvg\" || data === \"LeqAvg\")\r\n return \"#0000FF\";\r\n else if (data.id === \"LeqMin\" || data === \"LeqMin\")\r\n return \"#00FF00\";\r\n else if (data.id === \"Vmax X\" || data === \"Vmax X\")\r\n return \"#FF5733\";\r\n else if (data.id === \"Vmax Y\" || data === \"Vmax Y\")\r\n return \"#0000FF\";\r\n else if (data.id === \"Vmax Z\" || data === \"Vmax Z\")\r\n return \"#00FF00\";\r\n else if (data.id === \"Data2m\" || data === \"Data2m\")\r\n return \"#FF5733\"; \r\n else if (data.id === \"Data10m\" || data === \"Data10m\")\r\n return \"#0000FF\"; \r\n else if (data.id === \"Temperature2m\" || data === \"Temperature2m\")\r\n return \"#FF5733\";\r\n else if (data.id === \"Temperature10m\" || data === \"Temperature10m\")\r\n return \"#0000FF\"; \r\n else if (data.id === \"Humidity2m\" || data === \"Humidity2m\")\r\n return \"#FF5733\";\r\n else if (data.id === \"Humidity10m\" || data === \"Humidity10m\")\r\n return \"#0000FF\"; \r\n else if (data.id === \"WindSpeed2m\" || data === \"WindSpeed2m\")\r\n return \"#FF5733\";\r\n else if (data.id === \"WindSpeed10m\" || data === \"WindSpeed10m\")\r\n return \"#0000FF\"; \r\n else return \"#0000FF\"\r\n }\r\n\r\n function tooltip(copy) {\r\n var labels = focus.selectAll(\".lineHoverText\")\r\n .data(copy)\r\n\r\n labels.enter().append(\"text\")\r\n .attr(\"class\", \"lineHoverText\")\r\n .style(\"fill\", d => getProperColorCode(d))\r\n .attr(\"text-anchor\", \"start\")\r\n .attr(\"font-size\", 12)\r\n .attr(\"dy\", (_, i) => 1 + i * 2 + \"em\")\r\n .merge(labels);\r\n\r\n var circles = focus.selectAll(\".hoverCircle\")\r\n .data(copy)\r\n\r\n circles.enter().append(\"circle\")\r\n .attr(\"class\", \"hoverCircle\")\r\n .style(\"fill\", d => getProperColorCode(d))\r\n .attr(\"r\", 2.5)\r\n .merge(circles);\r\n\r\n svg.selectAll(\".overlay\")\r\n .on(\"mouseover\", function () { focus.style(\"display\", null); })\r\n .on(\"mouseout\", function () { focus.style(\"display\", \"none\"); })\r\n .on(\"mousemove\", mousemove);\r\n\r\n function mousemove() {\r\n try {\r\n\r\n var x0 = x.invert(d3.pointer(event, this)[0]),\r\n i = bisectDate(data, x0, 1),\r\n d0 = data[i - 1],\r\n d1 = data[i],\r\n d = x0 - d0.Time > d1.Time - x0 ? d1 : d0;\r\n focus.select(\".lineHover\")\r\n .attr(\"transform\", \"translate(\" + x(d.Time) + \",\" + height + \")\");\r\n\r\n focus.select(\".lineHoverDate\")\r\n // .attr(\"transform\",\r\n // \"translate(\" + x(d.Time) + \",\" + (height + margin.bottom) + \")rotate(-65)\")\r\n .attr(\"transform\",\r\n \"translate(\" + x(d.Time) + \",\" + (height + margin.bottom + 80) + \")\")\r\n .text(formatDate(d.Time));\r\n\r\n focus.selectAll(\".hoverCircle\")\r\n .attr(\"cy\", e => y(d[e]))\r\n .attr(\"cx\", x(d.Time));\r\n\r\n focus.selectAll(\".lineHoverText\")\r\n .attr(\"transform\",\r\n \"translate(\" + (x(d.Time)) + \",\" + height / 2.5 + \")\")\r\n .text(e => e + \" \" + \" \" + (d[e]) + \" \" + unit);\r\n\r\n //for amaala \r\n if(AppSettings.CLIENT_ID==3)\r\n focus.selectAll(\".lineHoverText\")\r\n .attr(\"transform\",\r\n \"translate(\" + (x(d.Time)) + \",\" + height / 2.5 + \")\")\r\n .text(e => e + \" \" + \" \" + (d[e]) + \" \" + ykeyUnit);\r\n\r\n //upto here\r\n //.text(e => e + \" \" + \" \" + formatValue(d[e]) + \" db\");\r\n\r\n x(d.Time) > (width - width / 4)\r\n ? focus.selectAll(\"text.lineHoverText\")\r\n .attr(\"text-anchor\", \"end\")\r\n .attr(\"dx\", -10)\r\n : focus.selectAll(\"text.lineHoverText\")\r\n .attr(\"text-anchor\", \"start\")\r\n .attr(\"dx\", 10)\r\n\r\n } catch (error) {\r\n\r\n }\r\n\r\n }\r\n }\r\n d3.select(\"figure#\" + this.figureId + \">svg\")\r\n .attr(\"width\", this.width + (this.margin * 2))\r\n .attr(\"height\", this.height + (this.margin * 2) + 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

{{ChartTitle}}

\r\n
\r\n
\r\n \r\n
\r\n
\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 { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class StationsService {\r\n\r\n private readonly stations_url = AppSettings.API_END_POINT + 'station/';\r\n private readonly amaalastation_url = AppSettings.API_END_POINT + 'station/GetStations';\r\n private readonly station_url = AppSettings.API_END_POINT + 'station/GetStationsById';\r\n private readonly all_stations_summary = AppSettings.API_END_POINT + 'Station/GetStationSummary?clientId=';\r\n private readonly all_stations_color_codes = AppSettings.API_END_POINT + 'General/GeneralParameterCodeColor?ClientId=';\r\n private readingsAvailable: readingAvailability\r\n private readingAvailable: any;\r\n\r\n constructor(private http: HttpClient) {\r\n try { \r\n this.getstationvisble(); \r\n } catch (error) {\r\n \r\n }\r\n \r\n }\r\n\r\n getstationvisble()\r\n {\r\n try {\r\n this.getAvailbleRedingTypesForStation().subscribe((res) => {\r\n this.readingAvailable = res;\r\n console.log('reading from table menu',this.readingAvailable);\r\n }, (error) => {\r\n console.log(error)\r\n })\r\n\r\n } catch (error) {\r\n\r\n }\r\n }\r\n getStations(ClientId: Number): Observable {\r\n // this.http is a HttpClient library provide by @angular/common\r\n // we are calling .get() method over this.http object\r\n // this .get() method takes URL to call API\r\n return this.http.get(this.stations_url + ClientId);\r\n }\r\n\r\n getStationsamala(ClientId: Number): Observable {\r\n // this.http is a HttpClient library provide by @angular/common\r\n // we are calling .get() method over this.http object\r\n // this .get() method takes URL to call API\r\n return this.http.get(this.amaalastation_url + \"?Id=\"+ ClientId);\r\n }\r\n\r\n getStation(StationId: Number): Observable {\r\n // this.http is a HttpClient library provide by @angular/common\r\n // we are calling .get() method over this.http object\r\n // this .get() method takes URL to call API\r\n return this.http.get(this.station_url + \"?StationId=\" + StationId);\r\n }\r\n\r\n\r\n getAllStationsSummary(client_id: number) {\r\n return this.http.get(this.all_stations_summary + client_id);\r\n }\r\n getAvailbleRedingTypesForStation() {\r\n console.log(\"client id\",AppSettings.CLIENT_ID);\r\n \r\n \r\n return this.http.get(\r\n AppSettings.API_END_POINT + \"general/getstationsettings?clientid=\" + AppSettings.CLIENT_ID\r\n );\r\n }\r\n getTime()\r\n {\r\n return this.http.get(AppSettings.API_END_POINT + \"AllGraphData/GetTime\" );\r\n }\r\n\r\n getAllColorCodes() {\r\n return this.http.get(\r\n this.all_stations_color_codes + AppSettings.CLIENT_ID\r\n );\r\n }\r\n\r\n getAvailableReadingsForStation(station): readingAvailability { \r\n var current_station_id = null;\r\n if (station) {\r\n //console.log(\"station visible\",station);\r\n if (station.id) {\r\n current_station_id = station.id;\r\n }\r\n if (station.Id) {\r\n current_station_id = station.Id;\r\n }\r\n if (station.StationId) {\r\n current_station_id = station.StationId;\r\n }\r\n if (current_station_id) {\r\n\r\n this.readingsAvailable = {\r\n Pm10: true,\r\n Pm25: true,\r\n humidity: true,\r\n temperature: true,\r\n windSpeed: true,\r\n windDirection: true,\r\n noise: true,\r\n heatIndex:true,\r\n event:true,\r\n background:true,\r\n SolarRadiation:true,\r\n WBGT:true,\r\n barometricPressure:true, \r\n wetBulbTemperature:true,\r\n duePointTemperature:true,\r\n soilTemperature:true,\r\n angleAndDirections2m:true,\r\n Humidity2m:true,\r\n Temperature2m:true,\r\n WindSpeed2m:true,\r\n SolarRadiationDHI:true,\r\n VWConductivity:true,\r\n ElectricalC:true,\r\n Cloud_Cover:true ,\r\n Visibility:true,\r\n Rain:true ,\r\n Temperature2m10m:true ,\r\n Humidity2m10m:true ,\r\n WindSpeed2m10m:true ,\r\n WindSpeed10m:true ,\r\n WindDirection2m:true ,\r\n WindDirection10m:true \r\n }\r\n \r\n for (var k in this.readingAvailable) {\r\n if (this.readingAvailable[k].StationId == current_station_id) {\r\n this.readingsAvailable.Pm10 = this.readingAvailable[k].PM10;\r\n this.readingsAvailable.Pm25 = this.readingAvailable[k].PM2_5;\r\n this.readingsAvailable.humidity = this.readingAvailable[k].Humidity;\r\n this.readingsAvailable.temperature = this.readingAvailable[k].Temparature;\r\n this.readingsAvailable.windSpeed = this.readingAvailable[k].WindSpeed;\r\n this.readingsAvailable.windDirection = this.readingAvailable[k].WindDirection;\r\n this.readingsAvailable.noise = this.readingAvailable[k].NoiseAvg;\r\n this.readingsAvailable.heatIndex = this.readingAvailable[k].HeatIndex;\r\n this.readingsAvailable.event = this.readingAvailable[k].EventVibration;\r\n this.readingsAvailable.background = this.readingAvailable[k].BackgroundVibration;\r\n this.readingsAvailable.SolarRadiation = this.readingAvailable[k].SolarRadiationGHI;\r\n this.readingsAvailable.WBGT = this.readingAvailable[k].WBGTSensor;\r\n this.readingsAvailable.barometricPressure = this.readingAvailable[k].BarometricPressure; \r\n this.readingsAvailable.wetBulbTemperature = this.readingAvailable[k].WetBulbTemperature;\r\n this.readingsAvailable.duePointTemperature = this.readingAvailable[k].DewPointTemperature;\r\n this.readingsAvailable.soilTemperature = this.readingAvailable[k].SoilTemperature;\r\n this.readingsAvailable.angleAndDirections2m = this.readingAvailable[k].WinDirection2m10m;\r\n this.readingsAvailable.WindDirection2m = this.readingAvailable[k].WindDirection2m;\r\n this.readingsAvailable.WindDirection10m = this.readingAvailable[k].WinDirection10m;\r\n if (this.readingAvailable[k].RelativeHumidity2m == null) \r\n {\r\n this.readingsAvailable.Humidity2m = false;\r\n } \r\n else\r\n this.readingsAvailable.Humidity2m = this.readingAvailable[k].RelativeHumidity2m; \r\n if (this.readingAvailable[k].AmbientTemparature2m == null) \r\n {\r\n this.readingsAvailable.Temperature2m = false;\r\n } \r\n else\r\n this.readingsAvailable.Temperature2m = this.readingAvailable[k].AmbientTemparature2m; \r\n //this.readingsAvailable.Temperature2m = this.readingAvailable[k].Temperature2m;\r\n this.readingsAvailable.WindSpeed2m = this.readingAvailable[k].WindSpeed2m;\r\n this.readingsAvailable.SolarRadiationDHI = this.readingAvailable[k].SolarRadiationDHI;\r\n this.readingsAvailable.VWConductivity = this.readingAvailable[k].SoilMoistureVWC;\r\n this.readingsAvailable.ElectricalC = this.readingAvailable[k].SoilMoistureEC;\r\n this.readingsAvailable.Cloud_Cover = this.readingAvailable[k].Cloud_Cover;\r\n this.readingsAvailable.Visibility = this.readingAvailable[k].Visibility;\r\n this.readingsAvailable.Rain = this.readingAvailable[k].Rain;\r\n this.readingsAvailable.Temperature2m10m = this.readingAvailable[k].Temperature2m10m;\r\n this.readingsAvailable.Humidity2m10m = this.readingAvailable[k].Humidity2m10m;\r\n this.readingsAvailable.WindSpeed2m10m = this.readingAvailable[k].WindSpeed2m10m;\r\n this.readingsAvailable.WindSpeed10m = this.readingAvailable[k].WindSpeed10m;\r\n\r\n\r\n\r\n\r\n\r\n break;\r\n }\r\n }\r\n\r\n }\r\n }\r\n return this.readingsAvailable;\r\n }\r\n\r\n}\r\n\r\n","import { Injectable } from '@angular/core';\r\nimport { Observable, Subject } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class MessageService {\r\n private stationChange = new Subject();\r\n private showStationSidemenu = new Subject();\r\n public Mobile;\r\n private sidebarChange = new Subject();\r\n\r\n constructor() {\r\n this.Mobile = /iPhone|iPad|iPod|Android/i.test(navigator.userAgent);\r\n }\r\n\r\n getLastStation(): any {\r\n var lastStation = localStorage.getItem('lastStation');\r\n if (lastStation) {\r\n lastStation = JSON.parse(lastStation);\r\n }\r\n return lastStation;\r\n }\r\n\r\n sendStationChange(station: any, callback) {\r\n localStorage.setItem('lastStation', JSON.stringify(station));\r\n this.stationChange.next(station);\r\n callback();\r\n }\r\n\r\n clearStationChange() {\r\n this.stationChange.next();\r\n }\r\n\r\n getStationChange(): Observable {\r\n return this.stationChange.asObservable();\r\n }\r\n\r\n changeSidebar(newSidebar) {\r\n this.sidebarChange.next(newSidebar);\r\n localStorage.setItem('CurrentSidebar', JSON.stringify(newSidebar));\r\n }\r\n\r\n getSidebar() {\r\n return this.sidebarChange;\r\n }\r\n\r\n getLastSidebar() {\r\n let lastSidebar = localStorage.getItem('CurrentSidebar');\r\n // console.log('lastsidebar:', lastSidebar);\r\n return lastSidebar;\r\n }\r\n\r\n /*Sidebar */\r\n\r\n setStationSideMenuVisibility(show: boolean) {\r\n this.showStationSidemenu.next(show);\r\n localStorage.setItem('SideMenuVisibility', JSON.stringify(show));\r\n }\r\n\r\n getLastSidebarVisibility(): any {\r\n var sideMenuVisibility = localStorage.getItem('SideMenuVisibility');\r\n if (sideMenuVisibility) {\r\n sideMenuVisibility = JSON.parse(sideMenuVisibility);\r\n }\r\n return sideMenuVisibility;\r\n }\r\n\r\n resetStationSideMenuVisibility() {\r\n this.showStationSidemenu.next();\r\n }\r\n\r\n getStationSideMenuVisibility(): Observable {\r\n return this.showStationSidemenu.asObservable();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, Subject } from 'rxjs';\r\nimport { AppSettings } from 'src/settings.global';\r\nlet graphDatas : any [];\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class EbamDataService {\r\n\r\n \r\n private readonly ebam_pm10_url = AppSettings.API_END_POINT + 'EbamData/PM10';\r\n private readonly ebam_pm25_url = AppSettings.API_END_POINT + 'EbamData/GetPM2_5TwentyfourHour';\r\n private readonly ebam_temperature_url = AppSettings.API_END_POINT + 'EbamData/Temperature';\r\n private readonly ebam_temperature_url_ByDate = AppSettings.API_END_POINT + 'EbamData/Temperature_ByDate';\r\n private readonly ebam_wind_speed_url = AppSettings.API_END_POINT + 'EbamData/WindSpeed';\r\n private readonly ebam_wind_speed_url_ByDate = AppSettings.API_END_POINT + 'EbamData/WindSpeed_ByDate';\r\n private readonly ebam_wind_direction_url = AppSettings.API_END_POINT + 'EbamData/WindDirection';\r\n private readonly ebam_wind_rose_url = AppSettings.API_END_POINT + 'EbamData/GetAngleAndDirections';\r\n private readonly ebam_wind_rose_url_ByDate = AppSettings.API_END_POINT + 'EbamData/GetAngleAndDirections_ByDate';\r\n private readonly ebam_humidity = AppSettings.API_END_POINT + 'EbamData/Humidity';\r\n private readonly ebam_humidity_ByDate = AppSettings.API_END_POINT + 'EbamData/Humidity_ByDate';\r\n private readonly ebam_noise = AppSettings.API_END_POINT + 'EbamData/GetNoiseTwentyfourHour';\r\n private readonly ebam_noise_background = AppSettings.API_END_POINT + 'Vibration/GetVibrationBackGround';\r\n private readonly ebam_summary = AppSettings.API_END_POINT + 'EbamData/Summary';\r\n private readonly ebam_all_graph_data = AppSettings.API_END_POINT + 'AllGraphData/GetAllGraphData';\r\n private readonly ebam_pm10_GraphlegendCodeColor = AppSettings.API_END_POINT + 'AllGraphData/GraphlegendCodeColor';\r\n private readonly ebam_basic_report_minute = AppSettings.API_END_POINT + 'AllGraphData/GetBasicReportByMinute';\r\n private readonly ebam_basic_report_minute_celometer = AppSettings.API_END_POINT + 'AllGraphData/GetBasicReportByMinuteCeilometer';\r\n private readonly ebam_basic_report_minute_Visibility = AppSettings.API_END_POINT + 'AllGraphData/GetBasicReportByMinuteVisibility'; \r\n private readonly ebam_basic_report_hour = AppSettings.API_END_POINT + 'AllGraphData/GetBasicReportByHour';\r\n private readonly event_graph_data = AppSettings.API_END_POINT + 'Vibration/GetEventVibration';\r\n private readonly ebam_noise_event = AppSettings.API_END_POINT + 'Vibration/GetEventVibrationTable';\r\n private readonly ebam_vibration_background_byminute = AppSettings.API_END_POINT + 'AllGraphData/GetVibrationBackGroundMinute';\r\n private readonly ebam_vibration_background_byhourly = AppSettings.API_END_POINT + 'AllGraphData/GetVibrationBackGroundHour';\r\n private readonly ebam_wet_bulb_temperature = AppSettings.API_END_POINT + 'EbamData/WetBulbTemperature';\r\n private readonly ebam_wet_bulb_temperature_ByDate = AppSettings.API_END_POINT + 'EbamData/WetBulbTemperature_ByDate';\r\n private readonly ebam_humidity_two = AppSettings.API_END_POINT + 'EbamData/Humidity2m';\r\n private readonly ebam_humidity_two_ByDate = AppSettings.API_END_POINT + 'EbamData/Humidity2m_ByDate';\r\n private readonly ebam_temperature_url_two = AppSettings.API_END_POINT + 'EbamData/Temperature2m';\r\n private readonly ebam_temperature_url_two_ByDate = AppSettings.API_END_POINT + 'EbamData/Temperature2m_ByDate';\r\n private readonly ebam_wind_rose_url_two = AppSettings.API_END_POINT + 'EbamData/GetAngleAndDirections2m';\r\n private readonly ebam_wind_rose_url_two_ByDate = AppSettings.API_END_POINT + 'EbamData/GetAngleAndDirections2m_ByDate';\r\n private readonly ebam_wind_speed_url_two = AppSettings.API_END_POINT + 'EbamData/WindSpeed2m';\r\n private readonly ebam_wind_speed_url_two_ByDate = AppSettings.API_END_POINT + 'EbamData/WindSpeed2m_ByDate';\r\n private readonly ebam_soil_temp = AppSettings.API_END_POINT + 'EbamData/SoilTemperature';\r\n private readonly ebam_soil_temp_ByDate = AppSettings.API_END_POINT + 'EbamData/SoilTemperature_ByDate';\r\n private readonly ebam_wbgt = AppSettings.API_END_POINT + 'EbamData/WBGT';\r\n private readonly ebam_wbgt_ByDate = AppSettings.API_END_POINT + 'EbamData/WBGT_ByDate';\r\n private readonly ebam_heatIndex = AppSettings.API_END_POINT + 'EbamData/HeatIndex';\r\n private readonly ebam_heatIndex_ByDate = AppSettings.API_END_POINT + 'EbamData/HeatIndex_ByDate';\r\n private readonly ebam_Bpressure = AppSettings.API_END_POINT + 'EbamData/BarometricPressure';\r\n private readonly ebam_Bpressure_ByDate = AppSettings.API_END_POINT + 'EbamData/BarometricPressure_ByDate';\r\n private readonly ebam_solarRadiation = AppSettings.API_END_POINT + 'EbamData/SolarRadiationGHI';\r\n private readonly ebam_solarRadiation_ByDate = AppSettings.API_END_POINT + 'EbamData/SolarRadiationGHI_ByDate';\r\n\r\n private readonly ebam_WindDirection_graph_data = AppSettings.API_END_POINT + 'AllGraphData/GetAllGraphDataByDate';\r\n\r\n\r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n constructor(private http: HttpClient) {\r\n\r\n }\r\n todayDate = Date.now();\r\n getEbamDataPM25(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_pm25_url + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataPM10(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_pm10_url + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataTemprature(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_temperature_url + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataTemprature_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_temperature_url_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataWindSpeed(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wind_speed_url + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataWindSpeed_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_wind_speed_url_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataWindDirection(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wind_direction_url + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataWindRose(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wind_rose_url + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataWindRose_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_wind_rose_url_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataHumidity(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_humidity + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataHumidity_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_humidity_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataNoise(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_noise + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataNoiseBackground(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_noise_background + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n getEbamDataNoiseEvent(StationId: number): Observable {\r\n const currentDate = new Date()\r\n var strcurrentDate=currentDate.toISOString().split('T')[0]\r\n return this.http.get(this.ebam_noise_event + '?StationId=' + StationId + '&EventDate=' + strcurrentDate);\r\n }\r\n getEbamDataSummary(StationId: number): Observable {\r\n return this.http.get(this.ebam_summary + '?StationId=' + StationId);\r\n }\r\n\r\n getpm10_GraphlegendCodeColor(graphType) {\r\n return this.http.get(this.ebam_pm10_GraphlegendCodeColor + \"?GraphType=\" + graphType + \"&clientid=\" + AppSettings.CLIENT_ID);\r\n }\r\n\r\n getEventGraphData(eventId) {\r\n return this.http.get(this.event_graph_data + \"?Eventid=\" + eventId);\r\n }\r\n\r\n getEbamDataWetBuldTemperature(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wet_bulb_temperature + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n getEbamDataWetBuldTemperature_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_wet_bulb_temperature_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n \r\n getEbamDataHumidityTwo(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_humidity_two + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataHumidityTwo_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_humidity_two_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataTempraturetwo(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_temperature_url_two + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataTempraturetwo_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_temperature_url_two_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataWindRosetwo(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wind_rose_url_two + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataWindRosetwo_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_wind_rose_url_two_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataWindSpeed2m(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wind_speed_url_two + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataWindSpeed2m_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_wind_speed_url_two_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataSoilTemperature(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_soil_temp + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataSoilTemperature_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_soil_temp_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataWBGT(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_wbgt + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataWBGT_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_wbgt_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataHeatIndex(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_heatIndex + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataHeatIndex_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_heatIndex_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamDataBpressure(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_Bpressure + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamDataBpressure_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_Bpressure_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n\r\n getEbamSolarRadiation(StationId: number, Period): Observable {\r\n return this.http.get(this.ebam_solarRadiation + '?StationId=' + StationId + '&Period=' + Period);\r\n }\r\n\r\n getEbamSolarRadiation_ByDate(StationId: number, Start:any, End:any): Observable {\r\n return this.http.get(this.ebam_solarRadiation_ByDate + '?StationId=' + StationId + '&Start=' + Start + '&End=' + End);\r\n }\r\n \r\n \r\n getAllGraphData(StationId: number,\r\n fromDate: any,\r\n toDate: any,\r\n pm10: boolean,\r\n temperature: boolean,\r\n humidity: boolean,\r\n windSpeed: boolean,\r\n windDirection: boolean,\r\n windSpeedAndAngle: boolean,\r\n pm2_5: boolean,\r\n noise: boolean,\r\n vibrationBackground: boolean,\r\n vibrationEvent: boolean,\r\n SolarRadiation:boolean,\r\n WBGT:boolean,\r\n barometricPressure:boolean,\r\n HeatIndex:boolean,\r\n wetBulbTemperature:boolean,\r\n duePointTemperature:boolean,\r\n soilTemperature:boolean,\r\n angleAndDirections2m:boolean,\r\n Humidity2m:boolean,\r\n Temperature2m:boolean,\r\n WindSpeed2m:boolean,\r\n SolarRadiationDHI:boolean,\r\n VWContent:boolean,\r\n ECdata:boolean,\r\n CloudCover:boolean,\r\n Visibility:boolean,\r\n Rain:boolean,\r\n Temperature2m10m:boolean,\r\n Humidity2m10m:boolean,\r\n WindSpeed2m10m:boolean,\r\n WindSpeed10m:boolean,\r\n WindDirection2m:boolean,\r\n WindDirection10m:boolean\r\n ): Observable {\r\n return this.http.get(this.ebam_all_graph_data + '?StationId=' + StationId +\r\n '&From=' + fromDate +\r\n '&To=' + toDate +\r\n '&PM10=' + pm10 +\r\n '&Temperature=' + temperature +\r\n '&Humidity=' + humidity +\r\n '&WindSpeed=' + windSpeed +\r\n '&WindDirection=' + windDirection +\r\n '&WindSpeedAndAngle=' + windSpeedAndAngle +\r\n '&PM2_5=' + pm2_5 +\r\n '&Noise=' + noise +\r\n '&VibrationBackGround=' + vibrationBackground +\r\n '&VibrationEvent=' + vibrationEvent +\r\n '&SolarRadiation=' + SolarRadiation +\r\n '&Wbgt=' + WBGT +\r\n '&BarometricPressure=' + barometricPressure +\r\n '&heatIndex=' + HeatIndex +\r\n '&wetBulbTemperature=' + wetBulbTemperature +\r\n '&duePointTemperature=' + duePointTemperature +\r\n '&soilTemperature=' + soilTemperature +\r\n '&WindSpeedAndAngle2m=' + angleAndDirections2m +\r\n '&humidity2m=' + Humidity2m +\r\n '&Temperature2m=' + Temperature2m +\r\n '&WindSpeed2m=' + WindSpeed2m +\r\n '&SolarRadiationDHI=' + SolarRadiationDHI +\r\n '&vwContentdata=' + VWContent +\r\n '&Electrical_C=' + ECdata +\r\n '&Cloud_cover=' + CloudCover +\r\n '&Visibility=' + Visibility +\r\n '&Rain=' + Rain +\r\n '&Temperature2m10m=' + Temperature2m10m +\r\n '&Humidity2m10m=' + Humidity2m10m +\r\n '&WindSpeed2m10m=' + WindSpeed2m10m +\r\n '&WindSpeed10m=' + WindSpeed10m +\r\n '&WindDirection2m=' + WindDirection2m +\r\n '&WindDirection10m=' + WindDirection10m\r\n );\r\n }\r\n\r\n getBasicReportMinute(StationId: number, fromDate: any, toDate: any): Observable {\r\n return this.http.get(this.ebam_basic_report_minute + '?StationId=' + StationId + '&From=' + fromDate + '&To=' + toDate);\r\n }\r\n getBasicReportMinutecelometer(StationId: number, fromDate: any, toDate: any): Observable {\r\n return this.http.get(this.ebam_basic_report_minute_celometer + '?StationId=' + StationId + '&From=' + fromDate + '&To=' + toDate);\r\n }\r\n getBasicReportfiveminnVisibility(StationId: number, fromDate: any, toDate: any): Observable {\r\n return this.http.get(this.ebam_basic_report_minute_Visibility + '?StationId=' + StationId + '&From=' + fromDate + '&To=' + toDate);\r\n }\r\n\r\n \r\n getBasicReportHour(StationId: number, fromDate: any, toDate: any): Observable {\r\n return this.http.get(this.ebam_basic_report_hour + '?StationId=' + StationId + '&From=' + fromDate + '&To=' + toDate);\r\n }\r\n getVibrationBgBasicReportMinute(StationId: number, fromDate: any, toDate: any): Observable {\r\n return this.http.get(this.ebam_vibration_background_byminute + '?From=' + fromDate + '&To=' + toDate + '&StationId=' + StationId);\r\n }\r\n getVibrationBgBasicReportHourly(StationId: number, fromDate: any, toDate: any): Observable {\r\n return this.http.get(this.ebam_vibration_background_byhourly + '?From=' + fromDate + '&To=' + toDate + '&StationId=' + StationId);\r\n }\r\n storeGraphData(data:any,menudata:any)\r\n {\r\n graphDatas=data;\r\n localStorage.setItem('graphData',JSON.stringify(graphDatas));\r\n localStorage.setItem('menuItem',JSON.stringify(menudata));\r\n console.log(\"setgraphdata\",graphDatas);\r\n }\r\n getGraphData()\r\n {\r\n console.log(\"getdraphdata\",graphDatas);\r\n graphDatas= JSON.parse(localStorage.getItem('graphData'));\r\n var menuDatas= JSON.parse(localStorage.getItem('menuItem'));\r\n\r\n return {graphDatas,menuDatas};\r\n\r\n }\r\n\r\n\r\n getWindDirectionGraphData(StationId: number,\r\n fromDate: any,\r\n toDate: any\r\n // ,windDirection: boolean,\r\n // windSpeedAndAngle: boolean,\r\n ): Observable {\r\n return this.http.get(this.ebam_WindDirection_graph_data + '?StationId=' + StationId +\r\n '&From=' + fromDate +\r\n '&To=' + toDate \r\n // +'&WindDirection=' + windDirection +\r\n // '&WindSpeedAndAngle=' + windSpeedAndAngle\r\n );\r\n }\r\n\r\n\r\n \r\n}\r\n","import { AfterViewInit, Component, Input, OnDestroy, OnInit } from '@angular/core';\r\nimport * as d3 from 'd3';\r\nimport { Subscription } from 'rxjs';\r\nimport { generateUniqueId } from 'src/app/common/commonFunctions';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\n\r\n\r\n@Component({\r\n selector: 'app-wind-direction',\r\n templateUrl: './wind-direction.component.html',\r\n styleUrls: ['./wind-direction.component.css']\r\n})\r\nexport class WindDirectionComponent implements OnInit, OnDestroy, AfterViewInit {\r\n\r\n @Input()\r\n Data: any\r\n\r\n\r\n @Input()\r\n ChartTitle: string\r\n\r\n @Input()\r\n IsWin:boolean\r\n\r\n public data: any;\r\n private svg;\r\n private margin = 100;\r\n private width = 850 - (this.margin * 2);\r\n private height = 400 - (this.margin * 2);\r\n stationSubscription: Subscription;\r\n public figureId = null;\r\n public iswinval =false;\r\n \r\n\r\n\r\n\r\n constructor(private ebamDataService: EbamDataService,\r\n private messageService: MessageService) {\r\n\r\n this.figureId = \"wind-rose-direction-\" + generateUniqueId();\r\n\r\n }\r\n ngAfterViewInit(): void {\r\n if(this.IsWin)\r\n {\r\n this.iswinval=this.IsWin;\r\n }\r\n this.drawEbamBarChartWindDirection();\r\n }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n\r\n\r\n ngOnDestroy() {\r\n if (this.stationSubscription) {\r\n this.stationSubscription.unsubscribe();\r\n }\r\n }\r\n\r\n\r\n\r\n drawEbamBarChartWindDirection() {\r\n\r\n this.data = this.Data;\r\n console.log(this.data);\r\n var columns = [];\r\n for (var k in this.data[0]) \r\n columns.push(k);\r\n this.data.columns = columns;\r\n this.data.columns = this.data.columns.filter(item => item !== \"Angle\");\r\n this.data.columns = this.data.columns.filter(item => item !== \"total\");\r\n this.drawWindRoseChart(this.data);\r\n }\r\n\r\n\r\n private drawWindRoseChart(data) {\r\n d3.select(\"#\" + this.figureId + \">svg>*\").remove();\r\n //var svg = d3.select(\"figure#bar\")\r\n var svg = d3.select(\"#\" + this.figureId + \">svg\"),\r\n width = +svg.attr(\"width\"),\r\n height = +svg.attr(\"height\"),\r\n margin = { top: 40, right: 80, bottom: 40, left: 40 },\r\n innerRadius = 20,\r\n chartWidth = width - margin.left - margin.right,\r\n chartHeight = height - margin.top - margin.bottom,\r\n outerRadius = (Math.min(chartWidth, chartHeight) / 2),\r\n g = svg.append(\"g\").attr(\"transform\", \"translate(\" + width / 2 + \",\" + height / 2 + \")\");\r\n\r\n var angle = d3.scaleLinear()\r\n .range([0, 2 * Math.PI]);\r\n\r\n var radius = d3.scaleLinear()\r\n .range([innerRadius, outerRadius]);\r\n\r\n var x = d3.scaleBand()\r\n .range([0, 2 * Math.PI])\r\n .align(0);\r\n\r\n var y = d3.scaleLinear() //you can try scaleRadial but it scales differently\r\n .range([innerRadius, outerRadius]);\r\n\r\n var z = d3.scaleOrdinal()\r\n .range([\"#aeccad\",\"#FFFF00\",\"#FF0000\",\"#2d1aab\",\"#2d782a\",\"#00FFFF\"]);\r\n\r\n\r\n\r\n for (let index = 0; index < data.length; index++) {\r\n var t = 0\r\n for (let j = 0; j < data.columns.length; j++) {\r\n t = t + Number(data[index][data.columns[j]]);\r\n }\r\n data[index].total = t;\r\n }\r\n\r\n\r\n x.domain(data.map(function (d) { return d.Angle; }));\r\n y.domain([0, d3.max(data, function (d) { return d.total; }) + 10]);\r\n z.domain(data.columns);\r\n // Extend the domain slightly to match the range of [0, 2π].\r\n angle.domain([0, d3.max(data, function (d, i) { return i + 1; })]);\r\n radius.domain([0, d3.max(data, function (d) { return d.y0 + d.y; })]);\r\n var angleOffset = -360.0 / data.length / 2.0;\r\n g.append(\"g\")\r\n .selectAll(\"g\")\r\n .data(d3.stack().keys(data.columns)(data))\r\n .enter().append(\"g\")\r\n .attr(\"fill\", function (d) { return z(d.key); })\r\n .selectAll(\"path\")\r\n .data(function (d) { return d; })\r\n .enter().append(\"path\")\r\n .attr(\"d\", d3.arc()\r\n .innerRadius(function (d) { return y(d[0]); })\r\n .outerRadius(function (d) { return y(d[1]); })\r\n .startAngle(function (d) { return x(d.data.Angle); })\r\n .endAngle(function (d) { return x(d.data.Angle) + x.bandwidth(); })\r\n .padAngle(0.01)\r\n .padRadius(innerRadius))\r\n .attr(\"transform\", function () { return \"rotate(\" + angleOffset + \")\" });\r\n\r\n var label = g.append(\"g\")\r\n .selectAll(\"g\")\r\n .data(data)\r\n .enter().append(\"g\")\r\n .attr(\"text-anchor\", \"middle\")\r\n .attr(\"transform\", function (d) { return \"rotate(\" + ((x(d.Angle) + x.bandwidth() / 2) * 180 / Math.PI - (90 - angleOffset)) + \")translate(\" + (outerRadius + 30) + \",0)\"; });\r\n\r\n label.append(\"text\")\r\n .attr(\"transform\", function (d) { return (x(d.Angle) + x.bandwidth() / 2 + Math.PI / 2) % (2 * Math.PI) < Math.PI ? \"rotate(90)translate(0,16)\" : \"rotate(-90)translate(0,-9)\"; })\r\n .text(function (d) { return d.Angle; })\r\n .style(\"font-size\", 12);\r\n\r\n g.selectAll(\".axis\")\r\n .data(d3.range(angle.domain()[1]))\r\n .enter().append(\"g\")\r\n .attr(\"class\", \"axis\")\r\n .attr(\"transform\", function (d) { return \"rotate(\" + angle(d) * 180 / Math.PI + \")\"; })\r\n .call(d3.axisLeft()\r\n .scale(radius.copy().range([-innerRadius, -(outerRadius + 10)])));\r\n\r\n var yAxis = g.append(\"g\")\r\n .attr(\"text-anchor\", \"middle\");\r\n\r\n var yTick = yAxis\r\n .selectAll(\"g\")\r\n .data(y.ticks(5))\r\n .enter().append(\"g\");\r\n\r\n yTick.append(\"circle\")\r\n .attr(\"fill\", \"none\")\r\n .attr(\"stroke\", \"gray\")\r\n .attr(\"stroke-dasharray\", \"4,4\")\r\n .attr(\"r\", y);\r\n\r\n yTick.append(\"text\")\r\n .attr(\"y\", function (d) { return -y(d); })\r\n .attr(\"dy\", \"-0.35em\")\r\n .attr(\"x\", function () { return -10; })\r\n .attr(\"dx\", \"-0.35em\")\r\n .text(d => (d + \"%\"))\r\n .style(\"font-size\", 14)\r\n .style(\"fill\", \"red\");\r\n\r\n\r\n\r\n var legend = g.append(\"g\")\r\n .selectAll(\"g\")\r\n .data(data.columns.reverse())\r\n .enter().append(\"g\")\r\n // .attr(\"transform\", function(d, i) { return \"translate(-40,\" + (i - (data.columns.length - 1) / 2) * 20 + \")\"; });\r\n .attr(\"transform\", function (d, i) { return \"translate(\" + (outerRadius + 50) + \",\" + (-outerRadius + 70 + (i - (data.columns.length - 1) / 2) * 20) + \")\"; });\r\n\r\n legend.append(\"rect\")\r\n .attr(\"width\", 18)\r\n .attr(\"height\", 18)\r\n .attr(\"fill\", z);\r\n\r\n legend.append(\"text\")\r\n .attr(\"x\", 24)\r\n .attr(\"y\", 9)\r\n .attr(\"dy\", \"0.35em\")\r\n .text(function (d) { return d + \" m/s\"; })\r\n .style(\"font-size\", 10);\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Wind Rose

\r\n
\r\n
{{ChartTitle}}
\r\n
\r\n
\r\n
\r\n

{{ChartTitle}}

\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\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 { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { StationsAllSummaryComponent } from './components/client-stations/stations-all-summary/stations-all-summary.component';\r\nimport { WindDirectionComponent } from './components/dashboard/charts/wind-direction/wind-direction.component';\r\nimport { SummaryComponent } from './components/dashboard/summary.component';\r\nimport { ReportFiltersComponent } from './components/report/report-filters/report-filters.component';\r\nimport { RegulationReportComponent } from './components/report/regulation-report/regulation-report.component'\r\nimport { DailyReportComponent } from './components/report/daily-report/daily-report.component';\r\nimport { UserGroupComponent } from './components/user-group/user-group.component';\r\nimport { CreateUserGroupComponent } from './components/user-group/create-user-group/create-user-group.component';\r\nimport { EditUserGroupComponent } from './components/user-group/edit-user-group/edit-user-group.component';\r\nimport { UserComponent } from './components/user/user.component';\r\nimport { CreateUserComponent } from './components/user/create-user/create-user.component';\r\nimport { EditUserComponent } from './components/user/edit-user/edit-user.component';\r\nimport { LandingPageComponent } from './components/landing-page/landing-page.component';\r\nimport { HomePageComponent } from './components/home-page/home-page.component';\r\nimport { AuthGuard } from './services/guards/auth.guard';\r\nimport { ColorCodesComponent } from './components/color-codes/color-codes.component';\r\nimport { SelectClientComponent } from './components/select-client/select-client.component';\r\nimport { AmaalaDashboardComponent } from './components/amaala-dashboard/amaala-dashboard.component';\r\nimport { StationGraphsComponent } from './components/amaala-dashboard/station-graphs/station-graphs.component';\r\nimport { BasicReportPrintComponent } from './components/report/basic-report-print/basic-report-print.component';\r\n\r\nconst routes: Routes = [\r\n { path: '', component: HomePageComponent },\r\n {\r\n path: 'dashboard', canActivate: [AuthGuard], component: LandingPageComponent, children: [\r\n { path: '', component: StationsAllSummaryComponent },\r\n { path: 'summary/:id', component: SummaryComponent },\r\n { path: 'wind-direction', component: WindDirectionComponent },\r\n { path: 'basic-report', component: ReportFiltersComponent },\r\n { path: 'regulation-report', component: RegulationReportComponent },\r\n { path: 'daily-report', component: DailyReportComponent },\r\n { path: 'user-group', component: UserGroupComponent },\r\n { path: 'create-user-group', component: CreateUserGroupComponent },\r\n { path: 'edit-user-group/:id', component: EditUserGroupComponent },\r\n { path: 'user', component: UserComponent },\r\n { path: 'create-user', component: CreateUserComponent },\r\n { path: 'edit-user/:id', component: EditUserComponent },\r\n { path: 'colour-codes', component: ColorCodesComponent },\r\n ]\r\n },\r\n \r\n { path:'SelectClient', component: SelectClientComponent },\r\n { path:'Amaala-dashboard', component: AmaalaDashboardComponent },\r\n { path:'Station-graphs/:id/:station', component: StationGraphsComponent },\r\n { path: 'basic-report-amaala', component: ReportFiltersComponent }, \r\n { path: 'basic-report-print', component: BasicReportPrintComponent }, \r\n { path: '**', redirectTo: '' },\r\n\r\n]\r\n\r\n@NgModule({\r\n imports: [RouterModule.forRoot(routes)],\r\n exports: [RouterModule]\r\n})\r\nexport class AppRoutingModule { }\r\n","import { HttpClient } from '@angular/common/http';\r\nimport { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { UserGroupService } from 'src/app/services/user-group/user-group.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n@Component({\r\n selector: 'app-user-group',\r\n templateUrl: './user-group.component.html',\r\n styleUrls: ['./user-group.component.css'],\r\n})\r\nexport class UserGroupComponent implements OnInit {\r\n private readonly userGroupApi =\r\n AppSettings.API_END_POINT + 'UserGroup?ClientId=' + AppSettings.CLIENT_ID;\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n\r\n userGroup;\r\n userGroupData;\r\n dataLength: Number;\r\n columndefs = ['name', 'description', 'action'];\r\n fetctData;\r\n\r\n constructor(private http: HttpClient, private userGroupService: UserGroupService) { }\r\n\r\n ngOnInit(): void {\r\n this.fetctData = this.getUserGroupData().subscribe((res) => {\r\n // console.log(res);\r\n this.userGroup = res[0].Result;\r\n this.userGroup = this.userGroup.filter(group => {\r\n return group.GroupName != \"SuperAdminGroup\"\r\n });\r\n // console.log(this.userGroup);\r\n this.userGroupData = new MatTableDataSource(this.userGroup);\r\n this.userGroupData.paginator = this.paginator;\r\n this.dataLength = this.userGroupData.length;\r\n });\r\n }\r\n\r\n getUserGroupData() {\r\n return this.http.get(this.userGroupApi);\r\n }\r\n\r\n onDelete(id) {\r\n // console.log(`Deleted User group ${id}`);\r\n this.userGroupService.deleteUserGroup(id).subscribe(res => {\r\n // console.log(res)\r\n this.fetctData;\r\n }, error => {\r\n // console.log(error);\r\n })\r\n }\r\n}\r\n","
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

User Groups

\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \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 {{user.GroupName}} Description {{user.Description}} Action\r\n \r\n \r\n
\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 { Component, OnInit } from '@angular/core';\r\nimport { Sidebar } from 'src/app/common/sidebarSelect';\r\nimport { AuthService } from 'src/app/services/auth-service/auth.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\n\r\n@Component({\r\n selector: 'app-admin-sidebar',\r\n templateUrl: './admin-sidebar.component.html',\r\n styleUrls: ['./admin-sidebar.component.css'],\r\n})\r\nexport class AdminSidebarComponent implements OnInit {\r\n constructor(private messageService: MessageService, private authService: AuthService) {}\r\n\r\n ngOnInit(): void {}\r\n\r\n goToHomeSidebar() {\r\n this.messageService.changeSidebar(Sidebar.main);\r\n }\r\n logout(){\r\n this.authService.logout();\r\n }\r\n}\r\n","\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'app-landing-page',\r\n templateUrl: './landing-page.component.html',\r\n styleUrls: ['./landing-page.component.css']\r\n})\r\nexport class LandingPageComponent implements OnInit {\r\n\r\n constructor() { }\r\n\r\n ngOnInit(): void {\r\n }\r\n\r\n}\r\n","
\r\n\r\n \r\n \r\n \r\n \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\t\r\n
\r\n
\r\n
\t\r\n
\r\n
\r\n
\r\n
\t\r\n
\r\n
\r\n
\r\n \r\n
\t\r\n
\r\n
","import { Component, Inject, OnInit } from '@angular/core';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { tileClock } from 'src/app/common/tileClock';\r\nimport { dateAndTime } from 'src/app/common/dateAndTime';\r\nimport { EbamDataService } from 'src/app/services/ebam-dashboard/ebam-data.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\nimport { AppSettings } from 'src/settings.global';\r\nimport { startWith } from 'rxjs/operators';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport html2canvas from 'html2canvas';\r\nimport { jsPDF } from 'jspdf';\r\nimport domtoimage from 'dom-to-image';\r\nimport { DomSanitizer,SafeUrl } from '@angular/platform-browser';\r\n\r\n@Component({\r\n selector: 'app-summary',\r\n templateUrl: './summary.component.html',\r\n styleUrls: ['./summary.component.css']\r\n})\r\nexport class SummaryComponent implements OnInit {\r\n lat = 51.678418;\r\n lng = 7.809007;\r\n\r\n public station_name: string = \"N/A\";\r\n public current_tile_clock: tileClock = { year: 0, monthAndDay: \"N/A\", time: \"N/A\" };\r\n public updated_tile_clock: tileClock = { year: 0, monthAndDay: \"N/A\", time: \"N/A\" };\r\n public mapLocation: string\r\n public station_summary: any\r\n public menuItemVisibility: readingAvailability\r\n private apiInerval = interval(AppSettings.REFRESH_FREQUENCY)\r\n\r\n private apiSubscription: Subscription;\r\n private stationSubscription: Subscription;\r\n public selectdStation: any;\r\n safeUrl: any;\r\n intervelHandle: any;\r\n\r\n constructor(\r\n private ebamDataService: EbamDataService,\r\n private messageService: MessageService,\r\n private stationsService: StationsService,\r\n private route: ActivatedRoute,\r\n private sanitizer: DomSanitizer,\r\n \r\n\r\n ) {\r\n //this.router.navigateByUrl('/dashboard');\r\n }\r\n\r\n ngOnInit(): void {\r\n \r\n var stationId = this.route.snapshot.paramMap.get('id');\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl(''); \r\n this.stationsService.getStation(parseInt(stationId)).subscribe((station: any) => {\r\n if (station) {\r\n this.stationsService.getstationvisble();\r\n this.getDashBoardTiles(station[0]);\r\n this.selectdStation = station[0];\r\n this.liveClock();\r\n this.subscribeToStationChange();\r\n this.hideUnnecessaryTilesForStation();\r\n \r\n }\r\n });\r\n }\r\n \r\n \r\n \r\n hideUnnecessaryTilesForStation() {\r\n var station = this.messageService.getLastStation();\r\n this.menuItemVisibility = this.stationsService.getAvailableReadingsForStation(station);\r\n console.log(this.menuItemVisibility)\r\n }\r\n setLastStationOnReload() {\r\n var lastUsedStation = this.messageService.getLastStation();\r\n if (lastUsedStation) {\r\n this.getDashBoardTiles(lastUsedStation);\r\n }\r\n }\r\n\r\n subscribeToStationChange() {\r\n this.stationSubscription = this.messageService.getStationChange().subscribe(station => {\r\n if (station) {\r\n this.hideUnnecessaryTilesForStation();\r\n this.getDashBoardTiles(station);\r\n this.selectdStation = station\r\n }\r\n });\r\n }\r\n\r\n getDashBoardTiles(station) {\r\n\r\n this.station_name = station.Name\r\n this.mapLocation = station.LoactionImage;\r\n\r\n this.apiSubscription = this.apiInerval.pipe(startWith(0)).subscribe(x => {\r\n this.ebamDataService.getEbamDataSummary(station.Id).subscribe((res: any) => {\r\n if (res) {\r\n\r\n try {\r\n var dAndT = new dateAndTime();\r\n var m = new Date(res[0].Time)\r\n this.updated_tile_clock.year = m.getFullYear();\r\n this.updated_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(m)\r\n + \" \" +\r\n m.getDate();\r\n this.updated_tile_clock.time = m.toLocaleTimeString('en-GB')\r\n\r\n this.station_summary = res[0];\r\n console.log(\"testforNA\",this.station_summary);\r\n this.checkWindDirection(this.station_summary.WindDirection);\r\n\r\n }\r\n catch (e) {\r\n }\r\n\r\n }\r\n });\r\n });\r\n }\r\n\r\n liveClock() {\r\n var dAndT = new dateAndTime();\r\n this.intervelHandle = setInterval(() => {\r\n var m = new Date();\r\n\r\n this.current_tile_clock.year = m.getFullYear();\r\n this.current_tile_clock.monthAndDay = dAndT.getThreeLetterMonthName(m)\r\n + \" \" +\r\n m.getDate();\r\n this.current_tile_clock.time = m.toLocaleTimeString('en-GB')\r\n\r\n\r\n }, 1);\r\n }\r\n\r\n ngOnDestroy() {\r\n \r\n if (this.stationSubscription) {\r\n this.stationSubscription.unsubscribe();\r\n }\r\n\r\n if (this.apiSubscription)\r\n this.apiSubscription.unsubscribe();\r\n\r\n if (this.intervelHandle)\r\n clearInterval(this.intervelHandle)\r\n \r\n }\r\n\r\n public captureScreen() {\r\n domtoimage.toPng(document.getElementById('graph'), { quality: 0.95 })\r\n .then(function (dataUrl) {\r\n //var link = document.createElement('a');\r\n // link.download = 'my-image-name.jpeg';\r\n // link.href = dataUrl;\r\n // link.click();\r\n var pdf = new jsPDF();\r\n var imgData = dataUrl\r\n pdf.addImage(imgData, 50, 50, 100, 50);\r\n pdf.save('converteddoc.pdf');\r\n });\r\n\r\n }\r\n\r\n \r\n private checkWindDirection(direction){\r\n let WindDirection = +(direction);\r\n \r\n if (WindDirection >= 11.25 && WindDirection < 33.75) {\r\n // console.log(\"NNE\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg'); \r\n }\r\n else if (WindDirection >= 33.75 && WindDirection < 56.25) {\r\n // console.log(\"NE\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg'); \r\n }\r\n else if (WindDirection >= 56.25 && WindDirection < 78.75) {\r\n // console.log(\"ENE\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg'); \r\n }\r\n else if (WindDirection >= 78.75 && WindDirection < 101.25) {\r\n // console.log(\"E\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg'); \r\n }\r\n else if (WindDirection >= 101.25 && WindDirection < 123.75) {\r\n // console.log(\"ESE\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg'); \r\n }\r\n else if (WindDirection >= 123.75 && WindDirection < 146.25) {\r\n // console.log(\"SE\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_right.svg'); \r\n }\r\n else if (WindDirection >= 146.25 && WindDirection < 168.75) {\r\n // console.log(\"SSE\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 168.75 && WindDirection < 191.25) {\r\n // console.log(\"S\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 191.25 && WindDirection < 213.75) {\r\n // console.log(\"SSW\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 213.75 && WindDirection < 236.25) {\r\n // console.log(\"SW\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_down.svg');\r\n }\r\n else if (WindDirection >= 236.25 && WindDirection < 258.75) {\r\n // console.log(\"WSW\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg'); \r\n }\r\n else if (WindDirection >= 258.75 && WindDirection < 281.25) {\r\n // console.log(\"W\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg'); \r\n }\r\n else if (WindDirection >= 281.25 && WindDirection < 303.75) {\r\n // console.log(\"WNW\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg'); \r\n }\r\n else if (WindDirection >= 303.75 && WindDirection < 326.25) {\r\n // console.log(\"NW\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_left.svg'); \r\n }\r\n else if (WindDirection >= 326.25 && WindDirection < 348.75) {\r\n // console.log(\"NNW\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg'); \r\n }\r\n else {\r\n // console.log(\"N\");\r\n this.safeUrl = this.sanitizer.bypassSecurityTrustResourceUrl('assets/tile-icons/Wind_up.svg'); \r\n }\r\n\r\n }\r\n\r\n}\r\n","\r\n
\r\n \r\n
\r\n \"banner\"\r\n

{{station_name}} - Dashboard

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

{{station_name}}

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

{{station_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\n\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n Current Date & Time\r\n
\r\n
\r\n {{current_tile_clock.year}}\r\n
\r\n
\r\n {{current_tile_clock.monthAndDay}}\r\n
\r\n
\r\n {{current_tile_clock.time}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n Last Updated Date & Time\r\n
\r\n
\r\n {{updated_tile_clock.year}}\r\n
\r\n
\r\n {{updated_tile_clock.monthAndDay}}\r\n
\r\n
\r\n {{updated_tile_clock.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\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n {{station_summary?.PM10+\"\r\n µg/m³\"}}\r\n N/A\r\n \r\n
\r\n
\r\n PM10\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.PM2_5+\"\r\n µg/m³\"}}\r\n N/A\r\n \r\n
\r\n
\r\n PM2.5\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.Temperature+ \" °C\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Temperature\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n {{station_summary?.Humidity+ \"\r\n %\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Humidity\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n {{station_summary?.HeatIndex+ \"\r\n °C\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Heat Index\r\n
\r\n *{{station_summary?.HeatIndexKeyValue}}*\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.WindSpeed+\"\r\n m/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Wind Speed\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.WindDirection+\" °\"}}\r\n N/A\r\n \r\n \r\n
\r\n
\r\n Wind Direction\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.Noise+\"\r\n db\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Noise\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n {{station_summary?.VibrationX+\" mm/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Vmax X\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.VibrationY+\" mm/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Vmax Y\r\n
\r\n
\r\n\r\n
\r\n
\r\n {{station_summary?.VibrationZ+\" mm/s\"}}\r\n N/A\r\n \r\n
\r\n
\r\n Vmax Z\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n
\r\n\r\n \r\n\r\n \r\n\r\n\r\n
\r\n \r\n
\r\n\r\n\r\n
\r\n
\r\n\r\n\r\n
\r\n","class dateAndTime {\r\n monthNames = [\"January\", \"February\", \"March\", \"April\", \"May\", \"June\", \"July\", \"August\", \"September\", \"October\", \"November\", \"December\"\r\n ];\r\n\r\n public getMonthName(date: Date) {\r\n return this.monthNames[date.getMonth()]\r\n }\r\n\r\n public getThreeLetterMonthName(date: Date) {\r\n return this.monthNames[date.getMonth()].substring(0, 3)\r\n }\r\n\r\n \r\n\r\n\r\n public getAMPMTimeString(date): string {\r\n var hours = date.getHours();\r\n var minutes = date.getMinutes();\r\n var ampm = hours >= 12 ? 'PM' : 'AM';\r\n hours = hours % 12;\r\n hours = hours ? hours : 12; // the hour '0' should be '12'\r\n minutes = minutes < 10 ? '0' + minutes : minutes;\r\n var strTime = hours + ':' + minutes + ':00 ' + ampm;\r\n return strTime;\r\n }\r\n\r\n public getMonthFirstDay(date){\r\n var datex = new Date(date);\r\n var year = datex.getFullYear();\r\n var month = datex.getMonth();\r\n var FirstDay = new Date(year, month, 1);\r\n return FirstDay;\r\n }\r\n\r\n public getMonthLastDay(date){\r\n var datex = new Date(date);\r\n var year = datex.getFullYear();\r\n var month = datex.getMonth();\r\n var LastDay = new Date(year, month + 1, 0);\r\n return LastDay;\r\n }\r\n\r\n public getYearFirstDay(date){\r\n var datex = new Date(date);\r\n var year = datex.getFullYear();\r\n var month = datex.getMonth();\r\n var FirstDay = new Date(\"01/01/\"+year);\r\n return FirstDay;\r\n }\r\n public getYearLastDay(date){\r\n var datex = new Date(date);\r\n var year = datex.getFullYear();\r\n var month = datex.getMonth();\r\n var FirstDay = new Date(\"12/31/\"+year);\r\n return FirstDay;\r\n }\r\n\r\n public getWeeklyAddDay(date){\r\n var datex = new Date(date);\r\n //datex.setDate(datex.getDate() + 7);\r\n datex.setDate(datex.getDate() + 6);\r\n return datex;\r\n }\r\n\r\n public getToday() {\r\n return new Date();\r\n }\r\n\r\n public getYesterday() {\r\n var date = new Date();\r\n date.setDate(date.getDate() - 1);\r\n return date;\r\n }\r\n\r\n public getThisWeekStart() { \r\n var current = new Date(); // get current date \r\n var weekstart = current.getDate() - current.getDay() + 1;\r\n var monday = new Date(current.setDate(weekstart));\r\n return monday\r\n }\r\n\r\n public getThisWeekEnd() {\r\n var current = new Date(); // get current date \r\n var weekstart = current.getDate() - current.getDay() + 1;\r\n var weekend = weekstart + 6; // end day is the first day + 6 \r\n var sunday = new Date(current.setDate(weekend));\r\n return sunday;\r\n }\r\n\r\n public getLastWeekStart() {\r\n var current = new Date(); // get current date \r\n var weekstart = current.getDate() - current.getDay() + 1;\r\n weekstart = weekstart - 7;\r\n var monday = new Date(current.setDate(weekstart));\r\n return monday;\r\n }\r\n\r\n public getLastWeekEnd() {\r\n var current = new Date(); // get current date \r\n var weekstart = current.getDate() - current.getDay() + 1;\r\n weekstart = weekstart - 7;\r\n var weekend = weekstart + 6; // end day is the first day + 6 \r\n var sunday = new Date(current.setDate(weekend));\r\n return sunday;\r\n }\r\n\r\n public getThisMonthStart() {\r\n var date = new Date();\r\n var firstDay = new Date(date.getFullYear(), date.getMonth(), 1);\r\n return firstDay;\r\n }\r\n public getThisMonthEnd() {\r\n var date = new Date();\r\n var lastDay = new Date(date.getFullYear(), date.getMonth() + 1, 0);\r\n return lastDay;\r\n }\r\n public getLastMonthStart() {\r\n var date = new Date();\r\n var firstDay = new Date(date.getFullYear(), date.getMonth() - 1, 1);\r\n return firstDay;\r\n }\r\n public getLastMonthEnd() {\r\n var date = new Date();\r\n var lastDay = new Date(date.getFullYear(), date.getMonth() - 1 + 1, 0);\r\n return lastDay;\r\n }\r\n public getThisYearStart() {\r\n return new Date(new Date().getFullYear(), 0, 1);\r\n }\r\n public getThisYearEnd() {\r\n return new Date(new Date().getFullYear(), 11, 31);\r\n }\r\n public getLastYearStart() {\r\n return new Date(new Date().getFullYear() - 1, 0, 1);\r\n }\r\n public getLastYearEnd() {\r\n return new Date(new Date().getFullYear() - 1, 11, 31);\r\n }\r\n\r\n}\r\n\r\nexport { dateAndTime }","import { Component, OnInit, ViewChild } from '@angular/core';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { UserService } from 'src/app/services/user/user.service';\r\nimport { AppSettings } from 'src/settings.global';\r\n\r\n\r\n@Component({\r\n selector: 'app-user',\r\n templateUrl: './user.component.html',\r\n styleUrls: ['./user.component.css']\r\n})\r\nexport class UserComponent implements OnInit {\r\n\r\n\r\n @ViewChild(MatPaginator) paginator: MatPaginator;\r\n\r\n users;\r\n usersData;\r\n dataLength: Number;\r\n columndefs = ['firstName', 'lastName', 'email', 'contactNo', 'action'];\r\n\r\n\r\n constructor(private userService : UserService ) { }\r\n\r\n ngOnInit(): void {\r\n this.userService.getAllUsers(AppSettings.CLIENT_ID).subscribe(res => {\r\n // console.log(res[0].Result);\r\n this.users = res[0].Result;\r\n this.usersData = new MatTableDataSource(this.users);\r\n this.usersData.paginator = this.paginator;\r\n this.dataLength = this.usersData.length;\r\n\r\n })\r\n }\r\n\r\n onDelete(id){\r\n this.userService.deleteUser(id).subscribe(res => {\r\n // console.log(res);\r\n }, error => {\r\n // console.log(error);\r\n })\r\n }\r\n\r\n}\r\n","\r\n
\r\n
\r\n \"banner\"\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n

Users

\r\n \r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
First Name {{user.FirstName }} Last Name {{user.LastName }} Email {{user.EmailId}} Phone Number \r\n {{user.ContactNo}}\r\n Action\r\n \r\n \r\n
\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 { AfterViewInit, Component, OnInit } from '@angular/core';\r\nimport { Observable, Subscription } from 'rxjs';\r\nimport { readingAvailability } from 'src/app/common/readingAvailability';\r\nimport { Sidebar } from 'src/app/common/sidebarSelect';\r\nimport { AuthService } from 'src/app/services/auth-service/auth.service';\r\nimport { MessageService } from 'src/app/services/general/message.service';\r\nimport { StationsService } from 'src/app/services/stations/stations.service';\r\n\r\n@Component({\r\n selector: 'app-sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrls: ['./sidebar.component.css']\r\n})\r\nexport class SidebarComponent implements OnInit, AfterViewInit {\r\n\r\n public menuItemVisibility: readingAvailability\r\n subscription: Subscription;\r\n public currentStation: any\r\n public Sidebar_Station_Name:any;\r\n\r\n\r\n\r\n constructor(\r\n private messageService: MessageService,\r\n private stationsService: StationsService,\r\n private authService: AuthService\r\n ) {\r\n this.currentStation = this.messageService.getLastStation();\r\n this.Sidebar_Station_Name = this.currentStation.Name;\r\n }\r\n ngAfterViewInit(): void {\r\n }\r\n\r\n ngOnInit(): void {\r\n this.doStationChangeSubscription();\r\n this.doSidebarSubscription();\r\n this.HideUnNecessaryMenuAndTiles();\r\n }\r\n\r\n showStationsMenu() {\r\n this.messageService.setStationSideMenuVisibility(true);\r\n this.messageService.changeSidebar(Sidebar.main);\r\n }\r\n\r\n doSidebarSubscription() {\r\n this.subscription = this.messageService.getStationSideMenuVisibility().subscribe(isVisible => {\r\n this.HideUnNecessaryMenuAndTiles();\r\n });\r\n }\r\n\r\n doStationChangeSubscription() {\r\n this.messageService.getStationChange().subscribe(station => {\r\n this.currentStation = station;\r\n });\r\n }\r\n\r\n\r\n HideUnNecessaryMenuAndTiles() {\r\n var station = this.messageService.getLastStation();\r\n this.menuItemVisibility = this.stationsService.getAvailableReadingsForStation(station);\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.subscription)\r\n this.subscription.unsubscribe();\r\n }\r\n\r\n goToHomeSidebar(){\r\n this.messageService.changeSidebar(Sidebar.main);\r\n }\r\n logout(){\r\n this.authService.logout();\r\n }\r\n\r\n\r\n}\r\n","
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n Logout\r\n
\r\n
\r\n
\r\n
\r\n
","import { enableProdMode } from '@angular/core';\r\nimport { platformBrowserDynamic } from '@angular/platform-browser-dynamic';\r\n\r\nimport { AppModule } from './app/app.module';\r\nimport { environment } from './environments/environment';\r\n\r\nif (environment.production) {\r\n enableProdMode();\r\n}\r\n\r\nplatformBrowserDynamic().bootstrapModule(AppModule)\r\n .catch(err => console.error(err));\r\n","function webpackEmptyAsyncContext(req) {\n\t// Here Promise.resolve().then() is used instead of new Promise() to prevent\n\t// uncaught exception popping up in devtools\n\treturn Promise.resolve().then(function() {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t});\n}\nwebpackEmptyAsyncContext.keys = function() { return []; };\nwebpackEmptyAsyncContext.resolve = webpackEmptyAsyncContext;\nmodule.exports = webpackEmptyAsyncContext;\nwebpackEmptyAsyncContext.id = \"zn8P\";"]}