DeliveryPart: Add gebunden field

This commit is contained in:
2023-10-15 13:40:29 +02:00
parent b6d74d3c07
commit f8126c392e
4 changed files with 23 additions and 2 deletions

View File

@ -154,6 +154,8 @@ namespace Elwig.Helpers {
ExecuteNonQuery(cnx, "ALTER TABLE payment_variant DROP COLUMN bucket_8_name"); ExecuteNonQuery(cnx, "ALTER TABLE payment_variant DROP COLUMN bucket_8_name");
ExecuteNonQuery(cnx, "ALTER TABLE payment_variant DROP COLUMN bucket_9_name"); ExecuteNonQuery(cnx, "ALTER TABLE payment_variant DROP COLUMN bucket_9_name");
ExecuteNonQuery(cnx, "ALTER TABLE delivery_part ADD COLUMN gebunden INTEGER CHECK (gebunden IN (TRUE, FALSE)) DEFAULT NULL");
ExecuteNonQuery(cnx, "DROP VIEW v_delivery"); ExecuteNonQuery(cnx, "DROP VIEW v_delivery");
ExecuteNonQuery(cnx, """ ExecuteNonQuery(cnx, """
CREATE VIEW v_delivery AS CREATE VIEW v_delivery AS
@ -162,6 +164,7 @@ namespace Elwig.Helpers {
d.date, d.time, d.zwstid, d.lnr, d.lsnr, d.date, d.time, d.zwstid, d.lnr, d.lsnr,
m.mgnr, m.family_name, m.given_name, m.mgnr, m.family_name, m.given_name,
p.sortid, p.weight, p.kmw, ROUND(p.kmw * (4.54 + 0.022 * p.kmw), 0) AS oe, p.qualid, p.hkid, p.kgnr, p.rdnr, p.sortid, p.weight, p.kmw, ROUND(p.kmw * (4.54 + 0.022 * p.kmw), 0) AS oe, p.qualid, p.hkid, p.kgnr, p.rdnr,
p.gerebelt, p.gebunden,
p.qualid IN (SELECT l.qualid FROM wine_quality_level l WHERE NOT l.predicate AND (p.kmw >= l.min_kmw OR l.min_kmw IS NULL) ORDER BY l.min_kmw DESC LIMIT 1,100) AS abgewertet, p.qualid IN (SELECT l.qualid FROM wine_quality_level l WHERE NOT l.predicate AND (p.kmw >= l.min_kmw OR l.min_kmw IS NULL) ORDER BY l.min_kmw DESC LIMIT 1,100) AS abgewertet,
p.qualid NOT IN ('WEI', 'RSW', 'LDW') AS min_quw, p.qualid NOT IN ('WEI', 'RSW', 'LDW') AS min_quw,
GROUP_CONCAT(a.attrid) AS attributes, GROUP_CONCAT(a.attrid) AS attributes,
@ -174,8 +177,8 @@ namespace Elwig.Helpers {
LEFT JOIN wine_attribute a ON a.attrid = pa.attrid LEFT JOIN wine_attribute a ON a.attrid = pa.attrid
GROUP BY p.year, p.did, p.dpnr) s GROUP BY p.year, p.did, p.dpnr) s
LEFT JOIN delivery_part_modifier o ON (o.year, o.did, o.dpnr) = (s.year, s.did, s.dpnr) LEFT JOIN delivery_part_modifier o ON (o.year, o.did, o.dpnr) = (s.year, s.did, s.dpnr)
GROUP BY s.year, s.did, s.dpnr GROUP BY s.year, s.lsnr, s.dpnr
ORDER BY s.year, s.did, s.dpnr; ORDER BY s.year, s.lsnr, s.dpnr;
"""); """);
ExecuteNonQuery(cnx, "DROP VIEW v_bucket"); ExecuteNonQuery(cnx, "DROP VIEW v_bucket");

View File

@ -75,6 +75,9 @@ namespace Elwig.Models {
[Column("lesewagen")] [Column("lesewagen")]
public bool? IsLesewagen { get; set; } public bool? IsLesewagen { get; set; }
[Column("gebunden")]
public bool? IsGebunden { get; set; }
[Column("temperature")] [Column("temperature")]
public double? Temperature { get; set; } public double? Temperature { get; set; }

View File

@ -438,6 +438,10 @@
<Label Content="Ried:" Margin="10,70,0,10" Grid.Column="0"/> <Label Content="Ried:" Margin="10,70,0,10" Grid.Column="0"/>
<ComboBox x:Name="WineRdInput" Margin="0,70,10,10" Grid.Column="1" <ComboBox x:Name="WineRdInput" Margin="0,70,10,10" Grid.Column="1"
DisplayMemberPath="Name"/> DisplayMemberPath="Name"/>
<CheckBox x:Name="GebundenInput" Content="Gebunden" Margin="10,105,0,0" Grid.Column="0" Grid.ColumnSpan="2" IsThreeState="True"
VerticalAlignment="Top" HorizontalAlignment="Left"
Checked="CheckBox_Changed" Unchecked="CheckBox_Changed"/>
</Grid> </Grid>
</GroupBox> </GroupBox>
</Grid> </Grid>

View File

@ -227,6 +227,15 @@ namespace Elwig.Windows {
GerebeltGewogenInput.IsEnabled = true; GerebeltGewogenInput.IsEnabled = true;
UnsetDefaultValue(GerebeltGewogenInput); UnsetDefaultValue(GerebeltGewogenInput);
} }
if (App.Client.IsMatzen || App.Client.IsWinzerkeller) {
GebundenInput.IsChecked = null;
GebundenInput.IsEnabled = false;
SetDefaultValue(GebundenInput);
} else {
GebundenInput.IsChecked = null;
GebundenInput.IsEnabled = true;
UnsetDefaultValue(GebundenInput);
}
WineQualityLevelInput.IsEnabled = false; WineQualityLevelInput.IsEnabled = false;
@ -702,6 +711,7 @@ namespace Elwig.Windows {
AcidInput.Text = (p != null && p.Acid != null) ? $"{p.Acid:N1}" : ""; AcidInput.Text = (p != null && p.Acid != null) ? $"{p.Acid:N1}" : "";
LesewagenInput.IsChecked = p?.IsLesewagen ?? false; LesewagenInput.IsChecked = p?.IsLesewagen ?? false;
HandPickedInput.IsChecked = p?.IsHandPicked; HandPickedInput.IsChecked = p?.IsHandPicked;
GebundenInput.IsChecked = p?.IsGebunden;
ScaleId = p?.ScaleId; ScaleId = p?.ScaleId;
WeighingId = p?.WeighingId; WeighingId = p?.WeighingId;
@ -759,6 +769,7 @@ namespace Elwig.Windows {
p.IsGerebelt = GerebeltGewogenInput.IsChecked ?? false; p.IsGerebelt = GerebeltGewogenInput.IsChecked ?? false;
p.IsHandPicked = HandPickedInput.IsChecked; p.IsHandPicked = HandPickedInput.IsChecked;
p.IsLesewagen = LesewagenInput.IsChecked; p.IsLesewagen = LesewagenInput.IsChecked;
p.IsGebunden = GebundenInput.IsChecked;
p.Temperature = (TemperatureInput.Text == "") ? null : double.Parse(TemperatureInput.Text); p.Temperature = (TemperatureInput.Text == "") ? null : double.Parse(TemperatureInput.Text);
p.Acid = (AcidInput.Text == "") ? null : double.Parse(AcidInput.Text); p.Acid = (AcidInput.Text == "") ? null : double.Parse(AcidInput.Text);
p.Comment = (PartCommentInput.Text == "") ? null : PartCommentInput.Text; p.Comment = (PartCommentInput.Text == "") ? null : PartCommentInput.Text;