From eeb0bde36ec0f018358ceb1713c7b52515601368 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=94=A6=E9=BA=9F=20=E7=8E=8B?= Date: Thu, 23 Apr 2026 15:27:28 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A1=AE=E8=AE=A4=E4=B9=A6=E4=B8=8A=E4=BC=A0?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E5=8C=BA=E5=88=86=E5=AF=B9=E6=96=B9=E7=94=A8?= =?UTF-8?q?=E5=8D=B0=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ConfirmationGenerateService.cs | 5 ++--- .../Controllers/TradeConfirmBookController.cs | 4 ++++ YLErpWeb/Controllers/tradeController.cs | 13 ++++++++++--- .../TradeConfirmBook/confirmBookUploadNew.cshtml | 9 ++++++++- .../Scripts/app/trade/tradeConfirmBook.js | 16 +++++++++++++++- 5 files changed, 39 insertions(+), 8 deletions(-) diff --git a/YLErpDAL/Modules/TradeModule/DocGenerateModule/ConfirmationGenerateService.cs b/YLErpDAL/Modules/TradeModule/DocGenerateModule/ConfirmationGenerateService.cs index 6b97713a..c7a4e306 100644 --- a/YLErpDAL/Modules/TradeModule/DocGenerateModule/ConfirmationGenerateService.cs +++ b/YLErpDAL/Modules/TradeModule/DocGenerateModule/ConfirmationGenerateService.cs @@ -801,7 +801,6 @@ namespace YLErp.Modules.TradeModule.DocGenerateModule #region 更新数据 contractDoc.Comments = fileDescription; - contractDoc.SourceType = 2; // 人工上传 if (OurpartySeal && CounterpartySeal) { contractDoc.Status = ContractStatusEnum.BothPartyStamped; } else if (OurpartySeal) { contractDoc.Status = ContractStatusEnum.OurPartyStamped; } @@ -843,7 +842,7 @@ namespace YLErp.Modules.TradeModule.DocGenerateModule } } - public (bool, string, DateTime, string) UploadContractFileNew(string contractCode, UploadFileModel uploadFileModel) + public (bool, string, DateTime, string) UploadContractFileNew(string contractCode, bool isCounterpartyDoc, UploadFileModel uploadFileModel) { try @@ -924,7 +923,7 @@ namespace YLErp.Modules.TradeModule.DocGenerateModule } #region 更新数据 - contractDoc.SourceType = 2; // 人工上传 + contractDoc.SourceType = isCounterpartyDoc ? 2 : 1; // 对方用印文件=人工上传,否则=系统生成 var confrimService = new TradeConfirmService(OptUser, db); foreach (var contractDocR in contractDocRArr) { diff --git a/YLErpWeb/Controllers/TradeConfirmBookController.cs b/YLErpWeb/Controllers/TradeConfirmBookController.cs index bd36f055..eace6701 100644 --- a/YLErpWeb/Controllers/TradeConfirmBookController.cs +++ b/YLErpWeb/Controllers/TradeConfirmBookController.cs @@ -174,12 +174,14 @@ namespace YLErp.Web.Controllers trade.MetaDic["send_email_result"] = tradeContractinfo.send_email_result; trade.MetaDic["ContractStatus"] = tradeContractinfo.tradeContractDoc.Status; trade.MetaDic["StampDocumentFileName"] = tradeContractinfo.tradeContractDoc.StampDocumentFileName; + trade.MetaDic["SourceType"] = tradeContractinfo.tradeContractDoc.SourceType?.ToString() ?? "1"; } else { trade.MetaDic["ContractEncryptId"] = ""; trade.MetaDic["ContractRId"] = tradeContractinfo.id.ToString(); trade.MetaDic["HasGeneratedConfirmBook"] = "False"; + trade.MetaDic["SourceType"] = ""; } } else @@ -255,12 +257,14 @@ namespace YLErp.Web.Controllers trade.MetaDic["send_email_result"] = tradeContractinfo.send_email_result; trade.MetaDic["ContractStatus"] = tradeContractinfo.tradeContractDoc.Status; trade.MetaDic["StampDocumentFileName"] = tradeContractinfo.tradeContractDoc.StampDocumentFileName; + trade.MetaDic["SourceType"] = tradeContractinfo.tradeContractDoc.SourceType?.ToString() ?? "1"; } else { trade.MetaDic["ContractEncryptId"] = ""; trade.MetaDic["ContractRId"] = tradeContractinfo.id.ToString(); trade.MetaDic["HasGeneratedConfirmBook"] = "False"; + trade.MetaDic["SourceType"] = ""; } } else diff --git a/YLErpWeb/Controllers/tradeController.cs b/YLErpWeb/Controllers/tradeController.cs index 01dfa593..4523200b 100644 --- a/YLErpWeb/Controllers/tradeController.cs +++ b/YLErpWeb/Controllers/tradeController.cs @@ -1,5 +1,6 @@ using iTextSharp.text; using iTextSharp.text.pdf; +using NPOI.POIFS.Crypt; using Qdp.Pricing.Base.Enums; using RazorEngineCore; using System.Data; @@ -2031,10 +2032,16 @@ namespace YLErp.Web.Controllers } return JsonError(msg); } - public ActionResult UploadContractFileNew(string contractCode) - { + public ActionResult UploadContractFileNew(string encryptId, bool isCounterpartyDoc = false) + { var uploadFileModel = Request.Form.Files.Count > 0 ? Request.Form.Files[0].ToUploadFileModel() : null; - var (flag, msg, optDate, stampPath) = new ConfirmationGenerateService(CurUser).UploadContractFileNew(contractCode, uploadFileModel); + var docId = DataProtectHelper.DecryptInt(encryptId); + var contractDoc = db.trade_contract_document.FirstOrDefault(o => o.id == docId); + if (contractDoc == null) + { + return JsonError("未找到确认书数据"); + } + var (flag, msg, optDate, stampPath) = new ConfirmationGenerateService(CurUser).UploadContractFileNew(contractDoc.Code, isCounterpartyDoc, uploadFileModel); if (flag) { diff --git a/YLErpWeb/Views/TradeConfirmBook/confirmBookUploadNew.cshtml b/YLErpWeb/Views/TradeConfirmBook/confirmBookUploadNew.cshtml index df9d2a90..b26d9917 100644 --- a/YLErpWeb/Views/TradeConfirmBook/confirmBookUploadNew.cshtml +++ b/YLErpWeb/Views/TradeConfirmBook/confirmBookUploadNew.cshtml @@ -41,7 +41,8 @@ for (var x = 0; x < files.length; x++) { data.append(files[x].name, files[x]); } - data.append("contractCode", encryptId); + data.append("encryptId", encryptId); + data.append("isCounterpartyDoc", $("#isCounterpartyDoc").is(':checked')); $.ajax({ type: "Post", @@ -73,6 +74,12 @@
+
+ +
+ +
+
diff --git a/YLErpWeb/wwwroot/Scripts/app/trade/tradeConfirmBook.js b/YLErpWeb/wwwroot/Scripts/app/trade/tradeConfirmBook.js index 7945f2b8..b7ccc5f4 100644 --- a/YLErpWeb/wwwroot/Scripts/app/trade/tradeConfirmBook.js +++ b/YLErpWeb/wwwroot/Scripts/app/trade/tradeConfirmBook.js @@ -287,6 +287,20 @@ const colModelGrid = (new function () { formatter: function (cellvalue, options, rowObject) { return rowObject.MetaDic.OAMessage || ''; } + }, { + name: 'SourceType', + label: '是否对方用印', + index: 'SourceType', + width: 100, + align: 'center', + sortable: false, + formatter: function (cellvalue, options, rowObject) { + var st = rowObject.MetaDic.SourceType; + if (st === '2') { + return '是'; + } + return '否'; + } } ]; @@ -1230,7 +1244,7 @@ function SendOAHub() { main.alert("请至少选择一笔交易"); return; } var req = { - tradeIds: ids, + ids: ids, } connection.invoke('StartProcessing', JSON.stringify(req)); main.waitMe(true);