using System;
using System.Collections.Generic;
using System.Linq;

namespace PushPlatform.Data.Criteria
{
    public partial class CriteriaWechatMsgmodel
    {
        
        public CriteriaWechatMsgmodel()
        {
            TableName="WechatMsgmodel";
            OrderList = new List<string>();
            PageIndex = 1;
            PageSize = 20;
            UsePage = true;
            UserWhere = false;
        }
        
        #region Criteria Property
        public string TableName { get; set; }
        
        public IList<string> OrderList { get; set; }
        
        public int PageIndex { get; set; }
        
        public int PageSize { get; set; }
        
        public int PageTotal { get; set; }
        
        public bool UsePage { get; set; }
        
        public bool UseOr { get; set; }
        
        public bool UserWhere { get; set; }
        
        public string Where { get; set; }
        
        public bool IsAsc { get; set; }
        
        public object WhereValue { get; set; }
        
        #endregion
    
        #region Criteria Field
        
        
        public const string CriteriaField = "Id";
        
        
        
        public const string FieldId = "Id";
        public const string MapId = "Id";
        public const string FieldProjectid = "Projectid";
        public const string MapProjectid = "ProjectId";
        public const string FieldSendCfgId = "SendCfgId";
        public const string MapSendCfgId = "Send_Cfg_Id";
        public const string FieldTempleteId = "TempleteId";
        public const string MapTempleteId = "Templete_Id";
        public const string FieldTitle = "Title";
        public const string MapTitle = "Title";
        public const string FieldOriginalid = "Originalid";
        public const string MapOriginalid = "OriginalId";
        public const string FieldContentTemp = "ContentTemp";
        public const string MapContentTemp = "Content_Temp";
        public const string FieldCreateUser = "CreateUser";
        public const string MapCreateUser = "Create_User";
        public const string FieldCreateTime = "CreateTime";
        public const string MapCreateTime = "Create_Time";
        public const string FieldUpdateUser = "UpdateUser";
        public const string MapUpdateUser = "Update_User";
        public const string FieldUpdateTime = "UpdateTime";
        public const string MapUpdateTime = "Update_Time";
        public const string FieldIsDeleted = "IsDeleted";
        public const string MapIsDeleted = "Is_Deleted";
        public const string FieldTimestamp = "Timestamp";
        public const string MapTimestamp = "Timestamp";
        
        
        
        #endregion
        
        #region Criteria Auto Property
        
        public System.String LikeAll { get; set; }
        
        public System.String LikeId { get; set; }
        List<System.String> _InId;
        public List<System.String> InId
        {
            get
            {
                if (_InId == null) { _InId = new List<System.String>(); }
                return _InId;
            }
        }
        List<System.String> _NotId;
        public List<System.String> NotId
        {
            get
            {
                if (_NotId == null) { _NotId = new List<System.String>(); }
                return _NotId;
            }
        }
        List<System.String> _OrEqId;
        public List<System.String> OrEqId
        {
            get
            {
                if (_OrEqId == null) { _OrEqId = new List<System.String>(); }
                return _OrEqId;
            }
        }
        List<System.String> _OrLikeId;
        public List<System.String> OrLikeId
        {
            get
            {
                if (_OrLikeId == null) { _OrLikeId = new List<System.String>(); }
                return _OrLikeId;
            }
        }
        public System.String EqId { get; set; }
        public System.String NeId { get; set; }
        public System.String EqIgId { get; set; }
        public System.String LeId { get; set; }
        public System.String GeId { get; set; }
        public System.String LtId { get; set; }
        public System.String GtId { get; set; }
        public bool  NullId { get; set; }
        public bool  NotNullId { get; set; }
        public System.String LikeProjectid { get; set; }
        List<System.String> _InProjectid;
        public List<System.String> InProjectid
        {
            get
            {
                if (_InProjectid == null) { _InProjectid = new List<System.String>(); }
                return _InProjectid;
            }
        }
        List<System.String> _NotProjectid;
        public List<System.String> NotProjectid
        {
            get
            {
                if (_NotProjectid == null) { _NotProjectid = new List<System.String>(); }
                return _NotProjectid;
            }
        }
        List<System.String> _OrEqProjectid;
        public List<System.String> OrEqProjectid
        {
            get
            {
                if (_OrEqProjectid == null) { _OrEqProjectid = new List<System.String>(); }
                return _OrEqProjectid;
            }
        }
        List<System.String> _OrLikeProjectid;
        public List<System.String> OrLikeProjectid
        {
            get
            {
                if (_OrLikeProjectid == null) { _OrLikeProjectid = new List<System.String>(); }
                return _OrLikeProjectid;
            }
        }
        public System.String EqProjectid { get; set; }
        public System.String NeProjectid { get; set; }
        public System.String EqIgProjectid { get; set; }
        public System.String LeProjectid { get; set; }
        public System.String GeProjectid { get; set; }
        public System.String LtProjectid { get; set; }
        public System.String GtProjectid { get; set; }
        public bool  NullProjectid { get; set; }
        public bool  NotNullProjectid { get; set; }
        public System.String LikeSendCfgId { get; set; }
        List<System.String> _InSendCfgId;
        public List<System.String> InSendCfgId
        {
            get
            {
                if (_InSendCfgId == null) { _InSendCfgId = new List<System.String>(); }
                return _InSendCfgId;
            }
        }
        List<System.String> _NotSendCfgId;
        public List<System.String> NotSendCfgId
        {
            get
            {
                if (_NotSendCfgId == null) { _NotSendCfgId = new List<System.String>(); }
                return _NotSendCfgId;
            }
        }
        List<System.String> _OrEqSendCfgId;
        public List<System.String> OrEqSendCfgId
        {
            get
            {
                if (_OrEqSendCfgId == null) { _OrEqSendCfgId = new List<System.String>(); }
                return _OrEqSendCfgId;
            }
        }
        List<System.String> _OrLikeSendCfgId;
        public List<System.String> OrLikeSendCfgId
        {
            get
            {
                if (_OrLikeSendCfgId == null) { _OrLikeSendCfgId = new List<System.String>(); }
                return _OrLikeSendCfgId;
            }
        }
        public System.String EqSendCfgId { get; set; }
        public System.String NeSendCfgId { get; set; }
        public System.String EqIgSendCfgId { get; set; }
        public System.String LeSendCfgId { get; set; }
        public System.String GeSendCfgId { get; set; }
        public System.String LtSendCfgId { get; set; }
        public System.String GtSendCfgId { get; set; }
        public bool  NullSendCfgId { get; set; }
        public bool  NotNullSendCfgId { get; set; }
        public System.String LikeTempleteId { get; set; }
        List<System.String> _InTempleteId;
        public List<System.String> InTempleteId
        {
            get
            {
                if (_InTempleteId == null) { _InTempleteId = new List<System.String>(); }
                return _InTempleteId;
            }
        }
        List<System.String> _NotTempleteId;
        public List<System.String> NotTempleteId
        {
            get
            {
                if (_NotTempleteId == null) { _NotTempleteId = new List<System.String>(); }
                return _NotTempleteId;
            }
        }
        List<System.String> _OrEqTempleteId;
        public List<System.String> OrEqTempleteId
        {
            get
            {
                if (_OrEqTempleteId == null) { _OrEqTempleteId = new List<System.String>(); }
                return _OrEqTempleteId;
            }
        }
        List<System.String> _OrLikeTempleteId;
        public List<System.String> OrLikeTempleteId
        {
            get
            {
                if (_OrLikeTempleteId == null) { _OrLikeTempleteId = new List<System.String>(); }
                return _OrLikeTempleteId;
            }
        }
        public System.String EqTempleteId { get; set; }
        public System.String NeTempleteId { get; set; }
        public System.String EqIgTempleteId { get; set; }
        public System.String LeTempleteId { get; set; }
        public System.String GeTempleteId { get; set; }
        public System.String LtTempleteId { get; set; }
        public System.String GtTempleteId { get; set; }
        public bool  NullTempleteId { get; set; }
        public bool  NotNullTempleteId { get; set; }
        public System.String LikeTitle { get; set; }
        List<System.String> _InTitle;
        public List<System.String> InTitle
        {
            get
            {
                if (_InTitle == null) { _InTitle = new List<System.String>(); }
                return _InTitle;
            }
        }
        List<System.String> _NotTitle;
        public List<System.String> NotTitle
        {
            get
            {
                if (_NotTitle == null) { _NotTitle = new List<System.String>(); }
                return _NotTitle;
            }
        }
        List<System.String> _OrEqTitle;
        public List<System.String> OrEqTitle
        {
            get
            {
                if (_OrEqTitle == null) { _OrEqTitle = new List<System.String>(); }
                return _OrEqTitle;
            }
        }
        List<System.String> _OrLikeTitle;
        public List<System.String> OrLikeTitle
        {
            get
            {
                if (_OrLikeTitle == null) { _OrLikeTitle = new List<System.String>(); }
                return _OrLikeTitle;
            }
        }
        public System.String EqTitle { get; set; }
        public System.String NeTitle { get; set; }
        public System.String EqIgTitle { get; set; }
        public System.String LeTitle { get; set; }
        public System.String GeTitle { get; set; }
        public System.String LtTitle { get; set; }
        public System.String GtTitle { get; set; }
        public bool  NullTitle { get; set; }
        public bool  NotNullTitle { get; set; }
        public System.String LikeOriginalid { get; set; }
        List<System.String> _InOriginalid;
        public List<System.String> InOriginalid
        {
            get
            {
                if (_InOriginalid == null) { _InOriginalid = new List<System.String>(); }
                return _InOriginalid;
            }
        }
        List<System.String> _NotOriginalid;
        public List<System.String> NotOriginalid
        {
            get
            {
                if (_NotOriginalid == null) { _NotOriginalid = new List<System.String>(); }
                return _NotOriginalid;
            }
        }
        List<System.String> _OrEqOriginalid;
        public List<System.String> OrEqOriginalid
        {
            get
            {
                if (_OrEqOriginalid == null) { _OrEqOriginalid = new List<System.String>(); }
                return _OrEqOriginalid;
            }
        }
        List<System.String> _OrLikeOriginalid;
        public List<System.String> OrLikeOriginalid
        {
            get
            {
                if (_OrLikeOriginalid == null) { _OrLikeOriginalid = new List<System.String>(); }
                return _OrLikeOriginalid;
            }
        }
        public System.String EqOriginalid { get; set; }
        public System.String NeOriginalid { get; set; }
        public System.String EqIgOriginalid { get; set; }
        public System.String LeOriginalid { get; set; }
        public System.String GeOriginalid { get; set; }
        public System.String LtOriginalid { get; set; }
        public System.String GtOriginalid { get; set; }
        public bool  NullOriginalid { get; set; }
        public bool  NotNullOriginalid { get; set; }
        public System.String LikeContentTemp { get; set; }
        List<System.String> _InContentTemp;
        public List<System.String> InContentTemp
        {
            get
            {
                if (_InContentTemp == null) { _InContentTemp = new List<System.String>(); }
                return _InContentTemp;
            }
        }
        List<System.String> _NotContentTemp;
        public List<System.String> NotContentTemp
        {
            get
            {
                if (_NotContentTemp == null) { _NotContentTemp = new List<System.String>(); }
                return _NotContentTemp;
            }
        }
        List<System.String> _OrEqContentTemp;
        public List<System.String> OrEqContentTemp
        {
            get
            {
                if (_OrEqContentTemp == null) { _OrEqContentTemp = new List<System.String>(); }
                return _OrEqContentTemp;
            }
        }
        List<System.String> _OrLikeContentTemp;
        public List<System.String> OrLikeContentTemp
        {
            get
            {
                if (_OrLikeContentTemp == null) { _OrLikeContentTemp = new List<System.String>(); }
                return _OrLikeContentTemp;
            }
        }
        public System.String EqContentTemp { get; set; }
        public System.String NeContentTemp { get; set; }
        public System.String EqIgContentTemp { get; set; }
        public System.String LeContentTemp { get; set; }
        public System.String GeContentTemp { get; set; }
        public System.String LtContentTemp { get; set; }
        public System.String GtContentTemp { get; set; }
        public bool  NullContentTemp { get; set; }
        public bool  NotNullContentTemp { get; set; }
        public System.String LikeCreateUser { get; set; }
        List<System.String> _InCreateUser;
        public List<System.String> InCreateUser
        {
            get
            {
                if (_InCreateUser == null) { _InCreateUser = new List<System.String>(); }
                return _InCreateUser;
            }
        }
        List<System.String> _NotCreateUser;
        public List<System.String> NotCreateUser
        {
            get
            {
                if (_NotCreateUser == null) { _NotCreateUser = new List<System.String>(); }
                return _NotCreateUser;
            }
        }
        List<System.String> _OrEqCreateUser;
        public List<System.String> OrEqCreateUser
        {
            get
            {
                if (_OrEqCreateUser == null) { _OrEqCreateUser = new List<System.String>(); }
                return _OrEqCreateUser;
            }
        }
        List<System.String> _OrLikeCreateUser;
        public List<System.String> OrLikeCreateUser
        {
            get
            {
                if (_OrLikeCreateUser == null) { _OrLikeCreateUser = new List<System.String>(); }
                return _OrLikeCreateUser;
            }
        }
        public System.String EqCreateUser { get; set; }
        public System.String NeCreateUser { get; set; }
        public System.String EqIgCreateUser { get; set; }
        public System.String LeCreateUser { get; set; }
        public System.String GeCreateUser { get; set; }
        public System.String LtCreateUser { get; set; }
        public System.String GtCreateUser { get; set; }
        public bool  NullCreateUser { get; set; }
        public bool  NotNullCreateUser { get; set; }
        public System.DateTime? EqCreateTime { get; set; }
        public System.DateTime? NeCreateTime { get; set; }
        public System.DateTime? EqIgCreateTime { get; set; }
        public System.DateTime? LeCreateTime { get; set; }
        public System.DateTime? GeCreateTime { get; set; }
        public System.DateTime? LtCreateTime { get; set; }
        public System.DateTime? GtCreateTime { get; set; }
        public bool  NullCreateTime { get; set; }
        public bool  NotNullCreateTime { get; set; }
        public System.String LikeUpdateUser { get; set; }
        List<System.String> _InUpdateUser;
        public List<System.String> InUpdateUser
        {
            get
            {
                if (_InUpdateUser == null) { _InUpdateUser = new List<System.String>(); }
                return _InUpdateUser;
            }
        }
        List<System.String> _NotUpdateUser;
        public List<System.String> NotUpdateUser
        {
            get
            {
                if (_NotUpdateUser == null) { _NotUpdateUser = new List<System.String>(); }
                return _NotUpdateUser;
            }
        }
        List<System.String> _OrEqUpdateUser;
        public List<System.String> OrEqUpdateUser
        {
            get
            {
                if (_OrEqUpdateUser == null) { _OrEqUpdateUser = new List<System.String>(); }
                return _OrEqUpdateUser;
            }
        }
        List<System.String> _OrLikeUpdateUser;
        public List<System.String> OrLikeUpdateUser
        {
            get
            {
                if (_OrLikeUpdateUser == null) { _OrLikeUpdateUser = new List<System.String>(); }
                return _OrLikeUpdateUser;
            }
        }
        public System.String EqUpdateUser { get; set; }
        public System.String NeUpdateUser { get; set; }
        public System.String EqIgUpdateUser { get; set; }
        public System.String LeUpdateUser { get; set; }
        public System.String GeUpdateUser { get; set; }
        public System.String LtUpdateUser { get; set; }
        public System.String GtUpdateUser { get; set; }
        public bool  NullUpdateUser { get; set; }
        public bool  NotNullUpdateUser { get; set; }
        public System.DateTime? EqUpdateTime { get; set; }
        public System.DateTime? NeUpdateTime { get; set; }
        public System.DateTime? EqIgUpdateTime { get; set; }
        public System.DateTime? LeUpdateTime { get; set; }
        public System.DateTime? GeUpdateTime { get; set; }
        public System.DateTime? LtUpdateTime { get; set; }
        public System.DateTime? GtUpdateTime { get; set; }
        public bool  NullUpdateTime { get; set; }
        public bool  NotNullUpdateTime { get; set; }
        public System.SByte? EqIsDeleted { get; set; }
        public System.SByte? NeIsDeleted { get; set; }
        public System.SByte? EqIgIsDeleted { get; set; }
        public System.SByte? LeIsDeleted { get; set; }
        public System.SByte? GeIsDeleted { get; set; }
        public System.SByte? LtIsDeleted { get; set; }
        public System.SByte? GtIsDeleted { get; set; }
        public bool  NullIsDeleted { get; set; }
        public bool  NotNullIsDeleted { get; set; }
        public System.Int64? EqTimestamp { get; set; }
        public System.Int64? NeTimestamp { get; set; }
        public System.Int64? EqIgTimestamp { get; set; }
        public System.Int64? LeTimestamp { get; set; }
        public System.Int64? GeTimestamp { get; set; }
        public System.Int64? LtTimestamp { get; set; }
        public System.Int64? GtTimestamp { get; set; }
        public bool  NullTimestamp { get; set; }
        public bool  NotNullTimestamp { get; set; }
        
        
        
        #endregion
        
        
        #region Criteria Method
        
        public void AddOrder(string order)
        {
            this.AddOrder(order,false);
        }
        
        public void AddOrder(string order, bool isAsc)
        {
            if(isAsc)
            {
                this.OrderList.Add(order);
                IsAsc=true;
            }
            else
            {
                this.OrderList.Add(order);
                IsAsc=false;
            }
        }
        
        public void ClearOrder()
        {
            this.OrderList.Clear();
        }
        
        public void RemoveOrder(string order)
        {
            if(this.OrderList.Contains(order+",0"))
                this.OrderList.Remove(order+",0");
            if(this.OrderList.Contains(order+",1"))
                this.OrderList.Remove(order+",1");
        }
        
        #endregion
       
    }
}
