public Eva_PerformanceModel  GetById(Guid id)
        {
            string status  = string.Empty;
            var    model   = new Eva_PerformanceModel();
            var    service = new ActionService(UserLogin);
            var    entity  = service.GetByIdUseStore <Eva_PerformanceEntity>(id, ConstantSql.hrm_eva_sp_get_PerformanceById, ref status);

            if (entity != null)
            {
                model = entity.CopyData <Eva_PerformanceModel>();
                //Eva_PerformanceEvaServices service1 = new Eva_PerformanceEvaServices();
                //model.AttachFileLast = service1.GetAttachFile(model.ID);

                #region Đọc Xml từ db và chuyển sang string

                if (model != null)
                {
                    var performanceService = new Eva_PerformanceServices();
                    var doc = performanceService.ReadXml(model.AttachFile, AttachFileEntity.FieldNames.FullName);
                    model.AttachFileLast = string.Join(",", doc.ToArray());
                    model.AttachFile     = model.AttachFileLast;
                    model.AttachFiles    = doc;
                }
                #endregion
            }
            model.ActionStatus = status;
            return(model);
        }
예제 #2
0
        public Eva_PerformanceModel DeleteOrRemove(string id)
        {
            ActionService service            = new ActionService(UserLogin);
            var           result             = service.DeleteOrRemove <Eva_PerformanceEntity, Eva_PerformanceModel>(id);
            var           performanceService = new Eva_PerformanceServices();
            var           idItem             = id.Split(',');

            for (int i = 1; i < idItem.Count(); i++)
            {
                var idInt = Guid.Parse(idItem[i]).TryGetValue <Guid>();
                if (idInt != Guid.Empty)
                {
                    performanceService.DeletePerformance(idInt);
                }
            }
            return(result);
        }
예제 #3
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);
        }
예제 #4
0
        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_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);
        }