private (PersonDisplayModel person, GroupModel team, DayModel day) Get() { var person = new PersonDisplayModel { Category = _reader["category"] as string ?? string.Empty, CategoryKey = _reader["category_key"] as string ?? string.Empty, FirstName = _reader["first_name"] as string ?? string.Empty, LastName = _reader["last_name"] as string ?? string.Empty, Id = _reader["person_id"] as long? ?? 0 }; var team = new GroupModel { Id = _reader["team_id"] as long? ?? 0, Name = _reader["team"] as string ?? string.Empty }; var did = (_reader["day"] as long? ?? 0); var day = new DayModel { DayName = did.AsDay(), DayId = did }; return ( person, team, day ); }
private (DayPickupRoundModel day, GroupModel pickupRound, PersonDisplayModel person) Get() { var did = _reader["day"] as long? ?? 0; var day = new DayPickupRoundModel { DayId = did, DayName = did.AsDay(), }; var person = new PersonDisplayModel { Category = _reader["category"] as string ?? string.Empty, CategoryKey = _reader["category_key"] as string ?? string.Empty, FirstName = _reader["first_name"] as string ?? string.Empty, LastName = _reader["last_name"] as string ?? string.Empty, Id = _reader["person_id"] as long? ?? 0 }; var pickupRound = new GroupModel { Id = _reader["pickup_round_id"] as long? ?? 0, Name = _reader["pickup_round"] as string ?? string.Empty }; return ( day, pickupRound, person ); }
private bool Has(PersonDisplayModel person, GroupModel pickup) { var count = (from p in pickup.People where p.Id == person.Id select p).Count(); return(count > 0); }
// GET: Person public async Task <ActionResult> Index() { var personDisplayModel = new PersonDisplayModel { Persons = await _personOrchestrator.GetAllPersons() }; return(View(personDisplayModel)); }
public static void Add(this GroupModel src, PersonDisplayModel toAdd) { var exists = (from p in src.People where p.Id == toAdd.Id select p).Count() > 0; if (!exists) { src.People.Add(toAdd); } }
public static void Write(PersonDisplayModel model) { Console.ForegroundColor = ConsoleColor.Blue; Console.Write("Person: "); Console.ResetColor(); if (model == null) { Console.WriteLine("NULL"); } else { Console.WriteLine($"[{model.Id}] {model.CategoryKey,9} - {model.FirstName,15} {model.LastName,-15} -- {model.Category}"); } }
// Update employee info public async Task <IActionResult> UpdatePerson(PersonDisplayModel person) { PersonModel updatedPerson = new PersonModel { Id = person.Id, EmployeeID = person.EmployeeID, FirstName = person.FirstName, LastName = person.LastName, EmailAddress = person.EmailAddress, CellPhoneNumber = person.CellPhoneNumber }; await _data.UpdatePerson(updatedPerson); return(RedirectToAction("ViewPersons")); }
// Edit employee with database Id = id public async Task <IActionResult> EditPerson(int id) { PersonModel foundPerson = await _data.GetPersonById(id); PersonDisplayModel person = new PersonDisplayModel { Id = foundPerson.Id, EmployeeID = foundPerson.EmployeeID, FirstName = foundPerson.FirstName, LastName = foundPerson.LastName, EmailAddress = foundPerson.EmailAddress, CellPhoneNumber = foundPerson.CellPhoneNumber }; return(View(person)); }
public static IEnumerable <PersonDisplayModel> AsPersonDisplayModel(this IDataReader reader) { var result = new List <PersonDisplayModel>(); while (reader.Read()) { var person = new PersonDisplayModel { Category = (reader.HasColumn("Category")) ? reader["Category"] as string : null, FirstName = (reader.HasColumn("FirstName")) ? reader["FirstName"] as string : null, Id = (reader.HasColumn("Id")) ? (long)reader["Id"] : default(long), CategoryKey = (reader.HasColumn("CategoryKey")) ? reader["CategoryKey"] as string : null, LastName = (reader.HasColumn("LastName")) ? reader["LastName"] as string : null, }; result.Add(person); } return(result); }
// Insert Employee into database public async Task <IActionResult> InsertPerson(PersonDisplayModel person) { if (ModelState.IsValid) { PersonModel newPerson = new PersonModel { EmployeeID = person.EmployeeID, FirstName = person.FirstName, LastName = person.LastName, EmailAddress = person.EmailAddress, CellPhoneNumber = person.CellPhoneNumber }; await _data.InsertPerson(newPerson); return(RedirectToAction("ViewPersons")); } return(View()); }
public void Remove(PersonDisplayModel person) => InTransaction(c => { var sql = @" delete from person_category where person_id = @Id"; using (var cmd = GetCommand(sql, c)) { cmd.AddParameter("Id", person.Id); cmd.ExecuteNonQuery(); } sql = @" delete from reception_person where person_id = @Id"; using (var cmd = GetCommand(sql, c)) { cmd.AddParameter("Id", person.Id); cmd.ExecuteNonQuery(); } sql = @" delete from absence where person_id = @Id"; using (var cmd = GetCommand(sql, c)) { cmd.AddParameter("Id", person.Id); cmd.ExecuteNonQuery(); } sql = @" delete from person where id = @id"; using (var cmd = GetCommand(sql, c)) { cmd.AddParameter("id", person.Id); cmd.ExecuteNonQuery(); } });
private void InsertInDay(PersonDisplayModel person, GroupModel team, DayModel day, ReceptionModel foundReception) { if (Has(day, foundReception.Days)) { var foundDay = Get(day.DayId, foundReception); if (Has(team.Id, foundDay.Teams)) { var foundTeam = Get(team.Id, foundDay); if (!Has(person.Id, foundTeam.People)) { foundTeam.Add(person); } } else { team.Add(person); foundDay.Teams.Add(team); } } else { throw new NotSupportedException($"All the days should be integrated into a reception. Code review is needed!"); } }