phronCare/Documents/Templates/Quotes/Template_v1.cshtml

162 lines
4.3 KiB
Plaintext
Raw Normal View History

2025-05-16 12:04:03 -03:00
@model Domain.Dtos.QuoteDto
2025-05-15 19:24:12 -03:00
@{
var culture = System.Globalization.CultureInfo.GetCultureInfo("es-AR");
}
<!DOCTYPE html>
<html lang="es">
<head>
<meta charset="utf-8" />
2025-05-16 12:28:14 -03:00
<title>Presupuesto @Model.Quotenumber</title>
2025-05-15 19:24:12 -03:00
<style>
body {
2025-05-16 12:28:14 -03:00
font-family: "Liberation Sans", "DejaVu Sans", sans-serif;
font-size: 13px;
color: #222;
2025-05-16 10:14:31 -03:00
margin: 40px;
2025-05-16 12:28:14 -03:00
line-height: 1.5;
2025-05-15 19:24:12 -03:00
}
2025-05-16 12:28:14 -03:00
.header, .footer {
text-align: center;
}
.footer {
font-size: 10px;
margin-top: 40px;
color: #888;
}
h1 {
font-size: 22px;
margin-bottom: 0;
color: #004B8D;
}
h2 {
font-size: 16px;
margin-top: 30px;
2025-05-15 19:24:12 -03:00
color: #004B8D;
2025-05-16 12:28:14 -03:00
border-bottom: 1px solid #ccc;
padding-bottom: 4px;
2025-05-15 19:24:12 -03:00
}
table {
width: 100%;
border-collapse: collapse;
2025-05-16 12:28:14 -03:00
margin-top: 10px;
2025-05-15 19:24:12 -03:00
}
2025-05-16 10:14:31 -03:00
th, td {
2025-05-15 19:24:12 -03:00
border: 1px solid #ccc;
2025-05-16 10:14:31 -03:00
padding: 6px;
2025-05-16 12:28:14 -03:00
vertical-align: top;
2025-05-15 19:24:12 -03:00
}
th {
2025-05-16 12:28:14 -03:00
background-color: #f0f0f0;
text-align: left;
2025-05-15 19:24:12 -03:00
}
2025-05-16 12:28:14 -03:00
.totals-table td {
border: none;
2025-05-15 19:24:12 -03:00
}
2025-05-16 12:28:14 -03:00
.right {
text-align: right;
2025-05-15 19:24:12 -03:00
}
2025-05-16 12:28:14 -03:00
.highlight {
background-color: #e6f7ff;
}
.observaciones {
white-space: pre-wrap;
border: 1px solid #ccc;
padding: 10px;
background: #f9f9f9;
2025-05-15 19:24:12 -03:00
}
</style>
</head>
<body>
2025-05-16 12:28:14 -03:00
<div class="header">
<h1>phronCare - Presupuesto</h1>
<p><strong>Número:</strong> @Model.Quotenumber</p>
<p><strong>Fecha de Emisión:</strong> @Model.IssueDate.ToString("dd/MM/yyyy")</p>
2025-05-15 19:24:12 -03:00
</div>
2025-05-16 12:28:14 -03:00
<h2>Datos del Cliente</h2>
<table>
<tr><th>Razón Social</th><td>@Model.CustomerName</td></tr>
<tr><th>Paciente</th><td>@Model.PatientName</td></tr>
<tr><th>Médico</th><td>@Model.ProfessionalName</td></tr>
<tr><th>Institución</th><td>@Model.InstitutionName</td></tr>
<tr><th>Fecha estimada cirugía</th><td>@(Model.EstimatedDate?.ToString("dd/MM/yyyy") ?? "-")</td></tr>
</table>
<h2>Productos Cotizados</h2>
<table>
<thead>
<tr>
<th>Cantidad</th>
<th>Descripción</th>
<th class="right">Precio Unitario (@Model.Currency)</th>
<th class="right">Total (@Model.Currency)</th>
</tr>
</thead>
<tbody>
@foreach (var item in Model.Items)
{
2025-05-15 19:24:12 -03:00
<tr>
2025-05-16 12:28:14 -03:00
<td>@item.Quantity</td>
<td>@item.Description</td>
<td class="right">@item.UnitPrice.ToString("C", culture)</td>
<td class="right">@item.Total.ToString("C", culture)</td>
2025-05-15 19:24:12 -03:00
</tr>
2025-05-16 12:28:14 -03:00
}
</tbody>
</table>
<h2>Totales</h2>
<table class="totals-table">
<tr>
<td class="right"><strong>Subtotal:</strong></td>
<td class="right">@Model.Items.Sum(i => i.Subtotal).ToString("C", culture)</td>
</tr>
@if (Model.Taxes?.Any() == true)
{
foreach (var tax in Model.Taxes)
{
2025-05-15 19:24:12 -03:00
<tr>
2025-05-16 12:28:14 -03:00
<td class="right"><strong>@tax.TaxName (@tax.TaxRate%)</strong></td>
<td class="right">@tax.TaxAmount.ToString("C", culture)</td>
2025-05-15 19:24:12 -03:00
</tr>
2025-05-16 12:28:14 -03:00
}
}
@if (Model.Adjustments?.Any() == true)
{
foreach (var adj in Model.Adjustments)
{
2025-05-15 19:24:12 -03:00
<tr>
2025-05-16 12:28:14 -03:00
<td class="right"><strong>Ajuste: @adj.Reason</strong></td>
<td class="right">@adj.Amount.ToString("C", culture)</td>
2025-05-15 19:24:12 -03:00
</tr>
2025-05-16 12:28:14 -03:00
}
}
<tr class="highlight">
<td class="right"><strong>Total Final:</strong></td>
<td class="right">@Model.Total.ToString("C", culture)</td>
</tr>
</table>
<h2>Observaciones</h2>
<div class="observaciones">
@Model.Observations
2025-05-15 19:24:12 -03:00
</div>
<div class="footer">
2025-05-16 12:04:03 -03:00
<p>Sistema de gestión y administración PhronCare © 2025</p>
2025-05-15 19:24:12 -03:00
</div>
</body>
</html>