This commit is contained in:
PastSaid
2024-05-15 13:56:09 +08:00
parent 16fbd10312
commit 0a17c23e54
43 changed files with 1299 additions and 309 deletions

View File

@@ -89,6 +89,7 @@
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="PRD_MO\BillEventPlugInEx.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
@@ -117,5 +118,11 @@
<Compile Include="SAL_SaleOrder\AdvanceShipmentNotification.cs" />
<Compile Include="STK_InvAgeAnalyzeRpt\InvAgeAnalyzeOverrideEx.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\01.扩展\Extensions\ExtensionMethods.csproj">
<Project>{beae0bf6-7ab9-4af5-83ce-d08e3c6880ef}</Project>
<Name>ExtensionMethods</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@@ -0,0 +1,55 @@
using ExtensionMethods;
using Kingdee.BOS.Core.DynamicForm.PlugIn;
using Kingdee.BOS.Core.DynamicForm.PlugIn.Args;
using Kingdee.BOS.Core.Metadata.FieldElement;
using Kingdee.BOS.Orm.DataEntity;
using Kingdee.BOS.Util;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
namespace HUIWEI.PRD_MO
{
[Description("测试"), HotUpdate]
public class BillEventPlugInEx : AbstractDynamicFormPlugIn
{
private bool isNewData = false;
public override void BarItemClick(BarItemClickEventArgs e)
{
base.BarItemClick(e);
if (e.BarItemKey.Equals("tbSNew") || e.BarItemKey.Equals("tbNew"))
{
var openParameter = this.View.OpenParameter;
var customerParams = openParameter.GetCustomParameters();
var parameterData = this.View.Model.ParameterData;
var billTypeField = this.View.BillBusinessInfo.GetBillTypeField();
var infos = billTypeField.BillTypeInfo;
var info = (parameterData["BillTypeEntity"] as DynamicObjectCollection).FirstOrDefault(x => Convert.ToBoolean(x[4]));
if (info != null)
{
SetBillTypeDefValue(billTypeField, info[5].ToString());
}
}
}
/// <summary>
/// 设置单据类型默认值
/// </summary>
/// <param name="billTypeField"></param>
/// <param name="defBillTypeId"></param>
private void SetBillTypeDefValue(BillTypeField billTypeField, string defBillTypeId)
{
if (billTypeField != null && !string.IsNullOrWhiteSpace(defBillTypeId))
{
var billTypeObj = this.Model.LoadReferenceData(billTypeField.RefFormDynamicObjectType, defBillTypeId);
billTypeField.RefIDDynamicProperty.SetValue(this.Model.DataObject, defBillTypeId);
billTypeField.DynamicProperty.SetValue(this.Model.DataObject, billTypeObj);
}
}
}
}