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); } } } }