From e7766ceef88fbecde03df23e6b3c0ee1f7653d64 Mon Sep 17 00:00:00 2001 From: shangzhongyuan Date: Thu, 5 Mar 2026 17:14:16 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=99=84=E4=BB=B6?= =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=93=8D=E5=BA=94=E5=A4=84=E7=90=86=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修改UploadAttachmentResponse的code字段类型为string以匹配实际接口返回 添加异常处理逻辑,增强附件上传失败时的错误处理和信息记录 --- YLErpDAL/Modules/TradeModule/OAModels.cs | 2 +- .../Modules/TradeModule/TradeOAService.cs | 34 ++++++++++++++----- 2 files changed, 26 insertions(+), 10 deletions(-) diff --git a/YLErpDAL/Modules/TradeModule/OAModels.cs b/YLErpDAL/Modules/TradeModule/OAModels.cs index ca9c68d9..ae51ccc7 100644 --- a/YLErpDAL/Modules/TradeModule/OAModels.cs +++ b/YLErpDAL/Modules/TradeModule/OAModels.cs @@ -48,7 +48,7 @@ namespace YLErp.Modules.TradeModule /// public class UploadAttachmentResponse { - public int code { get; set; } + public string code { get; set; } public List data { get; set; } public string status { get; set; } } diff --git a/YLErpDAL/Modules/TradeModule/TradeOAService.cs b/YLErpDAL/Modules/TradeModule/TradeOAService.cs index 90f6df0a..8f4a6536 100644 --- a/YLErpDAL/Modules/TradeModule/TradeOAService.cs +++ b/YLErpDAL/Modules/TradeModule/TradeOAService.cs @@ -147,18 +147,34 @@ namespace YLErp.Modules.TradeModule logger.Info($"附件上传接口返回: {responseContent}"); // 解析响应 - var uploadResponse = JsonHelper.Deserialize(responseContent); - if (uploadResponse.code == 0 && uploadResponse.data != null) + try { - // 提取annexId - var annexIds = uploadResponse.data.Select(item => item.annexId).ToList(); - logger.Info($"成功上传附件,获取到{annexIds.Count}个附件ID"); - return annexIds; + var uploadResponse = JsonHelper.Deserialize(responseContent); + if (uploadResponse != null) + { + if (uploadResponse.code == "0" && uploadResponse.data != null) + { + // 提取annexId + var annexIds = uploadResponse.data.Select(item => item.annexId).ToList(); + logger.Info($"成功上传附件,获取到{annexIds.Count}个附件ID"); + return annexIds; + } + else + { + logger.Error($"附件上传失败:{uploadResponse.status},code:{uploadResponse.code}"); + throw new Exception($"附件上传失败:{uploadResponse.status}"); + } + } + else + { + logger.Error("附件上传响应解析为空"); + throw new Exception("附件上传响应解析失败"); + } } - else + catch (Exception ex) { - logger.Error($"附件上传失败:{uploadResponse.status}"); - throw new Exception($"附件上传失败:{uploadResponse.status}"); + logger.Error($"解析附件上传响应失败:{ex.Message},响应内容:{responseContent}", ex); + throw new Exception($"解析附件上传响应失败:{ex.Message}"); } } }