public static WeekOrderDto GetMapDto(IUnitOfWorkAsync unitOfWork, WeekYearDto wyDto, bool needfact = true)
        {
            ApplicationDbContext context = unitOfWork.GetContext();

            MenuForWeek menuForWeek = unitOfWork.RepositoryAsync <MenuForWeek>().GetWeekMenuByWeekYear(wyDto);

            if (menuForWeek == null)
            {
                return(null);
            }

            List <WeekOrderMenu> weekOrderMenus = unitOfWork.RepositoryAsync <WeekOrderMenu>()
                                                  .OrdersMenuByWeekYear(wyDto).Where(word => word.User.IsExisting).OrderBy(wo => wo.User.LastName).ToList();


            return(new WeekOrderDto
            {
                WeekYearDto = wyDto,
                SuCanChangeOrder = menuForWeek.SUCanChangeOrder,
                UserWeekOrders =
                    weekOrderMenus.Select(woDto => UserWeekOrderDto.MapDto(context, woDto)).ToList(),
                DayNames = context.GetDayNames(wyDto, true).Result,
                WeekDishPrices = context.GetWeekDishPrices(wyDto).Result,
                SummaryDishQuantities = context.GetFactSumWeekUserCounts(wyDto).Result,
                AllDayNames = context.GetDayNames(wyDto).Result
            });
        }
Exemple #2
0
        public static EmployeeWeekOrderDto MapDto(ApplicationDbContext context, WeekPaiment weekPaiment,
                                                  WeekYearDto wyDto)
        {
            double defaultDebt;

            double.TryParse(WebConfigurationManager.AppSettings["defaultCreditValue"], out defaultDebt);

            return(new EmployeeWeekOrderDto
            {
                WeekOrderId = weekPaiment.WeekOrderMenu.Id,
                DayOrders =
                    weekPaiment.WeekOrderMenu.DayOrderMenus.Where(dom => dom.MenuForDay.WorkingDay.IsWorking)
                    .Select(OrderDayMenuDto.MapDto)
                    .ToList(),
                WeekOrderDishes = context.FactDishQuantByWeekOrderId(weekPaiment.WeekOrderMenu.Id).Result,
                WeekIsPaid = weekPaiment.WeekIsPaid,
                Balance = weekPaiment.WeekOrderMenu.User.Balance,
                WeekYear = wyDto,
                PrevWeekBalance = weekPaiment.PreviousWeekBalance,
                WeekPaiment = weekPaiment.Paiment,
                AllowDebt = defaultDebt,
                CheckDebt = weekPaiment.WeekOrderMenu.User.CheckDebt,
                DayNames = context.GetDayNames(wyDto).Result
            });
        }
        public async Task <IHttpActionResult> IsNextWeek([FromBody] WeekYearDto wyDto)
        {
            WeekYearDto curWeekYearDto  = YearWeekHelp.GetCurrentWeekYearDto();
            WeekYearDto nextWeekYearDto = YearWeekHelp.GetNextWeekYear(curWeekYearDto);

            return(Ok(wyDto.Week == nextWeekYearDto.Week && wyDto.Year == nextWeekYearDto.Year));
        }
        public static bool WeekIsCurrentOrNext(WeekYearDto wyDto)
        {
            WeekYearDto nextWeekYearDto = GetNextWeekYear(GetCurrentWeekYearDto());

            return((wyDto.Week == CurrentWeek() && wyDto.Year == DateTime.Now.Year) ||
                   (wyDto.Week == nextWeekYearDto.Week && wyDto.Year == nextWeekYearDto.Year));
        }
Exemple #5
0
        public static SetAsPrevDto GetSetAsPrevDtoById(this IRepositoryAsync <WeekOrderMenu> repository, int weekordid)
        {
            WeekOrderMenu curOrderMenu = repository.FindOrderMenuById(weekordid);
            WeekYearDto   curwyDto     = new WeekYearDto
            {
                Week = curOrderMenu.MenuForWeek.WorkingWeek.WeekNumber,
                Year = curOrderMenu.MenuForWeek.WorkingWeek.Year.YearNumber
            };
            WeekYearDto preWeekYearDto = YearWeekHelp.GetPrevWeekYear(curwyDto);

            WeekOrderMenu prevWeekOrder = repository.Query()
                                          .Include(om => om.User)
                                          .Include(om => om.MenuForWeek.WorkingWeek.Year)
                                          .Select().FirstOrDefault(om =>
                                                                   string.Equals(om.User.Id, curOrderMenu.User.Id) &&
                                                                   om.MenuForWeek.WorkingWeek.WeekNumber == preWeekYearDto.Week &&
                                                                   om.MenuForWeek.WorkingWeek.Year.YearNumber == preWeekYearDto.Year);

            if (prevWeekOrder != null)
            {
                return new SetAsPrevDto
                       {
                           PrevWeekOrdId = prevWeekOrder.Id,
                           DayNames      = repository.Context.GetDayNames(preWeekYearDto, true).Result,
                           Prevquants    = repository.Context.FactDishQuantByWeekOrderId(prevWeekOrder.Id).Result
                       }
            }
            ;
            return(null);
        }
Exemple #6
0
        public async Task <WeekYearDto> Create()
        {
            WeekYearDto nextDto = YearWeekHelp.GetNextWeekYear(YearWeekHelp.GetCurrentWeekYearDto());

            _db.CreateNewWeekMenu(nextDto);

            return(await Task.FromResult(nextDto));
        }
Exemple #7
0
        /// <summary>
        /// Создаёт новое меню на неделю и заполняет его пустыми блюдами
        /// </summary>
        /// <param name="context"></param>
        /// <param name="wyDto">Объект, содержащий номера недели и года для запроса</param>
        /// <returns></returns>
        public static void CreateNewWeekMenu(this ApplicationDbContext context, WeekYearDto wyDto)
        {
            var weekParameter = new SqlParameter("@Week", wyDto.Week);
            var yearParameter = new SqlParameter("@Year", wyDto.Year);

            context.Database.ExecuteSqlCommand("exec CreateNewWeekMenu @Week,@Year",
                                               weekParameter, yearParameter);
        }
        public async Task <IHttpActionResult> CanCreateOrderOnNextWeek()
        {
            WeekYearDto curWeekYearDto  = YearWeekHelp.GetCurrentWeekYearDto();
            WeekYearDto nextWeekYearDto = YearWeekHelp.GetNextWeekYear(curWeekYearDto);
            MenuForWeek nextWeekMenu    = _weekMenuService.GetWeekMenuByWeekYear(nextWeekYearDto);

            return(Ok(nextWeekMenu != null && nextWeekMenu.OrderCanBeCreated));
        }
Exemple #9
0
        public Task <bool> IsNexWeekMenuExist()
        {
            WeekYearDto curWeekYear     = YearWeekHelp.GetCurrentWeekYearDto();
            WeekYearDto nextWeekYearDto = YearWeekHelp.GetNextWeekYear(curWeekYear);
            MenuForWeek nextWeek        =
                _weekmenuService.GetWeekMenuByWeekYear(nextWeekYearDto);

            return(Task.FromResult(nextWeek != null));
        }
Exemple #10
0
 public static WorkWeekDto MapWorkWeekDto(WorkingWeek workweek)
 {
     return(new WorkWeekDto
     {
         WorkWeekId = workweek.ID,
         WeekYear = WeekYearDto.MapDto(workweek),
         WorkDays = workweek.WorkingDays.Select(WorkDayDto.MapDto).ToList(),
         CanBeChanged = YearWeekHelp.WeekDaysCanBeChanged(workweek)
     });
 }
Exemple #11
0
        /// <summary>
        /// Получает список сущностей, содержащих id недельных заказов по каждому пользователю и их полные имена
        /// </summary>
        /// <param name="context"></param>
        /// <param name="wyDto">Объект, содержащий номера недели и года для запроса</param>
        /// <returns></returns>
        public static async Task <List <WeekUserOrder> > GetWeekOrdersByWeekYear(this ApplicationDbContext context,
                                                                                 WeekYearDto wyDto)
        {
            var weekParameter = new SqlParameter("@Week", wyDto.Week);
            var yearParameter = new SqlParameter("@Year", wyDto.Year);

            return(context.Database.SqlQuery <WeekUserOrder>("Select * From WeekOrdersByWeekYear(@Week,@Year)",
                                                             weekParameter, yearParameter)
                   .ToListAsync().Result);
        }
        public async Task <WeekPaimentDto> GetWeekPaiments([FromBody] WeekYearDto wyDto)
        {
            if (wyDto == null)
            {
                wyDto = YearWeekHelp.GetCurrentWeekYearDto();
            }

            WeekPaimentDto dto = WeekPaimentDto.GetMapDto(_unitOfWork.RepositoryAsync <WeekPaiment>(), wyDto);

            return(await Task.FromResult(dto));
        }
Exemple #13
0
        public void GetWeekTitleTestApi()
        {
            WeekYearDto wyDto = new WeekYearDto
            {
                Week = 26,
                Year = 2016
            };
            string rezult = YearWeekHelp.GetWeekTitle(_unitOfWork.RepositoryAsync <MenuForWeek>(), wyDto);

            Assert.IsNotNull(rezult);
        }
Exemple #14
0
        public async Task <PlanWeekOrderDto> GetPlanMenuOrders([FromBody] WeekYearDto wyDto)
        {
            if (wyDto == null)
            {
                wyDto = YearWeekHelp.GetCurrentWeekYearDto();
            }

            PlanWeekOrderDto weekOrderDto = PlanWeekOrderDto.GetMapDto(_unitOfWork, wyDto);

            return(await Task.FromResult(weekOrderDto));
        }
        public async Task <IHttpActionResult> NextWeekOrderExists()
        {
            WeekYearDto curWeekYearDto  = YearWeekHelp.GetCurrentWeekYearDto();
            WeekYearDto nextWeekYearDto = YearWeekHelp.GetNextWeekYear(curWeekYearDto);

            string userid = RequestContext.Principal.Identity.GetUserId();

            WeekOrderMenu wom = _orderMenuService.FindByUserIdWeekYear(userid, nextWeekYearDto);

            return(Ok(wom != null));
        }
Exemple #16
0
        public static bool WeekDaysCanBeChanged(WorkingWeek workweek)
        {
            WeekYearDto curDto = new WeekYearDto
            {
                Week = CurrentWeek(),
                Year = DateTime.Now.Year
            };
            WeekYearDto nextDto = GetNextWeekYear(curDto);

            return((workweek.WeekNumber == curDto.Week && workweek.Year.YearNumber == curDto.Year) ||
                   (workweek.WeekNumber == nextDto.Week && workweek.Year.YearNumber == nextDto.Year));
        }
Exemple #17
0
        public void CreateWeekMenuTestApi()
        {
            WeekMenuController weekMenuApi = new WeekMenuController(_unitOfWork);
            WeekYearDto        wyDto       = new WeekYearDto
            {
                Week = 22,
                Year = 2016
            };

            // weekMenuApi.GetWeekMenu(wyDto).Result;
            Assert.IsNotNull(wyDto);
        }
Exemple #18
0
        public async Task <WeekMenuDto> GetWeekMenu([FromBody] WeekYearDto wyDto)
        {
            if (wyDto == null)
            {
                wyDto = YearWeekHelp.GetCurrentWeekYearDto();
            }

            WeekMenuDto
                resultdto = await Task.FromResult(_weekmenuService.GetWeekMenuDto(wyDto));

            return(resultdto);
        }
Exemple #19
0
        public void GetOrders()
        {
            OrdersController ord   = new OrdersController(_unitOfWork);
            WeekYearDto      wyDto = new WeekYearDto
            {
                Week = 17,
                Year = 2016
            };
            WeekOrderDto uwoDtos = ord.GetFactMenuOrders(wyDto).Result;

            Assert.IsNotNull(uwoDtos);
        }
Exemple #20
0
        public void GetNextWeekMenu()
        {
            WeekMenuController weekMenuApi = new WeekMenuController(_unitOfWork);
            WeekYearDto        wyDto       = new WeekYearDto
            {
                Week = 17,
                Year = 2016
            };
            WeekMenuDto dto = weekMenuApi.GetWeekMenu(wyDto).Result;

            Assert.IsNotNull(dto);
        }
 public WeekOrderMenu FindByUserIdWeekYear(string userid, WeekYearDto wyDto)
 {
     return(_repository.Query()
            .Include(om => om.MenuForWeek.WorkingWeek.Year)
            .Include(om => om.User)
            .Include(om => om.DayOrderMenus.Select(dom => dom.MenuForDay.WorkingDay.DayOfWeek))
            .Select()
            .FirstOrDefault(
                om =>
                string.Equals(om.User.Id, userid) &&
                om.MenuForWeek.WorkingWeek.WeekNumber == wyDto.Week &&
                om.MenuForWeek.WorkingWeek.Year.YearNumber == wyDto.Year));
 }
Exemple #22
0
        public static void PrevOrdersMenuById(this IRepositoryAsync <WeekOrderMenu> repository, int weekordid)
        {
            WeekOrderMenu curOrderMenu = repository.FindOrderMenuById(weekordid);
            WeekYearDto   curwyDto     = new WeekYearDto
            {
                Week = curOrderMenu.MenuForWeek.WorkingWeek.WeekNumber,
                Year = curOrderMenu.MenuForWeek.WorkingWeek.Year.YearNumber
            };
            WeekYearDto preWeekYearDto = YearWeekHelp.GetPrevWeekYear(curwyDto);


            WeekOrderMenu prevWeekOrder = repository.Query()
                                          .Include(om => om.User)
                                          .Include(om => om.MenuForWeek.WorkingWeek.Year)
                                          .Include(wm => wm.MenuForWeek.WorkingWeek.WorkingDays.Select(d => d.DayOfWeek))
                                          .Include(om => om.DayOrderMenus.Select(dm => dm.MenuForDay.DishPriceMfdRelations.Select(dp => dp.Dish.DishType)))
                                          .Include(om => om.DayOrderMenus.Select(dm => dm.MenuForDay.DishPriceMfdRelations.Select(dp => dp.Dish.DishDetail)))
                                          .Include(om => om.DayOrderMenus.Select(dm => dm.MenuForDay.DishPriceMfdRelations.Select(dp => dp.DishPrice)))
                                          .Select().FirstOrDefault(om =>
                                                                   string.Equals(om.User.Id, curOrderMenu.User.Id) &&
                                                                   om.MenuForWeek.WorkingWeek.WeekNumber == preWeekYearDto.Week &&
                                                                   om.MenuForWeek.WorkingWeek.Year.YearNumber == preWeekYearDto.Year);

            if (prevWeekOrder == null)
            {
                return;
            }
            List <DayOrderMenu> curDayOrderMenus  = repository.DayOrdsByWeekOrdId(weekordid);
            List <DayOrderMenu> prevDayOrderMenus = repository.DayOrdsByWeekOrdId(prevWeekOrder.Id);

            curDayOrderMenus.ForEach(curdayord =>
            {
                if (curdayord.MenuForDay.WorkingDay.IsWorking && curdayord.MenuForDay.OrderCanBeChanged)
                {
                    DayOrderMenu prevDayOrd =
                        prevDayOrderMenus.FirstOrDefault(dord => dord.MenuForDay.WorkingDay.DayOfWeek.Id == curdayord.MenuForDay.WorkingDay.DayOfWeek.Id);
                    List <DishQuantityRelations> curdrels =
                        repository.GetRepositoryAsync <DishQuantityRelations>().GetRelationsListByDayOrdId(curdayord.Id);
                    List <DishQuantityRelations> prevdrels =
                        repository.GetRepositoryAsync <DishQuantityRelations>().GetRelationsListByDayOrdId(prevDayOrd.Id);
                    for (int i = 0; i < curdrels.Count; i++)
                    {
                        DishQuantityRelations rel = curdrels[i];
                        rel.DishQuantityId        = prevdrels.Count == 0
                          ? repository.GetRepositoryAsync <MfdDishPriceRelations>().GetDishPrice(0.00).Id
                          : prevdrels[i].DishQuantityId;
                        repository.Context.Entry(rel).State = EntityState.Modified;
                    }
                }
            });
        }
        public void TestGetUserWeekOrder()
        {
            WeekYearDto wyDto = new WeekYearDto
            {
                Week = 19,
                Year = 2016
            };
            User user = _userManager.FindByName("employee");
            //WeekOrderMenu ordmenu = _weekOrderMenuService.FindByUserIdWeekYear(user.Id, wyDto);
            WeekPaiment          weekPaiment = _weekPaimentService.GetByUseridWeekYear(user.Id, wyDto);
            EmployeeWeekOrderDto model       = EmployeeWeekOrderDto.MapDto(_unitOfWork.GetContext(), weekPaiment, wyDto);

            Assert.IsNotNull(model);
        }
        public void TestDeleteWeekOrder()
        {
            User        user  = _userManager.FindByName("employee");
            WeekYearDto wyDto = new WeekYearDto
            {
                Week = 19,
                Year = 2016
            };
            WeekOrderMenu weekOrderMenu = _weekOrderMenuService.FindByUserIdWeekYear(user.Id, wyDto);

            _weekOrderMenuService.Delete(weekOrderMenu);
            weekOrderMenu = _weekOrderMenuService.FindByUserIdWeekYear(user.Id, wyDto);
            Assert.IsNull(weekOrderMenu);
        }
        public void StoredFuncTest()
        {
            WeekYearDto wyDto = YearWeekHelp.GetCurrentWeekYearDto();

            //var res = _unitOfWork.GetContext().GetWeekUserOrderDishQuantyties(wyDto).ToList();
            {
                var weekParameter = new SqlParameter("@Week", wyDto.Week);
                var yearParameter = new SqlParameter("@Year", wyDto.Year);
                var res           = _unitOfWork.GetContext().GetDayNames(wyDto).Result;
                //.Database.SqlQuery(typeof(WeekUserOrder), "Select * From WeekOrdersByWeekYear(@Week,@Year)",
                //    weekParameter, yearParameter)
                //    .ToListAsync()
                //    .Result; ;
                Assert.IsNotNull(res);
            }
        }
Exemple #26
0
        public static WeekYearDto GetPrevWeekYear(WeekYearDto wyDto)
        {
            WeekYearDto result = new WeekYearDto();

            if (wyDto.Week == 1)
            {
                result.Week = YearWeekCount(wyDto.Year);
                result.Year = wyDto.Year - 1;
            }
            else
            {
                result.Week = wyDto.Week - 1;
                result.Year = wyDto.Year;
            }

            return(result);
        }
        public static WeekMenuDto GetWeekMenuDto(this IRepositoryAsync <MfdDishPriceRelations> repository,
                                                 MenuForWeek mfw)
        {
            WeekYearDto wyDto = WeekYearDto.MapDto(mfw.WorkingWeek);

            return(new WeekMenuDto
            {
                Id = mfw.ID,
                SummaryPrice = mfw.SummaryPrice,
                MfdModels = mfw.MenuForDay.Select(repository.GetMenuForDayDto).ToList(),
                OrderCanBeCreated = mfw.OrderCanBeCreated,
                WorkWeekDays = mfw.WorkingWeek.WorkingDays.Select(wd => wd.IsWorking).ToArray(),
                WorkingDaysAreSelected = mfw.WorkingDaysAreSelected,
                DayNames = repository.Context.GetDayNames(wyDto).Result,
                WeekYear = wyDto
            });
        }
        public void WeekOrderPaged()
        {
            WeekYearDto wyDto = new WeekYearDto
            {
                Week = 17,
                Year = 2016
            };
            int totCount;
            List <WeekOrderMenu> pagedOrders =
                _weekOrderMenuRepository.OrdersMenuByWeekYear(wyDto);
            int page     = 1;
            int pageSize = 7;

            List <WeekOrderMenu> needOrders =
                pagedOrders.OrderBy(po => po.User.LastName).Skip(pageSize * (page - 1)).Take(pageSize).ToList();

            Assert.IsNotNull(needOrders);
        }
        public static WeekPaimentDto GetMapDto(IRepositoryAsync<WeekPaiment> repository , WeekYearDto wyDto)
        {
            ApplicationDbContext context = repository.Context;
            MenuForWeek menuForWeek = repository.GetRepositoryAsync<MenuForWeek>().GetWeekMenuByWeekYear(wyDto);

            if (menuForWeek == null) return null;
            List<WeekPaiment> weekPaiments = repository.WeekPaiments(wyDto).Where(word=>word.WeekOrderMenu.User.IsExisting).OrderBy(wo => wo.WeekOrderMenu.User.LastName).ToList();

            return new WeekPaimentDto
            {
                WeekYearDto = wyDto,
                UserWeekPaiments = weekPaiments.Select(updto => UserWeekPaimentDto.MapDto(context, updto)).ToList(),
                SummaryDishPaiments = context.SumWeekPaimentsByDishes(wyDto).Result,
                DayNames = context.GetDayNames(wyDto,true).Result,
                WeekDishPrices = context.GetWeekDishPrices(wyDto).Result,
                SuCanChangeOrder = menuForWeek.SUCanChangeOrder,
                AllDayNames = context.GetDayNames(wyDto).Result
            };
        }
        public static List <PlannedWeekOrderMenu> OrdersMenuByWeekYear(this IRepositoryAsync <PlannedWeekOrderMenu> repository,
                                                                       WeekYearDto wyDto)
        {
            List <PlannedWeekOrderMenu> pagedOrders = repository.Query()
                                                      .Include(om => om.User)
                                                      .Include(om => om.MenuForWeek.WorkingWeek.Year)
                                                      .Include(wm => wm.MenuForWeek.WorkingWeek.WorkingDays.Select(d => d.DayOfWeek))
                                                      .Include(om => om.PlannedDayOrderMenus.Select(dm => dm.MenuForDay.DishPriceMfdRelations.Select(dp => dp.Dish.DishType)))
                                                      .Include(om => om.PlannedDayOrderMenus.Select(dm => dm.MenuForDay.DishPriceMfdRelations.Select(dp => dp.Dish.DishDetail)))
                                                      .Include(om => om.PlannedDayOrderMenus.Select(dm => dm.MenuForDay.DishPriceMfdRelations.Select(dp => dp.DishPrice)))
                                                      .Select().Where(
                om =>
                om.MenuForWeek.WorkingWeek.WeekNumber == wyDto.Week &&
                om.MenuForWeek.WorkingWeek.Year.YearNumber == wyDto.Year)
                                                      .OrderBy(wp => wp.User.LastName)
                                                      .ToList();

            return(pagedOrders);
        }
Exemple #31
0
        public void TestWeekMenuDelete()
        {
            WeekMenuController weekMenuApi = new WeekMenuController(_unitOfWork);
            WeekYearDto        wyDto       = new WeekYearDto
            {
                Week = 18,
                Year = 2016
            };
            MenuForWeek weekmenu = _menuForWeekService.GetWeekMenuByWeekYear(wyDto);

            if (weekmenu == null)
            {
                WeekMenuDto dto = weekMenuApi.GetWeekMenu(wyDto).Result;
                weekmenu = _menuForWeekService.GetWeekMenuByWeekYear(wyDto);
            }
            var res = weekMenuApi.DeleteMenuForWeek(weekmenu.ID).Result;

            weekmenu = _menuForWeekService.GetWeekMenuByWeekYear(wyDto);

            Assert.IsNull(weekmenu);
        }
Exemple #32
0
        public static WeekOrderDto GetMapDto(IUnitOfWorkAsync unitOfWork, WeekYearDto wyDto, bool needfact = true)
        {
            ApplicationDbContext context = unitOfWork.GetContext();

            MenuForWeek menuForWeek = unitOfWork.RepositoryAsync<MenuForWeek>().GetWeekMenuByWeekYear(wyDto);

            if (menuForWeek == null) return null;

            List<WeekOrderMenu> weekOrderMenus = unitOfWork.RepositoryAsync<WeekOrderMenu>()
                .OrdersMenuByWeekYear(wyDto).Where(word=>word.User.IsExisting).OrderBy(wo=>wo.User.LastName).ToList();

            return new WeekOrderDto
            {
                WeekYearDto = wyDto,
                SuCanChangeOrder = menuForWeek.SUCanChangeOrder,
                UserWeekOrders =
                    weekOrderMenus.Select(woDto => UserWeekOrderDto.MapDto(context, woDto)).ToList(),
                DayNames = context.GetDayNames(wyDto, true).Result,
                WeekDishPrices = context.GetWeekDishPrices(wyDto).Result,
                SummaryDishQuantities = context.GetFactSumWeekUserCounts(wyDto).Result,
                AllDayNames = context.GetDayNames(wyDto).Result
            };
        }
        public static EmployeeWeekOrderDto MapDto(ApplicationDbContext context, WeekPaiment weekPaiment,
            WeekYearDto wyDto)
        {
            double defaultDebt;
            double.TryParse(WebConfigurationManager.AppSettings["defaultCreditValue"], out defaultDebt);

            return new EmployeeWeekOrderDto
            {
                WeekOrderId = weekPaiment.WeekOrderMenu.Id,
                DayOrders =
                    weekPaiment.WeekOrderMenu.DayOrderMenus.Where(dom => dom.MenuForDay.WorkingDay.IsWorking)
                        .Select(OrderDayMenuDto.MapDto)
                        .ToList(),
                WeekOrderDishes = context.FactDishQuantByWeekOrderId(weekPaiment.WeekOrderMenu.Id).Result,
                WeekIsPaid = weekPaiment.WeekIsPaid,
                Balance = weekPaiment.WeekOrderMenu.User.Balance,
                WeekYear = wyDto,
                PrevWeekBalance = weekPaiment.PreviousWeekBalance,
                WeekPaiment = weekPaiment.Paiment,
                AllowDebt = defaultDebt,
                CheckDebt = weekPaiment.WeekOrderMenu.User.CheckDebt,
                DayNames = context.GetDayNames(wyDto).Result
            };
        }