public bool AddTipBannerDetailConfig(TipBannerConfigDetailModel model, string user)
        {
            var result = false;

            try
            {
                var pkid = dbScopeManagerConfig.Execute(conn => DalTipBannerConfig.AddTipBannerDetailConfig(conn, model));
                if (pkid > 0)
                {
                    result                   = true;
                    model.PKID               = pkid;
                    model.CreateDateTime     = DateTime.Now;
                    model.LastUpdateDateTime = DateTime.Now;
                    var log = new BaoYangOprLog
                    {
                        LogType     = "TipBannerDetailConfig",
                        IdentityID  = model.TypeName,
                        OldValue    = null,
                        NewValue    = JsonConvert.SerializeObject(model),
                        Remarks     = "Add",
                        OperateUser = user,
                    };
                    LoggerManager.InsertLog("BYOprLog", log);
                }
            }
            catch (Exception ex)
            {
                Logger.Error("AddTipBannerDetailConfig", ex);
            }
            return(result);
        }
        public bool UpdateTipBannerDetailConfig(TipBannerConfigDetailModel model, string user)
        {
            var result = false;

            try
            {
                var oldValue = dbScopeManagerConfigRead.Execute(conn => DalTipBannerConfig.GetTipBannerDetailConfigByPKID(conn, model.PKID));
                if (oldValue != null)
                {
                    result = dbScopeManagerConfig.Execute(conn => DalTipBannerConfig.UpdateTipBannerDetailConfig(conn, model));
                    if (result)
                    {
                        model.LastUpdateDateTime = DateTime.Now;
                        var log = new BaoYangOprLog
                        {
                            LogType     = "TipBannerDetailConfig",
                            IdentityID  = oldValue.TypeName,
                            OldValue    = JsonConvert.SerializeObject(oldValue),
                            NewValue    = JsonConvert.SerializeObject(model),
                            Remarks     = "Update",
                            OperateUser = user,
                        };
                        LoggerManager.InsertLog("BYOprLog", log);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error("UpdateTipBannerDetailConfig", ex);
            }
            return(result);
        }
        public bool DeleteTipBannerDetailConfigByPKID(int pkid, string user)
        {
            var result = false;

            try
            {
                var oldValue = dbScopeManagerConfigRead.Execute(conn => DalTipBannerConfig.GetTipBannerDetailConfigByPKID(conn, pkid));
                if (oldValue != null)
                {
                    result = dbScopeManagerConfig.Execute(conn => DalTipBannerConfig.DeleteTipBannerDetailConfigByPKID(conn, pkid));
                    if (result)
                    {
                        var log = new BaoYangOprLog
                        {
                            LogType     = "TipBannerDetailConfigByPKID",
                            IdentityID  = oldValue.TypeName,
                            OldValue    = JsonConvert.SerializeObject(oldValue),
                            NewValue    = null,
                            Remarks     = "Delete",
                            OperateUser = user,
                        };
                        LoggerManager.InsertLog("BYOprLog", log);
                    }
                }
            }
            catch (Exception ex)
            {
                Logger.Error("DeleteTipBannerDetailConfigByPKID", ex);
            }
            return(result);
        }
        public bool IsRepeatTipBannerTypeConfig(string typeName)
        {
            var isRepeat = false;

            try
            {
                isRepeat = dbScopeManagerConfigRead.Execute(conn => DalTipBannerConfig.IsRepeatTipBannerTypeConfig(conn, typeName));
            }
            catch (Exception ex)
            {
                Logger.Error("IsRepeatTipBannerTypeConfig", ex);
            }
            return(isRepeat);
        }
        public List <TipBannerTypeConfigModel> GetAllTipBannerTypeConfig()
        {
            List <TipBannerTypeConfigModel> result = null;

            try
            {
                result = dbScopeManagerConfigRead.Execute(conn => DalTipBannerConfig.GetAllTipBannerTypeConfig(conn));
            }
            catch (Exception ex)
            {
                Logger.Error("GetAllTipBannerTypeConfig", ex);
            }
            return(result ?? new List <TipBannerTypeConfigModel>());
        }
        public bool IsRepeatTipBannerDetailConfig(TipBannerConfigDetailModel model)
        {
            var isRepeat = false;

            try
            {
                isRepeat = dbScopeManagerConfigRead.Execute(conn => DalTipBannerConfig.IsRepeatTipBannerDetailConfig(conn, model));
            }
            catch (Exception ex)
            {
                Logger.Error("IsRepeatTipBannerDetailConfig", ex);
            }
            return(isRepeat);
        }
        public Tuple <List <TipBannerConfigDetailModel>, int> SelectTipBannerDetailConfig(int typeId, int pageIndex, int pageSize)
        {
            int totalCount = 0;
            List <TipBannerConfigDetailModel> tipBanners = null;

            try
            {
                tipBanners = dbScopeManagerConfigRead.Execute(conn =>
                                                              DalTipBannerConfig.SelectTipBannerDetailConfig(conn, typeId, pageIndex, pageSize, out totalCount));
            }
            catch (Exception ex)
            {
                Logger.Error("SelectTipBannerDetailConfig", ex);
            }
            return(new Tuple <List <TipBannerConfigDetailModel>, int>(tipBanners, totalCount));
        }
        public bool RefreshTipBannerConfigCache()
        {
            var result = false;

            try
            {
                var typeNames = dbScopeManagerConfigRead.Execute(
                    conn => DalTipBannerConfig.GetAllTipBannerTypeConfig(conn))
                                .Select(s => s.TypeName).ToList();
                using (var client = new Tuhu.Service.Config.CacheClient())
                {
                    var cacheResult = client.RefreshTipBannerConfigCache(typeNames);
                    cacheResult.ThrowIfException(true);
                    result = cacheResult.Result;
                }
            }
            catch (Exception ex)
            {
                Logger.Error("RefreshTipBannerConfigCache", ex);
            }
            return(result);
        }