Example #1
0
 public async Task <List <DomainEntity> > GetDomainEntities(int page, int countPerPage, string accountId = "", DomainEntity delta = null)
 {
     //todo:增加筛选
     try
     {
         using (var context = new DjLiveCpContext())
         {
             var sql         = $@"SELECT * FROM sys_domain  
                          limit {(page - 1) * countPerPage},{countPerPage}";
             var paraObjects = new object[] { };
             if (!string.IsNullOrEmpty(accountId))
             {
                 sql         = $@"SELECT * FROM sys_domain where
                          AccountId = {"{0}"} limit {(page - 1) * countPerPage},{countPerPage}";
                 paraObjects = new object[] { accountId };
             }
             var objs = context.Database.SqlQuery <DomainEntity>(sql, paraObjects);
             return(await objs.ToListAsync());
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #2
0
        public async Task <DaoResultMessage> RemoveAccountById(string id)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var entity = context.Account.FirstOrDefault(obj => obj.Id == id);
                    if (entity != null)
                    {
                        context.Account.Remove(entity);
                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "删除成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "删除失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #3
0
 public async Task <int> GetServerNodesCount(string userId, ServerEntity entityDelta)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             var sql         = $@"SELECT Count(0) FROM sys_servernode";
             var paraObjects = new object[] { };
             if (!string.IsNullOrEmpty(userId))
             {
                 sql         = $@"SELECT Count(0) FROM sys_servernode as b 
                         join sys_alli_account_servernode as c 
                         on c.AccountId = {"{0}"} 
                         and b.Id = c.NodeId";
                 paraObjects = new object[] { userId };
             }
             var objs = context.Database.SqlQuery <int>(sql, paraObjects);
             return(await objs.FirstOrDefaultAsync());
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(0);
     }
 }
Example #4
0
        public async Task <List <DomainEntity> > GetServerDomainsById(string id)
        {
            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var serverEntity = await context.Server.Where(item => item.Id == id).FirstOrDefaultAsync();

                    if (serverEntity != null)
                    {
                        return(serverEntity.Domains.Select(item =>
                        {
                            var secure = item.SecurePolicy;
                            var record = item.RecordTemplate;
                            var transcode = item.TranscodeList;
                            return item;
                        }).ToList());
                    }
                    return(null);
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                return(null);
            }
        }
Example #5
0
 public async Task <List <AccountEntity> > GetAccountEntities(int page, int countPerPage, int statType = 0, int roleTyoe = 0, string search = "")
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             var query = context.Account.Where(item => true);
             if (statType != 0)
             {
                 query = query.Where(item => item.StatType == statType);
             }
             if (roleTyoe != 0)
             {
                 query = query.Where(item => item.RoleType == roleTyoe);
             }
             if (!string.IsNullOrEmpty(search))
             {
                 query = query.Where(item => item.UserName.Contains(search));
             }
             query = query.OrderBy(item => item.Id).Take(countPerPage).Skip((page - 1) * countPerPage);
             return(await query.ToListAsync());
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #6
0
        public async Task <DaoResultMessage> CreateServerEntity(string id, ServerEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    entity.Id = id;
                    var item = context.Server.Add(entity);
                    await context.SaveChangesAsync();

                    message.Code    = DaoResultCode.Success;
                    message.Message = "添加成功!";
                    message.para    = item;
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #7
0
        public async Task <DaoResultMessage> Add2Account(string accountId, ServerEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.Account.FirstOrDefault(obj => obj.Id == accountId);
                    if (dbentity != null)
                    {
                        entity.AccountEntities.Add(dbentity);
                        context.Server.Add(entity);
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #8
0
        public async Task <DaoResultMessage> AppendSecure(string domainId, string policyId)
        {
            if (string.IsNullOrEmpty(policyId))
            {
                return(DaoResultMessage.OkWithParaNull);
            }
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.Domain.FirstOrDefault(obj => obj.Id == domainId);
                    var entity   = context.SecurePolicy.FirstOrDefault(obj => obj.Id == policyId);
                    if (dbentity != null && entity != null)
                    {
                        dbentity.SecurePolicy = entity;
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #9
0
        public async Task <DaoResultMessage> AppendLogoTemplate(string accountId, string templateId)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity     = context.Account.FirstOrDefault(obj => obj.Id == accountId);
                    var logoTemplate = context.LogoTemplate.FirstOrDefault(obj => obj.Id == templateId);
                    if (dbentity != null && logoTemplate != null)
                    {
                        dbentity.LogoTemplateEntities.Add(logoTemplate);
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #10
0
        public async Task <DaoResultMessage> AppendLogo(string transcodeId, string logoId)
        {
            if (string.IsNullOrEmpty(logoId))
            {
                return(DaoResultMessage.OkWithParaNull);
            }
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.TranscodeTemplate.FirstOrDefault(obj => obj.Id == transcodeId);
                    var entity   = context.LogoTemplate.FirstOrDefault(obj => obj.Id == logoId);
                    if (dbentity != null && entity != null)
                    {
                        dbentity.LogoTemplate = entity;
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #11
0
        public async Task <DaoResultMessage> DeleteTranscodeTemplateEntity(string id)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var template = context.TranscodeTemplate.FirstOrDefault(obj => obj.Id == id);
                    if (template != null)
                    {
                        context.TranscodeTemplate.Remove(template);
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #12
0
        public async Task <TranscodeTemplateEntity> GetTranscodeTemplateEntitysById(string accountId, string id)
        {
            try
            {
                if (id == null)
                {
                    return(null);
                }
                using (var context = new DjLiveCpContext())
                {
                    var paraObjects = new List <object>();
                    paraObjects.Add(accountId);
                    paraObjects.Add(id);
                    var sql  = @"SELECT * FROM sys_transcodetemplate as b 
                                join sys_alli_account_transcodetemplate as c 
                                on c.AccountId = {0} and c.TemplateId = {1}
                                and b.Id = c.TemplateId ";
                    var objs = context.Database.SqlQuery <TranscodeTemplateEntity>(sql, paraObjects.ToArray());
                    var obj  = await objs.FirstOrDefaultAsync();

                    if (obj != null)
                    {
                        obj.LogoTemplate = await context.LogoTemplate.FirstOrDefaultAsync(item => item.Id == obj.Id);
                    }
                    return(obj);
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                return(null);
            }
        }
Example #13
0
 public async Task <List <TranscodeTemplateEntity> > GetTranscodeTemplateEntitys(int page, int countPerPage, string userId = "", TranscodeTemplateEntity delta = null)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             var sql         = $@"SELECT * FROM sys_transcodetemplate  
                          limit {(page - 1) * countPerPage},{countPerPage}";
             var paraObjects = new object[] { };
             if (!string.IsNullOrEmpty(userId))
             {
                 sql         = $@"SELECT * FROM sys_transcodetemplate as b 
                         join sys_alli_account_transcodetemplate as c 
                         on c.AccountId = {"{0}"} 
                         and b.Id = c.TemplateId limit {(page - 1) * countPerPage},{countPerPage}";
                 paraObjects = new object[] { userId };
             }
             var objs = context.Database.SqlQuery <TranscodeTemplateEntity>(sql, paraObjects);
             return(await objs.ToListAsync());
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #14
0
        public async Task <DaoResultMessage> AppendDomain(string serverId, string domainId)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.Server.FirstOrDefault(obj => obj.Id == serverId);
                    var domain   = context.Domain.FirstOrDefault(obj => obj.Id == domainId);
                    if (dbentity != null && domain != null)
                    {
                        dbentity.Domains.Add(domain);
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #15
0
 public async Task <List <ServerEntity> > GetServerEntitys(string userId = "")
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             var sql         = $@"SELECT * FROM sys_servernode";
             var paraObjects = new object[] { };
             if (!string.IsNullOrEmpty(userId))
             {
                 sql         = $@"SELECT * FROM sys_servernode as b 
                         join sys_alli_account_servernode as c 
                         on c.AccountId = {"{0}"} 
                         and b.Id = c.NodeId";
                 paraObjects = new object[] { userId };
             }
             var objs = context.Database.SqlQuery <ServerEntity>(sql, paraObjects);
             return(await objs.ToListAsync());
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #16
0
 public static void Initialize()
 {
     Database.SetInitializer(new MigrateDatabaseToLatestVersion <DjLiveCpContext, DjLive.CPDao.Migrations.Configuration>());
     using (var context = new DjLiveCpContext())
     {
         context.Database.Initialize(true);
     }
 }
        public async Task <DaoResultMessage> UpdateSecurePolicyEntity(string id, SecurePolicyEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.SecurePolicy.FirstOrDefault(obj => obj.Id == id);

                    if (dbentity != null && entity != null)
                    {
                        dbentity.AuthPlayUrl      = entity.AuthPlayUrl;
                        dbentity.AuthPublishUrl   = entity.AuthPublishUrl;
                        dbentity.AuthCloseUrl     = entity.AuthCloseUrl;
                        dbentity.AuthConnectUrl   = entity.AuthConnectUrl;
                        dbentity.AuthDvrUrl       = entity.AuthDvrUrl;
                        dbentity.AuthStopUrl      = entity.AuthStopUrl;
                        dbentity.AuthUnPublishUrl = entity.AuthUnPublishUrl;
                        dbentity.NotifyHlsUrl     = entity.NotifyHlsUrl;

                        context.SecurePolicy.Attach(dbentity);
                        context.Entry(dbentity).Property(x => x.Id).IsModified               = false;
                        context.Entry(dbentity).Property(x => x.Name).IsModified             = false;
                        context.Entry(dbentity).Property(x => x.AuthPlayUrl).IsModified      = !entity.AuthPlayUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.AuthPublishUrl).IsModified   = !entity.AuthPublishUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.AuthCloseUrl).IsModified     = !entity.AuthCloseUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.AuthConnectUrl).IsModified   = !entity.AuthConnectUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.AuthDvrUrl).IsModified       = !entity.AuthDvrUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.AuthStopUrl).IsModified      = !entity.AuthStopUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.AuthUnPublishUrl).IsModified = !entity.AuthUnPublishUrl.IsStringNull();
                        context.Entry(dbentity).Property(x => x.NotifyHlsUrl).IsModified     = !entity.NotifyHlsUrl.IsStringNull();

                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "修改成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
 public async Task <LogoTemplateEntity> GetLogoTemplateById(string accountId, string id)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             return(await context.LogoTemplate.FirstOrDefaultAsync(item => item.AccountEntity.Id == accountId && item.Id == id));
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         throw;
     }
 }
 public async Task <BoardCastRoomEntity> GetBoardCastRoomBySteamName(string streamName)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             return(await context.BoardCastRoom.AsNoTracking().FirstOrDefaultAsync(obj => obj.StreamName.Equals(streamName)));
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #20
0
 public async Task <DomainEntity> GetDomainEntityById(string id)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             return(await context.Domain.Include("Server").Include("RecordTemplate").Include("SecurePolicy").Include("TranscodeList").FirstOrDefaultAsync(item => item.Id == id));
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
 public async Task <SecurePolicyEntity> GetSecurePolicyEntityById(string accountId, string id)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             return(await context.SecurePolicy.FirstOrDefaultAsync(item => item.Id == id));;
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #22
0
        public async Task <DaoResultMessage> UpdateServerEntity(string id, ServerEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.Server.FirstOrDefault(obj => obj.Id == id);

                    if (dbentity != null && entity != null)
                    {
                        dbentity.Ip       = string.IsNullOrEmpty(entity.Ip) ? dbentity.Ip : entity.Ip;
                        dbentity.Url      = string.IsNullOrEmpty(entity.Url) ? dbentity.Url : entity.Url;
                        dbentity.UserName = string.IsNullOrEmpty(entity.UserName) ? dbentity.UserName : entity.UserName;
                        dbentity.Password = string.IsNullOrEmpty(entity.Password) ? dbentity.Password : entity.Password;
                        dbentity.Option   = string.IsNullOrEmpty(entity.Option) ? dbentity.Option : entity.Option;

                        context.Server.Attach(dbentity);
                        context.Entry(dbentity).Property(x => x.Id).IsModified       = false;
                        context.Entry(dbentity).Property(x => x.Name).IsModified     = false;
                        context.Entry(dbentity).Property(x => x.Url).IsModified      = !entity.Url.IsStringNull();
                        context.Entry(dbentity).Property(x => x.Ip).IsModified       = !entity.Ip.IsStringNull();
                        context.Entry(dbentity).Property(x => x.UserName).IsModified = !entity.UserName.IsStringNull();
                        context.Entry(dbentity).Property(x => x.Password).IsModified = !entity.Password.IsStringNull();
                        context.Entry(dbentity).Property(x => x.Option).IsModified   = !entity.Option.IsStringNull();
                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "修改成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #23
0
 public async Task <AccountEntity> GetAccountEntityByUserToken(string token)
 {
     try
     {
         using (var context = new DjLiveCpContext())
         {
             var query = context.Account.Where(item => item.Token == token);
             return(await query.FirstOrDefaultAsync());
         }
     }
     catch (Exception e)
     {
         LogHelper.Error(e.Message, e);
         return(null);
     }
 }
Example #24
0
        public async Task <DaoResultMessage> UpdataDomain(string id, DomainEntity entity)
        {
            //todo:修改 包含 各种模版
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.Domain.FirstOrDefault(obj => obj.Id == id);

                    if (dbentity != null && entity != null)
                    {
                        dbentity.Description    = string.IsNullOrEmpty(entity.Description) ? dbentity.Description : entity.Description;
                        dbentity.FlvPlayDomain  = string.IsNullOrEmpty(entity.FlvPlayDomain) ? dbentity.FlvPlayDomain : entity.FlvPlayDomain;
                        dbentity.HlsPlayDomain  = string.IsNullOrEmpty(entity.HlsPlayDomain) ? dbentity.HlsPlayDomain : entity.HlsPlayDomain;
                        dbentity.RtmpPlayDomain = string.IsNullOrEmpty(entity.RtmpPlayDomain) ? dbentity.RtmpPlayDomain : entity.RtmpPlayDomain;

                        context.Domain.Attach(dbentity);
                        context.Entry(dbentity).Property(x => x.Id).IsModified             = false;
                        context.Entry(dbentity).Property(x => x.SourceDomain).IsModified   = false;
                        context.Entry(dbentity).Property(x => x.Description).IsModified    = true;
                        context.Entry(dbentity).Property(x => x.FlvPlayDomain).IsModified  = true;
                        context.Entry(dbentity).Property(x => x.HlsPlayDomain).IsModified  = true;
                        context.Entry(dbentity).Property(x => x.RtmpPlayDomain).IsModified = true;
                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "修改成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #25
0
        public async Task <DaoResultMessage> UpdataAccount(string id, AccountEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.Account.FirstOrDefault(obj => obj.Id == id);

                    if (dbentity != null && entity != null)
                    {
                        dbentity.Password = string.IsNullOrEmpty(entity.Password) ? dbentity.Password : entity.Password;
                        dbentity.Token    = string.IsNullOrEmpty(entity.Token) ? dbentity.Token : entity.Token;
                        dbentity.RoleType = entity.RoleType == 0 ? dbentity.RoleType : entity.RoleType;
                        dbentity.StatType = entity.StatType == 0 ? dbentity.StatType : entity.StatType;

                        context.Account.Attach(dbentity);
                        context.Entry(dbentity).Property(x => x.Id).IsModified       = false;
                        context.Entry(dbentity).Property(x => x.UserName).IsModified = false;
                        context.Entry(dbentity).Property(x => x.Token).IsModified    = true;
                        context.Entry(dbentity).Property(x => x.Password).IsModified = true;
                        context.Entry(dbentity).Property(x => x.RoleType).IsModified = true;
                        context.Entry(dbentity).Property(x => x.StatType).IsModified = true;
                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "修改成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
        public async Task <DaoResultMessage> CreateRoom(BoardCastRoomEntity boardCastRoomEntity)
        {
            if (boardCastRoomEntity == null)
            {
                return(DaoResultMessage.ItemNotExist);
            }
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    if (context.Domain.AsNoTracking().Any(obj => obj.SourceDomain == boardCastRoomEntity.Domain))
                    {
                        if (context.BoardCastRoom.AsNoTracking().Any(obj =>
                                                                     obj.Id == boardCastRoomEntity.Id ||
                                                                     (obj.StreamName == boardCastRoomEntity.StreamName
                                                                      //&&obj.AppName == boardCastRoomEntity.AppName && obj.Domain == boardCastRoomEntity.Domain
                                                                     )))
                        {
                            //todo:更新
                            //context.BoardCastRoom.AddOrUpdate(boardCastRoomEntity);
                            var dbentity = context.BoardCastRoom.FirstOrDefault(obj =>
                                                                                obj.Id == boardCastRoomEntity.Id || (obj.StreamName == boardCastRoomEntity.StreamName));
                            context.BoardCastRoom.Remove(dbentity);
                        }

                        context.BoardCastRoom.Add(boardCastRoomEntity);
                        await context.SaveChangesAsync();
                    }
                    else
                    {
                        return(DaoResultMessage.ItemNotExist);
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #27
0
        public async Task <AccountEntity> GetAccountEntityDetailById(string id)
        {
            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var query  = context.Account.Where(item => item.Id == id);
                    var entity = await query.FirstOrDefaultAsync();

                    return(entity);
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                return(null);
            }
        }
        public async Task <DaoResultMessage> UpdateLogoTemplate(string id, LogoTemplateEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.LogoTemplate.FirstOrDefault(obj => obj.Id == id);

                    if (dbentity != null && entity != null)
                    {
                        dbentity.Option     = entity.Option;
                        dbentity.Base64Vale = entity.Base64Vale;
                        dbentity.FilePath   = entity.FilePath;

                        context.LogoTemplate.Attach(dbentity);
                        context.Entry(dbentity).Property(x => x.Id).IsModified         = false;
                        context.Entry(dbentity).Property(x => x.Name).IsModified       = false;
                        context.Entry(dbentity).Property(x => x.Option).IsModified     = !entity.Option.IsStringNull();
                        context.Entry(dbentity).Property(x => x.Base64Vale).IsModified = !entity.Base64Vale.IsStringNull();
                        context.Entry(dbentity).Property(x => x.FilePath).IsModified   = !entity.FilePath.IsStringNull();
                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "修改成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #29
0
        public async Task <DaoResultMessage> DeleteServerEntity(string id)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var entity = context.Server.FirstOrDefault(obj => obj.Id == id);
                    if (entity != null)
                    {
                        if (entity.Domains.Count > 0)
                        {
                            message.Code    = DaoResultCode.AlreadyInUse;
                            message.Message = "正在使用中..!";
                        }
                        else
                        {
                            context.Server.Remove(entity);
                            await context.SaveChangesAsync();

                            message.Code    = DaoResultCode.Success;
                            message.Message = "删除成功!";
                            message.para    = entity;
                        }
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "删除失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }
Example #30
0
        public async Task <DaoResultMessage> UpdateTranscodeTemplateEntity(string id, TranscodeTemplateEntity entity)
        {
            DaoResultMessage message = new DaoResultMessage();

            try
            {
                using (var context = new DjLiveCpContext())
                {
                    var dbentity = context.TranscodeTemplate.FirstOrDefault(obj => obj.Id == id);

                    if (dbentity != null && entity != null)
                    {
                        dbentity.AudioOption = string.IsNullOrEmpty(entity.AudioOption) ? dbentity.AudioOption : entity.AudioOption;
                        dbentity.VideoOption = string.IsNullOrEmpty(entity.VideoOption) ? dbentity.VideoOption : entity.VideoOption;
                        dbentity.Name        = string.IsNullOrEmpty(entity.Name) ? dbentity.Name : entity.Name;
                        context.TranscodeTemplate.Attach(dbentity);
                        context.Entry(dbentity).Property(x => x.Id).IsModified          = false;
                        context.Entry(dbentity).Property(x => x.AudioOption).IsModified = true;
                        context.Entry(dbentity).Property(x => x.VideoOption).IsModified = true;
                        context.Entry(dbentity).Property(x => x.Name).IsModified        = true;
                        await context.SaveChangesAsync();

                        message.Code    = DaoResultCode.Success;
                        message.Message = "修改成功!";
                        message.para    = entity;
                    }
                    else
                    {
                        message.Code    = DaoResultCode.ItemNotExist;
                        message.Message = "修改失败,对象不存在!";
                    }
                }
            }
            catch (Exception e)
            {
                LogHelper.Error(e.Message, e);
                message.Code    = DaoResultCode.UnExpectError;
                message.Message = e.Message;
            }

            return(message);
        }