Exemple #1
0
        private async Task <List <IntervalDTO> > GetIntervalsTask(int id)
        {
            client.CloseConnection();
            string commandGetIntervalsTask = "SELECT [Task_Interval].ID, [Task_Interval].StartTime, [Task_Interval].FinishTime, [Task_Interval].Rating FROM Task_Interval " +
                                             $"WHERE [Task_Interval].IDTask = {id}";
            var intervals = new List <IntervalDTO>();

            try
            {
                using (SqlCommand cmd = new SqlCommand(commandGetIntervalsTask, client.OpenConnection()))
                {
                    SqlDataReader dataReader = await cmd.ExecuteReaderAsync();

                    while (dataReader.Read())
                    {
                        var type = new IntervalDTO(dataReader.GetInt32(0), dataReader.GetDateTime(1), dataReader.GetDateTime(2), dataReader.GetDouble(3));
                        intervals.Add(type);
                    }
                }
                client.CloseConnection();
                return(intervals);
            }
            catch (Exception exception)
            {
                Debug.WriteLine("[DataBaseTask.GetIntervalsTask()] Error: " + exception.Message);
                client.CloseConnection();
                return(null);
            }
            finally
            {
                client.CloseConnection();
            }
        }
Exemple #2
0
 public static Interval ConvertFromDto(IntervalDTO interval)
 {
     return(new Interval(
                id: interval.Id,
                startTime: interval.StartTime,
                finishTime: interval.FinishTime,
                rating: interval.Rating));
 }
        private async Task <bool> Generate()
        {
            var tasks = await dataBaseTask.SelectAll();

            var dateTimeFrom = DateTime.Now;

            for (int i = 0; i < tasks.Count; i++)
            {
                Debug.WriteLine($"Задача {i}: ");
                var dateTimeTo           = dateTimeFrom.AddHours(3);
                var randomCountIntervals = random.Next(1, 10);

                for (int j = 0; j < randomCountIntervals; j++)
                {
                    var interval = new IntervalDTO(
                        startTime: GenRandomDateTime(dateTimeFrom, dateTimeTo),
                        finishTime: GenRandomDateTime(dateTimeFrom.AddHours(3), dateTimeTo.AddHours(3)),
                        rating: Math.Round(random.NextDouble() * 4 + 1, 2));

                    if (await databaseInterval.InsertInterval(tasks[i].Id, interval))
                    {
                        Debug.WriteLine($"{interval} - Insert is Success");
                    }
                    else
                    {
                        throw new Exception($"{interval} - Insert is Error");
                    }

                    Debug.WriteLine($"{j}. " + interval);

                    dateTimeFrom = dateTimeFrom.AddDays(2);
                    dateTimeTo   = dateTimeFrom.AddHours(3);
                }
            }

            return(true);
        }
 public async Task <bool> AddInterval(int idTask, IntervalDTO interval)
 {
     return(await dataBaseInterval.InsertInterval(idTask, interval));
 }