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); }
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); }
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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }
/// <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); }