Exemplo n.º 1
0
        /// <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));
        }
Exemplo n.º 2
0
        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);
                    }
                }
            }
        }
Exemplo n.º 4
0
        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);
            }
        }
Exemplo n.º 5
0
        /// <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);
         }
     }
 }
Exemplo n.º 7
0
        /// <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;
            }
        }
Exemplo n.º 8
0
 /// <summary>
 /// 为还原数据准备的替换方法
 /// </summary>
 /// <param name="p_attr"></param>
 public virtual void Rec_Replace(ActionAttribute p_attr)
 {
 }
Exemplo n.º 9
0
 /// <summary>
 /// 为还原数据准备的替换方法
 /// </summary>
 /// <param name="p_attr"></param>
 public virtual void Rec_Delete(ActionAttribute p_attr)
 {
 }
Exemplo n.º 10
0
 /// <summary>
 /// 为还原数据准备的增加方法
 /// </summary>
 /// <param name="p_attr"></param>
 public virtual void Rec_Create(ActionAttribute p_attr)
 {
 }