Beispiel #1
0
        public ActionResult <ParentInfoAddViewModel> DeleteParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel parentInfoDelete = new ParentInfoAddViewModel();

            try
            {
                if (parentInfoAddViewModel.parentInfo.SchoolId > 0)
                {
                    parentInfoDelete = _parentInfoRegisterService.DeleteParentInfo(parentInfoAddViewModel);
                }
                else
                {
                    parentInfoDelete._token      = parentInfoAddViewModel._token;
                    parentInfoDelete._tenantName = parentInfoAddViewModel._tenantName;
                    parentInfoDelete._failure    = true;
                    parentInfoDelete._message    = "Please enter valid school id";
                }
            }
            catch (Exception es)
            {
                parentInfoDelete._failure = true;
                parentInfoDelete._message = es.Message;
            }
            return(parentInfoDelete);
        }
        /// <summary>
        /// View Parent Info By Id
        /// </summary>
        /// <param name="parentInfoAddViewModel"></param>
        /// <returns></returns>
        public ParentInfoAddViewModel ViewParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            logger.Info("Method viewParentInfo called.");
            ParentInfoAddViewModel parentInfoViewModel = new ParentInfoAddViewModel();

            try
            {
                if (TokenManager.CheckToken(parentInfoAddViewModel._tenantName + parentInfoAddViewModel._userName, parentInfoAddViewModel._token))
                {
                    parentInfoViewModel          = this.parentInfoRepository.ViewParentInfo(parentInfoAddViewModel);
                    parentInfoViewModel._message = SUCCESS;
                    parentInfoViewModel._failure = false;
                    logger.Info("Method viewParentInfo end with success.");
                }
                else
                {
                    parentInfoViewModel._failure = true;
                    parentInfoViewModel._message = TOKENINVALID;
                }
            }
            catch (Exception es)
            {
                parentInfoViewModel._message = es.Message;
                parentInfoViewModel._failure = true;
                logger.Error("Method viewParentInfo end with error :" + es.Message);
            }
            return(parentInfoViewModel);
        }
Beispiel #3
0
        public ActionResult <ParentInfoAddViewModel> UpdateParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel parentInfoUpdate = new ParentInfoAddViewModel();

            try
            {
                parentInfoUpdate = _parentInfoRegisterService.UpdateParentInfo(parentInfoAddViewModel);
            }
            catch (Exception es)
            {
                parentInfoUpdate._failure = true;
                parentInfoUpdate._message = es.Message;
            }
            return(parentInfoUpdate);
        }
Beispiel #4
0
        public ActionResult <ParentInfoAddViewModel> AddParentForStudent(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel parentInfoAdd = new ParentInfoAddViewModel();

            try
            {
                parentInfoAdd = _parentInfoRegisterService.AddParentForStudent(parentInfoAddViewModel);
            }
            catch (Exception es)
            {
                parentInfoAdd._failure = true;
                parentInfoAdd._message = es.Message;
            }
            return(parentInfoAdd);
        }
Beispiel #5
0
 /// <summary>
 /// Delete Parent Info
 /// </summary>
 /// <param name="parentInfoAddViewModel"></param>
 /// <returns></returns>
 public ParentInfoAddViewModel DeleteParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
 {
     try
     {
         var ParentInfo = this.context?.ParentInfo.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.ParentId == parentInfoAddViewModel.parentInfo.ParentId);
         this.context?.ParentInfo.Remove(ParentInfo);
         this.context?.SaveChanges();
         parentInfoAddViewModel._failure = false;
         parentInfoAddViewModel._message = "Deleted";
     }
     catch (Exception es)
     {
         parentInfoAddViewModel._failure = true;
         parentInfoAddViewModel._message = es.Message;
     }
     return(parentInfoAddViewModel);
 }
Beispiel #6
0
 /// <summary>
 /// Add Parent Info
 /// </summary>
 /// <param name="parentInfoAddViewModel"></param>
 /// <returns></returns>
 public ParentInfoAddViewModel AddParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
 {
     try
     {
         int?ParentId = Utility.GetMaxPK(this.context, new Func <ParentInfo, int>(x => x.ParentId));
         parentInfoAddViewModel.parentInfo.ParentId    = (int)ParentId;
         parentInfoAddViewModel.parentInfo.LastUpdated = DateTime.UtcNow;
         parentInfoAddViewModel.parentInfo.LoginEmail  = parentInfoAddViewModel.parentInfo.LoginEmail;
         this.context?.ParentInfo.Add(parentInfoAddViewModel.parentInfo);
         this.context?.SaveChanges();
         parentInfoAddViewModel._failure = false;
     }
     catch (Exception es)
     {
         parentInfoAddViewModel._failure = true;
         parentInfoAddViewModel._message = es.Message;
     }
     return(parentInfoAddViewModel);
 }
Beispiel #7
0
        /// <summary>
        /// View Parent Info By Id
        /// </summary>
        /// <param name="parentInfoAddViewModel"></param>
        /// <returns></returns>
        public ParentInfoAddViewModel ViewParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel parentInfoViewModel = new ParentInfoAddViewModel();

            try
            {
                var parentInfo = this.context?.ParentInfo.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.ParentId == parentInfoAddViewModel.parentInfo.ParentId);
                if (parentInfo != null)
                {
                    parentInfoViewModel.parentInfo = parentInfo;
                    var      AssociationshipData         = parentInfo.Associationship;
                    string[] studentAssociateWithParents = AssociationshipData.Split(" | ", StringSplitOptions.RemoveEmptyEntries);
                    foreach (var studentAssociateWithParent in studentAssociateWithParents)
                    {
                        char studentId      = studentAssociateWithParent.Last();
                        var  student        = this.context?.StudentMaster.FirstOrDefault(x => x.StudentId == int.Parse(studentId.ToString()));
                        var  studentForView = new GetStudentForView()
                        {
                            StudentId = student.StudentId, StudentInternalId = student.StudentInternalId, FirstGivenName = student.FirstGivenName, MiddleName = student.MiddleName, LastFamilyName = student.LastFamilyName
                        };

                        parentInfoViewModel.getStudentForView.Add(studentForView);
                    }
                    parentInfoViewModel._tenantName = parentInfoAddViewModel._tenantName;
                    parentInfoViewModel._token      = parentInfoAddViewModel._token;
                    parentInfoViewModel._failure    = false;
                }
                else
                {
                    parentInfoViewModel._failure = true;
                    parentInfoViewModel._message = NORECORDFOUND;
                    return(parentInfoViewModel);
                }
            }
            catch (Exception es)
            {
                parentInfoViewModel._failure = true;
                parentInfoViewModel._message = es.Message;
            }
            return(parentInfoViewModel);
        }
        /// <summary>
        /// Add Parent For Student
        /// </summary>
        /// <param name="parentInfoAddViewModel"></param>
        /// <returns></returns>
        public ParentInfoAddViewModel AddParentForStudent(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel ParentInfoAddModel = new ParentInfoAddViewModel();

            try
            {
                if (TokenManager.CheckToken(parentInfoAddViewModel._tenantName + parentInfoAddViewModel._userName, parentInfoAddViewModel._token))
                {
                    ParentInfoAddModel = this.parentInfoRepository.AddParentForStudent(parentInfoAddViewModel);
                }
                else
                {
                    ParentInfoAddModel._failure = true;
                    ParentInfoAddModel._message = TOKENINVALID;
                }
            }
            catch (Exception es)
            {
                ParentInfoAddModel._failure = true;
                ParentInfoAddModel._message = es.Message;
            }
            return(ParentInfoAddModel);
        }
        /// <summary>
        /// Add Update Parent Photo
        /// </summary>
        /// <param name="parentInfoAddViewModel"></param>
        /// <returns></returns>
        public ParentInfoAddViewModel AddUpdateParentPhoto(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel parentPhotoUpdate = new ParentInfoAddViewModel();

            try
            {
                if (TokenManager.CheckToken(parentInfoAddViewModel._tenantName + parentInfoAddViewModel._userName, parentInfoAddViewModel._token))
                {
                    parentPhotoUpdate = this.parentInfoRepository.AddUpdateParentPhoto(parentInfoAddViewModel);
                }
                else
                {
                    parentPhotoUpdate._failure = true;
                    parentPhotoUpdate._message = TOKENINVALID;
                }
            }
            catch (Exception es)
            {
                parentPhotoUpdate._message = es.Message;
                parentPhotoUpdate._failure = true;
            }
            return(parentPhotoUpdate);
        }
Beispiel #10
0
        /// <summary>
        /// Add Parent For Student
        /// </summary>
        /// <param name="parentInfoAddViewModel"></param>
        /// <returns></returns>
        public ParentInfoAddViewModel AddParentForStudent(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            using (var transaction = this.context.Database.BeginTransaction())
            {
                try
                {
                    if (parentInfoAddViewModel.parentInfo.ParentId > 0)
                    {
                        var parentInfo = this.context?.ParentInfo.FirstOrDefault(x => x.ParentId == parentInfoAddViewModel.parentInfo.ParentId);

                        if (parentInfo != null)
                        {
                            if (parentInfo.Associationship != null)
                            {
                                parentInfo.Associationship = parentInfo.Associationship + " | " + parentInfoAddViewModel.parentInfo.TenantId + "#" + parentInfoAddViewModel.parentInfo.SchoolId + "#" + parentInfoAddViewModel.parentInfo.StudentId;
                            }
                            else
                            {
                                parentInfo.Associationship = parentInfoAddViewModel.parentInfo.TenantId + "#" + parentInfoAddViewModel.parentInfo.SchoolId + "#" + parentInfoAddViewModel.parentInfo.StudentId;
                            }
                            parentInfoAddViewModel.parentInfo.LastUpdated = DateTime.UtcNow;
                            parentInfoAddViewModel.parentInfo.StudentId   = parentInfo.StudentId;
                        }
                    }
                    else
                    {
                        int?ParentId = Utility.GetMaxPK(this.context, new Func <ParentInfo, int>(x => x.ParentId));
                        parentInfoAddViewModel.parentInfo.ParentId        = (int)ParentId;
                        parentInfoAddViewModel.parentInfo.Associationship = parentInfoAddViewModel.parentInfo.TenantId + "#" + parentInfoAddViewModel.parentInfo.SchoolId + "#" + parentInfoAddViewModel.parentInfo.StudentId;
                        parentInfoAddViewModel.parentInfo.LastUpdated     = DateTime.UtcNow;
                        //Add LoginEmail in ParentInfo Table
                        if (!string.IsNullOrWhiteSpace(parentInfoAddViewModel.PasswordHash) && !string.IsNullOrWhiteSpace(parentInfoAddViewModel.parentInfo.LoginEmail))
                        {
                            parentInfoAddViewModel.parentInfo.LoginEmail = parentInfoAddViewModel.parentInfo.LoginEmail;
                        }
                        else
                        {
                            parentInfoAddViewModel.parentInfo.LoginEmail = null;
                        }
                        this.context?.ParentInfo.Add(parentInfoAddViewModel.parentInfo);
                    }

                    this.context?.SaveChanges();

                    if (!string.IsNullOrWhiteSpace(parentInfoAddViewModel.PasswordHash) && !string.IsNullOrWhiteSpace(parentInfoAddViewModel.parentInfo.LoginEmail))
                    {
                        UserMaster userMaster = new UserMaster();

                        var    decrypted    = Utility.Decrypt(parentInfoAddViewModel.PasswordHash);
                        string passwordHash = Utility.GetHashedPassword(decrypted);

                        var loginInfo = this.context?.UserMaster.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.EmailAddress == parentInfoAddViewModel.parentInfo.LoginEmail);

                        if (loginInfo == null)
                        {
                            var membership = this.context?.Membership.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.Profile == "Parent");

                            userMaster.SchoolId     = parentInfoAddViewModel.parentInfo.SchoolId;
                            userMaster.TenantId     = parentInfoAddViewModel.parentInfo.TenantId;
                            userMaster.UserId       = parentInfoAddViewModel.parentInfo.StudentId;
                            userMaster.LangId       = 1;
                            userMaster.MembershipId = membership.MembershipId;
                            userMaster.EmailAddress = parentInfoAddViewModel.parentInfo.LoginEmail;
                            userMaster.PasswordHash = passwordHash;
                            userMaster.Name         = parentInfoAddViewModel.parentInfo.Firstname;

                            this.context?.UserMaster.Add(userMaster);
                            this.context?.SaveChanges();
                        }
                    }
                    transaction.Commit();
                    parentInfoAddViewModel._failure = false;
                }
                catch (Exception es)
                {
                    transaction.Rollback();
                    parentInfoAddViewModel._message    = es.Message;
                    parentInfoAddViewModel._failure    = true;
                    parentInfoAddViewModel._tenantName = parentInfoAddViewModel._tenantName;
                    parentInfoAddViewModel._token      = parentInfoAddViewModel._token;
                }
            }
            return(parentInfoAddViewModel);
        }
Beispiel #11
0
        /// <summary>
        /// Update Parent Info
        /// </summary>
        /// <param name="parentInfoAddViewModel"></param>
        /// <returns></returns>
        public ParentInfoAddViewModel UpdateParentInfo(ParentInfoAddViewModel parentInfoAddViewModel)
        {
            ParentInfoAddViewModel parentInfoUpdateModel = new ParentInfoAddViewModel();

            using (var transaction = this.context.Database.BeginTransaction())
            {
                try
                {
                    var parentInfoUpdate = this.context?.ParentInfo.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.ParentId == parentInfoAddViewModel.parentInfo.ParentId);

                    parentInfoUpdate.Relationship       = parentInfoAddViewModel.parentInfo.Relationship;
                    parentInfoUpdate.Salutation         = parentInfoAddViewModel.parentInfo.Salutation;
                    parentInfoUpdate.Firstname          = parentInfoAddViewModel.parentInfo.Firstname;
                    parentInfoUpdate.Middlename         = parentInfoAddViewModel.parentInfo.Middlename;
                    parentInfoUpdate.Lastname           = parentInfoAddViewModel.parentInfo.Lastname;
                    parentInfoUpdate.HomePhone          = parentInfoAddViewModel.parentInfo.HomePhone;
                    parentInfoUpdate.WorkPhone          = parentInfoAddViewModel.parentInfo.WorkPhone;
                    parentInfoUpdate.Mobile             = parentInfoAddViewModel.parentInfo.Mobile;
                    parentInfoUpdate.PersonalEmail      = parentInfoAddViewModel.parentInfo.PersonalEmail;
                    parentInfoUpdate.WorkEmail          = parentInfoAddViewModel.parentInfo.WorkEmail;
                    parentInfoUpdate.StudentAddressSame = parentInfoAddViewModel.parentInfo.StudentAddressSame;
                    parentInfoUpdate.AddressLineOne     = parentInfoAddViewModel.parentInfo.AddressLineOne;
                    parentInfoUpdate.AddressLineTwo     = parentInfoAddViewModel.parentInfo.AddressLineTwo;
                    parentInfoUpdate.Country            = parentInfoAddViewModel.parentInfo.Country;
                    parentInfoUpdate.City            = parentInfoAddViewModel.parentInfo.City;
                    parentInfoUpdate.State           = parentInfoAddViewModel.parentInfo.State;
                    parentInfoUpdate.Zip             = parentInfoAddViewModel.parentInfo.Zip;
                    parentInfoUpdate.IsCustodian     = parentInfoAddViewModel.parentInfo.IsCustodian;
                    parentInfoUpdate.IsPortalUser    = parentInfoAddViewModel.parentInfo.IsPortalUser;
                    parentInfoUpdate.Suffix          = parentInfoAddViewModel.parentInfo.Suffix;
                    parentInfoUpdate.LoginEmail      = parentInfoAddViewModel.parentInfo.LoginEmail;
                    parentInfoUpdate.BusPickup       = parentInfoAddViewModel.parentInfo.BusPickup;
                    parentInfoUpdate.BusDropoff      = parentInfoAddViewModel.parentInfo.BusDropoff;
                    parentInfoUpdate.ContactType     = parentInfoAddViewModel.parentInfo.ContactType;
                    parentInfoUpdate.Associationship = parentInfoAddViewModel.parentInfo.Associationship;
                    parentInfoUpdate.LastUpdated     = DateTime.UtcNow;
                    parentInfoUpdate.UpdatedBy       = parentInfoAddViewModel.parentInfo.UpdatedBy;
                    parentInfoUpdate.BusNo           = parentInfoAddViewModel.parentInfo.BusNo;
                    //Add LoginEmail in ParentInfo Table
                    if (!string.IsNullOrWhiteSpace(parentInfoAddViewModel.PasswordHash) && !string.IsNullOrWhiteSpace(parentInfoAddViewModel.parentInfo.LoginEmail))
                    {
                        parentInfoUpdate.LoginEmail = parentInfoAddViewModel.parentInfo.LoginEmail;
                    }
                    parentInfoUpdate.IsPortalUser = parentInfoAddViewModel.parentInfo.IsPortalUser;
                    this.context?.SaveChanges();

                    if (!string.IsNullOrWhiteSpace(parentInfoAddViewModel.PasswordHash) && !string.IsNullOrWhiteSpace(parentInfoAddViewModel.parentInfo.LoginEmail))
                    {
                        UserMaster userMaster = new UserMaster();

                        var    decrypted    = Utility.Decrypt(parentInfoAddViewModel.PasswordHash);
                        string passwordHash = Utility.GetHashedPassword(decrypted);

                        var loginInfo = this.context?.UserMaster.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.EmailAddress == parentInfoAddViewModel.parentInfo.LoginEmail);

                        if (loginInfo == null)
                        {
                            var membership = this.context?.Membership.FirstOrDefault(x => x.TenantId == parentInfoAddViewModel.parentInfo.TenantId && x.SchoolId == parentInfoAddViewModel.parentInfo.SchoolId && x.Profile == "Parent");

                            userMaster.SchoolId     = parentInfoAddViewModel.parentInfo.SchoolId;
                            userMaster.TenantId     = parentInfoAddViewModel.parentInfo.TenantId;
                            userMaster.UserId       = parentInfoAddViewModel.parentInfo.StudentId;
                            userMaster.LangId       = 1;
                            userMaster.MembershipId = membership.MembershipId;
                            userMaster.EmailAddress = parentInfoAddViewModel.parentInfo.LoginEmail;
                            userMaster.PasswordHash = null;
                            userMaster.Name         = parentInfoAddViewModel.parentInfo.Firstname;

                            this.context?.UserMaster.Add(userMaster);
                            this.context?.SaveChanges();
                        }
                    }
                    transaction.Commit();
                    parentInfoAddViewModel._failure = false;
                    parentInfoAddViewModel._message = "Entity Updated";
                }
                catch (Exception es)
                {
                    transaction.Rollback();
                    parentInfoAddViewModel._failure = true;
                    parentInfoAddViewModel._message = es.Message;
                }
            }
            return(parentInfoAddViewModel);
        }