This commit is contained in:
2023-07-23 20:27:23 +03:00
parent d0cdaa85b6
commit 96eca795ab
62 changed files with 2934 additions and 847 deletions
@@ -1,6 +1,7 @@
namespace MyOffice.Web.Models.Account
{
using Data.Models.Accounts;
using Services.Account.Domain;
using User;
public class AccessRightsViewModel
@@ -13,7 +14,7 @@
public static class AccessRightsViewModelExtensions
{
public static AccessRightsViewModel ToModel(this AccountAccess accountAccess)
public static AccessRightsViewModel ToModel(this AccountAccessDto accountAccess)
{
return new AccessRightsViewModel
{
@@ -1,6 +1,7 @@
namespace MyOffice.Web.Models.Account;
using Data.Models.Accounts;
using Services.Account.Domain;
public class AccountDetailedViewModel
{
@@ -8,9 +9,9 @@ public class AccountDetailedViewModel
public decimal Rest { get; set; }
}
public static class AccountDetailedViewModelExtensions
/*public static class AccountDetailedViewModelExtensions
{
public static AccountDetailedViewModel ToModel(this AccountDetailed input)
public static AccountDetailedViewModel ToModel(this AccountDetailedDto input)
{
return new AccountDetailedViewModel
{
@@ -18,4 +19,4 @@ public static class AccountDetailedViewModelExtensions
Rest = input.Rest,
};
}
}
}*/
@@ -8,6 +8,7 @@ public class AccountEditRequestModel
public string Name { get; set; } = null!;
[Required]
public string CurrencyId { get; set; } = null!;
public string? CategoryId { get; set; } = null!;
public string? UserId { get; set; } = null!;
public string? CategoryId { get; set; }
public string? UserId { get; set; }
public string? Type { get; set; }
}
@@ -1,19 +1,25 @@
namespace MyOffice.Web.Models.Account
{
using System.ComponentModel.DataAnnotations;
using AutoMapper;
using Core.Extensions;
using Data.Models.Accounts;
using Services.Account.Domain;
using Services.Identity;
using User;
public class AccountViewModel
{
public string? Id { get; set; }
[Required]
[Required]
public string Name { get; set; } = null!;
public string Type { get; set; } = null!;
[Required]
[Required]
public string CurrencyId { get; set; } = null!;
public string? CurrencyName { get; set; }
public bool AllowDelete { get; set; }
public List<AccountCategoryViewModel>? Categories { get; set; }
@@ -23,9 +29,48 @@
public List<AccessRightsViewModel>? AccessRights { get; set; }
}
public static class AccountViewModelExtensions
public class ViewModelProfile : Profile
{
public static AccountViewModel ToModel(this Account input)
public ViewModelProfile()
{
CreateMap<Guid, string>().ConvertUsing(x => x.ToShort());
}
}
public class AccountViewModelProfile : Profile
{
public AccountViewModelProfile(
IContextProvider contextProvider
)
{
CreateMap<AccountDetailedDto, AccountDetailedViewModel>()
.ForMember(x => x.Account, o => o.MapFrom(x => x.Account))
;
CreateMap<UserDto, UserViewModel>();
CreateMap<MyOffice.Data.Models.Users.User, UserViewModel>();
CreateMap<AccountDto, AccountViewModel>()
.ForMember(x => x.Type, o => o.MapFrom(x => x.AccessRights!.FirstOrDefault(a => a.UserId == contextProvider.UserId)!.Type.ToString()))
.ForMember(x => x.CurrencyId, o => o.MapFrom(x => x.CurrencyGlobalId))
.ForMember(x => x.CurrencyName, o => o.MapFrom(x => x.Currency!.Name))
.ForMember(x => x.AllowDelete, o => o.MapFrom(x => !x.HasMotions))
;
CreateMap<AccountAccountCategoryDto, AccountCategoryViewModel>()
.ForMember(x => x.Id, o => o.MapFrom(x => x.CategoryId))
.ForMember(x => x.Name, o => o.MapFrom(x => x.Category!.Name))
;
CreateMap<AccountAccessDto, AccessRightsViewModel>();
}
}
/*public static class AccountViewModelExtensions
{
public static AccountViewModel ToModel(this AccountDto input)
{
return new AccountViewModel
{
@@ -41,5 +86,5 @@
.ToList(),
};
}
}
}*/
}