From f29aee753a731693e6aae0d34960cc98e07cc41f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AC=B4=E6=94=BF=20=E6=97=B6?= Date: Wed, 12 Aug 2026 10:46:43 +0800 Subject: [PATCH 01/14] =?UTF-8?q?#EQD-7024=20=E5=9B=BD=E8=81=94=E6=B0=91?= =?UTF-8?q?=E7=94=9F-=E5=BC=80=E5=B9=B3=E4=BB=93=E8=B4=B9=E7=94=A8?= =?UTF-8?q?=E6=82=AC=E6=B5=AE=E6=96=87=E6=A1=88=E6=94=B9=E4=B8=BA=E2=80=9C?= =?UTF-8?q?=E6=88=91=E6=96=B9=E6=94=B6=E5=8F=96=E4=BA=A4=E6=98=93=E8=B4=B9?= =?UTF-8?q?=E7=94=A8=E2=80=9D=EF=BC=8C=E4=BB=85=E6=9B=B4=E6=94=B9=E6=96=87?= =?UTF-8?q?=E6=A1=88=EF=BC=8C=E4=BC=B0=E5=80=BC=E4=B8=8E=E5=B9=B3=E4=BB=93?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E9=80=BB=E8=BE=91=E5=9D=87=E4=B8=8D=E5=8F=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- YLErpWeb/Views/SwapTrade2/SwapIncome.cshtml | 3 +- YLErpWeb/Views/SwapTrade2/SwapUnwind.cshtml | 11 +- YLErpWeb/Views/SwapTrade2/TradeEdit.cshtml | 3 +- YLErpWeb/wwwroot/Statics/manual/greeks.html | 183 ++++++++++++++++++-- 4 files changed, 181 insertions(+), 19 deletions(-) diff --git a/YLErpWeb/Views/SwapTrade2/SwapIncome.cshtml b/YLErpWeb/Views/SwapTrade2/SwapIncome.cshtml index 2eedf7ce..1ed57f2f 100644 --- a/YLErpWeb/Views/SwapTrade2/SwapIncome.cshtml +++ b/YLErpWeb/Views/SwapTrade2/SwapIncome.cshtml @@ -187,7 +187,8 @@ {{formatQuantity(floatPosition.Quantity)}} -
我方{{floatPosition.PayDirection==1?"支付":"收取"}}交易费用
+ @*
我方{{floatPosition.PayDirection==1?"支付":"收取"}}交易费用
*@ +
我方收取交易费用
{{formatAmount(floatPosition.FloatPnlSum)}} diff --git a/YLErpWeb/Views/SwapTrade2/SwapUnwind.cshtml b/YLErpWeb/Views/SwapTrade2/SwapUnwind.cshtml index 3ef08042..6186418e 100644 --- a/YLErpWeb/Views/SwapTrade2/SwapUnwind.cshtml +++ b/YLErpWeb/Views/SwapTrade2/SwapUnwind.cshtml @@ -6,11 +6,11 @@ bool isShowReCheckClose = ViewBag.IsShowReCheckClose; bool hideFloatingIncomeDirection = PS.Config.ErpElement.SwapFloatingIncomeReceiveOnlyMode; } -@section CSS{ +@section CSS { } @section JS - { +{ + + + +
+ + +
+ +
@(Model.Exception?.ToString())
+ + + + diff --git a/YLErpWeb/Views/Account/Login.cshtml b/YLErpWeb/Views/Account/Login.cshtml index f71d0ea7..3b6479e1 100644 --- a/YLErpWeb/Views/Account/Login.cshtml +++ b/YLErpWeb/Views/Account/Login.cshtml @@ -1,12 +1,8 @@ -@model LogOnModel - @{ Layout = null; ViewBag.Title = "登录"; - var captchaUrl = Url.Action("Captcha") + "?sid=" + Model.SID; - Model.LoadTime = DateTime.Now; - var disablePasswordLogin = PS.Config?.ErpElement?.DisablePasswordLogin ?? false; var ssoEnable = YLErp.Web.Models.GeneralSSOConfig.Enable; + var authUrl = YLErp.Web.Models.GeneralSSOConfig.AuthUrl; } @@ -14,153 +10,96 @@ @GlobalConfig.ProjectTitle - - - + .login-page { position: relative; min-height: 100vh; display: flex; flex-direction: column; align-items: center; padding: 80px 24px 40px; } + .login-main { margin: auto; width: 100%; max-width: 420px; display: flex; flex-direction: column; align-items: center; } + .login-header { position: absolute; top: 30px; left: 34px; display: flex; align-items: center; gap: 10px; } + .login-header .brand { font-size: 23px; letter-spacing: -0.055em; color: #1D1A1A; font-weight: 400; line-height: 1; } + .login-header .brand b { font-weight: 800; color: #C0221E; } + .login-header .sub { display: block; margin-top: 3px; font-size: 11px; letter-spacing: 0.055em; color: #938A8A; } + .login-title { text-align: center; margin-bottom: 24px; } + .login-title h1 { font-size: 24px; line-height: 36px; letter-spacing: -0.025em; color: #1F1F1F; font-weight: 700; } + .login-title h1 .accent { color: #C0221E; font-weight: 800; letter-spacing: -0.04em; } + .login-title p { margin-top: 8px; font-size: 13px; line-height: 19.5px; color: #ADADAD; } + .login-card { width: 380px; max-width: 100%; padding: 36px 36px 32px; background: #FFFFFF; border-radius: 18px; box-shadow: 0 1px 4px rgba(0,0,0,.06), 0 10px 48px rgba(0,0,0,.1); text-align: center; } + .sso-icon { display: flex; align-items: center; justify-content: center; width: 80px; height: 80px; margin: 0 auto; border-radius: 40px; background: linear-gradient(135deg, #F5E8E8 0%, #F9E0E0 100%); box-shadow: 0 6px 24px rgba(192,34,30,.14); } + .sso-icon img { width: 36px; height: 36px; } + .sso-title { margin-top: 16px; font-size: 14px; font-weight: 600; line-height: 21px; color: #1F1F1F; } + .sso-desc { margin-top: 4px; font-size: 12px; line-height: 19.2px; color: #ADADAD; } + .sso-btn { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; height: 51px; margin-top: 32px; border: none; border-radius: 10px; background: #C0221E; box-shadow: 0 4px 18px rgba(192,34,30,.3); color: #fff; font-size: 15px; font-weight: 700; letter-spacing: 0.04em; text-decoration: none; cursor: pointer; transition: opacity .2s; } + .sso-btn:hover { opacity: .9; color: #fff; text-decoration: none; } + .sso-btn-icon { display: inline-flex; align-items: center; justify-content: center; width: 17px; height: 17px; line-height: 0; } + .sso-btn img { width: 17px; height: 17px; display: block; } + .sso-btn-text { line-height: 1; } + .sso-btn.disabled { background: #ccc; box-shadow: none; cursor: not-allowed; pointer-events: none; } + .sso-btn.loading { background: #E04B48; box-shadow: 0 4px 18px rgba(192,34,30,.25); pointer-events: none; opacity: 1; color: #fff; } + @@keyframes spin { to { transform: rotate(360deg); } } + .sso-spinner { width: 17px; height: 17px; border: 2px solid rgba(255,255,255,.35); border-top-color: #fff; border-radius: 50%; animation: spin .8s linear infinite; } + .sso-error { margin-top: 10px; font-size: 12px; color: #ff6b6b; } + .admin-link { position: absolute; bottom: 16px; left: 24px; font-size: 12px; color: #ADADAD; text-decoration: none; } + .admin-link:hover { color: #C0221E; } + - -
-