fix(swap): 还原otcformat.js精度配置,修复期末全价只能录2位小数

f0ad4406(Revert ruisu合并进来的代码)在回滚RiskModule时,
误将otcformat.js从'压缩单行全precision=9'改成'多行precision=2',
导致StockEqvNotional/tradeSinglePrice/tradePrice/notional等字段
精度从9位降到2位,期末全价(TradingAmountAvg)等只能录2位小数。

还原到f0ad4406^的正确版本(全precision=9),恢复所有字段9位精度。

根因:前端运行时配置App_Data/Config/otcformat.js的precision限制,
与后端实体(EF默认decimal)和DB列(decimal(22,10))无关。

历史脉络:
- 3e650b8f(2026-05-28) 首次引入precision=2误伤
- 1932a2e7(2026-05-29) 首次还原回全9
- f0ad4406(2026-07-03) Revert ruisu时再次误伤(本次修复对象)
This commit is contained in:
hjhan
2026-07-06 09:55:01 +08:00
parent d3a47e6d08
commit 088df27011
+1 -124
View File
@@ -1,125 +1,2 @@
var main = main || {};
main.formatOptions={
"trading": {
"umprice": {
"precision": 9,
"grouping": true,
"rounded": true,
"percent": false,
"minDecimals": 9,
"maxDecimals": 0
},
"umpriceP": {
"percent": true,
"precision": 2,
"grouping": false,
"rounded": true,
"minDecimals": 2,
"maxDecimals": 0
},
"umpricePR": {
"precision": 4,
"grouping": false,
"rounded": true,
"percent": false,
"minDecimals": 4,
"maxDecimals": 2
},
"tradeSinglePrice": {
"precision": 2,
"grouping": true,
"rounded": true,
"percent": false,
"minDecimals": 2,
"maxDecimals": 0
},
"premiumRateP": {
"percent": true,
"precision": 2,
"grouping": false,
"rounded": true,
"minDecimals": 2,
"maxDecimals": 0
},
"premiumRate": {
"precision": 4,
"grouping": false,
"rounded": true,
"percent": false,
"minDecimals": 4,
"maxDecimals": 2
},
"tradePrice": {
"precision": 2,
"grouping": false,
"rounded": true,
"percent": false,
"minDecimals": 2,
"maxDecimals": 0
},
"StockEqvNotional": {
"precision": 2,
"grouping": true,
"rounded": true,
"percent": false,
"minDecimals": 2,
"maxDecimals": 0
},
"notional": {
"precision": 2,
"grouping": true,
"rounded": true,
"percent": false,
"minDecimals": 2,
"maxDecimals": 0
},
"notionalP": {
"percent": true,
"precision": 2,
"grouping": false,
"rounded": true,
"minDecimals": 2,
"maxDecimals": 0
},
"volatility": {
"precision": 4,
"grouping": false,
"rounded": true,
"percent": false,
"minDecimals": 4,
"maxDecimals": 2
},
"volatilityP": {
"percent": true,
"precision": 2,
"grouping": false,
"rounded": true,
"minDecimals": 2,
"maxDecimals": 0
},
"greek": {
"precision": 2,
"grouping": false,
"rounded": true,
"percent": false,
"minDecimals": 2,
"maxDecimals": 0
},
"marginRateP": {
"percent": true,
"precision": 2,
"grouping": false,
"rounded": true,
"minDecimals": 2,
"maxDecimals": 0
},
"marginRate": {
"precision": 4,
"grouping": false,
"rounded": true,
"percent": false,
"minDecimals": 4,
"maxDecimals": 2
}
}
};
main.formatOptions = { "trading": { "umprice": { "trimTailZeros": true, "precision": 9, "grouping": true, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "umpriceP": { "trimTailZeros": true, "percent": true, "precision": 9, "grouping": false, "rounded": true, "minDecimals": 2, "maxDecimals": 9 }, "umpricePR": { "trimTailZeros": true, "precision": 9, "grouping": false, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "tradeSinglePrice": { "trimTailZeros": true, "precision": 9, "grouping": true, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "premiumRateP": { "trimTailZeros": true, "percent": true, "precision": 9, "grouping": false, "rounded": true, "minDecimals": 2, "maxDecimals": 9 }, "premiumRate": { "trimTailZeros": true, "precision": 9, "grouping": false, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "tradePrice": { "trimTailZeros": true, "precision": 9, "grouping": false, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "StockEqvNotional": { "trimTailZeros": true, "precision": 9, "grouping": true, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "notional": { "trimTailZeros": true, "precision": 9, "grouping": true, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "notionalP": { "trimTailZeros": true, "percent": true, "precision": 9, "grouping": false, "rounded": true, "minDecimals": 2, "maxDecimals": 9 }, "volatility": { "trimTailZeros": true, "precision": 9, "grouping": false, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "volatilityP": { "trimTailZeros": true, "percent": true, "precision": 9, "grouping": false, "rounded": true, "minDecimals": 2, "maxDecimals": 9 }, "greek": { "trimTailZeros": true, "precision": 9, "grouping": false, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 }, "marginRateP": { "trimTailZeros": true, "percent": true, "precision": 9, "grouping": false, "rounded": true, "minDecimals": 2, "maxDecimals": 9 }, "marginRate": { "trimTailZeros": true, "precision": 9, "grouping": false, "rounded": true, "percent": false, "minDecimals": 2, "maxDecimals": 9 } } };