release v0.8.66 => production
This commit is contained in:
parent
23c492b637
commit
647e37e539
28 changed files with 365 additions and 85 deletions
|
@ -0,0 +1,82 @@
|
|||
@*
|
||||
// Copyright (C) 2022 FCS Frede's Computer Services.
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as
|
||||
// published by the Free Software Foundation, either version 3 of the
|
||||
// License, or (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html]
|
||||
//
|
||||
*@
|
||||
|
||||
@using Wonky.Client.Components;
|
||||
@using Wonky.Client.Helpers;
|
||||
|
||||
@if (Companies.Any())
|
||||
{
|
||||
<div class="list-group list-group-flush">
|
||||
<div class="list-group-item px-3 bg-black text-white opacity-75">
|
||||
<div class="row">
|
||||
<div class="col-sm-1 col-md-1">
|
||||
Besøg
|
||||
</div>
|
||||
<div class="col">
|
||||
Navn
|
||||
</div>
|
||||
<div class="col">
|
||||
Konto
|
||||
</div>
|
||||
<div class="col">
|
||||
Telefon
|
||||
</div>
|
||||
<div class="col">
|
||||
Bynavn
|
||||
</div>
|
||||
<div class="col">
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@foreach (var company in Companies)
|
||||
{
|
||||
<a class=" list-group-item list-group-item-action" href="#">
|
||||
<div class="row align-items-center">
|
||||
<div class="col-sm-1 col-md-1">
|
||||
<DisplayStateComponent StateClass="@(company.HasFolded == 1 ? "the-dead" : Utils.GetVisitState(company.NextVisit))">
|
||||
</DisplayStateComponent>
|
||||
</div>
|
||||
<div class="col">
|
||||
@company.Name
|
||||
</div>
|
||||
<div class="col">
|
||||
@company.Account
|
||||
</div>
|
||||
<div class="col">
|
||||
@company.Phone
|
||||
</div>
|
||||
<div class="col">
|
||||
@company.City
|
||||
</div>
|
||||
<div class="col justify-content-end">
|
||||
<ActivityButton CompanyId="@company.CompanyId"
|
||||
ActionLink="/companies/$ID$/activities/new"
|
||||
ButtonText="Besøg"
|
||||
ButtonType="primary"
|
||||
Enabled="@company.ValidVat">
|
||||
</ActivityButton>
|
||||
</div>
|
||||
</div>
|
||||
</a>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
else
|
||||
{
|
||||
<AppSpinner/>
|
||||
}
|
|
@ -0,0 +1,54 @@
|
|||
|
||||
// Copyright (C) 2022 FCS Frede's Computer Services.
|
||||
// This program is free software: you can redistribute it and/or modify
|
||||
// it under the terms of the GNU Affero General Public License as
|
||||
// published by the Free Software Foundation, either version 3 of the
|
||||
// License, or (at your option) any later version.
|
||||
//
|
||||
// This program is distributed in the hope that it will be useful,
|
||||
// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
// GNU Affero General Public License for more details.
|
||||
//
|
||||
// You should have received a copy of the GNU Affero General Public License
|
||||
// along with this program. If not, see [https://www.gnu.org/licenses/agpl-3.0.en.html]
|
||||
//
|
||||
|
||||
using Blazored.LocalStorage;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
using Wonky.Client.Helpers;
|
||||
using Wonky.Client.Services;
|
||||
using Wonky.Client.Shared;
|
||||
using Wonky.Entity.DTO;
|
||||
using Wonky.Entity.Views;
|
||||
|
||||
namespace Wonky.Client.Components
|
||||
{
|
||||
public partial class AdminAdviserCompanyTableComponent
|
||||
{
|
||||
[Parameter] public List<CompanyDto> Companies { get; set; } = new();
|
||||
[Parameter] public EventCallback<string> OnDelete { get; set; }
|
||||
[Parameter] public EventCallback<string> OnSelect { get; set; }
|
||||
|
||||
private Confirmation _confirmation = new ();
|
||||
private string _companyId = "";
|
||||
private string _actionUrl = "";
|
||||
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
await base.OnInitializedAsync();
|
||||
}
|
||||
|
||||
private void CallConfirmationModal(string companyId)
|
||||
{
|
||||
_companyId = companyId;
|
||||
_confirmation.Show();
|
||||
}
|
||||
|
||||
private async Task DeleteCompany()
|
||||
{
|
||||
_confirmation.Hide();
|
||||
await OnDelete.InvokeAsync(_companyId);
|
||||
}
|
||||
}
|
||||
}
|
|
@ -29,12 +29,6 @@
|
|||
<th scope="col">
|
||||
Email
|
||||
</th>
|
||||
<th scope="col">
|
||||
Land
|
||||
</th>
|
||||
<th scope="col">
|
||||
Nr.
|
||||
</th>
|
||||
<th scope="col">
|
||||
|
||||
</th>
|
||||
|
@ -50,10 +44,9 @@
|
|||
<td>@user.FullName</td>
|
||||
<td>@user.PhoneNumber</td>
|
||||
<td>@user.Email</td>
|
||||
<td class="align-content-center">@user.CountryCode</td>
|
||||
<td>@user.SalesRep</td>
|
||||
<td><a class="btn btn-primary" href="/admin/users/advisers/@user.CountryCode.ToLower()/@user.UserId/reports">Rapporter</a></td>
|
||||
<td><a class="btn btn-info" href="/admin/users/advisers/@user.CountryCode.ToLower()/@user.UserId/view">Rediger</a></td>
|
||||
<td><a class="btn btn-outline-dark" href="/admin/users/advisers/@user.CountryCode.ToLower()/@user.UserId/reports">Rapporter</a></td>
|
||||
<td><a class="btn btn-outline-dark" href="/admin/users/advisers/@user.CountryCode.ToLower()/@user.UserId/companies">Kunder</a></td>
|
||||
<td><a class="btn btn-outline-dark" href="/admin/users/advisers/@user.CountryCode.ToLower()/@user.UserId/view">Rediger</a></td>
|
||||
</tr>
|
||||
}
|
||||
</tbody>
|
||||
|
|
|
@ -80,6 +80,31 @@ public class CompanyHttpRepository : ICompanyHttpRepository
|
|||
return pagingResponse;
|
||||
}
|
||||
|
||||
public async Task<PagingResponse<CompanyDto>> GetAdminAdviserCompaniesPaged(string userId, CompanyPagingParams pagingParameters)
|
||||
{
|
||||
var queryString = new Dictionary<string, string>
|
||||
{
|
||||
["pageNumber"] = pagingParameters.PageNumber.ToString(),
|
||||
["pageSize"] = pagingParameters.PageSize.ToString(),
|
||||
["searchTerm"] = pagingParameters.SearchTerm,
|
||||
["searchColumn"] = pagingParameters.SearchColumn,
|
||||
["orderBy"] = pagingParameters.OrderBy,
|
||||
["isHidden"] = pagingParameters.IsHidden.ToString(),
|
||||
["hasFolded"] = pagingParameters.HasFolded.ToString()
|
||||
};
|
||||
var response = await _client
|
||||
.GetAsync(QueryHelpers.AddQueryString($"{_apiConfig.AdminAdviserUri}/{userId}/companies", queryString));
|
||||
|
||||
var content = await response.Content.ReadAsStringAsync();
|
||||
|
||||
var pagingResponse = new PagingResponse<CompanyDto>
|
||||
{
|
||||
Items = JsonSerializer.Deserialize<List<CompanyDto>>(content, _options),
|
||||
MetaData = JsonSerializer.Deserialize<MetaData>(response.Headers.GetValues("X-Pagination").First(), _options)
|
||||
};
|
||||
return pagingResponse;
|
||||
}
|
||||
|
||||
public async Task<CompanyDto> GetCompanyByAccount(string accountNumber)
|
||||
{
|
||||
var company = await _client.GetFromJsonAsync<CompanyDto>($"{_apiConfig.CompanyUri}/account/{accountNumber}");
|
||||
|
|
|
@ -24,6 +24,7 @@ namespace Wonky.Client.HttpRepository;
|
|||
public interface ICompanyHttpRepository
|
||||
{
|
||||
Task<PagingResponse<CompanyDto>> GetCompaniesPaged(CompanyPagingParams pagingParameters);
|
||||
Task<PagingResponse<CompanyDto>> GetAdminAdviserCompaniesPaged(string userId, CompanyPagingParams pagingParameters);
|
||||
Task<CompanyDto> GetCompanyByAccount(string accountNumber);
|
||||
Task<CompanyDto> GetCompanyById(string companyId);
|
||||
Task<string> CreateCompany(CompanyDto model);
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
<div class="card-header">
|
||||
<div class="row mb-1 align-items-center">
|
||||
<div class="col">
|
||||
<h3 class="workDate">@(string.IsNullOrWhiteSpace(_workDate) ? "" : $"{DateTime.Parse(_workDate).ToLongDateString()}")</h3>
|
||||
<h2 class="workDate">@(string.IsNullOrWhiteSpace(_workDate) ? "" : $"{DateTime.Parse(_workDate).ToLongDateString()}")</h2>
|
||||
</div>
|
||||
<div class="col">
|
||||
<WorkDateComponent OnChanged="GetActivities"></WorkDateComponent>
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="row align-items-md-center">
|
||||
<div class="row align-items-center">
|
||||
<div class="col">
|
||||
<h3 class="workDate">@_workDate.ToLongDateString()</h3>
|
||||
</div>
|
||||
|
|
|
@ -1,10 +1,39 @@
|
|||
@using Wonky.Client.Components
|
||||
@page "/admin/users/advisers/{CountryCode}/{UserId}/companies"
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="card-title">
|
||||
<h3>@_userInfo.FirstName @_userInfo.LastName Kunder</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="sticky-top bg-success bg-opacity-50 rounded-2 px-3">
|
||||
<div class="container-fluid pt-3">
|
||||
<div class="row mb-2">
|
||||
<div class="col-md-3">
|
||||
<CompanySearchColumnComponent OnChanged="SetSearchCol"/>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<SearchPhraseComponent SavedSearch="@_savedSearch" OnChanged="SetSearchPhrase"/>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<CompanySortComponent OnChanged="SetSortCol"/>
|
||||
</div>
|
||||
<div class="col-md-3">
|
||||
<PageSizeComponent OnChanged="SetPageSize"></PageSizeComponent>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row mb-2">
|
||||
<div class="col-md-10">
|
||||
<PaginationComponent MetaData="_metaData" Spread="2" SelectedPage="SelectedPage"></PaginationComponent>
|
||||
</div>
|
||||
<div class="col-md-2 justify-content-end">
|
||||
<a class="btn btn-success" href="/companies/new">Opret kunde</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<CompanyTableComponent Companies="_companyList"></CompanyTableComponent>
|
||||
</div>
|
||||
</div>
|
|
@ -1,21 +1,94 @@
|
|||
using Microsoft.AspNetCore.Components;
|
||||
using Wonky.Client.HttpInterceptors;
|
||||
using Wonky.Client.HttpRepository;
|
||||
using Wonky.Client.Services;
|
||||
using Wonky.Entity.DTO;
|
||||
using Wonky.Entity.Requests;
|
||||
|
||||
namespace Wonky.Client.Pages;
|
||||
|
||||
public partial class AdminAdviserCompanyList
|
||||
public partial class AdminAdviserCompanyList : IDisposable
|
||||
{
|
||||
[Parameter] public string UserId { get; set; } = "";
|
||||
[Parameter] public string CountryCode { get; set; } = "";
|
||||
|
||||
[Inject] private ILogger<ActivityVisitNew> _logger { get; set; }
|
||||
[Inject] private HttpInterceptorService _interceptor { get; set; }
|
||||
[Inject] private UserPreferenceService _userPrefs { get; set; }
|
||||
[Inject] private UserPreferenceService _preferenceService { get; set; }
|
||||
[Inject] private ICompanyHttpRepository _companyRepo { get; set; }
|
||||
[Inject] private IUserHttpRepository _userRepo { get; set; }
|
||||
private MetaData _metaData { get; set; } = new();
|
||||
private CompanyPagingParams _paging = new();
|
||||
private Preferences _preferences { get; set; } = new();
|
||||
private string _savedSearch { get; set; } = "";
|
||||
private UserInfoAdminView _userInfo { get; set; } = new();
|
||||
private List<CompanyDto> _companyList { get; set; } = new();
|
||||
|
||||
private readonly List<CompanyDto> _companyList = new();
|
||||
protected override async Task OnInitializedAsync()
|
||||
{
|
||||
// set preferences
|
||||
_preferences = await _preferenceService.GetPreferences();
|
||||
_paging.OrderBy = _preferences.CompanySort;
|
||||
_paging.SearchColumn = _preferences.CompanySearch;
|
||||
_paging.PageSize = Convert.ToInt32(_preferences.PageSize);
|
||||
|
||||
// load saved search
|
||||
_savedSearch = _preferences.CompanyFilterPhrase;
|
||||
_paging.SearchTerm = _savedSearch;
|
||||
|
||||
_interceptor.RegisterEvent();
|
||||
_interceptor.RegisterBeforeSendEvent();
|
||||
|
||||
_userInfo = await _userRepo.GetAdviserInfo(UserId);
|
||||
// get companies
|
||||
await GetCompanies();
|
||||
}
|
||||
|
||||
private async Task GetCompanies()
|
||||
{
|
||||
var pagingResponse = await _companyRepo.GetAdminAdviserCompaniesPaged(UserId, _paging);
|
||||
_companyList = pagingResponse.Items;
|
||||
_metaData = pagingResponse.MetaData;
|
||||
}
|
||||
|
||||
private async Task SelectedPage(int page)
|
||||
{
|
||||
_companyList = new List<CompanyDto>();
|
||||
_paging.PageNumber = page;
|
||||
await GetCompanies();
|
||||
}
|
||||
|
||||
private async Task SetSearchCol(string searchColumn)
|
||||
{
|
||||
_companyList = new List<CompanyDto>();
|
||||
_paging.SearchColumn = searchColumn;
|
||||
_paging.PageNumber = 1;
|
||||
await GetCompanies();
|
||||
}
|
||||
private async Task SetPageSize(string pageSize)
|
||||
{
|
||||
_companyList = new List<CompanyDto>();
|
||||
_paging.PageSize = Convert.ToInt32(pageSize);
|
||||
_paging.PageNumber = 1;
|
||||
await GetCompanies();
|
||||
}
|
||||
|
||||
private async Task SetSearchPhrase(string searchTerm)
|
||||
{
|
||||
_savedSearch = searchTerm;
|
||||
await _preferenceService.SetCompanyFilterPhrase(searchTerm);
|
||||
_companyList = new List<CompanyDto>();
|
||||
_paging.PageNumber = 1;
|
||||
_paging.SearchTerm = searchTerm;
|
||||
await GetCompanies();
|
||||
}
|
||||
|
||||
private async Task SetSortCol(string orderBy)
|
||||
{
|
||||
_companyList = new List<CompanyDto>();
|
||||
_paging.OrderBy = orderBy;
|
||||
await GetCompanies();
|
||||
}
|
||||
|
||||
public void Dispose() => _interceptor.DisposeEvent();
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
@page "/admin/users/advisers"
|
||||
|
||||
<div class="list-group">
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/advisers/dk">Danmark</a>
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/advisers/no">Norge</a>
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/advisers/se">Sverige</a>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
|
||||
}
|
|
@ -4,7 +4,7 @@
|
|||
@page "/admin/users/advisers/{CountryCode}"
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<h3>Sælgere</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
@attribute [Authorize(Roles = "Admin")]
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<h3>Sælger info</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
@using Wonky.Client.Components
|
||||
@page "/admin/companies"
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="card-title">
|
||||
Kundeliste
|
||||
</div>
|
||||
|
|
|
@ -1,9 +0,0 @@
|
|||
@page "/admin/users/office"
|
||||
|
||||
<div class="list-group">
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/office/dk">Danmark</a>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
|
||||
}
|
|
@ -4,7 +4,7 @@
|
|||
@page "/admin/users/office/{CountryCode}"
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<h3>Admins</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
@attribute [Authorize(Roles = "Admin")]
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<h3>Sælger info</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
@attribute [Authorize(Roles = "Admin")]
|
||||
@page "/admin/users/advisers/{CountryCode}/{UserId}/reports"
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<h3>Rapport Arkiv</h3>
|
||||
|
|
|
@ -23,18 +23,18 @@
|
|||
<PageTitle>@_report.Report.Name</PageTitle>
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="row">
|
||||
<div class="col d-print-none">
|
||||
<div class="col d-print-none justify-content-center">
|
||||
@if (!string.IsNullOrWhiteSpace(ReportDate))
|
||||
{
|
||||
<h3 class="workDate">@DateTime.Parse(ReportDate).ToLongDateString()</h3>
|
||||
<h2 class="workDate">@DateTime.Parse(ReportDate).ToLongDateString()</h2>
|
||||
}
|
||||
</div>
|
||||
<div class="col d-print-none">
|
||||
<div class="col d-print-none justify-content-center">
|
||||
<WorkDateComponent OnChanged="GetReport"></WorkDateComponent>
|
||||
</div>
|
||||
<div class="col d-none d-print-block">
|
||||
<div class="col d-none d-print-block text-end">
|
||||
<h3>@_report.Report.Name</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -23,7 +23,7 @@
|
|||
|
||||
|
||||
<h2>Opret kunde</h2>
|
||||
<table class="table">
|
||||
<table class="table table-striped table-bordered">
|
||||
<thead>
|
||||
<tr>
|
||||
<th colspan="2">Virksomhedsopslag</th>
|
||||
|
|
|
@ -25,7 +25,7 @@
|
|||
@if (!string.IsNullOrWhiteSpace(_company.Name))
|
||||
{
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<h3>@_company.Account - @_company.Name</h3>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
//
|
||||
*@
|
||||
|
||||
@page "/Price-Catalog"
|
||||
@page "/price-catalog"
|
||||
@using Wonky.Client.Components
|
||||
@using Microsoft.AspNetCore.Authorization
|
||||
|
||||
|
|
20
Wonky.Client/Pages/LandingPageAdminAdvisers.razor
Normal file
20
Wonky.Client/Pages/LandingPageAdminAdvisers.razor
Normal file
|
@ -0,0 +1,20 @@
|
|||
@page "/admin/users/advisers"
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="card-title">
|
||||
<h3>Lande</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="list-group list-group-flush">
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/advisers/dk">Danmark</a>
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/advisers/no">Norge</a>
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/advisers/se">Sverige</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
|
||||
}
|
18
Wonky.Client/Pages/LandingPageAdminUsers.razor
Normal file
18
Wonky.Client/Pages/LandingPageAdminUsers.razor
Normal file
|
@ -0,0 +1,18 @@
|
|||
@page "/admin/users/office"
|
||||
|
||||
<div class="card">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="card-title">
|
||||
<h3>Administrative brugere</h3>
|
||||
</div>
|
||||
</div>
|
||||
<div class="card-body">
|
||||
<div class="list-group list-group-flush">
|
||||
<a class="list-group-item list-group-item-action" href="/admin/users/office/dk">Danmark</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@code {
|
||||
|
||||
}
|
|
@ -22,15 +22,15 @@
|
|||
|
||||
<EditForm EditContext="_editContext">
|
||||
<div class="card">
|
||||
<div class="card-header">
|
||||
<div class="card-header bg-dark text-white rounded-2">
|
||||
<div class="row">
|
||||
<div class="col">
|
||||
<div class="h5" style="font-variant: small-caps">@(_workDate.ToLongDateString())</div>
|
||||
<div class="col justify-content-center">
|
||||
<h3 class="workDate">@(_workDate.ToLongDateString())</h3>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="col justify-content-center">
|
||||
<WorkDateComponent OnChanged="SetWorkDate"></WorkDateComponent>
|
||||
</div>
|
||||
<div class="col">
|
||||
<div class="col justify-content-center">
|
||||
@if (_working)
|
||||
{
|
||||
<AppSpinner></AppSpinner>
|
||||
|
|
|
@ -25,16 +25,16 @@
|
|||
<div class="card">
|
||||
<div class="card-header bg-dark text-white">
|
||||
<div class="row">
|
||||
<div class="col d-print-none">
|
||||
<div class="col d-print-none justify-content-center">
|
||||
@if (!string.IsNullOrWhiteSpace(ReportDate))
|
||||
{
|
||||
<h3 class="workDate">@DateTime.Parse(ReportDate).ToLongDateString()</h3>
|
||||
<h2 class="workDate">@DateTime.Parse(ReportDate).ToLongDateString()</h2>
|
||||
}
|
||||
</div>
|
||||
<div class="col d-print-none">
|
||||
<div class="col d-print-none justify-content-center">
|
||||
<WorkDateComponent OnChanged="GetReport"></WorkDateComponent>
|
||||
</div>
|
||||
<div class="col d-none d-print-block">
|
||||
<div class="col d-none d-print-block text-end">
|
||||
<h3>@_report.Report.Name</h3>
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
@ -34,7 +34,7 @@
|
|||
<AuthorizeView>
|
||||
<NotAuthorized>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link ps-2" href="login" Match="NavLinkMatch.All">
|
||||
<NavLink class="nav-link ps-2" href="/login" Match="NavLinkMatch.All">
|
||||
<span class="oi oi-account-login"></span> Log ind
|
||||
</NavLink>
|
||||
</div>
|
||||
|
@ -51,6 +51,11 @@
|
|||
<span class="oi oi-people" aria-hidden="true"></span> Admins
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link ps-2" href="/price-catalog">
|
||||
<span class="oi oi-spreadsheet" aria-hidden="true"></span> Priskatalog
|
||||
</NavLink>
|
||||
</div>
|
||||
</AuthorizeView>
|
||||
<AuthorizeView Roles="Adviser">
|
||||
<Authorized>
|
||||
|
@ -65,23 +70,23 @@
|
|||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link ps-2" href="companies">
|
||||
<NavLink class="nav-link ps-2" href="/companies">
|
||||
<span class="oi oi-file" aria-hidden="true"></span> Firmaer
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link ps-2" href="price-catalog">
|
||||
<NavLink class="nav-link ps-2" href="/price-catalog">
|
||||
<span class="oi oi-spreadsheet" aria-hidden="true"></span> Priskatalog
|
||||
</NavLink>
|
||||
</div>
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link ps-2" href="sales-reports">
|
||||
<NavLink class="nav-link ps-2" href="/sales-reports">
|
||||
<span class="oi oi-document" aria-hidden="true"></span> Dagsrapporter
|
||||
</NavLink>
|
||||
</div>
|
||||
|
||||
<div class="nav-item px-3">
|
||||
<NavLink class="nav-link ps-2" href="info">
|
||||
<NavLink class="nav-link ps-2" href="/info">
|
||||
<span class="oi oi-question-mark" aria-hidden="true"></span> Hjælp
|
||||
</NavLink>
|
||||
</div>
|
||||
|
@ -99,4 +104,5 @@
|
|||
{
|
||||
collapseNavMenu = !collapseNavMenu;
|
||||
}
|
||||
|
||||
}
|
|
@ -1,12 +1,12 @@
|
|||
{
|
||||
"appInfo": {
|
||||
"name": "Wonky Client",
|
||||
"version": "0.8.63",
|
||||
"version": "0.8.66",
|
||||
"isBeta": true,
|
||||
"image": "grumpy-coder.png"
|
||||
},
|
||||
"apiConfig": {
|
||||
"innoBaseUrl": "https://staging.innotec.dk",
|
||||
"innoBaseUrl": "https://app.innotec.dk",
|
||||
"glsTrackUrl": "https://www.gls-group.eu/276-I-PORTAL-WEB/content/GLS/DK01/DA/5004.htm?txtAction=71000&txtRefNo=",
|
||||
"glsId": "",
|
||||
"virkUrl": "api/v2/services/virk",
|
||||
|
|
|
@ -10,7 +10,6 @@ body {
|
|||
height: 48px;
|
||||
}
|
||||
.workDate {
|
||||
font-size: 1.25em;
|
||||
font-variant: small-caps;
|
||||
}
|
||||
/* visit / vat state classes */
|
||||
|
|
Loading…
Reference in a new issue