From b8577139b743128e6d1f7535c4e26f8b9f8ae07e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=BF=97=E5=BC=BA?= <357099073@qq.com> Date: Tue, 28 Apr 2026 15:38:56 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=9E=E7=8E=B0=E5=BE=AE=E4=BF=A1=E8=AE=A2?= =?UTF-8?q?=E5=8D=95=E7=9B=91=E5=90=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 2 + Form1.cs | 1759 ++++++++++++++++- Vmianqian.csproj | 9 + bin/Debug/net10.0-windows/Vmianqian.dll | Bin 67584 -> 127488 bytes bin/Debug/net10.0-windows/Vmianqian.exe | Bin 162304 -> 162304 bytes bin/Debug/net10.0-windows/Vmianqian.pdb | Bin 29408 -> 45068 bytes .../net10.0-windows/appsettings.client.json | 7 +- .../pending-orders.client.json | 1 + bin_temp/Vmianqian.dll | Bin 67584 -> 123392 bytes bin_temp/Vmianqian.exe | Bin 162304 -> 162304 bytes bin_temp/Vmianqian.pdb | Bin 29408 -> 44036 bytes .../net10.0-windows/Vmianqian.AssemblyInfo.cs | 9 +- .../Vmianqian.AssemblyInfoInputs.cache | 2 +- .../Vmianqian.csproj.AssemblyReference.cache | Bin 2069 -> 5067 bytes .../Vmianqian.csproj.CoreCompileInputs.cache | 2 +- .../Vmianqian.csproj.FileListAbsolute.txt | 2 +- obj/Debug/net10.0-windows/Vmianqian.dll | Bin 67584 -> 127488 bytes obj/Debug/net10.0-windows/Vmianqian.pdb | Bin 29408 -> 45068 bytes obj/Debug/net10.0-windows/apphost.exe | Bin 162304 -> 162304 bytes obj/Debug/net10.0-windows/ref/Vmianqian.dll | Bin 14848 -> 24064 bytes .../net10.0-windows/refint/Vmianqian.dll | Bin 14848 -> 24064 bytes vmq-customization-pack/Index.php | 735 +++++++ vmq-customization-pack/README.md | 178 ++ vmq-customization-pack/route.php | 37 + 24 files changed, 2687 insertions(+), 56 deletions(-) create mode 100644 bin/Debug/net10.0-windows/pending-orders.client.json create mode 100644 vmq-customization-pack/Index.php create mode 100644 vmq-customization-pack/README.md create mode 100644 vmq-customization-pack/route.php diff --git a/.gitignore b/.gitignore index a792529..993e10c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ antdui-demo/ +dujiaoka-master/ +Vmianqian/ .vs .idea \ No newline at end of file diff --git a/Form1.cs b/Form1.cs index cbd0598..105790f 100644 --- a/Form1.cs +++ b/Form1.cs @@ -1,5 +1,7 @@ using System.Net; using System.Net.Http.Json; +using System.Diagnostics; +using System.Text.RegularExpressions; using System.Runtime.InteropServices; using System.Security.Cryptography; using System.Text; @@ -9,6 +11,7 @@ using AntdUI; using MailKit.Net.Smtp; using MailKit.Security; using MimeKit; +using System.Windows.Automation; using WinLabel = System.Windows.Forms.Label; using WinPanel = System.Windows.Forms.Panel; using WinTextBox = System.Windows.Forms.TextBox; @@ -27,6 +30,7 @@ namespace Vmianqian private static extern nint SendMessage(nint hWnd, int msg, nint wParam, nint lParam); private readonly string _configFilePath = Path.Combine(AppContext.BaseDirectory, "appsettings.client.json"); + private readonly string _pendingOrdersFilePath = Path.Combine(AppContext.BaseDirectory, "pending-orders.client.json"); private readonly JsonSerializerOptions _jsonOptions = new() { WriteIndented = true, PropertyNameCaseInsensitive = true }; private readonly HttpClient _httpClient = new(); private readonly System.Windows.Forms.Timer _runtimeTimer = new(); @@ -36,7 +40,20 @@ namespace Vmianqian private HttpListener? _httpListener; private CancellationTokenSource? _listenerCancellationTokenSource; private ClientConfig _config = new(); + private List _pendingOrders = new(); private bool _isSynchronizingNavigation; + private string _wechatMonitorMode = string.Empty; + private CancellationTokenSource? _wechatHookCts; + private CancellationTokenSource? _wechatProtocolCts; + private CancellationTokenSource? _wechatSidCaptureCts; + private readonly HashSet _wechatHookSeen = new(StringComparer.Ordinal); + private readonly HashSet _wechatProtocolSeen = new(StringComparer.Ordinal); + private string _wechatProtocolLastTransId = string.Empty; + private long _wechatProtocolLastCreateTime; + private int? _wechatProtocolLastPendingCount; + private int? _wechatProtocolLastHomeType; + private DateTime _wechatHookLastDiagAt = DateTime.MinValue; + private bool _wechatHookFoundLedgerAnchor; private AntdUI.PageHeader titlebar = null!; private AntdUI.PageHeader bottomBar = null!; @@ -73,6 +90,9 @@ namespace Vmianqian private AntdUI.Label lblSmtpPortTitle = null!; private AntdUI.Label lblNotifyEmailTitle = null!; private AntdUI.Label lblEmailAuthCodeTitle = null!; + private AntdUI.Label lblWechatSidTitle = null!; + private AntdUI.Label lblWechatFrequencyTitle = null!; + private AntdUI.Label lblWechatPollingTitle = null!; private AntdUI.Label lblHeartbeatDesc = null!; private AntdUI.Label lblMemberPlaceholder = null!; private AntdUI.Switch chkHeartbeatEnabled = null!; @@ -82,6 +102,11 @@ namespace Vmianqian private AntdUI.Input txtWechatPath = null!; private AntdUI.Input txtWechatId = null!; + private AntdUI.Button btnSelectWechatPath = null!; + private AntdUI.Button btnWechatHookStart = null!; + private AntdUI.Button btnWechatProtocolStart = null!; + private AntdUI.Button btnWechatSidAuto = null!; + private AntdUI.Button btnClearWechatLog = null!; private NumericUpDown numWechatInterval = null!; private AntdUI.Checkbox chkWheel = null!; @@ -405,11 +430,45 @@ namespace Vmianqian private void LayoutWechatPage() { - LayoutPageCards(pageWechat, 20); - + const int margin = 20; + const int gap = 16; + var hookCard = FindCard(pageWechat, "wechat-hook"); + var protocolCard = FindCard(pageWechat, "wechat-protocol"); var gridCard = FindCard(pageWechat, "wechat-log"); - if (gridCard != null) + + if (hookCard != null && protocolCard != null) { + var totalWidth = Math.Max(0, pageWechat.ClientSize.Width - margin * 2 - gap); + var hookWidth = totalWidth / 2; + var protocolWidth = totalWidth - hookWidth; + hookCard.Bounds = new Rectangle(margin, 20, hookWidth, 240); + protocolCard.Bounds = new Rectangle(hookCard.Right + gap, 20, protocolWidth, 240); + + var hookPathWidth = Math.Max(140, hookCard.ClientSize.Width - 24 - 24 - btnSelectWechatPath.Width - 12); + txtWechatPath.Width = hookPathWidth; + btnSelectWechatPath.Location = new Point(txtWechatPath.Left + txtWechatPath.Width + 12, txtWechatPath.Top); + btnWechatHookStart.Size = new Size(120, 36); + btnWechatHookStart.Location = new Point(24, hookCard.ClientSize.Height - btnWechatHookStart.Height - 16); + + lblWechatSidTitle.Location = new Point(24, 54); + var sidWidth = Math.Max(180, protocolCard.ClientSize.Width - 48 - btnWechatSidAuto.Width - 12); + txtWechatId.Width = sidWidth; + btnWechatSidAuto.Location = new Point(txtWechatId.Left + txtWechatId.Width + 12, txtWechatId.Top); + var halfWidth = Math.Max(160, (sidWidth - 12) / 2); + var rightColX = 24 + halfWidth + 12; + lblWechatFrequencyTitle.Location = new Point(24, 122); + numWechatInterval.Location = new Point(24, 150); + lblWechatPollingTitle.Location = new Point(rightColX, 122); + chkWheel.Location = new Point(rightColX, 150); + btnWechatProtocolStart.Size = new Size(120, 36); + btnWechatProtocolStart.Location = new Point(24, protocolCard.ClientSize.Height - btnWechatProtocolStart.Height - 16); + } + + if (gridCard != null && hookCard != null) + { + gridCard.Left = margin; + gridCard.Width = Math.Max(0, pageWechat.ClientSize.Width - margin * 2); + gridCard.Top = hookCard.Bottom + margin; var bottom = pageWechat.ClientSize.Height - 20; gridCard.Height = Math.Max(260, bottom - gridCard.Top); @@ -417,6 +476,11 @@ namespace Vmianqian { gridWechatLogs.Size = new Size(Math.Max(240, gridCard.ClientSize.Width - 50), Math.Max(120, gridCard.ClientSize.Height - 76)); } + + if (btnClearWechatLog != null) + { + btnClearWechatLog.Location = new Point(Math.Max(24, gridCard.ClientSize.Width - btnClearWechatLog.Width - 24), 14); + } } } @@ -631,51 +695,101 @@ namespace Vmianqian private void BuildWechatPage() { - var card = CreateCardPanel(new Rectangle(20, 20, 1080, 150)); - card.Tag = "wechat-config"; - card.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - - card.Controls.Add(CreateTitleLabel("微信安装路径", 24, 20)); + var hookCard = CreateCardPanel(new Rectangle(20, 20, 532, 240)); + hookCard.Tag = "wechat-hook"; + hookCard.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; + hookCard.Controls.Add(CreateTitleLabel("Hook 功能", 24, 18)); + hookCard.Controls.Add(CreateTitleLabel("微信安装路径", 24, 54)); txtWechatPath = CreateInput(24, 48, 390, "微信.exe 路径"); - card.Controls.Add(txtWechatPath); + txtWechatPath.Location = new Point(24, 82); + txtWechatPath.Width = 280; + hookCard.Controls.Add(txtWechatPath); + btnSelectWechatPath = new AntdUI.Button + { + Text = "选择路径", + Type = TTypeMini.Primary, + Ghost = true, + Location = new Point(316, 82), + Size = new Size(92, 36) + }; + btnSelectWechatPath.Click += btnSelectWechatPath_Click; + hookCard.Controls.Add(btnSelectWechatPath); + btnWechatHookStart = new AntdUI.Button + { + Text = "开始监听", + Type = TTypeMini.Primary, + Location = new Point(24, 128), + Size = new Size(120, 36) + }; + btnWechatHookStart.Click += btnWechatHookStart_Click; + hookCard.Controls.Add(btnWechatHookStart); - card.Controls.Add(CreateTitleLabel("微信 SID", 440, 20)); - txtWechatId = CreateInput(440, 48, 220, "可选"); - card.Controls.Add(txtWechatId); + var protocolCard = CreateCardPanel(new Rectangle(568, 20, 532, 240)); + protocolCard.Tag = "wechat-protocol"; + protocolCard.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; + protocolCard.Controls.Add(CreateTitleLabel("协议功能", 24, 18)); - card.Controls.Add(CreateTitleLabel("轮询频率(秒)", 690, 20)); + lblWechatSidTitle = CreateTitleLabel("微信 SID", 24, 54); + protocolCard.Controls.Add(lblWechatSidTitle); + txtWechatId = CreateInput(24, 82, 356, "可选"); + protocolCard.Controls.Add(txtWechatId); + btnWechatSidAuto = new AntdUI.Button + { + Text = "自动获取", + Type = TTypeMini.Primary, + Ghost = true, + Location = new Point(392, 82), + Size = new Size(92, 36) + }; + btnWechatSidAuto.Click += btnWechatSidAuto_Click; + protocolCard.Controls.Add(btnWechatSidAuto); + + lblWechatFrequencyTitle = CreateTitleLabel("监控频率(秒)", 24, 122); + protocolCard.Controls.Add(lblWechatFrequencyTitle); numWechatInterval = new NumericUpDown { - Location = new Point(690, 51), + Location = new Point(24, 150), Size = new Size(96, 23), Minimum = 1, Maximum = 3600, Value = 5 }; - card.Controls.Add(numWechatInterval); + protocolCard.Controls.Add(numWechatInterval); + lblWechatPollingTitle = CreateTitleLabel("接口轮询", 274, 122); + protocolCard.Controls.Add(lblWechatPollingTitle); chkWheel = new AntdUI.Checkbox { - Text = "启用轮询", - Location = new Point(820, 50), + Text = "接口轮询", + Location = new Point(274, 150), AutoSize = true }; - card.Controls.Add(chkWheel); - - var desc = new AntdUI.Label + protocolCard.Controls.Add(chkWheel); + btnWechatProtocolStart = new AntdUI.Button { - Text = "后续这里接入微信真实到账监听逻辑,目前保留参数配置与回调结果展示。", - AutoSize = false, - Location = new Point(24, 102), - Size = new Size(960, 24), - ForeColor = Color.DimGray + Text = "开始监听", + Type = TTypeMini.Primary, + Location = new Point(24, 196), + Size = new Size(120, 36) }; - card.Controls.Add(desc); + btnWechatProtocolStart.Click += btnWechatProtocolStart_Click; + protocolCard.Controls.Add(btnWechatProtocolStart); - var gridCard = CreateCardPanel(new Rectangle(20, 190, 1080, 540)); + var gridCard = CreateCardPanel(new Rectangle(20, 280, 1080, 450)); gridCard.Tag = "wechat-log"; gridCard.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; gridCard.Controls.Add(CreateTitleLabel("微信监听记录", 24, 18)); + btnClearWechatLog = new AntdUI.Button + { + Text = "清空", + Type = TTypeMini.Primary, + Ghost = true, + Location = new Point(980, 14), + Size = new Size(72, 30), + Anchor = AnchorStyles.Top | AnchorStyles.Right + }; + btnClearWechatLog.Click += (_, _) => gridWechatLogs.Rows.Clear(); + gridCard.Controls.Add(btnClearWechatLog); gridWechatLogs = CreateWechatGrid(); gridWechatLogs.Location = new Point(24, 50); @@ -683,8 +797,10 @@ namespace Vmianqian gridWechatLogs.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right; gridCard.Controls.Add(gridWechatLogs); - pageWechat.Controls.Add(card); + pageWechat.Controls.Add(hookCard); + pageWechat.Controls.Add(protocolCard); pageWechat.Controls.Add(gridCard); + UpdateWechatMonitorButtons(); } private void BuildAlipayPage() @@ -909,6 +1025,9 @@ namespace Vmianqian { StopListener(); StopHeartbeat(); + StopWechatHook(); + StopWechatProtocol(); + StopWechatSidCapture(); _runtimeTimer.Stop(); _runtimeTimer.Dispose(); _heartbeatTimer.Dispose(); @@ -1009,11 +1128,14 @@ namespace Vmianqian if (!File.Exists(_configFilePath)) { _config = new ClientConfig(); - return; + } + else + { + var json = File.ReadAllText(_configFilePath, Encoding.UTF8); + _config = JsonSerializer.Deserialize(json, _jsonOptions) ?? new ClientConfig(); } - var json = File.ReadAllText(_configFilePath, Encoding.UTF8); - _config = JsonSerializer.Deserialize(json, _jsonOptions) ?? new ClientConfig(); + LoadPendingOrders(); } private void SaveConfig() @@ -1022,6 +1144,31 @@ namespace Vmianqian File.WriteAllText(_configFilePath, json, Encoding.UTF8); } + private void LoadPendingOrders() + { + if (!File.Exists(_pendingOrdersFilePath)) + { + _pendingOrders = new List(); + return; + } + + try + { + var json = File.ReadAllText(_pendingOrdersFilePath, Encoding.UTF8); + _pendingOrders = JsonSerializer.Deserialize>(json, _jsonOptions) ?? new List(); + } + catch + { + _pendingOrders = new List(); + } + } + + private void SavePendingOrders() + { + var json = JsonSerializer.Serialize(_pendingOrders, _jsonOptions); + File.WriteAllText(_pendingOrdersFilePath, json, Encoding.UTF8); + } + private void BindConfigToUi() { txtServerUrl.Text = _config.ServerUrl; @@ -1042,6 +1189,7 @@ namespace Vmianqian numAlipayInterval.Value = Math.Min(Math.Max(_config.AlipayIntervalSeconds, 1), 3600); chkWheel.Checked = _config.EnableWheelPolling; chkHeartbeatEnabled.Checked = _config.EnableHeartbeat; + _config.WechatApiVersion = string.IsNullOrWhiteSpace(_config.WechatApiVersion) ? "7.10.1" : _config.WechatApiVersion.Trim(); } private void SaveUiToConfig() @@ -1102,6 +1250,1036 @@ namespace Vmianqian } } + private void btnSelectWechatPath_Click(object? sender, EventArgs e) + { + using var dialog = new OpenFileDialog + { + Title = "选择微信程序路径", + Filter = "微信程序|WeChat.exe;Weixin.exe;WeChatAppEx.exe|可执行文件|*.exe|所有文件|*.*", + CheckFileExists = true, + Multiselect = false + }; + + if (dialog.ShowDialog(this) != DialogResult.OK) + { + return; + } + + txtWechatPath.Text = dialog.FileName; + SaveUiToConfig(); + SaveConfig(); + Log($"微信安装路径已保存:{dialog.FileName}"); + } + + private async void btnWechatSidAuto_Click(object? sender, EventArgs e) + { + if (_wechatSidCaptureCts != null) + { + StopWechatSidCapture(); + Log("SID 捕获已停止。"); + return; + } + + try + { + Log("SID 捕获已启动:请现在打开微信收款助手/收款小账本页面。"); + StartWechatSidCapture(); + } + catch (Exception ex) + { + Log($"自动获取 SID 异常:{ex.Message}"); + StopWechatSidCapture(); + } + } + + private void StartWechatSidCapture() + { + StopWechatSidCapture(); + _wechatSidCaptureCts = new CancellationTokenSource(); + var token = _wechatSidCaptureCts.Token; + btnWechatSidAuto.Text = "停止捕获"; + btnWechatSidAuto.Type = TTypeMini.Error; + btnWechatSidAuto.Loading = true; + + _ = Task.Run(async () => + { + while (!token.IsCancellationRequested) + { + try + { + if (TryExtractSidFromClipboard(out var clipSid, out var clipVersion)) + { + BeginInvoke(() => ApplyCapturedSid(clipSid, clipVersion, "剪贴板")); + return; + } + + var result = TryExtractSidFromWechatLocalFiles(); + if (!string.IsNullOrWhiteSpace(result.Sid)) + { + BeginInvoke(() => ApplyCapturedSid(result.Sid, result.Version, result.Source)); + return; + } + + await Task.Delay(TimeSpan.FromSeconds(2), token); + } + catch (OperationCanceledException) + { + break; + } + catch (Exception ex) + { + BeginInvoke(() => Log($"SID 捕获轮询异常:{ex.Message}")); + await Task.Delay(TimeSpan.FromSeconds(2), token); + } + } + }, token); + } + + private void StopWechatSidCapture() + { + try { _wechatSidCaptureCts?.Cancel(); } catch { } + try { _wechatSidCaptureCts?.Dispose(); } catch { } + _wechatSidCaptureCts = null; + + if (btnWechatSidAuto != null) + { + btnWechatSidAuto.Text = "自动获取"; + btnWechatSidAuto.Type = TTypeMini.Primary; + btnWechatSidAuto.Ghost = true; + btnWechatSidAuto.Loading = false; + btnWechatSidAuto.Enabled = true; + } + } + + private void ApplyCapturedSid(string sid, string version, string source) + { + txtWechatId.Text = sid; + SaveUiToConfig(); + _config.WechatApiVersion = string.IsNullOrWhiteSpace(version) ? _config.WechatApiVersion : version; + SaveConfig(); + Log($"已捕获 SID:{sid},v={_config.WechatApiVersion},来源={source}"); + StopWechatSidCapture(); + } + + private void btnWechatHookStart_Click(object? sender, EventArgs e) + { + if (string.Equals(_wechatMonitorMode, "hook", StringComparison.Ordinal)) + { + StopWechatHook(); + _wechatMonitorMode = string.Empty; + UpdateWechatMonitorButtons(); + UpdateWechatStatusUi(); + Log("Hook 监听已停止。"); + return; + } + + try + { + SaveUiToConfig(); + SaveConfig(); + if (!string.IsNullOrWhiteSpace(_wechatMonitorMode)) + { + StopWechatMonitoring(); + } + + if (string.IsNullOrWhiteSpace(txtWechatPath?.Text) || !File.Exists(txtWechatPath.Text.Trim())) + { + throw new InvalidOperationException("请先选择正确的微信程序路径(WeChat.exe/Weixin.exe/WeChatAppEx.exe)。"); + } + + StartWechatHook(); + _wechatMonitorMode = "hook"; + UpdateWechatMonitorButtons(); + UpdateWechatStatusUi(); + Log("Hook 监听已启动(将用于监听微信通知/收款小账本)。"); + } + catch (Exception ex) + { + Log($"Hook 监听启动失败:{ex.Message}"); + MessageBox.Show(ex.Message, "启动失败", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void btnWechatProtocolStart_Click(object? sender, EventArgs e) + { + if (string.Equals(_wechatMonitorMode, "protocol", StringComparison.Ordinal)) + { + StopWechatProtocol(); + _wechatMonitorMode = string.Empty; + UpdateWechatMonitorButtons(); + UpdateWechatStatusUi(); + Log("协议监听已停止。"); + return; + } + + try + { + SaveUiToConfig(); + SaveConfig(); + if (!string.IsNullOrWhiteSpace(_wechatMonitorMode)) + { + StopWechatMonitoring(); + } + + if (string.IsNullOrWhiteSpace(_config.WechatSid)) + { + throw new InvalidOperationException("请先填写或自动获取微信 SID。"); + } + + StartWechatProtocol(); + _wechatMonitorMode = "protocol"; + UpdateWechatMonitorButtons(); + UpdateWechatStatusUi(); + Log($"协议监听已启动。SID={_config.WechatSid},v={_config.WechatApiVersion}"); + } + catch (Exception ex) + { + Log($"协议监听启动失败:{ex.Message}"); + MessageBox.Show(ex.Message, "启动失败", MessageBoxButtons.OK, MessageBoxIcon.Error); + } + } + + private void UpdateWechatMonitorButtons() + { + if (btnWechatHookStart == null || btnWechatProtocolStart == null) + { + return; + } + + var hookActive = string.Equals(_wechatMonitorMode, "hook", StringComparison.Ordinal); + var protocolActive = string.Equals(_wechatMonitorMode, "protocol", StringComparison.Ordinal); + + btnWechatHookStart.Text = hookActive ? "停止监听" : "开始监听"; + btnWechatHookStart.Type = hookActive ? TTypeMini.Error : TTypeMini.Primary; + btnWechatProtocolStart.Text = protocolActive ? "停止监听" : "开始监听"; + btnWechatProtocolStart.Type = protocolActive ? TTypeMini.Error : TTypeMini.Primary; + } + + private void StopWechatMonitoring() + { + if (string.Equals(_wechatMonitorMode, "hook", StringComparison.Ordinal)) + { + StopWechatHook(); + } + else if (string.Equals(_wechatMonitorMode, "protocol", StringComparison.Ordinal)) + { + StopWechatProtocol(); + } + + UpdateWechatStatusUi(); + } + + private void StartWechatHook() + { + StopWechatHook(); + _wechatHookSeen.Clear(); + _wechatHookFoundLedgerAnchor = false; + _wechatHookLastDiagAt = DateTime.MinValue; + _wechatHookCts = new CancellationTokenSource(); + var token = _wechatHookCts.Token; + + _ = Task.Run(async () => + { + while (!token.IsCancellationRequested) + { + try + { + await PollWechatLedgerOnceAsync(token); + } + catch (OperationCanceledException) + { + break; + } + catch (Exception ex) + { + Log($"Hook 轮询异常:{ex.Message}"); + } + + var delaySeconds = Math.Min(Math.Max(_config.WechatIntervalSeconds, 1), 60); + try + { + await Task.Delay(TimeSpan.FromSeconds(delaySeconds), token); + } + catch (OperationCanceledException) + { + break; + } + } + }, token); + } + + private void StopWechatHook() + { + try { _wechatHookCts?.Cancel(); } catch { } + try { _wechatHookCts?.Dispose(); } catch { } + _wechatHookCts = null; + } + + private async Task PollWechatLedgerOnceAsync(CancellationToken token) + { + token.ThrowIfCancellationRequested(); + + var processes = Process.GetProcessesByName("Weixin") + .Concat(Process.GetProcessesByName("WeChat")) + .Concat(Process.GetProcessesByName("WeChatAppEx")) + .ToArray(); + if (processes.Length == 0) + { + return; + } + + foreach (var process in processes) + { + if (process.MainWindowHandle == IntPtr.Zero) + { + continue; + } + + AutomationElement? window = null; + try + { + window = AutomationElement.FromHandle(process.MainWindowHandle); + } + catch + { + continue; + } + + if (window == null) + { + continue; + } + + // 优先收敛到“收款小账本”区域附近,降低噪声与误报 + var scanRoot = FindWechatLedgerScanRoot(window) ?? window; + if (!ReferenceEquals(scanRoot, window)) + { + _wechatHookFoundLedgerAnchor = true; + } + + // 双通道:小账本区域 + 整窗聊天文本(微信收款助手/微信支付) + var texts = ExtractAutomationText(scanRoot, max: 2500); + var windowTexts = ExtractAutomationText(window, max: 3000); + if (windowTexts.Count > 0) + { + texts.AddRange(windowTexts); + } + + texts = texts + .Where(v => !string.IsNullOrWhiteSpace(v)) + .Distinct(StringComparer.Ordinal) + .ToList(); + var moneyCandidates = 0; + var keywordSamples = new List(); + foreach (var t in texts) + { + token.ThrowIfCancellationRequested(); + if (t.Contains('¥') || t.Contains('¥')) + { + moneyCandidates++; + } + + if (ContainsLedgerKeyword(t) && keywordSamples.Count < 8) + { + keywordSamples.Add(t.Length > 40 ? t[..40] : t); + } + + if (TryParseWechatLedgerLine(t, out var amount, out var remark)) + { + var key = $"{amount:0.00}|{remark}|{t}"; + var hash = CreateMd5(key); + if (_wechatHookSeen.Add(hash)) + { + await OnWechatPaymentDetectedAsync(amount, remark, raw: t); + } + } + } + + // 低频诊断:告诉你扫描到没有包含金额的文本/是否定位到小账本锚点 + if ((DateTime.Now - _wechatHookLastDiagAt).TotalSeconds >= 5) + { + _wechatHookLastDiagAt = DateTime.Now; + if (!_wechatHookFoundLedgerAnchor) + { + Log("Hook 诊断:未定位到“收款小账本”区域,建议打开并停留在收款小账本页面再试。"); + } + else if (keywordSamples.Count > 0) + { + Log($"Hook 诊断:已命中关键词样本 {string.Join(" | ", keywordSamples.Distinct())}"); + } + else if (moneyCandidates == 0) + { + Log("Hook 诊断:已扫描微信窗口,但未命中“微信支付收款/收款到账/¥/¥/元”等文本。"); + } + } + } + } + + private static AutomationElement? FindWechatLedgerScanRoot(AutomationElement window) + { + // UIA 不支持 contains 条件,只能遍历找关键词命中 + var walker = TreeWalker.RawViewWalker; + var stack = new Stack(); + stack.Push(window); + while (stack.Count > 0) + { + var current = stack.Pop(); + if (IsLedgerAnchor(current)) + { + return current; + } + + AutomationElement? child = null; + try { child = walker.GetFirstChild(current); } catch { child = null; } + while (child != null) + { + stack.Push(child); + try { child = walker.GetNextSibling(child); } catch { break; } + } + } + + return null; + } + + private static bool IsLedgerAnchor(AutomationElement element) + { + foreach (var text in ExtractElementTexts(element)) + { + if (ContainsLedgerKeyword(text)) + { + return true; + } + } + + return false; + } + + private static bool ContainsLedgerKeyword(string? text) + { + if (string.IsNullOrWhiteSpace(text)) + { + return false; + } + + return text.Contains("收款小账本", StringComparison.OrdinalIgnoreCase) || + text.Contains("微信收款助手", StringComparison.OrdinalIgnoreCase) || + text.Contains("微信支付", StringComparison.OrdinalIgnoreCase) || + text.Contains("收款到账", StringComparison.OrdinalIgnoreCase) || + text.Contains("收款通知", StringComparison.OrdinalIgnoreCase) || + text.Contains("收款记录", StringComparison.OrdinalIgnoreCase) || + text.Contains("收款设置", StringComparison.OrdinalIgnoreCase) || + text.Contains("今日收款", StringComparison.OrdinalIgnoreCase) || + text.Contains("经营收款服务", StringComparison.OrdinalIgnoreCase) || + text.Contains("补充经营信息", StringComparison.OrdinalIgnoreCase); + } + + private static List ExtractAutomationText(AutomationElement root, int max) + { + var results = new List(); + try + { + var walker = TreeWalker.RawViewWalker; + var stack = new Stack(); + stack.Push(root); + while (stack.Count > 0 && results.Count < max) + { + var current = stack.Pop(); + foreach (var text in ExtractElementTexts(current)) + { + if (results.Count >= max) + { + break; + } + + results.Add(text); + } + + AutomationElement? child = null; + try + { + child = walker.GetFirstChild(current); + } + catch + { + child = null; + } + + while (child != null) + { + stack.Push(child); + try + { + child = walker.GetNextSibling(child); + } + catch + { + break; + } + } + } + } + catch + { + } + + return results; + } + + private static IEnumerable ExtractElementTexts(AutomationElement element) + { + var values = new List(); + + try + { + if (!string.IsNullOrWhiteSpace(element.Current.Name)) + { + values.Add(element.Current.Name.Trim()); + } + } + catch { } + + try + { + if (!string.IsNullOrWhiteSpace(element.Current.HelpText)) + { + values.Add(element.Current.HelpText.Trim()); + } + } + catch { } + + try + { + if (!string.IsNullOrWhiteSpace(element.Current.AutomationId)) + { + values.Add(element.Current.AutomationId.Trim()); + } + } + catch { } + + try + { + if (element.TryGetCurrentPattern(ValuePattern.Pattern, out var valuePatternObj)) + { + var value = ((ValuePattern)valuePatternObj).Current.Value; + if (!string.IsNullOrWhiteSpace(value)) + { + values.Add(value.Trim()); + } + } + } + catch { } + + try + { + if (element.TryGetCurrentPattern(TextPattern.Pattern, out var textPatternObj)) + { + var text = ((TextPattern)textPatternObj).DocumentRange.GetText(256); + if (!string.IsNullOrWhiteSpace(text)) + { + values.Add(text.Trim()); + } + } + } + catch { } + + return values.Where(v => !string.IsNullOrWhiteSpace(v)).Distinct(); + } + + private static bool TryParseWechatLedgerLine(string text, out decimal amount, out string remark) + { + amount = 0; + remark = string.Empty; + if (string.IsNullOrWhiteSpace(text)) + { + return false; + } + + var t = text.Replace(" ", string.Empty).Replace("\u00A0", string.Empty); + if (!t.Contains("收款") && + !t.Contains("微信支付") && + !t.Contains("入账") && + !t.Contains("到账") && + !t.Contains("¥") && + !t.Contains("¥") && + !t.Contains("元")) + { + return false; + } + + // 兼容样式: + // - 微信支付收款0.10元 + // - 收款到账0.10元 + // - ¥0.10 / ¥0.10 + // - 收款0.10 + var match = Regex.Match( + t, + @"(?:微信支付)?(?:收款到账|收款通知|收款)\s*(\d+(?:\.\d{1,2})?)\s*元|(?:¥|¥)\s*(\d+(?:\.\d{1,2})?)|收款\s*(\d+(?:\.\d{1,2})?)", + RegexOptions.IgnoreCase); + if (!match.Success) + { + return false; + } + + var amountText = + match.Groups[1].Success ? match.Groups[1].Value : + match.Groups[2].Success ? match.Groups[2].Value : + match.Groups[3].Value; + if (!decimal.TryParse(amountText, out amount) || amount <= 0) + { + return false; + } + + remark = t; + if (remark.Length > 120) + { + remark = remark[..120]; + } + + return true; + } + + private async Task OnWechatPaymentDetectedAsync(decimal amount, string remark, string raw) + { + var evt = new PaymentEvent + { + Channel = "wechat", + Amount = amount, + OrderNo = remark, + TradeNo = string.Empty, + Payer = "wechat-ledger", + Status = "success", + ReceivedAt = DateTimeOffset.Now, + Raw = raw + }; + + var callbackResult = await ForwardEventToServerAsync(evt); + AddPaymentLog(evt, callbackResult); + Log($"Hook 收到收款:{amount:0.00}({remark})"); + } + + private void UpdateWechatStatusUi() + { + if (lblWechatStatusValue is null) + { + return; + } + + var active = string.Equals(_wechatMonitorMode, "hook", StringComparison.Ordinal) || + string.Equals(_wechatMonitorMode, "protocol", StringComparison.Ordinal); + lblWechatStatusValue.Text = active ? "微信: 在线" : "微信: 离线"; + lblWechatStatusValue.ForeColor = active ? Color.Green : Color.Red; + } + + private void StartWechatProtocol() + { + StopWechatProtocol(); + _wechatProtocolSeen.Clear(); + _wechatProtocolLastPendingCount = null; + _wechatProtocolLastHomeType = null; + _wechatProtocolCts = new CancellationTokenSource(); + var token = _wechatProtocolCts.Token; + + _ = Task.Run(async () => + { + while (!token.IsCancellationRequested) + { + try + { + await PollWechatProtocolOnceAsync(token); + } + catch (OperationCanceledException) + { + break; + } + catch (Exception ex) + { + Log($"协议轮询异常:{ex.Message}"); + } + + var delaySeconds = Math.Min(Math.Max(_config.WechatIntervalSeconds, 1), 60); + try + { + await Task.Delay(TimeSpan.FromSeconds(delaySeconds), token); + } + catch (OperationCanceledException) + { + break; + } + } + }, token); + } + + private void StopWechatProtocol() + { + try { _wechatProtocolCts?.Cancel(); } catch { } + try { _wechatProtocolCts?.Dispose(); } catch { } + _wechatProtocolCts = null; + _wechatProtocolLastPendingCount = null; + _wechatProtocolLastHomeType = null; + } + + private async Task PollWechatProtocolOnceAsync(CancellationToken token) + { + token.ThrowIfCancellationRequested(); + var sid = _config.WechatSid?.Trim() ?? string.Empty; + if (string.IsNullOrWhiteSpace(sid)) + { + Log("协议诊断:未填写微信 SID。"); + return; + } + var version = string.IsNullOrWhiteSpace(_config.WechatApiVersion) ? "7.10.1" : _config.WechatApiVersion.Trim(); + + if (!_config.EnableWheelPolling) + { + Log("协议诊断:接口轮询未启用。"); + return; + } + + await SyncPendingOrdersFromServerAsync(token); + + // 先调用 gethomedata,拿到可用时间区间与最新游标 + var homeUrl = BuildWechatSmallbookUrl(sid, version); + var startTime = DateTimeOffset.Now.AddDays(-7).ToUnixTimeSeconds(); + var endTime = DateTimeOffset.Now.ToUnixTimeSeconds(); + string homeBody = string.Empty; + int? homeType = null; + foreach (var typeCandidate in new[] { 0, 1, 2, 39 }) + { + var homeRequest = new + { + start_time = startTime, + end_time = endTime, + type = typeCandidate + }; + var candidateBody = await SendWechatProtocolRequestAsync(homeUrl, homeRequest, token); + if (string.IsNullOrWhiteSpace(candidateBody)) + { + continue; + } + + WechatSmallbookResponse? candidatePayload = null; + try + { + candidatePayload = JsonSerializer.Deserialize(candidateBody, _jsonOptions); + } + catch + { + candidatePayload = null; + } + + if (candidatePayload?.Retcode == 0) + { + homeBody = candidateBody; + homeType = typeCandidate; + if (_wechatProtocolLastHomeType != typeCandidate) + { + Log($"协议诊断(gethomedata):已命中可用 type={typeCandidate}"); + _wechatProtocolLastHomeType = typeCandidate; + } + break; + } + + if (candidatePayload?.Msg?.Contains("type不合法", StringComparison.OrdinalIgnoreCase) == true) + { + continue; + } + + homeBody = candidateBody; + homeType = typeCandidate; + break; + } + + if (!string.IsNullOrWhiteSpace(homeBody)) + { + try + { + var payload = JsonSerializer.Deserialize(homeBody, _jsonOptions); + if (payload?.Retcode != 0) + { + if (payload != null) + { + Log($"协议诊断(gethomedata):retcode={payload.Retcode} errcode={payload.Errcode} msg={payload.Msg}" + (homeType != null ? $" type={homeType}" : string.Empty)); + } + } + else + { + var incomes = payload.Data?.IncomeList; + if (incomes != null) + { + foreach (var income in incomes) + { + token.ThrowIfCancellationRequested(); + UpdateWechatProtocolCursor(income.TransId, income.Timestamp); + var detailRaw = await FetchWechatTransactionDetailAsync(sid, version, income.TransId, income.Timestamp, token); + var id = !string.IsNullOrWhiteSpace(income.TransId) + ? income.TransId! + : (!string.IsNullOrWhiteSpace(income.RollId) ? income.RollId! : $"{income.Timestamp}|{income.Fee}"); + await ProcessWechatProtocolIncomeAsync( + id: id, + transId: income.TransId, + timestamp: income.Timestamp, + feeCent: income.Fee, + raw: string.IsNullOrWhiteSpace(detailRaw) ? homeBody : detailRaw); + } + } + } + } + catch (Exception ex) + { + Log($"协议诊断(gethomedata):JSON 解析失败:{ex.Message}"); + } + } + + // 再用最新游标请求 classifyread + if (!string.IsNullOrWhiteSpace(_wechatProtocolLastTransId) && _wechatProtocolLastCreateTime > 0) + { + var classifyUrl = BuildWechatClassifyReadUrl(sid, version); + var classifyRequest = new + { + v = version, + trans_id = _wechatProtocolLastTransId, + last_bill_id = (string?)null, + count = 10, + page_num = 1, + create_time = _wechatProtocolLastCreateTime, + last_id = "", + last_create_time = 0, + sid = sid + }; + var classifyBody = await SendWechatProtocolRequestAsync(classifyUrl, classifyRequest, token); + if (!string.IsNullOrWhiteSpace(classifyBody)) + { + try + { + var classifyPayload = JsonSerializer.Deserialize(classifyBody, _jsonOptions); + if (classifyPayload?.Retcode == 0 && classifyPayload.Data?.PersonBillList != null) + { + foreach (var bill in classifyPayload.Data.PersonBillList) + { + token.ThrowIfCancellationRequested(); + UpdateWechatProtocolCursor(bill.TransId, bill.CreateTime); + await ProcessWechatProtocolIncomeAsync( + id: bill.TransId ?? $"{bill.CreateTime}|{bill.TotalFee}", + transId: bill.TransId, + timestamp: bill.CreateTime, + feeCent: bill.TotalFee, + raw: classifyBody); + } + } + else if (classifyPayload != null && classifyPayload.Retcode != 0) + { + Log($"协议诊断(classifyread):retcode={classifyPayload.Retcode} errcode={classifyPayload.Errcode} msg={classifyPayload.Msg}"); + } + } + catch (Exception ex) + { + Log($"协议诊断(classifyread):JSON 解析失败:{ex.Message}"); + } + } + } + } + + private async Task SyncPendingOrdersFromServerAsync(CancellationToken token) + { + var serverUrl = NormalizeServerUrl(_config.ServerUrl); + var apiKey = _config.ApiKey?.Trim() ?? string.Empty; + if (string.IsNullOrWhiteSpace(serverUrl) || string.IsNullOrWhiteSpace(apiKey)) + { + return; + } + + var timestamp = DateTimeOffset.Now.ToUnixTimeSeconds().ToString(); + var sign = CreateMd5(timestamp + apiKey); + var pendingUrl = BuildPendingOrdersUrl(serverUrl, timestamp, sign, type: 1); + + var response = await _httpClient.GetAsync(pendingUrl, token); + var body = await response.Content.ReadAsStringAsync(token); + if (!response.IsSuccessStatusCode) + { + Log($"待支付订单同步失败:HTTP {(int)response.StatusCode} {response.StatusCode}"); + return; + } + + PendingOrdersApiResponse? payload = null; + try + { + payload = JsonSerializer.Deserialize(body, _jsonOptions); + } + catch (Exception ex) + { + var preview = body.Length > 200 ? body[..200] + "..." : body; + Log($"待支付订单同步失败:JSON 解析异常 {ex.Message},响应预览={preview}"); + return; + } + + if (payload?.Code != 1 || payload.Data == null) + { + if (payload != null) + { + Log($"待支付订单同步失败:code={payload.Code} msg={payload.Msg}"); + } + return; + } + + _pendingOrders = payload.Data + .Select(x => new PendingOrderRecord + { + OrderId = x.OrderId ?? string.Empty, + PayId = x.PayId ?? string.Empty, + Param = x.Param ?? string.Empty, + PayType = x.PayType, + Price = x.Price, + ReallyPrice = x.ReallyPrice, + TimeOut = x.TimeOut, + State = x.State, + Date = x.Date, + RegisteredAt = DateTimeOffset.Now + }) + .Where(x => !string.IsNullOrWhiteSpace(x.OrderId) && !string.IsNullOrWhiteSpace(x.PayId)) + .ToList(); + SavePendingOrders(); + if (_wechatProtocolLastPendingCount != _pendingOrders.Count) + { + Log($"待支付订单同步成功:共 {_pendingOrders.Count} 条微信待支付订单"); + _wechatProtocolLastPendingCount = _pendingOrders.Count; + } + } + + private static string BuildWechatSmallbookUrl(string sid, string version) + { + var v = string.IsNullOrWhiteSpace(version) ? "7.10.1" : version.Trim(); + return $"https://smallbook.wxpapp.weixin.qq.com/qrappzd/user/gethomedata?sid={Uri.EscapeDataString(sid)}&v={Uri.EscapeDataString(v)}"; + } + + private static string BuildWechatClassifyReadUrl(string sid, string version) + { + var v = string.IsNullOrWhiteSpace(version) ? "7.10.1" : version.Trim(); + return $"https://smallbook.wxpapp.weixin.qq.com/qrappzd/user/classifyread?sid={Uri.EscapeDataString(sid)}&v={Uri.EscapeDataString(v)}"; + } + + private static string BuildWechatTransactionDetailUrl(string sid, string version) + { + var v = string.IsNullOrWhiteSpace(version) ? "7.10.1" : version.Trim(); + return $"https://smallbook.wxpapp.weixin.qq.com/qrappzd/user/transactiondetail?sid={Uri.EscapeDataString(sid)}&v={Uri.EscapeDataString(v)}"; + } + + private async Task SendWechatProtocolRequestAsync(string url, object payload, CancellationToken token) + { + using var request = new HttpRequestMessage(HttpMethod.Post, url); + request.Headers.TryAddWithoutValidation("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/132.0.0.0 Safari/537.36 MicroMessenger/7.0.20.1781(0x6700143B) NetType/WIFI MiniProgramEnv/Windows WindowsWechat/WMPF WindowsWechat(0x63090a13) UnifiedPCWindowsWechat(0xf254186b) XWEB/19481"); + request.Headers.TryAddWithoutValidation("Accept", "application/json, text/plain, */*"); + request.Headers.TryAddWithoutValidation("X-Module-Name", "mmpaysmbpdreceiptassistmp"); + request.Headers.TryAddWithoutValidation("X-Page", "pages/detail/detail"); + request.Headers.TryAddWithoutValidation("X-Track-Id", $"TB{Guid.NewGuid():N}".ToUpperInvariant()); + request.Headers.TryAddWithoutValidation("xweb_xhr", "1"); + request.Headers.TryAddWithoutValidation("X-Appid", "unknown"); + request.Headers.TryAddWithoutValidation("Sec-Fetch-Site", "cross-site"); + request.Headers.TryAddWithoutValidation("Sec-Fetch-Mode", "cors"); + request.Headers.TryAddWithoutValidation("Sec-Fetch-Dest", "empty"); + request.Headers.TryAddWithoutValidation("Referer", "https://servicewechat.com/wx28be8489b7a36aaa/1167/page-frame.html"); + request.Headers.TryAddWithoutValidation("Accept-Language", "zh-CN,zh;q=0.9"); + var json = JsonSerializer.Serialize(payload, _jsonOptions); + request.Content = new StringContent(json, Encoding.UTF8, "application/json"); + + var response = await _httpClient.SendAsync(request, token); + var body = await response.Content.ReadAsStringAsync(token); + if (!response.IsSuccessStatusCode) + { + Log($"协议诊断:HTTP {(int)response.StatusCode},url={url},响应={body}"); + return string.Empty; + } + + return body; + } + + private async Task FetchWechatTransactionDetailAsync(string sid, string version, string? transId, long createTime, CancellationToken token) + { + if (string.IsNullOrWhiteSpace(transId) || createTime <= 0) + { + return string.Empty; + } + + var url = BuildWechatTransactionDetailUrl(sid, version); + var payload = new + { + v = version, + id = transId, + create_time = createTime, + sid = sid + }; + + var body = await SendWechatProtocolRequestAsync(url, payload, token); + if (string.IsNullOrWhiteSpace(body)) + { + return string.Empty; + } + + try + { + var parsed = JsonSerializer.Deserialize(body, _jsonOptions); + if (parsed?.Retcode != 0) + { + Log($"协议诊断(transactiondetail):retcode={parsed?.Retcode} errcode={parsed?.Errcode} msg={parsed?.Msg}"); + return string.Empty; + } + } + catch (Exception ex) + { + Log($"协议诊断(transactiondetail):JSON 解析失败:{ex.Message}"); + return string.Empty; + } + + return body; + } + + private void UpdateWechatProtocolCursor(string? transId, long createTime) + { + if (!string.IsNullOrWhiteSpace(transId)) + { + _wechatProtocolLastTransId = transId.Trim(); + } + + if (createTime > _wechatProtocolLastCreateTime) + { + _wechatProtocolLastCreateTime = createTime; + } + } + + private async Task ProcessWechatProtocolIncomeAsync(string id, string? transId, long timestamp, decimal feeCent, string raw) + { + if (string.IsNullOrWhiteSpace(id) || !_wechatProtocolSeen.Add(id)) + { + return; + } + + var amount = feeCent > 0 ? feeCent / 100m : 0m; + if (amount <= 0) + { + return; + } + + var receivedAt = timestamp > 0 + ? DateTimeOffset.FromUnixTimeSeconds(timestamp) + : DateTimeOffset.Now; + var remark = string.IsNullOrWhiteSpace(transId) ? id : transId!; + + var evt = new PaymentEvent + { + Channel = "wechat", + Amount = amount, + OrderNo = remark, + TradeNo = transId ?? string.Empty, + Payer = "wechat-protocol", + Status = "success", + ReceivedAt = receivedAt, + Raw = raw + }; + + var callbackResult = await ForwardEventToServerAsync(evt); + AddPaymentLog(evt, callbackResult); + Log($"协议收到收款:{amount:0.00},订单={remark}"); + } + private async void btnToggleService_Click(object? sender, EventArgs e) { if (IsListenerRunning()) @@ -1366,6 +2544,20 @@ namespace Vmianqian var body = await reader.ReadToEndAsync(); Log($"收到本地事件:{body}"); + var registration = TryParsePendingOrderRegistration(body); + if (registration != null) + { + RegisterPendingOrder(registration); + await WriteJsonResponseAsync(context.Response, 200, new + { + ok = true, + registered = true, + orderId = registration.OrderId, + payId = registration.PayId + }); + return; + } + var paymentEvent = JsonSerializer.Deserialize(body, _jsonOptions); if (paymentEvent == null) { @@ -1393,6 +2585,62 @@ namespace Vmianqian } } + private PendingOrderRegistration? TryParsePendingOrderRegistration(string body) + { + try + { + var registration = JsonSerializer.Deserialize(body, _jsonOptions); + if (registration == null || + string.IsNullOrWhiteSpace(registration.OrderId) || + string.IsNullOrWhiteSpace(registration.PayId)) + { + return null; + } + + return registration; + } + catch + { + return null; + } + } + + private void RegisterPendingOrder(PendingOrderRegistration registration) + { + var existing = _pendingOrders.FirstOrDefault(x => string.Equals(x.OrderId, registration.OrderId, StringComparison.OrdinalIgnoreCase)); + if (existing != null) + { + existing.PayId = registration.PayId.Trim(); + existing.Param = registration.Param?.Trim() ?? string.Empty; + existing.Price = registration.Price; + existing.ReallyPrice = registration.ReallyPrice <= 0 ? registration.Price : registration.ReallyPrice; + existing.PayType = registration.PayType; + existing.Date = registration.Date; + existing.TimeOut = registration.TimeOut; + existing.State = registration.State; + existing.RegisteredAt = DateTimeOffset.Now; + } + else + { + _pendingOrders.Add(new PendingOrderRecord + { + OrderId = registration.OrderId.Trim(), + PayId = registration.PayId.Trim(), + Param = registration.Param?.Trim() ?? string.Empty, + Price = registration.Price, + ReallyPrice = registration.ReallyPrice <= 0 ? registration.Price : registration.ReallyPrice, + PayType = registration.PayType, + Date = registration.Date, + TimeOut = registration.TimeOut, + State = registration.State, + RegisteredAt = DateTimeOffset.Now + }); + } + + SavePendingOrders(); + Log($"订单登记成功:orderId={registration.OrderId} payId={registration.PayId} price={registration.Price:0.##}"); + } + private async Task ForwardEventToServerAsync(PaymentEvent paymentEvent) { var serverUrl = NormalizeServerUrl(_config.ServerUrl); @@ -1405,24 +2653,44 @@ namespace Vmianqian }; } - var payload = new ServerCallbackPayload + var matchedOrder = MatchPendingOrder(paymentEvent); + if (matchedOrder == null) { - ApiKey = _config.ApiKey, - Channel = paymentEvent.Channel, - Amount = paymentEvent.Amount, - OrderNo = paymentEvent.OrderNo, - TradeNo = paymentEvent.TradeNo, - Payer = paymentEvent.Payer, - Status = paymentEvent.Status, - ReceivedAt = paymentEvent.ReceivedAt, - Raw = paymentEvent.Raw - }; + return new ServerCallbackResult + { + StatusCode = HttpStatusCode.Conflict, + ResponseBody = "未匹配到待支付订单,已跳过回调。" + }; + } - Log($"转发到服务端:{serverUrl}"); - var response = await _httpClient.PostAsJsonAsync(serverUrl, payload, _jsonOptions); + var matched = matchedOrder; + var type = matched.PayType > 0 + ? matched.PayType.ToString(System.Globalization.CultureInfo.InvariantCulture) + : (string.Equals(paymentEvent.Channel, "wechat", StringComparison.OrdinalIgnoreCase) ? "1" : "2"); + var payId = matched.PayId; + var param = matched.Param ?? string.Empty; + var priceValue = matched.Price > 0 ? matched.Price : paymentEvent.Amount; + var reallyPriceValue = matched.ReallyPrice > 0 ? matched.ReallyPrice : paymentEvent.Amount; + var timestamp = DateTimeOffset.Now.ToUnixTimeSeconds().ToString(); + var sign = CreateMd5(matched.OrderId + paymentEvent.TradeNo + timestamp + (_config.ApiKey ?? string.Empty)); + + var callbackUrl = BuildAppPushOrderUrl( + serverUrl, + matched.OrderId, + paymentEvent.TradeNo, + timestamp, + sign); + + Log($"转发到服务端:{callbackUrl}"); + var response = await _httpClient.GetAsync(callbackUrl); var responseBody = await response.Content.ReadAsStringAsync(); Log($"服务端响应:HTTP {(int)response.StatusCode} {response.StatusCode},内容:{responseBody}"); + if (response.IsSuccessStatusCode && (responseBody.Contains("\"code\":1", StringComparison.OrdinalIgnoreCase) || responseBody.Contains("\"msg\":\"成功\"", StringComparison.OrdinalIgnoreCase) || responseBody.Contains("success", StringComparison.OrdinalIgnoreCase))) + { + MarkPendingOrderCompleted(matched.OrderId, paymentEvent.TradeNo); + } + return new ServerCallbackResult { StatusCode = response.StatusCode, @@ -1430,6 +2698,94 @@ namespace Vmianqian }; } + private PendingOrderRecord? MatchPendingOrder(PaymentEvent paymentEvent) + { + var expectedType = string.Equals(paymentEvent.Channel, "wechat", StringComparison.OrdinalIgnoreCase) ? 1 : 2; + var now = paymentEvent.ReceivedAt == default ? DateTimeOffset.Now : paymentEvent.ReceivedAt; + + var candidate = _pendingOrders + .Where(x => x.State == 0 && x.PayType == expectedType) + .Where(x => Math.Abs(x.Price - paymentEvent.Amount) < 0.0001m || Math.Abs(x.ReallyPrice - paymentEvent.Amount) < 0.0001m) + .OrderByDescending(x => x.Date) + .ThenByDescending(x => x.RegisteredAt) + .FirstOrDefault(x => + { + if (x.Date <= 0) + { + return true; + } + + var createdAt = DateTimeOffset.FromUnixTimeSeconds(x.Date); + var timeoutMinutes = x.TimeOut > 0 ? x.TimeOut : 30; + return now >= createdAt.AddMinutes(-1) && now <= createdAt.AddMinutes(timeoutMinutes + 2); + }); + + if (candidate != null) + { + Log($"匹配待支付订单成功:orderId={candidate.OrderId} payId={candidate.PayId} param={candidate.Param}"); + } + else + { + Log($"未匹配到待支付订单:channel={paymentEvent.Channel} amount={paymentEvent.Amount:0.##} tradeNo={paymentEvent.TradeNo}"); + } + + return candidate; + } + + private void MarkPendingOrderCompleted(string orderId, string? tradeNo) + { + var order = _pendingOrders.FirstOrDefault(x => string.Equals(x.OrderId, orderId, StringComparison.OrdinalIgnoreCase)); + if (order == null) + { + return; + } + + order.State = 1; + order.TradeNo = tradeNo ?? string.Empty; + order.CompletedAt = DateTimeOffset.Now; + SavePendingOrders(); + Log($"待支付订单已标记完成:orderId={orderId}"); + } + + private static string BuildLegacyNotifyUrl(string serverUrl, string payId, string param, string type, string price, string reallyPrice, string sign) + { + var query = new List + { + $"payId={Uri.EscapeDataString(payId)}", + $"param={Uri.EscapeDataString(param)}", + $"type={Uri.EscapeDataString(type)}", + $"price={Uri.EscapeDataString(price)}", + $"reallyPrice={Uri.EscapeDataString(reallyPrice)}", + $"sign={Uri.EscapeDataString(sign)}" + }; + + var separator = serverUrl.Contains('?') ? "&" : "?"; + return serverUrl + separator + string.Join("&", query); + } + + private static string BuildAppPushOrderUrl(string serverUrl, string orderId, string tradeNo, string timestamp, string sign) + { + if (!Uri.TryCreate(serverUrl, UriKind.Absolute, out var baseUri)) + { + throw new InvalidOperationException("服务端地址格式无效。"); + } + + var pushUri = new Uri(baseUri, "/appPushOrder"); + var query = new List + { + $"orderId={Uri.EscapeDataString(orderId)}", + $"tradeNo={Uri.EscapeDataString(tradeNo ?? string.Empty)}", + $"t={Uri.EscapeDataString(timestamp)}", + $"sign={Uri.EscapeDataString(sign)}" + }; + return pushUri + "?" + string.Join("&", query); + } + + private static string BuildPendingOrdersUrl(string serverUrl, string timestamp, string sign, int type) + { + return $"{serverUrl.TrimEnd('/')}/getPendingOrders?t={Uri.EscapeDataString(timestamp)}&sign={Uri.EscapeDataString(sign)}&type={type}"; + } + private void AddPaymentLog(PaymentEvent paymentEvent, ServerCallbackResult callbackResult) { if (InvokeRequired) @@ -1681,7 +3037,7 @@ namespace Vmianqian lblTopNotice.Text = isRunning ? $"监听中:{BuildLocalListenUrl(_config)}" - : "监听未启动"; + : string.Empty; if (btnToggleService != null) { @@ -1704,6 +3060,197 @@ namespace Vmianqian }; } + private static bool TryExtractSidFromClipboard(out string sid, out string version) + { + sid = string.Empty; + version = string.Empty; + try + { + if (!Clipboard.ContainsText()) + { + return false; + } + + var text = Clipboard.GetText(); + return TryExtractSidFromText(text, out sid, out version); + } + catch + { + return false; + } + } + + private static (string Sid, string Version, string Source) TryExtractSidFromWechatLocalFiles() + { + foreach (var root in GetWechatDataRoots()) + { + if (!Directory.Exists(root)) + { + continue; + } + + var scanned = 0; + foreach (var file in EnumerateWechatCandidateFiles(root)) + { + if (scanned >= 2500) + { + break; + } + + scanned++; + try + { + var info = new FileInfo(file); + if (!info.Exists || info.Length <= 0 || info.Length > 16 * 1024 * 1024) + { + continue; + } + + string? text = null; + try + { + text = File.ReadAllText(file); + } + catch + { + text = null; + } + + if (!string.IsNullOrWhiteSpace(text) && TryExtractSidFromText(text, out var sid, out var version)) + { + return (sid, version, file); + } + + if (TryExtractSidFromBinary(file, out sid, out version)) + { + return (sid, version, file); + } + } + catch + { + } + } + } + + return (string.Empty, string.Empty, string.Empty); + } + + private static IEnumerable GetWechatDataRoots() + { + var appData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData); + var localAppData = Environment.GetFolderPath(Environment.SpecialFolder.LocalApplicationData); + yield return Path.Combine(appData, "Tencent", "WeChat"); + yield return Path.Combine(appData, "Tencent", "Weixin"); + yield return Path.Combine(appData, "Tencent", "WeChatAppEx"); + yield return Path.Combine(localAppData, "Tencent", "WeChat"); + yield return Path.Combine(localAppData, "Tencent", "Weixin"); + yield return Path.Combine(localAppData, "Tencent", "WeChatAppEx"); + } + + private static IEnumerable EnumerateWechatCandidateFiles(string root) + { + var allowed = new HashSet(StringComparer.OrdinalIgnoreCase) + { + ".log", ".txt", ".json", ".js", ".html", ".cache", ".db", ".dat" + }; + + IEnumerator? it = null; + try + { + it = Directory.EnumerateFiles(root, "*", SearchOption.AllDirectories).GetEnumerator(); + } + catch + { + yield break; + } + + using (it) + { + while (true) + { + string? file = null; + try + { + if (!it.MoveNext()) + { + yield break; + } + + file = it.Current; + } + catch + { + continue; + } + + if (string.IsNullOrWhiteSpace(file)) + { + continue; + } + + var ext = Path.GetExtension(file); + if (!allowed.Contains(ext)) + { + continue; + } + + yield return file; + } + } + } + + private static bool TryExtractSidFromText(string? text, out string sid, out string version) + { + sid = string.Empty; + version = string.Empty; + if (string.IsNullOrWhiteSpace(text)) + { + return false; + } + + var match = Regex.Match( + text, + @"(?:\?|&|""|\s)sid=([A-Za-z0-9\-_]{16,})", + RegexOptions.IgnoreCase | RegexOptions.CultureInvariant); + if (!match.Success) + { + return false; + } + + sid = match.Groups[1].Value.Trim(); + var vMatch = Regex.Match( + text, + @"(?:\?|&|""|\s)v=([0-9]+(?:\.[0-9]+){1,3})", + RegexOptions.IgnoreCase | RegexOptions.CultureInvariant); + if (vMatch.Success) + { + version = vMatch.Groups[1].Value.Trim(); + } + return !string.IsNullOrWhiteSpace(sid); + } + + private static bool TryExtractSidFromBinary(string file, out string sid, out string version) + { + sid = string.Empty; + version = string.Empty; + try + { + var bytes = File.ReadAllBytes(file); + if (bytes.Length == 0) + { + return false; + } + + // 以拉丁编码保留字节映射,便于从二进制中检索 ASCII URL/sid 片段 + var text = Encoding.Latin1.GetString(bytes); + return TryExtractSidFromText(text, out sid, out version); + } + catch + { + return false; + } + } + private static void ValidateConfig(ClientConfig config) { if (config.ListenPort < 1 || config.ListenPort > 65535) @@ -1845,6 +3392,7 @@ namespace Vmianqian public string EmailAuthCode { get; set; } = string.Empty; public string WechatPath { get; set; } = string.Empty; public string WechatSid { get; set; } = string.Empty; + public string WechatApiVersion { get; set; } = "7.10.1"; public string AlipayPath { get; set; } = string.Empty; public string AlipayAppId { get; set; } = string.Empty; public string AlipayUserId { get; set; } = string.Empty; @@ -1869,6 +3417,42 @@ namespace Vmianqian public string? Raw { get; set; } } + public sealed class PendingOrderRegistration + { + public string OrderId { get; set; } = string.Empty; + public string PayId { get; set; } = string.Empty; + public string? Param { get; set; } + public int PayType { get; set; } + public decimal Price { get; set; } + public decimal ReallyPrice { get; set; } + public int TimeOut { get; set; } + public int State { get; set; } + public long Date { get; set; } + } + + public sealed class PendingOrderRecord + { + public string OrderId { get; set; } = string.Empty; + public string PayId { get; set; } = string.Empty; + public string Param { get; set; } = string.Empty; + public int PayType { get; set; } + public decimal Price { get; set; } + public decimal ReallyPrice { get; set; } + public int TimeOut { get; set; } + public int State { get; set; } + public long Date { get; set; } + public DateTimeOffset RegisteredAt { get; set; } + public DateTimeOffset? CompletedAt { get; set; } + public string TradeNo { get; set; } = string.Empty; + } + + public sealed class PendingOrdersApiResponse + { + public int Code { get; set; } + public string Msg { get; set; } = string.Empty; + public List? Data { get; set; } + } + public sealed class ServerCallbackPayload { public string ApiKey { get; set; } = string.Empty; @@ -1921,4 +3505,89 @@ namespace Vmianqian [JsonNumberHandling(JsonNumberHandling.AllowReadingFromString)] public int? JkState { get; set; } } + + public sealed class WechatSmallbookResponse + { + [JsonPropertyName("retcode")] + public int Retcode { get; set; } + + [JsonPropertyName("errcode")] + public int Errcode { get; set; } + + [JsonPropertyName("msg")] + public string Msg { get; set; } = string.Empty; + + [JsonPropertyName("data")] + public WechatSmallbookData? Data { get; set; } + } + + public sealed class WechatApiBaseResponse + { + [JsonPropertyName("retcode")] + public int Retcode { get; set; } + + [JsonPropertyName("errcode")] + public int Errcode { get; set; } + + [JsonPropertyName("msg")] + public string Msg { get; set; } = string.Empty; + } + + public sealed class WechatSmallbookData + { + [JsonPropertyName("income_list")] + public List IncomeList { get; set; } = new(); + } + + public sealed class WechatSmallbookIncome + { + [JsonPropertyName("fee")] + [JsonNumberHandling(JsonNumberHandling.AllowReadingFromString)] + public decimal Fee { get; set; } + + [JsonPropertyName("timestamp")] + [JsonNumberHandling(JsonNumberHandling.AllowReadingFromString)] + public long Timestamp { get; set; } + + [JsonPropertyName("trans_id")] + public string? TransId { get; set; } + + [JsonPropertyName("roll_id")] + public string? RollId { get; set; } + } + + public sealed class WechatClassifyReadResponse + { + [JsonPropertyName("retcode")] + public int Retcode { get; set; } + + [JsonPropertyName("errcode")] + public int Errcode { get; set; } + + [JsonPropertyName("msg")] + public string Msg { get; set; } = string.Empty; + + [JsonPropertyName("data")] + public WechatClassifyReadData? Data { get; set; } + } + + public sealed class WechatClassifyReadData + { + [JsonPropertyName("person_bill_list")] + public List PersonBillList { get; set; } = new(); + } + + public sealed class WechatClassifyReadBill + { + [JsonPropertyName("trans_id")] + public string? TransId { get; set; } + + [JsonPropertyName("create_time")] + [JsonNumberHandling(JsonNumberHandling.AllowReadingFromString)] + public long CreateTime { get; set; } + + [JsonPropertyName("total_fee")] + [JsonNumberHandling(JsonNumberHandling.AllowReadingFromString)] + public decimal TotalFee { get; set; } + } } diff --git a/Vmianqian.csproj b/Vmianqian.csproj index 0bb12e1..4f9251e 100644 --- a/Vmianqian.csproj +++ b/Vmianqian.csproj @@ -14,6 +14,15 @@ + + + C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.5\UIAutomationClient.dll + + + C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App\10.0.5\UIAutomationTypes.dll + + + diff --git a/bin/Debug/net10.0-windows/Vmianqian.dll b/bin/Debug/net10.0-windows/Vmianqian.dll index e9e00fd6b54bf44438e00d67aa92201a9954f164..f024765b925d348bb7eeb838653f1815874a9c0f 100644 GIT binary patch literal 127488 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%0DktI5~gm$*vmLxKUK|!yHZV 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 literal 67584 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 delta 99 zcmZqp!r1^sEsR^3ILiGE7*ZHg89-z*gAs!zkPRZ!7?Kz)7|a=r84`iCF%ViZm;uF1 ez$y)as*M>;!6G2>G$0=&W6Y4YJ-nQ0B@+M*!xF9l diff --git a/bin/Debug/net10.0-windows/Vmianqian.pdb b/bin/Debug/net10.0-windows/Vmianqian.pdb index fa8c3a07917948bf1b41793f8f524c7a38bc2560..3c7f8b990848082967c0312833064b7ff28caede 100644 GIT binary patch literal 45068 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 U6oYe#-meeBch&p9+ioaMir|AO1Q zjIK-KzJYF&h+^k1Uy6c$hW-!&zKiIYevpBBer7l#wsP{tPK({j{XxjwaU zdNxX11kuI$;LM6D?rf_}^ew#p+?+?{-LZk0Z>=3rC0~7=$UZ-Mf3&kVkwDIqL`4*Z ziWBq$%7f4?&?8_T=tGp5D4kFeR0d&Ot8pAk%+IO^sxknj9U3Wxhz{c(--BjB+=CCq zy>E~c#Af&4F@kau1Ra3Bgo4Kliie7zi;$5hXi~Bu34H|JF+tEvQ0PQK15*T@hDs+1 z%AYJ~CA10J4xNOqLW5HU&4X&7ZP2SwuQWkxpik3;oBE{-8U^iyeujo*2+GaC{H&j# zgI1mQfS?fG3(DWwQ)dU-X9?=dhXC~v*@9LJj61r3~rI8+K%LhGQ-P}4L|hX+xA8u}3W6uJyugRVnf)3K#cA1DHf zg@!}ppcE(z%5}r!LyMqg&}yg#x)W-Ewm}kl7&_~cE=x>lSS5P1n1`U9QL1Ul^ zPzE#|ng=a_N}zIREwmA;gSJ5TL%X39&}r!PTpa&*P`Lno0{s>G2KosyW(x9!f}n6H z28x5mLKC4(Xaj{gJ;uobGD zuF82mNjQ_WdfA-r#yD~3-l*R>??$~m|3-ar!Hs%{RzFY(zuSrl@-MoPbWN+rVJ#sF z#QX*R@h<{bdyvLw;Ohf6RJ;*s!5RmH`)a%u`5`@w@vpw-cx&O zkGF^ISer7y?O38X?gaC$IR`QOgBPR8QcRdR6d8Z^!ernJ2Z!-$#M|Evu_GLg;i$Jj z5#R_;z>nk1ky<nioXfRkMoW~Zr zz;TM7!xjtxk5qgb90QJ5JO+Cp7CcVz5cD@tW1hqyjmLlod)RaQkHawpjs(@gTi~JK z@rrZ6!!%9@$7#$rh2a|W&0&Pb8^9yMiK@R;@F;K+xjno1K{!TR4iEns9Ix?g@ECBi z>R>Q(A3pfPhGEJXqKpHsXCeFNx zvosFF9?B*!HyU|%Iolj0bTe=96pcrKr)tcX+BA!OQR5SsXu8Hcp&1%a0q1JWE80wQ z^MIZXHo-AVOXv%pt#K204meBYF9pv9XDi+fo(IlR%!f1&JVh~|#Q8UIfm?HYg@i)z zbk$(7;+bH+r0{5k2PH2|(lg;|@O<*_;aKpk8s7%^mQG((T}cf76)bn>FS*-V1v2InEoQ zw>LHBc%8=FzWxTgt;g|(8xG=xMvb`xzV!3~nlbJ9-42wT@b4OPe5b}7=Np#3 zM;_9cXaS4rt6BJf<2Xo_%j-F{P$XaeZXxTcdMn78}M?fAJac*%<-cdbBD(?=J>N3bNskA-~jM* z8uJ8BK<@4Vxr67SZsrb7YRvH$H0JmpHRkv!jXBhC0k3GxFCSMm zE<^ioHQt8_yT8{RXuvXeVYxV8&@QXK zAAt9Fs|#KUnfS+#Sh%BG(K=Xz9=GyGS^e+@X;292-q_9jdqJEQCzC!Br<1CUSCgh1 zZzbhJ*TuP{cg2MyZ^PY{)ZaLi&8dQZ9LIeLa!kXSi1PAGJIb>-6zB2%trJhm7b%@S z#$)v-cu2j3_k}O;MspeO30JVcuHpsdTRi=Kj~ACAI0!D=5KJT2{vG!35hLBO)4qf* z!-w9)i;$gu8SjGqZ+B8Uiss~E%bKty6Ix+UOz431pV$Q(n9}9tLs2PYv(s}aF4)DB z(qU&zE`}|gY+AO}vK_F$jPJ5+y0;HirWV6CrJCM$I+NN8>y_34Tb|Yhdp^xgb_|g2 zf<2RJ!n!hAE!zQmZ$=lagmutE8RTQ9y|512m*GPFaz;ArSFk>G4c0+FWfa2`lxe~q z$ZUl@1nZ#ZGdoa!5!OMkXLg}JIEx&18k=#|CDstpv+>+ny@3Lw!&_m+5!9i)GoH! z9lfwWrgiml(Ee#IKRbOetu+kWG^;htNwKp!!tK-r>!inEed*LJSA?CW%yC6H>Evuz zgfIOv+l;WgDQ2z-*H3dyxSVslkhFAO7d!;(OJVcUBkh!)pC0L?5AxC@ed+VOR(NI< zw89ev>q`R)D9TR9VV%?p>q}1;6vK0GVKF?@VSQ1kU5#?)Y;VY@gFI`r(W_b-Q-B?>% zL${Yy*Vf4QMlTG%y{fvFFpr9*CCgS9ly0b{(hanBU1{}3SrXsr`n2NI+Wd!7GX7dL z1~cQ15Y40+|m ztv@b^>7DR-;;A)HkDNM4igA70zaG2HW*q8lFHCwmPL?hm?wHRDQbm+g?p^AVA1-}R zn#+dD7njX&=3wQ(nQC^(;N|a%{xTxJzf3OODle8s<>iVtw`gk?ZTm#qGotN;XnR?- zofmDNi?)A=_CBJ$zi1yP+Vezvm1w_Hv~L&fhedmvXn#qxpL4cfG`Be0FPU}D_ABP@ zMYubPwX$$Uv1pOUR%D6e@~0JXQ6D))FPq^gr(vPE7vYZOL&DfNh}SdoE16L?&@g|H zWo5UA-~(~}S!(D-4Y|~?gIrkZL|wT2TiF0R9vwv8koMq}V-26_cy17N56QKw=c@YS zsAoCMdYq!7?m79|YH7zqq^RqZODm?>dvWzM`BcSRyB}AtN?YYW-17w8_jfYoEpXLu zbPAemIKuf;rXNi+aPLgC;q5-rz$d@~xXn_M4Ik~Wq(@OSV=~akX5i(1Pyhva+idvu z6zNAnKB&;a~7Bh!ZDNbV1x8=ZXXi=crv;0OcvRrzGq0KYcT>@as(GiaAdReSAL z^-Fo7>hm;z%&Q^UDZH`k29ogGXoQHs-t5fuI0v&cFn~QXJ)TkQ8I8M)XefGMZJgbz zt(Ng?6GWXXT|25Gj`w-P4s2|118Y|RABw&_!%#NiY;dRY#N*4<1r>_^5l!x74Dyq5^va3f-CTxBN`1kx^{^#BX2-ssC>A##E$1e(Kt#P>jrtM$#Uen{`PS8 zX3BZ%G9tW0eW*9Cp1KMz(X^9m4R2;y@rPxTnKRs8fj=3{AuDBPV1I6S0^^S|93eck z7anQM9ntJQCBHLI+G9{{ik8Rg7B6#D3t@g&x5}^@hlhm+gawGY8d3L+sGlzyr$^QO z7}dB?G{*+xbT^+h>VB}*e`jx8;Ani`x7i&if<;}eXxJkfu17T-h-&n8;DMmwQKQjW zJ{Vhw-O{v2?rf|YWM3zQC^GmNLo~gJ$%XPE#^m@3uJ=SfC{1t3xTa*gRqd23o3cFB zFXiu>?us0agy!vN7iKtc@u&mgV>k>WQsy=fb$w%X-TXVJaN?BgLn3&iH~v;Ji4sR} z(<3r;%VayAwnXzuxoAs{a};J03_2^H*b;Y3y*0b+(H#Fkc5Rs+7thr%G2k4-k;xMc zv^-bfnXf#H#&FIxnZI?FeJrXi{_>@*MfP!Ajg-;&<6V&a&9Y)~swTi7GE~80WifElFwu zNooSgDk0fQu(eE39ZpakP8{qRXyR~BnKD3?%0EdBG--^-KUwi)#i^>F)X|71V9V3g z4AWF%ItSoSPwIJ#)h=I+ldr}p zP+Xw6P;sH+BE?0D=c{?mSM$16^?$4Ce}S6U0&8A@dR$BRfEh|*}$_P)qQq6Ns z6!T(R%NljYR;iAv;yK{gvPSWG)nL8auuUp|lR7W%vO2Q0+@<{WYRA+Mlv8EC``52d z(Lpoc2uZ|X7|@5J8y*>tD=(k_*hl`gaO0x4{*!=t)*hK0lWgTtMAJm;N*La>*Sa$N zn%|BsNb+>j7pvSltRRVoBZ7wUy^Q3W5B75RviWZ`+bAL&f3nLr_`fVvQmTP>T6`-m zGH8Ph_w6D4_a5Q95sw%A%1rfGIQK#3c{|qJ!H{|0#R2||@M~p2r06S*f|!N_L@|w6 zNX^$UZ6|LamdvJ^a`~==py50RPv8SnqXZ*2z;U%9)HuzIP;?UnZ$Dr_Yf4t`QJZSBWao{{mw5GvWXM diff --git a/bin/Debug/net10.0-windows/appsettings.client.json b/bin/Debug/net10.0-windows/appsettings.client.json index 3bfebdf..218aa1e 100644 --- a/bin/Debug/net10.0-windows/appsettings.client.json +++ b/bin/Debug/net10.0-windows/appsettings.client.json @@ -6,8 +6,9 @@ "SmtpPort": 465, "NotifyEmail": "1066960883@qq.com", "EmailAuthCode": "TPPMKSMvCadyzu3m", - "WechatPath": "", - "WechatSid": "", + "WechatPath": "D:\\Softwares\\Tencent\\Weixin\\Weixin.exe", + "WechatSid": "AAHRxMH-4RkRMiXVf7NSJGhBKBwThd_tfDct27hXjkv0Ag", + "WechatApiVersion": "7.10.1", "AlipayPath": "", "AlipayAppId": "", "AlipayUserId": "", @@ -15,7 +16,7 @@ "WechatIntervalSeconds": 5, "AlipayIntervalSeconds": 5, "EnableWheelPolling": true, - "EnableHeartbeat": true, + "EnableHeartbeat": false, "HeartbeatIntervalSeconds": 30, "ListenPath": "/notify/" } \ No newline at end of file diff --git a/bin/Debug/net10.0-windows/pending-orders.client.json b/bin/Debug/net10.0-windows/pending-orders.client.json new file mode 100644 index 0000000..ad47dbb --- /dev/null +++ b/bin/Debug/net10.0-windows/pending-orders.client.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/bin_temp/Vmianqian.dll b/bin_temp/Vmianqian.dll index e9e00fd6b54bf44438e00d67aa92201a9954f164..aa2cb38dd233bdf56f3304122f5876d7ec2486af 100644 GIT binary patch literal 123392 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%0Aa1XLZ&M0x?P@&`FXU6oDi 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 literal 67584 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 delta 99 zcmZqp!r1^sEsR^3ILiGE7*ZHg89-z*gAs!zkPRZ!7?Kz)7|a=r84`iCF%ViZm;uF1 ez$y)as*M>;!6G2>G$0=&W6Y4YJ-nQ0B@+M*!xF9l diff --git a/bin_temp/Vmianqian.pdb b/bin_temp/Vmianqian.pdb index fa8c3a07917948bf1b41793f8f524c7a38bc2560..5100fa758d61cdb0156064e322bf99ee145a6256 100644 GIT binary patch delta 23803 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 K_FpOek@VlYA!2m^ delta 9169 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 IL6zu#0o21cWB>pF diff --git a/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfo.cs b/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfo.cs index 7c6fce0..2697f90 100644 --- a/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfo.cs +++ b/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfo.cs @@ -1,10 +1,9 @@ //------------------------------------------------------------------------------ // -// 此代码由工具生成。 -// 运行时版本:4.0.30319.42000 +// This code was generated by a tool. // -// 对此文件的更改可能会导致不正确的行为,并且如果 -// 重新生成代码,这些更改将会丢失。 +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. // //------------------------------------------------------------------------------ @@ -14,7 +13,7 @@ using System.Reflection; [assembly: System.Reflection.AssemblyCompanyAttribute("Vmianqian")] [assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] [assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] -[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+0de0dc29e29fb873a83396b40d1d356b96fd403f")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+82b3bc2cf0c49cfa7245d5fdd65ef87ea19892fc")] [assembly: System.Reflection.AssemblyProductAttribute("Vmianqian")] [assembly: System.Reflection.AssemblyTitleAttribute("Vmianqian")] [assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] diff --git a/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfoInputs.cache b/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfoInputs.cache index 5d730bd..27bcdf3 100644 --- a/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfoInputs.cache +++ b/obj/Debug/net10.0-windows/Vmianqian.AssemblyInfoInputs.cache @@ -1 +1 @@ -2470aa52bf7c9d2f34f885ab74c7c3690d381bd0289dbaafe7d1e260701d7524 +ebd5591aa83e3ce6dc8b4661368f70755a868c935951ae1bef6bc75ef5c3797f diff --git a/obj/Debug/net10.0-windows/Vmianqian.csproj.AssemblyReference.cache b/obj/Debug/net10.0-windows/Vmianqian.csproj.AssemblyReference.cache index 35108ef3368bb3bc20e72705ac4bacc6b28cc76c..695e0e95a49d309d6ebc82f4eafe6993b74cd8d1 100644 GIT binary patch literal 5067 zcmdT{eN+@x6yMPVMbO2}P!mb}{&4o}?Av{B@B7{R z`^~-g`5}HXnGDG^#^7d_v9m;8SR&;B9ByTJ8t^!mL$JV#r%)uzaEy&dU!Z6!Q@|wv zE|+JVXuQ*jD;1~$)#9^~;$1wGNAMIw8yys&dDQA~APBTCTN@NL)?GIcL6Bh`mmvYd z60b}6%R}&u6bggIZ~#9M!UloGU>IhM!P;TPB&?W(6}ul+Ou~wF1R-KAf&0jwkoJ5N z4*mK`-)E-9D+NRdd>!~_O=G`8`-;$lnBuzE^e4uA*Y6PcG;BpaY<45h)!vcc8r%3re|w?}OVxvtz*b~vcSAA9nLg@>4vLvLpmeRod#)3oT-CZqq= zhKb9c8XjAAvU&Y7X2Xe_lg*bm;MV$(_f2(8x#1DRCht88BASm5958n`G7w@?R_HVK z>Qc2xMn_K~!!iKNK@ws`XCXO}VMdpOcd;Or1}>f@9FbvWm&HMm$-te?>)m1CWm{QghI}z ztbpy2*S@Si>4~b5$#XI^eE3orD{!Eud^i*$VU6e9G})tVe33Wi?lukwAcaSrLsJ=g zGN1uV_1?VP%mNM~mXZj=_MX6?coK?=qb!tz;@yalR(xH)#Oo`}qdfj6P=uXkIG!Ro z6mlqR(Py#sww=ZkWNtc3kUfipFX|rkKu^zM0b!+RJ1UKOjaz=N;a*!D)h>stRWQU< z9>r7nJ$(E+hC$#S3CP#LiltVlmC*>$8==%-DZ2~&j^~02e|8_2Mlp%_s*K%8 zHNFdD_Wx8E+mMzBVSAwJ;w~9=Wzk=d(1TYN`#2HyX_bADG6;hFPl;4`#(I{T zQekSE#ldC|&w(8jhoiL14tsVdEE$9y_V5JFTU`{cLe;2JfjcM*4qJMmDU2$Ry7&pG z0*{A_W+k;Hr1%}DM{W^Ybw6ne5t`us@ZH*`i`}>Ywq1Lk;gy9%P?!h`lR#mupfCv( zCV|2rD6AtW%nMWr+^MVFGb25#5zn_gd(E(lx-oC#kzd2-=N#O=u42L4)lYBMZ`rVQ z&Wy9A*Z;15rfE^w(CdcKIaPlY4Gs!voLAM5d1*$iHS)`>TjpC|;uCES!^2!)$nEjx zjxL?vvZFky<#_$j^+74CvrVOqTNh_ln;YI8J^kgqvWp80yPo@I&VuH03PFdeT6Lg<+)omh8l|O1ucd8r=)b0Z{OKQsliSEnSBnafph|b&3Sqjb zkWL+dqJa*yY6d!hbqcB5$GPCW{r0c=Ug5kGc@tUNT)6G6h^*xc@$F91Wp`gXVSDFP z?Vb5qOA<~gPMiMBA3vHK)eshSIWn$%^B+j&?3X}Pk;&YEk4T$Ko-MpJ_m$%C&8u&| z5;$@83r)BixOcIMN#W(yYyY+c9cZaP6qWT6{U7H3{eKZXD_q6I8%T+BAe#tOxF;1m(!3cwB=j1;Kdb z5IhA=B~xC9{3$B}AK4^k4u8*_*lx?cl;K+#Dcux?2Mi{GY1M&{&@gW>CBlaH=~jZ_ z^w;%+xX3F3#XE;wF`iOgt5}lsu{@-5zirBK(tG$tXSk z`QsZeC8lcijxF`kdnTDzy?6ej5y`if?g<|{t!7!x%RfA3j&%0Ea{@m3&n?%}E{iZh_n_4^?N%p{RBUy5> zJ1lE}LZ`8T38Y3t=xs`i;QYNQqf3_IxxO=&;Z!@8t1f&J*vhgr*VimdV0^Od1*SxB zvkR6DH@1g3$FU1EFTL@){KB-!XU_a`1k)vER95_SY<_=J%-XVM9@2?iVxajpJd1-Okha$^I>K1x)|| diff --git a/obj/Debug/net10.0-windows/Vmianqian.csproj.CoreCompileInputs.cache b/obj/Debug/net10.0-windows/Vmianqian.csproj.CoreCompileInputs.cache index 176a9bf..5c232f3 100644 --- a/obj/Debug/net10.0-windows/Vmianqian.csproj.CoreCompileInputs.cache +++ b/obj/Debug/net10.0-windows/Vmianqian.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -1444586d3f97cf78236527678a31115203cb3c8ebe795b8d0d33e2075e906f3f +7239ca1570e58a84bff4ce01bdd3920794f5c0a911cc1d186c71d7544994c98a diff --git a/obj/Debug/net10.0-windows/Vmianqian.csproj.FileListAbsolute.txt b/obj/Debug/net10.0-windows/Vmianqian.csproj.FileListAbsolute.txt index 89c6a41..fd3c390 100644 --- a/obj/Debug/net10.0-windows/Vmianqian.csproj.FileListAbsolute.txt +++ b/obj/Debug/net10.0-windows/Vmianqian.csproj.FileListAbsolute.txt @@ -32,7 +32,6 @@ E:\Demos\DemoOwns\C\VmianqianC\obj\Debug\net10.0-windows\Vmianqian.csproj.CoreCo E:\Demos\DemoOwns\C\VmianqianC\obj\Debug\net10.0-windows\Vmianqian.dll E:\Demos\DemoOwns\C\VmianqianC\obj\Debug\net10.0-windows\refint\Vmianqian.dll E:\Demos\DemoOwns\C\VmianqianC\obj\Debug\net10.0-windows\Vmianqian.pdb -E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\Vmianqian.exe E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\Vmianqian.deps.json E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\Vmianqian.runtimeconfig.json E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\Vmianqian.dll @@ -53,3 +52,4 @@ E:\Demos\DemoOwns\C\VmianqianC\bin_temp\MimeKit.dll E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\BouncyCastle.Cryptography.dll E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\MailKit.dll E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\MimeKit.dll +E:\Demos\DemoOwns\C\VmianqianC\bin\Debug\net10.0-windows\Vmianqian.exe diff --git a/obj/Debug/net10.0-windows/Vmianqian.dll b/obj/Debug/net10.0-windows/Vmianqian.dll index e9e00fd6b54bf44438e00d67aa92201a9954f164..f024765b925d348bb7eeb838653f1815874a9c0f 100644 GIT binary patch literal 127488 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%0DktI5~gm$*vmLxKUK|!yHZV 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 literal 67584 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 U6oYe#-meeBch&p9+ioaMir|AO1Q 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 diff --git a/obj/Debug/net10.0-windows/apphost.exe b/obj/Debug/net10.0-windows/apphost.exe index 24cdd3c15adf05a3e8d6c41496cc669638d2ff93..d623a2ae71d75ed2042b9ddf1ced98a6acb2dbeb 100644 GIT binary patch delta 99 zcmZqp!r1^sEsR^3ILiGk7>pQ_7>t298OTazNMkSnk|qq6V0I#dIZ)Ju!IU8dh|_>% i3WFJtl?r5A0Oe8{5*ZAEYAt}+2q>1kJ-nQ0B@+NEjuUwR delta 99 zcmZqp!r1^sEsR^3ILiGE7*ZHg89-z*gAs!zkPRZ!7?Kz)7|a=r84`iCF%ViZm;uF1 ez$y)as*M>;!6G2>G$0=&W6Y4YJ-nQ0B@+M*!xF9l diff --git a/obj/Debug/net10.0-windows/ref/Vmianqian.dll b/obj/Debug/net10.0-windows/ref/Vmianqian.dll index eafc4b5a2aad28f00e69cbcee55fe0f24bdce89e..a94f0f646c3480138204b3b588ba515101618e3c 100644 GIT binary patch literal 24064 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 M%iqfXi$~yp1Jzn0b^rhX literal 14848 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 Q*tVZ_MxVz2|JVZm3o)K!4FCWD diff --git a/obj/Debug/net10.0-windows/refint/Vmianqian.dll b/obj/Debug/net10.0-windows/refint/Vmianqian.dll index eafc4b5a2aad28f00e69cbcee55fe0f24bdce89e..a94f0f646c3480138204b3b588ba515101618e3c 100644 GIT binary patch literal 24064 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 M%iqfXi$~yp1Jzn0b^rhX literal 14848 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 Q*tVZ_MxVz2|JVZm3o)K!4FCWD diff --git a/vmq-customization-pack/Index.php b/vmq-customization-pack/Index.php new file mode 100644 index 0000000..34e4e13 --- /dev/null +++ b/vmq-customization-pack/Index.php @@ -0,0 +1,735 @@ +getCurl($url); + + //return 'by:vone'; + } + + public function getReturn($code = 1, $msg = "成功", $data = null) + { + return array("code" => $code, "msg" => $msg, "data" => $data); + } + + //后台用户登录 + public function login() + { + $user = input("user"); + $pass = input("pass"); + + $_user = Db::name("setting")->where("vkey", "user")->find(); + if ($user != $_user["vvalue"]) { + return json($this->getReturn(-1, "账号或密码错误")); + } + + $_pass = Db::name("setting")->where("vkey", "pass")->find(); + if ($pass != $_pass["vvalue"]) { + return json($this->getReturn(-1, "账号或密码错误")); + } + + Session::set("admin", 1); + + return json($this->getReturn()); + } + + + //后台菜单 + public function getMenu() + { + if (!Session::has("admin")) { + return json($this->getReturn(-1, "没有登录")); + } + + + $menu = array( + array( + "name" => "系统设置", + "type" => "url", + "url" => "admin/setting.html?t=" . time(), + ), + array( + "name" => "监控端设置", + "type" => "url", + "url" => "admin/jk.html?t=" . time(), + ), + array( + "name" => "微信二维码", + "type" => "menu", + "node" => array( + array( + "name" => "添加", + "type" => "url", + "url" => "admin/addwxqrcode.html?t=" . time(), + ), + array( + "name" => "管理", + "type" => "url", + "url" => "admin/wxqrcodelist.html?t=" . time(), + ) + ), + ), array( + "name" => "支付宝二维码", + "type" => "menu", + "node" => array( + array( + "name" => "添加", + "type" => "url", + "url" => "admin/addzfbqrcode.html?t=" . time(), + ), + array( + "name" => "管理", + "type" => "url", + "url" => "admin/zfbqrcodelist.html?t=" . time(), + ) + ), + ), array( + "name" => "订单列表", + "type" => "url", + "url" => "admin/orderlist.html?t=" . time(), + ), array( + "name" => "Api说明", + "type" => "url", + "url" => "api.html?t=" . time(), + ) + ); + + return json($menu); + + } + + //创建订单 + public function createOrder() + { + $this->closeEndOrder(); + + $payId = input("payId"); + if (!$payId || $payId == "") { + return json($this->getReturn(-1, "请传入商户订单号")); + } + $type = input("type"); + if (!$type || $type == "") { + return json($this->getReturn(-1, "请传入支付方式=>1|微信 2|支付宝")); + } + if ($type != 1 && $type != 2) { + return json($this->getReturn(-1, "支付方式错误=>1|微信 2|支付宝")); + } + + $price = input("price"); + if (!$price || $price == "") { + return json($this->getReturn(-1, "请传入订单金额")); + } + if ($price <= 0) { + return json($this->getReturn(-1, "订单金额必须大于0")); + } + + $sign = input("sign"); + if (!$sign || $sign == "") { + return json($this->getReturn(-1, "请传入签名")); + } + + $isHtml = input("isHtml"); + if (!$isHtml || $isHtml == "") { + $isHtml = 0; + } + $param = input("param"); + if (!$param) { + $param = ""; + } + + $res = Db::name("setting")->where("vkey", "key")->find(); + $key = $res['vvalue']; + + if (input("notifyUrl")) { + $notify_url = input("notifyUrl"); + } else { + $res = Db::name("setting")->where("vkey", "notifyUrl")->find(); + $notify_url = $res['vvalue']; + } + + if (input("returnUrl")) { + $return_url = input("returnUrl"); + } else { + $res = Db::name("setting")->where("vkey", "returnUrl")->find(); + $return_url = $res['vvalue']; + } + + + $_sign = md5($payId . $param . $type . $price . $key); + if ($sign != $_sign) { + return json($this->getReturn(-1, "签名错误")); + } + + $jkstate = Db::name("setting")->where("vkey", "jkstate")->find(); + $jkstate = $jkstate['vvalue']; + if ($jkstate!="1"){ + return json($this->getReturn(-1, "监控端状态异常,请检查")); + + } + + + + $reallyPrice = bcmul($price ,100); + + $payQf = Db::name("setting")->where("vkey", "payQf")->find(); + $payQf = $payQf['vvalue']; + + + $orderId = date("YmdHms") . rand(1, 9) . rand(1, 9) . rand(1, 9) . rand(1, 9); + + $ok = false; + for ($i = 0; $i < 10; $i++) { + $tmpPrice = $reallyPrice . "-" . $type; + + $row = Db::execute("INSERT IGNORE INTO tmp_price (price,oid) VALUES ('" . $tmpPrice . "','".$orderId."')"); + if ($row) { + $ok = true; + break; + } + if ($payQf == 1) { + $reallyPrice++; + } else if ($payQf == 2) { + $reallyPrice--; + } + } + + if (!$ok) { + return json($this->getReturn(-1, "订单超出负荷,请稍后重试")); + } + //echo $reallyPrice; + + $reallyPrice = bcdiv($reallyPrice, 100,2); + + if ($type == 1) { + $payUrl = Db::name("setting")->where("vkey", "wxpay")->find(); + $payUrl = $payUrl['vvalue']; + + } else if ($type == 2) { + $payUrl = Db::name("setting")->where("vkey", "zfbpay")->find(); + $payUrl = $payUrl['vvalue']; + } + + if ($payUrl == "") { + return json($this->getReturn(-1, "请您先进入后台配置程序")); + } + $isAuto = 1; + $_payUrl = Db::name("pay_qrcode") + ->where("price", $reallyPrice) + ->where("type", $type) + ->find(); + if ($_payUrl) { + $payUrl = $_payUrl['pay_url']; + $isAuto = 0; + } + + + $res = Db::name("pay_order")->where("pay_id", $payId)->find(); + if ($res) { + return json($this->getReturn(-1, "商户订单号已存在")); + } + + + + + $createDate = time(); + $data = array( + "close_date" => 0, + "create_date" => $createDate, + "is_auto" => $isAuto, + "notify_url" => $notify_url, + "order_id" => $orderId, + "param" => $param, + "pay_date" => 0, + "pay_id" => $payId, + "pay_url" => $payUrl, + "price" => $price, + "really_price" => $reallyPrice, + "return_url" => $return_url, + "state" => 0, + "type" => $type + + ); + + + Db::name("pay_order")->insert($data); + + + //return ""; + + if ($isHtml == 1) { + + echo ""; + + } else { + $time = Db::name("setting")->where("vkey", "close")->find(); + $data = array( + "payId" => $payId, + "orderId" => $orderId, + "payType" => $type, + "price" => $price, + "reallyPrice" => $reallyPrice, + "payUrl" => $payUrl, + "isAuto" => $isAuto, + "state" => 0, + "timeOut" => $time['vvalue'], + "date" => $createDate + ); + return json($this->getReturn(1, "成功", $data)); + + } + + + } + //获取订单信息 + public function getOrder() + { + + $res = Db::name("pay_order")->where("order_id", input("orderId"))->find(); + if ($res){ + $time = Db::name("setting")->where("vkey", "close")->find(); + + $data = array( + "payId" => $res['pay_id'], + "orderId" => $res['order_id'], + "payType" => $res['type'], + "price" => $res['price'], + "reallyPrice" => $res['really_price'], + "payUrl" => $res['pay_url'], + "isAuto" => $res['is_auto'], + "state" => $res['state'], + "timeOut" => $time['vvalue'], + "date" => $res['create_date'] + ); + return json($this->getReturn(1, "成功", $data)); + }else{ + return json($this->getReturn(-1, "云端订单编号不存在")); + } + } + //查询订单状态 + public function checkOrder() + { + $res = Db::name("pay_order")->where("order_id", input("orderId"))->find(); + if ($res){ + if ($res['state']==0){ + return json($this->getReturn(-1, "订单未支付")); + } + if ($res['state']==-1){ + return json($this->getReturn(-1, "订单已过期")); + } + + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + + $res['price'] = number_format($res['price'],2,".",""); + $res['really_price'] = number_format($res['really_price'],2,".",""); + + + $p = "payId=".$res['pay_id']."¶m=".$res['param']."&type=".$res['type']."&price=".$res['price']."&reallyPrice=".$res['really_price']; + + $sign = $res['pay_id'].$res['param'].$res['type'].$res['price'].$res['really_price'].$key; + $p = $p . "&sign=".md5($sign); + + $url = $res['return_url']; + + + + if (strpos($url,"?")===false){ + $url = $url."?".$p; + }else{ + $url = $url."&".$p; + } + + return json($this->getReturn(1, "成功", $url)); + }else{ + return json($this->getReturn(-1, "云端订单编号不存在")); + } + + } + + //获取待支付订单列表 + public function getPendingOrders() + { + $key = Db::name("setting")->where("vkey", "key")->find(); + $key = $key ? $key['vvalue'] : ""; + $t = input("t"); + $sign = input("sign"); + $type = input("type"); + + if (!$t || !$sign) { + return json($this->getReturn(-1, "请传入时间戳和签名")); + } + + $_sign = md5($t . $key); + if ($_sign != $sign) { + return json($this->getReturn(-1, "签名校验不通过")); + } + + $query = Db::name("pay_order") + ->where("state", 0) + ->order("create_date desc") + ->limit(50); + + if ($type !== null && $type !== '') { + $query->where("type", intval($type)); + } + + $rows = $query->select(); + $data = array(); + foreach ($rows as $row) { + $data[] = array( + "payId" => $row['pay_id'], + "orderId" => $row['order_id'], + "param" => $row['param'], + "payType" => intval($row['type']), + "price" => floatval($row['price']), + "reallyPrice" => floatval($row['really_price']), + "state" => intval($row['state']), + "timeOut" => intval((Db::name("setting")->where("vkey", "close")->find())['vvalue']), + "date" => intval($row['create_date']) + ); + } + + return json($this->getReturn(1, "成功", $data)); + } + //关闭订单 + public function closeOrder(){ + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + $orderId = input("orderId"); + + $_sign = $orderId.$key; + + if (md5($_sign)!=input("sign")){ + return json($this->getReturn(-1, "签名校验不通过")); + } + + $res = Db::name("pay_order")->where("order_id",$orderId)->find(); + + if ($res){ + if ($res['state']!=0){ + return json($this->getReturn(-1, "订单状态不允许关闭")); + } + Db::name("pay_order")->where("order_id",$orderId)->update(array("state"=>-1,"close_date"=>time())); + Db::name("tmp_price") + ->where("oid",$res['order_id']) + ->delete(); + return json($this->getReturn(1, "成功")); + }else{ + return json($this->getReturn(-1, "云端订单编号不存在")); + + } + + } + //获取监控端状态 + public function getState(){ + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + $t = input("t"); + + $_sign = $t.$key; + + if (md5($_sign)!=input("sign")){ + return json($this->getReturn(-1, "签名校验不通过")); + } + + $res = Db::name("setting")->where("vkey","lastheart")->find(); + $lastheart = $res['vvalue']; + $res = Db::name("setting")->where("vkey","lastpay")->find(); + $lastpay = $res['vvalue']; + $res = Db::name("setting")->where("vkey","jkstate")->find(); + $jkstate = $res['vvalue']; + + return json($this->getReturn(1, "成功",array("lastheart"=>$lastheart,"lastpay"=>$lastpay,"jkstate"=>$jkstate))); + + } + + //App心跳接口 + public function appHeart(){ + $this->closeEndOrder(); + + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + $t = input("t"); + + $_sign = $t.$key; + + if (md5($_sign)!=input("sign")){ + return json($this->getReturn(-1, "签名校验不通过")); + } + +// $jg = time()*1000 - $t; +// if ($jg>50000 || $jg<-50000){ +// return json($this->getReturn(-1, "客户端时间错误")); +// } + + Db::name("setting")->where("vkey","lastheart")->update(array("vvalue"=>time())); + Db::name("setting")->where("vkey","jkstate")->update(array("vvalue"=>1)); + return json($this->getReturn()); + } + //App推送付款数据接口 + public function appPush(){ + $this->closeEndOrder(); + + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + $t = input("t"); + $type = input("type"); + $price = input("price"); + + $_sign = $type.$price.$t.$key; + + if (md5($_sign)!=input("sign")){ + return json($this->getReturn(-1, "签名校验不通过")); + } + +// $jg = time()*1000 - $t; +// if ($jg>50000 || $jg<-50000){ +// return json($this->getReturn(-1, "客户端时间错误")); +// } + + Db::name("setting") + ->where("vkey","lastpay") + ->update( + array( + "vvalue"=>time() + ) + ); + + $res = Db::name("pay_order") + ->where("really_price",$price) + ->where("state",0) + ->where("type",$type) + ->find(); + + + + if ($res){ + + Db::name("tmp_price") + ->where("oid",$res['order_id']) + ->delete(); + + Db::name("pay_order")->where("id",$res['id'])->update(array("state"=>1,"pay_date"=>time(),"close_date"=>time())); + + $url = $res['notify_url']; + + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + + $p = "payId=".$res['pay_id']."¶m=".$res['param']."&type=".$res['type']."&price=".$res['price']."&reallyPrice=".$res['really_price']; + + $sign = $res['pay_id'].$res['param'].$res['type'].$res['price'].$res['really_price'].$key; + $p = $p . "&sign=".md5($sign); + + if (strpos($url,"?")===false){ + $url = $url."?".$p; + }else{ + $url = $url."&".$p; + } + + + $re = $this->getCurl($url); + if ($re=="success"){ + return json($this->getReturn()); + }else{ + Db::name("pay_order")->where("id",$res['id'])->update(array("state"=>2)); + + return json($this->getReturn(-1,"异步通知失败")); + } + + + }else{ + $data = array( + "close_date" => 0, + "create_date" => time(), + "is_auto" => 0, + "notify_url" => "", + "order_id" => "无订单转账", + "param" => "无订单转账", + "pay_date" => 0, + "pay_id" => "无订单转账", + "pay_url" => "", + "price" => $price, + "really_price" => $price, + "return_url" => "", + "state" => 1, + "type" => $type + + ); + + Db::name("pay_order")->insert($data); + return json($this->getReturn()); + + } + + + } + + //App按订单推送付款数据接口 + public function appPushOrder(){ + $this->closeEndOrder(); + + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + $orderId = input("orderId"); + $tradeNo = input("tradeNo"); + $t = input("t"); + + if (!$orderId || !$t) { + return json($this->getReturn(-1, "参数不完整")); + } + + $_sign = $orderId.$tradeNo.$t.$key; + if (md5($_sign)!=input("sign")){ + return json($this->getReturn(-1, "签名校验不通过")); + } + + Db::name("setting") + ->where("vkey","lastpay") + ->update(array( + "vvalue"=>time() + )); + + $res = Db::name("pay_order")->where("order_id",$orderId)->find(); + if (!$res){ + return json($this->getReturn(-1, "云端订单编号不存在")); + } + + if ($res['state']==1){ + return json($this->getReturn(1, "订单已完成")); + } + + if ($res['state']!=0){ + return json($this->getReturn(-1, "订单状态不允许推送")); + } + + Db::name("tmp_price") + ->where("oid",$res['order_id']) + ->delete(); + + Db::name("pay_order")->where("id",$res['id'])->update(array("state"=>1,"pay_date"=>time(),"close_date"=>time())); + + $notifyResult = $this->notifyOrder($res); + if ($notifyResult === "success"){ + return json($this->getReturn(1, "成功")); + }else{ + Db::name("pay_order")->where("id",$res['id'])->update(array("state"=>2)); + return json($this->getReturn(-1,"异步通知失败",$notifyResult)); + } + } + + + //关闭过期订单接口(请用定时器至少1分钟调用一次) + public function closeEndOrder(){ + $res = Db::name("setting")->where("vkey","lastheart")->find(); + $lastheart = $res['vvalue']; + if ((time()-$lastheart)>60){ + Db::name("setting")->where("vkey","jkstate")->update(array("vvalue"=>0)); + } + + + + $time = Db::name("setting")->where("vkey", "close")->find(); + + $closeTime = time()-60*$time['vvalue']; + $close_date = time(); + + $res = Db::name("pay_order") + ->where("create_date <=".$closeTime) + ->where("state",0) + ->update(array("state"=>-1,"close_date"=>$close_date)); + + if ($res){ + $rows = Db::name("pay_order")->where("close_date",$close_date)->select(); + foreach ($rows as $row){ + Db::name("tmp_price") + ->where("oid",$row['order_id']) + ->delete(); + } + + $rows = Db::name("tmp_price")->select(); + foreach ($rows as $row){ + $re = Db::name("pay_order")->where("order_id",$row['oid'])->find(); + if ($re){ + + }else{ + Db::name("tmp_price") + ->where("oid",$row['oid']) + ->delete(); + } + } + + + return json($this->getReturn(1,"成功清理".$res."条订单")); + }else{ + return json($this->getReturn(1,"没有等待清理的订单")); + } + + + + } + + + //发送Http请求 + private function getCurl($url, $post = 0, $cookie = 0, $header = 0, $nobaody = 0) + { + $ch = curl_init(); + curl_setopt($ch, CURLOPT_URL, $url); + curl_setopt($ch, CURLOPT_TIMEOUT, 15); + curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); + $klsf[] = 'Accept:*/*'; + $klsf[] = 'Accept-Language:zh-cn'; + //$klsf[] = 'Content-Type:application/json'; + $klsf[] = 'User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 11_2_1 like Mac OS X) AppleWebKit/604.4.7 (KHTML, like Gecko) Mobile/15C153 MicroMessenger/6.6.1 NetType/WIFI Language/zh_CN'; + $klsf[] = 'Referer:'.$url; + curl_setopt($ch, CURLOPT_HTTPHEADER, $klsf); + if ($post) { + curl_setopt($ch, CURLOPT_POST, 1); + curl_setopt($ch, CURLOPT_POSTFIELDS, $post); + } + if ($header) { + curl_setopt($ch, CURLOPT_HEADER, true); + } + if ($cookie) { + curl_setopt($ch, CURLOPT_COOKIE, $cookie); + } + if ($nobaody) { + curl_setopt($ch, CURLOPT_NOBODY, 1); + } + curl_setopt($ch, CURLOPT_TIMEOUT,60); + curl_setopt($ch, CURLOPT_ENCODING, 'gzip'); + curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); + $ret = curl_exec($ch); + curl_close($ch); + return $ret; + } + + private function notifyOrder($res) + { + $url = $res['notify_url']; + + $res2 = Db::name("setting")->where("vkey","key")->find(); + $key = $res2['vvalue']; + + $p = "payId=".$res['pay_id']."¶m=".$res['param']."&type=".$res['type']."&price=".$res['price']."&reallyPrice=".$res['really_price']; + + $sign = $res['pay_id'].$res['param'].$res['type'].$res['price'].$res['really_price'].$key; + $p = $p . "&sign=".md5($sign); + + if (strpos($url,"?")===false){ + $url = $url."?".$p; + }else{ + $url = $url."&".$p; + } + + return $this->getCurl($url); + } + +} diff --git a/vmq-customization-pack/README.md b/vmq-customization-pack/README.md new file mode 100644 index 0000000..31390ea --- /dev/null +++ b/vmq-customization-pack/README.md @@ -0,0 +1,178 @@ +# V免签微信协议改造说明 + +这个目录用于给其他用户复用本次 V免签 服务端改造。 + +## 目录说明 + +- `route.php` + V免签路由文件改造后的完整版本。 +- `Index.php` + `application/index/controller/Index.php` 改造后的完整版本。 + +## 本次改造解决了什么 + +原版 V免签 更适合传统监控端通过金额回调 `appPush` 完成订单。 +这次改造的目标是让一个独立的微信协议监听客户端可以: + +1. 从 V免签 服务端拉取当前未支付订单 +2. 在本地监听到微信到账后,按 `orderId` 精确回推指定订单 +3. 继续复用 V免签 原本的异步通知逻辑通知商户站点 + +这样就避免了以下问题: + +- 只按金额匹配,多个同金额订单时容易串单 +- 监听端找不到待支付订单时,错误地把微信交易号直接当作 `payId` 去回调 +- 服务端根域名被误请求,返回首页 HTML 而不是订单处理结果 + +## 服务端新增接口 + +### 1. `getPendingOrders` + +用途: +给客户端拉取当前待支付订单列表。 + +请求方式: +`GET` 或 `POST` + +参数: + +- `t` + 当前时间戳 +- `sign` + 签名,算法:`md5(t + 通讯密钥)` +- `type` + 支付类型,微信传 `1`,支付宝传 `2` + +返回: +返回 `state=0` 的待支付订单列表,包含: + +- `payId` +- `orderId` +- `param` +- `payType` +- `price` +- `reallyPrice` +- `state` +- `timeOut` +- `date` + +### 2. `appPushOrder` + +用途: +客户端本地匹配到具体订单后,通知 V免签 将指定订单置为已支付。 + +请求方式: +`GET` 或 `POST` + +参数: + +- `orderId` + 云端订单号 +- `tradeNo` + 微信侧交易号 +- `t` + 当前时间戳 +- `sign` + 签名,算法:`md5(orderId + tradeNo + t + 通讯密钥)` + +处理流程: + +1. 校验签名 +2. 查询对应 `orderId` +3. 订单状态必须为 `0` +4. 更新订单为已支付 +5. 调用原有商户异步通知 +6. 成功返回 JSON,失败则把订单状态更新为 `2` + +## 需要修改的原项目文件 + +如果你自己的 V免签 项目结构和原版一致,只需要替换: + +- `route/route.php` +- `application/index/controller/Index.php` + +建议替换前先备份原文件。 + +## 部署步骤 + +1. 备份线上原文件 +2. 用本目录中的 `route.php` 覆盖线上 `route/route.php` +3. 用本目录中的 `Index.php` 覆盖线上 `application/index/controller/Index.php` +4. 确认线上缓存已刷新 +5. 重新测试客户端与 V免签 的联动 + +## 验证方法 + +### 验证 1:拉取待支付订单 + +先在 V免签 后台或发卡程序创建一笔新的微信订单,确保订单未过期。 + +然后请求: + +```text +https://你的域名/getPendingOrders?t=当前时间戳&sign=md5(t+通讯密钥)&type=1 +``` + +如果成功,应该返回 JSON,`data` 中能看到待支付微信订单。 + +### 验证 2:按订单推送成功 + +当客户端匹配到订单后,应请求: + +```text +https://你的域名/appPushOrder?orderId=云端订单号&tradeNo=微信交易号&t=当前时间戳&sign=md5(orderId+tradeNo+t+通讯密钥) +``` + +成功时应返回类似: + +```json +{"code":1,"msg":"成功","data":null} +``` + +## 与原版的关键差异 + +### 原版 `appPush` + +原版只按下面三个条件查单: + +- `really_price` +- `state=0` +- `type` + +这种方式在同金额并发订单下容易误匹配。 + +### 改造后的 `appPushOrder` + +改造后由客户端先拉待支付订单,再在本地完成: + +- 金额匹配 +- 时间范围过滤 +- 精确得到 `orderId` + +最后再回推给服务端,服务端按 `orderId` 精确处理,不再依赖“金额即订单”。 + +## 适用场景 + +适用于以下场景: + +- 自己有独立的微信监听客户端 +- 不希望直接改发卡系统创建订单逻辑 +- 想保留 V免签 现有订单表、商户通知和后台逻辑 +- 想把“支付监听”和“订单完成”拆成两段处理 + +## 注意事项 + +1. `getPendingOrders` 只会返回未过期且 `state=0` 的订单 +2. 如果客户端一直拉到 `0` 条订单,先检查订单是否已经过期 +3. 如果客户端监听到了微信收款,但没匹配到订单,不应该再回调根域名 +4. 商户异步通知仍然依赖原表中的 `notify_url` +5. 如果你在服务端做了二次开发,替换前先比对自定义逻辑 + +## 推荐客户端配合逻辑 + +为了避免刷历史收款记录,客户端建议再做两件事: + +1. 启动协议监听时忽略历史账单,只处理启动后的新收款 +2. 正常轮询成功时不要持续打印日志,只在状态变化、检测到收款或异常时打印 + +这样用户体验会更好,也更容易排查问题。 diff --git a/vmq-customization-pack/route.php b/vmq-customization-pack/route.php new file mode 100644 index 0000000..3d659c0 --- /dev/null +++ b/vmq-customization-pack/route.php @@ -0,0 +1,37 @@ + +// +---------------------------------------------------------------------- + +Route::get('think', function () { + return 'hello,ThinkPHP5!'; +}); + +Route::any('login','index/index/login'); +Route::any('getMenu','index/index/getMenu'); +Route::any('enQrcode','admin/index/enQrcode'); +Route::any('createOrder','index/index/createOrder'); + + +Route::any('getOrder','index/index/getOrder'); +Route::any('checkOrder','index/index/checkOrder'); +Route::any('getPendingOrders','index/index/getPendingOrders'); +Route::any('getState','index/index/getState'); + +Route::any('appHeart','index/index/appHeart'); +Route::any('appPush','index/index/appPush'); +Route::any('appPushOrder','index/index/appPushOrder'); + + +Route::any('closeEndOrder','index/index/closeEndOrder'); + + +return [ + +];