Ejemplo n.º 1
0
        public async Task <IActionResult> GetAllTasksByUser([FromBody] DateDto date)
        {
            string userId   = User.Claims.FirstOrDefault(c => c.Type == ClaimTypes.NameIdentifier).Value;
            var    list     = _context.Tasks.Where(x => x.ApplicationUserId == userId).ToList();
            var    listdtos = new List <TaskDto>();

            if (list.Count != 0)
            {
                foreach (var item in list)
                {
                    if (item.date.ToShortDateString() == date.date.ToShortDateString())
                    {
                        if (item.IsComplited == false)
                        {
                            listdtos.Add(new TaskDto()
                            {
                                ID = item.ID, ApplicationUserId = item.ApplicationUserId, Category = _context.Categories.First(x => x.ID == item.CategoryID).CategoryName, date = item.date, Description = item.Description, Name = item.Name, IsComplited = item.IsComplited
                            });
                        }
                    }
                }

                return(Ok(listdtos));
            }
            else
            {
                return(BadRequest());
            }
        }
Ejemplo n.º 2
0
        public IActionResult EventsDayView(DateDto dto, string ext)
        {
            var dateTime = dto.GetDateTime();

            if (string.IsNullOrEmpty(dto.Name) && dateTime.Year > 2015)
            {
                return(BadRequest("name or date wrong"));
            }

            var result =
                _updateStatusContent.EventsDayView(dateTime, dto.Name);

            if (result == null)
            {
                return(BadRequest("name error"));
            }

            switch (ext)
            {
            case "csv":
                var resultCsv = "DateTime;Weight;Label\n";
                foreach (var item in result.AmountOfMotions)
                {
                    resultCsv += $"{item.StartDateTime};{item.Weight};{item.Label}\n";
                }
                return(Content(resultCsv));

            case "json":
                return(Json(result));

            default:
                return(Json(result));
            }
        }
        public void GetReportsFromDateReportstInDB_SpecificDate_NoErrorDetected()
        {
            //Arrange
            var reportList = new List <WeatherRepport>();

            reportList.Add(new WeatherRepport {
                AirPressure = 5, Humidity = 3, Id = 1, Place = new Place(), PlaceId = 1, Temp = 10, Time = DateTime.Now
            });
            reportList.Add(new WeatherRepport {
                AirPressure = 6, Humidity = 4, Id = 2, Place = new Place(), PlaceId = 2, Temp = 11, Time = DateTime.Now
            });
            reportList.Add(new WeatherRepport {
                AirPressure = 7, Humidity = 5, Id = 3, Place = new Place(), PlaceId = 3, Temp = 12, Time = DateTime.Now
            });

            DateDto dt = new DateDto();

            dt.StartDate = "Dec 29, 2020";
            dt.EndDate   = "Dec 31, 2020";


            databaseController.GetReportsBetweenTwoDates(DateTime.Parse(dt.StartDate), DateTime.Parse(dt.EndDate)).Returns(reportList);


            //Act
            var result = (_uut.getReportsBetweenTwoDates(dt).Result.Result as CreatedResult);

            //Assert

            Assert.That(result.StatusCode, Is.EqualTo(201));
        }
Ejemplo n.º 4
0
        public EventsOfficeHoursModel EventsRecent(string urlSafeName)
        {
            var dto = new DateDto();

            var startDateTime =
                dto.RoundDown(
                    DateTime.UtcNow.Subtract(new TimeSpan(0, 8, 0, 0)),
                    new TimeSpan(0, 0, 5, 0));

            var endDateTime = dto.RoundUp(DateTime.UtcNow, new TimeSpan(0, 0, 5, 0));

            var channelUser = GetChannelUserIdByUrlSafeName(urlSafeName, true);

            if (channelUser == null)
            {
                return(null);
            }
            var channelUserId = channelUser.NameId;

            var channelEvents = _context.ChannelEvent
                                .Where(
                p => p.ChannelUserId == channelUserId &&
                p.DateTime > startDateTime &&
                p.DateTime < endDateTime
                ).OrderBy(p => p.DateTime);

            return(ParseEvents(channelEvents.ToList(), startDateTime, endDateTime));
        }
Ejemplo n.º 5
0
        public IActionResult GetTimesByDate(DateDto dto)
        {
            using var db = new ModelContext();

            var userId = User.FindFirst(ClaimTypes.NameIdentifier).Value;

            return(Ok(db.VwTime.Where(x => x.WorkDate == dto.Date && x.UserId == userId).ToList()));
        }
Ejemplo n.º 6
0
        public void GetDateTimeAbsoluteToday()
        {
            var model = new DateDto();

            var today = RoundDown(DateTime.UtcNow, new TimeSpan(1, 0, 0, 0));

            model.Date = today.ToString("yyyy-MM-dd");
            var getDateTimeFromModel = model.GetDateTime();

            Assert.AreEqual(getDateTimeFromModel, today);
        }
Ejemplo n.º 7
0
        public EventsOfficeHoursModel EventsDayView(DateTime dateTime, string urlSafeName)
        {
            var dto = new DateDto();

            var startDateTime = dateTime;
            var endDateTime   = dateTime.AddHours(24);

            var channelUser = GetChannelUserIdByUrlSafeName(urlSafeName, true);

            if (channelUser == null)
            {
                return(null);
            }

            var channelUserId = channelUser.NameId;

            var channelEvents = _context.ChannelEvent
                                .Where(
                p => p.ChannelUserId == channelUserId &&
                p.DateTime > startDateTime &&
                p.DateTime < endDateTime
                ).OrderBy(x => x.DateTime).ToList();

            if (channelEvents.Count == 0)
            {
                var startEmthyDateTime =
                    dto.RoundDown(
                        DateTime.UtcNow.Subtract(new TimeSpan(0, 8, 0, 0)),
                        new TimeSpan(0, 0, 5, 0));

                var endEmthyDateTime = dto.RoundUp(DateTime.UtcNow, new TimeSpan(0, 0, 5, 0));

                var model = new EventsOfficeHoursModel
                {
                    Day             = startDateTime.DayOfWeek,
                    StartDateTime   = startEmthyDateTime,
                    EndDateTime     = endEmthyDateTime,
                    AmountOfMotions = new List <WeightViewModel>(),
                    Length          = 0
                };
                return(model);
            }

            var median = channelEvents.Skip(channelEvents.Count() / 2).First().DateTime;

            startDateTime = dto.RoundDown(median.ToUniversalTime().AddHours(-4), new TimeSpan(0, 0, 5, 0));
            endDateTime   = dto.RoundUp(median.ToUniversalTime().AddHours(4), new TimeSpan(0, 0, 5, 0));

            var channelParseEvents = channelEvents
                                     .Where(p => p.DateTime > startDateTime &&
                                            p.DateTime < endDateTime);

            return(ParseEvents(channelParseEvents.ToList(), startDateTime, endDateTime));
        }
Ejemplo n.º 8
0
        public void GetDateTimeRelativeYesterday()
        {
            var model = new DateDto();

            var yesterday = RoundDown(DateTime.UtcNow, new TimeSpan(1, 0, 0, 0)).AddDays(-1);

            model.Date = "-1";
            var getDateTimeFromModel = model.GetDateTime();

            Assert.AreEqual(getDateTimeFromModel, yesterday);
        }
Ejemplo n.º 9
0
 private static void Main(string[] args)
 {
     Configuration = Util.Configuration();
     Date          = new DateDto(Configuration.GlobalSetting.Reporting.DatePeriod,
                                 Configuration.GlobalSetting.Reporting.Value, DatePeriodTriggered)
     {
         Date = new DateTime(2021, 1, 1)
     };
     Console.WriteLine("WELCOME TO COOP SIMULATOR OF " + Configuration.PoultryDetail.Name);
     Util.Init();
     Console.ReadLine();
 }
Ejemplo n.º 10
0
 public IEnumerable <CountriesAggregated> GetByDateCountriesAggregated(DateDto dateTime)
 {
     try
     {
         return(_csvRepository.GetByDateCountriesAggregated(dateTime));
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         throw;
     }
 }
Ejemplo n.º 11
0
        public IActionResult EventsRecent(DateDto dto)
        {
            if (string.IsNullOrEmpty(dto.Name))
            {
                return(BadRequest("name wrong"));
            }
            var result = _updateStatusContent.EventsRecent(dto.Name);

            if (result == null)
            {
                return(BadRequest("name error"));
            }
            return(Json(result));
        }
Ejemplo n.º 12
0
        public EventsOfficeHoursModel ParseEvents(List <ChannelEvent> channelEvents, DateTime startDateTime, DateTime endDateTime)
        {
            var dto = new DateDto();

            var model = new EventsOfficeHoursModel
            {
                Day             = startDateTime.DayOfWeek,
                StartDateTime   = startDateTime,
                EndDateTime     = endDateTime,
                AmountOfMotions = new List <WeightViewModel>(),
                Length          = 0
            };

            model.Length = _context.ChannelEvent
                           .Count(
                p => p.DateTime > model.StartDateTime &&
                p.DateTime < model.EndDateTime
                );

            const int interval = 60 * 5; // 5 minutes
            var       i        = dto.GetUnixTime(startDateTime);

            while (i <= dto.GetUnixTime(endDateTime))
            {
                var eventItem = new WeightViewModel
                {
                    StartDateTime = dto.UnixTimeToDateTime(i),
                    EndDateTime   = dto.UnixTimeToDateTime(i + interval)
                };
                eventItem.LabelUtc = eventItem.StartDateTime.ToString("HH:mm");
                eventItem.Label    = dto.UtcDateTimeToAmsterdamDateTime(eventItem.StartDateTime).ToString("HH:mm");

                var weightSum = channelEvents
                                .Where(p =>
                                       p.DateTime > eventItem.StartDateTime &&
                                       p.DateTime < eventItem.EndDateTime)
                                .Select(p => p.Weight).Sum();

                eventItem.Weight = weightSum;
                model.AmountOfMotions.Add(eventItem);
                i += interval;
            }
            return(model);
        }
Ejemplo n.º 13
0
 public IEnumerable <CountriesAggregated> GetByDateCountriesAggregated(DateDto dateTime)
 {
     try
     {
         using (StreamReader r =
                    new StreamReader(Path.Combine("JsonData/",
                                                  "countries-aggregated.json")))
         {
             string json  = r.ReadToEnd();
             var    items = JsonConvert.DeserializeObject <List <CountriesAggregated> >(json)
                            .Where(x => x.Date.Month == dateTime.Month && x.Date.Day == dateTime.Day);
             return(items);
         }
     }
     catch (Exception e)
     {
         Console.WriteLine(e);
         throw;
     }
 }
Ejemplo n.º 14
0
        public IList <DateDto> Covert(string html)
        {
            // 去掉html的標籤
            var pattern = "<[^>]*>";
            var reg     = new Regex(pattern);

            html = reg.Replace(html, "");

            // 取得每一天的日期
            var dayReg = @"DayInfoA\[\d+\]='【陽曆】(?<son>\d+年\d+月\d+日)" +
                         @"[^日]*【農曆】(?<lunar_year>\d+)年(?<lunar_month>\d+)月(?<lunar_day>\d+)日";

            var dateList = new List <DateDto>();

            var oneDateReg = new Regex(dayReg);
            var matches    = oneDateReg.Matches(html);

            foreach (Match match in matches)
            {
                // 取得陽曆和農曆的日期
                var son = match.Groups["son"].Value
                          .Replace("年", "-").Replace("月", "-").Replace("日", "");

                var sonDate   = DateTime.Parse(son);
                var oneDayDto = new DateDto()
                {
                    Year       = sonDate.Year,
                    Month      = sonDate.Month,
                    Day        = sonDate.Day,
                    Week       = (int)sonDate.DayOfWeek,
                    LunarYear  = int.Parse(match.Groups["lunar_year"].Value),
                    LunarMonth = int.Parse(match.Groups["lunar_month"].Value),
                    LunarDay   = int.Parse(match.Groups["lunar_day"].Value),
                };

                dateList.Add(oneDayDto);
            }

            return(dateList);
        }
Ejemplo n.º 15
0
        public IActionResult EventsOfficeHours(DateDto dto)
        {
            var dateTime = dto.GetDateTime();

            if (string.IsNullOrEmpty(dto.Name) && dateTime.Year > 2015)
            {
                return(BadRequest("name or date wrong"));
            }

            var startDateTime = dateTime.ToUniversalTime().AddHours(9);
            var endDateTime   = dateTime.ToUniversalTime().AddHours(18);

            var getDataChannelEvents = _updateStatusContent.GetTimeSpanByName(dto.Name, startDateTime, endDateTime).ToList();
            var result = _updateStatusContent.ParseEvents(getDataChannelEvents, startDateTime, endDateTime);

            if (result == null)
            {
                return(BadRequest("name error"));
            }

            return(Json(result));
        }
        public async Task <ActionResult <List <WeatherRepport> > > getReportsBetweenTwoDates([FromBody] DateDto dates)
        {
            var compareStartDate = DateTime.Parse(dates.StartDate);
            var compareEndDate   = DateTime.Parse(dates.EndDate);

            var WRepotrs = _dbController.GetReportsBetweenTwoDates(compareStartDate, compareEndDate);

            if (WRepotrs == null)
            {
                return(NotFound());
            }
            else
            {
                return(Created(WRepotrs.ToString(), WRepotrs));
            }
        }
Ejemplo n.º 17
0
 public static string GetDateStringFromJavaLocalDateTimeFormatDto(DateDto datetime)
 {
     return(string.Format("{0}.{1}.{2}", datetime.Day, datetime.Month, datetime.Year));
 }
Ejemplo n.º 18
0
        public static string GetDateStringFromJavaLocalDateTimeFormat(string javaFormat)
        {
            DateDto dateTimeObj = JsonConvert.DeserializeObject <DateDto>(javaFormat, GetDeserializeSettings());

            return(string.Format("{0}.{1}.{2}", dateTimeObj.Day, dateTimeObj.Month, dateTimeObj.Year));
        }
Ejemplo n.º 19
0
        public IActionResult Index(DateDto dto)
        {
            var date         = dto.GetDateTime();
            var urlSafeName  = dto.Name;
            var relativeDays = dto.GetRelativeDays(date);

            var tommorow  = date.AddDays(1);
            var yesterday = date.AddDays(-1);

            var allChannelUsers = _updateStatusContent.GetAllChannelUsers()
                                  .Where(p => p.IsVisible && p.IsAccessible).ToList();

            if (!allChannelUsers.Any())
            {
                return(BadRequest("Database connection successful; Please add a ChannelUser first to continue; You need to restart the application"));
            }

            // Show default page
            if (string.IsNullOrEmpty(urlSafeName))
            {
                var find = allChannelUsers.Find(x => x.NameUrlSafe.Contains("tafelvoetbal"));

                if (find != null)
                {
                    urlSafeName = find.NameUrlSafe;
                }
                else
                {
                    var selectItemUrlSafe = allChannelUsers.Single(p => p.NameUrlSafe.Length >= 1).NameUrlSafe;
                    if (selectItemUrlSafe != null)
                    {
                        urlSafeName = selectItemUrlSafe;
                    }
                }
            }

            var channelUserObject = _updateStatusContent.GetChannelUserIdByUrlSafeName(urlSafeName, false);

            if (channelUserObject == null)
            {
                return(NotFound("not found"));
            }

            var model = new HomeViewModel
            {
                List         = allChannelUsers,
                Name         = channelUserObject.Name,
                NameId       = channelUserObject.NameId,
                NameUrlSafe  = channelUserObject.NameUrlSafe,
                RelativeDate = relativeDays,
                Today        = date.Year + "-" + dto.LeadingZero(date.Month) + "-" + dto.LeadingZero(date.Day),
                Tomorrow     = tommorow.Year + "-" + dto.LeadingZero(tommorow.Month) + "-" + dto.LeadingZero(tommorow.Day),
                Yesterday    = yesterday.Year + "-" + dto.LeadingZero(yesterday.Month) + "-" + dto.LeadingZero(yesterday.Day),
                Day          = dto.GetDateTime()
            };



            if (model.RelativeDate == 0)
            {
                var isFreeStatus = _updateStatusContent.IsFree(channelUserObject.NameId);
                model.IsFree = isFreeStatus.IsFree;
                model.IsFreeLatestUtcString         = isFreeStatus.DateTimeUtcString;
                model.IsFreeLatestAmsterdamDateTime = dto.UtcDateTimeToAmsterdamDateTime(isFreeStatus.DateTime);
                return(View("Live", model));
            }

            return(View("Archive", model));
        }
Ejemplo n.º 20
0
        public ActionResult <IEnumerable <CountriesAggregated> > GetByDateCountriesAggregated([FromQuery] DateDto dateTime)
        {
            try
            {
                var content = _csvService.GetByDateCountriesAggregated(dateTime);

                return(Ok(content));
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(StatusCode(500));
            }
        }