BuildTypeAdapterConfig.cs 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. using JiaZhiQuan.Common.Models.PO;
  2. using JiaZhiQuan.Common.Models.VO.BalanceManage;
  3. using JiaZhiQuan.Common.Models.VO.CreatorCenter;
  4. using JiaZhiQuan.Common.Utils;
  5. using Mapster;
  6. namespace JiaZhiQuan.Common.Mapster
  7. {
  8. public static class BuildTypeAdapterConfig
  9. {
  10. /// <summary>
  11. /// ContentRewardVO => ContentRewardResultVO
  12. /// 奖励金额(分为单位) => 奖励金额(元为单位)
  13. /// </summary>
  14. public static TypeAdapterConfig BuildContentRewardVOConfig()
  15. {
  16. TypeAdapterConfig config = new TypeAdapterConfig();
  17. config.ForType<ContentRewardVO, ContentRewardResultVO>()
  18. // 奖励金额(分为单位) => 奖励金额(元为单位)
  19. .Map(dest => dest.amount, src => AmountUtils.ConvertCentToYuanStr(src.amount));
  20. return config;
  21. }
  22. /// <summary>
  23. /// ContentRewardVO => ContentRewardResultVO
  24. /// 奖励金额(分为单位) => 奖励金额(元为单位)
  25. /// </summary>
  26. public static TypeAdapterConfig BuildBalanceCashoutPlatformVOConfig()
  27. {
  28. TypeAdapterConfig config = new TypeAdapterConfig();
  29. config.ForType<BalanceCashoutPlatformPO, BalanceCashoutPlatformVO>()
  30. // 税率百分比
  31. .Map(dest => dest.taxRate, src => src.taxRate * 100)
  32. // 服务费率百分比
  33. .Map(dest => dest.feeRate, src => src.feeRate * 100)
  34. // 最少服务费金额(分为单位) => 最少服务费金额(元为单位)
  35. .Map(dest => dest.feeMinAmount, src => AmountUtils.ConvertCentToYuan((decimal)src.feeMinAmount));
  36. return config;
  37. }
  38. }
  39. }