merge print button into one

This commit is contained in:
Frede Hundewadt 2023-11-08 17:02:33 +01:00
parent 9b2f1300b3
commit 5ef0f470a9
2 changed files with 19 additions and 15 deletions

View file

@ -24,24 +24,31 @@
<div class="d-print-none">
<div class="row">
<div class="col-sm-1">
<button type="button" class="btn btn-warning d-block" @onclick="@OfficePrint">PRINT</button>
</div>
@if (ReportItem is { Express: true, ProcessStatusEnum: "None" })
{
<AuthorizeView Roles="Admin,Office,Warehouse">
<Authorized>
<div class="col-sm-5">
<button type="button" class="btn btn-warning d-block" @onclick="@SetExpressState" disabled="@IsNotified">Kvitter for modtagelse</button>
<button type="button" class="btn btn-warning d-block"
@onclick="@OfficePrint"
disabled="@IsNotified">
VIS UDSKRIFT kvitterer for modtagelse
</button>
</div>
</Authorized>
</AuthorizeView>
}
else
{
<div class="col-sm-5">
<button type="button" class="btn btn-warning d-block" @onclick="@OfficePrint">VIS UDSKRIFT</button>
</div>
}
</div>
</div>
<ActivityHeaderComponent ReportItem="ReportItem" />
<ActivityLinesComponent ReportItem="ReportItem" />
<ActivityHeaderComponent ReportItem="ReportItem"/>
<ActivityLinesComponent ReportItem="ReportItem"/>
@if (!string.IsNullOrWhiteSpace(ReportItem.OfficeNote))
{

View file

@ -87,22 +87,18 @@ public partial class OfficeOrderViewPage : IDisposable
if (Working)
return;
Working = true;
Logger.LogDebug("GetExpressState => {}", JsonSerializer.Serialize(ReportItem, _options));
// send request to backend
var responseView = await AdvisorActivityRepo.GetExpressState(ReportItem.ActivityId);
Logger.LogDebug("SetExpressState => responseView <= {} ", JsonSerializer.Serialize(responseView));
// get user info from storage
var user = await UserInfoService.GetUserInfo();
// fetch sales rep from response
var salesRep = await UserRepo.GetUserInfo(responseView.Id);
Logger.LogDebug("SetExpressState => salesRep => {}", JsonSerializer.Serialize(salesRep));
// create email notification body
var body = new StringBuilder();
body.AppendLine($"Kvittering for modtagelse af hasteordre {ReportItem.ESalesNumber}");
body.AppendLine($"Konto : {ReportItem.Company.Account}");
body.AppendLine($"Navn : {ReportItem.Company.Name}");
body.AppendLine(
$"Post By : {salesRep.CountryCode.ToUpper()}-{ReportItem.Company.ZipCode} {ReportItem.Company.City}");
body.AppendLine($"Post By : {salesRep.CountryCode.ToUpper()}-{ReportItem.Company.ZipCode} {ReportItem.Company.City}");
body.AppendLine();
body.AppendLine("Med venlig hilsen");
body.AppendLine($"{user.FirstName} {user.LastName}");
@ -131,15 +127,12 @@ public partial class OfficeOrderViewPage : IDisposable
// result notification
if (sendMail.IsSuccess)
{
Toast
.ShowSuccess(
$"Status er opdateret og notifikation sendt til {salesRep.FirstName}.");
Toast.ShowSuccess($"Status er opdateret og notifikation sendt til {salesRep.FirstName}.");
}
else
{
Toast.ShowWarning($"Notifikation til {salesRep.FirstName} kunne ikke sendes. {sendMail.Message}");
}
Logger.LogDebug("SendMail Result => \n {}", JsonSerializer.Serialize(sendMail));
// disable further notifications
IsNotified = true;
Working = false;
@ -147,6 +140,10 @@ public partial class OfficeOrderViewPage : IDisposable
private async Task OfficePrint()
{
if (ReportItem is { Express: true, ProcessStatusEnum: "None"})
{
await SetExpressState();
}
await ProcessRepo.UpdateOrderStatus(new OrderProcessState
{
OrderId = OrderId,