c89df975bd
Build and Push Docker Images Staging / build (push) Successful in 14m42s
Show the candidate's location in the scan summary block of the results email
alongside keywords and providers, for both en and ro templates.
- CvSearchEmailSender.SendResultsAsync accepts location and passes it to BuildScanSummary
- BuildScanSummary passes {{location}} to the template (falls back to '-' when absent)
- CvSearchJobTask passes session.Location to SendResultsAsync
- New migration AddLocationToScanSummaryTemplate updates both language variants of
email.search-results.scan-summary to include a 'Location / Locație căutată' row
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
81 lines
3.8 KiB
C#
81 lines
3.8 KiB
C#
using Microsoft.EntityFrameworkCore.Migrations;
|
|
|
|
#nullable disable
|
|
|
|
namespace Email.Data.Migrations
|
|
{
|
|
/// <inheritdoc />
|
|
public partial class AddLocationToScanSummaryTemplate : Migration
|
|
{
|
|
/// <inheritdoc />
|
|
protected override void Up(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.UpdateData(
|
|
schema: MigrationConstants.SchemaName,
|
|
table: "Templates",
|
|
keyColumns: ["Key", "Language"],
|
|
keyValues: ["email.search-results.scan-summary", "en"],
|
|
columns: ["Value"],
|
|
values: [@"<table width=""100%"" cellpadding=""0"" cellspacing=""0"" border=""0"" style=""width: 100%; margin-bottom: 18px; border: 1px solid #dee2e6; border-collapse: collapse;"">
|
|
<tr>
|
|
<td bgcolor=""#f8f9fa"" style=""background-color: #f8f9fa; padding: 14px 16px; font-size: 13px; color: #495057;"">
|
|
<div style=""margin-bottom: 8px;""><strong>Keywords used:</strong> {{keywordsHtml}}</div>
|
|
<div style=""margin-bottom: 8px;""><strong>Location:</strong> {{location}}</div>
|
|
<div><strong>Providers scanned:</strong> {{providers}}</div>
|
|
</td>
|
|
</tr>
|
|
</table>"]);
|
|
|
|
migrationBuilder.UpdateData(
|
|
schema: MigrationConstants.SchemaName,
|
|
table: "Templates",
|
|
keyColumns: ["Key", "Language"],
|
|
keyValues: ["email.search-results.scan-summary", "ro"],
|
|
columns: ["Value"],
|
|
values: [@"<table width=""100%"" cellpadding=""0"" cellspacing=""0"" border=""0"" style=""width: 100%; margin-bottom: 18px; border: 1px solid #dee2e6; border-collapse: collapse;"">
|
|
<tr>
|
|
<td bgcolor=""#f8f9fa"" style=""background-color: #f8f9fa; padding: 14px 16px; font-size: 13px; color: #495057;"">
|
|
<div style=""margin-bottom: 8px;""><strong>Cuvinte cheie folosite:</strong> {{keywordsHtml}}</div>
|
|
<div style=""margin-bottom: 8px;""><strong>Locație căutată:</strong> {{location}}</div>
|
|
<div><strong>Furnizori scanați:</strong> {{providers}}</div>
|
|
</td>
|
|
</tr>
|
|
</table>"]);
|
|
}
|
|
|
|
/// <inheritdoc />
|
|
protected override void Down(MigrationBuilder migrationBuilder)
|
|
{
|
|
migrationBuilder.UpdateData(
|
|
schema: MigrationConstants.SchemaName,
|
|
table: "Templates",
|
|
keyColumns: ["Key", "Language"],
|
|
keyValues: ["email.search-results.scan-summary", "en"],
|
|
columns: ["Value"],
|
|
values: [@"<table width=""100%"" cellpadding=""0"" cellspacing=""0"" border=""0"" style=""width: 100%; margin-bottom: 18px; border: 1px solid #dee2e6; border-collapse: collapse;"">
|
|
<tr>
|
|
<td bgcolor=""#f8f9fa"" style=""background-color: #f8f9fa; padding: 14px 16px; font-size: 13px; color: #495057;"">
|
|
<div style=""margin-bottom: 8px;""><strong>Keywords used:</strong> {{keywordsHtml}}</div>
|
|
<div><strong>Providers scanned:</strong> {{providers}}</div>
|
|
</td>
|
|
</tr>
|
|
</table>"]);
|
|
|
|
migrationBuilder.UpdateData(
|
|
schema: MigrationConstants.SchemaName,
|
|
table: "Templates",
|
|
keyColumns: ["Key", "Language"],
|
|
keyValues: ["email.search-results.scan-summary", "ro"],
|
|
columns: ["Value"],
|
|
values: [@"<table width=""100%"" cellpadding=""0"" cellspacing=""0"" border=""0"" style=""width: 100%; margin-bottom: 18px; border: 1px solid #dee2e6; border-collapse: collapse;"">
|
|
<tr>
|
|
<td bgcolor=""#f8f9fa"" style=""background-color: #f8f9fa; padding: 14px 16px; font-size: 13px; color: #495057;"">
|
|
<div style=""margin-bottom: 8px;""><strong>Cuvinte cheie folosite:</strong> {{keywordsHtml}}</div>
|
|
<div><strong>Furnizori scanați:</strong> {{providers}}</div>
|
|
</td>
|
|
</tr>
|
|
</table>"]);
|
|
}
|
|
}
|
|
}
|