diff --git a/Gatedge.NewOrientLandMark.BOS/Gatedge.NewOrientLandMark.BOS.csproj b/Gatedge.NewOrientLandMark.BOS/Gatedge.NewOrientLandMark.BOS.csproj index 3021064..f8e95b2 100644 --- a/Gatedge.NewOrientLandMark.BOS/Gatedge.NewOrientLandMark.BOS.csproj +++ b/Gatedge.NewOrientLandMark.BOS/Gatedge.NewOrientLandMark.BOS.csproj @@ -37,7 +37,8 @@ ..\Library\Kingdee.BOS.App.dll - + + False ..\Library\Kingdee.BOS.Contracts.dll @@ -70,6 +71,10 @@ ..\Library\Kingdee.K3.Core.dll + + False + ..\Library\Newtonsoft.Json.dll + diff --git a/Gatedge.NewOrientLandMark.BOS/PlugIn/PUR_PurchaseOrder/ConvertPlugIn/ToStkInStock.cs b/Gatedge.NewOrientLandMark.BOS/PlugIn/PUR_PurchaseOrder/ConvertPlugIn/ToStkInStock.cs index be79d21..e9a3088 100644 --- a/Gatedge.NewOrientLandMark.BOS/PlugIn/PUR_PurchaseOrder/ConvertPlugIn/ToStkInStock.cs +++ b/Gatedge.NewOrientLandMark.BOS/PlugIn/PUR_PurchaseOrder/ConvertPlugIn/ToStkInStock.cs @@ -14,6 +14,7 @@ using Kingdee.BOS.Log; using Kingdee.BOS.Orm.DataEntity; using Kingdee.BOS.ServiceHelper; using Kingdee.BOS.Util; +using Newtonsoft.Json; namespace Gatedge.NewOrientLandMark.BOS.PlugIn.PUR_PurchaseOrder.ConvertPlugIn { @@ -39,7 +40,9 @@ namespace Gatedge.NewOrientLandMark.BOS.PlugIn.PUR_PurchaseOrder.ConvertPlugIn this.Option.TryGetVariableValue("IsConvertByScanCode", out IsConvertByScanCode); if (IsConvertByScanCode) { - this.Option.TryGetVariableValue>("PushCustomParams", out PushCustomParams); + var pushCustomParamsString = string.Empty; + this.Option.TryGetVariableValue("PushCustomParams", out pushCustomParamsString); + PushCustomParams = JsonConvert.DeserializeObject>(pushCustomParamsString); this.Option.TryGetVariableValue("FBarRecordNo", out FBarRecordNo); } } diff --git a/Gatedge.ScanCode/Services/PurchaseOrderService.cs b/Gatedge.ScanCode/Services/PurchaseOrderService.cs index 39e156a..37888b0 100644 --- a/Gatedge.ScanCode/Services/PurchaseOrderService.cs +++ b/Gatedge.ScanCode/Services/PurchaseOrderService.cs @@ -6,6 +6,7 @@ using Gatedge.ScanCode.Models.K3Request.SaveModel; using Gatedge.ScanCode.Models.Vo; using Gatedge.ScanCode.Services.IServices; using Microsoft.IdentityModel.Tokens; +using Newtonsoft.Json; namespace Gatedge.ScanCode.Services { @@ -89,7 +90,7 @@ namespace Gatedge.ScanCode.Services billPush.TargetFormId = _TargetFormId; // 目标单据类型:采购入库单 billPush.IsEnableDefaultRule = false; // 不启用默认规则 billPush.IsDraftWhenSaveFail = false; // 保存失败,不自动暂存 - var Params = new Dictionary(); + var paramList = new Dictionary(); foreach (var item in barEntityList) { var pushCustomParams = new PushCustomParam() @@ -101,9 +102,9 @@ namespace Gatedge.ScanCode.Services FLot_Id = item.FLot_Id ?? 0, // 批号Id FLot_Text = item.FLot_Text ?? string.Empty // 批号文本 }; - Params.Add(item.FSrcEntryId ?? "0", pushCustomParams); + paramList.Add(item.FSrcEntryId ?? "0", pushCustomParams); } - billPush.CustomParams.Add("PushCustomParams", Params); + billPush.CustomParams.Add("PushCustomParams", JsonConvert.SerializeObject(paramList)); // 执行下推