Пример сметы: Orc.No_055-16_-_Av._Rainha_Dona_Leonor_15,_2Esq,[login to view URL]
Вызов генерации сметы происходит в PdfController.cs. Реализация в [login to view URL]
Сметы хранятся в таблице PlatformEstimates. Доступ к ним через IPlatformEstimateDbService. Смета состоит из секций и позиций. Секция (PlatformEstimateSection) - начало раздела (например вторая строка в таблице примера с текстом TRABALHOS PREPARATORIOS). Позиция (PlatformEstimatePosition) - линия с описанием работы, ценой за единицу и количеством (например 3 строка с номером 1.1.1 в примере).
Ваша задача состоит в том, чтобы срендерить смету более/менее похожую на ту, что во вложении. Имеется в виду таблица. На последние две страницы с текстами не обращайте внимания.
Что должно быть в итоговом документе:
Логотип в хедере (логотип взять с главной страницы)
Текущая дата в формате yyyy-MM-dd, ODIGA - Digital Intelligence and Global Analytics LDA, [login to view URL](как ссылка) в футере
Название контракта, к которому отноcится смета. Каждая смета привязана к контракту PlatformContracts через PlatformContractId. Название контракта - поле Name у PlatformContracts.
Имя и фамилия автора сметы. Каждая смета привязана к пользователю / создателю AspNetUsers через поле CreatorId.
Таблицу со следующими полями:
Nº (порядковый номер высчитывать самому, сортируя секции и позиции сметы согласно полю Number). Секция имеет обычный номер 1 . Ее подсекции и позиции имеют номера 1.1 и т.д
Descrição - описание. Поле Name у PlatformEstimateSections и поле Description у PlatformEstimatePositions
Un. - единица измерения у позиции. Поле Measurement
P.U. - цена за единицу у позиции. Поле Price
Quant. - количество у позициии Поле Quantity
Valor - сумма у позиции. (цена за ед * кол-во). Округлять до 2 знаков после запятой
Observações - заметки у позиций и у секций. Поле Notes
Общая сумма в самом низу сметы TOTAL DO ORÇAMENTO. Выделить красным. - подсчитать сумму по всем позициям
The budget is $ 100.
Greetings.
I 've read your post. I have good experience in ASP and .NET. If you want chat with me, we can discuss more carefully.
Thank you Roman. From Andrii.