public ActionResult EditRoute(int id, int?schoolRouteId) { var schoolRoute = new SchoolRouteRequest { SchoolId = id, SchoolRoute = new SchoolRouteView { MealType = Lookups.GetItem <MealTypes>((long)MealTypes.None), RecordStatus = SysMngConfig.Lookups.GetItem <SysMngConfig.RecordStatuses>((long)SysMngConfig.RecordStatuses.Active) } }; if (schoolRouteId.HasValue && schoolRouteId.Value > 0) { schoolRoute.SchoolRoute = SchoolService.GetSchoolRoute( new SchoolRouteRequest { SchoolId = id, SchoolRoute = new SchoolRouteView { Id = schoolRouteId.Value } }).SchoolRoute; } ViewBag.MealTypes = Lookups.GetItems <MealTypes>().Select(d => new SelectListItem { Selected = d.Id == schoolRoute.SchoolRoute.MealType.Id, Text = d.Text, Value = d.Id.ToString() }).ToList(); return(View(schoolRoute)); }
public ActionResult EditAnnualAgreement(int id, int?annualAgreementId) { var annualAgreement = new SchoolAnnualAgreementRequest { SchoolId = id, SchoolAnnualAgreement = new SchoolAnnualAgreementView { ItemType = Lookups.GetItem <AnnualItemTypes>((long)AnnualItemTypes.None), RecordStatus = SysMngConfig.Lookups.GetItem <SysMngConfig.RecordStatuses>((long)SysMngConfig.RecordStatuses.Active) } }; if (annualAgreementId.HasValue && annualAgreementId.Value > 0) { annualAgreement.SchoolAnnualAgreement = SchoolService.GetSchoolAnnualAgreement( new SchoolAnnualAgreementRequest { SchoolId = id, SchoolAnnualAgreement = new SchoolAnnualAgreementView { Id = annualAgreementId.Value } }).SchoolAnnualAgreement; } //ViewBag.MealTypes =Lookups.GetItems<MealTypes>().Select(d=>new SelectListItem{Selected = d.Id==annualAgreement.SchoolAnnualAgreement.MealType.Id,Text=d.Text,Value = d.Id.ToString()}).ToList(); ViewBag.AnnualItemTypes = Lookups.GetItems <AnnualItemTypes>().Select(d => new SelectListItem { Selected = (d.Id == annualAgreement.SchoolAnnualAgreement.ItemType.Id), Text = d.Text, Value = d.Id.ToString() }).ToList(); return(View(annualAgreement)); }
public ActionResult Edit(int?id) { var menu = id.HasValue ? MenuService.Get(new MenuGetRequest { Id = id.Value }).Menu : new MenuView { MenuType = Lookups.GetItem <MenuTypes>((long)MenuTypes.None), SchoolType = Lookups.GetItem <MenuSchoolTypes>((long)MenuSchoolTypes.None) }; //ViewBag.MenuTypes = Lookups.GetItems<MenuTypes>().Select(d=>new SelectListItem{Value = d.Id.ToString(),Text = d.Text,Selected = d.Id==menu.MenuType.Id}).ToList(); ViewBag.MenuTypes = Lookups.MenuTypeList.Select(d => new SelectListItem { Value = d.Id.ToString(), Text = d.Text, Selected = d.Id == menu.MenuType.Id }).ToList(); ViewBag.MenuSchoolTypes = Lookups.GetItems <MenuSchoolTypes>().Select(d => new SelectListItem { Value = d.Id.ToString(), Text = d.Text, Selected = d.Id == menu.SchoolType.Id }).ToList(); return(View(menu)); }
public void BootStrap() { #region Mappings Mapper.CreateMap <Menu, GeneralItemView>() .ConvertUsing(x => new GeneralItemView(x.Id, x.Name, x.Name)); /* * Mapper.CreateMap<FoodType, KeyValuePair<long, string>>() * .ConvertUsing(s => new KeyValuePair<long, string>(s.Id, s.FieldText)); * Mapper.CreateMap<KeyValuePair<long, string>, FoodType>() * .ConvertUsing(s => new FoodType {Id = s.Key}); * Mapper.CreateMap<IngredientType, KeyValuePair<long, string>>() * .ConvertUsing(s => new KeyValuePair<long, string>(s.Id, s.FieldText)); * Mapper.CreateMap<KeyValuePair<long, string>, IngredientType>() * .ConvertUsing(s => new IngredientType {Id = s.Key}); * * Mapper.CreateMap<MenuType, KeyValuePair<long, string>>() * .ConvertUsing(s => new KeyValuePair<long, string>(s.Id, s.FieldText)); * Mapper.CreateMap<KeyValuePair<long, string>, MenuType>() * .ConvertUsing(s => new MenuType { Id = s.Key }); * * Mapper.CreateMap<MealType, KeyValuePair<long, string>>() * .ConvertUsing(s => new KeyValuePair<long, string>(s.Id, s.FieldText)); * Mapper.CreateMap<KeyValuePair<long, string>, MealType>() * .ConvertUsing(s => new MealType { Id = s.Key }); * * Mapper.CreateMap<OrderStatus, KeyValuePair<long, string>>() * .ConvertUsing(s => new KeyValuePair<long, string>(s.Id, s.FieldText)); * Mapper.CreateMap<KeyValuePair<long, string>, OrderStatus>() * .ConvertUsing(s => new OrderStatus{ Id = s.Key }); * * Mapper.CreateMap<MealServiceType, KeyValuePair<long, string>>() * .ConvertUsing(s => new KeyValuePair<long, string>(s.Id, s.FieldText)); * Mapper.CreateMap<KeyValuePair<long, string>, MealServiceType>() * .ConvertUsing(s => new MealServiceType { Id = s.Key }); * */ #endregion Mappings #region Food mappings FoodListItemView Mapper.CreateMap <Food, FoodListItemView>() .ForMember(d => d.FoodType, opt => opt.MapFrom(s => Lookups.GetItem <FoodTypes>(s.FoodType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <FoodListItemView, Food>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Food mappings FoodListItemView #region Food mappings FoodView Mapper.CreateMap <Food, FoodView>() .ForMember(d => d.FoodType, opt => opt.MapFrom(s => Lookups.GetItem <FoodTypes>(s.FoodType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <FoodView, Food>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Food mappings FoodView #region FoodPercentage mappings FoodPercentageView Mapper.CreateMap <FoodPercentage, FoodPercentageView>() .ForMember(d => d.MealType, opt => opt.MapFrom(s => Lookups.GetItem <MealTypes>(s.MealType))); Mapper.CreateMap <FoodPercentageView, FoodPercentage>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(c => c.MealType, opt => opt.MapFrom(s => s.MealType.Id)); #endregion FoodPercentage mappings FoodPercentageView #region FoodIngredient mappings FoodIngredientView Mapper.CreateMap <FoodIngredient, FoodIngredientView>() .ForMember(d => d.IngredientType, opt => opt.MapFrom(s => Lookups.GetItem <IngredientTypes>(s.IngredientType))); Mapper.CreateMap <FoodIngredientView, FoodIngredient>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(c => c.IngredientType, opt => opt.MapFrom(s => s.IngredientType.Id)); #endregion FoodIngredient mappings FoodIngredientView #region Menu mappings MenuListItemView Mapper.CreateMap <Menu, MenuListItemView>() //.ForMember(d => d.MenuType, opt => opt.MapFrom(s => Lookups.GetItem<MenuTypes>(s.MenuType))) .ForMember(d => d.MenuType, opt => opt.MapFrom(s => Lookups.MenuTypeList.FirstOrDefault(k => k.Id == s.MenuType))) .ForMember(d => d.SchoolType, opt => opt.MapFrom(s => Lookups.GetItem <MenuSchoolTypes>(s.SchoolType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <MenuListItemView, Menu>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Menu mappings MenuListItemView #region Menu mappings MenuView Mapper.CreateMap <Menu, MenuView>() //.ForMember(d => d.MenuType, opt => opt.MapFrom(s => Lookups.GetItem<MenuTypes>(s.MenuType))) .ForMember(d => d.MenuType, opt => opt.MapFrom(s => Lookups.MenuTypeList.FirstOrDefault(k => k.Id == s.MenuType))) .ForMember(d => d.SchoolType, opt => opt.MapFrom(s => Lookups.GetItem <MenuSchoolTypes>(s.SchoolType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus))) .ForMember(d => d.Schools, opt => opt.MapFrom(s => s.Schools.Select(k => new GeneralItemView(k.Id, k.Code, k.Name)).ToList())); Mapper.CreateMap <MenuView, Menu>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(c => c.MenuType, opt => opt.MapFrom(s => s.MenuType.Id)) .ForMember(c => c.RecordStatus, opt => opt.MapFrom(s => s.RecordStatus.Id)); #endregion Menu mappings MenuView #region MealMenu mappings MealMenuListItemView Mapper.CreateMap <MealMenu, MealMenuListItemView>() .ForMember(d => d.MealType, opt => opt.MapFrom(s => Lookups.GetItem <MealTypes>(s.MealType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <MealMenuListItemView, MealMenu>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(c => c.MealType, opt => opt.MapFrom(s => s.MealType.Id)) .ForMember(c => c.RecordStatus, opt => opt.MapFrom(s => s.RecordStatus.Id)); #endregion MealMenu mappings MealMenuListItemView #region MealMenu mappings MealMenuView Mapper.CreateMap <MealMenu, MealMenuView>() .ForMember(d => d.MealType, opt => opt.MapFrom(s => Lookups.GetItem <MealTypes>(s.MealType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <MealMenuView, MealMenu>() .ForMember(c => c.Id, options => options.Ignore()); #endregion MealMenu mappings MealMenuView #region MealMenuOrder mappings MealMenuOrderListItemView /* * Mapper.CreateMap<MealMenuOrder, MealMenuOrderListItemView>(); * Mapper.CreateMap<MealMenuOrderListItemView, MealMenuOrder>() * .ForMember(c => c.Id, options => options.Ignore()); */ #endregion MealMenuOrder mappings MealMenuView #region MealMenuOrder mappings MealMenuOrderView Mapper.CreateMap <MealMenuOrder, MealMenuOrderView>() .ForMember(x => x.OrderStatus, o => o.Ignore()) .ForMember(x => x.RecordStatus, o => o.Ignore()) .ForMember(x => x.MealType, o => o.Ignore()) .AfterMap((o, ov) => { ov.OrderStatus = new GeneralItemView { Id = o.OrderStatus, Value = o.OrderStatus.ToString("D") }; ov.RecordStatus = new GeneralItemView { Id = o.RecordStatus, Value = o.RecordStatus.ToString("D") }; ov.MealType = new GeneralItemView { Id = o.MealType, Value = o.MealType.ToString("D") }; }); Mapper.CreateMap <MealMenuOrderView, MealMenuOrder>() .ForMember(c => c.Id, options => options.Ignore()); #endregion MealMenuOrder mappings MealMenuView #region MealMenuOrderItem mappings MealMenuOrderItemListItemView /* * Mapper.CreateMap<MealMenuOrderItem, MealMenuOrderItemListItemView>(); * Mapper.CreateMap<MealMenuOrderItemListItemView, MealMenuOrderItem>() * .ForMember(c => c.Id, options => options.Ignore()); */ #endregion MealMenuOrderItem mappings MealMenuOrderItemListItemView #region MealMenuOrderItem mappings MealMenuOrderItemHistoricalView Mapper.CreateMap <MealMenuOrderItem, MealMenuOrderItemHistoricalView>() .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <RecordStatuses>(s.RecordStatus).Text)); #endregion MealMenuOrderItem mappings MealMenuOrderItemHistoricalView #region MealMenuOrderItem mappings MealMenuOrderItemView Mapper.CreateMap <MealMenuOrderItem, MealMenuOrderItemView>(); Mapper.CreateMap <MealMenuOrderItemView, MealMenuOrderItem>() .ForMember(c => c.Id, options => options.Ignore()); #endregion MealMenuOrderItem mappings MealMenuView Mapper.CreateMap <SchoolInvoiceDocument, SchoolInvoiceDocumentView>() .ForMember(x => x.RecordStatus, o => o.MapFrom(y => Lookups.GetItem <RecordStatuses>(y.RecordStatus))); Mapper.CreateMap <SchoolInvoiceDocumentView, SchoolInvoiceDocument>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(x => x.RecordStatus, o => o.MapFrom(y => y == null || y.RecordStatus == null ? 0L : y.RecordStatus.Id)); }
public ActionResult Manage(MealOrderManageView model) { if (model.MealTypeId == 0) { model.MealTypeId = MealTypes.Breakfast.ToInt64(); } if (model.SchoolId == 0) { model.SchoolId = CurrentUser.CurrentSchoolId(); } else { model.FromOutSide = true; } var schoolResponse = SchoolService.Get(new SchoolGetRequest { Id = model.SchoolId }); long schoolType = 0; if (schoolResponse.Result == Result.Success) { schoolType = schoolResponse.School.SchoolType; model.SchoolType = schoolType; model.SchoolName = schoolResponse.School.Name; } var isAllow = (model.FromOutSide && CurrentUser.IsInRole("comp_mealordering") && IsCompanyUser()) || IsSchoolUser(); if (!isAllow) { return(RedirectToHomeIndex()); } var order = MealMenuOrderService.GetSchoolOrder(new SchoolOrderGetRequest { Filter = new MealMenuOrderFilterView { RecordStatusId = (int)RecordStatuses.Active, OrderDate = model.StartDate, SchoolId = model.SchoolId, MealTypeId = model.MealTypeId, SchoolType = schoolType } }); order.Order.SchoolName = model.SchoolName; order.Order.SchoolType = model.SchoolType; order.Order.SchoolId = model.SchoolId; order.Order.FromOutSide = model.FromOutSide; order.Order.SupplementaryList = new List <MealMenuSupplementaryView>(); order.Order.FoodPercentage = new FoodPercentageView { MealType = Lookups.GetItem <MealTypes>(model.MealTypeId), Fruit = 100, Vegetable = 100, SchoolId = model.SchoolId }; var getSupplementaryListResponse = MealMenuOrderService.GetSupplementaryList(new GetSupplementaryListRequest { Filter = new GetSupplementaryListFilterView { MealTypeId = model.MealTypeId, SchoolId = model.SchoolId } }); if (getSupplementaryListResponse.Result == Result.Success && getSupplementaryListResponse.List != null) { order.Order.SupplementaryList = getSupplementaryListResponse.List; } var foodPercentageResponse = FoodService.GetFoodPercentages(new FoodPercentagesRequest { SchoolId = model.SchoolId }); if (foodPercentageResponse.Result == Result.Success && foodPercentageResponse.PercentageList.Any(d => d.MealType.Id == model.MealTypeId)) { order.Order.FoodPercentage = foodPercentageResponse.PercentageList.First(d => d.MealType.Id == model.MealTypeId); } return(View(order.Order)); }
public void BootStrap() { Password(); #region Application mappings ApplicationView Mapper.CreateMap <Application, ApplicationView>(); Mapper.CreateMap <ApplicationView, Application>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Application mappings ApplicationView #region User mappings UserView Mapper.CreateMap <User, UserView>(); Mapper.CreateMap <UserView, User>() .ForMember(c => c.Id, options => options.Ignore()); #endregion User mappings UserView #region User mappings UserView Mapper.CreateMap <User, UserItemView>(); Mapper.CreateMap <UserItemView, User>() .ForMember(c => c.Id, options => options.Ignore()); #endregion User mappings UserView #region UserLoginInfo mappings UserLoginInfoView Mapper.CreateMap <UserLoginInfo, UserLoginInfoView>(); Mapper.CreateMap <UserLoginInfoView, UserLoginInfo>() .ForMember(c => c.Id, options => options.Ignore()); #endregion UserLoginInfo mappings UserLoginInfoView #region School mappings SchoolView Mapper.CreateMap <School, SchoolView>() .ForMember(c => c.SchoolAnnualAgreements, opt => opt.MapFrom(s => s.SchoolAnnualAgreements.OrderByDescending(c => c.Year).ThenBy(c => c.ItemType))); Mapper.CreateMap <SchoolView, School>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(c => c.SchoolRoutes, opt => opt.Ignore()) .ForMember(c => c.SchoolAnnualAgreements, opt => opt.Ignore()) .ForMember(c => c.Users, opt => opt.Ignore()); Mapper.CreateMap <School, Tar.ViewModel.GeneralItemView>() .ConvertUsing(s => new Tar.ViewModel.GeneralItemView(s.Id, s.SchoolType.ToString(), string.Format("{0} ,#{1}", s.Name, SysMngConfig.Lookups.GetItem <SysMngConfig.SchoolTypes>(s.SchoolType).Text))); Mapper.CreateMap <School, GeneralItemView>() .ConvertUsing(s => new GeneralItemView(s.Id.ToString(CultureInfo.InvariantCulture), s.Name)); Mapper.CreateMap <GeneralItemView, School>() .ConvertUsing(s => new School { Id = Convert.ToInt32(s.Value), Name = s.Text }); Mapper.CreateMap <School, SchoolView>(); Mapper.CreateMap <School, SchoolListItemView>() .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => Lookups.GetItem <SysMngConfig.RecordStatuses>(s.RecordStatus).Text)) .ForMember(d => d.SchoolType, opt => opt.MapFrom(s => Lookups.GetItem <SysMngConfig.SchoolTypes>(s.SchoolType).Text)) .ForMember(d => d.FoodServiceType, opt => opt.MapFrom(s => Lookups.GetItem <SysMngConfig.FoodServiceType>(s.FoodServiceType).Text)) .ForMember(d => d.OVSType, opt => opt.MapFrom(s => Lookups.GetItem <SysMngConfig.OVSType>(s.OVSType).Text)); #endregion School mappings SchoolView #region Communication mappings CommunicationView Mapper.CreateMap <Communication, CommunicationView>(); Mapper.CreateMap <CommunicationView, Communication>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Communication mappings CommunicationView #region Address mappings AddressView Mapper.CreateMap <Address, AddressView>(); Mapper.CreateMap <AddressView, Address>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Address mappings AddressView #region Role mappings RoleView Mapper.CreateMap <Role, RoleView>(); Mapper.CreateMap <RoleView, Role>() .ForMember(c => c.Id, options => options.Ignore()); #endregion Role mappings RoleView #region SchoolAnnualAgreement mappings SchoolAnnualAgreementView Mapper.CreateMap <SchoolAnnualAgreement, SchoolAnnualAgreementView>() //.ForMember(d => d.MealType, opt => opt.MapFrom(s => Lookups.GetItem<MealTypes>(s.MealType))) .ForMember(d => d.ItemType, opt => opt.MapFrom(s => Lookups.GetItem <AnnualItemTypes>(s.ItemType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => SysMngConfig.Lookups.GetItem <SysMngConfig.RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <SchoolAnnualAgreementView, SchoolAnnualAgreement>() .ForMember(c => c.Id, options => options.Ignore()) //.ForMember(c => c.MealType, opt => opt.MapFrom(s => s.MealType.Id)) .ForMember(c => c.ItemType, opt => opt.MapFrom(s => s.ItemType.Id)) .ForMember(c => c.RecordStatus, opt => opt.MapFrom(s => s.RecordStatus.Id)); #endregion SchoolAnnualAgreement mappings SchoolAnnualAgreementView #region SchoolRoute mappings SchoolRouteView Mapper.CreateMap <SchoolRoute, SchoolRouteView>() .ForMember(d => d.MealType, opt => opt.MapFrom(s => Lookups.GetItem <MealTypes>(s.MealType))) .ForMember(d => d.RecordStatus, opt => opt.MapFrom(s => SysMngConfig.Lookups.GetItem <SysMngConfig.RecordStatuses>(s.RecordStatus))); Mapper.CreateMap <SchoolRouteView, SchoolRoute>() .ForMember(c => c.Id, options => options.Ignore()) .ForMember(c => c.MealType, opt => opt.MapFrom(s => s.MealType.Id)) .ForMember(c => c.RecordStatus, opt => opt.MapFrom(s => s.RecordStatus.Id)); #endregion SchoolRoute mappings SchoolRouteView UserViewModelMap(); }
public ActionResult Edit(MenuView request) { var menuTypeId = (long)MenuTypes.None; if (!string.IsNullOrWhiteSpace(Request["MenuTypeId"])) { menuTypeId = long.Parse(Request["MenuTypeId"]); } request.MenuType = Lookups.GetItem <MenuTypes>(menuTypeId); var schoolTypeId = (long)MenuSchoolTypes.None; if (!string.IsNullOrWhiteSpace(Request["SchoolTypeId"])) { schoolTypeId = long.Parse(Request["SchoolTypeId"]); } request.SchoolType = Lookups.GetItem <MenuSchoolTypes>(schoolTypeId); //TryUpdateModel(request); request.Foods = new List <FoodListItemView>(); Request.Form.AllKeys.Where(d => d.StartsWith("Foods")).ForEach(d => request.Schools.Add(new GeneralItemView { Id = long.Parse(Request[d]) })); request.Schools = new List <GeneralItemView>(); Request.Form.AllKeys.Where(d => d.StartsWith("Schools")).ForEach(d => request.Schools.Add(new GeneralItemView { Id = long.Parse(Request[d]) })); if (menuTypeId > 0 && (!string.IsNullOrWhiteSpace(request.Name))) { request.ModifiedBy = CurrentUser.Name; request.ModifiedByFullName = CurrentUser.FullName; if (!ModelState.IsValid) { return(View(request)); } if (request.Id == 0) { var response = MenuService.Create( new MenuCreateRequest { Menu = request }); if (response.Result == Result.Success) { InfoMessage = response.Message; return(RedirectToAction("Index")); } ErrorMessage = response.Message; } else { var response = MenuService.Update(new MenuUpdateRequest { Menu = request }); if (response.Result == Result.Success) { InfoMessage = response.Message; return(RedirectToAction("Index")); } ErrorMessage = response.Message; } } else { ErrorMessage = "Fill Name, Select Menu Type"; } //ViewBag.MenuTypes = Lookups.GetItems<MenuTypes>().Select(d => new SelectListItem {Value = d.Id.ToString(), Text = d.Text, Selected = d.Id == menuTypeId}).ToList(); ViewBag.MenuTypes = Lookups.MenuTypeList.Select(d => new SelectListItem { Value = d.Id.ToString(), Text = d.Text, Selected = d.Id == menuTypeId }).ToList(); ViewBag.MenuSchoolTypes = Lookups.GetItems <MenuSchoolTypes>().Select(d => new SelectListItem { Value = d.Id.ToString(), Text = d.Text, Selected = d.Id == schoolTypeId }).ToList(); return(View(request)); }
public List <MealMenuListItemView> GetByFilter1(MealMenuFilterView filter, int pageSize, int pageIndex, string orderByField, bool orderByAsc, out int totalCount) { var query1 = Repository.Query <MealMenu>(); //var menuss = { filter.MenuId.Value } var menu = filter.MenuId; if (filter.MenuId == null) { menu = 0; } var query = from schools in Repository.Query <School>() join mmo in Repository.Query <MealMenuOrder>() on schools.Id equals mmo.School.Id join mmoi in Repository.Query <MealMenuOrderItem>() on mmo.Id equals mmoi.MealMenuOrder.Id join mm in Repository.Query <MealMenu>() on mmoi.MealMenu.Id equals mm.Id join m in Repository.Query <Menu>() on mm.Menu.Id equals m.Id where (mm.ValidDate >= filter.StartDate && mm.ValidDate <= filter.EndDate) && mm.MealType == filter.MealTypeId && mm.RecordStatus == (long)RecordStatuses.Active && schools.Menu == menu && mmoi.RecordStatus == (long)RecordStatuses.Active select new { schoolName = schools.Name, totalCount = mmoi.TotalCount, menuName = m.Name, menuID = m.Id, MealMenuId = mm.Id, validDate = mm.ValidDate, menuTypeId = m.MenuType, breakfast = schools.BreakfastOVSType, FServiceType = schools.FoodServiceType, SType = schools.SchoolType, mealType = mm.MealType, LunchOVS = schools.LunchOVSType, ModifiedAt = mm.ModifiedAt, Status = mm.RecordStatus, Menusid = mm.Menu.Id, AdditionalFruit = m.AdditionalFruit, AdditionalVeg = m.AdditionalVeg, CreatedAt = m.CreatedAt, CreatedBy = m.CreatedBy, CreatedByFullName = m.CreatedByFullName, MenuType = m.MenuType, ModifiedAt1 = m.ModifiedAt, ModifiedBy = m.ModifiedBy, ModifiedByFullName = m.ModifiedByFullName, ModifiedReason = m.ModifiedReason, Name = m.Name, RecordStatus = m.RecordStatus, SchoolType = m.SchoolType }; var queryResuls = query.AsEnumerable().Distinct().ToList(); var query2 = Repository.Query <Menu>(); //if (filter.MealTypeId > 0) // query = query.Where(d => d.MealType == filter.MealTypeId); //if (filter.MenuId > 0) // query = query.Where(d => d.Menu.Id == filter.MenuId); //if (filter.RecordStatusId > 0) // query = query.Where(d => d.RecordStatus == filter.RecordStatusId); //if (filter.StartDate.HasValue) // query = query.Where(d => d.ValidDate >= filter.StartDate); //if (filter.EndDate.HasValue) // query = query.Where(d => d.ValidDate <= filter.EndDate); //if (filter.MenuId.HasValue) // query = query.Where(d => new[]{filter.MenuId.Value}.Contains(d.menuID)); totalCount = query.Count(); switch (orderByField) { case "Id": query = orderByAsc ? query.OrderBy(c => c.MealMenuId) : query.OrderByDescending(c => c.MealMenuId); break; case "MealType": query = orderByAsc ? query.OrderBy(c => c.mealType) : query.OrderByDescending(c => c.mealType); break; case "ValidDate": query = orderByAsc ? query.OrderBy(c => c.validDate) : query.OrderByDescending(c => c.validDate); break; case "ModifiedAt": query = orderByAsc ? query.OrderBy(c => c.ModifiedAt) : query.OrderByDescending(c => c.ModifiedAt); break; default: query = orderByAsc ? query.OrderBy(c => new { c.MealMenuId }) : query.OrderByDescending(c => new { c.MealMenuId }); break; } if (pageSize > 0) { query = query.Skip((pageIndex - 1) * pageSize).Take(pageSize); } List <Menu> menus = new List <Menu>(); var mealMenuList = query.AsEnumerable().Select(m => new MealMenuListItemView { Id = m.MealMenuId, MealType = Lookups.GetItem <MealTypes>(m.mealType), ValidDate = m.validDate, RecordStatus = Lookups.GetItem <RecordStatuses>(m.Status), Menu = new MenuView { Id = m.menuID, AdditionalFruit = m.AdditionalFruit, AdditionalVeg = m.AdditionalVeg, CreatedAt = m.CreatedAt, CreatedBy = m.CreatedBy, CreatedByFullName = m.CreatedByFullName, MenuType = Lookups.MenuTypeList.FirstOrDefault(k => k.Id == m.MenuType), // Foods = Lookups.GetItem <FoodTypes>(m.Foods), //MenuType = new GeneralItemView { Text = , // Value = Lookups.GetItem<MenuTypes>(m.MenuType).Value , Id = // Lookups.GetItem<MenuTypes>(m.MenuType).Id //}, ModifiedAt = m.ModifiedAt1, ModifiedBy = m.ModifiedBy, ModifiedByFullName = m.ModifiedByFullName, ModifiedReason = m.ModifiedReason, Name = m.Name, RecordStatus = Lookups.GetItem <RecordStatuses>(m.Status), SchoolType = Lookups.GetItem <MenuSchoolTypes>(m.SchoolType) } }).ToList(); return(mealMenuList); }