* Added fields for scanning barcodes
This commit is contained in:
@@ -20,6 +20,16 @@
|
|||||||
<SfTextBox ID="textBox" Placeholder="Wprowadź adresy..." @bind-Value="@EmailAddresses" CssClass="e-outline"/>
|
<SfTextBox ID="textBox" Placeholder="Wprowadź adresy..." @bind-Value="@EmailAddresses" CssClass="e-outline"/>
|
||||||
</CardContent>
|
</CardContent>
|
||||||
</SfCard>
|
</SfCard>
|
||||||
|
<SfCard>
|
||||||
|
<CardContent>
|
||||||
|
<label for="textBox" class="form-label">Wprowadź numer palety:</label>
|
||||||
|
<SfTextBox ID="palletNumber" Type="InputType.Number" @bind-Value="@PalletNumber" CssClass="e-outline"/>
|
||||||
|
<label for="textBox" class="form-label">Zeskanowana wartość:</label>
|
||||||
|
<SfTextBox ID="scannedValue" @onkeydown="ScanValue" @bind-Value="ScannedValue" CssClass="e-outline"/>
|
||||||
|
<label for="textBox" class="form-label">Zeskanowane wartości:</label>
|
||||||
|
<SfTextBox ID="scannedText" Multiline="true" @bind-Value="@ScannedValues" Readonly="true" CssClass="e-outline"/>
|
||||||
|
</CardContent>
|
||||||
|
</SfCard>
|
||||||
<SfGrid @ref="_grid"
|
<SfGrid @ref="_grid"
|
||||||
AllowFiltering="true"
|
AllowFiltering="true"
|
||||||
AllowPaging="true"
|
AllowPaging="true"
|
||||||
@@ -101,14 +111,21 @@
|
|||||||
|
|
||||||
private SfGrid<WzRowMeyleDto> _grid;
|
private SfGrid<WzRowMeyleDto> _grid;
|
||||||
private IEnumerable<WzRowMeyleDto> _wzRowsMeyle { get; set; } = new List<WzRowMeyleDto>();
|
private IEnumerable<WzRowMeyleDto> _wzRowsMeyle { get; set; } = new List<WzRowMeyleDto>();
|
||||||
private WzHeaderDto _wzHeader;
|
private WzHeaderDto _wzHeader;
|
||||||
|
|
||||||
private bool _isValid;
|
private bool _isValid;
|
||||||
|
|
||||||
private bool Visibility { get; set; }
|
private bool Visibility { get; set; }
|
||||||
|
|
||||||
private string EmailAddresses { get; set; } = string.Empty;
|
private string? EmailAddresses { get; set; } = string.Empty;
|
||||||
|
private string PalletNumber { get; set; } = "0";
|
||||||
|
private string ScannedValues { get; set; } = string.Empty;
|
||||||
|
|
||||||
|
private IDictionary<string, string?> ScannedValuesWithItems { get; set; } = new Dictionary<string, string?>();
|
||||||
|
|
||||||
|
private string LastScannedValue { get; set; } = string.Empty;
|
||||||
|
private string ScannedValue { get; set; } = string.Empty;
|
||||||
|
|
||||||
private void HideModal()
|
private void HideModal()
|
||||||
{
|
{
|
||||||
Visibility = false;
|
Visibility = false;
|
||||||
@@ -120,20 +137,22 @@
|
|||||||
{
|
{
|
||||||
_wzHeader = await WarehouseService.GetWzHeaderByIdAsync(WzHeader);
|
_wzHeader = await WarehouseService.GetWzHeaderByIdAsync(WzHeader);
|
||||||
_wzRowsMeyle = await WarehouseService.GetWzRowsByWzHeaderId(WzHeader);
|
_wzRowsMeyle = await WarehouseService.GetWzRowsByWzHeaderId(WzHeader);
|
||||||
|
|
||||||
|
_wzRowsMeyle.ToList().ForEach(x => ScannedValuesWithItems.Add(x.ItemNumber.Replace(" ", ""), null));
|
||||||
|
|
||||||
EmailAddresses = _wzHeader.EmailAddresses;
|
EmailAddresses = _wzHeader.EmailAddresses;
|
||||||
|
|
||||||
StateHasChanged();
|
StateHasChanged();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task SaveChanges()
|
private async Task SaveChanges()
|
||||||
{
|
{
|
||||||
if (!string.IsNullOrWhiteSpace(EmailAddresses))
|
if (!string.IsNullOrWhiteSpace(EmailAddresses))
|
||||||
{
|
{
|
||||||
await WarehouseService.AddEmailsToWzHeaderAsync(WzHeader, EmailAddresses);
|
await WarehouseService.AddEmailsToWzHeaderAsync(WzHeader, EmailAddresses);
|
||||||
}
|
}
|
||||||
|
|
||||||
await _grid.EndEditAsync();
|
await _grid.EndEditAsync();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -143,7 +162,7 @@
|
|||||||
var changedRecords = changes.ChangedRecords;
|
var changedRecords = changes.ChangedRecords;
|
||||||
|
|
||||||
if (!changedRecords.Any()) return;
|
if (!changedRecords.Any()) return;
|
||||||
|
|
||||||
await WarehouseService.UpdateWzRowsMeyleAsync(changedRecords);
|
await WarehouseService.UpdateWzRowsMeyleAsync(changedRecords);
|
||||||
|
|
||||||
_wzRowsMeyle = await WarehouseService.GetWzRowsByWzHeaderId(WzHeader);
|
_wzRowsMeyle = await WarehouseService.GetWzRowsByWzHeaderId(WzHeader);
|
||||||
@@ -157,7 +176,7 @@
|
|||||||
|
|
||||||
_isValid = count == 0;
|
_isValid = count == 0;
|
||||||
_isValid = _isValid && !string.IsNullOrWhiteSpace(EmailAddresses);
|
_isValid = _isValid && !string.IsNullOrWhiteSpace(EmailAddresses);
|
||||||
|
|
||||||
if (_isValid)
|
if (_isValid)
|
||||||
{
|
{
|
||||||
await WarehouseService.AddEmailsToWzHeaderAsync(WzHeader, EmailAddresses);
|
await WarehouseService.AddEmailsToWzHeaderAsync(WzHeader, EmailAddresses);
|
||||||
@@ -166,4 +185,21 @@
|
|||||||
|
|
||||||
Visibility = true;
|
Visibility = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void ScanValue(KeyboardEventArgs obj)
|
||||||
|
{
|
||||||
|
if (obj.Key != "Enter") return;
|
||||||
|
|
||||||
|
LastScannedValue = ScannedValue.Trim();
|
||||||
|
|
||||||
|
if (!ScannedValuesWithItems.ContainsKey(ScannedValues.Replace(" ", "").Trim()) && ScannedValuesWithItems.ContainsKey(LastScannedValue.Replace(" ", "").Trim()))
|
||||||
|
{
|
||||||
|
ScannedValuesWithItems[LastScannedValue] = ScannedValue.Trim();
|
||||||
|
ScannedValues += $"{ScannedValue})\n";
|
||||||
|
}
|
||||||
|
else if(!string.IsNullOrWhiteSpace(ScannedValue))
|
||||||
|
{
|
||||||
|
ScannedValues += $"{ScannedValue}: ";
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user