public ItemEntity GetByIdWithMonthlyGroupPlannings(int itemId, int companyId)
        {
            var companyItems = _itemService.GetByCompanyId(companyId);

            if (companyItems == null)
            {
                throw new InvalidCompanyException();
            }

            var item = companyItems.FirstOrDefault(x => x.Id == itemId);

            if (item == null)
            {
                throw new InvalidItemException();
            }

            if (item.Desdobramento)
            {
                item.MonthPlanning = _planningService.GetItemGroupedPlannings(companyId, itemId).ToList();
            }
            else
            {
                item.MonthPlanning = _planningService.GetItemPlanning(companyId, itemId).ToList();
            }

            item.YearPlanning = _planningService.GetYearPlanning(companyId, itemId, null);

            return(item);
        }
Пример #2
0
        public CompanyEntity GetComposed(int companyId)
        {
            var company = _companyService.GetById(companyId);

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

            var companyEntity = _companyService.GetById(companyId);

            //companyEntity.Address = _addressService.GetCompanyAddress(companyId);
            companyEntity.Items = _itemService.GetByCompanyId(companyId)
                                  .Where(x => x.IsActive == true)
                                  .ToList();

            foreach (var item in companyEntity.Items)
            {
                item.SubItems = _subItemService.GetByCompanyAndItemId(item.Id, companyId)
                                .Where(x => x.IsActive == true)
                                .ToList();

                item.YearPlanning  = _planningService.GetYearPlanning(companyId, item.Id, null);
                item.MonthPlanning = _planningService.GetItemPlanning(companyId, item.Id).ToList();


                foreach (var subitem in item.SubItems)
                {
                    subitem.MonthPlanning = _planningService.GetSubItemPlanning(companyId, item.Id, subitem.Id).ToList();
                }
            }
            return(companyEntity);
        }