tengyufan
|
3f0984800a
|
feat: 收益互换开平仓及收益结算接入OA移动审批
#EQD-6425 国联民生-衍生品系统移动审批(提交OA流程)
- 审批节点支持配置“关联OA移动审批”
- 创建OA流程并记录请求、requestId、状态及异常备注
- 支持OA轮询同步审批通过、退回和归档状态
- 本地通过、拒绝、撤回时同步强制归档未结束OA流程
- 增加审批列表OA备注展示及本地Mock联调接口
- 新增OA审批记录表和数据库升级脚本
- OA移动审批使用独立查询地址及isnextflow配置,不影响交易确认书OA
|
2026-08-21 15:54:54 +08:00 |
|
张名锐
|
8efb468c56
|
Merge branch 'glms/feature/1.4.2' into glms/feature/0812_zmr_divPower
|
2026-08-21 09:50:12 +08:00 |
|
hjhan
|
a5a78eab10
|
feat(swap): EQD-5320 结算确认书邮件链路补定位日志——资金提示/结清确认/生成三条链路此前几乎无日志且存在静默失败:①SendConfirmEamil查不到合同原return空串(前端当已发送)改Error日志+明确返回发送失败原因;②CheckConfirmDoc/CheckSettlementDoc抛错前补打库内trade_contract_r行状态(无行=从未生成/IsValid=false=重生成作废/doc缺失);③DealNoDmaEmail与生成服务两处客户+日期扩张查询补Info日志对齐勾选vs实际处理;④GetFileName物理文件缺失原静默null改Error;⑤生成器未生成交易确认书报错补事件id/客户/平仓日便于关联扩张日志;IYcLogger无Warn统一用Error
|
2026-08-20 18:14:40 +08:00 |
|
张名锐
|
582cb2c7c5
|
Merge branch 'glms/feature/1.4.2' into glms/feature/0812_zmr_divPower
# Conflicts:
# YLErpDAL/Modules/EodModule/BondPaymentService.cs
# YLErpDAL/Modules/SwapModule/SwapDealService.cs
|
2026-08-20 16:21:13 +08:00 |
|
张名锐
|
b2f4e16782
|
feat(bond): 支持股票和基金现金分红纳入债券支付计算 - 收紧过度开发行为
- 实现股票/基金现金分红数据从 ex_dividend_info 同步到 BondPayment
- 新增公司行为去重机制,避免镜像任务完成后重复计息
- 统一现金分红存储口径为"每 10 份派现金额",保持与同步任务一致性
- 修改 CalcPayment 方法,股票/基金分红需除以 10 转换实际现金金额
- 添加单元测试验证债券票息和股票/基金分红的不同计算方式
- 更新文档注释说明"每 10 份派现金额"存储规范
- 修复公司行为生效日处理逻辑,确保正确应用除权系数
- 扩展测试覆盖股票类证券的公司行为处理场景
|
2026-08-20 13:30:36 +08:00 |
|
张名锐
|
aa3548e77f
|
feat(bond): 支持债券与股票基金公司行为现金流计算的差异化处理 - init2
- 修改 CalcPayment 方法添加 useBondPriceScale 参数区分债券和股票/基金的金额计算口径
- 债券利息按每100元面值票息通过BondPriceConverter转为入库金额,股票基金分红直接计算
- 在BondPaymentService中添加详细的参数说明文档注释
- 更新SwapDealService中分红计算逻辑,根据标的类型自动选择合适的金额转换方式
- 新增CorporateActionEventLifecycleTest单元测试验证公司行为事件生命周期管理
- 添加SplitCorporateActionTddTest测试验证拆合股功能
- 优化FundCorporateActionRollbackAndUnwindTest扩展到股票类型测试
- 更新前端OperationHistory页面表格列宽和显示格式支持更长的说明信息
|
2026-08-19 17:48:34 +08:00 |
|
张名锐
|
aa1a13d7a3
|
feat(trade): 新增真实除权日字段并完善基金公司行为处理 init
- 添加 EffectiveDate 字段用于标识真实除权生效日
- 实现公司行为价格系数和数量系数统一计算方法
- 增加基金除权回退和平仓基线恢复功能
- 完善除权日验证逻辑,确保真实除权日不早于股权登记日
- 重构平仓流程,支持按有效EOD基线重新计算损益和现金
- 添加基金拆合股和现金分红的特殊处理逻辑
- 增加单元测试验证各种公司行为场景下的正确性
|
2026-08-18 11:20:56 +08:00 |
|
hjhan
|
1d9bac4dd6
|
refactor(swap): 提取 EodSwapPositionQueries.ActiveByTradeAndDate 收口日终有效持仓查询
将 eod_swap_position 上'SwapTradeId + ValueDate + !Invalid'的 5 处重复谓词
(SwapEodPositionService.cs:2133/2195/2246/2487、ConfirmationGenerateContext.cs:2868)
收口到 EodSwapPositionQueries.ActiveByTradeAndDate(tradeId, valueDate),
与 SwapPositionQueries.ActiveByTrade 同构,零逻辑变更。
|
2026-08-15 13:44:53 +08:00 |
|
张名锐
|
04f4468be5
|
refactor(trade): 优化除权信息处理逻辑和数据查询策略
- 在 FindExDividendByBusinessKey 方法中添加注释说明业务唯一键按"标的 + 自然日"定义
- 实现字段独立合并策略,当前值非零时覆盖旧值,为零时保留旧值
- 保存前统一截断时间部分,确保同一天不同时间能命中同一个自然日业务键
- 先在当前批次内按业务键归并,避免重复行生成多条数据库记录
- 除权数据查询时不使用 SQL 左连接,防止重复行扩增影响风险计算
- 使用不区分大小写的 UnderlyingCode 匹配,兼容代码大小写差异
- 除权记录不参与 SQL 左连接,先完成基础关联再内存查找唯一记录
- 风险对象的除权 Pv 重算规则与持仓处理保持一致,仅在股票交易类型下执行
|
2026-08-13 11:09:50 +08:00 |
|
张名锐
|
5a51d66970
|
refactor(dividend): 优化除权除息计算逻辑并改进数据类型精度
- 将除权除息相关数值字段从 double 类型改为 decimal 类型以提高精度
- 重构了红利比率计算方法 GetRatio,新增 GetRatioDecimal 方法使用 decimal 计算
- 修改价格和持仓数量计算逻辑,统一使用 decimal 进行高精度运算
- 更新数据库查询逻辑,将篮子标的判断从 IsBasket() 方法改为 CommodityCode 条件
- 优化 AddDividendInfos 方法中的批量处理逻辑,增加业务键冲突检测
- 添加数据源标识字段 DataSource 和来源更新时间字段 SourceUpdatedAt
- 新增 FindExDividendByBusinessKey 和 MergeNonZeroDividendValues 辅助方法
- 更新结算服务中除权除息信息的获取方式,使用字典查找替代 LINQ JOIN
- 修复前端保存除权信息时的响应处理逻辑
- 为基金类型也开放除权功能,不仅限于股票类型
- 添加单元测试验证篮子标的查询翻译逻辑的正确性
|
2026-08-13 10:53:57 +08:00 |
|
tengyufan
|
b0b04dbdea
|
fix: 修复交易审批期初标的价格取值
|
2026-08-06 11:29:54 +08:00 |
|
lisong
|
36877744fa
|
Merge remote-tracking branch 'dest/glms/feature/1.4.2' into feature/p132_74-risk-engine
|
2026-08-05 17:28:20 +08:00 |
|
lisong
|
a889925440
|
Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine
|
2026-08-05 17:27:15 +08:00 |
|
tengyufan
|
864a29d6a8
|
#EQD-6605 国联民生-确认书编号规则调整(不基于甲方乙方判定)
feat: 国联民生收益互换按簿记分类生成交易编号
簿记账户新增“簿记分类”字段,支持代客、融券,新增账户默认代客,历史账户统一初始化为代客
簿记账户分类设为必填,列表、编辑及详情页面同步展示
修改已被交易引用的簿记账户分类时增加二次确认,并提示关联交易数量
国联民生收益互换交易编号不再根据甲乙方判断,改为根据簿记账户分类生成
代客使用数字序号,融券使用字母序号,分别从已有同客户同日编号的最大序号继续递增
保留手工交易编号优先逻辑,标准格式的手工编号参与后续最大序号计算
生成候选编号后检查完整交易编号是否已存在,存在则继续递增
新增簿记分类编号格式、最大序号计算及数字字母序列隔离专项单测
|
2026-08-05 15:55:01 +08:00 |
|
ruisu
|
8fb3c4392c
|
feat:风控触发时显示应用ID、
新老风控组合校验:
老风控Error/Warning,新风控需审批——点击特批即两边都放行
老风控Error/Warning,新风控禁止——不展示
老风控Error/Warning——展示特批,且只特批老风控。
新增风控流程日志
|
2026-08-05 14:39:01 +08:00 |
|
yexuzhong
|
5d580960d8
|
#EQD-6669 国联民生-期权希腊值计算步长和细节调整(定价引擎部分)
|
2026-07-31 10:35:25 +08:00 |
|
tengyufan
|
20e4b82ae3
|
fix: 修复国联收益互换交易编号首次生成大小写不一致
- 首次入库后按 UpperTradeNumber 配置统一交易编号大小写
- 避免自动生成小写编号在后续编辑保存时被转为大写
- 补充交易编号大小写配置的单元测试
|
2026-07-30 17:46:18 +08:00 |
|
tengyufan
|
b3484c3618
|
fix: 国联民生收益互换支持审批前生成交易确认书
- 仅国联民生收益互换支持在新增待确认、修改待确认、审批中生成交易确认书,期权、其他公司及其他交易状态保持原限制
- 交易确认书页面同步开放上述交易的“生成确认书”按钮,后端批量生成链路同步放开状态过滤
- 审批前生成仅校验客户、标的、初始持仓等模板必需核心数据;不以银行账户、联系人、保证金等非模板必填资料阻断
- 审批前已生成确认书的交易被修改时,使该交易原确认书关联失效,重新生成仍按原覆盖逻辑处理
- 审批拒绝时清理该交易审批前生成的确认书关联、OA 结果及用印队列;无其他有效引用时删除确认书数据,避免遗留无效确认书
- 保持原交易编号逻辑:自动生成和手工填写均不复用已拒绝交易编号
- 新增审批前适用范围、确认书关联及 OA 清理谓词专项单测
|
2026-07-30 11:10:48 +08:00 |
|
hjhan
|
76f5caabd9
|
fix(EQD-6604): 补 GuolianContractNoGenerator.BuildTradeNumber 纯函数,修复 UnitTestProject 编译失败
测试 GuolianContractNoGeneratorTest 调用了 BuildTradeNumber(trade, clientCode, sequenceNo) 纯函数,
但生产类此前只有依赖数据库的 Generate(YLContext, ...)。抽出不连库的 BuildTradeNumber 供测试与 Generate
共用,编号格式与现有 Generate 输出完全一致(GLMS-{client}-{yyyyMMdd}-FICC-{序号}-{去点标的})。
6 个单测全部通过,生产行为不变。
|
2026-07-29 18:39:09 +08:00 |
|
tengyufan
|
d1f697c524
|
#EQD-6604 国联民生-确认书编码生成环节移到簿记(支持手工录入)
feat: 国联民生收益互换簿记后按确认书规则生成交易编
- 补充单测文件
|
2026-07-29 17:14:40 +08:00 |
|
tengyufan
|
e1c5f72418
|
#EQD-6604 国联民生-确认书编码生成环节移到簿记(支持手工录入)
feat: 国联民生收益互换簿记后按确认书规则生成交易编号
- - 国联收益互换首次入库后复用原交易确认书编号规则生成交易编号,保留手工填写的交易编号
- 覆盖手工新增、系统流水自动簿记、普通交易导入、流水导入和日终合成今日交易流水
- 自动流水簿记增加本地事务,交易编号回写与基础簿记数据失败时统一回滚
- 交易确认书生成时直接取交易编号,不再重新生成确认书编号
- 结算管理-交易确认书页面将合约编号更名为交易确认书编号
- 上传确认书时将合约编号更名为交易确认书编号
- 历史交易编号不处理
|
2026-07-29 16:45:29 +08:00 |
|
张名锐
|
aa8fb9fd7a
|
Merge branch 'glms/feature/swaptrade_6603_mbb' into glms/feature/1.4.2
# Conflicts:
# YLErpDAL/Modules/SwapModule/SwapTradeService.cs
|
2026-07-24 13:29:10 +08:00 |
|
马冰冰
|
4419a4125b
|
(fix): 将原保证金模板名称=系统默认 的默认值改为null。
|
2026-07-22 16:28:17 +08:00 |
|
尹峰
|
15c249a423
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into feature/p132_74-risk-engine
|
2026-07-21 15:06:17 +08:00 |
|
ruisu
|
37e275d81e
|
feat:拆分新老风控校验逻辑,为之后老风控下线做准备。同时修复老风控特批跳过新风控的问题
|
2026-07-20 15:06:58 +08:00 |
|
hjhan
|
21b86c871f
|
test(trade): 补 23108016 互换/期权本次名义本金分支单元测试
抽 CalcSwapCloseNotionalFromEventData 和 CalcOptionCloseNotional 为 public static 纯函数, BuildTriggerContext 了结场景改为调用这两个函数. 新增 13 个单元测试覆盖: 互换分支 EventData null/空/非法JSON/正数/负数/零 容错与绝对值, 期权分支 两者null/单边null/正数相乘/负数容错 绝对值语义. 重点锁定静默 catch 容错契约, 防止 EventData 异常时名义本金变 0 绕过审批阈值.
|
2026-07-17 08:45:49 +08:00 |
|
hjhan
|
a17cdc2b74
|
fix(期权到期): 债券标的到期取价补查中债估值表,并标注债券净/全价映射不一致(Layer2)
- EodPriceQueryService 新增 TryGetSettlementEodPrice:债券走中债估值、期货/股票走原路径
- 单笔 tradeExpireInner + 批量 MultipleTradeExpireConfirm 改用统一方法,修 GLMS-20260715-0002 债券期权到期报'结算价未找到'
- 移除批量路径未初始化的 EodPriceProvider(对债券无效且有误导性的 footgun)
- Layer2:标注 EodPriceProvider.Initialize 与 GetBondPrice 债券 ClosePrice/SettlePrice 净全价定义相反,待统一(不改逻辑)
- 新增白盒单测覆盖债券标的到期取价(3用例 DB驱动,均通过)
|
2026-07-16 14:41:44 +08:00 |
|
锦麟 王
|
84703d1f4d
|
平仓审批流程角色处理逻辑
|
2026-07-16 11:00:49 +08:00 |
|
锦麟 王
|
23108016a4
|
BugFix 互换本次名义本金取错
|
2026-07-16 10:04:06 +08:00 |
|
锦麟 王
|
592ad52ecb
|
互换平仓审批流程逻辑
|
2026-07-15 10:51:58 +08:00 |
|
hjhan
|
0483cd8576
|
Merge remote-tracking branch 'origin/feature/p132_74-risk-engine' into spike/merge-p132_74-to-1.4.2
|
2026-07-14 14:48:11 +08:00 |
|
锦麟 王
|
623183f47f
|
Merge branch 'glms/feature/1.4.2_ApprovalProcess' into glms/feature/1.4.2
|
2026-07-14 09:14:07 +08:00 |
|
锦麟 王
|
f3ca4dc498
|
平仓审核不符合条件直接跳过
|
2026-07-13 10:59:37 +08:00 |
|
锦麟 王
|
c4293ed523
|
优化审批流程逻辑,支持复杂分支条件
|
2026-07-10 17:00:13 +08:00 |
|
张名锐
|
3def0fddd0
|
feat(trade): 添加交易确认文档查询功能
- 新增 TradeConfirmationDocumentQueryItem 查询项类
- 实现 TradeConfirmationDocumentQuery.Create 查询方法
- 添加按交易日期范围过滤功能
- 重构 tradeController 中的文档查询逻辑
- 集成文档、合同关系和交易数据的联合查询
- 优化查询性能通过预过滤有效合同关系
|
2026-07-10 14:02:21 +08:00 |
|
锦麟 王
|
fb59c6180a
|
支持审批流程中的分支网关和节点触发条件
|
2026-07-07 15:47:17 +08:00 |
|
尹峰
|
d5cbd45a8a
|
Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine
|
2026-07-06 18:42:35 +08:00 |
|
尹峰
|
d7d9c796d8
|
merge glms/feature/1.4.2 0703版本
|
2026-07-06 18:42:19 +08:00 |
|
ruisu
|
dc0cb9ec7b
|
feat:老风控特批使用单独bool量识别,新风控需审批采用新状态RiskWarning,风控流程状态优先级Error>Warning(老风控特批,给前端CODE为ERROR)>RiskWarning>Success(可能带有ShowTIip)。新风控特批时,识别RULEID,不再采用BOOL统一通过
|
2026-07-06 17:41:13 +08:00 |
|
锦麟 王
|
f0ad4406c9
|
Revert ruisu合并进来的代码
|
2026-07-03 17:41:42 +08:00 |
|
张名锐
|
3534ebb342
|
fix(trade): 修正对客交易判断逻辑
- 修改了GuolianContractNoGenerator中对客交易的判断条件
- 将判断标准从"乙方=对客"改为"甲方=对客"
- 更新了相关注释以反映新的业务规则
|
2026-07-02 14:07:19 +08:00 |
|
张名锐
|
adb5473732
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-06-30 11:23:21 +08:00 |
|
ruisu
|
9777698a9a
|
feat:修改互换交易样式以支持展示新风控内容,将rule与application加载前移到系统启动时
|
2026-06-29 17:29:36 +08:00 |
|
张名锐
|
c76c3aa218
|
fix(trade): 修复合同编号生成和追保区间计算逻辑
- 在合同编号前缀中添加FICC标识符
- 修复银行账户信息中支付系统号字段的赋值逻辑
- 修正追保区间计算公式,使用正确的差值参数替代维持保证金百分比
- 更新追保区间上下限的计算逻辑以确保正确的风险控制范围
|
2026-06-29 16:26:17 +08:00 |
|
ruisu
|
0c2a4b3afb
|
feat:打通前后端链路。老风控新风控映射:禁止=》Error,需审批=》RiskWarning(新状态,需二次确认,并记录日志),提示、通过=》Success(提示增加TIpMessage)
|
2026-06-26 17:01:21 +08:00 |
|
张名锐
|
7bd1e6bff1
|
fix:交易编号生成 不同客户 在同一天、同一 OpponentRole 类型下的交易序号都会独立从 1/A 开始递增,互不干扰。
|
2026-06-10 10:55:25 +08:00 |
|
张名锐
|
68cafde942
|
fix:确认书编号生成修复
|
2026-06-09 15:17:25 +08:00 |
|
张名锐
|
4e9b2d7b47
|
feature: 确认书模板修改
|
2026-06-09 13:38:10 +08:00 |
|
Weiming
|
8a11819296
|
1. 修复期权和互换的审批中间节点记录未在操作历史中展示的问题。
2. 在操作记录的审批记录中,增加审批角色信息。
特别注意:期权和互换的操作历史是在两张不同的表中
|
2026-06-03 12:19:11 +08:00 |
|
吴方海
|
d8747274e1
|
#EQD-6101 国联民生&浙商-互换平仓后提交两次审批会出现问题
|
2026-05-29 13:47:43 +08:00 |
|