This commit is contained in:
Frede Hundewadt 2022-11-28 10:37:59 +01:00
parent 232b61949a
commit f4d96ec774
6 changed files with 71 additions and 76 deletions

View file

@ -1,4 +1,5 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/UserDictionary/Words/=Affero/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bestilling/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=kontrolleres/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/UserDictionary/Words/=Venligst/@EntryIndexedValue">True</s:Boolean>

View file

@ -27,7 +27,7 @@
<text>Checker autorisation ...</text>
</Authorizing>
</AuthorizeRouteView>
<FocusOnNavigate RouteData="@routeData" Selector="h1"/>
<FocusOnNavigate RouteData="@routeData" Selector="h2"/>
</Found>
<NotFound>
<LayoutView Layout="@typeof(MainLayout)">

View file

@ -36,12 +36,12 @@ builder.RootComponents.Add<HeadOutlet>("head::after");
builder.Logging.AddConfiguration(builder.Configuration.GetSection("Logging"));
builder.Services.AddScoped(sp =>
sp.GetService<IHttpClientFactory>().CreateClient("InnoAPI"));
sp.GetService<IHttpClientFactory>().CreateClient("backend"));
builder.Services.AddHttpClient("InnoAPI", (sp, cl) =>
builder.Services.AddHttpClient("backend", (sp, cl) =>
{
var apiConfig = sp.GetRequiredService<IOptions<ApiConfig>>();
cl.BaseAddress = new Uri(apiConfig.Value.ApiBaseUrl);
cl.BaseAddress = new Uri(apiConfig.Value.BaseUrl);
cl.DefaultRequestHeaders.CacheControl = CacheControlHeaderValue.Parse("no-cache, no-store, must-revalidate");
cl.DefaultRequestHeaders.Add("Pragma", "no-cache");
cl.EnableIntercept(sp);
@ -49,37 +49,45 @@ builder.Services.AddHttpClient("InnoAPI", (sp, cl) =>
builder.Services.AddBlazoredToast();
builder.Services.AddHttpClientInterceptor();
// api config object
builder.Services.Configure<ApiConfig>(builder.Configuration.GetSection("ApiConfig"));
// app info object
builder.Services.Configure<AppInfo>(builder.Configuration.GetSection("AppInfo"));
builder.Services.AddScoped<ICatalogHttpRepository, CatalogHttpRepository>();
builder.Services.AddScoped<ICrmCompanyHttpRepository, CrmCompanyHttpRepository>();
// crm repositories
builder.Services.AddScoped<ICrmActivityHttpRepository, CrmActivityHttpRepository>();
builder.Services.AddScoped<ICrmCompanyHttpRepository, CrmCompanyHttpRepository>();
builder.Services.AddScoped<ICrmContactHttpRepository, CrmContactHttpRepository>();
builder.Services.AddScoped<ICrmHistoryHttpRepository, CrmHistoryHttpRepository>();
builder.Services.AddScoped<ICrmReportHttpRepository, CrmReportHttpRepository>();
builder.Services.AddScoped<ICrmTaskItemHttpRepository, CrmTaskItemHttpRepository>();
builder.Services.AddScoped<ICrmHistoryHttpRepository, CrmHistoryHttpRepository>();
builder.Services.AddScoped<ICrmWorkplaceHttpRepository, CrmWorkplaceHttpRepository>();
builder.Services.AddScoped<ICrmContactHttpRepository, CrmContactHttpRepository>();
// administrative repositories
builder.Services.AddScoped<IOfficeUserHttpRepository, OfficeUserHttpRepository>();
builder.Services.AddScoped<IOfficeReportHttpRepository, OfficeReportHttpRepository>();
builder.Services.AddScoped<IOfficeCustomerHttpRepository, OfficeCustomerHttpRepository>();
// warehouse repository
builder.Services.AddScoped<IWarehouseHttpRepository, WarehouseHttpRepository>();
// catalog repository
builder.Services.AddScoped<ICatalogHttpRepository, CatalogHttpRepository>();
// mail service
builder.Services.AddScoped<ISendMailService, SendMailService>();
// interceptor
builder.Services.AddScoped<HttpInterceptorService>();
// storage
builder.Services.AddBlazoredLocalStorage();
// authorization
builder.Services.AddAuthorizationCore();
// authentication state provider
builder.Services.AddScoped<AuthenticationStateProvider, AuthStateProvider>();
// authentication service
builder.Services.AddScoped<IAuthenticationService, AuthenticationService>();
// refresh token service
builder.Services.AddScoped<RefreshTokenService>();
// vat registry service
builder.Services.AddScoped<VatInfoLookupService>();
// preference service
builder.Services.AddScoped<PreferenceService>();
// activity draft service
builder.Services.AddScoped<OrderDraftService>();

View file

@ -56,7 +56,7 @@ namespace Wonky.Client.Services
};
var response = await _client
.PostAsync(_apiConfig.Value.Token, new FormUrlEncodedContent(credForm));
.PostAsync(_apiConfig.Value.ServicesAuth, new FormUrlEncodedContent(credForm));
var resContent = await response.Content.ReadAsStringAsync();
@ -91,7 +91,7 @@ namespace Wonky.Client.Services
["grant_type"] = "refresh_token",
["refresh_token"] = refreshToken
};
var response = await _client.PostAsync(_apiConfig.Value.Token, new FormUrlEncodedContent(credentials));
var response = await _client.PostAsync(_apiConfig.Value.ServicesAuth, new FormUrlEncodedContent(credentials));
if (!response.IsSuccessStatusCode)
return string.Empty;

View file

@ -1,13 +1,13 @@
{
"appInfo": {
"name": "Wonky Client",
"version": "0.53.2",
"version": "0.60.1",
"rc": true,
"sandBox": false,
"sandBox": true,
"image": "grumpy-coder.png"
},
"apiConfig": {
"apiBaseUrl": "https://zeta.innotec.dk",
"baseUrl": "https://dev.innotec.dk",
"catalog": "api/v2/catalog",
"crmCustomers": "api/v2/crm/companies",
"crmInventoryExt": "history/inventory",
@ -15,7 +15,7 @@
"crmReports": "api/v2/crm/advisors/reports",
"crmActivities": "api/v2/crm/advisors/activities",
"crmRpcSyncExt": "invoices/sync",
"crmBaseTasks": "api/v2/crm/advisors/tasks",
"crmTasks": "api/v2/crm/advisors/tasks",
"crmWorkplaceExt": "workplaces",
"officeAdvisors": "api/v2/office/users/advisors",
"officeCustomers": "api/v2/office/customers",
@ -28,7 +28,7 @@
"servicesVatDk": "api/v2/services/virk",
"serviceVatEu": "api/v2/services/vies",
"servicesVatNo": "api/v2/services/brReg",
"token": "token",
"servicesAuth": "token",
"userInfo": "api/auth/userinfo",
"warehouse": "api/v2/warehouse/packages"
},

View file

@ -19,42 +19,7 @@ public class ApiConfig
/// <summary>
/// Application base url
/// </summary>
public string ApiBaseUrl { get; set; } = "";
/// <summary>
/// GLS tracking url
/// </summary>
public string ServicesGlsTrackUrl { get; set; } = "";
/// <summary>
/// GLS customer entity
/// </summary>
public string ServicesGlsId { get; set; } = "";
/// <summary>
/// VAT registrar url Denmark
/// </summary>
public string ServicesVatDk { get; set; } = "";
/// <summary>
/// VAT registrar url Norway
/// </summary>
public string ServicesVatNo { get; set; } = "";
/// <summary>
/// VAT registrar url EU
/// </summary>
public string ServicesVatEu { get; set; } = "";
/// <summary>
/// Application uri for token request
/// </summary>
public string Token { get; set; } = "";
/// <summary>
/// Application uri for user information request
/// </summary>
public string UserInfo { get; set; } = "";
public string BaseUrl { get; set; } = "";
/// <summary>
/// Application uri for product catalog request
@ -127,27 +92,48 @@ public class ApiConfig
public string OfficeReports { get; set; } = "";
/// <summary>
/// Uri for warehouse requests
/// Application uri for token request
/// </summary>
public string Warehouse { get; set; } = "";
public string ServicesAuth { get; set; } = "";
/// <summary>
/// GLS tracking url
/// </summary>
public string ServicesGlsTrackUrl { get; set; } = "";
/// <summary>
/// GLS customer entity
/// </summary>
public string ServicesGlsId { get; set; } = "";
/// <summary>
/// url for sending mail message
/// </summary>
public string ServicesMail { get; set; } = "";
// /// <summary>
// /// Application uri for reading salesReports
// /// </summary>
// public string AdminReport { get; set; } = "";
//
// /// <summary>
// /// Application uri for handling external customer login
// /// </summary>
// public string AdminCompany { get; set; } = "";
// public string KrvVariantsUri { get; set; } = "";
// public string KrvProductsUri { get; set; } = "";
// public string ImageUploadUri { get; set; } = "";
// public string UserRegistrationUri { get; set; } = "";
/// <summary>
/// VAT registrar url Denmark
/// </summary>
public string ServicesVatDk { get; set; } = "";
/// <summary>
/// VAT registrar url Norway
/// </summary>
public string ServicesVatNo { get; set; } = "";
/// <summary>
/// VAT registrar url EU
/// </summary>
public string ServicesVatEu { get; set; } = "";
/// <summary>
/// Application uri for user information request
/// </summary>
public string UserInfo { get; set; } = "";
/// <summary>
/// Uri for warehouse requests
/// </summary>
public string Warehouse { get; set; } = "";
}