This commit is contained in:
2025-12-19 17:15:52 +08:00
parent 8e3b06f929
commit 86b19c4662
3 changed files with 14 additions and 5 deletions

View File

@@ -37,7 +37,8 @@
<Reference Include="Kingdee.BOS.App">
<HintPath>..\Library\Kingdee.BOS.App.dll</HintPath>
</Reference>
<Reference Include="Kingdee.BOS.Contracts">
<Reference Include="Kingdee.BOS.Contracts, Version=7.2.877.3, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\Library\Kingdee.BOS.Contracts.dll</HintPath>
</Reference>
<Reference Include="Kingdee.BOS.Core">
@@ -70,6 +71,10 @@
<Reference Include="Kingdee.K3.Core">
<HintPath>..\Library\Kingdee.K3.Core.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=13.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\Library\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />

View File

@@ -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<bool>("IsConvertByScanCode", out IsConvertByScanCode);
if (IsConvertByScanCode)
{
this.Option.TryGetVariableValue<Dictionary<string, PushCustomParam>>("PushCustomParams", out PushCustomParams);
var pushCustomParamsString = string.Empty;
this.Option.TryGetVariableValue<string>("PushCustomParams", out pushCustomParamsString);
PushCustomParams = JsonConvert.DeserializeObject<Dictionary<string, PushCustomParam>>(pushCustomParamsString);
this.Option.TryGetVariableValue<string>("FBarRecordNo", out FBarRecordNo);
}
}

View File

@@ -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<string, PushCustomParam>();
var paramList = new Dictionary<string, PushCustomParam>();
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));
// 执行下推