这两份代码的区别是什么:
1 | // getExpectSettledDateV2 获取预估结算日,考虑基金公司节假日 |
这两段代码主要用于获取预估结算日,考虑基金公司节假日。它们的主要区别在于输入参数和部分逻辑上的不同。以下是具体的区别:
参数不同:
getExpectSettledDateV2接收productSymbol和settlementDay作为参数。getExpectSettledDateV3多了一个productCode和dir参数,并用productCode获取产品的基本信息。
获取结算日的方式不同:
getExpectSettledDateV2直接使用传入的settlementDay。getExpectSettledDateV3通过productCode从市场服务 (t.mktWealthClient) 获取产品的基本信息,然后根据dir获取相应的settlementDay。
获取基金假期信息的方式不同:
getExpectSettledDateV2使用lo.Find在fundHolidays列表中查找对应的fundHoliday。getExpectSettledDateV3使用fundHolidayMap直接查找fundHoliday。
错误处理信息不同:
getExpectSettledDateV2的错误信息中指出 “lack fund info symbol”。getExpectSettledDateV3的错误信息中同样指出 “lack fund info symbol”,但它在获取productBasicInfo时也可能会返回错误。
总结:
getExpectSettledDateV2更加简单,直接使用传入的参数进行操作。getExpectSettledDateV3更加复杂,先通过productCode获取产品的基本信息,然后根据dir获取结算日,再通过fundHolidayMap查找基金假期。
这种设计使得 getExpectSettledDateV3 具备了更强的灵活性和扩展性,适用于更复杂的业务场景。
——来自AI问答宝 https://ai.wendabao.net
}