/// <summary> /// 添加一次操作 /// </summary> /// <param name="p_ActionAttribute"></param> /// <returns></returns> public int Add(ActionAttribute p_ActionAttribute) { int ci = base.Add(p_ActionAttribute); m_Builder.AppendLine(string.Format("{0}. {1}", ci, p_ActionAttribute.ToLog())); return(base.Add(p_ActionAttribute)); }
public override void Rec_Create(ActionAttribute p_attr) { _QuantityUnitComponentInfo m_info = p_attr.Source as _QuantityUnitComponentInfo; _QuantityUnitComponentInfo p_info = p_attr.TagValue as _QuantityUnitComponentInfo; if (m_info != null) { if (this.Activitie.Property.RepeatInfo(m_info)) { if (this.Parent.QuantityUnitComponentList.GetCount(m_info) == 0) { int index = 0; if (p_info != null) { index = this.Parent.QuantityUnitComponentList.IndexOf(p_info); } this.Parent.QuantityUnitComponentList.Add(index, m_info); //引发计算 this.Parent.Parent.Subheadings_Statistics.Begin(); //刷新数据 this.Parent.QuantityUnitComponentList_BindingSource.ResetBindings(false); //对象设置为创建中状态 this.Activitie.BeginEdit(this); } } } }
public override void Rec_Replace(ActionAttribute p_attr) { _SubheadingsQuantityUnitInfo m_info = p_attr.Source as _SubheadingsQuantityUnitInfo; _SubheadingsQuantityUnitInfo p_info = p_attr.TagValue as _SubheadingsQuantityUnitInfo; if (m_info != null && p_info != null) { if (this.Activitie.Property.RepeatInfo(m_info)) { if ((this.Parent.SubheadingsQuantityUnitList.GetCount(m_info) == 0 || p_info.BH == m_info.BH)) { int index = this.Parent.SubheadingsQuantityUnitList.IndexOf(p_info); this.Parent.SubheadingsQuantityUnitList.Remove(p_info); this.Parent.SubheadingsQuantityUnitList.Add(index, m_info, false); foreach (_QuantityUnitComponentInfo item in m_info.QuantityUnitComponentList) { m_info.QuantityUnitComponentList.AddGLJHZ(item); } //引发计算 this.Parent.Subheadings_Statistics.Begin(); //刷新数据 this.Parent.SubheadingsQuantityUnitList_BindingSource.ResetBindings(false); //对象设置为创建中状态 this.Activitie.BeginEdit(this); } } } }
public override void Rec_Delete(ActionAttribute p_attr) { _QuantityUnitComponentInfo m_info = p_attr.Source as _QuantityUnitComponentInfo; if (m_info != null) { this.Parent.QuantityUnitComponentList.Remove(m_info, true); //引发计算 this.Parent.Parent.Subheadings_Statistics.Begin(); //刷新数据 this.Parent.QuantityUnitComponentList_BindingSource.ResetBindings(false); //对象设置为创建中状态 this.Activitie.BeginEdit(this); } }
/// <summary> /// 开始编辑当前工料机对象 /// </summary> /*public virtual void BeginModify() * { * //通知当前对象改变 * * }*/ /// <summary> /// 结束编辑当前工料机对象 /// </summary> /*public virtual void EndModify() * { * //通知当前对象改变 * }*/ /// <summary> /// 设置上下级对象状态 /// </summary> /// <param name="p_EObjectState"></param> /*public virtual void SetModify(EObjectState p_EObjectState, EDirection p_EDirection) * { * * * }*/ /// <summary> /// 指定方法被调用需要记录的时候 /// </summary> /// <param name="MethodName">方法名</param> /// <param name="p_OtherName">别名</param> public virtual void ActionAttribute(string MethodName, string p_OtherName, object p_Source, object p_TagValue) { ///Create方法此处收集 //if (UseAttribute == EObjectState.Appending) { //找到指定方法操作属性 ActionAttribute myAttribute = Command.GetMethodAttribute(this, MethodName, p_OtherName); if (myAttribute != null) { myAttribute.ObjectName = (p_Source as _ObjectInfo).XMMC; myAttribute.Source = p_Source; myAttribute.TagValue = p_TagValue; this.OnModelActioin(this, myAttribute); } } }
/// <summary> /// 指定动作属性 /// </summary> /// <param name="MethodName">方法名称</param> /// <param name="p_OtherName">别名</param> public override void ActionAttribute(string MethodName, string p_OtherName, object p_Source, object p_TagValue) { //if (UseAttribute == EObjectState.Appending) { //找到指定方法操作属性 ActionAttribute myAttribute = Command.GetMethodAttribute(this, MethodName, p_OtherName); if (myAttribute != null) { myAttribute.ObjectName = (p_Source as _ObjectQuantityUnitInfo).MC; myAttribute.ActingOn = "清单.子目.工料机.组成"; myAttribute.Source = p_Source; myAttribute.TagValue = p_TagValue; this.OnModelActioin(this, myAttribute); } } }
/// <summary> /// 根据ModfyAttrBute还原原始值 /// </summary> /// <param name="p_Attr"></param> public static void ActionObject(ActionAttribute p_Attr) { //可能为清单 子目 工料机 组成 _BaseObject bo = p_Attr.Source as _BaseObject; switch (p_Attr.CommandName) { case Command.Create: bo.Rec_Create(p_Attr); break; case Command.Delete: bo.Rec_Delete(p_Attr); break; case Command.Replace: bo.Rec_Replace(p_Attr); break; } }
/// <summary> /// 为还原数据准备的替换方法 /// </summary> /// <param name="p_attr"></param> public virtual void Rec_Replace(ActionAttribute p_attr) { }
/// <summary> /// 为还原数据准备的替换方法 /// </summary> /// <param name="p_attr"></param> public virtual void Rec_Delete(ActionAttribute p_attr) { }
/// <summary> /// 为还原数据准备的增加方法 /// </summary> /// <param name="p_attr"></param> public virtual void Rec_Create(ActionAttribute p_attr) { }