documentation
This commit is contained in:
parent
fd3d9038e0
commit
666b9b0df3
2 changed files with 37 additions and 9 deletions
|
@ -21,6 +21,10 @@
|
|||
@attribute [Authorize(Roles = "Advisor")]
|
||||
@page "/companies/{CompanyId}"
|
||||
|
||||
@if (Working)
|
||||
{
|
||||
<LoaderThreeDots />
|
||||
}
|
||||
@if (!string.IsNullOrWhiteSpace(Company.Account))
|
||||
{
|
||||
@if (!string.IsNullOrWhiteSpace(Company.Blocked))
|
||||
|
|
|
@ -57,7 +57,7 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
private string VisitState { get; set; } = "the-ugly";
|
||||
private int EnableActivity { get; set; } = 1;
|
||||
private string ActionLink { get; set; } = "";
|
||||
private bool Working { get; set; }
|
||||
private bool Working { get; set; } = true;
|
||||
private bool countryIsDk { get; set; } = true;
|
||||
private List<ContactDto> Contacts { get; set; } = new();
|
||||
private VatLookupDkModal VatLookupPopup { get; set; } = new();
|
||||
|
@ -83,23 +83,27 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
if (Company.Account == "NY" || string.IsNullOrWhiteSpace(Company.Account))
|
||||
EnableActivity = 1;
|
||||
|
||||
// prepare address for lookup
|
||||
if (countryIsDk)
|
||||
CompanyVatAddress = PrepareVatAddress(Company);
|
||||
CompanyVatAddress = PrepareVatAddress(Company);
|
||||
|
||||
// visit interval init
|
||||
if (Company.Interval == 0)
|
||||
Company.Interval = 8;
|
||||
|
||||
// visit date init
|
||||
LastVisit = DateTime.Parse(Company.LastVisit);
|
||||
NextVisit = DateTime.Parse(Company.NextVisit);
|
||||
|
||||
// if not previous visit is registered - force last visit date to 2020
|
||||
if (LastVisit.Year < 2020)
|
||||
LastVisit = DateTime.Parse("2020-01-01");
|
||||
|
||||
// set next visit according to last visit and interval
|
||||
if (!Company.ValidDateSpan())
|
||||
NextVisit = LastVisit.AddDays(Company.Interval * 7);
|
||||
|
||||
// display urgency of next visit
|
||||
VisitState = Utils.GetVisitState($"{NextVisit:yyyy-MM-dd}");
|
||||
// action link passed to activity button component
|
||||
ActionLink = $"/companies/{CompanyId}/activities/new"; // used when drawing visit button
|
||||
// handle company out of business case
|
||||
if(Company.HasFolded == 1)
|
||||
{
|
||||
// this is only used if user has selected to show closed companies
|
||||
|
@ -116,13 +120,22 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
// vat state css class
|
||||
VatState = Company.ValidVat == 1 ? "the-good" : "no-vat"; // assign css class
|
||||
}
|
||||
// initialize form context
|
||||
ErpContext = new EditContext(Company);
|
||||
// assign event handlers
|
||||
ErpContext.OnFieldChanged += HandleFieldChanged;
|
||||
ErpContext.OnValidationStateChanged += ValidationChanged;
|
||||
// ensure crm has been synced with erp
|
||||
await SyncCompanyHistory();
|
||||
// load contacts
|
||||
Contacts = await ContactRepo.GetContacts(CompanyId);
|
||||
// remove loading image
|
||||
Working = false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Change enable activity state
|
||||
/// </summary>
|
||||
private void ForceActivity()
|
||||
{
|
||||
EnableActivity = EnableActivity == 0 ? 1 : 0;
|
||||
|
@ -136,8 +149,7 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
|
||||
private async Task SaveContactCallback(ContactDto contact)
|
||||
{
|
||||
Console.WriteLine(JsonSerializer.Serialize(contact));
|
||||
|
||||
Logger.LogDebug("CompanyView => SaveContactCallback <= {}", JsonSerializer.Serialize(contact));
|
||||
if (string.IsNullOrWhiteSpace(contact.ContactId))
|
||||
{
|
||||
Console.WriteLine("create");
|
||||
|
@ -193,11 +205,14 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
}
|
||||
|
||||
/// <summary>
|
||||
/// Update CRM data (
|
||||
/// Update CRM data
|
||||
/// </summary>
|
||||
/// <returns>true/false</returns>
|
||||
private async Task UpdateCrmData()
|
||||
{
|
||||
if (Working)
|
||||
return;
|
||||
Working = true;
|
||||
Toaster.ShowInfo("Vent venligst ...", "Opdaterer CRM data");
|
||||
Company.LastVisit = $"{LastVisit:yyyy-MM-dd}";
|
||||
Company.NextVisit = $"{NextVisit:yyyy-MM-dd}";
|
||||
|
@ -207,6 +222,7 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
{
|
||||
Company = result;
|
||||
}
|
||||
Working = false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -215,12 +231,17 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
/// <returns></returns>
|
||||
private async Task UpdateErpData()
|
||||
{
|
||||
if (Working)
|
||||
return;
|
||||
Working = true;
|
||||
Toaster.ShowInfo("Vent venligst ...", "Opdaterer Erp data");
|
||||
var result = await CompanyRepo.UpdateErpData(CompanyId, Company);
|
||||
if (!string.IsNullOrWhiteSpace(result.Name))
|
||||
{
|
||||
Company = result;
|
||||
}
|
||||
|
||||
Working = false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
@ -234,12 +255,15 @@ public partial class CrmCompanyViewPage : IDisposable
|
|||
{
|
||||
Toaster.ShowError($"Moms Nummer ugyldigt");
|
||||
}
|
||||
Working = false;
|
||||
Toaster.ShowInfo("Vent venligst ...", "OPDATERER MOMS NUMMER");
|
||||
var result = await CompanyRepo.UpdateCompanyVat(CompanyId, Company.VatNumber);
|
||||
if (!string.IsNullOrWhiteSpace(result.Name))
|
||||
{
|
||||
Company = result;
|
||||
}
|
||||
|
||||
Working = false;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
|
|
Loading…
Reference in a new issue