Пример #1
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);
        }
Пример #2
0
        /// <summary>
        /// Get All Parent Info
        /// </summary>
        /// <param name="pageResult"></param>
        /// <returns></returns>
        public GetAllParentInfoListForView GetAllParentInfoList(PageResult pageResult)
        {
            GetAllParentInfoListForView parentInfoListModel = new GetAllParentInfoListForView();
            int resultData;
            IQueryable <ParentInfo> transactionIQ = null;
            var ParentInfoList = this.context?.ParentInfo.ToList().Where(x => x.TenantId == pageResult.TenantId && x.SchoolId == pageResult.SchoolId);

            try
            {
                if (pageResult.FilterParams == null || pageResult.FilterParams.Count == 0)
                {
                    transactionIQ = ParentInfoList.AsQueryable();
                }
                else
                {
                    if (pageResult.FilterParams != null && pageResult.FilterParams.ElementAt(0).ColumnName == null && pageResult.FilterParams.Count == 1)
                    {
                        string Columnvalue = pageResult.FilterParams.ElementAt(0).FilterValue;
                        transactionIQ = ParentInfoList.Where(x => x.Firstname != null && x.Firstname.ToLower().Contains(Columnvalue.ToLower()) ||
                                                             x.Lastname != null && x.Lastname.ToLower().Contains(Columnvalue.ToLower()) ||
                                                             x.PersonalEmail != null && x.PersonalEmail.ToLower().Contains(Columnvalue.ToLower()) ||
                                                             x.Mobile != null && x.Mobile.Contains(Columnvalue)).AsQueryable();
                    }
                    else
                    {
                        transactionIQ = Utility.FilteredData(pageResult.FilterParams, ParentInfoList).AsQueryable();
                    }
                    transactionIQ = transactionIQ.Distinct();
                }
                int totalCount = transactionIQ.Count();
                transactionIQ = transactionIQ.Skip((pageResult.PageNumber - 1) * pageResult.PageSize).Take(pageResult.PageSize);
                var parentInfo = transactionIQ.AsNoTracking().Select(y => new GetParentInfoForView
                {
                    SchoolId        = y.SchoolId,
                    TenantId        = y.TenantId,
                    Firstname       = y.Firstname,
                    Lastname        = y.Lastname,
                    PersonalEmail   = y.PersonalEmail,
                    Mobile          = y.Mobile,
                    UserProfile     = y.UserProfile,
                    Associationship = y.Associationship,
                    AddressLineOne  = ToFullAddress(y.AddressLineOne, y.AddressLineTwo,
                                                    int.TryParse(y.City, out resultData) == true ? this.context.City.Where(x => x.Id == Convert.ToInt32(y.City)).FirstOrDefault().Name : y.City,
                                                    int.TryParse(y.State, out resultData) == true ? this.context.State.Where(x => x.Id == Convert.ToInt32(y.State)).FirstOrDefault().Name : y.State,
                                                    int.TryParse(y.Country, out resultData) == true ? this.context.Country.Where(x => x.Id == Convert.ToInt32(y.Country)).FirstOrDefault().Name : string.Empty, y.Zip)
                }).ToList();
                parentInfoListModel.parentInfoForView = parentInfo;
                foreach (var ParentInfo in parentInfoListModel.parentInfoForView)
                {
                    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, SchoolId = student.SchoolId, TenantId = student.TenantId, FirstGivenName = student.FirstGivenName, MiddleName = student.MiddleName, LastFamilyName = student.LastFamilyName
                        };

                        ParentInfo.getStudentForView.Add(studentForView);
                    }
                }
                parentInfoListModel.TenantId    = pageResult.TenantId;
                parentInfoListModel.TotalCount  = totalCount;
                parentInfoListModel.PageNumber  = pageResult.PageNumber;
                parentInfoListModel._pageSize   = pageResult.PageSize;
                parentInfoListModel._tenantName = pageResult._tenantName;
                parentInfoListModel._token      = pageResult._token;
                parentInfoListModel._failure    = false;
            }
            catch (Exception es)
            {
                parentInfoListModel._message    = es.Message;
                parentInfoListModel._failure    = true;
                parentInfoListModel._tenantName = pageResult._tenantName;
                parentInfoListModel._token      = pageResult._token;
            }
            return(parentInfoListModel);
        }