public virtual Apps.Models.SCV.SHIPMENT.SHIPMENT_HISTORY_MODEL GetById(string id)
        {
            Apps.Models.SHIPMENT_HISTORY entity = m_Rep.GetById(id);
            if (entity != null)
            {
                //SHIPMENT_HISTORY entity = m_Rep.GetById(id);
                Apps.Models.SCV.SHIPMENT.SHIPMENT_HISTORY_MODEL model = new Apps.Models.SCV.SHIPMENT.SHIPMENT_HISTORY_MODEL();
                model.INTERNAL_NUM          = entity.INTERNAL_NUM;
                model.INTERNAL_SHIPMENT_NUM = entity.INTERNAL_SHIPMENT_NUM;
                model.SHIPMENT_ID           = entity.SHIPMENT_ID;
                model.WAREHOUSE             = entity.WAREHOUSE;
                model.COMPANY                = entity.COMPANY;
                model.LEADING_STS            = entity.LEADING_STS;
                model.TRAILING_STS           = entity.TRAILING_STS;
                model.USER_STAMP             = entity.USER_STAMP;
                model.DATE_TIME_STAMP        = entity.DATE_TIME_STAMP;
                model.UPLOAD_STATUS          = entity.UPLOAD_STATUS;
                model.UPLOAD_DATE_TIME_STAMP = entity.UPLOAD_DATE_TIME_STAMP;
                model.USER_DEF1              = entity.USER_DEF1;
                model.USER_DEF2              = entity.USER_DEF2;
                model.USER_DEF3              = entity.USER_DEF3;
                model.USER_DEF4              = entity.USER_DEF4;
                model.USER_DEF5              = entity.USER_DEF5;
                model.USER_DEF6              = entity.USER_DEF6;
                model.USER_DEF7              = entity.USER_DEF7;
                model.USER_DEF8              = entity.USER_DEF8;

                return(model);
            }
            else
            {
                return(null);
            }
        }
        public virtual void Create(ref ValidationErrors errors, Apps.Models.SCV.SHIPMENT.SHIPMENT_HISTORY_MODEL model)
        {
            Apps.Models.SHIPMENT_HISTORY entity = m_Rep.GetById(model.INTERNAL_NUM);
            if (entity != null)
            {
                errors.Add(Resource.PrimaryRepeat);
                return;
            }
            entity = new Apps.Models.SHIPMENT_HISTORY();
            entity.INTERNAL_NUM          = model.INTERNAL_NUM;
            entity.INTERNAL_SHIPMENT_NUM = model.INTERNAL_SHIPMENT_NUM;
            entity.SHIPMENT_ID           = model.SHIPMENT_ID;
            entity.WAREHOUSE             = model.WAREHOUSE;
            entity.COMPANY                = model.COMPANY;
            entity.LEADING_STS            = model.LEADING_STS;
            entity.TRAILING_STS           = model.TRAILING_STS;
            entity.USER_STAMP             = model.USER_STAMP;
            entity.DATE_TIME_STAMP        = model.DATE_TIME_STAMP;
            entity.UPLOAD_STATUS          = model.UPLOAD_STATUS;
            entity.UPLOAD_DATE_TIME_STAMP = model.UPLOAD_DATE_TIME_STAMP;
            entity.USER_DEF1              = model.USER_DEF1;
            entity.USER_DEF2              = model.USER_DEF2;
            entity.USER_DEF3              = model.USER_DEF3;
            entity.USER_DEF4              = model.USER_DEF4;
            entity.USER_DEF5              = model.USER_DEF5;
            entity.USER_DEF6              = model.USER_DEF6;
            entity.USER_DEF7              = model.USER_DEF7;
            entity.USER_DEF8              = model.USER_DEF8;

            m_Rep.Create(entity);
        }
        public virtual void Modify(ref ValidationErrors errors, Apps.Models.SCV.SHIPMENT.SHIPMENT_HISTORY_MODEL model, params string[] updateProperties)
        {
            Apps.Models.SHIPMENT_HISTORY entity = m_Rep.GetById(model.INTERNAL_NUM);
            if (entity == null)
            {
                errors.Add(Resource.Disable);
                return;
            }
            if (updateProperties.Count() <= 0)
            {
                entity.INTERNAL_NUM          = model.INTERNAL_NUM;
                entity.INTERNAL_SHIPMENT_NUM = model.INTERNAL_SHIPMENT_NUM;
                entity.SHIPMENT_ID           = model.SHIPMENT_ID;
                entity.WAREHOUSE             = model.WAREHOUSE;
                entity.COMPANY                = model.COMPANY;
                entity.LEADING_STS            = model.LEADING_STS;
                entity.TRAILING_STS           = model.TRAILING_STS;
                entity.USER_STAMP             = model.USER_STAMP;
                entity.DATE_TIME_STAMP        = model.DATE_TIME_STAMP;
                entity.UPLOAD_STATUS          = model.UPLOAD_STATUS;
                entity.UPLOAD_DATE_TIME_STAMP = model.UPLOAD_DATE_TIME_STAMP;
                entity.USER_DEF1              = model.USER_DEF1;
                entity.USER_DEF2              = model.USER_DEF2;
                entity.USER_DEF3              = model.USER_DEF3;
                entity.USER_DEF4              = model.USER_DEF4;
                entity.USER_DEF5              = model.USER_DEF5;
                entity.USER_DEF6              = model.USER_DEF6;
                entity.USER_DEF7              = model.USER_DEF7;
                entity.USER_DEF8              = model.USER_DEF8;
            }
            else
            {
                Type type  = typeof(Apps.Models.SCV.SHIPMENT.SHIPMENT_HISTORY_MODEL);
                Type typeE = typeof(Apps.Models.SHIPMENT_HISTORY);
                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);
        }