Documents: Add DeliveryConfirmation
This commit is contained in:
26
Elwig/Documents/DeliveryConfirmation.cshtml.cs
Normal file
26
Elwig/Documents/DeliveryConfirmation.cshtml.cs
Normal file
@ -0,0 +1,26 @@
|
||||
using Elwig.Helpers;
|
||||
using Elwig.Models;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
namespace Elwig.Documents {
|
||||
public class DeliveryConfirmation : BusinessDocument {
|
||||
|
||||
public int Year;
|
||||
public IEnumerable<DeliveryPart> Deliveries;
|
||||
|
||||
public DeliveryConfirmation(AppDbContext ctx, int year, Member m) : base($"Anlieferungsbestätigung {year} – {m.Name}", m) {
|
||||
Year = year;
|
||||
DocumentId = $"Anl.-Best. {Year}/{m.MgNr}";
|
||||
Deliveries = ctx.DeliveryParts.FromSqlRaw($"""
|
||||
SELECT p.*
|
||||
FROM v_delivery v
|
||||
JOIN delivery_part p ON (p.year, p.did, p.dpnr) = (v.year, v.did, v.dpnr)
|
||||
WHERE (v.year, v.mgnr) = ({Year}, {m.MgNr})
|
||||
ORDER BY v.sortid, v.abgewertet ASC, LENGTH(v.attributes) DESC, COALESCE(v.attributes, '~'), v.kmw DESC, v.lsnr, v.dpnr
|
||||
""")
|
||||
.ToList();
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user