예제 #1
0
        public ActionResult Create(JobViewModel jobModel)
        {
            if (ModelState.IsValid)
            {
                List<Skill> skills = new List<Skill>();
                if(jobModel.Skills!=null && jobModel.Skills.Count()>0){
                    foreach(int skillId in jobModel.Skills){
                        skills.Add(db.Skills.Find(skillId));
                    }
                }

                Job job = new Job() {
                    Title = jobModel.Title,
                    Description = jobModel.Description,
                    Cost = jobModel.Cost,
                    EndDay = jobModel.EndDay,

                    Skills = skills,
                    User = SystemInfo.GetCurrentUser(),
                    Status = JobStatus.Pending
                };
                db.Jobs.Add(job);
                db.SaveChanges();
                return RedirectToAction("Index");
            }

            //ViewBag.Skills = new MultiSelectList(db.Skills.Select(s => new { Id = s.Id, Name = s.Name }), "Id", "Name");
            return View(jobModel);
        }
예제 #2
0
        public ActionResult Edit(JobViewModel jobVM)
        {
            if (ModelState.IsValid)
            {
                Job job = db.Jobs.Find(jobVM.Id);
                if (job == null)
                {
                    return HttpNotFound();
                }

                job.Title = jobVM.Title;
                job.Description = jobVM.Description;
                job.Cost = jobVM.Cost;
                job.EndDay = jobVM.EndDay;

                job.Skills.Clear();
                if (jobVM.Skills != null)
                {
                    List<Skill> skills = new List<Skill>();
                    foreach (int skillId in jobVM.Skills)
                    {
                        skills.Add(db.Skills.Find(skillId));
                    }
                    job.Skills = skills;
                }

                //db.Entry(job).State = EntityState.Modified;
                db.SaveChanges();
                return RedirectToAction("Index");
            }
            return View(jobVM);
        }
예제 #3
0
        // GET: Jobs/Edit/5
        public ActionResult Edit(int? id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }

            Job job = db.Jobs.Find(id);
            if (job == null)
            {
                return HttpNotFound();
            }

            JobViewModel jobVM = new JobViewModel(){
                Id = job.Id,
                Title = job.Title,
                EndDay = job.EndDay,
                Cost = job.Cost,
                Description = job.Description,
                Skills = job.Skills.Select(s=>s.Id).ToArray()

            };

            //ViewBag.Skills = new MultiSelectList(db.Skills.Select(s => new { Id = s.Id, Name = s.Name }), "Id", "Name");
            return View(jobVM);
        }