Exemplo n.º 1
0
        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);
            }
        }
Exemplo n.º 2
0
        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
            });
        }
Exemplo n.º 3
0
        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);
        }
Exemplo n.º 4
0
        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("Что-то пошло не так."); }
        }