示例#1
0
        public IHttpActionResult SavePeopleTrain(PeopleTrainFormViewModel model)
        {
            List <Model.ViewModel.Error> errors = new List <Model.ViewModel.Error>();

            if (!ModelState.IsValid)
            {
                return(Json(Utils.ParseFormError(ModelState)));
            }

            string message = "Ok";

            if (model.EmpId == 0)
            {
                model.EmpId = User.Identity.GetEmpId();
            }
            model.EmpId = 1042;
            var record = _hrUnitOfWork.Repository <PeopleTraining>().FirstOrDefault(a => a.Id == model.Id);

            //insert
            if (record == null)
            {
                record = new PeopleTraining();
                AutoMapperParm parms = new AutoMapperParm()
                {
                    Source = model, Destination = record
                };
                AutoMapper(parms);
                record.CreatedUser    = User.Identity.Name;
                record.CreatedTime    = DateTime.Now;
                record.CompanyId      = User.Identity.GetDefaultCompany();
                record.ApprovalStatus = 6;
                record.RequestDate    = DateTime.Now;
                _hrUnitOfWork.TrainingRepository.Add(record);
            }
            //update
            else
            {
                AutoMapperParm parms = new AutoMapperParm()
                {
                    Source = model, Destination = record
                };
                AutoMapper(parms);
                record.ModifiedTime   = DateTime.Now;
                record.ModifiedUser   = User.Identity.Name;
                record.CompanyId      = User.Identity.GetDefaultCompany();
                record.RequestDate    = DateTime.Now;
                record.ApprovalStatus = 6;
                _hrUnitOfWork.TrainingRepository.Attach(record);
                _hrUnitOfWork.TrainingRepository.Entry(record).State = EntityState.Modified;
            }
            var Errors = SaveChanges(User.Identity.GetLanguage());

            if (Errors.Count > 0)
            {
                message = Errors.First().errors.First().message;
            }

            return(Ok(message));
        }
        public ActionResult TrainFollowUpDetails(int Id, byte Version)
        {
            ViewBag.RejectReason = _hrUnitOfWork.LookUpRepository.GetLookUpCodes("CancelReason", Language).Select(a => new { id = a.CodeId, name = a.Title });
            PeopleTrainFormViewModel request = _hrUnitOfWork.TrainingRepository.ReadPeopleTrain(Id, Language);

            ViewBag.PersonId = _hrUnitOfWork.TrainingRepository.GetPeople(Language).Select(a => new { id = a.Id, name = a.Title, PicUrl = a.PicUrl, Icon = a.EmpStatus });
            ViewBag.CourseId = _hrUnitOfWork.TrainingRepository.GetTrainCourse(Language, CompanyId).Select(p => new { id = p.Id, name = p.LocalName });
            // ViewBag.EventId = _hrUnitOfWork.TrainingRepository.GetAllEvents().Select(p => new { id = p.Id, name = p.Name });
            ViewBag.EventId  = _hrUnitOfWork.Repository <TrainEvent>().Select(p => new { id = p.Id, name = p.Name });
            ViewBag.CurrCode = _hrUnitOfWork.LookUpRepository.GetCurrencyCode();
            return(View(request));
        }
示例#3
0
        public IHttpActionResult GetPeopleTrainObj(int id = 0)
        {
            var CourseId = _hrUnitOfWork.TrainingRepository.GetTrainCourse(User.Identity.GetLanguage(), User.Identity.GetDefaultCompany()).Select(p => new { id = p.Id, name = p.LocalName });
            var CurrCode = _hrUnitOfWork.LookUpRepository.GetCurrencyCode();
            var EmpLst   = _hrUnitOfWork.TrainingRepository.GetPeople(User.Identity.GetLanguage()).Select(a => new { id = a.Id, name = a.Title, PicUrl = a.PicUrl, Icon = a.EmpStatus });
            PeopleTrainFormViewModel TrainObj;

            if (id == 0)
            {
                TrainObj = new PeopleTrainFormViewModel();
            }
            else
            {
                TrainObj = _hrUnitOfWork.TrainingRepository.ReadPeopleTrain(id, User.Identity.GetLanguage());
            }

            return(Ok(new { TrainObj = TrainObj, CourseIdLst = CourseId, CurrCodeLst = CurrCode, EmpLst = EmpLst }));
        }
        public ActionResult Details(PeopleTrainFormViewModel model, OptionsViewModel moreInfo)
        {
            List <Error> errors = new List <Error>();

            if (ModelState.IsValid)
            {
                if (ServerValidationEnabled)
                {
                    errors = _hrUnitOfWork.SiteRepository.CheckForm(new CheckParm
                    {
                        CompanyId  = CompanyId,
                        ObjectName = "PeopleTrains",
                        TableName  = "PeopleTrain",
                        Columns    = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))),
                        Culture    = Language
                    });

                    if (errors.Count() > 0)
                    {
                        foreach (var e in errors)
                        {
                            foreach (var errorMsg in e.errors)
                            {
                                ModelState.AddModelError(errorMsg.field, errorMsg.message);
                            }
                        }

                        return(Json(Models.Utils.ParseFormErrors(ModelState)));
                    }
                }

                var record = _hrUnitOfWork.Repository <PeopleTraining>().FirstOrDefault(a => a.Id == model.Id);
                //insert
                if (record == null)
                {
                    record = new PeopleTraining();
                    AutoMapper(new Models.AutoMapperParm
                    {
                        Destination = record,
                        Source      = model,
                        ObjectName  = "PeopleTrains",
                        Options     = moreInfo,
                        Transtype   = TransType.Insert
                    });

                    record.CreatedUser    = UserName;
                    record.CreatedTime    = DateTime.Now;
                    record.CompanyId      = CompanyId;
                    record.ApprovalStatus = 6;
                    // record.ApprovalStatus = (byte)(model.submit == true ? 2 : 1); //1- New, 2- Submit
                    record.RequestDate = DateTime.Now;
                    _hrUnitOfWork.TrainingRepository.Add(record);
                }

                //update
                else
                {
                    AutoMapper(new Models.AutoMapperParm
                    {
                        Destination = record,
                        Source      = model,
                        ObjectName  = "PeopleTrains",
                        Options     = moreInfo,
                        Transtype   = TransType.Update
                    });
                    //if (model.submit)
                    //    _hrUnitOfWork.TrainingRepository.AddTrail(new AddTrailViewModel()
                    //    {
                    //        ColumnName = "ApprovalStatus",
                    //        CompanyId = CompanyId,
                    //        ObjectName = "PeopleTrains",
                    //        SourceId = record.Id,
                    //        UserName = UserName,
                    //        Version = 0,
                    //        ValueAfter = MsgUtils.Instance.Trls("Submit"),
                    //        ValueBefore = MsgUtils.Instance.Trls("Darft")
                    //    });

                    record.ModifiedTime   = DateTime.Now;
                    record.ModifiedUser   = UserName;
                    record.CompanyId      = CompanyId;
                    record.RequestDate    = DateTime.Now;
                    record.ApprovalStatus = 6;
                    // record.ApprovalStatus = (byte)(model.submit == true ? 2 : model.ApprovalStatus);
                    _hrUnitOfWork.TrainingRepository.Attach(record);
                    _hrUnitOfWork.TrainingRepository.Entry(record).State = EntityState.Modified;
                }
                var Errors  = SaveChanges(Language);
                var message = "OK";
                if (Errors.Count > 0)
                {
                    message = Errors.First().errors.First().message;
                }

                return(Json(message));
            }

            return(Json(Models.Utils.ParseFormErrors(ModelState)));
        }
        public ActionResult TrainFollowUpDetails(PeopleTrainFormViewModel model, OptionsViewModel moreInfo)
        {
            List <Error>   Errors  = new List <Error>();
            PeopleTraining request = _hrUnitOfWork.TrainingRepository.GetPeopleTraining(model.Id);

            if (ModelState.IsValid)
            {
                if (ServerValidationEnabled)
                {
                    Errors = _hrUnitOfWork.LeaveRepository.CheckForm(new CheckParm
                    {
                        CompanyId    = CompanyId,
                        ObjectName   = "PeopleTrainFollowUpForm",
                        TableName    = "PeopleTrain",
                        Columns      = Models.Utils.GetColumnViews(ModelState.Where(a => !a.Key.Contains('.'))),
                        ParentColumn = "EventId",
                        Culture      = Language
                    });

                    if (Errors.Count() > 0)
                    {
                        foreach (var e in Errors)
                        {
                            foreach (var errorMsg in e.errors)
                            {
                                ModelState.AddModelError(errorMsg.field, errorMsg.message);
                            }
                        }
                        return(Json(Models.Utils.ParseFormErrors(ModelState)));
                    }
                }
            }
            else
            {
                return(Json(Models.Utils.ParseFormErrors(ModelState)));
            }

            AutoMapper(new Models.AutoMapperParm
            {
                Destination = request,
                Source      = model,
                ObjectName  = "PeopleTrainFollowUpForm",
                Options     = moreInfo
            });

            if (request.ApprovalStatus != 9)
            {
                request.RejectDesc   = null;
                request.RejectReason = null;
            }

            request.ModifiedTime = DateTime.Now;
            request.ModifiedUser = UserName;

            if (request.ApprovalStatus == 5 || request.ApprovalStatus == 9) //Accepted or Rejected
            {
                string msg = AddWFTrans(request, null, null);
                if (msg.Length > 0)
                {
                    return(Json(msg));
                }
            }
            _hrUnitOfWork.TrainingRepository.Attach(request);
            _hrUnitOfWork.TrainingRepository.Entry(request).State = EntityState.Modified;

            Errors = SaveChanges(Language);
            if (Errors.Count > 0)
            {
                var message = Errors.First().errors.First().message;
                return(Json(message));
            }

            return(Json("OK"));
        }