Exemplo n.º 1
0
        public void UpdateArrivalStatistics(int patientId, int doctorId, bool isPatientArrived, DateTime date)
        {
            using (var context = new PolyclinicDBContext())
            {
                IQueryable query   = context.Ticket.AsNoTracking();
                var        tickets = from t in context.Ticket
                                     where t.PatientsId == patientId
                                     where t.DoctorsId == doctorId
                                     where t.IsArrived == false
                                     where t.VisitingDateAndTime == date
                                     select t;
                Ticket ticket = tickets.ToList()[0];
                ticket.IsArrived = isPatientArrived;

                var statistics = from s in context.VisitorStatistics
                                 where s.DocId == doctorId
                                 select s;
                foreach (var statistic in statistics)
                {
                    if (statistic.Date.ToShortDateString() == statistic.Date.ToShortDateString())
                    {
                        statistic.ArrivedPatients    += isPatientArrived == true ? 1 : 0;
                        statistic.NonArrivedPatients += isPatientArrived == false ? 1 : 0;
                        break;
                    }
                }
                context.SaveChanges();
            }
        }
Exemplo n.º 2
0
        public IEnumerable GetTickets(int doctorsId, string visitingDate)
        {
            List <string> Patients = new List <string>();

            using (var context = new PolyclinicDBContext())
            {
                IQueryable query   = context.Ticket.AsNoTracking();
                var        tickets = from t in context.Ticket
                                     where t.DoctorsId == doctorsId
                                     join p in context.Patient on t.PatientsId equals p.id
                                     select new
                {
                    PatientsId = p.id,
                    Surname    = p.LastName,
                    Name       = p.FirstName,
                    Patronymic = p.Patronymic,
                    Date       = t.VisitingDateAndTime,
                    IsArrived  = t.IsArrived,
                };


                foreach (var ticket in tickets)
                {
                    if (ticket.Date.ToShortDateString() == visitingDate && !ticket.IsArrived)
                    {
                        Patients.Add(ticket.PatientsId + "." + ticket.Surname + " " + ticket.Name + " " + ticket.Patronymic + " " + ticket.Date.ToShortTimeString());
                    }
                }
            }
            return(Patients);
        }
Exemplo n.º 3
0
        public List <int> GetRooms(int specializationId)
        {
            List <int> rooms = new List <int>();

            using (var context = new PolyclinicDBContext())
            {
                var availableRooms = from r in context.Room.AsNoTracking()
                                     where r.SpecId == specializationId
                                     select r;

                foreach (Room room in availableRooms)
                {
                    rooms.Add(room.RoomNumber);
                }
            }

            return(rooms);
        }
Exemplo n.º 4
0
        public void SetRooms(List <int> rooms, int specializationId)
        {
            if (rooms is null)
            {
                throw new ArgumentNullException(String.Format("{0} is null", nameof(rooms)));
            }
            ///asdasd
            using (var context = new PolyclinicDBContext())
            {
                foreach (int roomNum in rooms)
                {
                    Room room = new Room {
                        RoomNumber = roomNum, SpecId = specializationId, RoomId = 0
                    };
                    context.Room.Add(room);
                }

                context.SaveChanges();
            }
        }
Exemplo n.º 5
0
        public IEnumerable GetTicketsByPatientsId(int patientId)
        {
            List <string> tickets = new List <string>();

            using (var context = new PolyclinicDBContext())
            {
                var specialTickets = from t in context.Ticket.AsNoTracking()
                                     where t.PatientsId == patientId
                                     select t;

                foreach (Ticket ticket in specialTickets)
                {
                    var doctors = from d in context.Doctor.AsNoTracking()
                                  where d.DocId == ticket.DoctorsId
                                  select d;
                    Doctor doctor = doctors.ToList()[0];

                    tickets.Add(String.Format("{0}. {1} {2} {3} {4} {5} {6}", ticket.id, ticket.VisitingDateAndTime.ToShortDateString(), ticket.VisitingDateAndTime.ToShortTimeString(), doctor.DocId, doctor.LastName, doctor.FirstName, doctor.Patronymic));
                }
            }

            return(tickets);
        }