public bool PersonExists(RegistrationData registrationData) { int roomTypeId, dormId; roomTypeId = RoomTypes.GetRoomTypeId(registrationData.RoomType); dormId = Dormitories.GetDormIdByName(registrationData.DormitoryName); int count = Persons.GetAll().Join( Agreements.GetAll(), p => p.id_person, a => a.person_id, (p, a) => new KeyValuePair <Person, Agreement>(p, a)).Where( x => (x.Key.surname == registrationData.Surname) && (x.Key.name == registrationData.Name) && (x.Key.is_living == true) && (x.Value.room_id == roomTypeId) && (x.Value.room_number == registrationData.RoomNumber) && (x.Value.dorm_id == dormId)).Select(res => res.Key.id_person).ToList().Count(); if (count == 1) { return(true); } else { return(false); } }
public PersonData ConvertRegistrationDataToPersonData(RegistrationData registrationData) { int roomTypeId, dormId; roomTypeId = RoomTypes.GetRoomTypeId(registrationData.RoomType); dormId = Dormitories.GetDormIdByName(registrationData.DormitoryName); return(new PersonData { Name = registrationData.Name, SurName = registrationData.Surname, DormID = dormId, RoomType = roomTypeId, Room = registrationData.RoomNumber }); }
public IEnumerable <Population> GetPopulation(int dormId) { IEnumerable <int> _floors = Dormitories.GetLivingFloors(dormId); List <Population> _population = new List <Population>(); foreach (var floor in _floors) { _population.AddRange(_context.GetPopulation(dormId, floor).Select(res => new Population { RoomType = res.roomName, Quantity = (int)res.Quantity, RoomNumber = res.roomNum, Gender = GetRoomGender( dormId, res.roomNum, RoomTypes.GetRoomTypeId(res.roomName)) }).ToList()); } return(_population); }
public string AddPayment( int person_id, decimal sum, DateTime dateOfPayment, string admin, int dormId ) { try { Payments.Add(new Payment { person_id = person_id, sum = sum, date_payment = dateOfPayment }); Accounts.GetAll(). Where(account => account.id_person == person_id). Select(x => x).ToList().ForEach(a => a.sum += sum); string personName = Persons.GetAll().Where(p => p.id_person == person_id). Select(p => p.surname + " " + p.name).ToList().Last(); string description = "Успешно проведен платеж на " + sum.ToString() + " от " + personName + ". Администратор " + Dormitories.Get(dormId).name + " - " + admin + ". " + dateOfPayment.ToString(); History.Add(new History { admin_name = admin, dorm_id = dormId, description = description, addPaymentFlag = true }); return(description); } catch { return("Что-то пошло не так."); } }