public Eva_PerformanceEvaModel GetById(Guid id)
        {
            string status = string.Empty;
            var model = new Eva_PerformanceEvaModel();
            var service = new ActionService(UserLogin);

            #region Thêm vào bảng Eva_performanceEvaDetail trước khi vào màn hình chờ đánh giá
            //truoc khi vào màn hình chờ đánh giá , sẽ thêm vào bảng eva_performanceEvaDetail nếu bảng này chưa có data ứng với performanceID
            var performanceService = new Eva_PerformanceServices();
            performanceService.AddPerformanceEvaDetail360(id);
            #endregion
            

           // var isEvaluation = false;
            var entity = service.GetByIdUseStore<Eva_PerformanceEvaEntity>(id, ConstantSql.hrm_eva_sp_get_PerformanceEvaById, ref status);
            if (entity != null)
            {
                model = entity.CopyData<Eva_PerformanceEvaModel>();
                
                Eva_PerformanceEvaServices service1 = new Eva_PerformanceEvaServices();
                var performanceservice = new Eva_PerformanceServices();
                if (model != null)
                {
                    model.IsSuperiorHasPerformance = service1.CheckSuperiorHasPerformance(model.PerformanceID ?? Guid.Empty, model.ID);
                    model.IsEvaluation = service1.CheckOrder(model.PerformanceID ?? Guid.Empty, model.ID);
                    model.AttachFileLast = performanceservice.GetAttachFileByOrderNo(model.PerformanceID ?? Guid.Empty, model.OrderEva ?? 0);
                    model.AttachFile = performanceservice.GetAttachFileByOrderNo(model.PerformanceID ?? Guid.Empty, model.OrderEva ?? 0);
                }
            }
            model.ActionStatus = status;

            #region lấy khoảng thời gian cho phép nhập điểm
            var serv = new Sys_AttOvertimePermitConfigServices();
            var dateEndMark = serv.GetConfigValue<DateTime>(AppConfig.HRM_EVA_CONFIG_DATEENDMARK);
            var dateStartMark = serv.GetConfigValue<DateTime?>(AppConfig.HRM_EVA_CONFIG_DATESTARTMARK);
            model.DateStartMark = dateStartMark;
            model.DateEndMark = dateEndMark;
            #endregion


            return model;
        }
        public Eva_PerformanceEvaModel Post([Bind]Eva_PerformanceEvaModel model)
        {
            #region Validate

            string message = string.Empty;
            var checkValidate = HRM.Business.Main.Domain.ValidatorService.OnValidateData<Eva_PerformanceEvaModel>(model, "Eva_PerformanceEva", ref message);
            if (!checkValidate)
            {
                model.ActionStatus = message;
                return model;
            }

            #endregion

            //ActionService service = new ActionService(UserLogin);
            //return service.UpdateOrCreate<Eva_PerformanceEvaEntity, Eva_PerformanceEvaModel>(model);
            var PerformanceEvaSevice = new Eva_PerformanceEvaServices();
            var PerformanceEvaEntity = model.CopyData<Eva_PerformanceEvaEntity>();
            PerformanceEvaEntity.PerformanceEvaDetails = model.PerformanceEvaDetails.Translate<Eva_PerformanceEvaDetailEntity>();
            
            #region chuyển attachFile thành xml để ghi vào db
            if (PerformanceEvaEntity != null && model.AttachFiles.Any())
            {
                var lstFiles = new List<AttachFileEntity>();
                foreach (var fileItem in model.AttachFiles)
                {
                    if (!string.IsNullOrEmpty(fileItem))
                    {
                        var attachFile = new AttachFileEntity(fileItem);
                        lstFiles.Add(attachFile);
                    }
                }
                var performanceService = new Eva_PerformanceServices();
                var doc = performanceService.WriteXml(lstFiles);
                PerformanceEvaEntity.AttachFile = performanceService.XmlToString(doc);
            }
            #endregion


            PerformanceEvaSevice.EditPerformanceEva(PerformanceEvaEntity);
            return model;

        }
Example #3
0
        public DataTable GetPerformEvaDetail(Guid PerformanceID, Guid PerformanceEvaID, int OrderEva, string userLogin)
        {
            DtPerformEvaDetail = new DataTable();
            Eva_PerformanceEvaServices service1 = new Eva_PerformanceEvaServices();
            var Columns = service1.GetlistPerformanceEva(PerformanceID, PerformanceEvaID).ToList();

            if (Columns == null || Columns.Count == 0)
            {
                return(null);
            }
            //cot nv
            //  DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Evaluation_Evaluator.TranslateString()));
            //cot tieu chi
            DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_KPIName.TranslateString()));
            //cot Mo ta
            DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_DescriptionKP.TranslateString()));

            //cot Màu chữ KPI
            DtPerformEvaDetail.Columns.Add(new DataColumn("KPIColor"));

            foreach (var i in Columns)
            {
                DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Evaluation.TranslateString() + " " + i.OrderEva));
                DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Mark.TranslateString() + " " + i.OrderEva));
            }

            DataRow Row;

            try
            {
                string status      = string.Empty;
                var    baseService = new BaseService();
                var    objs        = new List <object>();
                objs.Add(PerformanceID);
                objs.Add(OrderEva);
                objs.Add(1);
                objs.Add(2000);

                var result = baseService.GetData <Eva_PerformanceEvaDetailEntity>(objs, ConstantSql.hrm_eva_sp_get_PerformanceEvaDetailAllSelfByPerformanceEvaID, userLogin, ref status);
                if (result == null || result.Count == 0)
                {
                    return(null);
                }



                List <int> listOrderEva = result.OrderByDescending(x => x.OrderEva).Select(x => x.OrderEva.Value).Distinct().ToList();
                var        result1      = new List <Eva_PerformanceEvaDetailEntity>();

                foreach (var y in CountKPI(PerformanceID))
                {
                    Row     = DtPerformEvaDetail.NewRow();
                    result1 = result.Where(x => x.KPIID == y).ToList();
                    if (result1 != null && result1.Count != 0)
                    {
                        Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_KPIName.TranslateString()]       = result1.FirstOrDefault().KPIName;
                        Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_DescriptionKP.TranslateString()] = result1.FirstOrDefault().DescriptionKP;
                        Row["KPIColor"] = result1.FirstOrDefault().KPIColor;

                        string Evaluator = "";
                        foreach (var x in result1)
                        {
                            foreach (var k in listOrderEva)
                            {
                                if (k == x.OrderEva)
                                {
                                    Evaluator += x.Evaluator + "; ";
                                    Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Evaluation.TranslateString() + " " + k] = x.Evaluation;
                                    Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Mark.TranslateString() + " " + k]       = x.Mark;
                                }
                            }
                        }
                        //  Evaluator = Evaluator.Substring(0, Evaluator.Length - 2);
                        //   Row[ConstantDisplay.HRM_Evaluation_Evaluator.TranslateString()] = Evaluator;
                    }
                    DtPerformEvaDetail.Rows.Add(Row);
                }
            }
            catch
            {
                return(null);
            }

            var configs = new Dictionary <string, Dictionary <string, object> >();
            var config  = new Dictionary <string, object>();

            config.Add("hidden", true);
            if (!configs.ContainsKey("KPIColor"))
            {
                configs.Add("KPIColor", config);
            }
            return(DtPerformEvaDetail.ConfigTable(configs));
        }
Example #4
0
        public DataTable GetPerformEvaDetail(Guid PerformanceID, Guid PerformanceEvaID, int OrderEva,string userLogin)
        {
            DtPerformEvaDetail = new DataTable();
            Eva_PerformanceEvaServices service1 = new Eva_PerformanceEvaServices();
            var Columns = service1.GetlistPerformanceEva(PerformanceID, PerformanceEvaID).ToList();
            if (Columns == null || Columns.Count == 0)
                return null;
            //cot nv
            //  DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Evaluation_Evaluator.TranslateString()));
            //cot tieu chi
            DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_KPIName.TranslateString()));
            //cot Mo ta
            DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_DescriptionKP.TranslateString()));

            //cot Màu chữ KPI
            DtPerformEvaDetail.Columns.Add(new DataColumn("KPIColor"));

            foreach (var i in Columns)
            {
                DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Evaluation.TranslateString() + " " + i.OrderEva));
                DtPerformEvaDetail.Columns.Add(new DataColumn(ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Mark.TranslateString() + " " + i.OrderEva));
            }

            DataRow Row;
            try
            {
                string status = string.Empty;
                var baseService = new BaseService();
                var objs = new List<object>();
                objs.Add(PerformanceID);
                objs.Add(OrderEva);
                objs.Add(1);
                objs.Add(2000);

                var result = baseService.GetData<Eva_PerformanceEvaDetailEntity>(objs, ConstantSql.hrm_eva_sp_get_PerformanceEvaDetailAllSelfByPerformanceEvaID,userLogin, ref status);
                if (result == null || result.Count == 0)
                    return null;



                List<int> listOrderEva = result.OrderByDescending(x => x.OrderEva).Select(x => x.OrderEva.Value).Distinct().ToList();
                var result1 = new List<Eva_PerformanceEvaDetailEntity>();

                foreach (var y in CountKPI(PerformanceID))
                {
                    Row = DtPerformEvaDetail.NewRow();
                    result1 = result.Where(x => x.KPIID == y).ToList();
                    if (result1 != null && result1.Count != 0)
                    {

                        Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_KPIName.TranslateString()] = result1.FirstOrDefault().KPIName;
                        Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_DescriptionKP.TranslateString()] = result1.FirstOrDefault().DescriptionKP;
                        Row["KPIColor"] = result1.FirstOrDefault().KPIColor;

                        string Evaluator = "";
                        foreach (var x in result1)
                        {

                            foreach (var k in listOrderEva)
                            {
                                if (k == x.OrderEva)
                                {
                                    Evaluator += x.Evaluator + "; ";
                                    Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Evaluation.TranslateString() + " " + k] = x.Evaluation;
                                    Row[ConstantDisplay.HRM_Eva_PerformanceEvaWaitingEva_Mark.TranslateString() + " " + k] = x.Mark;
                                }
                            }

                        }
                        //  Evaluator = Evaluator.Substring(0, Evaluator.Length - 2);
                        //   Row[ConstantDisplay.HRM_Evaluation_Evaluator.TranslateString()] = Evaluator;
                    }
                    DtPerformEvaDetail.Rows.Add(Row);

                }


            }
            catch
            {
                return null;
            }

            var configs = new Dictionary<string, Dictionary<string, object>>();
            var config = new Dictionary<string, object>();
            config.Add("hidden", true);
            if (!configs.ContainsKey("KPIColor"))
            {
                configs.Add("KPIColor", config);
            }
            return DtPerformEvaDetail.ConfigTable(configs);

        }