示例#1
0
        public async Task <IActionResult> PostMonitorStatusAsync(Guid id)
        {
            try {
                var monitor = await _monitorRepository.GetAsync(id.ToString());

                if (monitor.Id.Equals(Guid.Empty))
                {
                    return(NotFound($"Cant find monitor with an id:{id}"));
                }
                await _checkInRepository.CreateAsync(id, monitor.MonitorDetails.IntervalTime);

                monitor.MonitorDetails.LastCheckIn = DateTime.UtcNow;
                monitor.MonitorDetails.IsDown      = false;

                await _monitorRepository.CreateAsync(monitor);

                return(Ok("Thank you! Updated! "));
            } catch (Exception ex) {
                _logger.LogError($"Something went wrong inside PostMonitorStatusAsync: {ex.Message}");
                return(StatusCode(500, "Internal server error."));
            }
        }