wip
This commit is contained in:
parent
9c5c698ecf
commit
453a674e03
12 changed files with 55 additions and 30 deletions
|
@ -17,7 +17,7 @@
|
|||
<span class="version">@Name</span> <span class="version">@Version</span>@if(IsBeta){<span class="version">-beta</span>}
|
||||
@code
|
||||
{
|
||||
private const string Version = "0.2.37";
|
||||
private const string Version = "0.2.40";
|
||||
private const string Name = "wwo";
|
||||
private const bool IsBeta = true;
|
||||
}
|
||||
|
|
|
@ -15,8 +15,4 @@
|
|||
//
|
||||
*@
|
||||
|
||||
<PageTitle>Innotec</PageTitle>
|
||||
|
||||
<div class="img-fluid text-center">
|
||||
<img src="wonky-logo.png" alt="Wonky Logo"/>
|
||||
</div>
|
||||
<PageTitle>Innotec Danmark A/S</PageTitle>
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
// along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html]
|
||||
//
|
||||
*@
|
||||
<EditForm EditContext="_editAddress" OnValidSubmit="SubmitForm">
|
||||
<EditForm EditContext="_editContext" OnValidSubmit="SubmitForm">
|
||||
<DataAnnotationsValidator/>
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
|
@ -33,7 +33,7 @@
|
|||
<ValidationMessage For="@(() => Address.ZipCode)" />
|
||||
</div>
|
||||
<div class="col">
|
||||
<button class="btn btn-primary" type="submit" disabled="@_formInvalid">HENT</button>
|
||||
<button class="btn btn-primary" type="submit">HENT</button>
|
||||
</div>
|
||||
</div>
|
||||
</EditForm>
|
|
@ -20,26 +20,27 @@ using Wonky.Client.Models;
|
|||
namespace Wonky.Client.Components;
|
||||
public partial class VatAddressInputComponent : IDisposable
|
||||
{
|
||||
[Parameter] public VatAddress Address { get; set; } = new();
|
||||
private EditContext? _editAddress;
|
||||
[Parameter] public VatAddress Address { get; set; }
|
||||
private EditContext _editContext { get; set; }
|
||||
private bool _formInvalid = true;
|
||||
[Parameter] public EventCallback<VatAddress> OnValidSubmit { get; set; }
|
||||
protected override void OnInitialized()
|
||||
{
|
||||
_editAddress = new EditContext(Address);
|
||||
_editAddress.OnFieldChanged += HandleFieldChanged;
|
||||
_editContext = new EditContext(Address);
|
||||
_editContext.OnFieldChanged += HandleFieldChanged;
|
||||
}
|
||||
|
||||
private async Task SubmitForm()
|
||||
{
|
||||
await OnValidSubmit.InvokeAsync(Address);
|
||||
}
|
||||
private void HandleFieldChanged(object? sender, FieldChangedEventArgs e)
|
||||
{
|
||||
_formInvalid = !_editAddress!.Validate();
|
||||
_formInvalid = !_editContext.Validate();
|
||||
StateHasChanged();
|
||||
}
|
||||
public void Dispose()
|
||||
{
|
||||
_editAddress!.OnFieldChanged -= HandleFieldChanged;
|
||||
_editContext.OnFieldChanged -= HandleFieldChanged;
|
||||
}
|
||||
}
|
|
@ -30,7 +30,7 @@
|
|||
<VatNumberInputComponent OnValidSubmit="GetInfoFromVat"/>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<VatAddressInputComponent OnValidSubmit="GetInfoFromAddress"/>
|
||||
<VatAddressInputComponent Address="vatAddress" OnValidSubmit="GetInfoFromAddress"/>
|
||||
</div>
|
||||
@if (VInfos.Any())
|
||||
{
|
||||
|
|
|
@ -49,6 +49,7 @@ public partial class CompanyUpdate : IDisposable
|
|||
private DateTime NextVisit { get; set; }
|
||||
private string _vatState { get; set; } = "the-ugly";
|
||||
private VatUtils _vatUtils { get; set; }
|
||||
private VatAddress vatAddress = new();
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
|
@ -75,6 +76,14 @@ public partial class CompanyUpdate : IDisposable
|
|||
{
|
||||
_vatState = _vatUtils.ValidateFormat(DtoNgCompany.CountryCode, DtoNgCompany.VatNumber) ? "the-good" : "the-draw";
|
||||
}
|
||||
|
||||
var digits = "123456789".ToCharArray();
|
||||
var pos1 = DtoNgCompany.Address1.IndexOfAny(digits);
|
||||
var pos2 = DtoNgCompany.Address2.IndexOfAny(digits);
|
||||
|
||||
vatAddress.ZipCode = DtoNgCompany.ZipCode;
|
||||
vatAddress.StreetName = pos1 != 0 ? DtoNgCompany.Address1[..pos1] : DtoNgCompany.Address2[..pos2];
|
||||
vatAddress.HouseNumber = pos1 != 0 ? DtoNgCompany.Address1[pos1..] : DtoNgCompany.Address2[pos2..];
|
||||
}
|
||||
|
||||
private async Task Update()
|
||||
|
@ -92,7 +101,7 @@ public partial class CompanyUpdate : IDisposable
|
|||
|
||||
await CompanyRepo.UpdateCompany(DtoNgCompany);
|
||||
|
||||
ToastService.ShowSuccess($"Godt så. Firma '{DtoNgCompany!.Name}' er opdateret.");
|
||||
ToastService.ShowSuccess($"'{DtoNgCompany!.Name}' er opdateret.");
|
||||
Navigation.NavigateTo($"/company/{DtoNgCompany.CompanyId}");
|
||||
}
|
||||
private async Task GetInfoFromVat(string vatNumber)
|
||||
|
|
|
@ -79,7 +79,14 @@
|
|||
<div class="d-flex align-items-end">
|
||||
<a class="btn btn-primary mx-2" href="/companies">Tilbage</a>
|
||||
<a class="btn btn-primary mx-2" href="/company/@DtoNgCompany.CompanyId/update">Rediger</a>
|
||||
<a class="btn btn-primary mx-2" href="/company/@DtoNgCompany.CompanyId/activity">Aktivitet</a>
|
||||
@if (_vatInvalid)
|
||||
{
|
||||
<a type="button" class="btn btn-primary mx-2 disabled" aria-disabled="true">Aktivitet</a>
|
||||
}
|
||||
else
|
||||
{
|
||||
<a type="button" class="btn btn-primary mx-2" href="/company/@DtoNgCompany.CompanyId/activity">Aktivitet</a>
|
||||
}
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -37,7 +37,8 @@ public partial class CompanyView : IDisposable
|
|||
[Parameter] public string CompanyId { get; set; } = "";
|
||||
private DtoNgCompany DtoNgCompany { get; set; } = new ();
|
||||
private string _vatState { get; set; } = "the-dead";
|
||||
private bool _hasFolded { get; set; }
|
||||
private bool _hasFolded;
|
||||
private bool _vatInvalid;
|
||||
private VatUtils _vatUtils { get; set; }
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
|
@ -53,7 +54,8 @@ public partial class CompanyView : IDisposable
|
|||
}
|
||||
else
|
||||
{
|
||||
_vatState = _vatUtils.ValidateFormat(DtoNgCompany.CountryCode, DtoNgCompany.VatNumber) ? "the-good" : "the-draw";
|
||||
_vatInvalid = !_vatUtils.ValidateFormat(DtoNgCompany.CountryCode, DtoNgCompany.VatNumber);
|
||||
_vatState = _vatInvalid ? "the-draw" : "the-good";
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -21,7 +21,6 @@
|
|||
@using Wonky.Client.Components
|
||||
@if (DraftContext != null)
|
||||
{
|
||||
<h2>@_poDraft.Name</h2>
|
||||
<EditForm EditContext="DraftContext" OnValidSubmit="CreateActivity">
|
||||
<DataAnnotationsValidator/>
|
||||
|
||||
|
@ -31,12 +30,13 @@
|
|||
<button class="accordion-button bg-light" type="button"
|
||||
data-bs-toggle="collapse" data-bs-target="#activityBody"
|
||||
aria-expanded="true" aria-controls="activityBody">
|
||||
Aktivitet
|
||||
@_poDraft.Name - @_poDraft.Account
|
||||
</button>
|
||||
</h2>
|
||||
<div id="activityBody" class="accordion-collapse collapse show"
|
||||
aria-labelledby="activityHeader" data-bs-parent="#crmActivity">
|
||||
<div class="accordion-body">
|
||||
@*
|
||||
<div class="row mb-1">
|
||||
<label for="account" class="col-md-2 col-form-label">Konto</label>
|
||||
<div class="col-md-4">
|
||||
|
@ -49,24 +49,28 @@
|
|||
<ValidationMessage For="@(() => _poDraft.SalesRep)"></ValidationMessage>
|
||||
</div>
|
||||
</div>
|
||||
*@
|
||||
|
||||
<div class="row mb-1">
|
||||
<label for="activityType" class="col-md-2 col-form-label">Kontakt</label>
|
||||
<div class="col-md-4">
|
||||
<select id="activityType" class="form-select" @bind-Value="@_poDraft.ActivityTypeEnum" @bind-Value:event="oninput" @onchange="CheckActivity">
|
||||
<option value="" selected>VÆLG</option>
|
||||
<option value="" selected>IKKE VALGT</option>
|
||||
<option value="onSite">Besøg</option>
|
||||
<option value="phone">Telefon</option>
|
||||
</select>
|
||||
<ValidationMessage For="@(() => _poDraft.ActivityTypeEnum)"></ValidationMessage>
|
||||
</div>
|
||||
<label for="statusType" class="col-md-2 col-form-label">Status</label>
|
||||
<div class="col-md-4">
|
||||
<select id="statusType" class="form-select" @bind-Value="@_poDraft.ActivityStatusEnum" @bind-Value:event="oninput" @onchange="CheckStatus">
|
||||
<option value="" selected>VÆLG</option>
|
||||
<option value="order">Ordre</option>
|
||||
<option value="offer">Tilbud</option>
|
||||
<option value="" selected>IKKE VALGT</option>
|
||||
<option value="noSale">Ingen salg</option>
|
||||
<option value="order">Bestilling</option>
|
||||
<option value="quote">Tilbud</option>
|
||||
<option value="canvas">Kanvas</option>
|
||||
</select>
|
||||
<ValidationMessage For="@(() => _poDraft.ActivityStatusEnum)"></ValidationMessage>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
@ -76,7 +80,7 @@
|
|||
<InputText id="vatNumber" class="form-control" @bind-Value="_poDraft.VatNumber"/>
|
||||
<ValidationMessage For="@(() => _poDraft.VatNumber)"></ValidationMessage>
|
||||
</div>
|
||||
<label for="email" class="col-md-2 col-form-label">EMail</label>
|
||||
<label for="email" class="col-md-2 col-form-label">Epost</label>
|
||||
<div class="col-md-4">
|
||||
<InputText id="email" class="form-control" @bind-Value="_poDraft.EMail"/>
|
||||
<ValidationMessage For="@(() => _poDraft.EMail)"></ValidationMessage>
|
||||
|
@ -87,7 +91,7 @@
|
|||
<div class="col-md-4">
|
||||
<InputDate id="activityDate" class="form-control" @bind-Value="@(_draftDate)"/>
|
||||
</div>
|
||||
<label for="checkDate" class="col-md-2 form-check-label">Bekræft dato?</label>
|
||||
<label for="checkDate" class="col-md-2 form-check-label">Dato?</label>
|
||||
<div class="col-md-4">
|
||||
<InputCheckbox id="checkDate" class="form-check-input" @bind-Value="@_poDraft.CheckDate" @onclick="CheckDate"/>
|
||||
</div>
|
||||
|
|
6
Wonky.Client/Pages/CrmReport.razor
Normal file
6
Wonky.Client/Pages/CrmReport.razor
Normal file
|
@ -0,0 +1,6 @@
|
|||
@page "/CrmReport"
|
||||
<h3>CrmReport</h3>
|
||||
|
||||
@code {
|
||||
|
||||
}
|
|
@ -21,7 +21,7 @@
|
|||
<div class="card-header">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<h2>500 - Inter server fejl</h2>
|
||||
<h2>500 - Intern server fejl</h2>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
@ -29,7 +29,7 @@
|
|||
<div class="card-body">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
Der er opstået en fejl - det er alt vi ved.
|
||||
Der er opstået en fejl - det hjælper ikke at prøve igen.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
}
|
||||
},
|
||||
"apiConfig": {
|
||||
"baseAddress": "https://app.innotec.dk",
|
||||
"baseAddress": "https://staging.innotec.dk",
|
||||
"tokenPath": "token",
|
||||
"userInfo": "api/auth/userinfo",
|
||||
"customerEndpoint": "api/v2/crm/companies",
|
||||
|
|
Loading…
Reference in a new issue