fix kanvas

This commit is contained in:
Frede Hundewadt 2023-08-09 09:44:48 +02:00
parent 61845516af
commit 7b87fa6b88
9 changed files with 305 additions and 283 deletions

View file

@ -85,7 +85,7 @@
</div>
<div class="col-sm-2">
<div class="d-grid mx-auto">
<a class="btn btn-outline-secondary" href="/catalog/item/@product.SalesItemId" >Produkt Info @product.Description</a>
<a class="btn btn-outline-secondary" href="/catalog/item/@product.SalesItemId">Produkt Info @product.Description</a>
</div>
</div>

View file

@ -212,6 +212,8 @@ public partial class AdvisorActivityCreatePage : IDisposable
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (_kanvas)
return;
if (firstRender)
{
if (!_company.Account.StartsWith("NY"))

View file

@ -36,8 +36,14 @@
</div>
</div>
<CustomerInventoryListComponent OnReorderSelected="@OnReorderCallback" CompanyId="@CompanyId" Inventory="@Inventory"/>
<CustomerInventoryReorderOverlay OnSelected="@OnSelectedItem" CompanyId="@CompanyId" SalesItemView="@SalesItem" @ref="@ReorderOverlay"/>
<div class="container">
<CustomerInventoryListComponent OnReorderSelected="@OnReorderCallback"
CompanyId="@CompanyId" Inventory="@Inventory" />
</div>
@* reorder overlay *@
<CustomerInventoryReorderOverlay OnSelected="@OnSelectedItem"
CompanyId="@CompanyId" SalesItemView="@SalesItem" @ref="@ReorderOverlay"/>
@if (Working)
{

View file

@ -34,304 +34,309 @@
</div>
</div>
<div class="col-sm-6 text-end">
@if (_userInfo.CountryCode is "DK")
@if (!_kanvas)
{
<a class="btn btn-secondary btn-sm me-2" href="/advisor/customers/@CompanyId/workplaces/new"><i class="bi-plus-lg"></i> Arbejdssted</a>
@if (_userInfo.CountryCode is "DK")
{
<a class="btn btn-secondary btn-sm me-2" href="/advisor/customers/@CompanyId/workplaces/new"><i class="bi-plus-lg"></i> Arbejdssted</a>
}
@if (_company.Account.StartsWith("NY"))
{
<a type="button" class="btn btn-secondary btn-sm me-2 disabled" aria-disabled="true"><i class="bi-activity"></i> Statistik</a>
}
else
{
<a class="btn btn-secondary btn-sm me-2" href="/advisor/customers/@CompanyId/statistic" disabled="@(_company.Account.StartsWith("NY"))"><i class="bi-activity"></i> Statistik</a>
}
<button class="btn btn-secondary btn-sm me-2" @onclick="@(() => ReloadHistory(true))" disabled="@(_working || _company.Account.StartsWith("NY"))"><i class="bi-repeat"></i> Historik</button>
}
@if (_company.Account.StartsWith("NY"))
{
<a type="button" class="btn btn-secondary btn-sm me-2 disabled" aria-disabled="true"><i class="bi-activity"></i> Statistik</a>
}
else
{
<a class="btn btn-secondary btn-sm me-2" href="/advisor/customers/@CompanyId/statistic" disabled="@(_company.Account.StartsWith("NY"))"><i class="bi-activity"></i> Statistik</a>
}
<button class="btn btn-secondary btn-sm me-2" @onclick="@(() => ReloadHistory(true))" disabled="@(_working || _company.Account.StartsWith("NY"))"><i class="bi-repeat"></i> Historik</button>
<a class="btn btn-primary btn-sm me-2" href="/advisor/customers"><i class="bi-chevron-left"></i> Tilbage</a>
</div>
</div>
// erp context
<EditForm EditContext="_erpFormContext">
<DataAnnotationsValidator/>
<div class="row g-1">
@* Company Name *@
<label for="name" class="col-sm-1 col-form-label-sm">Navn</label>
<div class="col-sm-5">
<InputText id="name" class="form-control" @bind-Value="_company.Name" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Name)"></ValidationMessage>
<DataAnnotationsValidator/>
<div class="row g-1">
@* Company Name *@
<label for="name" class="col-sm-1 col-form-label-sm">Navn</label>
<div class="col-sm-5">
<InputText id="name" class="form-control" @bind-Value="_company.Name" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Name)"></ValidationMessage>
</div>
@* Company Attention *@
<label for="attention" class="col-sm-1 col-form-label-sm">Att.</label>
<div class="col-sm-5">
<InputText id="attention" class="form-control" @bind-Value="_company.Attention" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Attention)"></ValidationMessage>
</div>
@* Address 1 *@
<label for="address1" class="col-sm-1 col-form-label-sm">Adresse</label>
<div class="col-sm-5">
<InputText id="address1" class="form-control" @bind-Value="_company.Address1" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Address1)"></ValidationMessage>
</div>
@* Address 2 *@
<label for="address2" class="col-sm-1 col-form-label-sm">Adresse</label>
<div class="col-sm-5">
<InputText id="address2" class="form-control" @bind-Value="_company.Address2" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Address2)"></ValidationMessage>
</div>
@* Post Code *@
<label for="zipCode" class="col-sm-1 col-form-label-sm">PostNr</label>
<div class="col-sm-1">
<InputText id="zipCode" class="form-control" @bind-Value="_company.ZipCode" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.ZipCode)"></ValidationMessage>
</div>
@* City Name *@
<label for="city" class="col-sm-1 col-form-label-sm">Bynavn</label>
<div class="col-sm-3">
<InputText id="city" class="form-control" @bind-Value="_company.City" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.City)"></ValidationMessage>
</div>
@* Email *@
<label for="email" class="col-sm-1 col-form-label-sm">Epost</label>
<div class="col-sm-5">
<InputText id="email" class="form-control" @bind-Value="_company.Email" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Email)"></ValidationMessage>
</div>
@* Phone *@
<label for="phone" class="col-sm-1 col-form-label-sm">Telefon</label>
<div class="col-sm-2">
<InputText id="phone" class="form-control" @bind-Value="_company.Phone" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Phone)"></ValidationMessage>
</div>
@* Mobile *@
<label for="mobile" class="col-sm-1 col-form-label-sm">Mobil</label>
<div class="col-sm-2">
<InputText id="mobile" class="form-control" @bind-Value="_company.Mobile" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Mobile)"></ValidationMessage>
</div>
@* Email *@
<label for="eanNumber" class="col-sm-1 col-form-label-sm">EAN</label>
<div class="col-sm-5">
<InputText id="eanNumber" class="form-control" @bind-Value="_company.EanNumber" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.EanNumber)"></ValidationMessage>
</div>
@if (!_kanvas)
{
@* entity segment *@
@if (_userInfo.CountryCode.ToLower() == "dk")
{
<label for="segment" class="col-sm-1 col-form-label-sm">Segment</label>
<div class="col-sm-2">
<InputSelect id="segment" class="form-select bg-warning text-bg-warning"
@bind-Value="@_company.Segment" disabled="@(_erpEditDisabled)">
<option value="" disabled>segment</option>
<option value="1">AUTO</option>
<option value="2">INDUSTRI</option>
</InputSelect>
<ValidationMessage For="@(() => _company.Segment)"></ValidationMessage>
</div>
<div class="col-sm-1">
<div class="led-box @(DateTime.Now < DateTime.Parse("2023-12-31") ? "inno-display" : "inno-hidden")">
<div class="led-yellow"></div>
</div>
</div>
}
else
{
<div class="col-sm-4">
@* placeholder *@
</div>
}
@* Enable edit/save *@
<div class="col-sm-2 d-grid mx-auto">
<button type="button" class="btn btn-edit" @onclick="@ToggleErpEdit"><i class="bi-pencil"></i> STAM data</button>
</div>
@* Force enable visit *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-primary d-block" @onclick="@ForceActivity">Aktiver besøg</button>
</div>
@* Save erp data *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-danger d-block" @onclick="@UpdateErpData" disabled="@(_working || _company.Name == "ERROR" || _erpEditDisabled)"><i class="bi-cloud-arrow-up"></i> STAM data </button>
</div>
@* vat number*@
<hr class="mb-3"/>
<label for="vatNumber" class="col-sm-1 col-form-label-sm">ORG nr.</label>
<div class="col-sm-3">
<div class="input-group">
<span class="input-group-text">
<DisplayStateComponent StateClass="@VatState"/>
</span>
<InputText id="vatNumber" class="form-control" @bind-Value="_company.VatNumber" readonly="@(_vatEditDisabled)"/>
<ValidationMessage For="@(() => _company.VatNumber)"></ValidationMessage>
</div>
</div>
@* Enable edit/save vatnumber *@
<div class="col-sm-2 d-grid mx-auto">
<button type="button" class="btn btn-edit" @onclick="@ToggleVatEdit"><i class="bi-pencil"></i> ORG Nr.</button>
</div>
@* vat lookup *@
<div class="col-sm-3 d-grid mx-auto">
@switch (_countryCode)
{
case "dk":
<button type="button" class="btn btn-info" @onclick="@OpenVatLookupModal" disabled="@(_vatEditDisabled)"><i class="bi-search"></i> CVR</button>
break;
case "no":
<a class="btn btn-info" href="https://brreg.no/" target="_blank"><i class="bi-search"></i> brreg.no</a>
break;
case "se":
<a class="btn btn-info" href="https://www.allabolag.se/what/@_company.Name" target="_blank"><i class="bi-search"></i> allabolag.se</a>
break;
}
</div>
@* save vat number *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-warning d-block" @onclick="@UpdateVatNumber" disabled="@(_vatEditDisabled)"><i class="bi-cloud-arrow-up"></i> Moms/Org Nr.</button>
</div>
}
</div>
@* Company Attention *@
<label for="attention" class="col-sm-1 col-form-label-sm">Att.</label>
<div class="col-sm-5">
<InputText id="attention" class="form-control" @bind-Value="_company.Attention" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Attention)"></ValidationMessage>
</div>
@* Address 1 *@
<label for="address1" class="col-sm-1 col-form-label-sm">Adresse</label>
<div class="col-sm-5">
<InputText id="address1" class="form-control" @bind-Value="_company.Address1" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Address1)"></ValidationMessage>
</div>
@* Address 2 *@
<label for="address2" class="col-sm-1 col-form-label-sm">Adresse</label>
<div class="col-sm-5">
<InputText id="address2" class="form-control" @bind-Value="_company.Address2" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Address2)"></ValidationMessage>
</div>
@* Post Code *@
<label for="zipCode" class="col-sm-1 col-form-label-sm">PostNr</label>
<div class="col-sm-1">
<InputText id="zipCode" class="form-control" @bind-Value="_company.ZipCode" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.ZipCode)"></ValidationMessage>
</div>
@* City Name *@
<label for="city" class="col-sm-1 col-form-label-sm">Bynavn</label>
<div class="col-sm-3">
<InputText id="city" class="form-control" @bind-Value="_company.City" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.City)"></ValidationMessage>
</div>
@* Email *@
<label for="email" class="col-sm-1 col-form-label-sm">Epost</label>
<div class="col-sm-5">
<InputText id="email" class="form-control" @bind-Value="_company.Email" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Email)"></ValidationMessage>
</div>
@* Phone *@
<label for="phone" class="col-sm-1 col-form-label-sm">Telefon</label>
<div class="col-sm-2">
<InputText id="phone" class="form-control" @bind-Value="_company.Phone" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Phone)"></ValidationMessage>
</div>
@* Mobile *@
<label for="mobile" class="col-sm-1 col-form-label-sm">Mobil</label>
<div class="col-sm-2">
<InputText id="mobile" class="form-control" @bind-Value="_company.Mobile" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.Mobile)"></ValidationMessage>
</div>
@* Email *@
<label for="eanNumber" class="col-sm-1 col-form-label-sm">EAN</label>
<div class="col-sm-5">
<InputText id="eanNumber" class="form-control" @bind-Value="_company.EanNumber" readonly="@(_erpEditDisabled)"/>
<ValidationMessage For="@(() => _company.EanNumber)"></ValidationMessage>
<hr class="mb-3"/>
@* activity buttons *@
<div class="row mt-3 mb-3">
<div class="col-sm-3">
@if (!_kanvas)
{
<ActionButton ActionLink="@_invoiceLink"
ButtonText="Faktura"
ButtonType="danger"
Enabled="@_enableLink" />
}
</div>
<div class="col-sm-3">
@if (!_kanvas)
{
<ActionButton ActionLink="@_activitiesLink"
ButtonText="Tidl. Besøg"
ButtonType="warning"
Enabled="@_enableLink" />
}
</div>
<div class="col-sm-3">
@if (!_kanvas )
{
<ActionButton ActionLink="@_inventoryLink"
ButtonText="Produkter"
ButtonType="success"
Enabled="@_enableLink" />
}
</div>
<div class="col-sm-3">
<ActionButton ActionLink="@_newActivityLink"
ButtonText="Nyt Besøg"
ButtonType="primary"
Enabled="@_enableActivity">
</ActionButton>
</div>
</div>
@if (!_kanvas)
{
@* entity segment *@
@if (_userInfo.CountryCode.ToLower() == "dk")
{
<label for="segment" class="col-sm-1 col-form-label-sm">Segment</label>
<div class="col-sm-2">
<InputSelect id="segment" class="form-select bg-warning text-bg-warning"
@bind-Value="@_company.Segment" disabled="@(_erpEditDisabled)">
<option value="" disabled>segment</option>
<option value="1">AUTO</option>
<option value="2">INDUSTRI</option>
</InputSelect>
<ValidationMessage For="@(() => _company.Segment)"></ValidationMessage>
</div>
<div class="col-sm-1">
<div class="led-box @(DateTime.Now < DateTime.Parse("2023-12-31") ? "inno-display" : "inno-hidden")">
<div class="led-yellow"></div>
</div>
</div>
}
else
{
<div class="col-sm-4">
@* placeholder *@
</div>
}
@* Enable edit/save *@
<div class="col-sm-2 d-grid mx-auto">
<button type="button" class="btn btn-edit" @onclick="@ToggleErpEdit"><i class="bi-pencil"></i> STAM data</button>
</div>
@* Force enable visit *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-primary d-block" @onclick="@ForceActivity">Aktiver besøg</button>
</div>
@* Save erp data *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-danger d-block" @onclick="@UpdateErpData" disabled="@(_working || _company.Name == "ERROR" || _erpEditDisabled)"><i class="bi-cloud-arrow-up"></i> STAM data </button>
</div>
@* vat number*@
<hr class="mb-3"/>
<label for="vatNumber" class="col-sm-1 col-form-label-sm">ORG nr.</label>
<div class="col-sm-3">
<div class="input-group">
<span class="input-group-text">
<DisplayStateComponent StateClass="@VatState"/>
</span>
<InputText id="vatNumber" class="form-control" @bind-Value="_company.VatNumber" readonly="@(_vatEditDisabled)"/>
<ValidationMessage For="@(() => _company.VatNumber)"></ValidationMessage>
</div>
</div>
@* Enable edit/save vatnumber *@
<div class="col-sm-2 d-grid mx-auto">
<button type="button" class="btn btn-edit" @onclick="@ToggleVatEdit"><i class="bi-pencil"></i> ORG Nr.</button>
</div>
@* vat lookup *@
<div class="col-sm-3 d-grid mx-auto">
@switch (_countryCode)
{
case "dk":
<button type="button" class="btn btn-info" @onclick="@OpenVatLookupModal" disabled="@(_vatEditDisabled)"><i class="bi-search"></i> CVR</button>
break;
case "no":
<a class="btn btn-info" href="https://brreg.no/" target="_blank"><i class="bi-search"></i> brreg.no</a>
break;
case "se":
<a class="btn btn-info" href="https://www.allabolag.se/what/@_company.Name" target="_blank"><i class="bi-search"></i> allabolag.se</a>
break;
}
</div>
@* save vat number *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-warning d-block" @onclick="@UpdateVatNumber" disabled="@(_vatEditDisabled)"><i class="bi-cloud-arrow-up"></i> Moms/Org Nr.</button>
</div>
}
</div>
<hr class="mb-3"/>
@* activity buttons *@
<div class="row mt-3 mb-3">
<div class="col-sm-3">
@if (!_kanvas)
{
<ActionButton ActionLink="@_invoiceLink"
ButtonText="Faktura"
ButtonType="danger"
Enabled="@_enableLink" />
}
</div>
<div class="col-sm-3">
@if (!_kanvas)
{
<ActionButton ActionLink="@_activitiesLink"
ButtonText="Tidl. Besøg"
ButtonType="warning"
Enabled="@_enableLink" />
}
</div>
<div class="col-sm-3">
@if (!_kanvas )
{
<ActionButton ActionLink="@_inventoryLink"
ButtonText="Produkter"
ButtonType="success"
Enabled="@_enableLink" />
}
</div>
<div class="col-sm-3">
<ActionButton ActionLink="@_newActivityLink"
ButtonText="Nyt Besøg"
ButtonType="primary"
Enabled="@_enableActivity">
</ActionButton>
</div>
</div>
@if (!_kanvas)
{
<hr class="mb-3"/>
@* crm context - OBS note *@
<div class="row mb-2">
<label for="note" class="col-sm-1 col-form-label-sm">OBS</label>
<div class="col-sm-8">
@if (string.IsNullOrWhiteSpace(_company.Note))
{
<InputText name="note" id="note" class="form-control" @bind-Value="_company.Note"/>
}
else
{
<InputText name="note" id="note" class="form-control bg-warning text-black" @bind-Value="_company.Note"/>
}
<ValidationMessage For="@(() => _company.Note)"></ValidationMessage>
</div>
@* Save CRM data button *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-warning" disabled="@(_company.Name == "ERROR")" @onclick="@PostCrmData"><i class="bi-cloud-arrow-up"></i> CRM data</button>
</div>
</div>
@* crm context - contacts *@
<div class="row mb-4">
<label for="contacts" class="col-sm-1 col-form-label-sm">Kontakt</label>
<div id="contacts" class="col-sm-11">
<div class="list-group">
<div class="list-group-item list-group-item-action bg-dark text-white" @onclick="@(() => OpenContactPopup(_defaultContact))">
<div class="row">
<div class="col-sm-4">Stilling</div>
<div class="col-sm-4">Navn</div>
<div class="col-sm-3">Direkte</div>
<div class="col-sm-1 text-end">
<i class="bi-plus-circle"></i>
</div>
</div>
</div>
@if (_contacts.Any())
<hr class="mb-3"/>
@* crm context - OBS note *@
<div class="row mb-2">
<label for="note" class="col-sm-1 col-form-label-sm">OBS</label>
<div class="col-sm-8">
@if (string.IsNullOrWhiteSpace(_company.Note))
{
@foreach (var contact in _contacts)
{
<div class="list-group-item list-group-item-action" @onclick="@(() => OpenContactPopup(contact))">
<div class="row g-2">
<div class="col-sm-4">@contact.JobTitle</div>
<div class="col-sm-4">@contact.FirstName @contact.LastName</div>
<div class="col-sm-3">
@contact.PhoneDirect
</div>
<div class="col-sm-1 text-end">
<i class="bi-pencil"></i>
</div>
<InputText name="note" id="note" class="form-control" @bind-Value="_company.Note"/>
}
else
{
<InputText name="note" id="note" class="form-control bg-warning text-black" @bind-Value="_company.Note"/>
}
<ValidationMessage For="@(() => _company.Note)"></ValidationMessage>
</div>
@* Save CRM data button *@
<div class="col-sm-3 d-grid mx-auto">
<button type="button" class="btn btn-warning" disabled="@(_company.Name == "ERROR")" @onclick="@PostCrmData"><i class="bi-cloud-arrow-up"></i> CRM data</button>
</div>
</div>
@* crm context - contacts *@
<div class="row mb-4">
<label for="contacts" class="col-sm-1 col-form-label-sm">Kontakt</label>
<div id="contacts" class="col-sm-11">
<div class="list-group">
<div class="list-group-item list-group-item-action bg-dark text-white" @onclick="@(() => OpenContactPopup(_defaultContact))">
<div class="row">
<div class="col-sm-4">Stilling</div>
<div class="col-sm-4">Navn</div>
<div class="col-sm-3">Direkte</div>
<div class="col-sm-1 text-end">
<i class="bi-plus-circle"></i>
</div>
</div>
</div>
@if (_contacts.Any())
{
@foreach (var contact in _contacts)
{
<div class="list-group-item list-group-item-action" @onclick="@(() => OpenContactPopup(contact))">
<div class="row g-2">
<div class="col-sm-4">@contact.JobTitle</div>
<div class="col-sm-4">@contact.FirstName @contact.LastName</div>
<div class="col-sm-3">
@contact.PhoneDirect
</div>
<div class="col-sm-1 text-end">
<i class="bi-pencil"></i>
</div>
</div>
</div>
}
}
}
</div>
</div>
</div>
</div>
@* crm context - dates and interval *@
<div class="row mb-2">
<label for="nextVisit" class="col-sm-1 col-form-label-sm">Næste besøg</label>
<div class="col-sm-3">
<div class="input-group">
<span class="input-group-text">
<DisplayStateComponent StateClass="@_visitStateCss"/>
</span>
<InputDate id="nextVisit" class="form-control" @bind-Value="@(_nextVisit)"/>
@* crm context - dates and interval *@
<div class="row mb-2">
<label for="nextVisit" class="col-sm-1 col-form-label-sm">Næste besøg</label>
<div class="col-sm-3">
<div class="input-group">
<span class="input-group-text">
<DisplayStateComponent StateClass="@_visitStateCss"/>
</span>
<InputDate id="nextVisit" class="form-control" @bind-Value="@(_nextVisit)"/>
</div>
</div>
<label for="lastVisit" class="col-sm-1 col-form-label-sm">Sidste besøg</label>
<div class="col-sm-3">
<InputDate id="lastVisit" class="form-control" @bind-Value="@_lastVisit"/>
</div>
<label for="interval" class="col-sm-2 col-form-label-sm">Uge Interval</label>
<div class="col-sm-2">
<InputNumber id="interval" class="form-control" @bind-Value="_company.Interval"/>
<ValidationMessage For="@(() => _company.Interval)"></ValidationMessage>
</div>
</div>
<label for="lastVisit" class="col-sm-1 col-form-label-sm">Sidste besøg</label>
<div class="col-sm-3">
<InputDate id="lastVisit" class="form-control" @bind-Value="@_lastVisit"/>
<div class="row mb-2">
<label for="crmNotes" class="col-sm-1 col-form-label-sm">Noter</label>
<div class="col-sm-11">
<InputTextArea id="crmNotes" class="form-control" @bind-Value="_company.CrmNotes"/>
</div>
</div>
<label for="interval" class="col-sm-2 col-form-label-sm">Uge Interval</label>
<div class="col-sm-2">
<InputNumber id="interval" class="form-control" @bind-Value="_company.Interval"/>
<ValidationMessage For="@(() => _company.Interval)"></ValidationMessage>
</div>
</div>
<div class="row mb-2">
<label for="crmNotes" class="col-sm-1 col-form-label-sm">Noter</label>
<div class="col-sm-11">
<InputTextArea id="crmNotes" class="form-control" @bind-Value="_company.CrmNotes"/>
</div>
</div>
}
}
</EditForm>
<hr class="mb-3"/>
<div class="row pt-3 mb-5">
<div class="col-sm-4 d-grid">
<button type="button" class="btn btn-outline-dark" @onclick="@ToggleVisibility">@_toggleButtonText</button>
</div>
<div class="col-sm-4 d-grid">
@if (_userInfo.CountryCode is "DK")
{
<a class="btn btn-info" href="@($"/advisor/customers/{CompanyId}/workplaces")">Kemi Dokumentation</a>
}
</div>
</div>
@if (!_kanvas)
{
<hr class="mb-3"/>
<div class="row pt-3 mb-5">
<div class="col-sm-4 d-grid">
<button type="button" class="btn btn-outline-dark text-dark" @onclick="@ToggleVisibility">@_toggleButtonText</button>
</div>
<div class="col-sm-4 d-grid">
@if (_userInfo.CountryCode is "DK")
{
<a class="btn btn-info" href="@($"/advisor/customers/{CompanyId}/workplaces")">Kemi Dokumentation</a>
}
</div>
</div>
}
}
@if (_working)

View file

@ -142,6 +142,7 @@ public partial class AdvisorCustomerViewEditPage : IDisposable
if (_company.Account.StartsWith("KANVAS"))
{
_kanvas = true;
Navigator.NavigateTo($"/advisor/customers/{CompanyId}/activities/new");
}
/*
* only execute if the InfoDrawer.Company is not KANVAS
@ -222,6 +223,9 @@ public partial class AdvisorCustomerViewEditPage : IDisposable
protected override async Task OnAfterRenderAsync(bool firstRender)
{
if (_kanvas)
return;
if (firstRender)
{
await GetContacts(CompanyId);
@ -236,6 +240,9 @@ public partial class AdvisorCustomerViewEditPage : IDisposable
private async Task ReloadHistory(bool force = false)
{
if (_kanvas)
return;
if (force)
{
Toaster.ShowInfo("Afventer svar fra tjenester ...");

View file

@ -1,7 +1,7 @@
@using Wonky.Client.Components
@using System.Text.Json
@page "/catalog/item/{SalesItemId}"
@page "/advisor/customers/{CustomerId}/history/inventory/{SalesItemId}"
@if (!string.IsNullOrWhiteSpace(_item.Sku))
{

View file

@ -1,7 +1,7 @@
{
"appInfo": {
"name": "Wonky Online",
"version": "208.0",
"version": "211.0",
"rc": true,
"sandBox": true,
"image": "grumpy-coder.png",
@ -15,13 +15,13 @@
},
"Debug": {
"LogLevel": {
"Default": "Critical"
"Default": ""
}
}
},
"apiConfig": {
"assetUrl": "https://files.innotec.dk",
"baseUrl": "https://dev.innotec.dk",
"baseUrl": "https://eta.innotec.dk",
"catalog": "api/v2/catalog/country",
"crmCustomers": "api/v2/crm/companies",
"crmReports": "api/v2/crm/advisors/reports",

View file

@ -26,6 +26,7 @@ public class ProductDetailView
public string PictureLink { get; set; } = "";
public string ProductGroup { get; set; } = "";
public bool Discontinued { get; set; }
public bool OnDemand { get; set; }
public int BoxSize { get; set; }
public List<DocumentView> Documents { get; set; } = new();
}

View file

@ -28,6 +28,7 @@ public class SalesItemView
public string PictureLink { get; set; } = "";
public string Location { get; set; } = "";
public bool Discontinued { get; set; }
public bool OnDemand { get; set; }
public int BoxSize { get; set; }
public List<SalesRateView> Rates { get; set; } = new();
}