diff --git a/TIAM.Database/DataLayers/Admins/AdminDal.cs b/TIAM.Database/DataLayers/Admins/AdminDal.cs index 585af77a..2045cfc0 100644 --- a/TIAM.Database/DataLayers/Admins/AdminDal.cs +++ b/TIAM.Database/DataLayers/Admins/AdminDal.cs @@ -23,6 +23,7 @@ using TIAM.Entities.Transfers; using TIAM.Entities.Users; using TIAM.Models.Dtos.Products; using AyCode.Database.DbSets.Profiles; +using TIAM.Database.DbSets.Drivers; namespace TIAM.Database.DataLayers.Admins { @@ -66,7 +67,7 @@ namespace TIAM.Database.DataLayers.Admins return ctx.UpdateTransfer(transfer); }); - public Task RemoveTransferAsync(Transfer transfer) => TransactionAsync(ctx => ctx.RemoveTransfer(transfer)); + public Task RemoveTransferAsync(Transfer transfer) => RemoveTransferAsync(transfer.Id); public Task RemoveTransferAsync(Guid transferId) => TransactionAsync(ctx => ctx.RemoveTransfer(transferId)); #endregion Transfer @@ -78,40 +79,43 @@ namespace TIAM.Database.DataLayers.Admins public Task AddTransferDestinationAsync(TransferDestination transferDestination) => TransactionAsync(ctx => ctx.AddTransferDestination(transferDestination)); public Task UpdateTransferDestinationAsync(TransferDestination transferDestination) => TransactionAsync(ctx => ctx.UpdateTransferDestination(transferDestination)); - public Task RemoveTransferDestinationAsync(TransferDestination transferDestination, bool removeAddress) => TransactionAsync(ctx => ctx.RemoveTransferDestination(transferDestination.Id, removeAddress)); + public Task RemoveTransferDestinationAsync(TransferDestination transferDestination, bool removeAddress) => RemoveTransferDestinationAsync(transferDestination.Id, removeAddress); public Task RemoveTransferDestinationAsync(Guid transferDestinationId, bool removeAddress) => TransactionAsync(ctx => ctx.RemoveTransferDestination(transferDestinationId, removeAddress)); #endregion TransferDestination #region TransferToDriver - public Task GetTransferToDriverByIdAsync(Guid transferToDriverId, bool autoInclude = false) => SessionAsync(ctx => ctx.TransferToDrivers.FirstOrDefault(x=>x.Id == transferToDriverId)); - public Task> GetTransferToDriversByTransferIdAsync(Guid transferId, bool autoInclude = false) => SessionAsync(ctx => ctx.TransferToDrivers.Where(x => x.TransferId == transferId).ToList()); + public Task GetTransferToDriverByIdAsync(Guid transferToDriverId, bool autoInclude = true) => SessionAsync(ctx => ctx.GetTransferToDriverById(transferToDriverId, autoInclude)); + public Task> GetTransferToDriversByTransferIdAsync(Guid transferId, bool autoInclude = true) => SessionAsync(ctx => ctx.GetTransferToDriversByTransferId(transferId, autoInclude).ToList()); - public Task AddTransferToDriverAsync(TransferToDriver transferToDriver) => TransactionAsync(ctx => ctx.TransferToDrivers.Add(transferToDriver).State == EntityState.Added); + public Task AddTransferToDriverAsync(TransferToDriver transferToDriver) => TransactionAsync(ctx => ctx.AddTransferToDriver(transferToDriver)); public async Task UpdateTransferToDriverAsync(TransferToDriver transferToDriver) { var transferToDriverId = transferToDriver.Id; + TransferToDriver transferToDriver2 = null!; + var result = await TransactionAsync(ctx => { - var transferToDriver2 = ctx.TransferToDrivers.FirstOrDefault(x => x.Id == transferToDriverId)!; + transferToDriver2 = ctx.TransferToDrivers.FirstOrDefault(x => x.Id == transferToDriverId)!; transferToDriver2.CarId = transferToDriver.CarId; transferToDriver2.LicencePlate = transferToDriver.LicencePlate; transferToDriver2.UserProductMappingId = transferToDriver.UserProductMappingId; transferToDriver2.TransferId = transferToDriver.TransferId; + transferToDriver2.Price = transferToDriver.Price; return ctx.TransferToDrivers.Update(transferToDriver2).State == EntityState.Modified; }); - return result ? transferToDriver : null; + return result ? transferToDriver2 : null; } - public Task RemoveTransferToDriverAsync(TransferToDriver transferToDriver) => TransactionAsync(ctx => ctx.TransferToDrivers.Remove(transferToDriver).State == EntityState.Deleted); + public Task RemoveTransferToDriverAsync(TransferToDriver transferToDriver) => TransactionAsync(ctx => ctx.RemoveTransferToDriver(transferToDriver.Id)); #endregion TransferToDriver #region Drivers - - public Task> GetTAllDrivers() => SessionAsync(ctx => ctx.UserProductMappings.Where(x => ctx.Cars.Any(car => car.UserProductMappingId == x.Id)).ToList()); - public Task> GetTAllDriversByProductId(Guid productId) => SessionAsync(ctx => ctx.UserProductMappings.Where(x => x.ProductId == productId && ctx.Cars.Any(car => car.UserProductMappingId == x.Id)).ToList()); + public Task> GetAllDriversAsync(bool autoInclude = true) => SessionAsync(ctx => ctx.GetAllDrivers(autoInclude).ToList()); + public Task> GetAllDriversByProductIdAsync(Guid productId, bool autoInclude = true) => SessionAsync(ctx => ctx.GetAllDriversByProductId(productId, autoInclude).ToList()); #endregion Drivers + #region TransferDestinationToProduct public TransferDestinationToProduct? GetTransferDestinationToProductById(Guid transferDestinationToProductId) => Session(ctx=>ctx.GetTransferDestinationToProductById(transferDestinationToProductId)); public Task GetTransferDestinationToProductByIdAsync(Guid transferDestinationToProductId) => SessionAsync(ctx=>ctx.GetTransferDestinationToProductById(transferDestinationToProductId)); @@ -125,7 +129,7 @@ namespace TIAM.Database.DataLayers.Admins public Task AddTransferDestinationToProductAsync(TransferDestinationToProduct transferDestinationToProduct) => TransactionAsync(ctx => ctx.AddTransferDestinationToProduct(transferDestinationToProduct)); public Task UpdateTransferDestinationToProductAsync(TransferDestinationToProduct transferDestinationToProduct) => TransactionAsync(ctx => ctx.UpdateTransferDestinationToProduct(transferDestinationToProduct)); - public Task RemoveTransferDestinationToProductAsync(TransferDestinationToProduct transferDestinationToProduct) => TransactionAsync(ctx => ctx.RemoveTransferDestinationToProduct(transferDestinationToProduct.Id)); + public Task RemoveTransferDestinationToProductAsync(TransferDestinationToProduct transferDestinationToProduct) => RemoveTransferDestinationToProductAsync(transferDestinationToProduct.Id); public Task RemoveTransferDestinationToProductAsync(Guid transferDestinationToProductId) => TransactionAsync(ctx => ctx.RemoveTransferDestinationToProduct(transferDestinationToProductId)); #endregion TransferDestinationToProduct @@ -158,7 +162,7 @@ namespace TIAM.Database.DataLayers.Admins public Task AddProductAsync(Product product) => TransactionAsync(ctx => ctx.AddProduct(product)); public Task UpdateProductAsync(Product product) => TransactionAsync(ctx => ctx.UpdateProduct(product)); - //public Task RemoveProductAsync(Product product) => TransactionAsync(ctx => ctx.RemoveProduct(product.Id)); + public Task RemoveProductAsync(Product product) => RemoveProductAsync(product.Id); public Task RemoveProductAsync(Guid productId) => TransactionAsync(ctx => ctx.RemoveProduct(productId)); public UserProductMapping? GetUserProductMappingById(Guid userProductMappingId, bool autoInclude = true) => Session(ctx => ctx.GetUserProductMappingById(userProductMappingId, autoInclude)); @@ -217,9 +221,7 @@ namespace TIAM.Database.DataLayers.Admins } public Task RemoveUserProductMappingAsync(Guid userProductMappingId) => TransactionAsync(ctx => ctx.RemoveUserProductMapping(userProductMappingId)); - - public Task RemoveUserProductMappingAsync(Guid userId, Guid productId) - => TransactionAsync(ctx => ctx.RemoveUserProductMapping(userId, productId)); + public Task RemoveUserProductMappingAsync(Guid userId, Guid productId) => TransactionAsync(ctx => ctx.RemoveUserProductMapping(userId, productId)); #endregion UserProductMapping diff --git a/TIAM.Database/DbContexts/Admins/IAdminDbContext.cs b/TIAM.Database/DbContexts/Admins/IAdminDbContext.cs index 0aa15e51..f3884e5c 100644 --- a/TIAM.Database/DbContexts/Admins/IAdminDbContext.cs +++ b/TIAM.Database/DbContexts/Admins/IAdminDbContext.cs @@ -1,4 +1,5 @@ using AyCode.Database.DbContexts.Users; +using TIAM.Database.DbSets.Drivers; using TIAM.Database.DbSets.Emails; using TIAM.Database.DbSets.Permissions; using TIAM.Database.DbSets.Products; @@ -14,7 +15,7 @@ using TIAM.Entities.Users; namespace TIAM.Database.DbContexts.Admins; public interface IAdminDbContext : - ICompanyDbSet, IProductDbSet, IUserProductMappingDbSet, + ICompanyDbSet, IProductDbSet, IDriverDbSet, IAcUserDbContextBase, IPermissionsDbSetContext, ITransferDestinationDbSet, ITransferDbSet, IEmailMessageDbSet { diff --git a/TIAM.Database/DbContexts/Users/UserDbContext.cs b/TIAM.Database/DbContexts/Users/UserDbContext.cs index e00d5536..4a5f0f55 100644 --- a/TIAM.Database/DbContexts/Users/UserDbContext.cs +++ b/TIAM.Database/DbContexts/Users/UserDbContext.cs @@ -24,6 +24,8 @@ namespace TIAM.Database.DbContexts.Users public DbSet Companies { get; set; } public DbSet Transfers { get; set; } + public DbSet TransferToDrivers { get; set; } + public DbSet TransferDestinationToProducts { get; set; } public DbSet TransferDestinations { get; set; } @@ -86,6 +88,5 @@ namespace TIAM.Database.DbContexts.Users // //builderUserProductJsonDetail.OwnsMany(userProductJsonDetail => userProductJsonDetail.Cars2); // }); } - } } diff --git a/TIAM.Database/DbSets/Cars/ICarDbSet.cs b/TIAM.Database/DbSets/Cars/ICarDbSet.cs new file mode 100644 index 00000000..ad3e973a --- /dev/null +++ b/TIAM.Database/DbSets/Cars/ICarDbSet.cs @@ -0,0 +1,9 @@ +using Microsoft.EntityFrameworkCore; +using TIAM.Entities.Drivers; + +namespace TIAM.Database.DbSets.Cars; + +public interface ICarDbSet +{ + public DbSet Cars { get; set; } +} \ No newline at end of file diff --git a/TIAM.Database/DbSets/Drivers/DriverDbSetExtensions.cs b/TIAM.Database/DbSets/Drivers/DriverDbSetExtensions.cs new file mode 100644 index 00000000..4c31cc85 --- /dev/null +++ b/TIAM.Database/DbSets/Drivers/DriverDbSetExtensions.cs @@ -0,0 +1,18 @@ +using AyCode.Core.Extensions; +using Microsoft.EntityFrameworkCore; +using TIAM.Database.DbSets.Transfers; +using TIAM.Database.DbSets.Users; +using TIAM.Entities.Drivers; +using TIAM.Entities.Transfers; +using TIAM.Entities.Users; + +namespace TIAM.Database.DbSets.Drivers; + +public static class DriverDbSetExtensions +{ + public static IQueryable GetAllDrivers(this IDriverDbSet ctx, bool autoInclude = true) + => ctx.UserProductMappingsWithRelations(autoInclude).Where(x => ctx.Cars.Any(car => car.UserProductMappingId == x.Id)); + + public static IQueryable GetAllDriversByProductId(this IDriverDbSet ctx, Guid productId, bool autoInclude = true) + => ctx.GetAllDrivers(autoInclude).Where(x => x.ProductId == productId); +} \ No newline at end of file diff --git a/TIAM.Database/DbSets/Drivers/IDriverDbSet.cs b/TIAM.Database/DbSets/Drivers/IDriverDbSet.cs new file mode 100644 index 00000000..a5881652 --- /dev/null +++ b/TIAM.Database/DbSets/Drivers/IDriverDbSet.cs @@ -0,0 +1,9 @@ +using TIAM.Database.DbSets.Cars; +using TIAM.Database.DbSets.Transfers; +using TIAM.Database.DbSets.Users; +using TIAM.Entities.Users; + +namespace TIAM.Database.DbSets.Drivers; + +public interface IDriverDbSet : IUserProductMappingDbSet, ICarDbSet, ITransferToDriverDbSet, ITransferDbSet +{ } \ No newline at end of file diff --git a/TIAM.Database/DbSets/Transfers/ITransferDbSet.cs b/TIAM.Database/DbSets/Transfers/ITransferDbSet.cs index 013f3356..41d947d3 100644 --- a/TIAM.Database/DbSets/Transfers/ITransferDbSet.cs +++ b/TIAM.Database/DbSets/Transfers/ITransferDbSet.cs @@ -3,7 +3,7 @@ using TIAM.Entities.Transfers; namespace TIAM.Database.DbSets.Transfers; -public interface ITransferDbSet +public interface ITransferDbSet : ITransferToDriverDbSet { public DbSet Transfers { get; set; } } \ No newline at end of file diff --git a/TIAM.Database/DbSets/Transfers/ITransferToDriverDbSet.cs b/TIAM.Database/DbSets/Transfers/ITransferToDriverDbSet.cs new file mode 100644 index 00000000..6cca1a83 --- /dev/null +++ b/TIAM.Database/DbSets/Transfers/ITransferToDriverDbSet.cs @@ -0,0 +1,9 @@ +using Microsoft.EntityFrameworkCore; +using TIAM.Entities.Transfers; + +namespace TIAM.Database.DbSets.Transfers; + +public interface ITransferToDriverDbSet +{ + public DbSet TransferToDrivers { get; set; } +} \ No newline at end of file diff --git a/TIAM.Database/DbSets/Transfers/TransferDbSetExtensions.cs b/TIAM.Database/DbSets/Transfers/TransferDbSetExtensions.cs index 0d396706..9d784d40 100644 --- a/TIAM.Database/DbSets/Transfers/TransferDbSetExtensions.cs +++ b/TIAM.Database/DbSets/Transfers/TransferDbSetExtensions.cs @@ -13,8 +13,12 @@ public static class TransferDbSetExtensions public static bool UpdateTransfer(this ITransferDbSet ctx, Transfer transfer) => ctx.Transfers.Update(transfer).State == EntityState.Modified; - public static bool RemoveTransfer(this ITransferDbSet ctx, Transfer transfer) - => ctx.Transfers.Remove(transfer).State == EntityState.Deleted; + private static bool RemoveTransfer(this ITransferDbSet ctx, Transfer transfer) + { + ctx.TransferToDrivers.RemoveRange(ctx.TransferToDrivers.Where(x => x.TransferId == transfer.Id)); + + return ctx.Transfers.Remove(transfer).State == EntityState.Deleted; + } public static bool RemoveTransfer(this ITransferDbSet ctx, Guid transferId) { diff --git a/TIAM.Database/DbSets/Transfers/TransferToDriverDbSetExtensions.cs b/TIAM.Database/DbSets/Transfers/TransferToDriverDbSetExtensions.cs new file mode 100644 index 00000000..d89e6acc --- /dev/null +++ b/TIAM.Database/DbSets/Transfers/TransferToDriverDbSetExtensions.cs @@ -0,0 +1,40 @@ +using Microsoft.EntityFrameworkCore; +using TIAM.Core.Enums; +using TIAM.Database.DbSets.Drivers; +using TIAM.Database.DbSets.Users; +using TIAM.Entities.Transfers; +using TIAM.Entities.Users; + +namespace TIAM.Database.DbSets.Transfers; + +public static class TransferToDriverDbSetExtensions +{ + #region TransferToDriver + public static TransferToDriver? GetTransferToDriverById(this ITransferToDriverDbSet ctx, Guid transferToDriverId, bool autoInclude = true) + => ctx.TransferToDrivers.FirstOrDefault(x => x.Id == transferToDriverId); + + public static IQueryable GetTransferToDriversByTransferId(this ITransferToDriverDbSet ctx, Guid transferId, bool autoInclude = true) + => ctx.TransferToDrivers.Where(x => x.TransferId == transferId); + + public static bool AddTransferToDriver(this ITransferDbSet ctx, TransferToDriver transferToDriver) + { + var transfer = ctx.GetTransferById(transferToDriver.TransferId)!; + transfer.TransferStatusType = TransferStatusType.AssignedToDriver; + + return ctx.TransferToDrivers.Add(transferToDriver).State == EntityState.Added; + } + + private static bool RemoveTransferToDriver(this ITransferDbSet ctx, TransferToDriver transferToDriver) + { + //TODO: TransferStatusType change, ha nincs sofőr a törlés után! - J. + return ctx.TransferToDrivers.Remove(transferToDriver).State == EntityState.Deleted; + } + + public static bool RemoveTransferToDriver(this ITransferDbSet ctx, Guid transferToDriverId) + { + var transferToDriver = ctx.GetTransferToDriverById(transferToDriverId); + return transferToDriver == null || ctx.RemoveTransferToDriver(transferToDriver); + } + + #endregion TransferToDriver +} \ No newline at end of file diff --git a/TIAM.Database/DbSets/Users/UserProductMappingDbSetExtensions.cs b/TIAM.Database/DbSets/Users/UserProductMappingDbSetExtensions.cs index 25be5147..e4b79ae3 100644 --- a/TIAM.Database/DbSets/Users/UserProductMappingDbSetExtensions.cs +++ b/TIAM.Database/DbSets/Users/UserProductMappingDbSetExtensions.cs @@ -25,7 +25,6 @@ public static class UserProductMappingDbSetExtensions public static IQueryable GetUserProductMappingsByProductId(this IUserProductMappingDbSet ctx, Guid productId, bool autoInclude = true) => ctx.UserProductMappingsWithRelations(autoInclude).Where(x => x.ProductId == productId); - public static bool AddUserProductMapping(this IUserProductMappingDbSet ctx, UserProductMapping userProductMapping) { if (userProductMapping.UserId.IsNullOrEmpty() || userProductMapping.ProductId.IsNullOrEmpty() || userProductMapping.Permissions < 0) diff --git a/TIAM.Models/Dtos/Users/UserModelDto.cs b/TIAM.Models/Dtos/Users/UserModelDto.cs index c7bc73f1..c50d7bd3 100644 --- a/TIAM.Models/Dtos/Users/UserModelDto.cs +++ b/TIAM.Models/Dtos/Users/UserModelDto.cs @@ -1,4 +1,6 @@ -using AyCode.Interfaces; +using System.ComponentModel.DataAnnotations.Schema; +using System.Text.Json.Serialization; +using AyCode.Interfaces; using AyCode.Models.Users; using TIAM.Entities.Products; using TIAM.Entities.Profiles; @@ -7,11 +9,20 @@ using TIAM.Entities.Users; namespace TIAM.Models.Dtos.Users; -public class UserModelDto : AcUserModelDtoBase, IProductsRelation, IUserModelDtoMinBase, IAcModelDtoBase +public class UserModelDto : AcUserModelDtoBase, IProductsRelation, IUserModelDtoMinBase, IAcModelDtoBase, IProfileForeignKey { public List UserProductMappings { get; set; } public List Products { get; set; } + [NotMapped] + [JsonIgnore] + [Newtonsoft.Json.JsonIgnore] + public Guid ProfileId + { + get => ProfileDto.Id; + set => ProfileDto.Id = value; + } + public UserModelDto(){} public UserModelDto(User user) : base(user) { diff --git a/TIAM.Models/Dtos/Users/UserModelDtoDetail.cs b/TIAM.Models/Dtos/Users/UserModelDtoDetail.cs index c384f334..81492896 100644 --- a/TIAM.Models/Dtos/Users/UserModelDtoDetail.cs +++ b/TIAM.Models/Dtos/Users/UserModelDtoDetail.cs @@ -1,4 +1,7 @@ -using AyCode.Models.Users; +using System.ComponentModel.DataAnnotations.Schema; +using System.Text.Json.Serialization; +using AyCode.Interfaces.TimeStampInfo; +using AyCode.Models.Users; using TIAM.Entities.Addresses; using TIAM.Entities.Products; using TIAM.Entities.Profiles; @@ -9,15 +12,18 @@ namespace TIAM.Models.Dtos.Users { public class UserModelDtoDetail : AcUserModelDtoDetailBase, IProductsRelation, IUserModelDtoMinBase, IProfileForeignKey { + public List UserProductMappings { get; set; } + public List Products { get; set; } + + [NotMapped] + [JsonIgnore] + [Newtonsoft.Json.JsonIgnore] public Guid ProfileId { get => ProfileDto.Id; - set {} + set => ProfileDto.Id = value; } - public List UserProductMappings { get; set; } - public List Products { get; set; } - public UserModelDtoDetail() { } diff --git a/TIAMSharedUI/Pages/User/SysAdmins/AddressDetailGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/AddressDetailGridComponent.razor index 9962f20d..667a28e5 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/AddressDetailGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/AddressDetailGridComponent.razor @@ -35,13 +35,14 @@ DetailExpandButtonDisplayMode="DetailExpandButtonDisplayMode"> - + - + + @{ diff --git a/TIAMSharedUI/Pages/User/SysAdmins/AddressGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/AddressGridComponent.razor index e86b6c57..9872a465 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/AddressGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/AddressGridComponent.razor @@ -14,28 +14,28 @@ @using AyCode.Core @inject IServiceProviderDataService serviceProviderDataService @inject IUserDataService userDataService -@inject ITransferDataService transferDataService +@inject ITransferDataService transferDataService @inject IEnumerable LogWriters + PageSize="5" + ValidationEnabled="false" + CustomizeEditModel="CustomizeEditModel" + EditMode="GridEditMode.EditForm" + ColumnResizeMode="GridColumnResizeMode.NextColumn" + ShowFilterRow="true"> - - - - - + + + + + @{ Address bleh = (Address)context.EditModel; @@ -47,8 +47,8 @@ @code { - [Parameter]public object AddressContext { get; set; } - [Parameter]public string ContextIdType { get; set; } + [Parameter] public object AddressContext { get; set; } + [Parameter] public string ContextIdType { get; set; } IGrid Grid { get; set; } List _detailGridData = new List
(); @@ -59,23 +59,23 @@ public void SaveAddress(object addressOwnerToSave) { - + Grid.SaveChangesAsync(); - + } protected override async Task OnInitializedAsync() { Address myAddress = new Address(); - + _logger = new LoggerClient(LogWriters.ToArray()); - if(ContextIdType == null) + if (ContextIdType == null) { //get all profiles from DB } else - { + { switch (ContextIdType) { case ("userprofile"): @@ -104,13 +104,13 @@ break; case ("transferdestination"): //get address for transferDestination - TransferDestination resultData5 = (TransferDestination)AddressContext; + TransferDestination resultData5 = (TransferDestination)AddressContext; if (resultData5.Address != null) _detailGridData.Add(resultData5.Address); break; - + } - } + } _logger.Info($"DetailGridData: {_detailGridData.Count}"); } diff --git a/TIAMSharedUI/Pages/User/SysAdmins/CarDetailGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/CarDetailGridComponent.razor index 449320c1..5d0aea89 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/CarDetailGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/CarDetailGridComponent.razor @@ -45,6 +45,8 @@ + + @{ diff --git a/TIAMSharedUI/Pages/User/SysAdmins/CarGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/CarGridComponent.razor index 75dd745e..e70e6d19 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/CarGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/CarGridComponent.razor @@ -44,6 +44,8 @@ + + @{ diff --git a/TIAMSharedUI/Pages/User/SysAdmins/CompaniesNestedUserProductMapping.razor b/TIAMSharedUI/Pages/User/SysAdmins/CompaniesNestedUserProductMapping.razor index a3825a5d..815345f6 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/CompaniesNestedUserProductMapping.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/CompaniesNestedUserProductMapping.razor @@ -25,6 +25,8 @@ + + @* *@ diff --git a/TIAMSharedUI/Pages/User/SysAdmins/DriverGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/DriverGridComponent.razor index d818974f..76791779 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/DriverGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/DriverGridComponent.razor @@ -42,7 +42,9 @@

User not found, type another email please

- + + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ManageServiceProviders.razor b/TIAMSharedUI/Pages/User/SysAdmins/ManageServiceProviders.razor index 9ced0c36..ba0e4e67 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ManageServiceProviders.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ManageServiceProviders.razor @@ -115,8 +115,8 @@
- - + + @* *@ diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor b/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor index 9517bbcb..ee196f41 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ManageTransfers.razor @@ -93,6 +93,7 @@ EditMode="GridEditMode.EditForm" ColumnResizeMode="GridColumnResizeMode.NextColumn" AllowSelectRowByClick="false" + PageSize="13" ShowFilterRow="true"> @@ -137,6 +138,7 @@ } + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ManageUsers.razor b/TIAMSharedUI/Pages/User/SysAdmins/ManageUsers.razor index 89e11fda..bd6392d8 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ManageUsers.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ManageUsers.razor @@ -71,28 +71,34 @@ DataItemDeleting="Grid_DataItemDeleting" EditMode="GridEditMode.EditForm" ColumnResizeMode="GridColumnResizeMode.NextColumn" + PageSize="15" + TextWrapEnabled = "false" + AllowSelectRowByClick = "true" + HighlightRowOnHover = "true" + AutoCollapseDetailRow = "true" + AutoExpandAllGroupRows = "false" ShowFilterRow="true"> - - - - - - - - - - + + + + + + + + @{ var keyField = context.Value; var keyItem = (UserModelDtoDetail)context.DataItem; - var buttonText = "Contact"; - + var buttonText = "Contact"; + } + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/MessageDetailGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/MessageDetailGridComponent.razor index d68a8750..55d18b44 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/MessageDetailGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/MessageDetailGridComponent.razor @@ -39,8 +39,8 @@ @System.Text.RegularExpressions.Regex.Replace((displayTextContext.Value as string)!, "<(.|\n)*?>", string.Empty) - - + + @{ diff --git a/TIAMSharedUI/Pages/User/SysAdmins/MessageGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/MessageGridComponent.razor index 53b98ef8..4bd24fda 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/MessageGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/MessageGridComponent.razor @@ -14,6 +14,7 @@ @using TIAMWebApp.Shared.Application.Services @using AyCode.Interfaces.Addresses @using TIAM.Entities.Emails +@using AyCode.Core @inject IServiceProviderDataService serviceProviderDataService @inject IUserDataService userDataService @inject ITransferDataService transferDataService @@ -30,16 +31,17 @@ ColumnResizeMode="GridColumnResizeMode.NextColumn" ShowFilterRow="false"> - - + + - - - + + + + @{ @(((EmailMessage)context.DataItem).Text) diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ProductDetailGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/ProductDetailGridComponent.razor index 700ca7b2..17b6eb23 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ProductDetailGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ProductDetailGridComponent.razor @@ -45,6 +45,8 @@ + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ProductGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/ProductGridComponent.razor index 5e90bc41..fcc59ace 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ProductGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ProductGridComponent.razor @@ -42,6 +42,8 @@ + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ProfileGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/ProfileGridComponent.razor index f8293b8b..93e7b0fd 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ProfileGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ProfileGridComponent.razor @@ -29,8 +29,8 @@ - - + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/ServiceProviderGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/ServiceProviderGridComponent.razor index f6370d10..cca7bb45 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/ServiceProviderGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/ServiceProviderGridComponent.razor @@ -22,15 +22,16 @@ PageSize="5" ValidationEnabled="false" EditMode="GridEditMode.EditForm" - ColumnResizeMode="GridColumnResizeMode.NextColumn" - ShowFilterRow="true"> + ColumnResizeMode="GridColumnResizeMode.NextColumn"> - + + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationGridComponent.razor index 62f31019..0f1a2a60 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationGridComponent.razor @@ -48,6 +48,8 @@ + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductDetailGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductDetailGridComponent.razor index 1a100aad..b24697c4 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductDetailGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductDetailGridComponent.razor @@ -40,6 +40,8 @@ + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductGridComponent.razor index 74a76004..8d9c246a 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/TransferDestinationToProductGridComponent.razor @@ -37,6 +37,8 @@ + + diff --git a/TIAMSharedUI/Pages/User/SysAdmins/TransferToDriverGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/TransferToDriverGridComponent.razor index 66110c20..15f479c4 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/TransferToDriverGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/TransferToDriverGridComponent.razor @@ -38,34 +38,36 @@ @{ var userEmailFieldName = $"{nameof(TransferToDriver.UserProductMapping)}.{nameof(UserProductMapping.User)}.{nameof(User.EmailAddress)}"; - var userEmailFieldName2 = $"{nameof(UserProductMapping.User)}.{nameof(User.EmailAddress)}"; + + var userEmailFieldNameComboItem = $"{nameof(UserProductMapping.User)}.{nameof(User.EmailAddress)}"; + var userNameFieldNameComboItem = $"{nameof(UserProductMapping.User)}.{nameof(User.FullName)}"; } @{ - var transferToDriverDataItem = (TransferToDriver)context.DataItem; var transferToDriverEditModel = (TransferToDriver)context.EditModel; } - @* *@ - + + - - - + + + @{ var transferToDriver = (TransferToDriver)context.DataItem; @_cars.FirstOrDefault(x => x.Id == transferToDriver.CarId)?.LicencePlate @@ -86,7 +88,7 @@ SearchMode="ListSearchMode.AutoSearch"> @* *@ - + @@ -95,34 +97,36 @@ -@* - - @{ - var transferToDriverId = ((TransferToDriver)context.DataItem).Id; - } - - - - - - - - - *@ @* - - - + + @{ + var transferToDriverId = ((TransferToDriver)context.DataItem).Id; + } + + + + + + + + + *@ + @* + + + *@ - - + + @* *@ + + @@ -143,7 +147,6 @@ _logger.Info($"DetailGridData: {ParentData.TransferToDrivers.Count}"); - //EZ NEM JÓ, FILTER-ELNI KELL A PRODUCT-RA!!! - J. _cars.AddRange((await AdminSignalRClient.GetAllAsync>(SignalRTags.GetAllCarsByProductId, TiamConstClient.TransferProductId))!); // AdminSignalRClient.GetAllAsync>(SignalRTags.GetAllCars, response => // { @@ -151,14 +154,7 @@ // return Task.CompletedTask; // }).Forget(); - //EZ NEM JÓ, FILTER-ELNI KELL A PRODUCT-RA!!! - J. _drivers.AddRange(_cars.DistinctBy(x => x.UserProductMappingId).Select(x => x.UserProductMapping)); - //_drivers.AddRange((await AdminSignalRClient.GetAllAsync>(SignalRTags.GetAllDrivers))!); - // AdminSignalRClient.GetAllAsync>(SignalRTags.GetAllDrivers, response => - // { - // _drivers.AddRange(response.ResponseData!); - // return Task.CompletedTask; - // }).Forget(); await base.OnInitializedAsync(); } @@ -185,6 +181,8 @@ private void DataItemChanged(GridDataItemChangedEventArgs args) { + //ParentData?.TransferToDrivers?.UpdateCollection(args.DataItem, args.TrackingState == TrackingState.Remove); + OnTransferToDriverChanged.InvokeAsync(args.DataItem); } diff --git a/TIAMSharedUI/Pages/User/SysAdmins/UserProductMappingGridComponent.razor b/TIAMSharedUI/Pages/User/SysAdmins/UserProductMappingGridComponent.razor index c4ef4f26..24992f34 100644 --- a/TIAMSharedUI/Pages/User/SysAdmins/UserProductMappingGridComponent.razor +++ b/TIAMSharedUI/Pages/User/SysAdmins/UserProductMappingGridComponent.razor @@ -26,8 +26,7 @@ CustomizeEditModel="CustomizeEditModel" EditMode="GridEditMode.EditForm" ColumnResizeMode="GridColumnResizeMode.NextColumn" - DetailExpandButtonDisplayMode="DetailExpandButtonDisplayMode" - ShowFilterRow="true"> + DetailExpandButtonDisplayMode="DetailExpandButtonDisplayMode"> @@ -47,6 +46,8 @@ @* *@ @* *@ + + @{ diff --git a/TIAMSharedUI/Shared/Components/Grids/TiamGrid.cs b/TIAMSharedUI/Shared/Components/Grids/TiamGrid.cs index 1069bf6a..bff22c58 100644 --- a/TIAMSharedUI/Shared/Components/Grids/TiamGrid.cs +++ b/TIAMSharedUI/Shared/Components/Grids/TiamGrid.cs @@ -162,6 +162,8 @@ namespace TIAMSharedUI.Shared.Components.Grids if (e.IsNew) await AddDataItemAsync(dataItem); else await UpdateDataItemAsync(dataItem); + + _dataSource.UpdateCollection(dataItem, false); } private Task SaveChangesToServerAsync() diff --git a/TIAMSharedUI/Shared/Components/TiamErrorBoundaryComponent.razor b/TIAMSharedUI/Shared/Components/TiamErrorBoundaryComponent.razor index d813cd0d..46196286 100644 --- a/TIAMSharedUI/Shared/Components/TiamErrorBoundaryComponent.razor +++ b/TIAMSharedUI/Shared/Components/TiamErrorBoundaryComponent.razor @@ -7,6 +7,11 @@ @inherits ErrorBoundary +@* *@ + +@code { + bool PopupVisible { get; set; } = false; +} @if (_currentError != null) { @@ -23,6 +28,7 @@ else } @code { + //public DxPopup ErrorPopup; private Exception? _currentError; private LoggerClient _logger; diff --git a/TIAMWebApp/Server/Controllers/TransferDataAPIController.cs b/TIAMWebApp/Server/Controllers/TransferDataAPIController.cs index 3bf2cafc..1b0f7c12 100644 --- a/TIAMWebApp/Server/Controllers/TransferDataAPIController.cs +++ b/TIAMWebApp/Server/Controllers/TransferDataAPIController.cs @@ -588,7 +588,7 @@ namespace TIAMWebApp.Server.Controllers [SignalR(SignalRTags.GetAllDrivers)] public async Task> GetAllDrivers() { - var result = await _adminDal.GetTAllDrivers(); + var result = await _adminDal.GetAllDriversAsync(); return result; } @@ -598,7 +598,7 @@ namespace TIAMWebApp.Server.Controllers [SignalR(SignalRTags.GetAllDriversByProductId)] public async Task> GetAllDriversByProductId(Guid productId) { - var result = await _adminDal.GetTAllDriversByProductId(productId); + var result = await _adminDal.GetAllDriversByProductIdAsync(productId); return result; } @@ -629,6 +629,8 @@ namespace TIAMWebApp.Server.Controllers public async Task AddTransferDriver([FromBody] TransferToDriver transferToDriver) { var result = await _adminDal.AddTransferToDriverAsync(transferToDriver); + //TODO: Send email to driver... - J. + return result ? transferToDriver : null; } @@ -639,6 +641,8 @@ namespace TIAMWebApp.Server.Controllers public async Task UpdateTransferDriver([FromBody] TransferToDriver transferToDriver) { var result = await _adminDal.UpdateTransferToDriverAsync(transferToDriver); + //TODO: Send email to driver/user, ha van változás... - J. + return result; // ? transferToDriver : null; } @@ -649,6 +653,8 @@ namespace TIAMWebApp.Server.Controllers public async Task RemoveTransferDriver([FromBody] TransferToDriver transferToDriver) { var result = await _adminDal.RemoveTransferToDriverAsync(transferToDriver); + //TODO: Send email to driver/user... - J. + return result ? transferToDriver : null; }