Exemplo n.º 1
0
        public async Task <IActionResult> UpdateMonitor(Guid id, [FromBody] MonitorViewModel monitorViewModel)
        {
            try
            {
                var user = await GetCurrentAuthenticatedUser();

                var monitor = await _monitorsRepository.FindMonitor(id);

                if (monitor != null && monitor.ApplicationUserId == user.Id)
                {
                    monitor.Active   = monitorViewModel.Active;
                    monitor.Interval = monitorViewModel.Interval;
                    monitor.Type     = monitorViewModel.Type;
                    monitor.Url      = monitorViewModel.Url;
                    monitor.Name     = monitorViewModel.Name;
                    monitor.KeyWord  = monitorViewModel.KeyWord;
                    monitor.Port     = monitorViewModel.Port;

                    await _monitorsRepository.UpdateMonitor(monitor);

                    return(Ok(monitor));
                }

                return(BadRequest(new ErrorMessage("Unable to update monitor")));
            }
            catch (Exception ex)
            {
                Logger.LogError(ex.Message);
                return(BadRequest(new ErrorMessage(ex)));
            }
        }
        public async Task <IActionResult> GetMonitorLogs(Guid id)
        {
            try
            {
                var user = await GetCurrentAuthenticatedUser();

                var monitor = await _monitorsRepository.FindMonitor(id);

                if (monitor != null && monitor.ApplicationUserId == user.Id)
                {
                    var monitorLogs = await _monitorLogsRepository.GetMonitorLogsByMonitor(monitor);

                    return(Ok(monitorLogs));
                }

                return(BadRequest(new ErrorMessage("Unable to get monitor logs")));
            }
            catch (Exception ex)
            {
                Logger.LogError(ex.Message);
                return(BadRequest(new ErrorMessage(ex)));
            }
        }