From 696ee06cab75e21acfb69c04295093beb613d160 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=94=A6=E9=BA=9F=20=E7=8E=8B?= Date: Thu, 5 Mar 2026 11:24:27 +0800 Subject: [PATCH] =?UTF-8?q?BugFix=20=E6=97=A0=E6=B3=95=E6=AD=A3=E5=B8=B8?= =?UTF-8?q?=E8=AF=B7=E6=B1=82OA=E6=8E=A5=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../Modules/TradeModule/TradeOAService.cs | 33 ++++++++----------- YLErpWeb/appsettings.dev.json | 8 ++--- 2 files changed, 18 insertions(+), 23 deletions(-) diff --git a/YLErpDAL/Modules/TradeModule/TradeOAService.cs b/YLErpDAL/Modules/TradeModule/TradeOAService.cs index 37d86d24..669fb837 100644 --- a/YLErpDAL/Modules/TradeModule/TradeOAService.cs +++ b/YLErpDAL/Modules/TradeModule/TradeOAService.cs @@ -116,6 +116,7 @@ namespace YLErp.Modules.TradeModule var systemToken = oaConfigSection["SystemToken"]; var systemName = oaConfigSection["SystemName"]; var isNextFlow = oaConfigSection["IsNextFlow"] ?? "0"; + var flowId = oaConfigSection["FlowId"]; if (string.IsNullOrEmpty(baseUrl)) { @@ -183,30 +184,24 @@ namespace YLErp.Modules.TradeModule contractSignDate = DateTime.Now.ToString("yyyyMMdd"), signIntegrityAgreement = "无需签订", contractBackground = $"我司与{trade.ClientName}已完成NAFMII协议签署,并开展TRS交易:{contractCode},参与标的{trade.UnderlyingCode} {trade.UnderlyingName},参与标的数量面额{trade.OriginalStockEqvNotional}元人民币", - attachments = string.IsNullOrEmpty(attachmentBase64) ? null : new[] - { - new - { - fileName = attachmentFileName, - fileBytes = attachmentBase64 - } - } + //需要上传接口加附件 }; - // 构建OA请求参数 - var oaRequest = new - { - isnextflow = isNextFlow, - systemToken = systemToken, - systemName = systemName, - dataMap = JsonHelper.Serialize(dataMap) - }; + // 构建查询参数(不包含dataMap,dataMap放在请求体中) + // 注意:Java后端使用驼峰命名,参数名需与后端@RequestParam注解的名称一致 + var query = + $"flowId={Uri.EscapeDataString(flowId)}" + + $"&isNextFlow={Uri.EscapeDataString(isNextFlow ?? string.Empty)}" + + $"&systemToken={Uri.EscapeDataString(systemToken)}" + + $"&systemName={Uri.EscapeDataString(systemName ?? string.Empty)}"; - logger.Info($"国联OA接口参数: {JsonHelper.Serialize(oaRequest)}"); + var requestUrl = subUrl.Contains("?") ? $"{subUrl}&{query}" : $"{subUrl}?{query}"; + logger.Info($"国联OA接口URL: {requestUrl}"); - // 调用OA接口 (GET请求) + // 调用OA接口 (POST请求,dataMap放在请求体中) var httpClient = new HttpClientWrap(baseUrl); - var response = httpClient.PostJson(subUrl, oaRequest,null); + var response = httpClient.PostJson(requestUrl, dataMap, null); + logger.Info($"国联OA接口返回: {response}"); // 解析响应 diff --git a/YLErpWeb/appsettings.dev.json b/YLErpWeb/appsettings.dev.json index 760a2ea3..25774d4a 100644 --- a/YLErpWeb/appsettings.dev.json +++ b/YLErpWeb/appsettings.dev.json @@ -77,10 +77,10 @@ "oa_confg": { "BaseUrl": "http://10.52.130.11", "SubUrl": "/ZSZQ/fileDraft", - "SystemKey": "fF2U9HXs7dm6Hjz5X", //OA系统key - "ObjectClass": "ZSZQ_CWYSPJYQRSDZWF", //OA文件类别 - "Urgent": 1, //紧急程度,1一般 2紧急 3加急 - "Issend": 0 //流程是否自动发送,0不发送,1自动发送下一步 + "SystemToken": "fF2U9HXs7dm6Hjz5X", //OA系统key + "SystemName": "ZSZQ_CWYSPJYQRSDZWF", //OA文件类别 + "IsNextFlow": 0, //是否自动提交 默认0 + "FlowId": 723606 }, "GeneralSSO": { "enable": true, //是否启用通用SSO登录