public async Task <QuantityTableStepDTO> FindOfferQuantityItemsVROById(int tenderId, int offerId, int branchId, bool isReadOnly) { Offer offer = await _offerQueries.GeOfferByTenderIdAndOfferIdForChecking(offerId); List <long> formIds = offer.SupplierTenderQuantityTables.Where(a => (a.QuantitiyItemsJson != null && a.QuantitiyItemsJson.SupplierTenderQuantityTableItems.Any()) && a.IsActive == true) .Select(a => long.Parse(a.TenderQuantityTable != null ? a.TenderQuantityTable.FormId.ToString() : "0")).ToList(); ApiResponse <List <TemplateFormDTO> > obj = await _qantityTemplatesProxy.GenerateTemplatesByFormIds(formIds); QuantityTableStepDTO quantityTableStepDTO = new QuantityTableStepDTO { TemplateYears = offer.Tender.TemplateYears ?? 0, TenderID = offer.Tender.TenderId, TenderCreatedByTypeId = offer.Tender.CreatedByTypeId ?? 0, TenderIdString = Util.Encrypt(offer.Tender.TenderId), PreQualificationId = offer.Tender.PreQualificationId ?? 0, InvitationTypeId = offer.Tender.InvitationTypeId ?? 0, HasAlternativeOffer = offer.Tender.HasAlternativeOffer ?? false, TenderName = offer.Tender.TenderName, TenderStatusId = offer.Tender.TenderStatusId, ReferenceNumber = offer.Tender.ReferenceNumber, TenderNumber = offer.Tender.TenderNumber, TenderTypeId = offer.Tender.TenderTypeId, OfferPresentationWayId = offer.Tender.OfferPresentationWayId ?? 0, OfferId = offer.OfferId, TemplateFormDTOs = obj.Data }; quantityTableStepDTO.TemplateFormDTOs.ForEach(a => { a.FormDTOs.ForEach(f => { f.Tables = offer.SupplierTenderQuantityTables.Where(q => q.IsActive == true && (q.QuantitiyItemsJson != null && q.QuantitiyItemsJson.SupplierTenderQuantityTableItems.Count() > 0) && q.TenderQuantityTable?.FormId == f.FormId) .Select(t => new TableDTO { TableId = t.Id, TableName = t.Name }).ToList(); }); }); quantityTableStepDTO.IsReadOnly = isReadOnly; return(quantityTableStepDTO); }
public async Task <IViewComponentResult> InvokeAsync(int TenderId) { QuantityTableStepDTO quantitiesTablesModel = await _apiClient.GetAsync <QuantityTableStepDTO>("Tender/GetTenderQuantityItemsDetailsById/" + TenderId, null); return(View(quantitiesTablesModel)); }