yexuzhong
|
5d580960d8
|
#EQD-6669 国联民生-期权希腊值计算步长和细节调整(定价引擎部分)
|
2026-07-31 10:35:25 +08:00 |
|
hjhan
|
a871bcb9fe
|
fix(login): 登录页 NeedCaptcha=false 时 CaptchaClick 避免 null.setAttribute 报错
页面加载时无条件调用 CaptchaClick(),但 <img id="captcha"> 仅在
NeedCaptcha=true 时渲染,导致无需验证码时 getElementById 返回 null,
null.setAttribute 抛错。增加 if (!img) return 守卫,img 存在时行为不变。
|
2026-07-31 09:10:05 +08:00 |
|
tengyufan
|
cb2076d9ff
|
fix: 交易确认书编号筛选项保持单行显示
- 国联交易确认书页面加宽交易确认书编号筛选项标签和容器
- 避免交易确认书编号标签自动换行
|
2026-07-30 17:58:51 +08:00 |
|
马冰冰
|
99438ccaf4
|
Merge branch 'glms/feature/1.4.2-0730' into glms/feature/1.4.2
|
2026-07-30 17:48:55 +08:00 |
|
马冰冰
|
807ac15417
|
feature:续作按钮应当有角色权限控制
|
2026-07-30 17:46:14 +08:00 |
|
tengyufan
|
43981e245b
|
#EQD-6718 国联民生-收益互换隐藏收支方向,默认我方收取浮动收益
fix:国联民生收益互换隐藏收支方向,默认我方收取浮动收益
- 新增可配置开关 Erp.SwapFloatingIncomeReceiveOnlyMode,默认关闭,支持在普通模式与网厅适配模式之间切换
- 网厅适配模式下,新增及续做收益互换默认浮动端为我方收取,并隐藏新增、平仓、收益结算及查看页面的浮动端收支方向
- 普通模式保持原有展示和编辑逻辑,历史交易不修改原有浮动端收支方向
- 日终持仓风险_互换将浮动收支方向和标的多空合并为交易方向,并同步影响导出
- 交易方向映射收取+B为多头、收取+S为空头、支付+B为空头、支付+S为多头
- 新增交易方向映射专项前端单测
|
2026-07-30 14:46:07 +08:00 |
|
张名锐
|
345085677e
|
refactor(swaptrade): 优化价格输入组件的事件处理机制
- 添加 enterPressed 和 formatSnapshot 状态管理
- 实现键盘事件监听和回车键处理逻辑
- 优化数据更新时机和事件触发顺序
- 添加格式配置变更检测功能
- 更新模板事件绑定方式
- 修改价格输入事件回调方法名以区分不同场景
|
2026-07-30 11:33:55 +08:00 |
|
张名锐
|
85f1bccb24
|
Merge branch 'glms/feature/1.4.2' into glms/feature/dotnumber
# Conflicts:
# YLErpWeb/App_Data/Config/otcformat.js
# YLErpWeb/Views/SwapTrade2/TradeEdit.cshtml
# YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js
|
2026-07-30 10:50:44 +08:00 |
|
hjhan
|
c97d7e7995
|
feat(diag): 可保留调试日志+版本可追溯机制(阶段0.5止血增强)
解决 EQD-6838 排查时硬编码版本号 v20260729a 散落3处、无法按需开关、
看不到实际加载缓存戳的问题。
层1 运行时开关(核心):
- HtmlUtil.cs 新增 GitCommit(读 AssemblyInformationalVersion,零新依赖)
- _MainLayout.cshtml 注入 window.ylotc.__diag(jsVersion+git+built)
- main.js 顶部新增 otcDebug 工具(banner+log),debug 默认 false 生产零输出
- swapTradeEdit.js / fastVue.base.js 硬编码标记改为 otcDebug.banner
- 开启方式:URL ?otcdebug=1(会话)或 localStorage.setItem('otcdebug','1')(持久)
层2 构建守卫:
- pre-commit 新增第三块 bundle 版本一致性检查(rebuild-bundles.py --verify)
- 修复 Windows python3 Store stub 不可用问题(优先用 python)
- 注:bundle 头部不注入 git sha(会随 commit 变化导致 verify 永久失败),
版本可追溯完全由运行时 __diag(后端注入)覆盖
层3 单测预防:
- 新增 diag.test.js(213测试之一),用 console spy 守卫开关行为
- 断言不再含硬编码 v20260729a + 防止第二套调试开关回归
验证:11 suites/213 tests 全绿,--verify 通过,C# 编译0错误
|
2026-07-30 10:06:21 +08:00 |
|
hjhan
|
cee69a02eb
|
fix(EQD-6838): 修复约定2/3标识不更新的Vue响应式问题 + 组件内emit keydown + 去掉重算按钮
根因1(约定3按键不触发):
- .native 修饰符在 vue-number-input 上不可靠(jQuery在mounted中重新绑定了keydown)
- 改为在组件内部 addEventListener('keydown') + $emit('keydown')
- cshtml 从 v-on:keydown.native 改为 v-on:keydown
根因2(约定2/3标识不更新):
- bondDriverType/bondAuto/bondRev 不在后端数据中,直接赋值不触发Vue2响应式更新
- 成功分支之前用 $forceUpdate 兜底,但失败/编辑/按键分支没有
- 新增 syncBondFlags 方法,用 $set 强制触发响应式更新
- 在所有状态变更后调用:onBondPriceEdit/onBondPriceKeydown/onDpPriceInput/
calcBondForItem成功/失败/setUnderlyingCode/加载路径
其他改动:
- 去掉"重算"按钮(用户确认不再需要)
- calcBondForItem 成功分支用 syncBondFlags 替代 $forceUpdate
- 重建 bundle.js(fastVue.base.js 是 bundle 输入)
|
2026-07-29 19:20:13 +08:00 |
|
hjhan
|
d662399ab4
|
feat(EQD-6838): 债券三字段交互约定2/3 + 簿记逻辑1 实现
问题:
- 簿记基础逻辑1未满足:选标的后 setUnderlyingCode 调 getSpotPrice 自动填充净价/全价
- 交互约定3未满足:vue-number-input 的 input 事件只在失焦/回车时触发(__change),
按键输入时不触发,导致用户输入过程中 源/AUTO 标识不会消失
- 交互约定2补充未满足:calcBondForItem 的早期返回分支(源字段为空/开始日缺失)
未调 applyBondCalcFailure,导致回车后另两字段和标识未清空
修复:
- 簿记逻辑1:setUnderlyingCode 切换标的时清空净价/全价/收益率三字段,
不再调 getSpotPrice 自动回填;refreshInitialUnderlyingPrices 续发场景也不自动填充
- 交互约定3:cshtml 三个 vue-number-input 加 v-on:keydown.native 绑定,
新增 onBondPriceKeydown 方法——按键即清 源/AUTO 标识、标本字段 REV;
回车键(13/108)和修饰键(Ctrl/Alt/Tab/方向键等)除外
- 交互约定2补充:calcBondForItem 的源字段为空/开始日缺失两个早期返回分支
也调 applyBondCalcFailure,确保回车后另两字段清空、三标识全清
|
2026-07-29 19:09:29 +08:00 |
|
tengyufan
|
e1c5f72418
|
#EQD-6604 国联民生-确认书编码生成环节移到簿记(支持手工录入)
feat: 国联民生收益互换簿记后按确认书规则生成交易编号
- - 国联收益互换首次入库后复用原交易确认书编号规则生成交易编号,保留手工填写的交易编号
- 覆盖手工新增、系统流水自动簿记、普通交易导入、流水导入和日终合成今日交易流水
- 自动流水簿记增加本地事务,交易编号回写与基础簿记数据失败时统一回滚
- 交易确认书生成时直接取交易编号,不再重新生成确认书编号
- 结算管理-交易确认书页面将合约编号更名为交易确认书编号
- 上传确认书时将合约编号更名为交易确认书编号
- 历史交易编号不处理
|
2026-07-29 16:45:29 +08:00 |
|
hjhan
|
b9f2bd14f6
|
feat(swaptrade): 债券三字段计算器交互改为回车触发并加源/AUTO/REV 三态标识
- 约定1:仅在净价/全价/收益率输入框敲回车触发计算器,失焦不触发
- 约定2:计算成功->源字段标"源"、另两字段标"AUTO";失败->保留源值、清空另两字段与标识
- 约定3:编辑某字段未回车->不联动另两字段,清源/AUTO、仅本字段标"REV"
- swapCalc.js 新增 applyBondCalcSuccess/Failure/ManualEdit 纯函数,applyBondCalcResult 第三参由 manualSet 改为 driver(跳过源字段写回)
- fastVue.base.js 新增 enter 事件区分回车/失焦,向后兼容旧的 input 行为
- TradeEdit.cshtml 三字段 input/enter 分离绑定 + 源/AUTO/REV 三态标签(去除旧铅笔图标)
- 重写 bondCalc.test.js / 更新 swapCalc.test.js 覆盖状态机;jest 68 项全过
|
2026-07-29 14:34:25 +08:00 |
|
张名锐
|
fd2a054764
|
feat(swap): 实现互换交易价格精度控制功能 init
- 添加 swapPricePrecisionHelper.js 工具类处理价格精度格式化
- 新增 swappriceprecision.js 配置文件定义各类金融产品的精度规则
- 在 EodPositionRisks.cshtml 和 SwapIncome.cshtml 中引入新的价格格式化脚本
- 替换原有的价格格式化函数为基于产品类型的动态精度控制
- 移除旧的价格验证和标准化逻辑,改用新的精度控制机制
- 添加 vue-swap-price-input 组件用于精确的价格输入控制
- 更新 Controller 中的价格处理逻辑以支持新精度格式化方式
|
2026-07-29 09:44:04 +08:00 |
|
tengyufan
|
0b71083864
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-07-28 14:57:35 +08:00 |
|
tengyufan
|
87266276d4
|
#EQD-6597 国联民生-簿记时新增基本费率字段(开平仓费用),并且自动计算
基础费率前端单位数量模式展示6位小数
|
2026-07-28 14:57:23 +08:00 |
|
张名锐
|
ac00548009
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-07-28 14:52:59 +08:00 |
|
张名锐
|
af364b5c8a
|
Revert "fix(swaptrade): 互换开平仓事件流水 小数点精度调整"
This reverts commit bf6b27ba19.
|
2026-07-28 14:50:01 +08:00 |
|
tengyufan
|
f225946adc
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-07-28 14:32:38 +08:00 |
|
tengyufan
|
1a80a16afd
|
#EQD-6597 国联民生-簿记时新增基本费率字段(开平仓费用),并且自动计算
fix:交易后付费用修改不反算基础费率
|
2026-07-28 14:32:28 +08:00 |
|
张名锐
|
4b02c4b67c
|
Revert "fix(entryexit): 资金记录 金额 小数点精度调整"
This reverts commit 63f12725c5.
|
2026-07-28 14:29:30 +08:00 |
|
张名锐
|
139547bd43
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-07-27 15:27:20 +08:00 |
|
hjhan
|
d0ac5c0245
|
fix(swaptrade): 恢复债券三字段被合并静默丢弃的徽标(源/手动编辑/重算)。修复 dotnumber 合并(32af85d3)三路冲突按 theirs 解决时无冲突标记却静默丢弃重算链接/源徽标/手动铅笔图标;JS 逻辑本就完好,仅界面可视化指示回归。
|
2026-07-27 15:16:12 +08:00 |
|
张名锐
|
63f12725c5
|
fix(entryexit): 资金记录 金额 小数点精度调整
- 将数值格式从三位小数调整为两位小数
- 统一正负数值的格式化处理逻辑
- 修复 NaN 判断条件下的格式化显示问题
|
2026-07-27 14:52:39 +08:00 |
|
张名锐
|
b6afab6a91
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-07-27 13:17:51 +08:00 |
|
张名锐
|
bf6b27ba19
|
fix(swaptrade): 互换开平仓事件流水 小数点精度调整
- 将事件列表中的价格字段格式化统一为两位小数或九位小数
- 替换原有的otcformat.trading.umprice格式化方法
- 在前端JavaScript中添加EventTwoDecimalFormat和EventNineDecimalFormat函数
- 修改后端C#代码中的OtcFormat调用改为OtcFormatMoney并调整精度参数
- 为事件列表脚本添加版本参数以确保缓存更新
|
2026-07-27 13:17:39 +08:00 |
|
tengyufan
|
4987962aca
|
#EQD-6597 国联民生-簿记时新增基本费率字段(开平仓费用),并且自动计算
feat: 完善互换平仓交易费用自动计算
- 支持百分比和单位数量模式自动计算平仓交易费用
- 支持全部平仓和部分平仓联动重算
- 保持手动互换不自动填充平仓交易费用
- 补充前后端相关单测
|
2026-07-27 11:57:20 +08:00 |
|
tengyufan
|
a575de7bbe
|
Revert "feat(swap): 新增基础费率字段,支持百分比/单位数量模式切换及自动计算"
This reverts commit c9071a4eff.
|
2026-07-27 09:45:41 +08:00 |
|
tengyufan
|
c9071a4eff
|
feat(swap): 新增基础费率字段,支持百分比/单位数量模式切换及自动计算
- 浮动收益端新增基础费率列(原单位交易费用),位于数量与交易费用后付之间
- 支持百分比模式(4位小数)与单位数量模式(2位小数)切换,默认百分比
- 填入基础费率后自动计算交易费用后付,手动修改后反算基础费率
- 平仓时根据 PosiFeeType 自动计算平仓交易费用,支持全部/部分平仓联动
- 收益结算(手动互换)不自动填充平仓交易费用
- 查看交易页面新增基础费率展示(百分比带%后缀4位,单位数量2位)
- swap_position 表新增 PosiFeeType 字段标识费率模式(0=百分比 1=单位数量)
- 切换模式时基础费率和交易费用归零,避免精度冲突
- 修复 TradeView.cshtml 引用了不存在字段 category_tag 的编译错误
|
2026-07-24 17:32:07 +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 |
|
张名锐
|
32af85d35c
|
Merge branch 'glms/feature/dotnumber' into glms/feature/1.4.2
# Conflicts:
# YLErpWeb/Views/SwapTrade2/TradeEdit.cshtml
# YLErpWeb/wwwroot/Scripts/app/swaptrade/swapTradeEdit.js
|
2026-07-23 17:53:37 +08:00 |
|
马冰冰
|
ef179fc26c
|
新增利息端类型字段
|
2026-07-23 16:59:58 +08:00 |
|
hjhan
|
e1e65929f1
|
债券互换三字段互算:手动编辑标识由文字改为铅笔图标+hover说明
- 三列(DP/CP/YD)的橙色"手动"文字 span 改为 glyphicon-pencil 图标,
配 title="手动编辑:该字段由您填写,不会被计算器反算覆盖",
对应需求3的"单独编辑"语义,hover 即可见说明,比纯文字更直观。
- 复用项目既有 Bootstrap Glyphicons + title 原生 tooltip 约定,零新依赖。
- 顺带修复 451 行"发行信息"图标重复 class(glyphicon glyphicon glyphicon-edit→glyphicon glyphicon-edit)笔误。
|
2026-07-23 16:53:07 +08:00 |
|
马冰冰
|
ef7fa7c6e5
|
Changes续作功能的实现
|
2026-07-23 14:37:34 +08:00 |
|
张名锐
|
bc961c3411
|
fix(swap): 修复互换交易中债券价格精度处理问题,扩充到11位计算
- 统一债券价格四舍五入规则,使用AwayFromZero模式
- 为债券类型添加特殊的精度处理逻辑
- 修复前端价格显示精度计算问题
- 优化价格存储精度控制,区分债券和其他产品类型
- 修复初始化YTM和净价精度处理问题
- 更新价格验证逻辑以支持动态精度设置
|
2026-07-23 11:06:50 +08:00 |
|
张名锐
|
c58a9d40c4
|
feat(swap): 统一【期初、期末交割价格】精度处理
- 在ConsGlobal中新增SwapDeliveryPriceRound常量定义为9位小数
- 更新incomeSwapTrade.js中交割价格计算逻辑,添加getStorageDeliveryPrice方法
- 修改SwapConsumerService中TradingAmountAvg字段的精度处理
- 添加ValidateDeliveryPrices和NormalizeDeliveryPrices方法进行交割价格验证和标准化
- 在SwapEodPositionService中对PosiGrossPrice和UnderlyingPrice进行精度处理
- 更新SwapFlowEventService中TradingAmountAvg字段的精度处理
- 在SwapFlowImportService中添加交割价格精度处理
- 更新前端界面中的输入格式配置,使用新的交割价格精度设置
- 修改SwapflowList.js中交割价格精度处理逻辑
- 在SwapFlowService中添加交割价格验证和精度处理
- 更新SwapTradeAutoService中交割价格精度处理
- 修改SwapTradeService中PosiGrossPrice字段的精度处理
- 更新unwindSwapTrade.js中交割价格计算逻辑
|
2026-07-22 14:53:46 +08:00 |
|
马冰冰
|
05ce6fb02f
|
(feature):保证金模板字段添加
|
2026-07-22 14:46:01 +08:00 |
|
hjhan
|
3cf06c2be7
|
债券计算器 返回结果后要进行 /100 * 100 处理 适配目前的 这个 /100 * 100,避免 很离谱的 值
|
2026-07-22 14:00:55 +08:00 |
|
hjhan
|
1373f57884
|
feat(swap): 债券互算接入浮动收益端(期初三字段change触发+手动/源徽标+重算)
- swapTradeEdit.onBondPriceInput:编辑净价/全价/收益率之一即标记该字段为"已手动设过"(bondManual[type]=true) 并以之为源调 /Bond/CalcBond,反算仅填充未手填字段。
- calcBondForItem:估值日用整笔交易 trade.StartDate(回退 TradeDate→null/T+1);用 main.post(...,{alertFn:main.message}) 让业务/参数错误以非阻塞 toast 展示、绝不回写;未选债券标的先提示;回写前用 getBondCalcErrorMessage 判错。
- resetBondCalc:清空手动锁定、以当前某字段为源重新自动反算。
- setUnderlyingCode:标记浮动腿 isBond(债券标的) 以启用互算。
- TradeEdit.cshtml:三字段加 v-on:change 触发 + 绿色"源"/橙色"手动"徽标 + "重算"链接。
|
2026-07-22 11:36:00 +08:00 |
|
hjhan
|
e261137c1d
|
fix(swap): 修复多次部分平仓 ClosePercent 口径(A占期初→B占剩余)转换缺失
- SwapDealService.ApplySwapTrade 入口补 ToRemainingClosePercent(A→B) 转换,与 SwapUnwind 保持一致;缺此转换导致 SaveSwapDealInternal 的 B→A 还原出错(GLMS-20260701-0006:第二次部分平仓50%被错误还原为32.5%)
- unwindSwapTrade.js 改用 swapCalc.calcCloseQtyByOriginalPercent 的 roundHalfAwayFromZero,规避 JS 浮点精度偏差(32500000*(0.5/0.65) 应为 25000000)
- SwapUnwind.cshtml 引入 swapCalc.js
- 新增 ApplySwapTradeClosePercentBugTest 回归测试;补充 swapCalc.test.js 精度用例与 GLMS20260701DbDiagnoseTest 诊断测试([Ignore])
|
2026-07-17 10:59:18 +08:00 |
|
张名锐
|
98122ef509
|
style(swaptrade2): 互换交易列表网格行高样式
- 设置 jqgrid 行高度为 25px
- 设置单元格高度为 25px 并调整行高至 20px
- 添加文本溢出省略号显示效果
- 统一设置白空间为 nowrap 避免文本换行
|
2026-07-16 14:15:45 +08:00 |
|
张名锐
|
6d591fe9af
|
Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2
|
2026-07-16 13:47:29 +08:00 |
|
张名锐
|
a6e7f7761a
|
style(trade): 统一表格行高和单元格样式
- 为 EodPositionRisks.cshtml 中的表格行设置固定高度 25px
- 为 OptionTradeList.cshtml 中的表格行设置固定高度 25px
- 为 tradeList.cshtml 中的表格行设置固定高度 25px
- 统一所有表格单元格的行高、溢出隐藏和省略号显示
- 所有表格单元格设置为单行显示并截断多余文本
- 修复了三个页面中 jqGrid 表格的视觉一致性问题
|
2026-07-16 13:46:48 +08:00 |
|
锦麟 王
|
24b43d535e
|
Merge branch 'glms/feature/1.4.2' of http://git.yiliantech.com/gitlab/otc-dev/zszq-trs into glms/feature/1.4.2
|
2026-07-15 09:39:23 +08:00 |
|
锦麟 王
|
fac84c8fa5
|
BugFix 交易新增与修改
|
2026-07-15 09:39:08 +08:00 |
|
hjhan
|
b9462510de
|
Merge branch 'merge/p132_74-risk-engine-into-1.4.2' into glms/feature/1.4.2
|
2026-07-14 15:14:27 +08:00 |
|
锦麟 王
|
74690c1783
|
Merge branch 'glms/feature/1.4.2' of http://git.yiliantech.com/gitlab/otc-dev/zszq-trs into glms/feature/1.4.2
|
2026-07-14 15:03:45 +08:00 |
|
锦麟 王
|
8b5a69fd10
|
更新交易流程和审批条件文本
|
2026-07-14 14:57:46 +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 |
|
张名锐
|
4f5af864dc
|
Merge branch 'glms/feature/valuation_0709_zmr' into glms/feature/1.4.2
|
2026-07-14 11:16:45 +08:00 |
|