Files
GateDge2023_ljy/03.珠海市汇威精密制造有限公司/HUIWEI/PRD_MO/BillEventPlugInEx.cs

56 lines
2.0 KiB
C#
Raw Normal View History

2024-05-15 13:56:09 +08:00
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);
}
}
}
}