Пример #1
0
        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);
        }
        public Eva_PerformanceModel Post([Bind] Eva_PerformanceModel model)
        {
            #region Validate

            string message       = string.Empty;
            var    checkValidate = Business.Main.Domain.ValidatorService.OnValidateData <Eva_PerformanceModel>(model, "Eva_PerformanceProfile", ref message);
            if (!checkValidate)
            {
                model.ActionStatus = message;
                return(model);
            }
            #endregion

            var strEvaluatorIds = model.EvaluatorIDList;
            model.EvaluatorIDs = new List <Guid>();
            if (!string.IsNullOrEmpty(strEvaluatorIds))
            {
                var evaluators = strEvaluatorIds.Split(',');
                foreach (var evaluator in evaluators)
                {
                    if (!string.IsNullOrEmpty(evaluator))
                    {
                        var evaluatorGuid = Guid.Parse(evaluator);
                        model.EvaluatorIDs.Add(evaluatorGuid);
                    }
                }
            }

            var evaluatorService = new Eva_PerformanceServices();
            var evaluatorEntity  = model.CopyData <Eva_PerformanceEntity>();
            evaluatorEntity.KPIs = model.KPIs.Translate <Eva_KPIEntity>();
            if (model.ID == Guid.Empty && evaluatorService.CheckPerformanceExist(evaluatorEntity))
            {
                model.ActionStatus = ConstantDisplay.HRM_Evaluation_Performance_Duplicate.TranslateString();
                return(model);
            }


            #region chuyển attachFile thành xml để ghi vào db
            if (evaluatorEntity != 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 doc = evaluatorService.WriteXml(lstFiles);
                evaluatorEntity.AttachFile = evaluatorService.XmlToString(doc);
            }
            #endregion

            if (model.ID == Guid.Empty)
            {
                evaluatorService.AddPerfomance(evaluatorEntity, true);
            }
            else
            {
                evaluatorService.Edit(evaluatorEntity);
            }
            return(model);
        }