コード例 #1
0
 public ActionResult Create()
 {
     try
     {
         ViewBag.employee  = Context.Employee_Profile.Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
         ViewBag.groupcode = Context.PerformanceEvaluationGroup.Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
         ViewBag.plancode  = Context.EvaluationPlan.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
         ViewBag.obj       = Context.EvaluationObjectives.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
         ViewBag.skk       = Context.Skill.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
         var model = new EvaluationTransaction();
         // model.status.statu = Models.Infra.check_status.created;
         model.AppraisalDate = Convert.ToDateTime("01/01/1900");/*  DateTime.Now.Date;*/
         model.FromeDate     = DateTime.Now.Date;
         model.ToDate        = DateTime.Now.Date;
         model.check_status  = check_status.created;
         return(View(model));
     }
     catch (Exception)
     {
         return(RedirectToAction("index"));
     }
 }
コード例 #2
0
        public ActionResult Create(FormCollection form, EvaluationTransaction model)

        {
            try
            {
                ViewBag.employee  = Context.Employee_Profile.Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.groupcode = Context.PerformanceEvaluationGroup.Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.plancode  = Context.EvaluationPlan.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.obj       = Context.EvaluationObjectives.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.skk       = Context.Skill.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                var i1 = form["num"].Split(',');
                var i2 = form["D"].Split(',');
                var i3 = form["DH"].Split(',');
                var i4 = form["DM"].Split(',');
                var i5 = form["DAV"].Split(',');
                var i6 = form["DF"].Split(',');
                var i7 = form["tot"].Split(',');
                if (i1.Count() > 1)
                {
                    model.num = int.Parse(form["num"].Split(',')[1]);
                }
                else
                {
                    model.num = 0;
                }
                if (i2.Count() > 1)
                {
                    model.def = double.Parse(form["D"].Split(',')[1]);
                }
                else
                {
                    model.def = 0;
                }
                if (i3.Count() > 1)
                {
                    model.H_degree = double.Parse(form["DH"].Split(',')[1]);
                }
                else
                {
                    model.H_degree = 0;
                }
                if (i4.Count() > 1)
                {
                    model.M_degree = double.Parse(form["DM"].Split(',')[1]);
                }
                else
                {
                    model.M_degree = 0;
                }
                if (i5.Count() > 1)
                {
                    model.average = double.Parse(form["DAV"].Split(',')[1]);
                }
                else
                {
                    model.average = 0;
                }
                if (i6.Count() > 1)
                {
                    model.final = double.Parse(form["DF"].Split(',')[1]);
                }
                else
                {
                    model.final = 0;
                }
                if (i7.Count() > 1)
                {
                    model.total = form["tot"].Split(',')[1];
                }
                else
                {
                    model.total = "";
                }


                ///status////
                // record.check_status = check_status.created;
                //record.sss = record.check_status.GetTypeCode().ToString();
                var Date = Convert.ToDateTime("1/1/1900");
                var s    = new status {
                    statu = check_status.created, Type = Models.Infra.Type.Budget, approved_bydate = Date, cancaled_bydate = Date, created_bydate = DateTime.Now.Date, Rejected_bydate = Date, return_to_reviewdate = Date
                };
                s.created_by = User.Identity.GetUserName();
                var st = Context.status.Add(s);
                Context.SaveChanges();
                model.statusID     = st.ID;
                model.check_status = check_status.created;
                ////////////
                var tarnsaction_saved = Context.EvaluationTransaction.Add(model);
                Context.SaveChanges();
                /////elements//////
                var id_element = form["ID_ELEM"].Split(',');
                var H_element  = form["degree_head"].Split(',');
                var M_element  = form["degree_ector"].Split(',');
                var A_element  = form["degree_average"].Split(',');
                var F_element  = form["degreeo_final"].Split(',');
                var D_element  = form["descID"].Split(',');
                for (var i = 0; i < id_element.Count(); i++)
                {
                    if (id_element[i] != "")
                    {
                        var ID = int.Parse(id_element[i]);


                        var m = new Evalu_Element_Tran
                        {
                            EvaluationElementsID    = ID,
                            EvaluationTransactionID = tarnsaction_saved.ID,
                            H_degree = double.Parse(H_element[i]),
                            M_degree = double.Parse(M_element[i]),
                            average  = double.Parse(A_element[i]),
                            final    = double.Parse(F_element[i]),
                        };
                        if ((D_element[i]) != "")
                        {
                            m.EvaluationGradeID = int.Parse(D_element[i]);
                        }
                        Context.Evalu_Element_Tran.Add(m);
                        Context.SaveChanges();
                    }
                }
                //////////Q&A//////////
                var id_Q = form["ID_Q"].Split(',');
                var ans  = form["ans"].Split(',');

                for (var i = 0; i < id_Q.Count(); i++)
                {
                    if (id_Q[i] != "")
                    {
                        var ID = int.Parse(id_Q[i]);

                        var m = new A_Q
                        {
                            EvaluationQuestionsandanswersID = ID,
                            EvaluationTransactionID         = tarnsaction_saved.ID,
                            actual_answer = ans[i]
                        };
                        Context.A_Q.Add(m);
                        Context.SaveChanges();
                    }
                }
                //////////objec////////
                var ID_O      = form["ID_O"].Split(',');
                var Date_O    = form["Date_O"].Split(',');
                var Head_O    = form["Head_O"].Split(',');
                var Mnamger_O = form["Mnamger_O"].Split(',');
                var average_O = form["average_O"].Split(',');
                var final_O   = form["final_O"].Split(',');
                for (var i = 0; i < ID_O.Count(); i++)
                {
                    if (ID_O[i] != "")
                    {
                        var ID = int.Parse(ID_O[i]);
                        var m  = new obje_eval_tran
                        {
                            EvaluationObjectivesID  = ID,
                            EvaluationTransactionID = tarnsaction_saved.ID,
                            H_degree = double.Parse(Head_O[i]),
                            M_degree = double.Parse(Mnamger_O[i]),
                            average  = double.Parse(average_O[i]),
                            final    = double.Parse(final_O[i]),
                            Date     = Convert.ToDateTime(Date_O[i])
                        };
                        Context.obje_eval_tran.Add(m);
                        Context.SaveChanges();
                    }
                }
                ////////skill//////
                var ID_S          = form["ID_S"].Split(',');
                var job_rate      = form["job_rate"].Split(',');
                var employee_rate = form["employee_rate"].Split(',');
                var GAP           = form["GAP"].Split(',');

                for (var i = 0; i < ID_S.Count(); i++)
                {
                    if (ID_S[i] != "")
                    {
                        var ID = int.Parse(ID_S[i]);
                        var m  = new skill_eval
                        {
                            EvaluationTransactionID = tarnsaction_saved.ID,
                            SkillID = ID,
                            em_rate = double.Parse(employee_rate[i]),
                            J_rate  = double.Parse(job_rate[i]),
                            GAP     = GAP[i]
                        };
                        Context.skill_eval.Add(m);
                        Context.SaveChanges();
                    }
                }
                //=================================check for alert==================================
                var get_result_check = HR.Controllers.check.check_alert("evaluation transaction", HR.Models.user.Action.Create, HR.Models.user.type_field.form);
                if (get_result_check != null)
                {
                    var inbox = new Models.user.Alert_inbox {
                        send_from_user_id = User.Identity.GetUserId(), send_to_user_id = get_result_check.send_to_ID_user, title = get_result_check.Subject, Subject = get_result_check.Message
                    };
                    if (get_result_check.until != null)
                    {
                        if (get_result_check.until.Value.Year != 0001)
                        {
                            inbox.until = get_result_check.until;
                        }
                    }
                    Context.Alert_inbox.Add(inbox);
                    Context.SaveChanges();
                }
                //==================================================================================
                return(RedirectToAction("index"));
            }
            catch (Exception)
            {
                return(View(model));
            }
        }
コード例 #3
0
        public ActionResult Edit(FormCollection form, EvaluationTransaction model)
        {
            try
            {
                var record = Context.EvaluationTransaction.FirstOrDefault(m => m.ID == model.ID);
                ViewBag.employee  = Context.Employee_Profile.Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.groupcode = Context.PerformanceEvaluationGroup.Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.plancode  = Context.EvaluationPlan.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.obj       = Context.EvaluationObjectives.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ViewBag.skk       = Context.Skill.ToList().Select(m => new { Code = m.Code + "->" + m.Name, ID = m.ID });
                ///////////////////////
                record.AppraisalDate      = model.AppraisalDate;
                record.Code               = model.Code;
                record.Employee_ProfileID = model.Employee_ProfileID;
                record.EvaluationPlanID   = model.EvaluationPlanID;
                record.FromeDate          = model.FromeDate;
                record.ToDate             = model.ToDate;
                //record.def = model.def;
                //record.H_degree = model.H_degree;
                //record.M_degree = model.M_degree;
                record.PerformanceEvaluationGroupID = model.PerformanceEvaluationGroupID;
                //record.average = model.average;
                //record.final = model.final;
                //record.total = model.total;
                record.planLine = model.planLine;
                // record.num = model.num;
                ///////////////////////remove//////
                var elem  = record.Evalu_Element_Tran;
                var qu    = record.A_Q;
                var ob    = record.obje_eval_tran;
                var Skill = record.skill_eval;
                if (elem != null)
                {
                    Context.Evalu_Element_Tran.RemoveRange(elem);
                }
                if (qu != null)
                {
                    Context.A_Q.RemoveRange(qu);
                }
                if (ob != null)
                {
                    Context.obje_eval_tran.RemoveRange(ob);
                }
                if (Skill != null)
                {
                    Context.skill_eval.RemoveRange(Skill);
                }
                Context.SaveChanges();
                ///////////////////////
                var i1 = form["num"].Split(',');
                var i2 = form["D"].Split(',');
                var i3 = form["DH"].Split(',');
                var i4 = form["DM"].Split(',');
                var i5 = form["DAV"].Split(',');
                var i6 = form["DF"].Split(',');
                var i7 = form["tot"].Split(',');
                if (i1.Count() > 1)
                {
                    record.num = int.Parse(form["num"].Split(',')[1]);
                }
                else
                {
                    record.num = 0;
                }
                if (i2.Count() > 1)
                {
                    record.def = double.Parse(form["D"].Split(',')[1]);
                }
                else
                {
                    record.def = 0;
                }
                if (i3.Count() > 1)
                {
                    record.H_degree = double.Parse(form["DH"].Split(',')[1]);
                }
                else
                {
                    record.H_degree = 0;
                }
                if (i4.Count() > 1)
                {
                    record.M_degree = double.Parse(form["DM"].Split(',')[1]);
                }
                else
                {
                    record.M_degree = 0;
                }
                if (i5.Count() > 1)
                {
                    record.average = double.Parse(form["DAV"].Split(',')[1]);
                }
                else
                {
                    record.average = 0;
                }
                if (i6.Count() > 1)
                {
                    record.final = double.Parse(form["DF"].Split(',')[1]);
                }
                else
                {
                    record.final = 0;
                }
                if (i7.Count() > 1)
                {
                    record.total = form["tot"].Split(',')[1];
                }
                else
                {
                    record.total = "";
                }


                Context.SaveChanges();
                /////elements//////
                var id_element = form["ID_ELEM"].Split(',');
                var H_element  = form["degree_head"].Split(',');
                var M_element  = form["degree_ector"].Split(',');
                var A_element  = form["degree_average"].Split(',');
                var F_element  = form["degreeo_final"].Split(',');
                var D_element  = form["descID"].Split(',');
                for (var i = 0; i < id_element.Count(); i++)
                {
                    if (id_element[i] != "")
                    {
                        var ID = int.Parse(id_element[i]);


                        var m = new Evalu_Element_Tran
                        {
                            EvaluationElementsID    = ID,
                            EvaluationTransactionID = record.ID,
                            H_degree = double.Parse(H_element[i]),
                            M_degree = double.Parse(M_element[i]),
                            average  = double.Parse(A_element[i]),
                            final    = double.Parse(F_element[i]),
                        };
                        if ((D_element[i]) != "")
                        {
                            m.EvaluationGradeID = int.Parse(D_element[i]);
                        }
                        Context.Evalu_Element_Tran.Add(m);
                        Context.SaveChanges();
                    }
                }
                //////////Q&A//////////
                var id_Q = form["ID_Q"].Split(',');
                var ans  = form["ans"].Split(',');

                for (var i = 0; i < id_Q.Count(); i++)
                {
                    if (id_Q[i] != "")
                    {
                        var ID = int.Parse(id_Q[i]);

                        var m = new A_Q
                        {
                            EvaluationQuestionsandanswersID = ID,
                            EvaluationTransactionID         = record.ID,
                            actual_answer = ans[i]
                        };
                        Context.A_Q.Add(m);
                        Context.SaveChanges();
                    }
                }
                //////////objec////////
                var ID_O      = form["ID_O"].Split(',');
                var Date_O    = form["Date_O"].Split(',');
                var Head_O    = form["Head_O"].Split(',');
                var Mnamger_O = form["Mnamger_O"].Split(',');
                var average_O = form["average_O"].Split(',');
                var final_O   = form["final_O"].Split(',');
                for (var i = 0; i < ID_O.Count(); i++)
                {
                    if (ID_O[i] != "")
                    {
                        var ID = int.Parse(ID_O[i]);
                        var m  = new obje_eval_tran
                        {
                            EvaluationObjectivesID  = ID,
                            EvaluationTransactionID = record.ID,
                            H_degree = double.Parse(Head_O[i]),
                            M_degree = double.Parse(Mnamger_O[i]),
                            average  = double.Parse(average_O[i]),
                            final    = double.Parse(final_O[i]),
                            Date     = Convert.ToDateTime(Date_O[i])
                        };
                        Context.obje_eval_tran.Add(m);
                        Context.SaveChanges();
                    }
                }
                ////////skill//////
                var ID_S          = form["ID_S"].Split(',');
                var job_rate      = form["job_rate"].Split(',');
                var employee_rate = form["employee_rate"].Split(',');
                var GAP           = form["GAP"].Split(',');

                for (var i = 0; i < ID_S.Count(); i++)
                {
                    if (ID_S[i] != "")
                    {
                        var ID = int.Parse(ID_S[i]);
                        var m  = new skill_eval
                        {
                            EvaluationTransactionID = record.ID,
                            SkillID = ID,
                            em_rate = double.Parse(employee_rate[i]),
                            J_rate  = double.Parse(job_rate[i]),
                            GAP     = GAP[i]
                        };
                        Context.skill_eval.Add(m);
                        Context.SaveChanges();
                    }
                }
                //=================================check for alert==================================
                var get_result_check = HR.Controllers.check.check_alert("evaluation transaction", HR.Models.user.Action.edit, HR.Models.user.type_field.form);
                if (get_result_check != null)
                {
                    var inbox = new Models.user.Alert_inbox {
                        send_from_user_id = User.Identity.GetUserId(), send_to_user_id = get_result_check.send_to_ID_user, title = get_result_check.Subject, Subject = get_result_check.Message
                    };
                    if (get_result_check.until != null)
                    {
                        if (get_result_check.until.Value.Year != 0001)
                        {
                            inbox.until = get_result_check.until;
                        }
                    }
                    Context.Alert_inbox.Add(inbox);
                    Context.SaveChanges();
                }
                //==================================================================================

                return(RedirectToAction("index"));
            }
            catch (Exception)
            {
                return(View(model));
            }
        }