Ejemplo n.º 1
0
        public ActionResult Edit([Bind(Include = "Id,BillType,BillCode,DepartmentName,Position,RequiredNumber,Gender,Age,MaritalStatus,EducationBackground,Major,WorkExperience,Skill,Others,Status")] Recruitments recruitments)
        {
            if (ModelState.IsValid)
            {
                Recruitments tmp = db.Recruitments.Find(recruitments.Id);
                tmp.BillType            = Request["BillType"].Substring(0, 4);
                tmp.BillCode            = Request["BillCode"];
                tmp.DepartmentName      = Request["DepartmentName"];
                tmp.Position            = Request["Position"];
                tmp.RequiredNumber      = int.Parse(Request["RequiredNumber"]);
                tmp.Gender              = Request["Gender"];
                tmp.Age                 = Request["Age"];
                tmp.MaritalStatus       = Request["MaritalStatus"];
                tmp.EducationBackground = Request["EducationBackground"];
                tmp.Major               = Request["Major"];
                tmp.WorkExperience      = Request["WorkExperience"];
                tmp.Skill               = Request["Skill"];
                tmp.Others              = Request["Others"];
                tmp.Status              = Request["Status"];
                tmp.ChangePerson        = this.Name;
                tmp.ChangeTime          = DateTime.Now;
                db.Entry(tmp).State     = EntityState.Modified;
                db.SaveChanges();
                /*查找预留字段(value)*/
                var fieldValueList = (from rr in db.RecruitmentReserves
                                      join rf in db.ReserveFields on rr.FieldId equals rf.Id
                                      where rr.Number == recruitments.Id
                                      select new RecruitmentViewModel {
                    Id = rr.Id, Description = rf.Description, Value = rr.Value
                }).ToList();

                /*给预留字段赋值*/
                foreach (var temp in fieldValueList)
                {
                    RecruitmentReserve rr = db.RecruitmentReserves.Find(temp.Id);
                    rr.Value = Request[temp.Description];
                    db.SaveChanges();
                }
                return(RedirectToAction("Index"));
            }
            return(View(recruitments));
        }
Ejemplo n.º 2
0
        public ActionResult DeleteConfirmed(int id)
        {
            /*Step1:删除预留字段*/
            var item = (from rr in db.RecruitmentReserves
                        where rr.Number == id
                        select new RecruitmentViewModel {
                Id = rr.Id
            }).ToList();

            foreach (var temp in item)
            {
                RecruitmentReserve rr = db.RecruitmentReserves.Find(temp.Id);
                db.RecruitmentReserves.Remove(rr);
            }
            db.SaveChanges();

            /*Step2:删除固定字段*/
            Recruitments recruitments = db.Recruitments.Find(id);

            db.Recruitments.Remove(recruitments);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 3
0
        public ActionResult Create(Recruitments recruitments)
        {
            if (ModelState.IsValid)
            {
                Recruitments tmpRecruit = new Recruitments()
                {
                    BillType            = Request["BillType"].Length == 4 ? Request["BillType"] : Request["BillType"].Substring(0, 4),
                    BillCode            = Request["BillCode"],
                    DepartmentName      = Request["DepartmentName"],
                    Position            = Request["Position"],
                    RequiredNumber      = int.Parse(Request["RequiredNumber"]),
                    Gender              = Request["Gender"],
                    Age                 = Request["Age"],
                    MaritalStatus       = Request["MaritalStatus"],
                    EducationBackground = Request["EducationBackground"],
                    Major               = Request["Major"],
                    WorkExperience      = Request["WorkExperience"],
                    Skill               = Request["Skill"],
                    Others              = Request["Others"],
                    Status              = "等待招聘",
                    IsAudit             = true,
                    IsPublished         = false,
                    RecordPerson        = this.Name,
                    RecordTime          = DateTime.Now
                };
                tmpRecruit.BillCode    = GenerateBillNumber(tmpRecruit.BillType);
                tmpRecruit.AuditStatus = recruitments.AuditStatus;
                tmpRecruit.AuditPerson = recruitments.AuditPerson;
                tmpRecruit.AuditTime   = recruitments.AuditTime;
                db.Recruitments.Add(tmpRecruit);
                //  db.SaveChanges();

                //提交审核
                byte status = AuditApplicationStaffSkill(tmpRecruit);
                if (status == 7)
                {
                    ViewBag.alertMessage = true;
                    return(View(recruitments));
                }
                else
                {
                    //需要对原表做出的修改
                    tmpRecruit.AuditStatus = status;
                    try {
                        db.SaveChanges();
                    }
                    catch (DbEntityValidationException e) { throw e; }
                }


                /*查找预留字段(name)*/
                var fieldList = (from p in db.ReserveFields
                                 join q in db.TableNameContrasts
                                 on p.TableNameId equals q.Id
                                 where q.TableName == "Recruitments" select p).ToList();
                ViewBag.fieldList = fieldList;
                /*遍历,保存变化的字段*/
                foreach (var temp in fieldList)
                {
                    RecruitmentReserve rr = new RecruitmentReserve();
                    rr.Number  = tmpRecruit.Id;
                    rr.FieldId = temp.Id;
                    rr.Value   = Request[temp.FieldName];
                    /*占位,为了在Index中显示整齐的格式*/
                    if (rr.Value == null)
                    {
                        rr.Value = " ";
                    }
                    db.RecruitmentReserves.Add(rr);
                    db.SaveChanges();
                }
                return(RedirectToAction("Index"));
            }
            ViewBag.DepartmentsList    = new SelectList(db.Departments.ToList(), "Name", "Name");
            ViewBag.PositionsList      = this.GetParamsByName("员工岗位");
            ViewBag.GendersList        = this.GetParamsByName("性别");
            ViewBag.MaritalStatusList  = this.GetParamsByName("婚姻状况");
            ViewBag.EduBackgroundsList = this.GetParamsByName("学历");
            ViewBag.MajorsList         = this.GetParamsByName("专业");
            /*查找员工技能预留字段(name)*/
            var fieldList1 = (from p in db.ReserveFields
                              join q in db.TableNameContrasts
                              on p.TableNameId equals q.Id
                              where q.TableName == "Recruitments" select p).ToList();

            ViewBag.fieldList = fieldList1;
            return(View(recruitments));
        }