Пример #1
0
        public ActionResult AddPrisoner(PrisonerViewModel model)
        {
            var list = _db.CategoriesOfCrimes.ToList();

            ViewBag.KatList = new SelectList(list, "CategoryOfCrime_Id", "NameOfCategory");


            if (ModelState.IsValid)
            {
                var prisoner = new Prisoners
                {
                    PrisonerName    = model.PrisonerName,
                    PrisonerSurname = model.PrisonerSurname,
                    Pesel           = model.Pesel,
                    Sex             = model.Sex
                };


                var wyrok = new Judgements
                {
                    FK_Judgements_CategoriesOfCrimes_Id = model.CategoryOfCrime_Id,
                    FK_Judgements_Prisoners_Id          = prisoner.Prisoner_Id,
                    TimeOfJudgement = model.Time,
                    StartDate       = model.StartDate
                };


                _db.Prisoners.Add(prisoner);
                _db.Judgements.Add(wyrok);
                _db.SaveChanges();

                return(RedirectToAction("AllocatePrisoner", new { id = prisoner.Prisoner_Id }));
            }

            return(View(model));
        }
Пример #2
0
        public IList <PrisonerViewModel> GetPrisoners(IQueryable <Admission> admissions)
        {
            var prisoners = new List <PrisonerViewModel>();

            foreach (Admission admission in admissions)
            {
                var p = new PrisonerViewModel();

                p.PrisonerId     = admission.PrisonerId;
                p.PrisonerNumber = admission.PrisonerNumber;
                p.AdmissionId    = admission.AdmissionId;
                p.Name           = admission.Prisoner.Name;
                p.Parentage      = admission.Prisoner.FatherOrHusbandName;
                p.Category       = admission.Prisoner.Category;
                p.Status         = admission.Prisoner.Status;

                p.DateOfAdmission   = admission.DateOfAdmission;
                p.DateOfRelease     = admission.DateOfRelease;
                p.HealthOnAdmission = admission.HealthOnAdmission;
                p.WeightOnAdmission = admission.WeightOnAdmission;


                p.HealthOnRelease = admission.HealthOnRelease;
                p.WeightOnRelease = admission.WeightOnRelease;
                p.District        = admission.Prisoner.PresentDistrict.Name;

                var fir = admission.FIRs.Where(o => o.AdmissionId == p.AdmissionId).OrderByDescending(o => o.FIRDate).FirstOrDefault();

                if (fir != null)
                {
                    p.FIRs = fir.FIRNumber;

                    if (fir.PoliceStation != null)
                    {
                        p.PoliceStation = fir.PoliceStation.Name;
                    }

                    var section = fir.Sections.FirstOrDefault();

                    if (section != null)
                    {
                        p.UnderSections = section.Name;
                    }
                }

                var ch = db.CourtHearings.Where(o => o.AdmissionId == admission.AdmissionId).OrderByDescending(o => o.DateOfHearing).FirstOrDefault();

                if (ch != null)
                {
                    p.TrialCourt    = ch.Court.Name;
                    p.DateOfHearing = ch.DateOfHearing;
                }

                var endDate = DateTime.Now;

                if (p.DateOfRelease != null)
                {
                    endDate = p.DateOfRelease.Value;
                }

                DateDifference period = new DateDifference(endDate, admission.DateOfAdmission);
                p.Years  = period.Years;
                p.Months = period.Months;
                p.Days   = period.Days;

                prisoners.Add(p);
            }

            return(prisoners);
        }