public ActionResult GetOfficerDetails(int id)
        {
            officer officer = (from item in db.officers
                               where item.officerID == id
                               select item).FirstOrDefault();


            officerStayIn room = (from item in db.officerStayIns
                                  where item.officerid == id
                                  select item).FirstOrDefault();

            OfficerWorkA work = (from item in db.OfficerWorkAs
                                 where item.officerid == id
                                 select item).FirstOrDefault();

            OfficerDetails officerDetails = new OfficerDetails();

            officerDetails.officer = officer;
            if (room != null)
            {
                officerDetails.room = room.officerRoom;
            }
            if (work != null)
            {
                officerDetails.job = work.Job;
            }

            return(View(officerDetails));
        }
        public ActionResult OfficerAssignmentPost(int id)
        {
            var job = (from item in db.Jobs
                       where item.jobID == id
                       select item).FirstOrDefault();
            string sitizenID = Session["officerCitizenID"].ToString();

            var officer = (from item in db.officers
                           where item.citizinID == sitizenID
                           select item).FirstOrDefault();

            var query = (from item in db.OfficerWorkAs
                         where item.officerid == officer.officerID
                         select item).FirstOrDefault();

            //updating the job
            if (query != null)
            {
                query.officer         = officer;
                query.Job             = job;
                query.jobid           = job.jobID;
                query.officerid       = officer.officerID;
                query.since           = DateTime.Now.Date;
                db.Entry(query).State = EntityState.Modified;
                db.SaveChanges();
            }
            else
            {
                //creating new job-officer relation
                OfficerWorkA relation = new OfficerWorkA();

                relation.officer   = officer;
                relation.Job       = job;
                relation.jobid     = job.jobID;
                relation.officerid = officer.officerID;
                relation.since     = DateTime.Now.Date;

                db.Entry(relation).State = EntityState.Added;
                db.SaveChanges();

                job.availablePositionsCount--;
                db.Entry(job).State = EntityState.Modified;
                db.SaveChanges();

                AssignARoom(officer);
            }
            return(Redirect("~/Admin/GetOfficersData"));
        }