IwbApplicationModule.cs 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. using System.Reflection;
  2. using Abp.Authorization;
  3. using Abp.AutoMapper;
  4. using Abp.Modules;
  5. using Abp.Notifications;
  6. using ContractService.BaseSystem.Notifications.Dto;
  7. using ContractService.Basic.Organization.Dto;
  8. using ContractService.Client;
  9. using ContractService.Lawyer;
  10. using ContractService.Lawyer.Dto;
  11. using ContractService.LegalCase;
  12. using ContractService.LegalCase.Dto;
  13. using ContractService.LegalContract;
  14. using ContractService.LegalContract.Contract.Dto;
  15. using IwbZero.Authorization.Base.Permissions;
  16. namespace ContractService
  17. {
  18. [DependsOn(
  19. typeof(ContractServiceDataModule),
  20. typeof(AbpAutoMapperModule)
  21. )]
  22. public class ContractServiceApplicationModule : AbpModule
  23. {
  24. public override void PreInitialize()
  25. {
  26. }
  27. public override void Initialize()
  28. {
  29. IocManager.RegisterAssemblyByConvention(Assembly.GetExecutingAssembly());
  30. // TODO: Is there somewhere else to store these, with the dto classes
  31. Configuration.Modules.AbpAutoMapper().Configurators.Add(cfg =>
  32. {
  33. // Role and permission
  34. cfg.CreateMap<Permission, string>().ConvertUsing(r => r.Name);
  35. cfg.CreateMap<PermissionSetting, string>().ConvertUsing(r => r.Name);
  36. cfg.CreateMap<NotificationDefinition, NotificationSubscriptionWithDisplayNameDto>();
  37. cfg.CreateMap<OrganizationInfo, OrganizationDto>().ForMember(a => a.ParentName,
  38. s => s.MapFrom(a => a.ParentInfo == null ? "" : a.ParentInfo.Name));
  39. cfg.CreateMap<LawyerInfo, LawyerDto>()
  40. .ForMember(a => a.LawFirmName,
  41. s => s.MapFrom(a => a.LawFirmInfo == null ? "" : a.LawFirmInfo.Name))
  42. .ForMember(a => a.OrganizationName,
  43. s => s.MapFrom(a => a.OrganizationInfo == null ? "" : a.OrganizationInfo.Name));
  44. cfg.CreateMap<LegalContractInfo, LegalContractDto>()
  45. .ForMember(a => a.CaseName,
  46. s => s.MapFrom(a => a.CaseInfo == null ? "" : a.CaseInfo.Name))
  47. .ForMember(a => a.CompanyName,
  48. s => s.MapFrom(a =>
  49. a.CaseInfo == null ? "" :
  50. a.CaseInfo.CompanyInfo == null ? "" : a.CaseInfo.CompanyInfo.Name));
  51. cfg.CreateMap<LegalCaseInfo, LegalCaseDto>()
  52. .ForMember(a => a.CompanyName,
  53. s => s.MapFrom(a =>
  54. a.CompanyInfo == null ? "" : a.CompanyInfo.Name));
  55. });
  56. }
  57. }
  58. }