cleanup(interest): 删除 AccrualPolicy 未使用的 FromLegacy 工厂与冗余 using

FromLegacy 无调用方;移除 YLErp.DBModels using 后 InterestTypeEnum 仅存于注释。
This commit is contained in:
hjhan
2026-08-12 05:36:02 +08:00
parent 4e67af52e8
commit e7514a2d84
@@ -1,5 +1,4 @@
using YLErp.Derivatives.Interest;
using YLErp.DBModels;
namespace YLErp.Modules.SwapModule.Accrual;
@@ -7,9 +6,8 @@ namespace YLErp.Modules.SwapModule.Accrual;
/// 计息政策(不可变配置)。把"算头算尾 / 单复利率 / 重置频率 / 年化天数"收敛为一处,
/// 取代旧代码里散落各处的 calcFirst/calcLast 布尔对与魔法数字。
///
/// 单/复利不再另立枚举——直接复用既有 DB 枚举 <see cref="InterestTypeEnum"/>(单利=0 / 复利=1),
/// 通过 <see cref="IsCompound"/> 暴露为类型安全的 bool,避免与 SwapInterest 已有的
/// AccrueSimple/AccrueCompound 方法分裂出"第三种单复利表达"(这是第一版草稿犯过的重复)。
/// 单/复利不再另立枚举——直接复用既有 DB 枚举 InterestTypeEnum(单利=0 / 复利=1),
/// 通过 <see cref="IsCompound"/> 暴露为类型安全的 bool
/// </summary>
public sealed class AccrualPolicy
{
@@ -31,19 +29,4 @@ public sealed class AccrualPolicy
public AccrualPolicy(AccrualBoundary convention, bool isCompound, int resetPeriodDays, int annualDays, bool isAnnualized = false)
=> (Convention, IsCompound, ResetPeriodDays, AnnualDays, IsAnnualized) = (convention, isCompound, resetPeriodDays, annualDays, isAnnualized);
/// <summary>
/// 从交易扩展解析(边界适配)。调用方负责从 trade_extend.ExtendObj 取出
/// InterestCalcMode / AnnualDays / interest_rest_days 与计息方式后传入;
/// 这里只做"布尔对 → AccrualBoundary"与"InterestTypeEnum → bool"的归一。
/// </summary>
/// <param name="includeStart">算头(InterestCalcMode 首位为 '1')。</param>
/// <param name="includeEnd">算尾(InterestCalcMode 末位为 '1')。</param>
/// <param name="annualDays">年化天数(ExtendObj.AnnualDays)。</param>
/// <param name="interestType">DB 计息方式枚举(单利 / 复利)。</param>
/// <param name="resetPeriodDays">重置周期天数(interest_rest_days,缺省 1)。</param>
public static AccrualPolicy FromLegacy(bool includeStart, bool includeEnd, int annualDays, InterestTypeEnum interestType, int resetPeriodDays, bool isAnnualized = false)
=> new(AccrualBoundary.Of(includeStart, includeEnd),
interestType == InterestTypeEnum.,
resetPeriodDays, annualDays, isAnnualized);
}