public virtual void Modify(ref ValidationErrors errors, Apps.Models.SCV.PURCHASE.PURCHASE_ORDER_DETAIL_MODEL model, params string[] updateProperties)
        {
            Apps.Models.PURCHASE_ORDER_DETAIL entity = m_Rep.GetById(model.INTERNAL_PURCHASE_ORDER_LINE_NUM);
            if (entity == null)
            {
                errors.Add(Resource.Disable);
                return;
            }
            if (updateProperties.Count() <= 0)
            {
                entity.INTERNAL_PURCHASE_ORDER_LINE_NUM = model.INTERNAL_PURCHASE_ORDER_LINE_NUM;
                entity.INTERNAL_PURCHASE_ORDER_NUM      = model.INTERNAL_PURCHASE_ORDER_NUM;
                entity.PURCHASE_ORDER_ID = model.PURCHASE_ORDER_ID;
                entity.WAREHOUSE         = model.WAREHOUSE;
                entity.COMPANY           = model.COMPANY;
                entity.ITEM               = model.ITEM;
                entity.ITEM_DESC          = model.ITEM_DESC;
                entity.ITEM_CLASS         = model.ITEM_CLASS;
                entity.ATTRIBUTE_TRACK    = model.ATTRIBUTE_TRACK;
                entity.ATTRIBUTE_NUM      = model.ATTRIBUTE_NUM;
                entity.ATTRIBUTE1         = model.ATTRIBUTE1;
                entity.ATTRIBUTE2         = model.ATTRIBUTE2;
                entity.ATTRIBUTE3         = model.ATTRIBUTE3;
                entity.ATTRIBUTE4         = model.ATTRIBUTE4;
                entity.ATTRIBUTE5         = model.ATTRIBUTE5;
                entity.ATTRIBUTE6         = model.ATTRIBUTE6;
                entity.ATTRIBUTE7         = model.ATTRIBUTE7;
                entity.ATTRIBUTE8         = model.ATTRIBUTE8;
                entity.TOTAL_QTY          = model.TOTAL_QTY;
                entity.OPEN_QTY           = model.OPEN_QTY;
                entity.QUANTITY_UM        = model.QUANTITY_UM;
                entity.ERP_ORDER_ID       = model.ERP_ORDER_ID;
                entity.ERP_ORDER_LINE_NUM = model.ERP_ORDER_LINE_NUM;
                entity.USER_STAMP         = model.USER_STAMP;
                entity.DATE_TIME_STAMP    = model.DATE_TIME_STAMP;
                entity.INVENTORY_STS      = model.INVENTORY_STS;
            }
            else
            {
                Type type  = typeof(Apps.Models.SCV.PURCHASE.PURCHASE_ORDER_DETAIL_MODEL);
                Type typeE = typeof(Apps.Models.PURCHASE_ORDER_DETAIL);
                foreach (var item in updateProperties)
                {
                    System.Reflection.PropertyInfo pi  = type.GetProperty(item);
                    System.Reflection.PropertyInfo piE = typeE.GetProperty(item);
                    piE.SetValue(entity, pi.GetValue(model), null);
                }
            }


            m_Rep.Modify(entity, updateProperties);
        }
        public virtual Apps.Models.SCV.PURCHASE.PURCHASE_ORDER_DETAIL_MODEL GetById(string id)
        {
            Apps.Models.PURCHASE_ORDER_DETAIL entity = m_Rep.GetById(id);
            if (entity != null)
            {
                //PURCHASE_ORDER_DETAIL entity = m_Rep.GetById(id);
                Apps.Models.SCV.PURCHASE.PURCHASE_ORDER_DETAIL_MODEL model = new Apps.Models.SCV.PURCHASE.PURCHASE_ORDER_DETAIL_MODEL();
                model.INTERNAL_PURCHASE_ORDER_LINE_NUM = entity.INTERNAL_PURCHASE_ORDER_LINE_NUM;
                model.INTERNAL_PURCHASE_ORDER_NUM      = entity.INTERNAL_PURCHASE_ORDER_NUM;
                model.PURCHASE_ORDER_ID = entity.PURCHASE_ORDER_ID;
                model.WAREHOUSE         = entity.WAREHOUSE;
                model.COMPANY           = entity.COMPANY;
                model.ITEM               = entity.ITEM;
                model.ITEM_DESC          = entity.ITEM_DESC;
                model.ITEM_CLASS         = entity.ITEM_CLASS;
                model.ATTRIBUTE_TRACK    = entity.ATTRIBUTE_TRACK;
                model.ATTRIBUTE_NUM      = entity.ATTRIBUTE_NUM;
                model.ATTRIBUTE1         = entity.ATTRIBUTE1;
                model.ATTRIBUTE2         = entity.ATTRIBUTE2;
                model.ATTRIBUTE3         = entity.ATTRIBUTE3;
                model.ATTRIBUTE4         = entity.ATTRIBUTE4;
                model.ATTRIBUTE5         = entity.ATTRIBUTE5;
                model.ATTRIBUTE6         = entity.ATTRIBUTE6;
                model.ATTRIBUTE7         = entity.ATTRIBUTE7;
                model.ATTRIBUTE8         = entity.ATTRIBUTE8;
                model.TOTAL_QTY          = entity.TOTAL_QTY;
                model.OPEN_QTY           = entity.OPEN_QTY;
                model.QUANTITY_UM        = entity.QUANTITY_UM;
                model.ERP_ORDER_ID       = entity.ERP_ORDER_ID;
                model.ERP_ORDER_LINE_NUM = entity.ERP_ORDER_LINE_NUM;
                model.USER_STAMP         = entity.USER_STAMP;
                model.DATE_TIME_STAMP    = entity.DATE_TIME_STAMP;
                model.INVENTORY_STS      = entity.INVENTORY_STS;

                return(model);
            }
            else
            {
                return(null);
            }
        }
        public virtual void Create(ref ValidationErrors errors, Apps.Models.SCV.PURCHASE.PURCHASE_ORDER_DETAIL_MODEL model)
        {
            Apps.Models.PURCHASE_ORDER_DETAIL entity = m_Rep.GetById(model.INTERNAL_PURCHASE_ORDER_LINE_NUM);
            if (entity != null)
            {
                errors.Add(Resource.PrimaryRepeat);
                return;
            }
            entity = new Apps.Models.PURCHASE_ORDER_DETAIL();
            entity.INTERNAL_PURCHASE_ORDER_LINE_NUM = model.INTERNAL_PURCHASE_ORDER_LINE_NUM;
            entity.INTERNAL_PURCHASE_ORDER_NUM      = model.INTERNAL_PURCHASE_ORDER_NUM;
            entity.PURCHASE_ORDER_ID = model.PURCHASE_ORDER_ID;
            entity.WAREHOUSE         = model.WAREHOUSE;
            entity.COMPANY           = model.COMPANY;
            entity.ITEM               = model.ITEM;
            entity.ITEM_DESC          = model.ITEM_DESC;
            entity.ITEM_CLASS         = model.ITEM_CLASS;
            entity.ATTRIBUTE_TRACK    = model.ATTRIBUTE_TRACK;
            entity.ATTRIBUTE_NUM      = model.ATTRIBUTE_NUM;
            entity.ATTRIBUTE1         = model.ATTRIBUTE1;
            entity.ATTRIBUTE2         = model.ATTRIBUTE2;
            entity.ATTRIBUTE3         = model.ATTRIBUTE3;
            entity.ATTRIBUTE4         = model.ATTRIBUTE4;
            entity.ATTRIBUTE5         = model.ATTRIBUTE5;
            entity.ATTRIBUTE6         = model.ATTRIBUTE6;
            entity.ATTRIBUTE7         = model.ATTRIBUTE7;
            entity.ATTRIBUTE8         = model.ATTRIBUTE8;
            entity.TOTAL_QTY          = model.TOTAL_QTY;
            entity.OPEN_QTY           = model.OPEN_QTY;
            entity.QUANTITY_UM        = model.QUANTITY_UM;
            entity.ERP_ORDER_ID       = model.ERP_ORDER_ID;
            entity.ERP_ORDER_LINE_NUM = model.ERP_ORDER_LINE_NUM;
            entity.USER_STAMP         = model.USER_STAMP;
            entity.DATE_TIME_STAMP    = model.DATE_TIME_STAMP;
            entity.INVENTORY_STS      = model.INVENTORY_STS;

            m_Rep.Create(entity);
        }