public void Remove(AbsenceDisplayModel absence)
 {
     using (var c = NewConnection())
     {
         var sql = @"
             delete from absence
             where id = @id";
         using (var cmd = GetCommand(sql, c))
         {
             cmd.AddParameter("id", absence.Id);
             cmd.ExecuteNonQuery();
         }
     }
 }
Example #2
0
        public static void Write(AbsenceDisplayModel model)
        {
            Console.ForegroundColor = ConsoleColor.DarkBlue;
            Console.WriteLine($"Absence for [{model.PersonId}] {model.FirstName} {model.LastName}");
            Console.ResetColor();

            if (model == null)
            {
                Console.WriteLine("NULL");
            }
            else
            {
                Console.WriteLine($"   - From: {model.From}");
                Console.WriteLine($"   - To  : {model.To}");
                Console.WriteLine($"   - Id  : {model.Id}");
            }
        }
Example #3
0
        public static IEnumerable <AbsenceDisplayModel> AsAbsenceDisplayModel(this IDataReader reader)
        {
            var result = new List <AbsenceDisplayModel>();

            while (reader.Read())
            {
                var absence = new AbsenceDisplayModel
                {
                    FirstName = (reader.HasColumn("FirstName")) ? reader["FirstName"] as string : null,
                    From      = (reader.HasColumn("From")) ? DateTime.Parse((string)reader["From"]) : default(DateTime),
                    Id        = (reader.HasColumn("Id")) ? (long)reader["Id"] : default(long),
                    LastName  = (reader.HasColumn("LastName")) ? reader["LastName"] as string : null,
                    PersonId  = (reader.HasColumn("PersonId")) ? (long)reader["PersonId"] : default(long),
                    To        = (reader.HasColumn("To")) ? DateTime.Parse((string)reader["To"]) : default(DateTime),
                };
                result.Add(absence);
            }
            return(result);
        }
 public void Create(AbsenceDisplayModel absence)
 {
     using (var c = NewConnection())
     {
         var sql = @"
             insert into absence (
                 date_start,
                 date_end,
                 person_id)
             values (
                 @from,
                 @to,
                 @person_id
             )";
         using (var cmd = GetCommand(sql, c))
         {
             cmd.AddParameter("from", absence.From.ToSQLiteDateString());
             cmd.AddParameter("to", absence.To.ToSQLiteDateString());
             cmd.AddParameter("person_id", absence.PersonId);
             cmd.ExecuteNonQuery();
         }
     }
 }