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());
}
}
}
///
/// 设置单据类型默认值
///
///
///
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);
}
}
}
}