Commit Graph
1040 Commits
Author SHA1 Message Date
hjhan 2bfdce6ee0 [EQD-6838] 前端 bundle 确定性重建:自动生成脚本 + 发布期自动打 bundle
新增 rebuild-bundles.py/.sh/.ps1,按 bundleconfig.json 确定性重建 6 个 bundle 产物(剥 BOM、CRLF->LF、文件间换行分隔、CSS 相对 url() 重写,已逐字节比对验证与已提交版一致,其中 bundle.css 修正了历史打包产生的 CSS 注释 GBK 乱码)。
YLErpWeb.csproj 新增 GenerateBundlesBeforePublish 目标,在 publish 前自动运行脚本重建 bundle(CI 自动生效,无 python3 时优雅跳过回退已提交产物),从此改源文件后部署自动重新打 bundle,不再需要手工记得到处重建。
.gitattributes 将 bundle 锁为 eol=lf,.editorconfig 为 JS/TS 加 charset=utf-8,从根上防止 BOM/ZWNBSP 复发。
2026-07-29 17:47:13 +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
hjhan 4bebcf7fcb fix(bundle): bundle.js 纳入 ENTER 事件改动并移除 ZWNBSP;MyJs.js 剥离 BOM [EQD-6838] 2026-07-29 16:32:15 +08:00
hjhan 6911b9d758 revert: 禁用 BuildBundlerMinifier 并还原原始可用 bundle 产物,恢复测试环境
- 现象:上一提交接入 BuildBundlerMinifier 后,Jenkins 构建按 bundleconfig.json 重建的
  bundle 与原始可用版本不一致(dayjs 插件顺序错乱、且 bundleconfig.json 缺少 moment.js
  等多文件),导致 bundle.js 加载即抛 dayjs_plugin_isoWeek is not defined,整页脚本崩溃
  (jqGrid/main/otcformat 等全局未定义)。
- 本次先恢复可用性:
  1. 还原 8 个原始可用 bundle 产物(b9f2bd14 版本: jquery.js/bundle.js/vue.js/bundle.css/
     bundleV2.css/bundleV2.js/bundle.min.css/bundleV2.min.css) 重新纳入版本库,Jenkins 原样部署。
  2. 移除 YLErpWeb.csproj 的 BuildBundlerMinifier 包,避免构建时再用错乱 config 覆盖还原产物。
  3. 还原 .gitignore 中 bundle 忽略段,使产物重新被跟踪。
- 后续(待讨论):修正 bundleconfig.json 的输入顺序与文件集(对齐原始可用顺序 + 补 moment.js
  等),再重新启用自动构建,届时 fastVue.base.js 的 enter 改动会被正确打包。
- 注:本提交还原的是 enter 修复前的可用基线(页面可用,回车触发计算器仍待第二步解决)。
2026-07-29 15:57:38 +08:00
hjhan 14ed09d628 build: 接入 BuildBundlerMinifier 自动重建 bundle 产物并剥离源文件 BOM
- 根因:页面(_MainLayout 等)加载的是 bundle.js 等由 bundleconfig.json 打包的生成产物,
  但 csproj 未接入 BundlerMinifier,dotnet build 不会重生它们,Jenkins 只是把 git 里
  陈旧的 bundle.js 原样发布 -> 改了 fastVue.base.js 后回车不生效(部署的 bundle 仍是无
  enter 的旧版)。且源文件带 UTF-8 BOM,拼接后每个 BOM 落入文件中间成为 ZWNBSP,提交
  diff 充满不可见字符(历史上曾多次在产物上手工清 BOM 打补丁)。
- 修复:
  1. YLErpWeb.csproj 新增 BuildBundlerMinifier(3.2.449);其 BundleMinify 目标在
     BeforeCompile 自动按 bundleconfig.json 重建全部 bundle,Jenkins 构建即自动产出正确版本,
     不再需要手工重建并提交 bundle.js。
  2. .gitignore 忽略 8 个生成产物(jquery.js/bundle.js/vue.js/bundle.css/bundleV2.css/
     bundleV2.js/bundle.min.css/bundleV2.min.css) 并 git rm --cached 取消跟踪;这些产物
     永不再入版本库、永不陈旧。
  3. 剥离 15 个喂给 bundle 的源文件(及 css)开头的 UTF-8 BOM,使重建产物不再含 ZWNBSP。
- 验证:本地 dotnet build -t:BundleMinify 重建后 8 个 bundle 全部 BOM=0,bundle.js 含完整
  enter 链路(_enterFired/isEnter/$emit('enter'));删除 bundle.min.css 后构建可自动重建。
2026-07-29 15:42:35 +08:00
hjhan 7fc4babc28 fix(fast): 重建 bundle.js 纳入 ENTER 事件改动 + 新增 enter 链路单测
- 根因:页面(_MainLayout)加载的是 bundle.js(由 bundleconfig.json 打包 fastVue.base.js 等生成),
  而非原始 fastVue.base.js;源码树 bundle.js 是改动前的陈旧构建产物(tracked in git),
  导致测试环境部署拿到缺 _enterFired/$emit('enter') 的版本,回车不触发计算器($emit('enter') 未被发出)。
- 修复:按 bundleconfig.json 输入顺序重建 bundle.js(minify:false=顺序拼接),diff 仅 10 行,
  重建后含完整 enter 链路(_enterFired/isEnter/$emit('enter')),与源码 fastVue.base.js 一致。
- 新增 fastVue.enter.test.js(jsdom+jQuery):覆盖 numberInput 底层 Enter→_enterFired→onchange(isEnter) 与
  vueNumberInput 组件 $emit('input')+$emit('enter') 分发,9 项全过;定位期单测证明代码逻辑本身正确,
  问题在构建/部署产物陈旧。
2026-07-29 15:22:06 +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
tengyufan 8c4f452482 fix: 统一互换部分平仓交易费用与待结算费用的分摊舍入 2026-07-29 13:47:45 +08:00
tengyufan e1d68393f8 fix: 修复基础费率平仓待结算费用按实际平仓规模分摊 2026-07-29 13:07:55 +08:00
hjhan 422507df8d fix(swaptrade): 新增交易切换标的时清空残留的净价/全价/收益率
setUnderlyingCode 在切换标的时仅调用 clearBondCalcFlags 清掉手动/源标志,未清字段值;getSpotPrice 只回填净价/全价,收益率(InitYtm)无刷新逻辑,导致旧债券收益率残留污染新债券。显式置空 PosiNetNoFeePrice/PosiGrossPrice/InitYtm,避免残留。
2026-07-28 18:53:57 +08:00
马冰冰 de84a90bad fix: 国联民生-簿记中增强收益结构可以识别并且对应到交易确认书中 2026-07-28 18:25:03 +08:00
马冰冰 d89827f9ad Merge branch 'refs/heads/glms/feature/1.4.2' into glms/feature/1.4.2-0727 2026-07-28 16:50:09 +08:00
马冰冰 d836d192fe fix: #EQD-6812 国联民生-TRS簿记页面增加续做按钮(自动新建一个除日期外要素相同的合约)-交易费用后付字段未填充 2026-07-28 16:48:50 +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
张名锐 63932918a1 Revert "feat(swaptrade): 添加日终持仓风险导出功能和精度控制"
This reverts commit b1c91bca34.
2026-07-28 14:50:05 +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
张名锐 bc9b8a0be1 Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2 2026-07-28 14:31:33 +08:00
张名锐 53b858cba4 Revert "refactor(swap): 互换开平仓事件流水 导出小数点精度调整"
This reverts commit 89da38fab9.
2026-07-28 14:30:03 +08:00
张名锐 85a1eb776c Revert "fix: 限额监控小数点精度调整"
This reverts commit 9bff198038.
2026-07-28 14:29:47 +08:00
张名锐 30495d1f5e Revert "fix(grid): 情景分析 行权价格式修改"
This reverts commit ba40ab27e8.
2026-07-28 14:29:43 +08:00
张名锐 9c4cb65600 Revert "fix(risk): 风险预警/禁止查询 小数点精度调整"
This reverts commit ae5f10124f.
2026-07-28 14:29:36 +08:00
张名锐 4b02c4b67c Revert "fix(entryexit): 资金记录 金额 小数点精度调整"
This reverts commit 63f12725c5.
2026-07-28 14:29:30 +08:00
张名锐 caf011f08d Revert "fix:结算确认书 份额 结算价 小数点位数调整"
This reverts commit b9f0d9d99d.
2026-07-28 14:29:23 +08:00
tengyufan 80fbb18461 #EQD-6597 国联民生-簿记时新增基本费率字段(开平仓费用),并且自动计算
修补精度
2026-07-28 11:39:09 +08:00
lisong 018d8c9bb6 Merge remote-tracking branch 'dest/glms/feature/1.4.2' into feature/p132_74-risk-engine 2026-07-27 17:27:48 +08:00
lisong 3ec4f3440f Merge branch 'feature/p132_74-risk-engine' of https://gitee.glmszq.com/gsty/onederiv/trs into feature/p132_74-risk-engine 2026-07-27 17:26:51 +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
张名锐 b9f0d9d99d fix:结算确认书 份额 结算价 小数点位数调整 2026-07-27 15:23:27 +08:00
hjhan d0ac5c0245 fix(swaptrade): 恢复债券三字段被合并静默丢弃的徽标(源/手动编辑/重算)。修复 dotnumber 合并(32af85d3)三路冲突按 theirs 解决时无冲突标记却静默丢弃重算链接/源徽标/手动铅笔图标;JS 逻辑本就完好,仅界面可视化指示回归。 2026-07-27 15:16:12 +08:00
ruisu 2977f658f7 feat:支持变量为复杂表达式。 2026-07-27 15:01:51 +08:00
张名锐 63f12725c5 fix(entryexit): 资金记录 金额 小数点精度调整
- 将数值格式从三位小数调整为两位小数
- 统一正负数值的格式化处理逻辑
- 修复 NaN 判断条件下的格式化显示问题
2026-07-27 14:52:39 +08:00
张名锐 ae5f10124f fix(risk): 风险预警/禁止查询 小数点精度调整
- 将 otcformat.trading.umprice 替换为 EventTwoDecimalFormat 格式化器
- 新增 EventTwoDecimalFormat 函数处理数值格式化为两位小数
- 优化 StrikeFormatter 函数的价格格式化逻辑
- 统一价格显示格式为两位小数的标准格式
- 修复空值和无效数值的处理机制
2026-07-27 14:46:01 +08:00
张名锐 5e1b1178af Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2 2026-07-27 14:33:36 +08:00
张名锐 ba40ab27e8 fix(grid): 情景分析 行权价格式修改
- 移除冗余的空值检查逻辑,统一处理null、undefined、空字符串和NaN值
- 简化行权价格式化算法,直接基于单元格值进行数值转换
- 根据IsMoneynessOption字段决定返回百分比或数值格式
- 修复边界条件处理,确保数据展示的一致性
- 删除多余的测试状态变量相关代码
2026-07-27 14:33:22 +08:00
张名锐 9bff198038 fix: 限额监控小数点精度调整 2026-07-27 14:08:10 +08:00
张名锐 89da38fab9 refactor(swap): 互换开平仓事件流水 导出小数点精度调整
- 将InitYtm属性从decimal?类型更改为string类型
- 调整TradingAmountAvg、TradingAmountFeeAvg和Quantity字段的小数位数从4位改为2位
- 修改InitYtm的赋值逻辑,添加空值检查并应用OtcFormatMoney格式化方法
- 统一货币金额格式化参数设置,移除分组符号并指定小数位数
2026-07-27 13:35:16 +08:00
hjhan e188ba5038 test(swap): 新增 ClosePercent 口径A产品契约测试,防止平仓比例被改为占剩余口径
新增前后端回归测试,锁定产品需求:ClosePercent 永远是占期初名义本金的比例。后端 CPC_001~010 装配测试验证 SwapDealService 真实执行 ToRemainingClosePercent/ToOriginalClosePercent 转换;前端 16 项接线测试验证 unwindSwapTrade.js 使用 NotionalValue 作为分母且 postData 携带 notionalValue 字段。测试背景:c9071a4e 曾将 ClosePercent 改为占剩余口径导致回归但现有测试全通过,本测试通过源码装配与契约验证弥补该缺口。
2026-07-27 13:18:32 +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 912b319a3f Merge remote-tracking branch 'origin/glms/feature/1.4.2' into glms/feature/1.4.2 2026-07-27 11:57:31 +08:00
tengyufan 4987962aca #EQD-6597 国联民生-簿记时新增基本费率字段(开平仓费用),并且自动计算
feat: 完善互换平仓交易费用自动计算

- 支持百分比和单位数量模式自动计算平仓交易费用
- 支持全部平仓和部分平仓联动重算
- 保持手动互换不自动填充平仓交易费用
- 补充前后端相关单测
2026-07-27 11:57:20 +08:00
张名锐 b1c91bca34 feat(swaptrade): 添加日终持仓风险导出功能和精度控制
- 为价格字段添加9位小数精度的导出格式化器
- 实现自定义导出函数exportEodPositionRows以支持完整数据导出
- 在jqGrid列配置中添加exportFormatter和exportNumberFormat属性
- 更新utils.js中的导出逻辑以支持自定义格式化器和数字格式
- 在数据库上下文中添加ClientBalanceDaily实体的货币精度转换配置
- 修复导出时价格精度丢失问题,确保财务数据准确性
2026-07-27 11:16:50 +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
张名锐 d0693b2192 Merge branch 'glms/feature/dotnumber' into glms/feature/1.4.2 2026-07-24 14:11:29 +08:00