Beispiel #1
0
        public ModelResponse NewEducationInformation(UserInfo user, ref EducationalInformationVm vm, bool validateOnly)
        {
            try
            {
                //Authorization

                //Authorization
                if (user == null)
                {
                    return(new ModelResponse(101));
                }
                //if (user != null)
                //{
                //    if ( !user.IsIndividual) return new ModelResponse(101);

                //}


                //Validations
                // if (vm.graduationyear != null) return new ModelResponse(1);
                //if (string.IsNullOrWhiteSpace(vm.Degree) ) return new ModelResponse(1);

                // if (string.IsNullOrWhiteSpace(vm.Grade)) return new ModelResponse(1);
                // if (vm.Name.IsNullOrWhiteSpace()) return new ModelResponse(1);

                if (!validateOnly)
                {
                    Repo.PostNewEducationInformation(ref vm, user);
                }
            }
            catch (Exception ex)
            {
                return(new ModelResponse(ex));
            }

            return(new ModelResponse(0, vm.IndividualEducationlevelID));
        }
        public static object PostnewEducation(EducationalInformationVm data, bool validateOnly)
        {
            var mr = Mgr.NewEducationInformation(Utils.LoggedUser, ref data, validateOnly);

            return(Utils.ServiceResponse(PageCode, mr));
        }
Beispiel #3
0
        public long PostNewEducationInformation(ref EducationalInformationVm vm, UserInfo user)
        {
            using (var db = new LMISEntities())
                using (var transaction = db.Database.BeginTransaction())
                {
                    try
                    {
                        var id = vm.IndividualEducationlevelID;

                        if (id > 0) //Update
                        {
                            var tr = db.IndividualEducationlevels
                                     .Where(r => r.IsDeleted == null && r.IndividualEducationlevelID == id)
                                     .ToList().Single();

                            tr.GraduationYear  = vm.graduationyear;
                            tr.Degree          = vm.Degree;
                            tr.GradePrecentage = vm.Percentage;
                            tr.PortalUsersID   = user.PortalUserId;
                            tr.GradeGPA        = vm.GradeGPA;

                            // tr.Is_Approved = (byte)vm.Approval;
                            // tr.IsInformal = vm.IsInformal;
                            tr.UpdateUserID = user.UserId;
                            tr.UpdateDate   = DateTime.UtcNow;
                            //Delete detail records
                            var dr = db.IndividualEducationlevelDets
                                     .Where(r => r.IndividualEducationlevelID == id)
                                     .ToList();

                            db.IndividualEducationlevelDets.RemoveRange(dr);
                        }
                        else        //Insert
                        {
                            var tr = new IndividualEducationlevel
                            {
                                GraduationYear   = vm.graduationyear,
                                Degree           = vm.Degree,
                                GradePrecentage  = vm.Percentage,
                                PortalUsersID    = user.PortalUserId,
                                LevelOfEducation = vm.EducationalLevelId,
                                PostDate         = System.DateTime.Now,
                                GradeGPA         = vm.GradeGPA
                            };

                            db.IndividualEducationlevels.Add(tr);
                            db.SaveChanges();
                            vm.IndividualEducationlevelID = (long)tr.IndividualEducationlevelID;
                        }
                        //Insert detail records
                        foreach (var r in vm.Name.ToLocalStrings())
                        {
                            var dr = new IndividualEducationlevelDet()
                            {
                                IndividualEducationlevelID = vm.IndividualEducationlevelID,
                                LanguageID        = r.L,
                                InstitutionName   = r.T,
                                InstitutionType   = r.L == 1 ? vm.InstitutionType.English : r.L == 3 ? vm.InstitutionType.Arabic : vm.InstitutionType.French,
                                CertificationType = r.L == 1 ? vm.CertificationType.English : r.L == 3 ? vm.CertificationType.Arabic : vm.CertificationType.French,
                                FacultyName       = r.L == 1 ? vm.FacultyName.English : r.L == 3 ? vm.FacultyName.Arabic : vm.FacultyName.French,
                                Grade             = r.L == 1 ? vm.Grade.English : r.L == 3 ? vm.Grade.Arabic : vm.Grade.French
                            };
                            db.IndividualEducationlevelDets.Add(dr);
                        }
                        var indvidual = db.IndividualDetails.Single(s => s.PortalUsersID == user.PortalUserId);
                        indvidual.Is_Approved = (int)Approval.Pending;
                        db.SaveChanges();


                        transaction.Commit();
                    }
                    catch (DbEntityValidationException e)
                    {
                        foreach (var eve in e.EntityValidationErrors)
                        {
                            Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:");
                        }
                        throw;
                    }
                    catch (Exception ex)
                    {
                        transaction.Rollback();
                        ExceptionDispatchInfo.Capture(ex).Throw();
                    }
                }

            return(vm.IndividualEducationlevelID);
        }