[#34] First step of not using Bio as Attribute
This commit is contained in:
@ -43,10 +43,11 @@ namespace Elwig.Models.Dtos {
|
||||
return await table.FromSqlRaw($"""
|
||||
SELECT d.year, c.tgnr, v.avnr, d.mgnr, d.did, d.lsnr, d.dpnr, d.weight, d.modifiers,
|
||||
b.bktnr, d.sortid, b.discr, b.value, pb.price, pb.amount, p.net_amount, p.amount AS total_amount,
|
||||
s.name AS variety, a.name AS attribute, q.name AS quality_level, d.oe, d.kmw
|
||||
s.name AS variety, a.name AS attribute, c.name AS cultivation, q.name AS quality_level, d.oe, d.kmw
|
||||
FROM v_delivery d
|
||||
JOIN wine_variety s ON s.sortid = d.sortid
|
||||
LEFT JOIN wine_attribute a ON a.attrid = d.attrid
|
||||
LEFT JOIN wine_cultivation c ON c.cultid = d.cultid
|
||||
JOIN wine_quality_level q ON q.qualid = d.qualid
|
||||
LEFT JOIN delivery_part_bucket b ON (b.year, b.did, b.dpnr) = (d.year, d.did, d.dpnr)
|
||||
LEFT JOIN payment_variant v ON v.year = d.year
|
||||
@ -70,6 +71,7 @@ namespace Elwig.Models.Dtos {
|
||||
public int DPNr;
|
||||
public string Variety;
|
||||
public string? Attribute;
|
||||
public string? Cultivation;
|
||||
public string[] Modifiers;
|
||||
public string QualityLevel;
|
||||
public (double Oe, double Kmw) Gradation;
|
||||
@ -88,6 +90,7 @@ namespace Elwig.Models.Dtos {
|
||||
DPNr = f.DPNr;
|
||||
Variety = f.Variety;
|
||||
Attribute = f.Attribute;
|
||||
Cultivation = f.Cultivation;
|
||||
var modifiers = (IEnumerable<Modifier>)(f.Modifiers ?? "").Split(',')
|
||||
.Select(m => season?.Modifiers.FirstOrDefault(s => s.ModId == m))
|
||||
.Where(m => m != null)
|
||||
@ -149,6 +152,8 @@ namespace Elwig.Models.Dtos {
|
||||
public string Variety { get; set; }
|
||||
[Column("attribute")]
|
||||
public string? Attribute { get; set; }
|
||||
[Column("cultivation")]
|
||||
public string? Cultivation { get; set; }
|
||||
[Column("quality_level")]
|
||||
public string QualityLevel { get; set; }
|
||||
[Column("oe")]
|
||||
|
@ -73,6 +73,7 @@ namespace Elwig.Models.Dtos {
|
||||
public int DPNr;
|
||||
public string Variety;
|
||||
public string? Attribute;
|
||||
public string? Cultivation;
|
||||
public string QualityLevel;
|
||||
public (double Oe, double Kmw) Gradation;
|
||||
public string[] Modifiers;
|
||||
@ -85,6 +86,7 @@ namespace Elwig.Models.Dtos {
|
||||
DPNr = p.DPNr;
|
||||
Variety = p.Variety.Name;
|
||||
Attribute = p.Attribute?.Name;
|
||||
Cultivation = p.Cultivation?.Name;
|
||||
QualityLevel = p.Quality.Name;
|
||||
Gradation = (p.Oe, p.Kmw);
|
||||
Modifiers = p.Modifiers
|
||||
|
@ -17,7 +17,7 @@ namespace Elwig.Models.Entities {
|
||||
public string VtrgId { get; set; }
|
||||
|
||||
[Column("cultid")]
|
||||
public string CultId { get; set; }
|
||||
public string? CultId { get; set; }
|
||||
|
||||
[Column("area")]
|
||||
public int Area { get; set; }
|
||||
@ -47,7 +47,7 @@ namespace Elwig.Models.Entities {
|
||||
public virtual AreaComType AreaComType { get; private set; }
|
||||
|
||||
[ForeignKey("CultId")]
|
||||
public virtual WineCult WineCult { get; private set; }
|
||||
public virtual WineCult? WineCult { get; private set; }
|
||||
|
||||
[ForeignKey("KgNr")]
|
||||
public virtual WbKg Kg { get; private set; }
|
||||
@ -57,7 +57,7 @@ namespace Elwig.Models.Entities {
|
||||
|
||||
public int SearchScore(IEnumerable<string> keywords) {
|
||||
var list = new string?[] {
|
||||
WineCult.Name, Kg.AtKg.Name, Rd.Name, GstNr, Comment,
|
||||
WineCult?.Name, Kg.AtKg.Name, Rd.Name, GstNr, Comment,
|
||||
}.ToList();
|
||||
return Utils.GetSearchScore(list, keywords);
|
||||
}
|
||||
|
@ -31,6 +31,12 @@ namespace Elwig.Models.Entities {
|
||||
[ForeignKey("AttrId")]
|
||||
public virtual WineAttr? Attribute { get; private set; }
|
||||
|
||||
[Column("cultid")]
|
||||
public string? CultId { get; set; }
|
||||
|
||||
[ForeignKey("CultId")]
|
||||
public virtual WineCult? Cultivation { get; private set; }
|
||||
|
||||
[Column("weight")]
|
||||
public int Weight { get; set; }
|
||||
|
||||
@ -66,14 +72,14 @@ namespace Elwig.Models.Entities {
|
||||
[ForeignKey("KgNr, RdNr")]
|
||||
public virtual WbRd? Rd { get; private set; }
|
||||
|
||||
[Column("gerebelt")]
|
||||
public bool IsGerebelt { get; set; }
|
||||
[Column("net_weight")]
|
||||
public bool IsNetWeight { get; set; }
|
||||
|
||||
[Column("manual_weighing")]
|
||||
public bool ManualWeighing { get; set; }
|
||||
public bool IsManualWeighing { get; set; }
|
||||
|
||||
[Column("spl_check")]
|
||||
public bool SplCheck { get; set; }
|
||||
public bool IsSplCheck { get; set; }
|
||||
|
||||
[Column("hand_picked")]
|
||||
public bool? IsHandPicked { get; set; }
|
||||
|
Reference in New Issue
Block a user