尹峰
|
4dc1fc3b4b
|
优化异步逻辑
|
2026-07-13 18:57:36 +08:00 |
|
hjhan
|
18ba0271ec
|
refactor: eod 数据来源写库改用 EodPriceBase 常量
EodSyntheticPriceSaveService 三处 DataSource="系统"、SwapFlowService 一处 DataSource="人工",均改为引用既有 EodPriceBase.系统/人工 常量,消除 eod 数据来源列值散落字面量。仅统一“数据来源”语义,不动无关的系统操作员名(OptName/UserName 等)字面量。
|
2026-07-13 16:56:04 +08:00 |
|
hjhan
|
0fb8255b89
|
fix: 日终价格「系统」筛选修复债券来源口径不一致
债券分支在 DataSource=系统 时未过滤 update_user,导致后处理按 update_user 把手工改过的债券标成"人工"混入系统筛选结果。改为:系统仅命中 update_user==null(中债自动同步)、人工仅命中 update_user!=null,与显示口径一致。连库复现并验证:修复前系统筛选漏出3条人工债券,修复后0泄漏。
|
2026-07-13 16:00:49 +08:00 |
|
尹峰
|
20795e6610
|
Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine
|
2026-07-13 15:51:32 +08:00 |
|
尹峰
|
0a8ee77f3c
|
优化缓存刷新逻辑
|
2026-07-13 15:51:17 +08:00 |
|
ruisu
|
0e90c6f0cc
|
Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine
|
2026-07-13 15:48:21 +08:00 |
|
ruisu
|
82688fa930
|
feat:风控引擎内存上下文改为查询数据库,修改注释中的相应规则,
|
2026-07-13 15:47:37 +08:00 |
|
hjhan
|
0fda5fd1cc
|
fix: 日终价格「数据来源」改为价格行自身语义(人工/系统两档)
移除中债估值细分与操作人姓名显示,按价格行自身 DataSource 列判定:期货/股票读 DataSource(otc-marketdata 同步写系统、手工写人工);债券 update_user 非空→人工、否则→系统。筛选仅人工/系统两选项,异常来源值返回空。ResolveBondDisplaySource 精简为单参纯函数。
|
2026-07-13 15:42:28 +08:00 |
|
hjhan
|
02624abf75
|
test: 日终价格回归测试(日期窗口纯单测 + 新增可见性DB集成测试)
- EodPriceService 提取 static ResolveValueDateWindow(reqStart,reqEnd),使日期窗口逻辑可脱离数据库单测
- EodPriceDtoTest 新增4个纯单测:未传日期回退±1年、起止都填今天→仅今天窗口、显式区间原样生效、结束日今天上界为明天;锁定'页面始终5条'根因
- EodPriceGoldenReplayTest 新增 Record_NewRecordVisibility([Ignore]手动跑):直接跑 SearchUnderlyingList,锁定(a)今天+已上市可查 (b)日期0001查不出 (c)未上市查不出
- 构建0错误;EodPriceDtoTest 19通过0失败
|
2026-07-13 13:37:18 +08:00 |
|
hjhan
|
d978f7048d
|
refactor: 日终价格联想逻辑抽成共享 eodUnderlyingSuggest.js 并修复下拉静默失效
- 三编辑页重复的 eodSuggest/eodRenderSuggest/eodHideSuggest/checkSubmitData/初始化 抽成 eodUnderlyingSuggest.js 一处引用,禁止逐页复制内联脚本
- 修复静默 bug:cshtml 缺 #eodSuggestBox 容器且 class 无 CSS 导致下拉从未渲染;改为 JS 动态创建盒子+样式内联
- 修复点选 ReferenceError:回调由对象字面量求值改为 window['lookup'+kind] 安全解析+typeof 校验
|
2026-07-13 13:30:35 +08:00 |
|
hjhan
|
045361dd9b
|
feat: 日终价格新增标的代码支持输入联想(服务端模糊匹配+原生下拉,防填错)
- 新增 SuggestUnderlyingForEod(code,kind):按代码/名称 LIKE 匹配、Take(20)、强制 LaunchState==1 与类型,与列表查询/Lookup 三处口径一致
- 三个编辑页代码输入框加 oninput 防抖联想,原生 fixed 下拉展示候选,点选回填精确代码并复用失焦校验带出市场;期货额外回填 UnderlyingId
- 不依赖任何前端自动补全插件(jQuery UI 未打包),可支撑几十万标的数据量
|
2026-07-13 13:25:19 +08:00 |
|
hjhan
|
2ade7b46bb
|
fix: 日终价格新增改回手动输入标的代码(删除全量下拉、解决null报错与市场带出)
- 删除 BuildUnderlyingOptions/UnderlyingOptionVm(几十万债券全量下拉导致卡死、选不动)
- 新增轻量 LookupUnderlyingForEod(code,kind):精确按代码查一条、强制 LaunchState=="1"(与列表查询对齐,杜绝幽灵记录)
- 三个编辑页新建时标的代码改为可输入框,onblur 用 main.post 带出市场;期货额外回填 UnderlyingId(按id join)
- 隐藏域按新建/编辑分渲染,修复 saveeod_*/on*Picked 读 null 报错
- 删除已废弃的 eodPriceAdd.cshtml
|
2026-07-13 13:15:08 +08:00 |
|
hjhan
|
8cade8ae53
|
fix: 修复日终价格新增后查不出(picker过滤LaunchState、新记录日期默认今天、列表新增改三选一)
- EodPriceController.BuildUnderlyingOptions 增加 LaunchState=="1" 过滤,与列表查询对齐,避免新增非激活标的被 inner join 永久过滤
- 三个编辑页新建分支将 valuation_date/ValueDate 默认设为今天,落在列表默认查询窗口内
- eodStockPriceEdit 补全 StockPicker 下拉(此前股票无picker,UnderlyingCode为空hidden导致查不出),删除上传无用的状态字段
- eodPriceList.js openEodPriceAdd 改为三选一(债券/期货/股票)打开各自编辑页空enid,替代已废弃的 EodPriceAdd 搜索页
|
2026-07-13 12:34:39 +08:00 |
|
hjhan
|
5cc24f787e
|
fix: 修复日终价格新增页自动补全失效与查询开屏报错
EodPriceService.SearchUnderlyingList 三分支 Concat 投影成员不对称(债券缺 DataSource、期货/股票缺 UpdateUser),EF 翻译期抛 'DataSource' key not present 致 eodPriceQuery 开屏崩溃,补齐成员对称。eodPriceAdd.cshtml 原用 jQuery UI .autocomplete() 但 bundle 未打包该插件,调用即抛错、脚本中断、标的无法搜索;改为自带下拉补全(纯 jQuery+ajax,不依赖外部插件)。
|
2026-07-13 11:22:12 +08:00 |
|
hjhan
|
36d8909fe0
|
feat: 日终价格管理新增统一录入表单(按标的类型自动落表)
列表页新增"新增"按钮(结算管理-日终价格修改 权限),打开统一新增页;选标的后按 UnderlyingInstrumentType 自动显示对应字段组,保存时路由到正确的 Save 方法落到对应表;字段与上传 Excel 对齐,避免冗余字段。
|
2026-07-13 11:00:46 +08:00 |
|
hjhan
|
760ffd62e6
|
fix: 日终债券来源固定中债估值、人工改动显示操作人并补上传溯源
china_bond_valuation 来源恒为中债估值(聚源仅转发,无人手工维护),不再按 JSID 推断系统/人工;eod 两表仍用自带 DataSource(人工/系统)。债券被人工改动(update_user 非空)时,日终列表来源列显示操作人姓名,否则显示中债估值;操作人经已有 create_user/update_user 列溯源(零 DDL)。手工上传 xlsx 的债券分支补戳操作人,与表单编辑口径一致。配套单测 EodPriceDtoTest / EodPriceGoldenReplayTest + golden JSON。
|
2026-07-13 11:00:33 +08:00 |
|
锦麟 王
|
f3ca4dc498
|
平仓审核不符合条件直接跳过
|
2026-07-13 10:59:37 +08:00 |
|
张名锐
|
a7c4344436
|
refactor(swaptrade): 移除互换估值导出功能并移除折叠分组
- 移除 excellentexport.js 依赖库
- 删除导出互换估值按钮及相关功能函数
- 移除网格分组配置和导出逻辑代码
- 简化网格初始化参数,移除 grouping 配置
- 更新隐藏列注释说明
- 添加默认业务列显示保障机制
- 优化列选择器初始化流程
|
2026-07-10 23:56:54 +08:00 |
|
hjhan
|
3f5e9a0be9
|
fix: 日终价格管理按真实标的类型显示并统一数据来源
1. 新增 RealInstrumentType 显示字段,从 underlying_manager 取真实类型,
解决 eod_commodity_future_price 记录一律显示'商品期货'的问题
(UnderlyingInstrumentType 继续作为查表路由键,前端/查看零改动)。
2. EodPriceBase 补'系统'常量,债券 DataSource 改为一次性三元判定,
消除散落的 JSID 魔法字符串与重复 remap。
注:受'不增字段、不动库'约束,债券来源仍依赖 JSID 推断。
|
2026-07-10 19:41:19 +08:00 |
|
尹峰
|
abf2cf5985
|
规则和应用增加description字段&变量和规则保存校验公式编译有效性
|
2026-07-10 18:23:39 +08:00 |
|
张名锐
|
7df9e8060e
|
feat(swap): 添加互换合约估值功能和优化数据模型
- 在ClientSwapPositionRequest中新增BookId字段用于资产分类查询
- 新增FloatingUnrealizedPnl、InterestPaymentMethod、MaturityNettingValuation等估值相关字段
- 添加MaturitySettlementDate、DividendAmount、AdditionalMarginAmount等持仓详情字段
- 更新前端表格列模型,调整浮动端和估值实现收益分组显示
- 实现框架合约导出功能,支持完整数据筛选结果导出
- 优化名义本金计算逻辑,修复长短仓数值处理问题
- 完善付息方式和估值口径的业务逻辑处理
- 添加TRS估值、期间分红等关键业务字段计算
- 实现Excel导出时分组表头格式化功能
- 修复框架合约列排序和分组表头显示问题
|
2026-07-10 18:20:20 +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 |
|
张名锐
|
6679abbc19
|
fix(document): 修正票面利率计算显示
- 修复票面利率显示错误问题,将数值乘以100转换为百分比格式
- 确保票面利率正确显示为百分比数值而非小数形式
|
2026-07-10 12:32:29 +08:00 |
|
ruisu
|
b5f6b7f61a
|
feat:增加ruleid为空的校验,以支持rule新增。增加preload成功编译rule的日志
|
2026-07-10 10:31:41 +08:00 |
|
ruisu
|
e04333cf70
|
Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine
|
2026-07-09 18:08:40 +08:00 |
|
ruisu
|
18fdb9e9f1
|
feat:增加单条rule增删改函数,以及application全量刷新函数。
|
2026-07-09 18:01:55 +08:00 |
|
尹峰
|
c1ded96985
|
变量级联更新规则优化&增补注释
|
2026-07-09 17:52:14 +08:00 |
|
ruisu
|
66381e5dc4
|
feat:在系统缓存刷新功能内,增加风控引擎缓存刷新
|
2026-07-09 17:41:10 +08:00 |
|
ruisu
|
4e6d887b68
|
feat:修改本地规则
|
2026-07-09 16:18:28 +08:00 |
|
张名锐
|
5f27c85ae9
|
feat(export): 为Excel导出功能添加分组表头支持
- 修改exportVisibleColumnsToExcel函数,增加groupConfig参数
- 实现buildGroupHeaderHtml函数用于构建二级表头结构
- 当存在分组配置时自动生成合并单元格的表头
- 支持按字段分组显示标题并设置样式
- 更新函数注释文档说明新参数用途
|
2026-07-09 15:21:05 +08:00 |
|
张名锐
|
358993bedb
|
feat(swaptrade): 添加期末头寸风险表新字段支持
- 在EodSwap实体模型中新增标的类型、期间付息/分红、保证金利息收支字段
- 在前端表格列模型中添加标的类型、期间付息/分红列定义
- 在前端表格分组配置中将新字段归入对应分组显示
- 实现后端服务中对新字段的数据查询和计算逻辑
- 添加保证金利息收入支出的分类汇总功能
- 完善标的类型字段的数据源获取和展示逻辑
|
2026-07-09 15:11:58 +08:00 |
|
ruisu
|
48d90bef50
|
Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine
|
2026-07-09 10:26:44 +08:00 |
|
ruisu
|
d14bdc18e7
|
feat:风控引擎增加超时机制:在进行超时校验的时候,如果超时,不但重置新风控重新校验,老风控的二次校验也不允许直接放行,需要重新校验。
|
2026-07-09 10:26:26 +08:00 |
|
尹峰
|
fc51bfab68
|
恢复被revert误操作的文件
|
2026-07-08 10:59:13 +08:00 |
|
hjhan
|
0bef986e10
|
fix(valuation): 修复折叠分组后表头消失无法展开的问题
问题:折叠一个分组时,该组所有列被 hideCol 隐藏后,buildGroupHeaders
因 visibleColsInGroup 为空而 continue 跳过该分组,导致分组表头不渲染,
用户失去展开入口(表现为"收起后整组列和表头都不见了")。
修复:
- applyGroupHeaders:折叠时保留该组首列作为"展开锚点"(只隐藏 slice(1)),
确保 setGroupHeaders 仍能为该分组渲染表头单元格
- buildGroupHeaders:折叠态下 numberOfColumns=1,表头显示 ▶ 可点击展开;
被 setcolumnChooser 主动隐藏的分组仍跳过(不影响)
- 展开时恢复该组全部列
测试场景:
1. 互换估值Tab折叠任一分组 → 表头保留(▶),点击可展开恢复
2. 框架合约Tab同上
3. 全部折叠 → 每组各保留1列锚点,页面仍有列可操作
|
2026-07-08 09:08:08 +08:00 |
|
hjhan
|
5e27d6cef8
|
docs(valuation): 新增估值模块前端改造说明文档
记录:
- 改造范围、路径A决策依据、方案对比(否决otcdms-ui/free-jqGrid的理由)
- 分组配置映射表(需求字段 ↔ colModel.name ↔ 后端字段)
- 缺失字段清单(TODO,待后端确认):标的类型/期间付息分红/付息方式/合约估值两口径/保证金利息/期间分红/预付金系列/TRS估值
- 已知约束:冻结列冲突绕法、setcolumnChooser兼容、导出口径区分
- 测试要点、后续工作
|
2026-07-08 08:57:46 +08:00 |
|
hjhan
|
a617ed6d93
|
feat(valuation): 互换估值Tab 接入分组折叠 + 簿记筛选 + 导出
对应需求《估值模块V1》模块二:每日估值报告 - 互换估值Tab
改动:
1. 新增 eodSwapValuationGroupConfig 分组配置(4组:基本信息/利率与规模/价格/收益)
现有列顺序已天然满足分组连续性,无需重排,风险最低
2. gridComplete 在 setcolumnChooser 完成后初始化可折叠分组表头
保留原有异常行标红(dataError)逻辑
3. 新增簿记账户筛选(需求3.1):cshtml 加 BookId 下拉,searchPositionDetials 传 BookId
未选择时传空,后端返回该对手方下全部账户合约
4. 新增「导出互换估值」按钮(需求3.2+4.2),走通用 exportVisibleColumnsToExcel
文件名:{对手方}_每日估值报告_互换估值_{估值日}.xls
与现有 DownLoadReport(整份报告)独立,互不影响
缺失字段(TODO,待后端确认):期间分红、预付金系列(利率/利息/期初/追加)、TRS估值
测试要点:簿记筛选生效、分组表头显示、折叠交互、异常行标红不受影响、导出可用
|
2026-07-08 08:56:34 +08:00 |
|
hjhan
|
d40b561a42
|
feat(valuation): 框架合约Tab 导出可见列Excel + 通用导出工具
对应需求《估值模块V1》4.2:导出当前筛选后可见列数据,格式与前端一致。
改动:
1. utils.js 新增通用导出工具 exportVisibleColumnsToExcel(jgrid, fileName)
- 零依赖,基于 HTML table + ms-excel MIME
- 只导出当前可见列(与折叠状态联动:收起的分组列不导出)
- 与后端模板导出(SettlementReport/EodPositionRisksQueryService)口径独立,互不干扰
2. EodPositionRisks.cshtml 恢复导出按钮(原 exportTrade 被注释,现改为 exportVisibleColumns)
3. EodPositionRisks.js 新增 exportVisibleColumns(),文件名含Tab名+结算日期
测试要点:导出列=页面可见列、列名=表头名、数据=当前筛选数据、折叠的列不导出
|
2026-07-08 08:53:44 +08:00 |
|
hjhan
|
76af939332
|
feat(valuation): 框架合约Tab 接入可折叠分组表头 + 字段命名对齐
对应需求《估值模块V1》模块一:日终持仓风险_互换 - 框架合约Tab
改动:
1. colModelGridEodSwap 列按需求2.2分组重排(组内列连续,满足setGroupHeaders要求)
- 互换类型移至基本信息组(原在末尾)
2. 字段命名对齐需求用词(纯label改动,不改name/index):
- 合约利率端待实现收益 → 合约利息端待实现收益
- 预付金字段 → 保证金(收取/支付 初始/维持保证金)
3. 新增 eodSwapGroupConfig 分组配置(7组:基本信息/名义本金/标的市值/浮动端/利息端/保证金/估值与实现收益)
4. gridComplete 在 setcolumnChooser 完成后初始化可折叠分组表头
缺失字段(TODO,待后端确认):
- 标的类型、期间付息/分红、付息方式、合约估值(两口径)
测试要点:框架合约Tab表头分组合并、点击折叠/展开、footer汇总行(DV)正常、列设置功能正常
|
2026-07-08 08:51:33 +08:00 |
|
hjhan
|
7928000dc6
|
feat(valuation): 新增通用可折叠分组表头工具 initCollapsibleGroupHeaders
jqGrid 4.5.4 原生 setGroupHeaders 只支持静态合并表头,不支持点击折叠。
本次在 utils.js 新增通用工具函数,为估值模块前端重构提供基础能力:
- initCollapsibleGroupHeaders(jgrid, groupConfig): 生成合并表头 + 点击折叠/展开
- refreshCollapsibleGroupHeaders(jgrid): 列重排/显隐后重建分组边界
- 复用本文件 setcolumnChooser2 已验证的 destroyGroupHeader → 显隐列 → setGroupHeaders 重建模式
- 默认全部展开,折叠态显示 ▶ 展开态显示 ▼
- 与 setcolumnChooser 通过事件委托协调,不依赖 free-jqGrid 商业版
不换库、零全站回归风险。后续提交接入业务页面。
|
2026-07-08 08:50:14 +08:00 |
|
锦麟 王
|
fb59c6180a
|
支持审批流程中的分支网关和节点触发条件
|
2026-07-07 15:47:17 +08:00 |
|
尹峰
|
b8fb8bb148
|
resolve confilct YLContext.cs & YLErpDAL.csproj
|
2026-07-07 15:25:27 +08:00 |
|
ruisu
|
879fdbea89
|
resolve confilct QuotaMonitorService.cs
|
2026-07-07 15:11:37 +08:00 |
|
ruisu
|
2a8544a7b7
|
fix:删除测试数据
|
2026-07-07 14:52:47 +08:00 |
|
尹峰
|
8ab62928b6
|
revert otcformat.js
|
2026-07-07 13:57:38 +08:00 |
|
尹峰
|
de628719dc
|
resolve confilct QuotaMonitorService.cs
|
2026-07-07 13:51:24 +08:00 |
|
hjhan
|
b3c2fdfe38
|
test(fe): 补充守卫注释与架构闸门,防新增内联金额计算
- 生产接线处补注释,追溯到具体历史 bug (dcf649f2/20ea93d8/3c5f25a5/f873239a)
- swapCalc.js 注明哪些函数已接入生产、哪些是纯交叉校验规格
- 新增 guard_arch.js 架构闸门:扫描提交新增行,拦截 Vue 组件内联金额计算
- pre-commit hook 串行运行 单元测试 + 架构闸门
|
2026-07-07 13:26:32 +08:00 |
|
hjhan
|
7f64d48699
|
test(fe): 接入 SwapCalc 纯计算模块 + 前端精度回归测试
- incomeSwapTrade.js / swapTradeEdit.js 改为调用 SwapCalc.*(缩放/取整/全价推导)
- 新增 fe-tests 守卫:4 个历史 bug 回归 + 8 场景对齐 C# FrontendCalcReference 金标准 + otcformat.js 精度配置守卫
- 新增 .git/hooks/pre-commit 自动运行前端守卫(失败阻断提交)
|
2026-07-07 12:30:19 +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 |
|