Ejemplo n.º 1
0
        /// <summary>
        /// 查询所有记录
        /// </summary>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回实体记录集</returns>
        public static IList <EmailList> SelectListByAll(string dbkey = "", Where where = null, string order = "", string fieldList = "")
        {
            string cacheNameKey = "TH.Mailer.EmailListCache_SelectListByAll_{0}_{1}_{2}".FormatWith(where, order, fieldList);

            return(Cache2.Get <IList <EmailList> >(cacheNameKey, cacheSeconds, () => {
                IList <EmailList> list = new List <EmailList>();
                if (fieldList.IsNullEmpty())
                {
                    list = new SQL().Database(dbkey).From(EmailList._)
                           .Select(EmailList._EmailAddress)
                           .Select(EmailList._NickName)
                           .Select(EmailList._LastSendStatus)
                           .Select(EmailList._LastSendError)
                           .Select(EmailList._LastSendTime)
                           .Select(EmailList._LastSendSmtp)
                           .Select(EmailList._SendCount)
                           .Select(EmailList._CreateTime)
                           .Select(EmailList._ex0)
                           .Select(EmailList._ex1)
                           .Select(EmailList._ex2)
                           .Select(EmailList._ex3)
                           .Select(EmailList._ex4)
                           .Select(EmailList._ex5)
                           .Select(EmailList._ex6)
                           .Select(EmailList._ex7)
                           .Select(EmailList._ex8)
                           .Where(where).Order(order).ToList <EmailList>();
                }
                else
                {
                    list = new SQL().Database(dbkey).From(EmailList._).Select(fieldList).Where(where).Order(order).ToList <EmailList>();
                }
                return list;
            }));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 查询所有记录
        /// </summary>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回实体记录集</returns>
        public static IList <SmtpList> SelectListByAll(string dbkey = "", Where where = null, string order = "", string fieldList = "")
        {
            string cacheNameKey = "TH.Mailer.SmtpListCache_SelectListByAll_{0}_{1}_{2}".FormatWith(where, order, fieldList);

            return(Cache2.Get <IList <SmtpList> >(cacheNameKey, cacheSeconds, () => {
                IList <SmtpList> list = new List <SmtpList>();
                if (fieldList.IsNullEmpty())
                {
                    list = new SQL().Database(dbkey).From(SmtpList._)
                           .Select(SmtpList._SmtpServer)
                           .Select(SmtpList._SmtpPort)
                           .Select(SmtpList._UserName)
                           .Select(SmtpList._SPassword)
                           .Select(SmtpList._SSL)
                           .Select(SmtpList._Status)
                           .Select(SmtpList._Sends)
                           .Select(SmtpList._SendFails)
                           .Select(SmtpList._CreateTime)
                           .Where(where).Order(order).ToList <SmtpList>();
                }
                else
                {
                    list = new SQL().Database(dbkey).From(SmtpList._).Select(fieldList).Where(where).Order(order).ToList <SmtpList>();
                }
                return list;
            }));
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 邮件模版查询所有记录
        /// </summary>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回实体记录集</returns>
        public static IList <HtmlTemplate> SelectListByAll(string dbkey = "", Where where = null, string order = "", string fieldList = "")
        {
            string cacheNameKey = "TH.Mailer.HtmlTemplateCache_SelectListByAll_{0}_{1}_{2}".FormatWith(where, order, fieldList);

            return(Cache2.Get <IList <HtmlTemplate> >(cacheNameKey, cacheSeconds, () => {
                IList <HtmlTemplate> list = new List <HtmlTemplate>();
                if (fieldList.IsNullEmpty())
                {
                    list = new SQL().Database(dbkey).From(HtmlTemplate._)
                           .Select(HtmlTemplate._TemplateID)
                           .Select(HtmlTemplate._Subject)
                           .Select(HtmlTemplate._Body)
                           .Select(HtmlTemplate._ShowName)
                           .Select(HtmlTemplate._IsHTML)
                           .Select(HtmlTemplate._Status)
                           .Select(HtmlTemplate._CreateTime)
                           .Where(where).Order(order).ToList <HtmlTemplate>();
                }
                else
                {
                    list = new SQL().Database(dbkey).From(HtmlTemplate._).Select(fieldList).Where(where).Order(order).ToList <HtmlTemplate>();
                }
                return list;
            }));
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 按主键查询,返回数据的实体类
        /// </summary>
        /// <param name="emailAddress">发送的Email</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回单条记录的实体类</returns>
        public static EmailList SelectByID(string emailAddress, string dbkey = "", Where where = null)
        {
            string cacheNameKey = "TH.Mailer.EmailListCache_SelectByID_{0}".FormatWith(emailAddress + "_" + "_" + where);

            return(Cache2.Get <EmailList>(cacheNameKey, cacheSeconds, () => {
                EmailList obj = new SQL().Database(dbkey).From(EmailList._)
                                .Select(EmailList._EmailAddress)
                                .Select(EmailList._NickName)
                                .Select(EmailList._LastSendStatus)
                                .Select(EmailList._LastSendError)
                                .Select(EmailList._LastSendTime)
                                .Select(EmailList._LastSendSmtp)
                                .Select(EmailList._SendCount)
                                .Select(EmailList._CreateTime)
                                .Select(EmailList._ex0)
                                .Select(EmailList._ex1)
                                .Select(EmailList._ex2)
                                .Select(EmailList._ex3)
                                .Select(EmailList._ex4)
                                .Select(EmailList._ex5)
                                .Select(EmailList._ex6)
                                .Select(EmailList._ex7)
                                .Select(EmailList._ex8)
                                .Where(new Where()
                                       .AndP(EmailList._EmailAddress, emailAddress, Operator.Equal)
                                       ).Where(where).ToEntity <EmailList>();
                return obj;
            }));
        }
        /// <summary>
        /// 天翼连接设置按主键查询,返回数据的实体类
        /// </summary>
        /// <param name="tianYiID">天翼连接设置编号</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回单条记录的实体类</returns>
        public static TianYiSetting SelectByID(int tianYiID, string dbkey = "", Where where = null)
        {
            string cacheNameKey = "TH.Mailer.TianYiSettingCache_SelectByID_{0}".FormatWith(tianYiID + "_" + "_" + where);

            return(Cache2.Get <TianYiSetting>(cacheNameKey, cacheSeconds, () => {
                TianYiSetting obj = new SQL().Database(dbkey).From(TianYiSetting._)
                                    .Select(TianYiSetting._TianYiID)
                                    .Select(TianYiSetting._TianYiExePath)
                                    .Where(new Where()
                                           .AndP(TianYiSetting._TianYiID, tianYiID, Operator.Equal)
                                           ).Where(where).ToEntity <TianYiSetting>();
                return obj;
            }));
        }
Ejemplo n.º 6
0
        /// <summary>
        /// 拨号连接按主键查询,返回数据的实体类
        /// </summary>
        /// <param name="modelID">拨号连接编号</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回单条记录的实体类</returns>
        public static ModelSetting SelectByID(int modelID, string dbkey = "", Where where = null)
        {
            string cacheNameKey = "TH.Mailer.ModelSettingCache_SelectByID_{0}".FormatWith(modelID + "_" + "_" + where);

            return(Cache2.Get <ModelSetting>(cacheNameKey, cacheSeconds, () => {
                ModelSetting obj = new SQL().Database(dbkey).From(ModelSetting._)
                                   .Select(ModelSetting._ModelID)
                                   .Select(ModelSetting._ModelName)
                                   .Select(ModelSetting._UserName)
                                   .Select(ModelSetting._MPassword)
                                   .Where(new Where()
                                          .AndP(ModelSetting._ModelID, modelID, Operator.Equal)
                                          ).Where(where).ToEntity <ModelSetting>();
                return obj;
            }));
        }
Ejemplo n.º 7
0
        /// <summary>
        /// 查询数据,带分页
        /// </summary>
        /// <param name="pageIndex">当前第几页,从1开始</param>
        /// <param name="pageSize">每页记录数</param>
        /// <param name="totalRecords">返回总记录数</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <param name="pageEnum">使用哪种分页方式(not_in、max_top、top_top、row_number、mysql、oracle、sqlite)</param>
        /// <returns>返回实体记录集</returns>
        public static IList <SmtpList> SelectPageList(int pageIndex, int pageSize, out long totalRecords, string dbkey = "", Where where = null, string order = "", string fieldList = "", PagerSQLEnum pageEnum = PagerSQLEnum.sqlite)
        {
            string           cacheNameKey    = "TH.Mailer.SmtpListCache_SelectPageList_{0}_{1}_{2}_{3}_{4}".FormatWith(pageIndex, pageSize, where, order, fieldList);
            string           cacheRecordsKey = "TH.Mailer.SmtpListCache_RecordsSelectPageList_{0}_{1}_{2}_{3}_{4}".FormatWith(pageIndex, pageSize, where, order, fieldList);
            IList <SmtpList> list            = (IList <SmtpList>)Cache2.Get(cacheNameKey);

            if (!list.IsNull())
            {
                totalRecords = (int)Cache2.Get(cacheRecordsKey); return(list);
            }

            using (PagerSQLHelper s = new PagerSQLHelper(pageEnum)) {
                list = s.GetSQL(pageIndex, pageSize, SmtpList._, SmtpList._SmtpServer, fieldList.IfNullOrEmpty("[SmtpServer],[SmtpPort],[UserName],[SPassword],[SSL],[Status],[Sends],[SendFails],[CreateTime],"), where, "", order).ToList <SmtpList>(out totalRecords, dbkey);
            }
            Cache2.Insert(cacheNameKey, list, cacheSeconds);
            Cache2.Insert(cacheRecordsKey, totalRecords, cacheSeconds);
            return(list);
        }
Ejemplo n.º 8
0
        /// <summary>
        /// 查询数据,带分页
        /// </summary>
        /// <param name="pageIndex">当前第几页,从1开始</param>
        /// <param name="pageSize">每页记录数</param>
        /// <param name="totalRecords">返回总记录数</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <param name="pageEnum">使用哪种分页方式(not_in、max_top、top_top、row_number、mysql、oracle、sqlite)</param>
        /// <returns>返回实体记录集</returns>
        public static IList <IpHistory> SelectPageList(int pageIndex, int pageSize, out long totalRecords, string dbkey = "", Where where = null, string order = "", string fieldList = "", PagerSQLEnum pageEnum = PagerSQLEnum.sqlite)
        {
            string            cacheNameKey    = "TH.Mailer.IpHistoryCache_SelectPageList_{0}_{1}_{2}_{3}_{4}".FormatWith(pageIndex, pageSize, where, order, fieldList);
            string            cacheRecordsKey = "TH.Mailer.IpHistoryCache_RecordsSelectPageList_{0}_{1}_{2}_{3}_{4}".FormatWith(pageIndex, pageSize, where, order, fieldList);
            IList <IpHistory> list            = (IList <IpHistory>)Cache2.Get(cacheNameKey);

            if (!list.IsNull())
            {
                totalRecords = (int)Cache2.Get(cacheRecordsKey); return(list);
            }

            using (PagerSQLHelper s = new PagerSQLHelper(pageEnum)) {
                list = s.GetSQL(pageIndex, pageSize, IpHistory._, IpHistory._IP, fieldList.IfNullOrEmpty("[IP],[CreateTime],"), where, "", order).ToList <IpHistory>(out totalRecords, dbkey);
            }
            Cache2.Insert(cacheNameKey, list, cacheSeconds);
            Cache2.Insert(cacheRecordsKey, totalRecords, cacheSeconds);
            return(list);
        }
Ejemplo n.º 9
0
        /// <summary>
        /// 查询数据,带分页
        /// </summary>
        /// <param name="pageIndex">当前第几页,从1开始</param>
        /// <param name="pageSize">每页记录数</param>
        /// <param name="totalRecords">返回总记录数</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <param name="pageEnum">使用哪种分页方式(not_in、max_top、top_top、row_number、mysql、oracle、sqlite)</param>
        /// <returns>返回实体记录集</returns>
        public static IList <EmailList> SelectPageList(int pageIndex, int pageSize, out long totalRecords, string dbkey = "", Where where = null, string order = "", string fieldList = "", PagerSQLEnum pageEnum = PagerSQLEnum.sqlite)
        {
            string            cacheNameKey    = "TH.Mailer.EmailListCache_SelectPageList_{0}_{1}_{2}_{3}_{4}".FormatWith(pageIndex, pageSize, where, order, fieldList);
            string            cacheRecordsKey = "TH.Mailer.EmailListCache_RecordsSelectPageList_{0}_{1}_{2}_{3}_{4}".FormatWith(pageIndex, pageSize, where, order, fieldList);
            IList <EmailList> list            = (IList <EmailList>)Cache2.Get(cacheNameKey);

            if (!list.IsNull())
            {
                totalRecords = (int)Cache2.Get(cacheRecordsKey); return(list);
            }

            using (PagerSQLHelper s = new PagerSQLHelper(pageEnum)) {
                list = s.GetSQL(pageIndex, pageSize, EmailList._, EmailList._EmailAddress, fieldList.IfNullOrEmpty("[EmailAddress],[NickName],[LastSendStatus],[LastSendError],[LastSendTime],[LastSendSmtp],[SendCount],[CreateTime],[ex0],[ex1],[ex2],[ex3],[ex4],[ex5],[ex6],[ex7],[ex8],"), where, "", order).ToList <EmailList>(out totalRecords, dbkey);
            }
            Cache2.Insert(cacheNameKey, list, cacheSeconds);
            Cache2.Insert(cacheRecordsKey, totalRecords, cacheSeconds);
            return(list);
        }
Ejemplo n.º 10
0
        /// <summary>
        /// 路由按主键查询,返回数据的实体类
        /// </summary>
        /// <param name="routeID">路由编号</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回单条记录的实体类</returns>
        public static RouteSetting SelectByID(int routeID, string dbkey = "", Where where = null)
        {
            string cacheNameKey = "TH.Mailer.RouteSettingCache_SelectByID_{0}".FormatWith(routeID + "_" + "_" + where);

            return(Cache2.Get <RouteSetting>(cacheNameKey, cacheSeconds, () => {
                RouteSetting obj = new SQL().Database(dbkey).From(RouteSetting._)
                                   .Select(RouteSetting._RouteID)
                                   .Select(RouteSetting._RouteIP)
                                   .Select(RouteSetting._UserName)
                                   .Select(RouteSetting._RPassword)
                                   .Select(RouteSetting._RouteConnect)
                                   .Select(RouteSetting._RouteDisConnect)
                                   .Select(RouteSetting._RouteMethod)
                                   .Where(new Where()
                                          .AndP(RouteSetting._RouteID, routeID, Operator.Equal)
                                          ).Where(where).ToEntity <RouteSetting>();
                return obj;
            }));
        }
Ejemplo n.º 11
0
        /// <summary>
        /// 查询所有记录
        /// </summary>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回实体记录集</returns>
        public static IList <IpHistory> SelectListByAll(string dbkey = "", Where where = null, string order = "", string fieldList = "")
        {
            string cacheNameKey = "TH.Mailer.IpHistoryCache_SelectListByAll_{0}_{1}_{2}".FormatWith(where, order, fieldList);

            return(Cache2.Get <IList <IpHistory> >(cacheNameKey, cacheSeconds, () => {
                IList <IpHistory> list = new List <IpHistory>();
                if (fieldList.IsNullEmpty())
                {
                    list = new SQL().Database(dbkey).From(IpHistory._)
                           .Select(IpHistory._IP)
                           .Select(IpHistory._CreateTime)
                           .Where(where).Order(order).ToList <IpHistory>();
                }
                else
                {
                    list = new SQL().Database(dbkey).From(IpHistory._).Select(fieldList).Where(where).Order(order).ToList <IpHistory>();
                }
                return list;
            }));
        }
Ejemplo n.º 12
0
        /// <summary>
        /// 设置按主键查询,返回数据的实体类
        /// </summary>
        /// <param name="settingID">设置编号</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回单条记录的实体类</returns>
        public static SendSetting SelectByID(int settingID, string dbkey = "", Where where = null)
        {
            string cacheNameKey = "TH.Mailer.SendSettingCache_SelectByID_{0}".FormatWith(settingID + "_" + "_" + where);

            return(Cache2.Get <SendSetting>(cacheNameKey, cacheSeconds, () => {
                SendSetting obj = new SQL().Database(dbkey).From(SendSetting._)
                                  .Select(SendSetting._SettingID)
                                  .Select(SendSetting._TemplateID)
                                  .Select(SendSetting._ConnectType)
                                  .Select(SendSetting._SendInterval)
                                  .Select(SendSetting._IPInterval)
                                  .Select(SendSetting._SmtpInterval)
                                  .Select(SendSetting._DeleteInterval)
                                  .Select(SendSetting._MaxRetryCount)
                                  .Select(SendSetting._SendRetryCount)
                                  .Select(SendSetting._Status)
                                  .Where(new Where()
                                         .AndP(SendSetting._SettingID, settingID, Operator.Equal)
                                         ).Where(where).ToEntity <SendSetting>();
                return obj;
            }));
        }
Ejemplo n.º 13
0
        /// <summary>
        /// 按主键查询,返回数据的实体类
        /// </summary>
        /// <param name="smtpServer">SMTP服务器</param>
        /// <param name="smtpPort">SMTP端口</param>
        /// <param name="userName">登录用户名</param>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回单条记录的实体类</returns>
        public static SmtpList SelectByID(string smtpServer, int smtpPort, string userName, string dbkey = "", Where where = null)
        {
            string cacheNameKey = "TH.Mailer.SmtpListCache_SelectByID_{0}".FormatWith(smtpServer + "_" + smtpPort + "_" + userName + "_" + "_" + where);

            return(Cache2.Get <SmtpList>(cacheNameKey, cacheSeconds, () => {
                SmtpList obj = new SQL().Database(dbkey).From(SmtpList._)
                               .Select(SmtpList._SmtpServer)
                               .Select(SmtpList._SmtpPort)
                               .Select(SmtpList._UserName)
                               .Select(SmtpList._SPassword)
                               .Select(SmtpList._SSL)
                               .Select(SmtpList._Status)
                               .Select(SmtpList._Sends)
                               .Select(SmtpList._SendFails)
                               .Select(SmtpList._CreateTime)
                               .Where(new Where()
                                      .AndP(SmtpList._SmtpServer, smtpServer, Operator.Equal)
                                      .AndP(SmtpList._SmtpPort, smtpPort, Operator.Equal)
                                      .AndP(SmtpList._UserName, userName, Operator.Equal)
                                      ).Where(where).ToEntity <SmtpList>();
                return obj;
            }));
        }
Ejemplo n.º 14
0
        /// <summary>
        /// 获取IP配置查询所有记录
        /// </summary>
        /// <param name="where">附加条件,统一的前面要加链接符(and、or等等)</param>
        /// <param name="order">排序字段,不加“order by”</param>
        /// <param name="fieldList">设置需要返回的字段</param>
        /// <param name="dbkey">存在数据库连接池中的连接key,为空时随机取连接key</param>
        /// <returns>返回实体记录集</returns>
        public static IList <IpSetting> SelectListByAll(string dbkey = "", Where where = null, string order = "", string fieldList = "")
        {
            string cacheNameKey = "TH.Mailer.IpSettingCache_SelectListByAll_{0}_{1}_{2}".FormatWith(where, order, fieldList);

            return(Cache2.Get <IList <IpSetting> >(cacheNameKey, cacheSeconds, () => {
                IList <IpSetting> list = new List <IpSetting>();
                if (fieldList.IsNullEmpty())
                {
                    list = new SQL().Database(dbkey).From(IpSetting._)
                           .Select(IpSetting._IPCID)
                           .Select(IpSetting._WebName)
                           .Select(IpSetting._IPUrl)
                           .Select(IpSetting._IPRegex)
                           .Select(IpSetting._DataEncode)
                           .Where(where).Order(order).ToList <IpSetting>();
                }
                else
                {
                    list = new SQL().Database(dbkey).From(IpSetting._).Select(fieldList).Where(where).Order(order).ToList <IpSetting>();
                }
                return list;
            }));
        }